Fab*_*cio 4 c c++ opengl algorithm mesh
我正在做一些OpenGL(2.1)测试,在尝试制作一个简单的立方体时,我想知道如何制作复杂的网格物体.对于我的立方体,我只是设置每个顶点GL_TRIANGLES.但我不知道如何在循环中做同样的事情.由于顶点的顺序,因为有很多重复的顶点!
GL_TRIANGLES
我真的必须通过设置3个顶点"一次"(两个三角形)来制作一个面孔?这似乎很慢.如何优化?
制作/加载网格的技巧是什么?
哦,我会很感激一些例子.
小智 5
Jason Gregory撰写的"游戏引擎架构"一书回答了你的问题.这是它说的:
定义网格的最简单方法是以三个为一组复制vectices [...]此数据结构称为三角形列表.[...]您可能已经注意到许多顶点是重复的,通常是多次[...]因此,大多数引擎都使用了更高效的数据结构,称为索引三角形列表
索引三角形列表背后的想法是将顶点存储在单独的顶点缓冲区中,并将索引存储在单独的索引缓冲区中.
同章还建议使用三角形条(GL_TRIANGLE_STRIP)和粉丝(GL_TRIANGLE_FAN)
GL_TRIANGLE_STRIP
GL_TRIANGLE_FAN
有关顶点缓冲区对象索引的教程可以在这里找到
归档时间:
13 年 前
查看次数:
6754 次
最近记录: