0
我正在寻找解决以下问题的方法:独立旋转约2个轴
我有一个球行进到屏幕的右上角。也就是说,它的速度向右和向上是相同的。
为了模拟它的旋转,它有一个沿X轴和Y轴的角速度 - 它们也是相等的。
迄今为止,这工作正常。我的问题是现在正确旋转展出的球:我使用OpenGL和一个简单的球体。现在
我幼稚的方法是使用
glRotate(rx, 1, 0, 0); // rotate about x axis
glRotate(ry, 0, 1, 0); // rotate about y axis
但正如我预期这不起作用:第二旋转取决于第一个。第二个想法,这是按照我习惯的方式工作的。但现在我正在寻找解决方案,通过独立应用两个旋转来正确旋转我的球。
我也试过使用四元数,但没有成功。我甚至不确定我是否完全错误,我的方法是“旋转一些关于x的程度,然后关于y的一些关系”,这是有道理的。
任何“启示”,不胜感激。
谢谢!
你是怎么尝试使用不起作用的四元数的?如果你的实现是正确的,那么四元数应该总是正确 – 2011-05-03 17:50:51
http://en.wikipedia.org/wiki/Rodrigues%27_rotation_formula围绕任意轴旋转的轴角公式。 – legends2k 2013-01-30 19:29:13