7854 Commits

Author SHA1 Message Date
Unknown W. Brackets
2fc7f72d72 GPU: Clip clamped depth accounting for perspective. 2022-09-20 15:55:39 -07:00
Unknown W. Brackets
0a24004eac GPU: Account for w properly in lines, fixing width.
See #15756.
2022-09-20 15:12:16 -07:00
Unknown W. Brackets
cefef3b4f9 softgpu: Narrow blend check for fast path further.
See #15756, frame was largely black because of a full screen blend
rectangle intended to brighten the screen slighty (I assume.)
2022-09-20 14:29:33 -07:00
Henrik Rydgård
0c39c434d0
Merge pull request #16065 from unknownbrackets/softgpu-tests
Correct some minor issues shown in a few tests
2022-09-20 23:27:41 +02:00
Unknown W. Brackets
bf86f00df8 GPU: Correct display framebuffer reading.
The displayFramebuf_ might not be set yet, but that doesn't mean we want
an INVALID format and zero stride.  We might also be rendering to a
different target, but still want the display.
2022-09-20 14:01:36 -07:00
Unknown W. Brackets
78a3925198 softgpu: Fix display framebuffer read. 2022-09-20 13:43:19 -07:00
Henrik Rydgård
355c18512f Fix BGRA issue on D3D with GPU CLUT textures 2022-09-20 22:31:54 +02:00
Unknown W. Brackets
7483923d07 softgpu: Correct clear rect off by one issues. 2022-09-20 12:57:05 -07:00
Lubos
c4dbd6d045 Merge branch 'master' into compat_openxr_gta 2022-09-20 21:46:33 +02:00
Henrik Rydgård
85d1f28997 Throw in assorted warning fixes 2022-09-20 18:04:08 +02:00
Henrik Rydgård
aa19712fc3 Unify depth texture and framebuffer fetch checks 2022-09-20 10:47:49 +02:00
Henrik Rydgård
09bcf3ec13 Unify range culling detection 2022-09-20 10:15:04 +02:00
Henrik Rydgård
1ae7c0132c Start unifying setting of the GPU feature flags, now that thin3d has feature detection. 2022-09-20 10:07:01 +02:00
Unknown W. Brackets
fddcbfc5fa GE Debugger: Include rendered CLUTs in frame dumps.
Like with textures, this uses the VRAM address directly.
2022-09-19 12:01:34 -07:00
Henrik Rydgård
3e0b3ba1a8
Merge pull request #16054 from unknownbrackets/softgpu-flush
softgpu: Reduce some flushing / flushing cost
2022-09-19 17:56:44 +02:00
Unknown W. Brackets
e2929fb395 softgpu: Skip flushing on no change.
Minor tweak, we sometimes try to flush even without anything to flush, and
were previously rechecking a lot of things.
2022-09-19 08:38:11 -07:00
Unknown W. Brackets
259abf79dd softgpu: Skip more triangles with equal verts.
Even if X is not equal, if all Y are equal, we can still skip.
This seems to happen more often than I expected with far away objects.

Skipping here avoids filling up the queue.
2022-09-19 08:37:47 -07:00
Unknown W. Brackets
7b4cc3334b GE Debugger: Save current clut in frame dumps.
For example, #14465 shows a case where the frame relies on a previously
loaded CLUT.
2022-09-19 08:30:12 -07:00
Henrik Rydgård
4b165f9fc1
Merge pull request #16049 from unknownbrackets/depth-clamp
GPU: Clip depth properly when also clamping
2022-09-19 10:22:34 +02:00
Henrik Rydgård
2b93fac3c3
Merge pull request #16047 from unknownbrackets/ge-debugger
GE Debugger: Allow search by state name
2022-09-19 09:42:26 +02:00
Unknown W. Brackets
a2a7e8258b GPU: Clip depth properly when also clamping.
Helps situations like #11216, where only one side should be clamped.
Keeps depth clamp (i.e. #7932) working.  See #11399.
2022-09-18 13:18:02 -07:00
Unknown W. Brackets
c08c873462 GLES: Support more clip distances.
Will be used later, for now just the enable/disable logic.
2022-09-18 13:16:59 -07:00
Unknown W. Brackets
7d4aa3eb2d softgpu: Correct line early z checks.
Was looking at completely wrong pixels, hadn't removed subpixels yet.
2022-09-18 11:44:01 -07:00
Unknown W. Brackets
5b5529b390 GE Debugger: Show time spent stepping. 2022-09-18 09:52:15 -07:00
Unknown W. Brackets
ca248e1201 softgpu: Fix s8 primitives in throughmode.
Also always cull no-position verts, hardware too.  Matches tests.
2022-09-18 07:46:18 -07:00
Unknown W. Brackets
9f84cde062 GPU: Fix crash on imm vert triangles.
Was crashing because the frag and vert shaders didn't match up.
2022-09-18 06:16:26 -07:00
Unknown W. Brackets
97002692c4 softgpu: Correct secondary color on imm verts.
Only with through set, and we have to ignore position.
2022-09-18 06:16:26 -07:00
Unknown W. Brackets
6877ff1af2 softgpu: Fix state/continuation for imm prims. 2022-09-18 06:16:26 -07:00
Unknown W. Brackets
596b07bd2e softgpu: Support fog and color1 on imm verts. 2022-09-18 06:16:26 -07:00
Unknown W. Brackets
35ba01e01f softgpu: Refactor imm draws to bypass vert read. 2022-09-18 06:16:25 -07:00
Unknown W. Brackets
799a9ae95b softgpu: Simplify vertex reading. 2022-09-18 06:16:25 -07:00
Unknown W. Brackets
de080e2594 softgpu: Simplify vertex range culling.
The previous logic was harder to understand and easier to get wrong.
Just drop them when clipping the primitive.
2022-09-18 06:16:25 -07:00
Unknown W. Brackets
028a341cc8 softgpu: Explicitly flush on sync and output.
We could in theory skip flush on FinishDeferred, and allow some CPU/GPU
overlap.  If we did, we'd still want to flush at these times.
2022-09-18 06:16:25 -07:00
Unknown W. Brackets
f740fcdbe7 GPU: Minor cleanup of unnecessary virtual. 2022-09-18 06:16:25 -07:00
Henrik Rydgård
4045de8d56 Consider the Adreno and Mali stencil-discard bugs the same. Use the better check from the Mali bug.
Should fix #11980
2022-09-18 10:34:43 +02:00
Unknown W. Brackets
9b01fce5b5 softgpu: Run early Z tests in fast rect path.
Needed for some 2D games, like Criminal Girls.
2022-09-17 13:37:54 -07:00
Henrik Rydgård
262a306b9a Flag shader blending as broken on Adreno for now. 2022-09-16 19:19:42 +02:00
Henrik Rydgård
5f5277a409 Need to have input attachments in the descriptor pool. 2022-09-16 19:19:42 +02:00
Henrik Rydgård
ce82fce8de Use subpass dependencies to implement shader framebuffer read in Vulkan. 2022-09-16 19:19:42 +02:00
Henrik Rydgård
370a7304a6 Careful with min filtering of framebuffer textures only if auto max quality is on. 2022-09-16 19:19:42 +02:00
Henrik Rydgård
9ec35d1464 Logic op fix, min filter fix. Also remove some unnecessary indentation. Fixes the water on Adreno (no logic) 2022-09-16 12:39:37 +02:00
Luboš Vonásek
861af63be9
Merge branch 'hrydgard:master' into compat_openxr_gta 2022-09-16 10:20:11 +02:00
Henrik Rydgård
e8aaf22163 D3D9 crashfix (flare doesn't render correctly though) 2022-09-15 17:22:09 +02:00
Henrik Rydgård
5d4075376d Copy the texels directly in LoadCLUT 2022-09-15 17:09:03 +02:00
Henrik Rydgård
662126a0a1 Small simplification 2022-09-15 16:57:03 +02:00
Henrik Rydgård
36c98ab367 Address feedback, change roles of the two dynamic clut fbos to eliminate the need for state (see next commit) 2022-09-15 09:15:02 +02:00
Henrik Rydgård
9c2bfad749 Seems Need for Speed: Shift has exactly the same lens flare, enable the same compat settings. 2022-09-15 00:18:26 +02:00
Henrik Rydgård
a208afb7b8 OpenGL and D3D11 fixes 2022-09-14 23:35:15 +02:00
Henrik Rydgård
85bb6786a1 Log improvements 2022-09-14 23:13:46 +02:00
Henrik Rydgård
1f6d27bd55 Ridge Racer fix 2022-09-14 22:46:17 +02:00