diff options
| author | Mat M <mathew1800@gmail.com> | 2020-04-15 11:54:50 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-04-15 11:54:50 -0400 |
| commit | ee439fb0fc0a8a8f5cf7c2c992d0feeb6593535b (patch) | |
| tree | f0b9e67be77569e7debd6eaeca4f66474fe6bbe9 /src | |
| parent | 077ffb29fdcca8b0015914812e2463b56cf08c75 (diff) | |
| parent | 501c92a17f5e87abaa096531be56f6b7c985e8a1 (diff) | |
Merge pull request #3662 from ReinUsesLisp/constant-attrs
gl_rasterizer: Implement constant vertex attributes
Diffstat (limited to 'src')
| -rw-r--r-- | src/video_core/engines/maxwell_3d.h | 4 | ||||
| -rw-r--r-- | src/video_core/renderer_opengl/gl_rasterizer.cpp | 4 |
2 files changed, 6 insertions, 2 deletions
diff --git a/src/video_core/engines/maxwell_3d.h b/src/video_core/engines/maxwell_3d.h index 2977a7d81c..5cf6a4cc32 100644 --- a/src/video_core/engines/maxwell_3d.h +++ b/src/video_core/engines/maxwell_3d.h @@ -303,6 +303,10 @@ public: return (type == Type::SignedNorm) || (type == Type::UnsignedNorm); } + bool IsConstant() const { + return constant; + } + bool IsValid() const { return size != Size::Invalid; } diff --git a/src/video_core/renderer_opengl/gl_rasterizer.cpp b/src/video_core/renderer_opengl/gl_rasterizer.cpp index f31d960c78..f4598fbf77 100644 --- a/src/video_core/renderer_opengl/gl_rasterizer.cpp +++ b/src/video_core/renderer_opengl/gl_rasterizer.cpp @@ -140,8 +140,8 @@ void RasterizerOpenGL::SetupVertexFormat() { const auto attrib = gpu.regs.vertex_attrib_format[index]; const auto gl_index = static_cast<GLuint>(index); - // Ignore invalid attributes. - if (!attrib.IsValid()) { + // Disable constant attributes. + if (attrib.IsConstant()) { glDisableVertexAttribArray(gl_index); continue; } |
