private void PhysicsMovement(Vector3 direction) { Vector3 force; if (CurrentHorizontalSpeed() > speedlimit) { force = Vector3.zero; } else { force = direction.normalized * engine.CalculateEnginePower(); // * Time.deltaTime; } rbody.AddForce(force); rbody.angularVelocity = new Vector3(0, 0, 0); }
private void PhysicsMovement(Vector3 direction) { Vector3 force; if (currentHorizontalSpeed > speedlimit) { force = Vector3.zero; } else { force = direction.normalized * engine.CalculateEnginePower(); // * Time.deltaTime; } if (GetAngleonAxis(transform.forward) > maxSlope) { // 1 is here so we never divide by a value less then 1 force = force / maxSlope; } //test no y direction acceration //force.y = 0; rbody.AddForce(force); rbody.angularVelocity = new Vector3(0, 0, 0); }