我想在OpenGL中实现移动场景。
场景描述:terrain是静态的,但所有其他对象都朝着-x轴移动。
地形是xz平面中的平面。
我有一个网格很多次会出现在几个地方的地形上 但是所有这些都将以特定的速度向-x轴移动。
我已经想到了这些可能的实现:
第一种方式的问题是,我将创建具有x%可能性的网格,因此这不需要知道将需要的网格数量。那我怎么才能展示它们呢?
例如,如果我知道我会创建3个网格,我会这样做:
glPushMatrix();
glTranslatef(mesh1 position + speed)
mesh.dray();
glPopMatrix();
glPushMatrix();
glTranslatef(mesh2 position + speed)
mesh.dray();
glPopMatrix();
glPushMatrix();
glTranslatef(mesh3 position + speed)
mesh.dray();
glPopMatrix();
现在我们需要创建网格,只要动画继续,我将如何实现?其次,离开视口的网格怎么样?他们继续存在吗?
答案 0 :(得分:0)
如果您打算在纯OpenGL中对此进行编码,则此答案毫无用处。
但是,如果您愿意尝试第三方图书馆,请尝试www.ogre3d.org - 我会发现这在ogre中非常容易。
事实上,“中间教程一”的挑战,如果我记得正确的话,应该解决与openGL问题相同的食人魔概念。
http://www.ogre3d.org/tikiwiki/tiki-index.php?page=Intermediate+Tutorial+1&structure=Tutorials
(会把它作为评论,最近才变得活跃!)
答案 1 :(得分:0)
使用选项2.只是不删除它们只需将它们移回并再次使用它们即可。例如,如果我想数羊...我不会创建1,000,000网眼的绵羊,我可能创建1或2只,并在使用它们之间旋转。