【问题标题】:How to stop one body when collide with another body [Box2d]与另一个物体碰撞时如何停止一个物体[Box2d]
【发布时间】:2013-04-13 10:26:18
【问题描述】:

我正在使用 LibGDX 平台和 box2D 开发一款游戏,其中我正在使用 LibGDX 的tocuhPad 运动来移动一个身体(动态)

testBody1.setTransform(new Vector2(x,y), 0);

方法并且在与动态体碰撞的途中还有另一个物体(静态)。我想要的是当我的动态体与静态体碰撞时,它们都不会相互重叠,这还没有发生.现在它们通过施加力和移动静态物体相互重叠。那么,我怎样才能防止两个物体发生碰撞呢?

【问题讨论】:

    标签: android box2d libgdx


    【解决方案1】:
    testBody1->SetLinearVelocity(b2Vec2(0, 0));
    

    【讨论】:

    • 嗨,我已经试过了,在这种情况下,动态体没有重叠,而是对静态体施加了力,静态体开始向另一个我不想要的方向移动。跨度>
    • 静止的身体不能因为冲动而移动,因为它是静止的!
    【解决方案2】:

    您可以在 BeginContact 方法中检查动态体与静态体碰撞时的一件事。当它们发生碰撞时,您将动态物体速度设置为零。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多