我正在学习如何使用统一性,只是在更改轮换的某些方面时对最佳实践有一个简短的问题。如果我只想调整新旋转的x和z方向,那将是最好的方法。

我想出了:

newRotation.x = 0F;
newRotation.z = 0F;


要么:

newRotation = new Quaternion(0f, newRotation.y, 0f, newRotation.w);


以下哪一项是完成将x和z归零但其余部分保持不变的更好方法?还是我想念另一种方式?

谢谢

最佳答案

通过更改x,y或z,我假设您正在尝试更改旋转轴。

重要的是要记住,这些值代表旋转轴的坐标乘以旋转角一半的正弦值。
如果在设置它们时不小心,则可以设置不同的旋转角度。

一种安全的更改旋转方式的方法是使用Quaternion(Vector3D,Double),在其中设置旋转轴和角度(以度为单位)。

09-27 03:54