|
Returns the angle in radians whose Tan is y/x.
Return value is the angle between the x-axis and a 2D vector starting at zero and terminating at (x,y).
// Usually you use transform.LookAt for this.
// But this can give you more control over the angle
var target : Transform;
function Update () {
var relative : Vector3 = transform.InverseTransformPoint(target.position);
var angle : float = Mathf.Atan2(relative.x, relative.z) * Mathf.Rad2Deg;
transform.Rotate (0, angle, 0);
}
using UnityEngine;
using System.Collections;
public class example : MonoBehaviour {
public Transform target;
void Update() {
Vector3 relative = transform.InverseTransformPoint(target.position);
float angle = Mathf.Atan2(relative.x, relative.z) * Mathf.Rad2Deg;
transform.Rotate(0, angle, 0);
}
}
import UnityEngine
import System.Collections
class example(MonoBehaviour):
public target as Transform
def Update():
relative as Vector3 = transform.InverseTransformPoint(target.position)
angle as single = (Mathf.Atan2(relative.x, relative.z) * Mathf.Rad2Deg)
transform.Rotate(0, angle, 0)