我制作了2D游戏,我需要将物体转向玩家。 Player
是物体旋转的地方
public Transform Player;
public Transform Turell;
Rigidbody TurelPhisics;
// Update is called once per frame
void Update()
{
var turn = Quaternion.Lerp(Turell.rotation, Quaternion.LookRotation(Vector3.forward, Player.position - Turell.position), Time.deltaTime * 1.8f);
TurelPhisics.MoveRotation(turn.eulerAngles.z);
}
答案 0 :(得分:1)
Rigidbody.MoveRotation
需要一个Quaternion
。您正在{p}中传递float
TurelPhisics.MoveRotation(turn.eulerAngles.z);
采用float
而不是Rigidbody2D
的情况是,其中Rigidbody2D.MoveRotation
采用浮点数,因为Z轴上只有旋转。
既然你说了
我制作2D游戏
只需将类型更改为
Rigidbody2D TurelPhisics;