forked from ShuriZma/suyu
maxwell_to_gl: Add 32 bit component sizes to (un)signed scaled formats
Add 32 bit component sizes to (un)signed scaled formats and group (un)signed normalized, scaled, and integer formats together.
This commit is contained in:
parent
0ea4a8bcc4
commit
78d80d99a0
|
@ -26,8 +26,9 @@ using Maxwell = Tegra::Engines::Maxwell3D::Regs;
|
||||||
|
|
||||||
inline GLenum VertexType(Maxwell::VertexAttribute attrib) {
|
inline GLenum VertexType(Maxwell::VertexAttribute attrib) {
|
||||||
switch (attrib.type) {
|
switch (attrib.type) {
|
||||||
case Maxwell::VertexAttribute::Type::UnsignedInt:
|
|
||||||
case Maxwell::VertexAttribute::Type::UnsignedNorm:
|
case Maxwell::VertexAttribute::Type::UnsignedNorm:
|
||||||
|
case Maxwell::VertexAttribute::Type::UnsignedScaled:
|
||||||
|
case Maxwell::VertexAttribute::Type::UnsignedInt:
|
||||||
switch (attrib.size) {
|
switch (attrib.size) {
|
||||||
case Maxwell::VertexAttribute::Size::Size_8:
|
case Maxwell::VertexAttribute::Size::Size_8:
|
||||||
case Maxwell::VertexAttribute::Size::Size_8_8:
|
case Maxwell::VertexAttribute::Size::Size_8_8:
|
||||||
|
@ -48,8 +49,9 @@ inline GLenum VertexType(Maxwell::VertexAttribute attrib) {
|
||||||
return GL_UNSIGNED_INT_2_10_10_10_REV;
|
return GL_UNSIGNED_INT_2_10_10_10_REV;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case Maxwell::VertexAttribute::Type::SignedInt:
|
|
||||||
case Maxwell::VertexAttribute::Type::SignedNorm:
|
case Maxwell::VertexAttribute::Type::SignedNorm:
|
||||||
|
case Maxwell::VertexAttribute::Type::SignedScaled:
|
||||||
|
case Maxwell::VertexAttribute::Type::SignedInt:
|
||||||
switch (attrib.size) {
|
switch (attrib.size) {
|
||||||
case Maxwell::VertexAttribute::Size::Size_8:
|
case Maxwell::VertexAttribute::Size::Size_8:
|
||||||
case Maxwell::VertexAttribute::Size::Size_8_8:
|
case Maxwell::VertexAttribute::Size::Size_8_8:
|
||||||
|
@ -84,34 +86,6 @@ inline GLenum VertexType(Maxwell::VertexAttribute attrib) {
|
||||||
return GL_FLOAT;
|
return GL_FLOAT;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case Maxwell::VertexAttribute::Type::UnsignedScaled:
|
|
||||||
switch (attrib.size) {
|
|
||||||
case Maxwell::VertexAttribute::Size::Size_8:
|
|
||||||
case Maxwell::VertexAttribute::Size::Size_8_8:
|
|
||||||
case Maxwell::VertexAttribute::Size::Size_8_8_8:
|
|
||||||
case Maxwell::VertexAttribute::Size::Size_8_8_8_8:
|
|
||||||
return GL_UNSIGNED_BYTE;
|
|
||||||
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_UNSIGNED_SHORT;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case Maxwell::VertexAttribute::Type::SignedScaled:
|
|
||||||
switch (attrib.size) {
|
|
||||||
case Maxwell::VertexAttribute::Size::Size_8:
|
|
||||||
case Maxwell::VertexAttribute::Size::Size_8_8:
|
|
||||||
case Maxwell::VertexAttribute::Size::Size_8_8_8:
|
|
||||||
case Maxwell::VertexAttribute::Size::Size_8_8_8_8:
|
|
||||||
return GL_BYTE;
|
|
||||||
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_SHORT;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
UNIMPLEMENTED_MSG("Unimplemented vertex type={} and size={}", attrib.TypeString(),
|
UNIMPLEMENTED_MSG("Unimplemented vertex type={} and size={}", attrib.TypeString(),
|
||||||
attrib.SizeString());
|
attrib.SizeString());
|
||||||
|
|
Loading…
Reference in New Issue