顶点属性位置始终为4分量,这是否意味着我可以将mat2用作顶点属性而不会有任何问题??(OpenGL) [英] "Vertex attribute locations are always 4-component", Does that mean that i can use mat2 as vertex attribute without any problems?? (OpenGL)

查看:0
本文介绍了顶点属性位置始终为4分量,这是否意味着我可以将mat2用作顶点属性而不会有任何问题??(OpenGL)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我知道顶点属性位置始终为4分量,但我不完全确定它是否也适用于mat2(和其他mat2类型)。

推荐答案

这取决于您所说的没有任何问题。

是,mat2是顶点属性的有效类型。但是,when used as attributes所有矩阵类型都被视为矩阵列的数组。处理数组时,每个数组元素都是单独的属性。

因此mat2算作两个属性,而不是一个属性(特别是每个属性的前两个组件)。如果这对您来说不是问题,那么您可以这样做。

如果要将mat2填充到一个属性中,则必须手动完成:

layout(location = X) in vec4 matrix_attrib;
...
void main()
{
  mat4 mAttrib(matrix_attrib.xy, matrix_attrib.zw);
}

这篇关于顶点属性位置始终为4分量,这是否意味着我可以将mat2用作顶点属性而不会有任何问题??(OpenGL)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆