我正在制作2D游戏,我有一个预制敌人,这个敌人是一门大炮。当玩家改变位置时,我想旋转这个大炮。将GameObject旋转到玩家位置?
大炮应该总是旋转到玩家位置
我正在尝试这个。
// Update is called once per frame
void Update() {
float distance = Vector2.Distance(player.position, transform.position);
if(distance < 10){
Vector2 dir = player.position - transform.position;
float angle = Mathf.Atan2(dir.y, dir.x) * Mathf.Rad2Deg;
Quaternion qto = Quaternion.AngleAxis(angle, Vector3.forward);
transform.rotation = Quaternion.Slerp(transform.rotation, qto, 5f * Time.deltaTime);
}
}
看到的结果是:https://www.youtube.com/watch?v=REeSNKWLvIQ
大炮没有旋转到玩家的位置。
我该如何解决这个问题?
非常好,我改变了+90到-90在qto2,现在工作!谢谢。 – FernandoPaiva 2014-11-06 15:07:48