Unknown W. Brackets
f802c3bc6d
softgpu: Add some comments and cleanup.
2021-11-15 06:09:12 -08:00
Unknown W. Brackets
babd63c644
softgpu: Tune thread minimums better.
...
Darkstalkers seems more sensitive to these than many other games, this
improves performance more.
2021-11-14 18:44:30 -08:00
Unknown W. Brackets
66f635cba0
sfotgpu: Use threads to apply clears.
2021-11-14 18:31:46 -08:00
Unknown W. Brackets
2ab7499d8d
softgpu: Combine sliced rectangles.
...
This mostly affects clears, and reduces overhead. Only about 2%
improvement, but it's a small change.
2021-11-14 18:31:46 -08:00
Unknown W. Brackets
0281e2f017
softgpu: Split out rectangle path for combining.
2021-11-14 18:31:46 -08:00
Unknown W. Brackets
9545e3b0e2
softgpu: Fixup range cull for fans and fast path.
2021-11-14 18:31:45 -08:00
Unknown W. Brackets
fb6fadbbb7
softgpu: Fast path rectangles as fans.
...
Some games, such as Legend of Heroes III, use fans instead of strips.
2021-11-14 18:31:45 -08:00
Unknown W. Brackets
09a9927b82
softgpu: Use range loops for sprite fast path.
2021-11-14 18:31:45 -08:00
Unknown W. Brackets
55cde6bd6a
softgpu: Check flat z in fast path.
2021-11-14 12:27:39 -08:00
Unknown W. Brackets
361c8f966c
softgpu: Fast path triangles without textures.
...
The fast path may still be useful in this case.
2021-11-14 12:27:39 -08:00
Unknown W. Brackets
5bb6245b1f
softgpu: Fix leaked range flag on cull.
...
Fixes some backgrounds in Final Fantasy 4, probably others.
2021-11-14 08:43:52 -08:00
Unknown W. Brackets
f66e243727
softgpu: Correct scissor for pixel centers.
2021-11-07 11:19:41 -08:00
Henrik Rydgård
f58e75e462
Remove unused variable
2021-11-07 16:31:28 +01:00
Henrik Rydgård
43dc54bc4a
Comment fix, remove assert
2021-11-07 16:30:47 +01:00
Henrik Rydgård
c60feef55e
Remove support for 16-bit textures from the upscaling shader, to shorten it for benefit of mobile GPUs
2021-11-07 16:08:57 +01:00
Henrik Rydgård
281ddc2437
Speed up the 4xBRZ upscaler with 16x and the MMPX one with 4x by not doing redundant work
2021-11-07 15:47:05 +01:00
Henrik Rydgård
6349704924
Switch texture scaling shaders to a fixed scale model, preparing for the next change.
2021-11-07 13:12:28 +01:00
Henrik Rydgård
c111d6cc2d
Remove the copy-compute-shader path
2021-11-07 12:55:39 +01:00
Henrik Rydgård
1f502b8f94
Merge pull request #15106 from unknownbrackets/depth-cull
...
GLES: Explicitly enable ARB_cull_distance
2021-11-06 21:35:11 +01:00
Unknown W. Brackets
142db5d61e
GLES: Explicitly enable ARB_cull_distance.
2021-11-06 11:33:41 -07:00
Henrik Rydgård
aefc21f4a3
Merge pull request #15096 from unknownbrackets/debugger-display
...
Fix an issue in GE frame dump recording
2021-11-06 13:40:57 +01:00
Henrik Rydgård
ebc05b3141
Merge pull request #15099 from unknownbrackets/softgpu-depth
...
Fix depth cull in softgpu
2021-11-06 09:16:29 +01:00
Unknown W. Brackets
8db2d37e64
softgpu: Fix depth cull in softgpu.
...
Was improperly skipping cull for positive Z.
2021-11-05 21:38:13 -07:00
Unknown W. Brackets
fe440d40e5
softgpu: Clip full weighted Z without truncating.
...
In case wsum_recip is nan or similar, we want to make sure we still
properly clip to minz/maxz.
2021-11-05 21:36:38 -07:00
Henrik Rydgård
b88d676f78
Remove the vertex cache from the OpenGL backend.
...
It was disabled for a very long time, and now that we've re-enabled it, it
mostly causes problems.
Not feeling like debugging it on weird hardware, I think it's better
to focus energy on other optimizations.
2021-11-06 00:45:43 +01:00
Unknown W. Brackets
f03fa2b0b8
softgpu: Improve accuracy of line drawing.
...
Needs higher precision to change pixel at the right time.
This makes the lines in Persona 1 look right, see #3871 .
2021-11-04 00:11:09 -07:00
Unknown W. Brackets
a0599f70c4
GE Debugger: Record until some drawing.
...
Otherwise, we end up with empty frame dumps if games call display twice.
2021-11-03 17:40:20 -07:00
Unknown W. Brackets
ec1d980b30
GPU: Sort line verts to correct bias.
...
We want it to consistently go down and right. This improves Persona 2 UI
significantly (see #3332.)
2021-11-02 21:57:00 -07:00
Unknown W. Brackets
76e1690646
GPU: Keep diagonal lines the same width.
2021-10-31 15:49:20 -07:00
Unknown W. Brackets
60bd25582c
Vulkan: Remove wide line handling.
...
No longer used, since we convert lines to triangles now.
2021-10-31 14:47:21 -07:00
Unknown W. Brackets
2718e81c0e
GPU: Expand lines to triangles.
2021-10-31 14:46:46 -07:00
Unknown W. Brackets
ea6d0f07e4
GPU: Correct point width/height.
...
Oops, shouldn't be half in 3D transform.
2021-10-31 13:19:51 -07:00
Unknown W. Brackets
1d76e55f84
Vulkan: Disable large points feature.
...
No longer used.
2021-10-31 13:07:03 -07:00
Unknown W. Brackets
b3a8e013f6
GPU: Expand points into triangles for higher res.
2021-10-31 13:06:06 -07:00
Unknown W. Brackets
4fb09859fd
GPU: Refactor out rectangle expansion.
...
Just so it's cleaner when the same is done for lines.
2021-10-31 11:09:04 -07:00
Unknown W. Brackets
9fc94a3494
GPU: Skip cull for lines and points.
...
These already always go through software transform, so make sure we handle
them consistently. We'll eventually convert to triangles.
2021-10-31 10:54:50 -07:00
Henrik Rydgård
8a718a8202
Merge pull request #15072 from unknownbrackets/guardband
...
Implement depth culling in software transform
2021-10-31 17:29:41 +01:00
Henrik Rydgård
a498f164ee
vmulq_laneq_f32 not supported on ARM32
2021-10-31 16:32:45 +01:00
Unknown W. Brackets
bffa68a566
GPU: Cleanup comments on swtranform cull.
2021-10-31 07:22:59 -07:00
Henrik Rydgård
3245f54dc1
Optimize the rotation a bit (limit to VK/D3D11, mat2 instead of mat4)
2021-10-31 13:44:54 +01:00
Henrik Rydgård
fdacf751ce
NEON/SSE-optimize some matrix multiplications used by software transform
...
Will hopefully reclaim any potential speed loss from the recent
refactor.
2021-10-31 13:36:34 +01:00
Henrik Rydgård
3bf6b140c7
Don't forget to check for bufferedRendering before enabling screen rotation in the shader.
2021-10-31 13:35:13 +01:00
Unknown W. Brackets
5128480d74
GPU: Implement cull behavior in sw transform.
2021-10-30 21:04:16 -07:00
Unknown W. Brackets
7edfdd2cdd
GPU: Rename pos/uv w for clarity.
2021-10-30 21:04:00 -07:00
Unknown W. Brackets
b4715e4d88
GPU: Correct w on immediate prim.
2021-10-30 21:01:07 -07:00
Unknown W. Brackets
b4bc4c5c78
GPU: Remove buggy rectangle culling.
...
Transformed rectangles are uncommon, but culling them properly is a bit
trickier than this, so remove for now.
2021-10-30 18:26:23 -07:00
Unknown W. Brackets
b5a2afef76
D3D11: Fix fog in software transform.
2021-10-30 18:24:01 -07:00
Unknown W. Brackets
e688bb2cdf
GPU: Correct software transform projection.
...
Now reading the new fog value.
2021-10-30 18:23:58 -07:00
Unknown W. Brackets
4ec75de0e7
GPU: Add fog separately for swtransform verts.
...
At this point, still being processed wrong, this just changes the
attribute structure.
2021-10-30 18:22:54 -07:00
Unknown W. Brackets
b87451de92
GPU: Restore rotation handling in sw transform.
2021-10-30 18:22:53 -07:00