【问题标题】:How to convert Vector3 to Quaternion? [closed]如何将 Vector3 转换为四元数? [关闭]
【发布时间】:2016-12-10 08:47:28
【问题描述】:

试图弄清楚如何将 Vector3 转换为四元数。如果我需要不断更新所说的值,也可以吗?

【问题讨论】:

  • 永远不要以任何理由使用四元数。您不能使用、访问或设置它们,它们不可用。只需使用 RotateRotateAround,如果您愿意,只需设置 eulerAngleslocalEulerAngles
  • 四元数.欧拉()
  • @JoeBlow 有没有与 localRotation 比较?我需要四元数,因为我需要 localRotation。
  • 无意冒犯,但也许自己做一些研究并查看文档?它应该立即变得清晰......

标签: c# unity3d


【解决方案1】:

您可以很容易地将 Vector3 转换为四元数,例如:

Quaternion quaternion = Quaternion.Euler(v.x, v.y, v.z);

例如,那是

Quaternion rot = Quaternion.Euler(V3.x, V3.y, V3.z);

应该这样做!

【讨论】:

  • 好吧,@JoeBlow 让我质疑使用四元数是否是最好的方法,因为它们显然无法更新。
  • 四元数相当复杂,这主要是原因。查看文档以了解它们的主要用途:docs.unity3d.com/ScriptReference/Quaternion.html
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-04-19
  • 1970-01-01
  • 2018-03-27
  • 1970-01-01
  • 1970-01-01
  • 2022-10-16
相关资源
最近更新 更多