统一误差转换四元到欧拉旋转

当我试图统一运行我的游戏时,会出现错误:

No appropriate version of 'UnityEngine.Quaternion.Euler' for the argument list '(UnityEngine.Quaternion)' was found. 

当使用更新代码(用javascript编写)时:

 transform.Rotate(Quaternion.Euler(transform.rotation * Quaternion.Inverse(GameObject.Find("Main Camera").transform.rotation))); 

任何帮助,将不胜感激。

Quaternion.Euler从三个欧拉角度通过浮点参数列表或者角度的Vector3创建四元数,而不是从四元数中创建(参见文档) :

 public static Quaternion Euler(float x, float y, float z); 

要么

 public static Quaternion Euler(Vector3 euler); 

你的意思是写:

 transform.Rotate((transform.rotation * Quaternion.Inverse(GameObject.Find("Main Camera").transform.rotation)).eulerAngles); 

为:eulerAngles