- Home /
When applying AddRelativeForce object reaches higher speed when rotated
I am working on a helicopter game. The helicopter object has a Rigidbody2D component. (for gravity etc.) when pressing the "down" button on the keyboard I use Rigidbody2D.AddRelativeForce to apply force to the objects' position on the "y" axis.
r_2d.AddRelativeForce(new Vector2(0,20));
it seems that if the helicopters' angle is not 0 the helicopter's speed increases faster.
when the helicopter's angle was 0 the it reached in 3 seconds the speed of 40. when the helicopter's angle was 45 the it reached in 3 seconds the speed of 58.
Why?
Answer by NoseKills · Jul 06, 2015 at 07:56 AM
Because at 0 rotation all of the force you apply is fighting directly against gravity.
Think of the extreme opposite: if you apply a relative force "up" when the chopper is upside down, both gravity and the applied force would move the chopper down and it would surely move a lot faster than when applying a force straight up against gravity's pull