Farseer / Box2D矩形在击中地板后变得疯狂

时间:2017-09-17 18:46:46

标签: c# box2d physics rectangles farseer

我正在使用Farseer Physics并像这样创建我的身体:

Body = BodyFactory.CreateRectangle(_world,
  PixelToPhysics(Width),
  PixelToPhysics(Height),
  Density
  null);

正如您在以下gif中看到的那样 -

Physics going crazy

矩形表现正常并且应该碰撞直到它们撞到地板上。地板本身也是一个矩形,但其体型设置为静态。

我试过玩时间步和音阶,但这似乎不是问题。此外,我不认为这是一个渲染故障,因为它在击中地板之前表现得像它一样。

对我来说,似乎在击中地板时它们的尺寸会发生变化,但我似乎无法调试它。

1 个答案:

答案 0 :(得分:0)

时间步长是(1000 / FrameTime)而不是(FrameTime / 1000),使物理每步移动60秒而不是0.016ms。