我对 OpenGL ES 很陌生,我正在尝试使用一些着色器。我的问题是,当我初始化矩阵中的一些值时,但不是全部,默认值是多少?我以为它会为零,但是我在片段着色器中使用了以下代码:
highp vec4 c = texture2D(inputImageTexture, textureCoordinate) ;
highp mat4 m;
m[0] = vec4(1.0);
m[1] = vec4(1.0);
m[2] = vec4(1.0);
c = m * c;
gl_FragColor = c;
显然,数组的最后一列还没有初始化。只是为了确保 m 的最后一列中的所有值都为零,我添加了该行m[3] = vec4(0.0);
并得到了不同的结果。我尝试将第四列设置为255.0
and 1.0
,但每次我得到不同的结果时,我没有初始化该列。有谁知道默认值是什么?