版本: Unity 6 (6000.0)
语言英语
  • C#

Vector3.Angle

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们无法接受所有提交,但我们确实会阅读用户提出的每个建议更改,并在适用的情况下进行更新。

关闭

提交失败

由于某些原因,您的建议更改无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

声明

public static float Angle(Vector3 from, Vector3 to);

参数

from 测量角度差的起始向量。
to 测量角度差的目标向量。

返回值

float 两个向量之间的角度(以度为单位)。

描述

计算两个向量之间的角度。

当将这两个向量输入视为方向时,返回的角度是从第一个向量到第二个向量的旋转角度。
注意:返回的角度始终介于 0 到 180 度之间,因为该方法返回向量之间最小的角度。也就是说,它永远不会返回优角。

using UnityEngine;

public class AngleExample : MonoBehaviour { public Transform target;

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

void Update() { Vector3 targetDir = target.position - transform.position; float angle = Vector3.Angle(targetDir, transform.forward);

if (angle < 5.0f) print("Close"); } }

其他资源:SignedAngle 函数。