Commit Graph

37387 Commits

Author SHA1 Message Date
Pokechu22 a6e06f38ad Add notes about precision of YUV->RGB conversion factors for XFB 2022-07-16 00:07:10 -07:00
Pokechu22 2f43889141 Software: Use hardware-verified numbers for RGB->YUV conversion 2022-07-16 00:07:10 -07:00
Pokechu22 e7339d63f1 Rework TextureConversionShader for hardware accuracy and simplicity 2022-07-16 00:07:10 -07:00
Pokechu22 b16ec5b6dc Rework TextureConverterShaderGen for hardware accuracy and simplicity 2022-07-16 00:07:10 -07:00
Pokechu22 791bd16b28 Restructure parameters to TetxureConverterShaderGen/TextureConversionShader
This will be used for later refactoring for increased accuracy.
2022-07-16 00:07:10 -07:00
TellowKrinkle fb5648541c VideoCommon: Remove dstalpha from BlendingState
It's not supported by any PC graphics API, and therefore completely unused
2022-07-15 15:31:47 -05:00
TellowKrinkle 991024173e VideoCommon: Always use fbfetch in ubershaders if available
Reduce the number of different pipelines needed.  Also works around drivers that break when you combine fbfetch with dual source blending
2022-07-15 15:31:47 -05:00
Pokechu22 d20094efa2 Add extra Low and High fields to CopyFilterCoefficients
This struct is the only one in BPMemory that uses u64 as its base.  These fields are to allow viewing it as two u32s instead.  It's not used by Dolphin right now, but it is used in the copy of BPMemory.h used by hwtests.
2022-07-15 12:29:40 -07:00
Pokechu22 bed278d3b7 Create dedicated enum for EFB/XFB gamma correction
This also changes the behavior for the invalid gamma value, which was confirmed to behave the same as 2.2.

Note that currently, the gamma value is only used for XFB copies, even though hardware testing indicates it also works for EFB copies.  This will be changed in a later commit.
2022-07-15 12:29:40 -07:00
Pokechu22 dd41a72378 Only use intensity formats if both intensity_fmt and auto_conv are set
auto_conv is normally always set for EFB copies, but hardware testing indicates that intensity_fmt does nothing if auto_conv is not set.
2022-07-15 12:29:40 -07:00
Pokechu22 cd2cc5fa22 Rename EFB copy bit 2 from yuv to unknown_bit
It was named yuv in 522746b2c2, but hardware testing indicates that that bit does nothing (the intensity format bit enables YUV conversion, instead).
2022-07-15 12:29:40 -07:00
Pokechu22 850e524514 Use fmt::to_string for texture format overlay
This required adding parentheses to the font used by that.
2022-07-15 12:29:40 -07:00
Pokechu22 290e62f179 Remove casts to integers for texture and EFB formats
The only remaining casts for these types that I know of are in TextureInfo (where format_name is set to the int version of the format, and since that affects filenames and probably would break resource packs, I'm not changing it) and in TextureDecoder_Common's TexDecoder_DrawOverlay, which will be handled separately.
2022-07-15 12:29:40 -07:00
Admiral H. Curtiss 1da24f66fe
Merge pull request #10857 from AdmiralCurtiss/keyboard-mouse-name-static
InputCommon: Get rid of static strings.
2022-07-15 20:07:55 +02:00
Admiral H. Curtiss 89067e66f9
InputCommon: Get rid of static strings. 2022-07-15 19:53:10 +02:00
Admiral H. Curtiss 537fe33997
Merge pull request #10843 from Pokechu22/freelook-background-input
Free Look: Add background input setting (disabled by default)
2022-07-14 19:08:29 +02:00
Admiral H. Curtiss a739f63d96
Merge pull request #10840 from AdmiralCurtiss/cmake-windows-sdl
Fix CMake Windows build after SDL merge.
2022-07-14 19:05:25 +02:00
Admiral H. Curtiss 869dab5173
CMake: Use system C library for SDL from externals. 2022-07-14 18:40:18 +02:00
TellowKrinkle 6ab24e6c17 VideoCommon: Better driver bug handling
Adds a pass to process driver deficiencies between UID caching and use, allowing a full view of the whole pipeline, since some bugs/workarounds involve interactions between blend modes and the pixel shader
2022-07-13 21:51:24 -05:00
JMC47 e237aa1435
Merge pull request #10777 from tellowkrinkle/EFBFlush
VideoCommon: Remember to flush command buffers after multiple EFB copies
2022-07-13 19:45:31 -04:00
Pokechu22 25aa30ac69 Free Look: Add background input setting (disabled by default)
Before, Free Look would accept background input by default, which means it was easy to accidentally move the camera while typing in another window. (This is because HotkeyScheduler::Run sets the input gate to `true` after it's copied the hotkey state, supposedly for other threads (though `SetInputGate` uses a `thread_local` variable so I'm not 100% sure that's correct) and for the GBA windows (which always accept unfocused input, presumably because they won't be focused normally).
2022-07-13 15:23:00 -07:00
JMC47 5663a44962
Merge pull request #10842 from tellowkrinkle/ClearBackendInfo
VideoCommon: Clear backend_info before populating
2022-07-13 16:40:46 -04:00
JMC47 385f010d4a
Merge pull request #10837 from SilentHeII/master
Add bloom definitions for Sonic Colors
2022-07-13 13:59:17 -04:00
Admiral H. Curtiss bae715f396
Merge pull request #10838 from AdmiralCurtiss/volume-verifier-out-of-bounds-read
DiscIO/VolumeVerifier: Avoid out-of-bounds reads on trimmed Wii ISOs.
2022-07-13 18:49:24 +02:00
Admiral H. Curtiss 10407cc8c1
DiscIO/VolumeVerifier: Don't try to verify data that would read out of bounds. 2022-07-13 13:35:18 +02:00
JMC47 cb350aed53
Merge pull request #10841 from tellowkrinkle/FBFetchLogicOpMasking
VideoCommon: Properly mask fbfetch logic op emulation
2022-07-13 03:56:14 -04:00
TellowKrinkle f83015649c VideoCommon: Clear backend_info before populating 2022-07-13 02:55:54 -05:00
TellowKrinkle 6bd0fc86ba VideoCommon: Properly mask fbfetch logic op emulation 2022-07-13 02:27:45 -05:00
Admiral H. Curtiss e2e7bc2fa3
CMake: Disable warnings and only build static lib for SDL from externals. 2022-07-13 01:50:11 +02:00
Admiral H. Curtiss e79c7d4985
InputCommon: Don't force-link against SDL2.lib on Windows. 2022-07-13 01:37:05 +02:00
Sepalani 76fe7b6497 NetworkCaptureLogger: Add GameCube BBA support 2022-07-12 13:35:49 +04:00
SilentHeII e5aa5214ed
Add bloom definitions for Sonic Colors
Adds definitions to add or remove bloom to Sonic Colors.
2022-07-11 22:46:07 -05:00
JMC47 aa29433754
Merge pull request #10590 from AdmiralCurtiss/sdcard-folder-sync
Wii SD Card Folder Syncing
2022-07-11 17:38:34 -04:00
Admiral H. Curtiss 2d8d3358c4
FatFsUtil: Skip past entries with invalid filenames. 2022-07-11 23:11:42 +02:00
Admiral H. Curtiss de9c9f2281
FatFsUtil: Improve error handling and error reporting. 2022-07-11 23:11:42 +02:00
Admiral H. Curtiss d2910b5753
Qt: Add 'convert now' buttons for the SD card in the WiiPane. 2022-07-11 23:11:42 +02:00
Admiral H. Curtiss f40eeebcf0
FatFsUtil: Add some path traversal attack protection when unpacking. 2022-07-11 23:11:42 +02:00
Admiral H. Curtiss a621fdf857
Core: In deterministic mode, build SD cards with a consistent filename order and dummy timestamps. 2022-07-11 23:11:41 +02:00
Admiral H. Curtiss 1d12e95404
Qt: Put Wii SD card path and SD sync folder fields in the WiiPane. 2022-07-11 23:11:41 +02:00
Admiral H. Curtiss a5b1bfef68
Common: Change default path for Wii SD cards to not be inside the Wii NAND. 2022-07-11 23:11:41 +02:00
Admiral H. Curtiss 4bf75c950b
Qt/WiiPane: Add checkbox for SD card folder syncing. 2022-07-11 23:11:41 +02:00
Admiral H. Curtiss 77d4591fb4
Core: If configured, sync SD card image with SD card folder on emulation start and end.
Co-authored-by: Pablo Stebler <pablo@stebler.xyz>
2022-07-11 23:11:41 +02:00
Admiral H. Curtiss b66cc1caf6
Config and UICommon: Add config option and user path for Wii SD card sync folder. 2022-07-11 23:11:40 +02:00
Admiral H. Curtiss 96751c4457
Treewide: Rename references to SD Card image path to clarify they mean the image file, not the folder. 2022-07-11 23:11:40 +02:00
Admiral H. Curtiss fdc327c252
Externals/FatFs: Build as part of Dolphin.
Co-authored-by: Pablo Stebler <pablo@stebler.xyz>
2022-07-11 23:11:37 +02:00
Admiral H. Curtiss 4ad00e84e7
Externals/FatFs: Configure for Dolphin. 2022-07-11 23:10:13 +02:00
Admiral H. Curtiss f43ffca488
Externals/FatFs: Avoid conflicts with Windows.h. 2022-07-11 23:10:12 +02:00
Admiral H. Curtiss bd02356e49
Externals: Add FatFs R0.14b, including the UTF-8 fix from April 4, 2022 at http://elm-chan.org/fsw/ff/patches.html 2022-07-11 23:10:12 +02:00
Admiral H. Curtiss 322f19e9e9
Merge pull request #10822 from SilentHeII/master
Add Bloom Definitions for Sin and Punishment 2
2022-07-11 23:04:31 +02:00
Admiral H. Curtiss 32523f155b
Merge pull request #10825 from Rudolchr/fix_build_with_libfmt-9
MsgHandler: Add a check for libfmt version to fix build with libfmt-9
2022-07-11 23:02:08 +02:00