【问题标题】:Get accurate Rotation Angle in Unity3D C#在 Unity3D C# 中获取准确的旋转角度
【发布时间】:2013-08-05 23:06:05
【问题描述】:

所以我试图在 Unity 中制作一个模拟船运动的程序。这包括当船与某物相撞时会发生什么。虽然船移动得很好,但我返回的航向值不是弧度或度数。这是我用来确定标题的代码:

  void getHdg()
  {
    float temp = this.transform.rotation.z;

    craft.ChangeHeading(temp);
  }

我访问的每个站点都建议使用 欧拉角,但据我所见,它们只会在按键时更新。

我需要一种方法:

  • 每当船转弯时更新航向(即使与其他物体发生碰撞)
  • 或将 transform.rotation 代码中的虚假值转换为度数

【问题讨论】:

    标签: c# unity3d


    【解决方案1】:

    代码有两个问题:

    1. 代码检查的是 z 轴,而不是 y
    2. 需要测试不断更新的欧拉角

    这是正确的代码:

    void getHdg()
    {
        float temp = this.transform.eulerAngles.y;
        craft.ChangeHeading(temp);
    }
    

    【讨论】:

      猜你喜欢
      • 2023-04-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多