Lubos
1a6180583e
OpenXR - Reduce uniform calls
2022-10-17 19:00:38 +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
Henrik Rydgård
ee46f8992e
Don't use fragmentShaderInt32Support as a replacement for checking for bitwiseOps
2022-10-10 18:02:19 +02:00
Henrik Rydgård
aec22491fe
Don't expand alphaColorRef to 128 bytes on backends where we don't need to.
2022-10-10 18:02:01 +02:00
Henrik Rydgård
87d00f79da
Merge pull request #16165 from unknownbrackets/geo-shader
...
Vulkan: Clip clamped depth in geometry shader
2022-10-06 09:18:08 +02:00
Unknown W. Brackets
aee2ad46a2
GPU: Verify generated shader buffer length.
...
Hardware tessellation + uberlighting + clamp was exceeding the buffer,
causing memory corruption. Let's try to catch it, but also increase
buffers to be safe.
2022-10-05 21:41:09 -07:00
Unknown W. Brackets
bc3d3cf9fb
GPU: Optimize clip distances needed.
...
We only need to write one clip distance to clip clamped depth, since we
don't clamp when it needs clipping on both sides.
2022-10-05 21:17:17 -07:00
lainon
3cdf72b68b
Better readability and optimization insertion into container by replacing 'insert' -> 'emplace', 'push_back' -> 'emplace_back'
2022-09-30 12:35:28 +03:00
lainon
b304551747
Code readability, vec reserve() and remove excess c_str()
2022-09-30 12:31:32 +03:00
Henrik Rydgård
f4b71e2dc7
Fragment shader uniforms: Pack color mask in 32 bits instead of expand to 128 bits.
...
Allows us to save 16 bytes from the main uniform buffer, since there's
free 32-bit spaces here and there to use.
2022-09-26 13:04:56 +02:00
Henrik Rydgård
9d1355e137
Always do the vertex shader part of the fog computation.
...
In #16104 , we drastically reduced the number of shader variants for
games that use flexible lighting setups. I looked at a few games and it
seems that a lot of games have the same shaders with fog on/off, while
fog is super cheap to compute. So let's just always do it, reducing
vertex shader variants further (though the amount of pipelines will probably
remain the same, since we still specialize the fragment shader).
Might also be worth adding a dynamic bool for the fragment shader, but
if so, doing it separately.
2022-09-26 09:30:54 +02:00
Henrik Rydgård
96f054f098
Fix light ubershader for D3D11 and OpenGL, GLES unsigned/signed stuff
2022-09-25 23:35:08 +02:00
Lubos
c4dbd6d045
Merge branch 'master' into compat_openxr_gta
2022-09-20 21:46:33 +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
Lubos
e406dc4730
Merge branch 'master' into compat_openxr_gta
2022-09-13 21:01:55 +02:00
Lubos
b695c1ffb3
Merge branch 'master' into compat_openxr_gta
2022-09-12 23:04:31 +02:00
Lubos
e49ee5c93b
Merge branch 'master' into feature_openxr_stereo
2022-09-12 18:49:22 +02:00
Lubos
bdde5f0f7f
OpenXR - Use per game stereo separation file
2022-09-12 18:47:13 +02:00
Henrik Rydgård
9bd8b11bf8
Implement shader depal for D3D11.
2022-09-11 13:41:17 +02:00
Luboš Vonásek
5be9455bf5
Merge branch 'hrydgard:master' into compat_openxr_gta
2022-09-08 18:39:11 +02:00
Lubos
c9f08a85c6
OpenXR - Do not mashup Common/GPU
2022-09-08 18:25:10 +02:00
Henrik Rydgård
e828df9f25
Split each renderpass/framebuffer into multiple "compatibility classes" (RenderPassType).
2022-09-08 00:32:03 +02:00
Lubos
08226d8396
OpenXR - Stereo matrices fixed
2022-09-05 20:49:25 +02:00
Lubos
4ce0579f70
OpenXR - Split projection matrix for color and depth buffer
2022-09-04 21:12:18 +02:00
Lubos
5be6665df8
Merge branch 'master' into feature_openxr_stereo
2022-09-04 12:37:41 +02:00
Lubos
1df1d79b9e
OpenXR - Stereo without multiview added
2022-09-04 12:36:52 +02:00
Henrik Rydgård
b84cda2876
Plumb the computed pipeline state into ComputeFragmentShaderID.
2022-09-02 22:16:57 +02:00
Lubos
4bd5a28604
OpenXR - Flag to easily disable multiview shaders added
2022-08-28 14:49:27 +02:00
Lubos
c2c0561be2
OpenXR - OPENXR ifdef removal
2022-08-27 17:33:37 +02:00
Luboš Vonásek
11a6318509
Merge branch 'hrydgard:master' into feature_openxr_stereo
2022-08-24 19:50:45 +02:00
Henrik Rydgård
416d8b403b
Merge pull request #15768 from lvonasek/feature_openxr_6dof
...
OpenXR - 6DoF support
2022-08-24 18:49:41 +02:00
Henrik Rydgård
586da08820
Merge pull request #15895 from unknownbrackets/gpu-minor
...
GPU: Correct Draw2D::DeviceRestore()
2022-08-24 11:50:42 +02:00
Henrik Rydgård
ff92d7d4b0
Remove duplicate uniform queries
2022-08-24 10:51:45 +02:00
Unknown W. Brackets
7ec62a32b4
GPU: More consistently clear ptrs on DeviceLost().
...
Rather get a null pointer crash than confusing buggy use-after-free
excitement.
2022-08-23 20:15:30 -07:00
Lubos
4026d49104
OpenXR - Multiview uniforms working
2022-08-17 19:14:36 +02:00
Lubos
22e7f87e33
OpenXR - Disable multiview for now
2022-08-16 21:32:11 +02:00
Lubos
f8e68a45b6
Merge branch 'feature_openxr_6dof' into feature_openxr_stereo
2022-08-15 17:41:27 +02:00
Lubos
d34d1e4af9
OpenXR - Ensure PSP aspect ratio for 2D content
2022-08-15 17:41:04 +02:00
Lubos
ab6c91c203
OpenXR - Integrate multiview into system
2022-08-14 18:51:45 +02:00
Lubos
76bea33ef0
OpenXR - Better detecting of 2D menus
2022-08-12 08:41:22 +02:00
Lubos
5c3ff4f357
OpenXR - Detect 3D content better
2022-08-08 18:43:16 +02:00
Lubos
c7e321b866
OpenXR - Detecting UI mode improved
2022-08-07 20:32:34 +02:00
Lubos
cc3981a328
OpenXR - 72Hz support added
2022-08-05 15:14:21 +02:00
Lubos
92d3ed6ee3
OpenXR - HUD is enabled based on gstate
2022-08-05 11:31:33 +02:00
Lubos
3578656b8b
OpenXR - Introduce VR tweaks
2022-08-03 18:52:55 +02:00
Lubos
cb6448ff2d
Merge branch 'master' into feature_openxr_6dof
2022-08-02 21:01:05 +02:00
Lubos
4814bed7df
OpenXR - HUD support added
2022-08-02 20:58:16 +02:00
Lubos
2103874c0f
OpenXR - Estimate world unit scale
2022-08-01 19:28:50 +02:00