diff options
author | gdkchan <gab.dark.100@gmail.com> | 2023-04-24 03:34:38 -0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-04-24 08:34:38 +0200 |
commit | 4dd77316f722f6b429063784b56ddced7883ea1d (patch) | |
tree | c2dcb3142e8fd35367d313318b2467e46b284b5c /Ryujinx.Graphics.Shader/Translation/ShaderConfig.cs | |
parent | 3f98369a17a313c32e1a00cb9b81c6695ac76f27 (diff) |
Use vector transform feedback outputs with fragment shaders (#4708)1.1.730
* Use vector transform feedback outputs with fragment shaders
* Shader cache version bump
* Fix missing outputs when vector transform feedback outputs are used
Diffstat (limited to 'Ryujinx.Graphics.Shader/Translation/ShaderConfig.cs')
-rw-r--r-- | Ryujinx.Graphics.Shader/Translation/ShaderConfig.cs | 11 |
1 files changed, 1 insertions, 10 deletions
diff --git a/Ryujinx.Graphics.Shader/Translation/ShaderConfig.cs b/Ryujinx.Graphics.Shader/Translation/ShaderConfig.cs index 2caa8f63..15eb7ed1 100644 --- a/Ryujinx.Graphics.Shader/Translation/ShaderConfig.cs +++ b/Ryujinx.Graphics.Shader/Translation/ShaderConfig.cs @@ -17,7 +17,6 @@ namespace Ryujinx.Graphics.Shader.Translation public ShaderStage Stage { get; } public bool GpPassthrough { get; } - public bool LastInPipeline { get; private set; } public bool LastInVertexPipeline { get; private set; } public bool HasLayerInputAttribute { get; private set; } @@ -145,7 +144,6 @@ namespace Ryujinx.Graphics.Shader.Translation OmapSampleMask = header.OmapSampleMask; OmapDepth = header.OmapDepth; TransformFeedbackEnabled = gpuAccessor.QueryTransformFeedbackEnabled(); - LastInPipeline = true; LastInVertexPipeline = header.Stage < ShaderStage.Fragment; } @@ -253,13 +251,8 @@ namespace Ryujinx.Graphics.Shader.Translation GpLayerInputAttribute = attr; } - public void SetLastInVertexPipeline(bool hasFragment) + public void SetLastInVertexPipeline() { - if (!hasFragment) - { - LastInPipeline = true; - } - LastInVertexPipeline = true; } @@ -331,8 +324,6 @@ namespace Ryujinx.Graphics.Shader.Translation config._perPatchAttributeLocations = locationsMap; } - LastInPipeline = false; - // We don't consider geometry shaders using the geometry shader passthrough feature // as being the last because when this feature is used, it can't actually modify any of the outputs, // so the stage that comes before it is the last one that can do modifications. |