Commit Graph

43 Commits

Author SHA1 Message Date
Henrik Rydgård
90a44579bf Implement color-to-depth for Vulkan, start implementing for D3D11 2022-08-01 11:30:36 +02:00
Henrik Rydgård
90460df9b5 HLSL depal simplification 2021-07-09 21:09:44 +02:00
Henrik Rydgård
4e8ffae024 Implement basic depth texturing for OpenGL, requires depth clamp for now.
Need to figure out what to do about other Z mappings.

Helps #6411 for OpenGL on desktop primarily, and certain other games affected by #13256
are likely working too like the fog in Harry Potter.
2021-07-09 21:09:44 +02:00
Unknown W. Brackets
3c09b5c010 GLES: Always use fragColor0 on GL 3.0+. 2021-04-10 16:26:39 -07:00
Henrik Rydgård
03e8eac6ef Merge the two ShaderLanguage enums. 2020-11-04 09:40:11 +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
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
e80a526015 D3D11: Implement depth texturing. Fixes, for D3D11, #6411. 2020-10-18 20:14:25 +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
Henrik Rydgård
eda4bb2341 Test Drive: Allow virtual framebuffer copies. This eliminates the hyper expensive readbacks.
Write some comments in Depal about how we could get rid of the banding.
2020-08-30 16:21:56 +02:00
Henrik Rydgård
924329321c Throw in a minor simplification in depal. 2020-08-27 23:02:17 +02:00
Henrik Rydgård
0aa2ceb372 Address feedback 2020-08-10 09:16:28 +02:00
Henrik Rydgård
ba0d04a142 Vulkan: Implement depth texturing through depal. 2020-08-09 20:31:04 +02:00
Henrik Rydgård
c5e0b799d9 Remove category from _assert_msg_ functions. We don't filter these by category anyway.
Fixes the inconsistency where we _assert_ didn't take a category but
_assert_msg_ did.
2020-07-19 20:33:25 +02:00
Unknown W. Brackets
3ba6c1e42b GLES: Use fragColor0 in GLSL 3.30 float path.
This should only happen when 32 bit ints are unsupported, which has been
reported for a few devices.
2019-05-27 00:36:48 -07:00
Unknown W. Brackets
e46701dee6 GLES: Specify glsl version precisely in depal.
Should prevent more of #11588 on vertex shaders, and may help Apple
devices some too.
2018-12-23 20:08:08 -08:00
Henrik Rydgård
c5c1c46f38 Attempt to fix glsl depal error reported in #11588 (ATI/AMD) 2018-11-25 11:33:02 +01:00
Unknown W. Brackets
0b245699bb GLES: Specify unsigned shift for Adreno bug.
Adreno 320 devices, and at least 1 Intel device, are complaining that
right shift can't be used within uint/int.

Possibly related to:
https://github.com/KhronosGroup/glslang/issues/1296
2018-06-30 09:50:02 -07:00
Unknown W. Brackets
80312582d1 GPU: Avoid a switch case warning. 2018-06-17 11:32:17 -07:00
weihuoya
e01e77e025 fx depal int precision for opengl es 2018-06-01 00:58:44 +08:00
Henrik Rydgård
011e57c0e7 Always specify GLSL version 450 when compiling Vulkan shaders.
Bit of a risky change so late in the game but it's wrong, it needs fixing.
See for example the comments to fb7a63bd11
2018-05-13 20:42:17 +02:00
Unknown W. Brackets
abbab23814 D3D11: Use a dedicated slot for the depal texture.
Otherwise it affects shader blending.
2018-05-06 08:58:54 -07:00
Henrik Rydgård
29c41c6a35 Implement shader depal for Vulkan. See #10908. Bilinear filter not yet implemented. 2018-04-13 14:19:01 +02:00
Henrik Rydgård
5d0bd85a70 Unify a little bit of depal code. 2017-11-05 10:40:21 +01:00
Henrik Rydgård
3f503ca297 Implement the rest of Vulkan framebuffer depal. Not yet working though. 2017-10-31 12:34:59 +01:00
Henrik Rydgard
0e74ba6dc0 Fix R/B swap in D3D11 depal 2017-04-04 11:35:30 +02:00
Henrik Rydgard
f5fa238e22 More minor changes to make GPU and native build on UWP later 2017-02-24 20:26:38 +01:00
Henrik Rydgard
0e8aeaea3a D3D11: Implement basic framebuffer readback.
Also make debug interfaces more consistent.
2017-02-18 00:07:49 +01:00
Henrik Rydgard
b7f58a6704 D3D11 depal: Directly index into the texture using Load() instead of messing with samplers. 2017-02-17 17:15:00 +01:00
Henrik Rydgard
373c6ba12f More D3D11 fixes, hopefully without breaking DX9 2017-02-13 02:07:27 +01:00
Henrik Rydgard
ba95e0f4d9 Initial stab at porting the DX9 backend to D3D11. Not working yet. 2017-02-09 13:28:40 +01:00
Henrik Rydgard
f1c96c056d Move all the GL/D3D9 FBO code into thin3d. 2017-02-06 11:40:16 +01:00
Henrik Rydgard
731af0d0b4 Add some infrastructure for 2D drawing, to be used by the Vulkan framebuffer manager 2016-03-31 00:49:10 +02:00
Henrik Rydgard
cfcfd406fc Start porting TextureCache. Lots of stubbing going on. 2016-03-20 19:30:11 +01:00
Henrik Rydgard
ab3468ea02 Move native/gfx_es2/gl_state.cpp/h into GPU/GLES/GLStateCache.cpp/h 2015-09-06 13:45:17 +02:00
Unknown W. Brackets
764539f814 Clean up GLES logic used in shader gen. 2015-09-05 16:44:17 -07:00
Unknown W. Brackets
2d0635c3e6 Cut out a bit more USING_GLES2. 2015-09-05 16:28:46 -07:00
Unknown W. Brackets
c8fc9b0bf3 Cleanup some incorrect handling of clut offset. 2015-04-26 00:31:00 -07:00
Unknown W. Brackets
5b61c03b7f Avoid accidental sign ext for > 24 bit clut shift. 2015-04-26 00:26:24 -07:00
Unknown W. Brackets
105087d367 dx9: Swap depal bgra in shader.
We don't swap palettes anymore, except in the shader.
2015-03-01 11:28:06 -08:00
Unknown W. Brackets
1dfecbf2b8 d3d: Actually upload the clut texture. 2015-03-01 11:27:28 -08:00
Henrik Rydgard
78190f3e8c DX9: Hook up the depalettize code. Doesn't work yet though. 2015-03-01 11:24:45 -08:00
Henrik Rydgard
0c9f541a43 Move depalettize-shader generator to Common 2015-03-01 11:15:27 -08:00