yuzu-android/src/video_core/shader
ReinUsesLisp 2339fe199f shader_decompiler: Remove FragCoord.w hack and change IPA implementation
Credits go to gdkchan and Ryujinx. The pull request used for this can
be found here: https://github.com/Ryujinx/Ryujinx/pull/1082

yuzu was already using the header for interpolation, but it was missing
the FragCoord.w multiplication described in the linked pull request.
This commit finally removes the FragCoord.w == 1.0f hack from the shader
decompiler.

While we are at it, this commit renames some enumerations to match
Nvidia's documentation (linked below) and fixes component declaration
order in the shader program header (z and w were swapped).

https://github.com/NVIDIA/open-gpu-doc/blob/master/Shader-Program-Header/Shader-Program-Header.html
2020-04-01 21:48:55 -03:00
..
decode shader_decompiler: Remove FragCoord.w hack and change IPA implementation 2020-04-01 21:48:55 -03:00
ast.cpp Shader_IR: Implement Fast BRX and allow multi-branches in the CFG. 2019-10-25 09:01:31 -04:00
ast.h shader: Remove curly braces initializers on shared pointers 2020-02-01 22:52:10 -03:00
compiler_settings.cpp Shader_Ir: Refactor Decompilation process and allow multiple decompilation modes. 2019-10-04 18:52:50 -04:00
compiler_settings.h Shader_IR: allow else derivation to be optional. 2019-10-04 18:52:52 -04:00
control_flow.cpp video_core: Rename "const buffer locker" to "registry" 2020-03-09 18:40:06 -03:00
control_flow.h video_core: Rename "const buffer locker" to "registry" 2020-03-09 18:40:06 -03:00
decode.cpp video_core: Rename "const buffer locker" to "registry" 2020-03-09 18:40:06 -03:00
expr.cpp video_core/expr: Supply operator!= along with operator== 2019-10-05 09:14:26 -04:00
expr.h Shader_IR: Address Feedback. 2019-10-26 15:38:30 -04:00
node.h shader: node - update correct comment 2020-03-30 17:44:44 +07:00
node_helper.cpp shader_decode: ATOM/ATOMS: add function to avoid code repetition 2020-03-30 18:47:50 +07:00
node_helper.h Shader_IR: Implement initial code for tracking indexed samplers. 2020-01-24 16:43:30 -04:00
registry.cpp engines/maxwell_3d: Add TFB registers and store them in shader registry 2020-03-09 18:40:53 -03:00
registry.h engines/maxwell_3d: Add TFB registers and store them in shader registry 2020-03-09 18:40:53 -03:00
shader_ir.cpp shader/shader_ir: Track usage in input attribute and of legacy varyings 2020-03-15 21:01:52 -03:00
shader_ir.h shader/shader_ir: Track usage in input attribute and of legacy varyings 2020-03-15 21:01:52 -03:00
track.cpp shader/registry: Store graphics and compute metadata 2020-03-09 18:40:07 -03:00
transform_feedback.cpp shader/transform_feedback: Expose buffer stride 2020-03-13 18:33:05 -03:00
transform_feedback.h shader/transform_feedback: Expose buffer stride 2020-03-13 18:33:05 -03:00