关于对vector3及其衍生变量的理解
关于对vector3,vector2类及其衍生变量的理解
vector3简单来讲即表示向量和点的系统类,这个结构用于处理向量和点,也包含许多做向量运算的函数。
而vector2即少一维向量的类,用于处理二维运算。
栗子:添加一个刚体的速度矢量,
public Vector3 velocity;
在大多数情况下,我们不应该直接修改速度,因为这会导致不切实际的行为。不要在每个物理步骤中设置每个物体的速度,这会导致不切实际的物理模型,改变速度的栗子是在第一人称中的跳跃。
void FixedUpdate() { if (Input.GetButtonDown("Jump")) rb.velocity = new Vector3(0, 10, 0); }
对于其他情况,建议还是用AddForce()方法比较符合实际。(2d游戏为了实现自然的控制体验,尽量使用addforce方法)
在坦克大战这一游戏中也使用了给物体添加速度的方法。
rigidbody.velocity = transform.forward * v * speed;
关于vector3的一些静态属性
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). |