是否可以访问 glsl mat4 类型矩阵的各个元素?如何?
问问题
58037 次
1 回答
75
GLSL 参考手册的第 5.6 节说您可以通过以下方式mat4
使用样式语法访问数组元素:operator[][]
mat4 m;
m[1] = vec4(2.0); // sets the second column to all 2.0
m[0][0] = 1.0; // sets the upper left element to 1.0
m[2][3] = 2.0; // sets the 4th element of the third column to 2.0
请记住,OpenGL 默认使用列主矩阵,这意味着访问是格式mat[col][row]
。在示例中,m[2][3]
将第 3 列(索引 2)的第 4 行(索引 3)设置为 2.0。在示例m[1]=vec4(2.0)
中,它一次设置一整列(因为m[1]
指的是第 2 列,当仅使用 ONE 索引时,这意味着 COLUMN.m[1]
指的是 SECOND COLUMN VECTOR)。
于 2012-11-29T22:11:20.323 回答