dolphin/Source/Core/VideoBackends/D3D
Stenzek f74dbc794c EFB2RAM: Apply copy filter as a float coefficient after sampling
Using 8-bit integer math here lead to precision loss for depth copies,
which broke various effects in games, e.g. lens flare in MK:DD.

It's unlikely the console implements this as a floating-point multiply
(fixed-point perhaps), but since we have the float round trip in our
EFB2RAM shaders anyway, it's not going to make things any worse. If we
do rewrite our shaders to use integer math completely, then it might be
worth switching this conversion back to integers.

However, the range of the values (format) should be known, or we should
expand all values out to 24-bits first.
2018-05-22 12:24:08 +10:00
..
BoundingBox.cpp Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
BoundingBox.h Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
CMakeLists.txt Remove SOIL altogether from the project. 2018-05-20 13:44:42 +02:00
D3D.vcxproj VideoBackends: Add AbstractShader and AbstractPipeline classes 2018-02-22 22:02:34 +10:00
D3D.vcxproj.filters VideoBackends: Add AbstractShader and AbstractPipeline classes 2018-02-22 22:02:34 +10:00
D3DBase.cpp D3D: Support compiling compute shaders 2018-02-22 19:11:25 +10:00
D3DBase.h Reformat all the things! 2018-04-12 21:28:39 +02:00
D3DBlob.cpp Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
D3DBlob.h Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
D3DShader.cpp D3D: Support compiling compute shaders 2018-02-22 19:11:25 +10:00
D3DShader.h D3D: Support compiling compute shaders 2018-02-22 19:11:25 +10:00
D3DState.cpp Common: Move BitSet helper functions into the Common namespace 2018-04-23 00:13:55 -04:00
D3DState.h D3D: Make StateCache thread safe 2018-03-10 15:56:21 +10:00
D3DTexture.cpp D3DTexture: in-class initialize class members where applicable 2017-09-03 13:08:06 -04:00
D3DTexture.h D3DTexture: Remove unused bindflags D3DTexture2D member variable 2017-09-03 13:12:26 -04:00
D3DUtil.cpp D3D: Drop gamma parameter from util draw helper 2018-05-02 21:58:56 +10:00
D3DUtil.h D3D: Drop gamma parameter from util draw helper 2018-05-02 21:58:56 +10:00
DXPipeline.cpp Assert: Uppercase assertion macros 2018-03-14 22:03:12 -04:00
DXPipeline.h VideoBackends: Add AbstractShader and AbstractPipeline classes 2018-02-22 22:02:34 +10:00
DXShader.cpp Assert: Remove unused parameter from DEBUG_ASSERT 2018-03-16 13:01:11 -04:00
DXShader.h VideoBackends: Add AbstractShader and AbstractPipeline classes 2018-02-22 22:02:34 +10:00
DXTexture.cpp D3D: Drop gamma parameter from util draw helper 2018-05-02 21:58:56 +10:00
DXTexture.h VideoCommon: Add support for Abstract Framebuffers 2018-03-02 20:20:48 +10:00
FramebufferManager.cpp VideoBackends: Restore the framebuffer as part of the API state 2018-03-01 17:31:24 +10:00
FramebufferManager.h Remove old XFB logic 2017-11-17 22:11:29 -06:00
GeometryShaderCache.cpp D3D: Drop gamma parameter from util draw helper 2018-05-02 21:58:56 +10:00
GeometryShaderCache.h Move shader caches to VideoCommon 2018-03-10 15:56:30 +10:00
NativeVertexFormat.cpp Reformat all the things! 2018-04-12 21:28:39 +02:00
PSTextureEncoder.cpp EFB2RAM: Apply copy filter as a float coefficient after sampling 2018-05-22 12:24:08 +10:00
PSTextureEncoder.h Implement EFB copy filter and gamma in hardware backends 2018-04-29 19:05:20 +10:00
PerfQuery.cpp Improve PerfQuery accuracy 2016-07-04 18:54:49 +10:00
PerfQuery.h Fix D3D12 headers missing includes. 2016-06-24 11:14:10 +00:00
PixelShaderCache.cpp Move shader caches to VideoCommon 2018-03-10 15:56:30 +10:00
PixelShaderCache.h Move shader caches to VideoCommon 2018-03-10 15:56:30 +10:00
Render.cpp D3D: Drop gamma parameter from util draw helper 2018-05-02 21:58:56 +10:00
Render.h Implement EFB copy filter and gamma in hardware backends 2018-04-29 19:05:20 +10:00
TextureCache.cpp EFB2RAM: Apply copy filter as a float coefficient after sampling 2018-05-22 12:24:08 +10:00
TextureCache.h Implement EFB copy filter and gamma in hardware backends 2018-04-29 19:05:20 +10:00
VertexManager.cpp D3D: Fix broken bounding box 2018-03-17 00:20:43 +10:00
VertexManager.h Reformat all the things! 2018-04-12 21:28:39 +02:00
VertexShaderCache.cpp D3D: Drop gamma parameter from util draw helper 2018-05-02 21:58:56 +10:00
VertexShaderCache.h Move shader caches to VideoCommon 2018-03-10 15:56:30 +10:00
VideoBackend.h VideoBackend: Remove PeekMessages method 2018-01-27 13:53:55 +10:00
main.cpp OGL: Re-implement async shader compiling 2018-03-10 15:56:34 +10:00