Commit Graph
9567 Commits
Author SHA1 Message Date
Henrik Rydgård b7d674411e Test parsing of generated OpenGL shaders too (by using glslang). 2020-10-31 18:32:43 +01:00
Henrik Rydgård 44c57d87f4 Get D3D9 fragment shader generation to parity 2020-10-31 18:32:43 +01:00
Henrik Rydgård a2ed609e90 HLSL fix 2020-10-31 18:32:43 +01:00
Henrik Rydgård c2a6090c3f More D3D9 fixes. 2020-10-31 18:32:43 +01:00
Henrik Rydgård af4d6e7642 Set up the test for D3D9, start fixing stuff. 2020-10-31 18:32:43 +01:00
Henrik Rydgård b070ed45e9 Evolve the HLSL and GLSL fragment shader generators even closer together. 2020-10-31 18:32:42 +01:00
Henrik Rydgård b4a76a9f09 Change fragment shader output to work the same in GLSL and HLSL. 2020-10-31 18:32:42 +01:00
Henrik Rydgård d833b5985d Make discard work the same way in the HLSL shader generator. 2020-10-31 18:32:42 +01:00
Henrik Rydgård 984a4d2641 Start adding HLSL support to the GLSL shader generator. 2020-10-31 18:32:42 +01:00
Henrik Rydgård 200c25bcc9 wip 2020-10-31 18:32:42 +01:00
Henrik Rydgård 92d73e3b03 HLSL: Use #define to switch to glsl-like vector types. 2020-10-31 18:32:42 +01:00
Henrik Rydgård 5ee9cfef0d Remove support for D3D11_level_9 (previously only really used for Windows Phone, probably).
Can always fall back to D3D9, which is not going away anytime soon and
still needs to be there. One less HLSL variant to care about.
2020-10-29 00:52:19 +01:00
Henrik Rydgård 8b2aeade15 Fix checks for fragment test cache in GLES fragment shader generator 2020-10-28 23:51:22 +01:00
Henrik Rydgård 71706724e1 Somehow forgot to delete VertexShaderGeneratorVulkan.cpp 2020-10-26 09:59:16 +01:00
Henrik Rydgård 148d3b72e5 Use splat3(x) liberally (converts to vec3(x) on GLES, vec3(x,x,x) on D3D)
Prep for merging the HLSL and GLSL generators.
2020-10-25 08:34:35 +01:00
Henrik Rydgård 2977c56a12 Complete the vertex shader merge, deleting the Vulkan-specific vertex shader generator. 2020-10-25 08:34:35 +01:00
Henrik Rydgård fb2ac3a67e Additional fixes 2020-10-25 08:34:35 +01:00
Henrik Rydgård 69c8912b93 More tess fixes 2020-10-25 08:34:35 +01:00
Henrik Rydgård 6055350a2c Initial work on fixing tess 2020-10-25 08:34:35 +01:00
Henrik Rydgård 7532116b69 Fix additional minor differences 2020-10-25 08:34:35 +01:00
Henrik Rydgård a8f4a4d749 Fix more vertex shader differences 2020-10-25 08:34:35 +01:00
Henrik Rydgård 057fd9f8a3 Bridge more vertex shader differences 2020-10-25 08:34:35 +01:00
Henrik Rydgård 22b26ffc09 Time for the vertex shaders. Set up a test, start eliminating differences. 2020-10-25 08:34:35 +01:00
Henrik RydgårdandGitHub 254c316b10 Merge pull request #13570 from hrydgard/gl-allow-wrap-framebuffers
GL: Allow texture wrapping on framebuffers
2020-10-23 22:41:10 +02:00
Henrik Rydgård 020fb55a65 Completes the merge, deleting the Vulkan-specific fragment shader generator. 2020-10-23 10:03:44 +02:00
Henrik Rydgård 56ddd597c1 Fix more tiny differences. The fragment shader generators now match! 2020-10-23 10:03:44 +02:00
Henrik Rydgård fe8691fba7 Fix additional differences 2020-10-23 10:03:44 +02:00
Henrik Rydgård aea4635d60 Fix minute differences between the shader generators found by the new tester 2020-10-23 10:03:44 +02:00
Henrik Rydgård ef18938aa0 Hack up a test comparing Vulkan fragment haders generated by the GL GLSL generator to the ones generated by the Vulkan generator. 2020-10-23 10:03:44 +02:00
Henrik Rydgård 9e245d6835 OpenGL: Share the shader version detection.
Use a version integer instead of a string
2020-10-23 10:03:44 +02:00
Henrik Rydgård c45515866b Cleanup
Clean up GLSL language setup further
2020-10-23 10:03:44 +02:00
Henrik Rydgård 2917b0e9e6 GLES: Read compat params first, emit code later. 2020-10-23 10:03:44 +02:00
Henrik Rydgård e30de2f6a5 More splat3 2020-10-23 10:03:44 +02:00
Henrik Rydgård 43ce4e7493 Remove an unmotivated ifdef. Additional cleanup 2020-10-22 00:10:21 +02:00
Henrik Rydgård 2c0a3c2e23 Prepare for more GLSL testing 2020-10-21 23:39:34 +02:00
Henrik Rydgård 3d36049b65 Rename shader generator functions, a bit of moving around and adding an errorString param. 2020-10-21 23:20:25 +02:00
Henrik Rydgård c6f51bbc1e Add brute force shader generator tester. Tests D3D11 and Vulkan shaders.
Found a potential error with tesselation without normals already.
2020-10-21 23:20:15 +02:00
Henrik Rydgård 712f56fb7d Vulkan: remove array indexing for light parameters to match the other backends 2020-10-21 23:20:11 +02:00
Henrik Rydgård 391d2ea73d Rename vk uniforms to match the other backends 2020-10-21 21:13:08 +02:00
Henrik Rydgård 92e1dce2db Error handling fixes 2020-10-18 20:26:19 +02:00
Henrik Rydgård e80a526015 D3D11: Implement depth texturing. Fixes, for D3D11, #6411. 2020-10-18 20:14:25 +02:00
Henrik RydgårdandGitHub 6cc8c2ebc1 Merge pull request #13328 from hrydgard/libretro-fixes
Fix libretro with Vulkan
2020-10-14 22:08:11 +02:00
Henrik Rydgård b8e8325888 Fix text issue in God Eater Burst. Forgot that games can allocate texture in volatile memory too.
We considered any texture from kernel memory "reliable", which is wrong
since games can allocate out of the upper half of kernel RAM, which is
called "volatile" memory.

Fixes issue #13511
2020-10-14 00:09:08 +02:00
aliaspider 1aff9b3e2b Vulkan: fix stack overflow. 2020-10-13 06:05:30 +01:00
Henrik Rydgård 332bb7feeb VK: Whenever safely possible, shrink the render area.
We just set the render area to the union of the scissor rects used in a pass.

Might help some games on some mobile hardware, a little bit.

Possibly #13464?
2020-10-11 23:23:25 +02:00
Henrik Rydgård 495fd9a13c Fix OpenGL crash introduced in #13536 2020-10-11 22:34:37 +02:00
Henrik Rydgård ced83b4785 Libretro/VK: Add a README for debugging, so I don't forget. Minor cleanups. 2020-10-11 19:06:09 +02:00
Henrik Rydgård afb35c3be3 Fix GPU profile display on notched screens 2020-10-11 19:04:35 +02:00
Henrik Rydgård 5ece3de8ba Track and accumulate pipeline flags for render passes.
(Information that will later let us make some interesting optimizations)
2020-10-11 12:22:25 +02:00
Henrik Rydgård 940611fe65 Remove the USE_GENERAL_LAYOUT_FOR* debug defines. 2020-10-11 11:06:54 +02:00