如何使物理角色在不旋转的情况下移动

时间:2010-08-06 02:41:15

标签: xna farseer

目前我正在开发一款使用物理引擎的简单游戏(用于XNA的Farseer)。

我想问一下如何制作角色让他可以在地面上行走,在平台上跳跃而不会自行旋转。

因为我需要更新身体位置和旋转,因为它是一个物理对象,所以它会像往常一样自行响应。

任何人都知道如何解决它?

1 个答案:

答案 0 :(得分:5)

对于Farseer 2.1,您可以设置:

body.MomentOfInertia = float.PositiveInfinity;

Farseer 3.0似乎有一个固定旋转的标志,它似乎在内部做同样的事情:

body.FixedRotation = true;

虽然在物理更新后我也将旋转设置为零,但为了确保:

body.Rotation = 0;

在物理更新运行后,不要害怕进入,并更改“不喜欢”的任何物理值。大多数游戏都伪造和捏造了很多东西。