c# - 调整旋转方面的正确方法

标签 c# unity3d

我正在学习如何使用 unity,只是有一个关于改变旋转某些方面的最佳实践的快速问题。如果我只想调整新旋转的 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),您可以在其中设置旋转轴和角度(以度为单位)。

关于c# - 调整旋转方面的正确方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21197486/

相关文章:

c# - 从派生类内部调用 C# 基类扩展方法?

c# - 如何处理 Oculus Gear VR 触摸板上的滑动以避免点击事件

c# - 鼠标滚轮滚动的 UI 滚动条滚动灵敏度

unity3d - Unity Performance - Coroutines vs FSM on update

unity3d - 如何在 Unity 中为桌面 VR 应用逐帧显示 360 度视频?

c# - 忽略 Web 服务中的证书错误?

c# - 对多个 .aspx 页面使用相同的代码隐藏文件

c# - 在 WebBrowser 中禁用 F5

c# - 调用不被调用

c# - ClickOnce list 文件 - 正在生成重复的 "file"条目