144得票5回答
什么是顶点数组对象?

我今天刚开始学习OpenGL,参考了这个教程:http://openglbook.com/the-book/ 我已经学到第二章,绘制了一个三角形,但是我不理解VAOs(这个缩写是否正确?)。教程中有以下代码:glGenVertexArrays(1, &VaoId); glBindVer...

24得票5回答
VAO和元素数组缓冲区状态

最近我在写OpenGL 3.3的代码,使用了顶点数组对象(VAO),后来在英特尔显卡上测试时发现,令我失望的是,元素数组缓冲区绑定显然不是VAO状态的一部分,因为调用:glBindVertexArray(my_vao); glDrawElements(GL_TRIANGLE_STRIP, co...

18得票2回答
OpenGL顶点缓冲区混乱问题

有人可以解释一下VertexBuffer、VertexArray、VertexBufferObject和VertexArrayObject之间的区别吗?我甚至不确定这些是否都是指不同的东西,但我在OpenGL规范中看到了所有这些术语。 我知道一个VertexBuffer只包含顶点,一旦绑定,...

13得票1回答
OpenGL/JOGL: 在顶点数组中使用多个三角形扇形

我正在使用顶点数组制作一些相对简单的形状,并且取得了一些进展,但现在我想画2个(或更多)三角扇形对象。是否有办法只调用 gl.glDrawArrays(GL.GL_TRIANGLE_FAN,... 一次,还是我需要为每个扇形单独调用? 维基百科的Triangle strip文章描述了一个名为...

8得票2回答
在OpenGL中给一个立方体贴图的最佳方法

如何以最低的内存消耗和最快的速度为一个立方体上色?经过一段时间的研究,我找到了以下解决方案: 数据结构: GLfloat Cube::vertices[] = {-0.5f, 0.0f, 0.5f, 0.5f, 0.0f, 0.5f, 0.5f, 1.0f, 0.5f, -0....

7得票1回答
OpenGL顶点缓冲对象,我能否访问顶点数据以进行其他用途,例如碰撞检测?

我目前正在使用Superbible第五版附带的GLTools类。我正在查看GLTriangleBatch类,它具有以下代码: // Create the master vertex array object glGenVertexArrays(1, &vertexArrayBuffe...