普通の引き算「target.position – transform.position」と違うのはローカル軸を基準にした位置を返す。
普通の引き算はワールド座標を基準にしている。
using UnityEngine; using System.Collections; public class MyMathfAtan2 : MonoBehaviour { public Transform target; void Update() { Vector3 relative = transform.InverseTransformPoint(target.position); print ("relative " + relative); print (target.position - transform.position); float angle = Mathf.Atan2(relative.x, relative.z) * Mathf.Rad2Deg; print (angle); // transform.Rotate(0, angle, 0); } }