Unity - 四元数最大值始终为“1.0”,最小值始终为“-1.0”
Unity - Quaternions maximum value is always '1.0' and minimum value is always '-1.0'
我正在制作一款游戏,您可以在其中以第一人称视角进行游戏。我想通过添加头部摆动效果使其更逼真。这已经包含在我正在使用的标准资产包 'Characters' 中,但我也在尝试调整玩家头部的旋转,使其在 walking/running 时左右倾斜。
出于某种原因,当我将四元数应用于相机的局部旋转时,z 值在 -1.0 和 1.0 之间,但这不是我想要的。
我已经尝试将 z 值乘以 360,但它仍然给了我“1”作为最大值。
有谁知道如何解决这个问题?
您想使用 Quaternion.Euler.
示例;
transform.rotation = Quaternion.Euler(new Vector3(0, 0, 360));
希望对您有所帮助!
我正在制作一款游戏,您可以在其中以第一人称视角进行游戏。我想通过添加头部摆动效果使其更逼真。这已经包含在我正在使用的标准资产包 'Characters' 中,但我也在尝试调整玩家头部的旋转,使其在 walking/running 时左右倾斜。
出于某种原因,当我将四元数应用于相机的局部旋转时,z 值在 -1.0 和 1.0 之间,但这不是我想要的。
我已经尝试将 z 值乘以 360,但它仍然给了我“1”作为最大值。
有谁知道如何解决这个问题?
您想使用 Quaternion.Euler.
示例;
transform.rotation = Quaternion.Euler(new Vector3(0, 0, 360));
希望对您有所帮助!