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). |