打完电话后glVertexAttribPointer(GLuint index, ...)顶点属性默认情况下禁用的文档说
默认情况下,禁用所有客户端功能,包括所有通用顶点属性数组.
为什么我们必须使用额外功能启用它?有人可以命名一个案例,这有用吗?
在研究时我学到了以下内容:
通过layout(location = x)在GLSL中使用限定符,glBindAttribLocation我们可以显式设置位置,而不是让OpenGL生成它.但这不是我的问题.
glEnableVertexAttribArray不能用于绘制具有多个着色器的一个VAO.当使用程序对象查询属性位置时,可以假设位置是着色器特定的; 然后我们可以预料,我们可以在运行正确的着色器之前启用正确的属性位置.但是,我注意到,在测试时,一个位置值可以在不同的着色器中出现多次; 此外,输出看起来不对.如果您希望查看代码,请询问.
属性位置存储在VAO中.