Fixed VAOs Float types only returning GL_FLOAT in cases that they had to return GL_HALF_FLOAT

This commit is contained in:
FernandoS27 2018-10-22 09:27:00 -04:00
parent f034121620
commit e2416bbd1f

View File

@ -82,8 +82,20 @@ inline GLenum VertexType(Maxwell::VertexAttribute attrib) {
return {}; return {};
} }
case Maxwell::VertexAttribute::Type::Float: case Maxwell::VertexAttribute::Type::Float: {
return GL_FLOAT; switch (attrib.size) {
case Maxwell::VertexAttribute::Size::Size_16:
case Maxwell::VertexAttribute::Size::Size_16_16:
case Maxwell::VertexAttribute::Size::Size_16_16_16:
case Maxwell::VertexAttribute::Size::Size_16_16_16_16:
return GL_HALF_FLOAT;
case Maxwell::VertexAttribute::Size::Size_32:
case Maxwell::VertexAttribute::Size::Size_32_32:
case Maxwell::VertexAttribute::Size::Size_32_32_32:
case Maxwell::VertexAttribute::Size::Size_32_32_32_32:
return GL_FLOAT;
}
}
} }
LOG_CRITICAL(Render_OpenGL, "Unimplemented vertex type={}", attrib.TypeString()); LOG_CRITICAL(Render_OpenGL, "Unimplemented vertex type={}", attrib.TypeString());