我一直在使用内置顶点索引的 gl_VertexID 遇到问题,使用 传递in
给 Three.js
我不确定为什么,因为文档说它适用于所有版本的 OpenGL
http://www.opengl.org/sdk/docs/manglsl/xhtml/gl_VertexID.xml
我正在使用这个顶点着色器:
uniform int freqData[64];
uniform int fftSize;
in int gl_VertexID;
void main() {
vec3 norm = normalize(position);
int modFFT = mod(gl_VertexID, fftSize);
vec3 newPosition = norm * float(freqData[modFFT]);
gl_Position = projectionMatrix * modelViewMatrix * vec4( newPosition, 1.0 );
}
我收到的错误是:
ERROR: 0:68: 'in' : syntax error
声明似乎有问题in
,并且没有抱怨其他任何事情(错误控制台能够检测到多个编译错误)。
非常感谢您的帮助,我正在使用昨天的 Three.js 构建。