Henrik Rydgård
|
116d91fcaa
|
Viewport-scissor dirty state cleanup
|
2026-05-30 19:07:59 +02:00 |
|
Henrik Rydgård
|
0e8ba0d6fe
|
Bugfixes, cleanup
|
2026-05-30 19:07:59 +02:00 |
|
Henrik Rydgård
|
e75d9f8a5f
|
Unify the bounding depth checks, correct them if minmax clip is needed
|
2026-05-30 19:07:59 +02:00 |
|
Henrik Rydgård
|
0eede05f5f
|
Implement fragment shader depth clamp and min/max discard. Slow on some hardware, but it's a fallback.
|
2026-05-30 19:07:59 +02:00 |
|
Henrik Rydgård
|
66fd3e65d8
|
Remove some redundant function parameters
|
2026-05-30 19:07:59 +02:00 |
|
Henrik Rydgård
|
de266c3d6c
|
Add the appropriate epsilons to cull distance. Fixes the NBA issue.
It's a bit odd that this draw doesn't go through software transform
though.
|
2026-05-30 19:07:59 +02:00 |
|
Henrik Rydgård
|
0b47955c64
|
Delete geometry shader culling support. Is mostly replaced, and will be fully replaced with software transform.
|
2026-05-30 19:07:59 +02:00 |
|
Henrik Rydgård
|
d849db6be5
|
Buildfix, remove redundant variable
|
2026-05-30 19:07:59 +02:00 |
|
Henrik Rydgård
|
5ad24adc93
|
Cleanup, increase the max cull count. Flatout water works now.
|
2026-05-30 19:07:59 +02:00 |
|
Henrik Rydgård
|
3599c4002b
|
Through mode draws should not be min/max tested
|
2026-05-30 19:07:59 +02:00 |
|
Henrik Rydgård
|
9979d5544d
|
Round off Z for the min/max tests. Gets both Test Drive map and Wipeout Pure shadows working at the same time..
|
2026-05-30 19:07:59 +02:00 |
|
Henrik Rydgård
|
eaacbbc226
|
D3D and OpenGL shader buildfixes
|
2026-05-30 19:07:59 +02:00 |
|
Henrik Rydgård
|
058b1af285
|
Revert to software on out-of-bounds projected depth
|
2026-05-30 19:07:59 +02:00 |
|
Henrik Rydgård
|
86efaeee7e
|
Increase the minimum vertex count for checking fast-cull. This fixes #10914 in hardware transform (by forwarding to software)
|
2026-05-30 19:07:59 +02:00 |
|
Henrik Rydgård
|
86f9618cb9
|
Fallback to software transform if draw intersects -W<Z<W
|
2026-05-30 19:07:59 +02:00 |
|
Henrik Rydgård
|
5eb114d3d9
|
Put more useful data in BoundingDepths. Slightly more costly.
|
2026-05-30 19:07:59 +02:00 |
|
Henrik Rydgård
|
49557580e9
|
disable debug colors
|
2026-05-30 19:07:59 +02:00 |
|
Henrik Rydgård
|
8b84fd555d
|
Apply triangle near-clipping in software transform.
Fixes, but only in SW transform, #10914
Re-enable range culling, oops.
|
2026-05-30 19:07:59 +02:00 |
|
Henrik Rydgård
|
280ddbf86c
|
Remove state from SoftwareTransform class
|
2026-05-30 19:07:59 +02:00 |
|
Henrik Rydgård
|
5cc2f71038
|
Software transform: More Z clamping updates
|
2026-05-30 19:07:59 +02:00 |
|
Henrik Rydgård
|
83dcd24043
|
Small SIMD optimization in software transform
|
2026-05-30 19:07:59 +02:00 |
|
Henrik Rydgård
|
d60d190236
|
Implement depth clamp (for safe cases) in the software transform pipeline, and make sure triangle culling is always done.
|
2026-05-30 19:07:59 +02:00 |
|
Henrik Rydgård
|
a6b146b74b
|
Some work on software transform
|
2026-05-30 19:07:59 +02:00 |
|
Henrik Rydgård
|
b9ef43f4de
|
VertexShaderGenerator work
|
2026-05-30 19:07:59 +02:00 |
|
Henrik Rydgård
|
36f5664c5e
|
Re-enable cull distance in vertex shader, fix some test errors
|
2026-05-30 19:07:58 +02:00 |
|
Henrik Rydgård
|
b1723086be
|
Plumb through depth information (although not yet always generated)
|
2026-05-30 19:07:58 +02:00 |
|
Henrik Rydgård
|
f55adcc3a1
|
Apply a small depth bias to simulate rounding of Z. Fix min/max clip plane math
|
2026-05-30 19:07:58 +02:00 |
|
Henrik Rydgård
|
08f4c8fae8
|
Compute min/max Z and W from the culling loop, use to cull some more
|
2026-05-30 19:07:58 +02:00 |
|
Henrik Rydgård
|
f0d715feaa
|
During culling, evaluate minZ,maxZ,minW,maxW, and use them to cull some things. Also, assorted vshader work.
|
2026-05-30 19:07:58 +02:00 |
|
Henrik Rydgård
|
5808afef10
|
Implement minZ/maxZ through user clip planes
|
2026-05-30 19:07:58 +02:00 |
|
Henrik Rydgård
|
2f73bea7f0
|
Correct Z in through mode, add another check to range culling
|
2026-05-30 19:07:58 +02:00 |
|
Henrik Rydgård
|
490469c4e6
|
Re-implement range culling
|
2026-05-30 19:07:58 +02:00 |
|
Henrik Rydgård
|
ae98055cec
|
Delete a lot of legacy depth and viewport code, fix OpenGL
|
2026-05-30 19:07:58 +02:00 |
|
Henrik Rydgård
|
d3543e16b3
|
Simplify line expansion
|
2026-05-30 19:07:58 +02:00 |
|
Henrik Rydgård
|
62d8cf22de
|
Move the viewport transform to software in SW transform mode
transform fix
|
2026-05-30 19:07:58 +02:00 |
|
Henrik Rydgård
|
5aedd2f1e3
|
Hardware transform seems to work, software transform still has issues
|
2026-05-30 19:07:58 +02:00 |
|
Henrik Rydgård
|
69c7c75124
|
Replace u_proj_through with a simple scale/offset
First reasonable output appears.
|
2026-05-30 19:07:58 +02:00 |
|
Henrik Rydgård
|
2233fd9f13
|
Minor simplification
|
2026-05-30 19:07:58 +02:00 |
|
Henrik Rydgård
|
f60e27a9b7
|
Just some refactoring of the GPUStatistics struct, and more use of StringWriter
|
2026-05-29 14:40:31 +02:00 |
|
Henrik Rydgård
|
886d9c255b
|
D3D11: Improve compilation error reporting
|
2026-05-28 10:55:29 +02:00 |
|
Henrik Rydgård
|
b65bbaf92c
|
Merge pull request #21678 from nintendo424/gpu-save-first-frame
gpu: Preserve first-frame font render targets
|
2026-05-27 12:22:47 +02:00 |
|
Henrik Rydgård
|
5513fcb223
|
Merge pull request #21705 from GermanAizek/constexpr-cpp17
GPU: modernize use C++17 constexpr for precalculate compilation
|
2026-05-27 12:21:39 +02:00 |
|
Henrik Rydgård
|
db99de8575
|
Rename BuildDrawParams to ProjectClipAndExpand, call it directly from Transform
|
2026-05-26 16:05:53 +02:00 |
|
Henrik Rydgård
|
9ad9a6c0bb
|
DrawEngines: Move the clear-detection to a more sensible place, reorder things to make more sense.
|
2026-05-26 16:05:53 +02:00 |
|
Henrik Rydgård
|
06a7793f57
|
Fix some y-flip issues in D3D11. It got broken by recent refactorings.
Fixes #21726
|
2026-05-26 15:51:24 +02:00 |
|
Henrik Rydgård
|
4be2a853b7
|
FastCull: Integrate the vertex position loading into the culling loop
|
2026-05-25 18:16:34 +02:00 |
|
Henrik Rydgård
|
82a888fd8e
|
Reimplement the fast culling using CrossSIMD
|
2026-05-25 18:16:34 +02:00 |
|
Henrik Rydgård
|
250abe0d56
|
Loongarch64 build fixes
|
2026-05-25 15:41:24 +02:00 |
|
Henrik Rydgård
|
37f6fda9c9
|
Add a CrossSIMD loongarch64 LSX implementation. Note: This is untested!
|
2026-05-25 15:40:22 +02:00 |
|
Henrik Rydgård
|
4a55fc6724
|
Prepare TestBoundingBoxFast for optimization
|
2026-05-25 13:37:27 +02:00 |
|