我想要做的是用OpenGL绘制(大)地形。所以我有一组顶点,可以说我存储在VRAM中的顶点缓冲区对象中的256 x 256。我正确地对它们进行三角化,所以我已经有了一个用于脸部的索引缓冲区。纹理顶点缓冲区对象
// vertexes
glBindBufferARB(GL_ARRAY_BUFFER_ARB, vertexBufferId);
glVertexPointer(3, GL_FLOAT, 0, 0);
// textures
glBindBufferARB(GL_ARRAY_BUFFER_ARB, texCoordBufferId);
glTexCoordPointer(2, GL_FLOAT, 0, 0);
// indexes
glBindBufferARB(GL_ELEMENT_ARRAY_BUFFER_ARB, indexBufferId);
// draw it
glDrawRangeElements(GL11.TRIANGLES, 0, size - 1, size, GL_UNSIGNED_INT, 0);
我也加载了一个正方形纹理,必须应用到每个三角形。所以我遇到了纹理坐标的问题:
每个顶点都包含在4个三角形中,这意味着它需要4个纹理坐标。但是glDrawRangeElements()需要与顶点一样多的纹理坐标。
因此,我不认为如何与维也纳各组织合作。也许有更好的理念来解决我的问题,或者我只是缺乏一个好主意。
在此先感谢。
谢谢,那是我错过了... – 2008-12-19 10:27:50