Как заставить физического персонажа двигаться без вращения

в настоящее время я разрабатываю простую игру, использующую физический движок (Farseer для XNA).

Я хотел бы спросить, как сделать персонажа таким, чтобы он мог ходить по земле, прыгать по платформе, не вращаясь.

Потому что мне нужно обновить положение и вращение тела, потому что это физический объект, поэтому он будет реагировать как обычно, который будет вращаться сам.

Кто-нибудь знает, как я могу это исправить?


person Birdkingz    schedule 06.08.2010    source источник


Ответы (1)


Для Farseer 2.1 вы можете установить:

body.MomentOfInertia = float.PositiveInfinity;

В Farseer 3.0, похоже, есть флаг для фиксированного вращения, который внутренне делает то же самое:

body.FixedRotation = true;

Хотя я также установил нулевое вращение после обновления физики, на всякий случай:

body.Rotation = 0;

Не бойтесь заходить в игру после запуска обновления физики и изменять любые значения физики, которые вам "не нравятся". Большинство игр довольно много фальсифицируют и фальсифицируют.

person Andrew Russell    schedule 06.08.2010