summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2018-03-25 06:09:53 +0200
committerbunnei <bunneidev@gmail.com>2018-03-27 03:17:02 +0200
commita6cab532f89ada46988e391708eb06b3be5ade19 (patch)
treec9b826124856fe0816e8ec065612988d2f03cd46
parentmemory: Fix cast for ReadBlock/WriteBlock/ZeroBlock/CopyBlock. (diff)
downloadyuzu-a6cab532f89ada46988e391708eb06b3be5ade19.tar
yuzu-a6cab532f89ada46988e391708eb06b3be5ade19.tar.gz
yuzu-a6cab532f89ada46988e391708eb06b3be5ade19.tar.bz2
yuzu-a6cab532f89ada46988e391708eb06b3be5ade19.tar.lz
yuzu-a6cab532f89ada46988e391708eb06b3be5ade19.tar.xz
yuzu-a6cab532f89ada46988e391708eb06b3be5ade19.tar.zst
yuzu-a6cab532f89ada46988e391708eb06b3be5ade19.zip
-rw-r--r--src/video_core/engines/maxwell_3d.h4
-rw-r--r--src/video_core/renderer_opengl/gl_rasterizer.cpp2
2 files changed, 5 insertions, 1 deletions
diff --git a/src/video_core/engines/maxwell_3d.h b/src/video_core/engines/maxwell_3d.h
index 9d63fa803..0e1ae5912 100644
--- a/src/video_core/engines/maxwell_3d.h
+++ b/src/video_core/engines/maxwell_3d.h
@@ -222,6 +222,10 @@ public:
UNREACHABLE();
return {};
}
+
+ bool IsNormalized() const {
+ return (type == Type::SignedNorm) || (type == Type::UnsignedNorm);
+ }
};
enum class PrimitiveTopology : u32 {
diff --git a/src/video_core/renderer_opengl/gl_rasterizer.cpp b/src/video_core/renderer_opengl/gl_rasterizer.cpp
index dfc4beb9a..7950bac9e 100644
--- a/src/video_core/renderer_opengl/gl_rasterizer.cpp
+++ b/src/video_core/renderer_opengl/gl_rasterizer.cpp
@@ -178,7 +178,7 @@ void RasterizerOpenGL::SetupVertexArray(u8* array_ptr, GLintptr buffer_offset) {
for (unsigned index = 0; index < 16; ++index) {
auto& attrib = regs.vertex_attrib_format[index];
glVertexAttribPointer(index, attrib.ComponentCount(), MaxwellToGL::VertexType(attrib),
- GL_FALSE, vertex_array.stride,
+ attrib.IsNormalized() ? GL_TRUE : GL_FALSE, vertex_array.stride,
reinterpret_cast<GLvoid*>(buffer_offset + attrib.offset));
glEnableVertexAttribArray(index);
hw_vao_enabled_attributes[index] = true;