Ryujinx/Ryujinx.Graphics.Gpu/Shader
riperiperi f92650fcff
SPIR-V: Initialize undefined variables with 0 (#3526)
* SPIR-V: Initialize undefined variables with a value

Changes undefined values on spir-v shaders (caused by phi nodes) to be initialized instead of truly undefined.

Fixes an issue with NVIDIA gpus seemingly not liking when a variable is _potentially_ undefined. Not sure about the details at the moment.

Fixes:
- Tilt shift blur effect in Link's Awakening (bottom of the screen)
- Potentially block flickering on newer NVIDIA gpus in Splatoon 2? Needs testing.

Testing is welcome.

* Update Ryujinx.Graphics.Shader/CodeGen/Spirv/CodeGenContext.cs

Co-authored-by: gdkchan <gab.dark.100@gmail.com>

Co-authored-by: gdkchan <gab.dark.100@gmail.com>
2022-08-02 08:11:10 +02:00
..
DiskCache SPIR-V: Initialize undefined variables with 0 (#3526) 2022-08-02 08:11:10 +02:00
HashTable New shader cache implementation (#3194) 2022-04-10 10:49:44 -03:00
CachedShaderProgram.cs Optimize Texture Binding and Shader Specialization Checks (#3399) 2022-06-17 13:09:14 -03:00
CachedShaderStage.cs New shader cache implementation (#3194) 2022-04-10 10:49:44 -03:00
ComputeShaderCacheHashTable.cs New shader cache implementation (#3194) 2022-04-10 10:49:44 -03:00
GpuAccessor.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
GpuAccessorBase.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
GpuAccessorState.cs New shader cache implementation (#3194) 2022-04-10 10:49:44 -03:00
GpuChannelComputeState.cs New shader cache implementation (#3194) 2022-04-10 10:49:44 -03:00
GpuChannelGraphicsState.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
GpuChannelPoolState.cs New shader cache implementation (#3194) 2022-04-10 10:49:44 -03:00
ResourceCounts.cs New shader cache implementation (#3194) 2022-04-10 10:49:44 -03:00
ShaderAddresses.cs New shader cache implementation (#3194) 2022-04-10 10:49:44 -03:00
ShaderCache.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
ShaderCacheHashTable.cs Implement Viewport Transform Disable (#3328) 2022-05-12 10:47:13 -03:00
ShaderCacheState.cs Fix inconsistencies in progress reporting (#2129) 2021-03-22 19:40:07 +01:00
ShaderCodeAccessor.cs New shader cache implementation (#3194) 2022-04-10 10:49:44 -03:00
ShaderDumper.cs Make sure attributes used on subsequent shader stages are initialized (#2538) 2021-08-11 22:27:00 +02:00
ShaderDumpPaths.cs Make sure attributes used on subsequent shader stages are initialized (#2538) 2021-08-11 22:27:00 +02:00
ShaderSpecializationList.cs Optimize Texture Binding and Shader Specialization Checks (#3399) 2022-06-17 13:09:14 -03:00
ShaderSpecializationState.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
TransformFeedbackDescriptor.cs New shader cache implementation (#3194) 2022-04-10 10:49:44 -03:00