[英]Webgl vertex position Built in VertexShader
我只用矩阵来画正方形! 在每次渲染中只更新矩阵。 如何从我的代码中删除顶点位置
像这样锁定https://webgl2fundamentals.org/webgl/lessons/webgl-drawing-without-data.html
#version 300 es
in vec4 a_position;
in vec2 a_texcoord;
uniform mat4 u_matrix;
out vec2 v_texcoord;
void main()
ngl_Position = u_matrix * a_position;
v_texcoord = a_texcoord;
}
并删除这个
gl.bufferData(gl.ARRAY_BUFFER, new Float32Array([
0, 0, 0,
0, 1, 0,
1, 0, 0,
0, 1, 0,
1, 1, 0,
1, 0, 0]), gl.STATIC_DRAW);
抱歉使用谷歌翻译
这是您的方形顶点着色器。 您不需要使用矩阵。
#version 300 es
void main() {
float xs[6] = float[](0.0, 0.0, 1.0, 0.0, 1.0, 1.0);
float ys[6] = float[](0.0, 1.0, 0.0, 1.0, 1.0, 0.0);
float x = xs[gl_VertexID];
float y = ys[gl_VertexID];
gl_Position = vec4(x, y, 0, 1);
}
并渲染你只需这样做。 你不需要做任何 bufferData 或任何制服。
gl.drawArrays(gl.TRIANGLES, 0, 6);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.