使敌人自动旋转面向玩家
1 using System.Collections; 2 using System.Collections.Generic; 3 using UnityEngine; 4 5 public class RotatoToPlayer : MonoBehaviour 6 { 7 public Transform player; 8 9 10 void Update() 11 { 12 //使用Vector3.Angle方法求两个向量的夹角 13 float angle = Vector3.Angle(transform.forward,player.position-transform.position); 14 //使用Vector3.Cross方法求两个向量的叉乘后的值 15 Vector3 v = Vector3.Cross(transform.forward,player.position- transform.position); 16 //判断v.y的正负,使用左手螺旋法则来旋转Transform,使其朝向与它形成夹角的游戏对象 17 if (v.y > 0) 18 { 19 transform.Rotate(Vector3.up * angle); 20 } 21 else 22 { 23 transform.Rotate(Vector3.down * angle); 24 } 25 } 26 }