【问题标题】:Unity3d Rotate Around to certain pointUnity3d旋转到某个点
【发布时间】:2016-04-06 09:10:15
【问题描述】:

我有一个可以围绕球体旋转的物体。基本上我需要使用 RotateAround 将对象从初始位置移动到新位置(从 V1 到 V2)。 V1 是初始位置,V2 是可以在球体周围任何位置的位置。我有两个向量的值,所以我可以用 Vector3.Angle() 计算角度,但我不知道如何计算要在 RotateAround() 方法中使用的正确轴。

【问题讨论】:

  • 有可能LookAt可以帮到你

标签: c# unity3d


【解决方案1】:

只需使用Vector3.upTransform.up,如example

编辑:

我想我明白了。假设V1V2 具有相同的长度:只需使用Vector3.cross 找到垂直于该向量的新向量

【讨论】:

  • 如果目的地更北或更南怎么办?
  • 南北是什么意思?目标点取决于您旋转的点、轴和角度。
  • 我需要将对象移动到某个点,而不是某个随机方向。我编辑了我的问题,也许现在更清楚了。
  • 这就是我要说的!它解决了我的问题。 Dzięki pozdrawiam ;)
  • 没看懂,能否提供更详细的答案?
猜你喜欢
  • 1970-01-01
  • 2012-03-08
  • 1970-01-01
  • 2010-10-11
  • 2016-09-09
  • 1970-01-01
  • 2015-07-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多