Commit Graph
1195 Commits
Author SHA1 Message Date
Henrik Rydgård 4e16fcaf1a Fix reinterpret shader for D3D11 2020-11-08 11:32:55 +01:00
Henrik Rydgård 96c36d5c10 More work on reinterpret. Get Vulkan running 2020-11-08 11:32:55 +01:00
Henrik Rydgård 1ccc8c129c Reinterpret code runs, no idea if it works 2020-11-08 11:32:55 +01:00
Henrik Rydgård f2e315b9a6 More shadergen work
Buildfix
2020-11-08 11:32:53 +01:00
Henrik Rydgård 19b4febbbf More reinterpret shader gen and test work.
More work on reinterpret

Buildsystem fixes
2020-11-08 10:41:20 +01:00
Henrik Rydgård d9ee06a60d Reorganize the DeviceLost code a little. FramebufferManagerCommon now sees it. 2020-11-07 10:51:54 +01:00
Henrik Rydgård e12c0fb205 Oops, what happened there.. 2020-11-06 23:20:02 +01:00
Henrik Rydgård 26e09c758b Some GL error logging improvements 2020-11-06 22:42:09 +01:00
Henrik Rydgård 6a1e669c45 Fix GLSL version detection bug. Fixes #13631 2020-11-06 21:55:16 +01:00
Henrik Rydgård 7a690f177e Move shader language feature detection to the draw context. 2020-11-06 09:11:57 +01:00
Henrik Rydgård 84037f448e Remove colorDepth property of framebuffers. They're all 8888. 2020-11-05 14:51:46 +01:00
Henrik Rydgård 7b2236778b Remove remnants of an old, no longer applicable readback optimization 2020-11-05 14:38:20 +01:00
Henrik Rydgård 6db943e831 Merge the two ShaderStage enums 2020-11-05 08:34:35 +01:00
Henrik Rydgård 207b76da6e Show an error on screen if a shader fails to compile.
Part of #1 investigation of #13541
2020-11-05 08:27:13 +01:00
Henrik Rydgård 03e8eac6ef Merge the two ShaderLanguage enums. 2020-11-04 09:40:11 +01:00
Henrik Rydgård 733a152c54 Move ShaderWriter to Common/GPU, along with some stuff from ShaderCommon.h. 2020-11-04 09:18:35 +01:00
Henrik Rydgård 291742535b Safety, comments 2020-11-02 10:02:52 +01:00
Henrik Rydgård d32fc34b2b Remove inPrefix. HLSL shaders gets slightly longer but probably no biggie.
The extra variable should be optimized out anyway.

Tried doing it with the preprocessor, couldn't get it to work.
2020-10-31 23:22:06 +01:00
Henrik Rydgård 2f1bbd314e Fragment shader gen: Remove unnecessary allocations 2020-10-31 18:32:43 +01:00
Henrik Rydgård 3d4fc7c696 Check for a couple additional GL extensions 2020-10-31 18:32:43 +01:00
Henrik Rydgård c311eeaf7d Switch D3D9 too to the glsl shader generator 2020-10-31 18:32:43 +01:00
Henrik Rydgård 8d70fd269e Minor D3D9 fixes 2020-10-31 18:32:43 +01:00
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 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 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å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 43ce4e7493 Remove an unmotivated ifdef. Additional cleanup 2020-10-22 00:10:21 +02:00
Henrik Rydgård 3a870a9d81 OpenGL: Allow texture wrapping on framebuffers if supported
Fixes minor texture glitch in Wipeout, and probably more
2020-10-22 00:03:44 +02:00
Henrik Rydgård d4c02ccc1c Address feedback about recent changes
Thanks unknown.
2020-10-19 22:50:31 +02:00
Henrik Rydgård 92e1dce2db Error handling fixes 2020-10-18 20:26:19 +02:00
Henrik Rydgård d3339d93b0 Set up depth buffers to be bound as shader resource views 2020-10-18 20:14:25 +02:00
Henrik Rydgård f526f5977b OpenGL: Disable auto invalidation of framebuffers, it has somehow broken
(Breaks DBZ: Tag Team)
2020-10-17 12:51:45 +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 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 dffc36b854 Get Vulkan going again with libretro. Rendering is the wrong size and crashes on exit, but it's a start.
Only tested on Windows.
2020-10-11 19:06:09 +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 9d78ba93e0 Bugfix 2020-10-11 11:17:43 +02:00
Henrik Rydgård 692048fb8b VK: Separate layout transitions from renderpasses again.
According to sage advice from themaister, this is just unnecessary overengineering.

Having them separate reduces the size of the renderpass key - we might be able to just
change that to an array lookup again. Will also make it easier to in the future add
depth-less render passes.
2020-10-11 11:06:54 +02:00
Henrik Rydgård 940611fe65 Remove the USE_GENERAL_LAYOUT_FOR* debug defines. 2020-10-11 11:06:54 +02:00
Henrik Rydgård dc0f7ca8ee VK: Copy depth buffer if we can't blit. Some GPUs can't blit to depth.
Fixes some recent issues with Intel GPUs on Vulkan.
2020-10-11 10:57:35 +02:00
Henrik Rydgård 886a8b1ac6 Remove Timer.cpp/h. Move various collections into Common/Data/Collections. 2020-10-05 21:05:23 +02:00
Henrik Rydgård 7d43ca5125 Fix Qt build by simply moving the offending file to the native project. No idea why Qt include paths only work there. 2020-10-05 10:36:57 +02:00
Henrik Rydgård b236691548 Complete the eradication of D3DX9 compiler loader 2020-10-05 00:13:29 +02:00
Henrik Rydgård 0e3a84b4a8 Move most GPU things to Common.
It works after the move, on Windows and Android at least.

Deletes the D3DX9 shader compiler loader, which was not used.
2020-10-04 23:39:02 +02:00