Пример #1
0
    public void ApplyGravityCubic(float gravity, float maxVelocity = Mathf.Infinity)
    {
        CurrentAcceleration = CurrentAcceleration.WithIncY(-gravity * Time.deltaTime);
        var verticalVelocity = CurrentVelocity.y + CurrentAcceleration.y * Time.deltaTime;

        verticalVelocity = Mathf.Max(verticalVelocity, -maxVelocity);
        SetVerticalVelocity(verticalVelocity);
    }
Пример #2
0
 public void CancelMovementAlongAxis(Vector2 axis)
 {
     CurrentVelocity     -= CurrentVelocity.Dot(axis) * axis;
     CurrentAcceleration -= CurrentAcceleration.Dot(axis) * axis;
 }