【问题标题】:Car made of boxes teleports on hard collision: Unity3d由盒子制成的汽车在硬碰撞时瞬移:Unity3d
【发布时间】:2015-04-16 17:18:09
【问题描述】:

我正在尝试开发一个简单的赛车游戏。这些汽车由 2 个实心长方体(一个发动机和一个用于车身)和 4 个气缸组成。所有的物体都通过固定的关节相互连接。引擎是移动并承载其余部分的部分。

有时在与另一辆车或墙壁发生硬/重复碰撞时,汽车零件会在一段时间内表现得很疯狂,然后在场景中的另一个点组装。

知道为什么会这样吗?

【问题讨论】:

  • 固定关节有助于连接两个游戏对象,而无需父对象。但是由于它取决于物理,不同的力可能会对游戏对象产生一些奇怪的行为(尽管它不应该)。因此,我建议您使用父对象(可能是您的汽车引擎)和其他对象作为子对象。然后您只能在父级上使用一个刚体。您当然可以在碰撞视觉效果的同时用编码摇动不同的部分。希望对您有所帮助。

标签: unity3d collision


【解决方案1】:

这是因为每个物体的行为都好像碰撞只影响了他。 (发动机,车身..)所以当你碰撞太猛时,发动机可能会在车身的相反方向反弹,气缸也是如此。您可以尝试将它们全部分层到一个游戏对象下,然后将您的对撞机添加到该游戏对象。

【讨论】:

    【解决方案2】:

    如果您的刚体相当重,则可能会导致关节施加如此大的力,从而使整个模型变得不稳定。当然,您可以尝试减少刚体的质量,但实际上有更简单的方法来定义汽车的动力学。只需在 Unity 中寻找 wheel collider 并尝试用轮子替换您的气缸。请注意,您不必为车轮创建单独的对象 - 所有车轮碰撞器都可以附加到单个对象。

    【讨论】:

      猜你喜欢
      • 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
      相关资源
      最近更新 更多