vector3簡單來說即表示向量和點的系統類,這個結構用於處理向量和點,也包含許多作向量運算的函數。html
而vector2即少一維向量的類,用於處理二維運算。函數
栗子:添加一個剛體的速度矢量,spa
public Vector3 velocity;
在大多數狀況下,咱們不該該直接修改速度,由於這會致使不切實際的行爲。不要在每一個物理步驟中設置每一個物體的速度,這會致使不切實際的物理模型,改變速度的栗子是在第一人稱中的跳躍。3d
void FixedUpdate() { if (Input.GetButtonDown("Jump")) rb.velocity = new Vector3(0, 10, 0); }
對於其餘狀況,建議仍是用AddForce()方法比較符合實際。(2d遊戲爲了實現天然的控制體驗,儘可能使用addforce方法)code
在坦克大戰這一遊戲中也使用了給物體添加速度的方法。orm
rigidbody.velocity = transform.forward * v * speed;
關於vector3的一些靜態屬性htm
back | Shorthand for writing Vector3(0, 0, -1). |
down | Shorthand for writing Vector3(0, -1, 0). |
forward | Shorthand for writing Vector3(0, 0, 1). |
left | Shorthand for writing Vector3(-1, 0, 0). |
negativeInfinity | Shorthand for writing Vector3(float.NegativeInfinity, float.NegativeInfinity, float.NegativeInfinity). |
one | Shorthand for writing Vector3(1, 1, 1). |
positiveInfinity | Shorthand for writing Vector3(float.PositiveInfinity, float.PositiveInfinity, float.PositiveInfinity). |
right | Shorthand for writing Vector3(1, 0, 0). |
up | Shorthand for writing Vector3(0, 1, 0). |
zero | Shorthand for writing Vector3(0, 0, 0). |