public static float Dot (Vector3 lhs, Vector3 rhs);

描述

两个向量的点积。

点积是一个浮点值,它等于 将两个向量的大小相乘,然后乘以向量之间角度的余弦值。

对于 normalized 向量,如果它们指向完全相同的方向,Dot 返回 1; 如果它们指向完全相反的方向,返回 -1;如果向量彼此垂直,则 Dot 返回 0。

// detects if other transform is behind this object

using UnityEngine; using System.Collections;

public class ExampleClass : MonoBehaviour { public Transform other;

void Update() { if (other) { Vector3 forward = transform.TransformDirection(Vector3.forward); Vector3 toOther = other.position - transform.position;

if (Vector3.Dot(forward, toOther) < 0) { print("The other transform is behind me!"); } } } }