Henrik Rydgård
15d4495f76
Pass shadergen tests
2022-10-27 11:05:59 +02:00
Henrik Rydgård
2a1526c352
Address feedback
2022-10-27 11:05:59 +02:00
Henrik Rydgård
390a136cb5
Stereo now works through shader depal too
2022-10-27 11:05:59 +02:00
Henrik Rydgård
8413473fa4
Fix more cases, GTA works now.
2022-10-27 11:05:59 +02:00
Henrik Rydgård
524e92374f
Use arrays more consistently.
2022-10-27 11:05:59 +02:00
Henrik Rydgård
91259aaad7
Always use array textures for framebuffers in Vulkan for simplicity.
2022-10-27 11:05:58 +02:00
Henrik Rydgård
2bea495981
wip
2022-10-27 11:05:58 +02:00
Henrik Rydgård
6af4644ab2
Stereo on mobile fixes
2022-10-27 11:05:58 +02:00
Henrik Rydgård
0de12f5ca9
Some refactoring of framebuffer views, layer issues, more work.
2022-10-27 11:05:58 +02:00
Henrik Rydgård
2e87f0bc0b
More work. Things are starting to work now.
2022-10-27 11:05:58 +02:00
Henrik Rydgård
c668736924
Add a couple of stereo display shaders, add infrastructure, compile stereo pipelines
2022-10-27 11:05:58 +02:00
Henrik Rydgård
12d1f94d47
Start stereo postshader work
2022-10-27 11:05:58 +02:00
Henrik Rydgård
fb250c4b29
More multiview work
2022-10-27 11:05:58 +02:00
Henrik Rydgård
d3804ec2e5
Misc multiview hackery
2022-10-27 11:05:58 +02:00
Henrik Rydgård
80e1db07a7
Minor ShaderWriter refactor, prep for later changes
2022-10-24 17:45:18 +02:00
Henrik Rydgård
ecf2797173
Minor refactor of ShaderWriter flags. Extracted from the stereo PR
2022-10-23 21:57:01 +02:00
Unknown W. Brackets
add2edcab8
VR: Always pass the bounding box check.
...
Likely better to draw all objects, even if they wouldn't have been on
screen, for VR purposes.
2022-10-22 16:52:02 -07:00
Unknown W. Brackets
261f1e13db
GPU: Account for scissor/viewport in bound test.
...
The bounding box check doesn't check against viewport (which the PSP
generally doesn't clip against), but instead checks against the scissor.
If the scissor doesn't fit inside the offset 4096x4096 box, that direction
is cannot fail the test.
2022-10-22 16:52:02 -07:00
Unknown W. Brackets
93ee82d84f
GPU: Respect depth clamp in bounding box check.
...
Although, logically, this feels reversed - it rejects the point if it's
outside positive Z, which would clamp. This matches PSP tests.
2022-10-22 16:05:30 -07:00
Unknown W. Brackets
8b80c5fb28
GPU: Allow/use indices in bounding box check.
...
Not sure any games actually use this, but it's supported.
2022-10-22 16:05:29 -07:00
Unknown W. Brackets
519c90e049
GPU: Correct large morph vertex advance.
...
Can be 544 bytes per vertex.
2022-10-22 16:05:29 -07:00
Unknown W. Brackets
6ddf22487b
GPU: Correct bounding box for larger counts.
...
Matches tests on a PSP with float/transform format.
2022-10-22 16:05:29 -07:00
Henrik Rydgård
3af86ec6f7
Make it possible to specify extensions for Vulkan in the ShaderWriter
2022-10-22 17:46:57 +02:00
Henrik Rydgård
6aa3e4b242
Minor refactoring in PresentationCommon
...
Broken out from stereo work
2022-10-21 15:53:09 +02:00
Henrik Rydgård
f2193814ee
PresentationCommon: Use refcounts to simplify shader module management
2022-10-21 14:18:29 +02:00
Henrik Rydgård
cafce7365b
Vulkan: Fix frame ordering issue with postprocessing shaders
...
Requested an init command buffer outside the frame, which is dangerous
and caused validation problems with command pool resets.
Would like to assert on insideFrame in GetInitCmd, but we use it from
some init code where it does work correctly. Might clean that up at some
point.
2022-10-21 12:52:21 +02:00
Henrik Rydgård
a830f18054
Merge pull request #16265 from unknownbrackets/lighting-nonormal
...
GPU: Respect world matrix and reverse flag w/o normals
2022-10-21 09:16:53 +02:00
Unknown W. Brackets
d23293ee72
GPU: Respect matrix and reverse flag w/o normals.
...
See frame dump in #14223 , which requires world matrix be applied.
2022-10-20 23:15:25 -07:00
fp64
2c814c568a
Some more codestyle cleanup
2022-10-20 06:59:35 -04:00
fp64
9a01db5f42
Change wrap_mode to clamp for bicubic upscaler
...
It was set to wrap, even though the comment claimed otherwise. Previous implementation had clamp, as do (I think) other upscaling modes (Hybrid, etc.).
Also make upscaler codestyle a little more consistent with the rest.
2022-10-20 06:53:49 -04:00
Henrik Rydgård
90d395a10d
Remove "attachment" parameter from BindFramebufferAsTexture everywhere.
...
Not actually useful since our framebuffer objects don't support multiple
color images, and probably won't ever need to.
2022-10-20 10:15:19 +02:00
Henrik Rydgård
269eb55c17
Build/warning fix
2022-10-18 10:48:16 +02:00
Henrik Rydgård
aa51bfd1ef
Use GPU "use" flags to replace IsVRBuild in the renderer. It remains elsewhere.
2022-10-17 19:57:11 +02:00
Henrik Rydgård
30aa07b156
Two more renames to make things read better
2022-10-17 08:47:05 +02:00
Henrik Rydgård
9b8a5d1db3
Rename GPU_SUPPORTS_ to GPU_USE_
2022-10-17 08:47:03 +02:00
Henrik Rydgård
daca0b2109
Rename gstate_c.Supports to gstate_c.Use
2022-10-17 08:46:37 +02:00
Unknown W. Brackets
162b27e136
GPU: Replace logic ops with blend for simple cases.
...
So that alpha/stencil are handled correctly.
2022-10-16 22:24:43 -07:00
Henrik Rydgård
a605366254
Add ShaderId utility function to be used for some sanity checking.
2022-10-13 22:39:47 +02:00
Henrik Rydgård
4d1da5859c
Add simple way to add debug annotation in the middle of the command stream. Vulkan-only.
2022-10-13 22:39:44 +02:00
Unknown W. Brackets
2f9392083a
GPU: Respect stencil state in shader blend.
2022-10-11 22:26:31 -07:00
Henrik Rydgård
e0e29a1556
Merge pull request #16197 from hrydgard/more-uniform-optimization
...
More uniform optimization, fixes
2022-10-12 01:00:27 +02:00
Henrik Rydgård
d30d8bf35c
Removes the option, autodetect instead - only enable if the GPU doesn't support bitwise ops.
2022-10-11 16:09:57 +02:00
Henrik Rydgård
901f698a10
Merge pull request #16201 from unknownbrackets/gedebugger
...
GE Debugger: Normalize framebuffer texture preview
2022-10-11 11:33:19 +02:00
Henrik Rydgård
804220afb1
Merge pull request #16198 from unknownbrackets/gles-stencil
...
Readback stencil buffer for debugger on GLES
2022-10-11 10:55:38 +02:00
Henrik Rydgård
baa9451cb7
Warning fixes
2022-10-11 09:55:53 +02:00
Unknown W. Brackets
416265431b
GE Debugger: Display if tex is framebuf.
...
Rather than guessing based on size, let's show explicitly.
2022-10-10 22:35:42 -07:00
Unknown W. Brackets
48c39543af
GE Debugger: Normalize framebuffer texture preview.
...
Previously, we would show the render-to-texture with its original
dimensions. While useful, this skewed the preview coordinates and was
sometimes confusing. Additionally, depth texturing didn't preview.
This pads and subsets the texture preview so it's the right size.
2022-10-10 21:54:24 -07:00
Unknown W. Brackets
fc9f200224
GE Debugger: Centralize current fb tex fetch code.
2022-10-10 21:50:53 -07:00
Unknown W. Brackets
999055791d
D3D9: Remove block transfer code overrides.
...
We can just use Draw now. Keep depth, though, since it applies scale.
2022-10-10 21:48:38 -07:00
Unknown W. Brackets
fc68cd9457
GLES: Add debug readback of stencil data.
...
This allows the existing gpu.buffer.renderStencil to snapshot the state.
2022-10-10 17:09:14 -07:00