aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorriperiperi <rhy3756547@hotmail.com>2021-08-20 22:09:30 +0100
committerGitHub <noreply@github.com>2021-08-20 18:09:30 -0300
commit6c76bc3bc0ecd1d3a86cf4e8c396c71370274ba1 (patch)
treeed0a0acf639a5ad222c1edcb68e249e81bfd64cc
parentbdc1f91a5b459a25cb74de9895d0136cf29d220d (diff)
Change disabled vertex attribute value to (0, 0, 0, 1) (#2573)
This seems to be the default value when the vertex attribute is disabled, or components aren't defined. This fixes a regression from #2307 in SMO where a plant in the Wooded Kingdom would draw slightly differently in the depth prepass, leading to depth test failing later on. GDK has stated that the specific case in Gundam only expects x and y to be 0, and Vulkan's undefined value for z does appear to be 0 when a vertex attribute type does not have that component, hence the value (0, 0, 0, 1). This worked in Vulkan despite also providing an all 0s attribute due to the vertex attribute binding being R32Float, so the other values were undefined. It should be changed there separately.
-rw-r--r--Ryujinx.Graphics.OpenGL/VertexArray.cs2
1 files changed, 1 insertions, 1 deletions
diff --git a/Ryujinx.Graphics.OpenGL/VertexArray.cs b/Ryujinx.Graphics.OpenGL/VertexArray.cs
index b31bf723..f2fcba1f 100644
--- a/Ryujinx.Graphics.OpenGL/VertexArray.cs
+++ b/Ryujinx.Graphics.OpenGL/VertexArray.cs
@@ -176,7 +176,7 @@ namespace Ryujinx.Graphics.OpenGL
{
_vertexAttribsInUse &= ~mask;
GL.DisableVertexAttribArray(index);
- GL.VertexAttrib4(index, 0f, 0f, 0f, 0f);
+ GL.VertexAttrib4(index, 0f, 0f, 0f, 1f);
}
}