Legacy Documentation: Version 4.5.0

Script language:

  • JS
  • C#
  • Boo
Script language

Select your preferred scripting language. All code snippets will be displayed in this language.

Vector3.Angle

static function Angle(from: Vector3, to: Vector3): float;
static float Angle(Vector3 from, Vector3 to);
static def Angle(from as Vector3, to as Vector3) as float

Parameters

fromThe angle extends round from this vector.
toThe angle extends round to this vector.

Description

Returns the angle in degrees between from and to.

The angle returned is always the acute angle between the two vector (ie, the smaller of the two possible angles between them and never greater than 180 degrees).

	// prints "close" if the z-axis of this transform looks
	// almost towards the target

var target : Transform; function Update () { var targetDir = target.position - transform.position; var forward = transform.forward; var angle = Vector3.Angle(targetDir, forward); if (angle < 5.0) print("close"); }

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour {
    public Transform target;
    void Update() {
        Vector3 targetDir = target.position - transform.position;
        Vector3 forward = transform.forward;
        float angle = Vector3.Angle(targetDir, forward);
        if (angle < 5.0F)
            print("close");
        
    }
}
import UnityEngine
import System.Collections

public class ExampleClass(MonoBehaviour):

	public target as Transform

	def Update() as void:
		targetDir as Vector3 = (target.position - transform.position)
		forward as Vector3 = transform.forward
		angle as float = Vector3.Angle(targetDir, forward)
		if angle < 5.0F:
			print('close')