Unknown W. Brackets
60c129c52f
softgpu: Use no-modulate fast path for REPLACE.
2022-12-06 06:31:30 -08:00
Unknown W. Brackets
c291bd78ef
softgpu: Use a template for 5551 fast path.
...
Just refactoring here, should be the same.
2022-12-06 06:29:19 -08:00
Unknown W. Brackets
264a81913d
softgpu: Avoid checking UVs for sprites w/o tex.
2022-12-06 06:11:38 -08:00
Unknown W. Brackets
5d6b213fa7
softgpu: Avoid tri combine to rect if clipping.
2022-12-05 23:24:26 -08:00
Unknown W. Brackets
d9501cb0ad
softgpu: Fix w culling of triangle rects.
2022-12-05 23:09:55 -08:00
Henrik Rydgård
e969f9cf8b
Merge pull request #16502 from unknownbrackets/softgpu-opt
...
A few more softgpu optimizations for alpha blend/test
2022-12-05 09:35:36 +01:00
Henrik Rydgård
e44e9b651f
Merge pull request #16503 from unknownbrackets/softgpu-halfpos
...
softgpu: Fix double rectangle drawing at halfpixel
2022-12-05 09:34:33 +01:00
Unknown W. Brackets
77e510bd90
GPU: Use accurate depth for depth range hack.
...
This should be easier to ensure stays well tested.
2022-12-04 19:27:23 -08:00
Unknown W. Brackets
07c276c32d
softgpu: Fix double rectangle drawing at halfpixel.
...
There seems to be some odd behavior with the X start pos, but at least the
end pos should not be drawn twice when using 0.5 - 0.5.
2022-12-04 17:47:57 -08:00
Unknown W. Brackets
d6750993d7
softgpu: Force alpha test when it could skip blend.
...
Blending is slow, and often games do effects like smoke, sun, etc. that
has a lot of zero alpha in them. Many games do this with alpha testing
off, which is cheap compared to blending.
2022-12-04 16:36:45 -08:00
Unknown W. Brackets
2c90dafe64
softgpu: Force alpha test off in more scenarios.
...
Since we're already checking the CLUT, we can tell if it doesn't contain
zero alpha, in which case a != 0 test will never fail. This is actually
pretty common, even when texture alpha is not always FF.
2022-12-04 16:30:12 -08:00
Henrik Rydgård
5de3a7c252
Merge pull request #16500 from unknownbrackets/warnings
...
Fixes to recently introduced warnings and a couple older ones
2022-12-04 17:40:30 +01:00
Unknown W. Brackets
3342d5ecb3
softgpu: Remove an unused case.
2022-12-04 08:17:05 -08:00
Unknown W. Brackets
8c378c4557
GPU: Avoid an override warning.
2022-12-04 07:57:45 -08:00
Henrik Rydgård
a8939f456a
Remove dead code, validation fix in GE debugger
...
See #16490
2022-12-04 00:49:48 +01:00
Unknown W. Brackets
59431de823
Merge pull request #16494 from hrydgard/force-lower-res-for-effects-off
...
Force "Lower resolution for effects" off in Ratchet & Clank and a few other games
2022-12-03 15:25:57 -08:00
Henrik Rydgård
7e97ce1760
Merge pull request #16495 from unknownbrackets/vulkan-shutdown
...
Cleanup shader module lifetime handling for Vulkan
2022-12-04 00:16:58 +01:00
Unknown W. Brackets
78ed8d45a7
Vulkan: Defer deletion of shader module promises.
2022-12-03 14:53:10 -08:00
Unknown W. Brackets
53eedf06e3
Vulkan: Track pipeline desc using a refcount.
...
Not very safe to not allow deletes, and don't want to force Draw objects
on the deleter (this is referenced by them.)
2022-12-03 14:52:06 -08:00
Henrik Rydgård
8567416be6
Force "Lower resolution for effects" off in Ratchet & Clank and a few other games
...
It breaks or just makes things look terrible in these games, so no
reason to allow it.
An alternative for this would be to remove the option entirely, and only
use it though the ForceLowerResolutionForEffectsOn flag instead.
2022-12-03 23:35:54 +01:00
Henrik Rydgård
c310d1471e
Merge pull request #16493 from unknownbrackets/softgpu-opt
...
softgpu: Check CLUT alpha to optimize out blend/alpha test
2022-12-03 22:55:53 +01:00
Unknown W. Brackets
00e76b11b6
softgpu: Optimize > non-zero alpha tests as well.
...
These are fairly common, especially in 3D games.
2022-12-03 12:55:38 -08:00
Unknown W. Brackets
eb19e24399
softgpu: Skip non-zero alpha test if impossible.
2022-12-03 12:54:53 -08:00
Unknown W. Brackets
adc94b1950
softgpu: Use CLUT to optimize out blending more.
...
This actually happens relatively often.
2022-12-03 12:44:02 -08:00
Unknown W. Brackets
0aba5ff3c1
TexCache: Correct alpha mask checks for SSE2.
...
Should have been shifts by byte (4/8), but let's just switch to shuffles
anyway. These were always shifting in zeros and failing.
2022-12-03 12:38:01 -08:00
Unknown W. Brackets
38eb0a7a82
softgpu: Check for queued compile.
...
Rarely, we could have queued compiling the same one, which would crash on
a double insert.
2022-12-03 12:15:58 -08:00
Henrik Rydgård
6acbd1f9e3
Fix loading of texture shaders
2022-12-03 20:37:58 +01:00
Henrik Rydgård
f3ba8fb334
Address feedback, also sort texture shaders
2022-12-03 19:30:50 +01:00
Henrik Rydgård
f5c0dc717a
Sort post-shaders alphabetically in the list.
2022-12-03 18:58:47 +01:00
Henrik Rydgård
238c9439e3
Merge pull request #16491 from unknownbrackets/cleanup
...
Quick cleanup
2022-12-03 16:38:32 +01:00
Unknown W. Brackets
e50eae1bfb
GPU: Cleanup some bounds checks, assignments.
2022-12-03 07:17:12 -08:00
Henrik Rydgård
0f12d44e59
Remove some unused/unnecessary code
2022-12-03 12:05:10 +01:00
Henrik Rydgård
92df6b832c
Safer and simpler alternative to cbfa4bf.
...
See #16483
2022-12-03 12:05:08 +01:00
Henrik Rydgård
02b8bf33fb
Merge pull request #16458 from hrydgard/desktop-friendly-msaa
...
Implement MSAA support for desktop GPUs in Vulkan
2022-12-03 11:22:41 +01:00
Henrik Rydgård
4589473231
Merge pull request #16486 from unknownbrackets/softgpu-opt
...
softgpu: Apply optimizations to states generically
2022-12-03 11:08:10 +01:00
Henrik Rydgård
d6b9f39215
Merge pull request #16483 from lvonasek/hotfix_simpsons_crash
...
Simpsons crash on GLES fixed
2022-12-03 10:40:02 +01:00
Unknown W. Brackets
204789a27f
softgpu: Skip fog when no verts have fog.
2022-12-02 21:55:49 -08:00
Unknown W. Brackets
0c42e45e92
softgpu: Cleanup reapply logic.
...
This makes more sense to read.
2022-12-02 21:42:57 -08:00
Unknown W. Brackets
4d92533907
softgpu: Apply optimizations to states generically.
...
This is for optimizations we can only do when we know the vertex values.
2022-12-02 21:30:53 -08:00
Unknown W. Brackets
6bd0eec54d
softgpu: Calc flags on state as we queue verts.
...
Might be some other ways, like doing this directly in a vertex reader.
Also am thinking about doing things regarding UVs or positions.
Flags not yet used, keeping separate for perf checks.
2022-12-02 21:28:50 -08:00
Unknown W. Brackets
a04b7cf3b3
softgpu: Force shading flag off in clearMode.
...
Probably fixes a line shading bug, and clearer anyway.
2022-12-02 21:20:59 -08:00
Unknown W. Brackets
778a0487cb
softjit: Switch to DenseHashMap.
2022-12-02 20:59:13 -08:00
Unknown W. Brackets
0c19f6ae1d
Merge pull request #16484 from lvonasek/compat_openxr_fixes
...
OpenXR - HUD support for even more games
2022-12-02 14:03:23 -08:00
Henrik Rydgård
116bc9d59a
Merge pull request #16485 from unknownbrackets/softgpu-fog-nan
...
softgpu: Handle infnan fog coefficients better
2022-12-02 19:49:32 +01:00
Unknown W. Brackets
1121a6fb68
softgpu: Handle inf-end + negative constant slope.
2022-12-02 10:20:30 -08:00
Unknown W. Brackets
38de2f11af
softgpu: Handle infnan fog coefficients better.
...
If we ended up with a dot product that had opposing inf signs, the add
would result in NAN and cause problems.
2022-12-02 10:15:15 -08:00
Unknown W. Brackets
c5844c4174
GE Debugger: Add breakpoint symbol for prim count.
...
This way you can break when a register is changed and prim count is in a
certain range, which can be convenient.
2022-12-02 10:14:36 -08:00
Lubos
39c399df47
OpenXR - GTA Chinatown wars rendering fixed
2022-12-02 17:53:03 +01:00
Lubos
769b1d7342
OpenXR - Assasins Creed rendering fixed
2022-12-02 17:45:29 +01:00
Lubos
66cbe55ffc
OpenXR - Tony Hawk HUD fixed
2022-12-02 16:47:26 +01:00