Commit Graph

29625 Commits

Author SHA1 Message Date
94f34260a6 Merge pull request #12001 from Filoppi/patch-21
Qt: Fix some Post Process Configuration Widget issues #3-4
2023-06-30 19:11:10 +02:00
fa81006b51 Merge pull request #11955 from TellowKrinkle/CMakeDependencies
CMake: Allow ignoring system packages
2023-06-30 19:06:04 +02:00
e4d7ba5554 Merge pull request #12007 from AdmiralCurtiss/cmake-scmrev-at-build-time
CMake: Generate scmrev.h at build time instead of configure time.
2023-06-30 18:59:33 +02:00
6ea49c6746 VideoCommon: add a pixel shader asset 2023-06-30 01:32:53 -05:00
ff324ef660 Merge pull request #12010 from TellowKrinkle/AlignUpOpt
Common: Better AlignUp implementation
2023-06-29 20:30:13 -04:00
28fafbeef2 Qt: Fix some Post Process Configuration Widget issues n3
1 ) When first opened, the (user selected) post process shader config widget would print the wrong values on the text label next to int range sliders. For example if the range was from 1 to 6, and the value loaded from the config was 1, the label would print 0 when first opened, to then start showing the correct value once the slider was first moved.

This mirrors the behaviour of the float slider code below:
```auto* const value_box = new QLineEdit(QString::asprintf("%f", m_config_option->m_float_values[i]));```

2 ) The defautl int slider value would also be set wrong on first load, as it was being divided by the slider max instead of the slider step amount (again, just like for the float implementation). This is a mistake I had made with my previous submission.
2023-06-29 14:13:38 +03:00
d844317a6d Common: Better AlignUp implementation 2023-06-29 02:35:44 -05:00
4774fe3445 VKGfx: Add parentheses around ambiguous if statements. 2023-06-29 03:59:18 +02:00
2a6f4d879c CMake: Generate scmrev.h at build time instead of configure time. 2023-06-29 03:23:31 +02:00
3627398cf5 VideoBackends: support multiple compute images for some backends (D3D, OGL, Vulkan) 2023-06-28 17:15:31 -05:00
3384e02098 DolphinQt: Don't translate empty strings
Trying to translate an empty string will return a long metadata string
for the loaded translation file rather than the expected empty string.
2023-06-28 18:43:52 +02:00
766b8605f8 Merge pull request #11994 from JosJuice/skylanders-i18n
DolphinQt: Add i18n comments for Skylanders strings
2023-06-27 22:40:14 +02:00
ee684b0798 DSPEmulator: Remove unused PauseAndLock parameter 2023-06-25 20:29:23 -07:00
3a8e7de214 Merge pull request #11903 from noahpistilli/wiilink
IOS/KD: Add WiiLink as WC24 service provider by default
2023-06-26 02:27:47 +02:00
f9f8e94e30 Add default support for WiiLink + configuration 2023-06-25 14:57:15 -04:00
09f8f29ae0 DolphinQt: Add i18n comments for Skylanders strings
Also changed the spelling of "Superchargers" to "SuperChargers".
2023-06-25 15:38:30 +02:00
2472269d06 GekkoDisassembler: Remove unused enum InstructionType 2023-06-24 13:45:26 -07:00
2cf48bc32c GekkoDisassembler: Remove unread variable m_type
Writes to m_type are pointless because it's never read.
2023-06-24 13:45:26 -07:00
50c929928c Merge pull request #11920 from Minty-Meeo/kill-ascii-to-hex
Kill AsciiToHex
2023-06-23 18:20:36 -07:00
c04536c5d0 Merge pull request #11982 from iwubcode/graphics_mod_create_texture_callback
VideoCommon: add graphics mod callback interface for when a texture is created
2023-06-23 18:10:59 +02:00
02909bd1a5 Merge pull request #11850 from Filoppi/post_process_fixes
Video: implement color correction to match the Wii/GC NTSC/PAL color spaces (and gamma)
2023-06-23 18:08:23 +02:00
5bf3d55d38 Merge pull request #11981 from iwubcode/move_cached_asset_to_common
VideoCommon: move cached texture asset to 'CustomAsset' common code
2023-06-23 17:59:24 +02:00
b5ba51c60a Core: Remove host thread assert in PauseAndLock().
Fixing all the places it's used turned out to be a more complicated task than anticipated. So let's remove this for now so we don't confuse users with cryptic error messages...
2023-06-23 01:18:56 +02:00
get
445bf8d2c6 Kill AsciiToHex
Now superseded by Common::FromChars
2023-06-22 00:06:50 -05:00
bc0e8158b3 IOS/KD/Time: Take into account DST for AdjustedUTC 2023-06-20 22:49:33 -04:00
1d767c3a5b VideoCommon: add graphics mod callback interface for when a texture is created 2023-06-20 19:26:53 -05:00
2dc24a9148 VideoCommon: move cached texture asset to 'CustomAsset' common code 2023-06-20 18:59:55 -05:00
4ef2f2c710 Rename Symbol constructor parameter to prevent shadowing 2023-06-20 13:38:31 -04:00
00bf5f55de WiimoteReal/IOWin: Don't try to print error message for non-errors. 2023-06-20 01:54:59 +02:00
cff3e22f84 Merge pull request #11926 from JosJuice/android-host-check
Android: Re-add host thread check
2023-06-19 20:37:59 +02:00
5d7b5822c9 Merge pull request #11972 from Minty-Meeo/string-improvements-part-1c
Replace std::ostringstream usage with fmt::format
2023-06-19 02:18:30 +02:00
get
ffabb6c57b Replace std::ostringstream usage with fmt::format 2023-06-18 18:37:32 -05:00
daddf4cd9c Qt: add color correction and HDR Qt settings widgets 2023-06-19 01:34:42 +03:00
a2702c6e27 Video: implement color correction to match the NTSC and PAL color spaces (and gamma) that GC and Wii targeted.
To further increase the accuracy of the post process phase, I've added (scRGB) HDR support, which is necessary
to fully display the PAL and NTSC-J color spaces, and also to improve the quality of post process texture samplings and
do them in linear space instead of gamma space (which is very important when playing at low resolutions).
For SDR, the quality is also slightly increased, at least if any post process runs, as the buffer is now
R10G10B10A2 (on Vulkan, DX11 and DX12) if supported; previously it was R8G8B8A8 but the alpha bits were wasted.

Gamma correction is arguably the most important thing as Dolphin on Windows outputted in "sRGB" (implicitly)
as that's what Windows expects by default, though sRGB gamma is very different from the gamma commonly used
by video standards dating to the pre HDR era (roughly gamma 2.35).

Additionally, the addition of HDR support (which is pretty straight forward and minimal), added support for
our own custom AutoHDR shaders, which would allow us to achieve decent looking HDR in Dolphin games without
having to use SpecialK or Windows 11 AutoHDR. Both of which don't necessarily play nice with older games
with strongly different and simpler lighting. HDR should also be supported in Linux.
Development of my own AutoHDR shader is almost complete and will come next.

This has been carefully tested and there should be no regression in any of the different features that Dolphin
offers, like multisampling, stereo rendering, other post processes, etc etc.

Fixes: https://bugs.dolphin-emu.org/issues/8941

Co-authored-by: EndlesslyFlowering <EndlesslyFlowering@protonmail.com>
Co-authored-by: Dogway <lin_ares@hotmail.com>
2023-06-19 01:34:42 +03:00
9e06b6964b Merge pull request #11963 from iwubcode/d3d12_fix
VideoBackends: fix d3d12 error when validation layers enabled
2023-06-19 00:33:40 +02:00
8039d10994 Merge pull request #11966 from Dentomologist/convert_xemitter_prefetchlevel_to_enum_class
xEmitter: Convert PrefetchLevel to enum class
2023-06-18 15:17:02 +02:00
2d18c9e079 Merge pull request #11976 from JosJuice/emitter-nodiscard
Arm64Emitter/x64Emitter: Use nodiscard for FixupBranch
2023-06-18 15:16:42 +02:00
0584f8ae2a Video: fix Vulkan RGBA10_2 format to the actual most common one (used as swapchain format) 2023-06-18 12:58:40 +03:00
39a8219767 Arm64Emitter/x64Emitter: Use nodiscard for FixupBranch
This should prevent future occurrences of the type of problem that was
fixed in b713042.
2023-06-18 09:10:20 +02:00
get
80575c4489 DITConfiguration: Use File::ReadFileToString 2023-06-17 19:38:15 -05:00
04fcf68176 xEmitter: Convert PrefetchLevel to enum class 2023-06-17 16:41:32 -07:00
b71304230c Jit64: Fix trampolines after #11834. 2023-06-18 01:31:44 +02:00
93d9e90798 Merge pull request #11962 from Minty-Meeo/to-underlying
EnumUtils: Add Common::ToUnderlying
2023-06-17 20:04:25 +02:00
696087cae0 Qt/NetworkWidget: Get rid of some trivial sign conversions
In all instances, these variables should be signed rather than unsigned.
2023-06-17 10:48:49 -04:00
get
7523a62105 Change unnamed enum in NativeVertexFormat.h to u32 2023-06-17 08:13:57 -05:00
79d5850e6a Merge pull request #11960 from Minty-Meeo/dolphin-tool-code-review-4
DolphinTool: Use {fmt} library
2023-06-17 14:18:21 +02:00
get
07ad75f34f EnumUtils: Add Common::ToUnderlying
Mirrors the C++23 <utility> function, std::to_underlying
2023-06-17 07:15:33 -05:00
ba74902bca VideoBackends: fix d3d12 validation layer error introduced by multi-output texture breaking logic ops support 2023-06-17 01:48:59 -05:00
get
e67c196d2a DolphinTool: Less string copies 2023-06-16 21:51:06 -05:00
get
410c4ffe75 DolphinTool: Use {fmt} library 2023-06-16 21:45:59 -05:00