我想在OpenGL中旋转一个对象,而不用重复旋转它的轴。无论如何要解决这个问题,还是必须得到其他图书馆或其他东西?没有“动画”的对象旋转
我只是想画一些平坦的广场和旋转它们做一个简单的3围墙1楼的房间来测试光照和阴影英寸
我想在OpenGL中旋转一个对象,而不用重复旋转它的轴。无论如何要解决这个问题,还是必须得到其他图书馆或其他东西?没有“动画”的对象旋转
我只是想画一些平坦的广场和旋转它们做一个简单的3围墙1楼的房间来测试光照和阴影英寸
虽然你的问题是有点不清楚,这听起来像你不知道glPushMatrix
和glPopMatrix
。使用glPushMatrix
您可以保存当前选定的矩阵,然后使用glPopMatrix
再次恢复。但请务必在每个glPushMatrix
后面跟上相应的glPopMatrix
。但是你绝对不需要使用另一个库。
所以我觉得你想要做
for(i=0; i<3; ++i)
{
glPushMatrix();
glRotatef(...);
wall(i);
glPopMatrix();
}
你只需要设置对象上的转变。
例如 - 部分的the OpenGL resources pages 9.020有这个例子:
glPushMatrix();
glRotatef(90., 1., 0., 0.);
gluCylinder(quad,1,1,2,36,12);
glPopMatrix();
这将旋转圆柱体绕X轴旋转90度
你能成为一个更具体一点,你是什么意思“旋转而不旋转它的轴“?你能粘贴一些代码吗? –
因为你是新来的人,一定要告诉你自己有关接受和投票功能。 –
这个问题几乎是倒退。首先,你学习如何旋转某些东西,然后你学习如何不断重复这个过程来增加“旋转”效应。 –