Merge pull request #54768 from The-O-King/vertex_attrib_fix
This commit is contained in:
commit
2f942ab846
2 changed files with 4 additions and 2 deletions
|
@ -2309,7 +2309,7 @@ void RasterizerStorageGLES2::mesh_add_surface(RID p_mesh, uint32_t p_format, VS:
|
||||||
// UNLESS tangent exists and is also compressed
|
// UNLESS tangent exists and is also compressed
|
||||||
// then it will be oct16 encoded along with tangent
|
// then it will be oct16 encoded along with tangent
|
||||||
attribs[i].normalized = GL_TRUE;
|
attribs[i].normalized = GL_TRUE;
|
||||||
attribs[i].size = 4;
|
attribs[i].size = 2;
|
||||||
attribs[i].type = GL_SHORT;
|
attribs[i].type = GL_SHORT;
|
||||||
attributes_stride += 4;
|
attributes_stride += 4;
|
||||||
} else {
|
} else {
|
||||||
|
@ -2330,6 +2330,7 @@ void RasterizerStorageGLES2::mesh_add_surface(RID p_mesh, uint32_t p_format, VS:
|
||||||
case VS::ARRAY_TANGENT: {
|
case VS::ARRAY_TANGENT: {
|
||||||
if (p_format & VS::ARRAY_FLAG_USE_OCTAHEDRAL_COMPRESSION) {
|
if (p_format & VS::ARRAY_FLAG_USE_OCTAHEDRAL_COMPRESSION) {
|
||||||
attribs[i].enabled = false;
|
attribs[i].enabled = false;
|
||||||
|
attribs[VS::ARRAY_NORMAL].size = 4;
|
||||||
if (p_format & VS::ARRAY_COMPRESS_TANGENT && p_format & VS::ARRAY_COMPRESS_NORMAL) {
|
if (p_format & VS::ARRAY_COMPRESS_TANGENT && p_format & VS::ARRAY_COMPRESS_NORMAL) {
|
||||||
// normal and tangent will each be oct16 (2 bytes each)
|
// normal and tangent will each be oct16 (2 bytes each)
|
||||||
// pack into single vec4<GL_BYTE> for memory bandwidth
|
// pack into single vec4<GL_BYTE> for memory bandwidth
|
||||||
|
|
|
@ -3404,7 +3404,7 @@ void RasterizerStorageGLES3::mesh_add_surface(RID p_mesh, uint32_t p_format, VS:
|
||||||
// UNLESS tangent exists and is also compressed
|
// UNLESS tangent exists and is also compressed
|
||||||
// then it will be oct16 encoded along with tangent
|
// then it will be oct16 encoded along with tangent
|
||||||
attribs[i].normalized = GL_TRUE;
|
attribs[i].normalized = GL_TRUE;
|
||||||
attribs[i].size = 4;
|
attribs[i].size = 2;
|
||||||
attribs[i].type = GL_SHORT;
|
attribs[i].type = GL_SHORT;
|
||||||
attributes_stride += 4;
|
attributes_stride += 4;
|
||||||
} else {
|
} else {
|
||||||
|
@ -3425,6 +3425,7 @@ void RasterizerStorageGLES3::mesh_add_surface(RID p_mesh, uint32_t p_format, VS:
|
||||||
case VS::ARRAY_TANGENT: {
|
case VS::ARRAY_TANGENT: {
|
||||||
if (p_format & VS::ARRAY_FLAG_USE_OCTAHEDRAL_COMPRESSION) {
|
if (p_format & VS::ARRAY_FLAG_USE_OCTAHEDRAL_COMPRESSION) {
|
||||||
attribs[i].enabled = false;
|
attribs[i].enabled = false;
|
||||||
|
attribs[VS::ARRAY_NORMAL].size = 4;
|
||||||
if (p_format & VS::ARRAY_COMPRESS_TANGENT && p_format & VS::ARRAY_COMPRESS_NORMAL) {
|
if (p_format & VS::ARRAY_COMPRESS_TANGENT && p_format & VS::ARRAY_COMPRESS_NORMAL) {
|
||||||
// normal and tangent will each be oct16 (2 bytes each)
|
// normal and tangent will each be oct16 (2 bytes each)
|
||||||
// pack into single vec4<GL_BYTE> for memory bandwidth
|
// pack into single vec4<GL_BYTE> for memory bandwidth
|
||||||
|
|
Loading…
Reference in a new issue