Commit Graph

27710 Commits

Author SHA1 Message Date
4d27022d0e Add hotkey for centering mouse in render window. 2022-07-25 00:59:47 +02:00
e5a177ece9 Merge pull request #10868 from tellowkrinkle/UsesDSBFix
VideoCommon: Fix IsDualSrc check for dst blend factors
2022-07-23 22:14:07 +02:00
6a7aa8f2c6 Convert CP/XF matrix indices mismatch panic alert to a warning
https://bugs.dolphin-emu.org/issues/12977 indicates that this happens on startup of Spider-Man 2, even in single-core. I don't have the game, so I can't directly determine why this is happening, but presumably real hardware does not hang in this case, so we can make it less obtrusive.
2022-07-23 09:01:22 -07:00
89c4fdeeea Merge pull request #10754 from tellowkrinkle/Metal
VideoBackends: Add Metal backend
2022-07-23 01:57:35 -04:00
6559c6b8ee VideoBackends:Multiple: Grammar fixes 2022-07-21 20:44:19 -05:00
a41345127f VideoBackends:Metal: Remove unified memory config
Not worth the extra code
2022-07-21 20:44:19 -05:00
5065767abd VideoBackends:Metal: Avoid submitting draw calls with no vertices/indices 2022-07-21 20:44:19 -05:00
ee3f2b8fcb VideoBackends:Metal: Implement PerfQuery 2022-07-21 20:44:19 -05:00
c48035908c VideoBackends:Metal: Use unified memory path by default on all GPUs 2022-07-21 20:44:19 -05:00
6ee0248eab VideoBackends:Metal: MSAA support 2022-07-21 20:44:19 -05:00
c0fd128171 VideoBackends:Metal: Use base vertex 2022-07-21 20:44:19 -05:00
5742ccf8de VideoBackends:Metal: Cache pipelines
Metal pipelines hold less stuff than Dolphin pipelines, so duplicates will appear
2022-07-21 20:44:19 -05:00
e32213d031 VideoBackends:Metal: Create samplers on demand 2022-07-21 20:44:19 -05:00
61705b05da VideoBackends:Metal: FBFetch for Intel GPUs 2022-07-21 20:44:19 -05:00
a5ef9dfd53 VideoBackends:Metal: Use DriverDetails for bugs 2022-07-21 20:44:19 -05:00
716c0980d7 VideoBackends: Add Metal renderer 2022-07-21 20:44:19 -05:00
df399b0995 Merge pull request #10878 from Pokechu22/btreal-allow-libusb-descriptor-errors
BTReal: Treat libusb_get_string_descriptor_ascii failure as non-fatal warning
2022-07-22 02:00:13 +02:00
e40be6e8fd Merge pull request #10865 from JosJuice/volume-verifier-ios-case
VolumeVerifier: Ignore case when looking for IOS on update partition
2022-07-20 20:41:55 +01:00
a1e8e60c4c IOS: Add IOSC::KeyEntry::misc_data to savestate. 2022-07-20 21:32:44 +02:00
a23a7f7b10 BTReal: Treat libusb_get_string_descriptor_ascii failure as non-fatal warning 2022-07-20 11:21:23 -07:00
b0b5faa793 Merge pull request #10874 from JosJuice/cmpr-layout
VideoCommon: Fix CMPR compute shader layout
2022-07-19 12:05:29 +02:00
fa30ba18f5 Merge pull request #10783 from JosJuice/frontend-controller-init
Require frontend to initialize controllers
2022-07-19 00:50:32 +02:00
1a2bc2eff9 VideoCommon: Fix CMPR compute shader layout
Looks like a copy-paste gone wrong. The compute shaders for the other
formats use a group size of 8 * 8, whereas the CMPR compute shader
is supposed to use a flattened 64 * 1 as I understand it.
2022-07-18 18:56:50 +02:00
28828435bb Qt/LogWidget: remove extra space 2022-07-18 09:52:54 -07:00
0a15d2fcec cubeb: fix logged source file paths 2022-07-18 09:52:54 -07:00
88c85ce471 VideoCommon: Fix IsDualSrc check for dst blend factors 2022-07-17 20:50:53 -05:00
319288de8e Fix OpenGL error on M1 Mac.
Followup to #10466. Resolves the following error:

ERROR: 0:85: '&' does not operate on 'uvec3' and 'int'
2022-07-17 08:54:39 -04:00
dabad82219 Require frontend to initialize controllers
We currently have two different code paths for initializing controllers:
Either the frontend (DolphinQt) can do it, or if the frontend doesn't do
it, the core will do it automatically when booting. Having these two
paths has caused problems in the past due to only one frontend being
tested (see de7ef47548). I would like to get rid of the latter path to
avoid further problems like this.
2022-07-17 14:03:04 +02:00
2f3c0cdbc5 Split out controller initialization to UICommon 2022-07-17 14:02:03 +02:00
81a20a1d74 VolumeVerifier: Ignore case when looking for IOS on update partition
One of the Dragon Quest X expansions (S4SJGD) uses lowercase instead of
the usual uppercase for the IOS59 file on its update partition.
2022-07-17 09:20:12 +02:00
70b0b03c3c Merge pull request #10747 from tellowkrinkle/LateUIDFixup
Add a post-cache shader UID fixup pass
2022-07-17 00:43:16 -04:00
f1d23ff9a4 Merge pull request #10466 from Pokechu22/efb-copy-gamma
Accurately handle the copy filter and gamma for EFB and XFB copies
2022-07-17 00:07:50 -04:00
2ef069e0e8 Merge pull request #10833 from sepalani/BBA-log
NetworkCaptureLogger: Add GameCube BBA support
2022-07-16 21:44:08 +02:00
2eecfc8595 WiiPane: Adjust capitalization of conversion buttons and alert titles 2022-07-16 04:08:55 -04:00
60aaa308bf WiiPane: Trim automatic SD sync checkbox string 2022-07-16 04:00:26 -04:00
a6e06f38ad Add notes about precision of YUV->RGB conversion factors for XFB 2022-07-16 00:07:10 -07:00
2f43889141 Software: Use hardware-verified numbers for RGB->YUV conversion 2022-07-16 00:07:10 -07:00
e7339d63f1 Rework TextureConversionShader for hardware accuracy and simplicity 2022-07-16 00:07:10 -07:00
b16ec5b6dc Rework TextureConverterShaderGen for hardware accuracy and simplicity 2022-07-16 00:07:10 -07:00
791bd16b28 Restructure parameters to TetxureConverterShaderGen/TextureConversionShader
This will be used for later refactoring for increased accuracy.
2022-07-16 00:07:10 -07:00
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
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
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
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
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
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
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
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
89067e66f9 InputCommon: Get rid of static strings. 2022-07-15 19:53:10 +02:00
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