使用以下代码,我沿x轴移动一个物体,并相对于每一帧的位置旋转它。
quad.getModel().setIdentity();
quad.getModel().scale(new Vector3f(10, 10, 10));
quad.getModel().translate(new Vector3f(x, 0, 0));
quad.getModel().rotate(x * 2, new Vector3f(0, 1f, 0f));
现在我要删除model.setIdentity()
。我现在怎么能做同样的事情呢?
答案 0 :(得分:0)
好的,我找到了解决方案。 我只需要每帧旋转一次,然后移动它,而不是将其旋转回去。 原因是,旋转会改变对象相对轴。所以翻译 也沿着这个新轴移动。沿着原点移动,或者," old"轴, 只需要在此之前重置旋转。