aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Graphics.Gpu/Shader
diff options
context:
space:
mode:
authorgdkchan <gab.dark.100@gmail.com>2020-04-01 22:24:55 -0300
committerGitHub <noreply@github.com>2020-04-02 12:24:55 +1100
commit5b5239ab5b452f991d9fc4f8ad1f9a2880b8bad1 (patch)
tree61337203f57f2e17eb0e8d3da382cdfa5facac8a /Ryujinx.Graphics.Gpu/Shader
parent45c7424f7c151f72a915b8dbc8d4ddb5b287ea8b (diff)
Remove output interpolation qualifier (#1070)
Diffstat (limited to 'Ryujinx.Graphics.Gpu/Shader')
-rw-r--r--Ryujinx.Graphics.Gpu/Shader/ShaderCache.cs41
1 files changed, 0 insertions, 41 deletions
diff --git a/Ryujinx.Graphics.Gpu/Shader/ShaderCache.cs b/Ryujinx.Graphics.Gpu/Shader/ShaderCache.cs
index fc4bf778..7ad00f32 100644
--- a/Ryujinx.Graphics.Gpu/Shader/ShaderCache.cs
+++ b/Ryujinx.Graphics.Gpu/Shader/ShaderCache.cs
@@ -145,8 +145,6 @@ namespace Ryujinx.Graphics.Gpu.Shader
gpShaders.Shaders[3] = TranslateGraphicsShader(state, ShaderStage.Geometry, addresses.Geometry);
gpShaders.Shaders[4] = TranslateGraphicsShader(state, ShaderStage.Fragment, addresses.Fragment);
- BackpropQualifiers(gpShaders);
-
List<IShader> hostShaders = new List<IShader>();
for (int stage = 0; stage < gpShaders.Shaders.Length; stage++)
@@ -376,45 +374,6 @@ namespace Ryujinx.Graphics.Gpu.Shader
}
/// <summary>
- /// Performs backwards propagation of interpolation qualifiers or later shader stages input,
- /// to ealier shader stages output.
- /// This is required by older versions of OpenGL (pre-4.3).
- /// </summary>
- /// <param name="program">Graphics shader cached code</param>
- private void BackpropQualifiers(GraphicsShader program)
- {
- ShaderProgram fragmentShader = program.Shaders[4]?.Program;
-
- bool isFirst = true;
-
- for (int stage = 3; stage >= 0; stage--)
- {
- if (program.Shaders[stage] == null)
- {
- continue;
- }
-
- // We need to iterate backwards, since we do name replacement,
- // and it would otherwise replace a subset of the longer names.
- for (int attr = 31; attr >= 0; attr--)
- {
- string iq = fragmentShader?.Info.InterpolationQualifiers[attr].ToGlslQualifier() ?? string.Empty;
-
- if (isFirst && !string.IsNullOrEmpty(iq))
- {
- program.Shaders[stage].Program.Replace($"{DefineNames.OutQualifierPrefixName}{attr}", iq);
- }
- else
- {
- program.Shaders[stage].Program.Replace($"{DefineNames.OutQualifierPrefixName}{attr} ", string.Empty);
- }
- }
-
- isFirst = false;
- }
- }
-
- /// <summary>
/// Gets the primitive topology for the current draw.
/// This is required by geometry shaders.
/// </summary>