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ård
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ård
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