2013-08-05 56 views
2

所以我想在Unity中制作一个程序来模拟船只的运动。这包括船在与某物碰撞时会发生什么。虽然船只移动得很好,但我返回的航向值不是弧度或度数。下面是我使用来确定标题代码:在Unity3D C获得准确的旋转角度#

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

    craft.ChangeHeading(temp); 
    } 

每一个网站,我去建议使用欧拉角的,但是从我所看到的,他们只在按键更新。

我需要一种方法要么:

  • 更新每当船变成(即使在碰撞与其他物体)
  • 或改造虚假vaules从transform.rotation代码标题以度

回答

3

有两个问题与代码:

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

这里是正确的代码:

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