天天看點

(第三章)Unity3D-Vector3

今天來介紹一下Vector3這個類

Vector3 三維向量

表示3D的向量和點。

這個結構用于在Unity傳遞3D位置和方向。它也包含做些普通向量運算的函數。

除了下面列出的函數,其他類用于處理向量和點。例如Quaternion和Matrix4x4類用于旋轉或變換向量和點。

Variables變量

  • x 向量的X元件。
  • y 向量的Y元件。
  • z 向量的Z元件。
  • this [int index] 使用[0], [1], [2]分别通路元件x, y, z元件。簡單來說就是用索引号代替x, y, z元件。
  • normalized 傳回向量的長度為1(隻讀)。
  • magnitude 傳回向量的長度(隻讀)。
  • sqrMagnitude 傳回這個向量的長度的平方(隻讀)。

Constructors構造器

  • Vector3 建立一個新的具有給定x, y, z元件的向量。

Functions函數

  • Scale 由縮放的相同的元件對應乘以這個矢量的每個元件。
  • Normalize 使向量的長度為1。
  • ToString 傳回此向量格式化的字元串。

Class Variables類變量

  • zero 寫 Vector3(0, 0, 0)的簡碼。
  • one 寫 Vector3(1, 1, 1)的簡碼。
  • forward 寫 Vector3(0, 0, 1)的簡碼,也就是向z軸。
  • up 寫 Vector3(0, 1, 0)的簡碼,也就是向y軸。
  • right 寫 Vector3(1, 0, 0)的簡碼,也就是向x軸。

Class Functions類函數

  • Lerp 兩個向量之間的線性插值。
  • Slerp 球形插值在兩個向量之間。
  • OrthoNormalize 使向量規範化并且彼此互相垂直。
  • MoveTowards 目前的地點移向目标。
  • RotateTowards 目前的向量轉向目标。
  • SmoothDamp 随着時間的推移,逐漸改變一個向量朝向預期的目标。
  • Scale 兩個矢量元件對應相乘。
  • Cross 兩個向量的交叉乘積。傳回lhs x rhs
  • Reflect 沿着法線反射向量。
  • Dot 兩個向量的點乘積。
  • Project 投影一個向量到另一個向量。
  • Angle 由from和to兩者傳回一個角度。
  • Distance 傳回a和b之間的距離。
  • ClampMagnitude 傳回向量的長度,最大不超過maxLength所訓示的長度。
  • Min 傳回一個由兩個向量的最小元件組成的向量。
  • Max 傳回一個由兩個向量的最大元件組成的向量。
  • operator + 兩個向量相加。
  • operator - 一個向量減另一個向量。
  • operator * 由一個數乘以一個向量。
  • operator / 由一個數除一個向量。也就是a/b。
  • operator == 如果兩個向量相等,傳回真。
  • operator != 如果向量不同傳回真。

繼續閱讀