我想围绕圆周运动的固定点旋转gluSphere
,就像行星围绕太阳一样。
最好使用glRotatef还是glTranslate?如果是这样,我应该按顺序打电话给他们?
答案 0 :(得分:4)
你必须做两件事:
gluSphere
“面向”固定点,以便相对于球体向前平移会使您更接近其轨道中心glTranslatef
gluSphere
转发到您希望它旋转的位置glRotatef
你希望球体绕轨道运行的方向glTranslatef
向后倾斜这样,你的球体与中心保持相同的距离,但在一个漂亮的轨道上“绕”转换。
答案 1 :(得分:2)
远离中心转换然后一直旋转
答案 2 :(得分:-2)
glRotatef将当前矩阵乘以旋转矩阵。这可以(给出正确的向量)做你正在尝试的事情。
glTranslatef会将当前矩阵乘以平移矩阵,这将有效地“移动”对象,而不是旋转它,因此它不会是您想要的。