【问题标题】:Fixed-Dynamic block in AndEngineAndEngine 中的固定动态块
【发布时间】:2012-05-18 07:10:58
【问题描述】:

我正在尝试创建这样的东西:http://s14.postimage.org/8i013r9a9/movable.png

如果我使用 BodyType.DynamicBody 创建 BoxBody,它会从其他物体反弹并飞走,但我可以上下移动(setVelocity), 如果我使用 BodyType.StaticBody 创建 BoxBody,它会保持原位,但我无法移动它。

http://s15.postimage.org/pfvvlbpor/movable2.png - 该块必须向上/向下移动

如何创建可移动的障碍物??

对不起我的英语。

【问题讨论】:

    标签: box2d andengine collision


    【解决方案1】:

    您需要在 Box2D 扩展中使用关节,请参阅手册: http://www.box2d.org/manual.html 您可能正在寻找棱柱接头。

    还要看看运动学物体,我认为您可以像动态物体一样移动它们,但它们不会对与其他物体的碰撞做出反应,因此它们可能符合您的需求。

    【讨论】:

    • 请解释一下您所说的正方形是什么意思。是的,运动学实体仅与动态实体发生碰撞,因此您不能使用静态实体(例如墙壁)来限制它们的运动。您需要自己改变它们的位置,例如设置障碍物的线速度,然后不断检查它是否已经到达转折点,然后反转速度使其向后移动,然后重复。可能有更好的方法,我不知道,也许其他人会提供更好的解决方案。
    • 看第二张图,是不是还不清楚我需要什么?我希望物体从该块反弹,但它不会从物体反弹,而是继续上下移动......而不是左,右或其他地方
    • 我从一开始就明白了,但我仍然不知道第一条评论是什么意思。 :-) 也许你误解了关节是如何工作的?无论如何,我认为您可以创建一个连接地板和障碍物的棱柱接头。这会将障碍物的运动限制在一定的方向和长度上,它将充当一种活塞。看看我疯狂的 mspaint 技能 ;) i49.tinypic.com/2wbs66o.png
    • “也许你误解了关节的工作原理?” - 是的 :)) ,现在我明白了......非常感谢。我晚上试试。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-29
    相关资源
    最近更新 更多