如何在 Unity 中为飞行的 3D 鸟添加对撞机?

问题描述

嗨,我在 Blender 中制作了一个鸟模型,看起来像这样(我在智能手机上录制了视频)https://youtu.be/9oa-h_EG228。我成功地将它导入到 Unity 中。现在我想为此添加一个碰撞器。

当我添加mesh collider并选择了convex选项时,它太不准确了。我在unity docs中也看到不建议使用它,因为处理能力会增加。我也取消了凸面选项,但我什么也得不到

对于类似于峡谷的地形,我将该地形设为刚体,选择“is Kinematic”并取消选择其中的重力。我还添加了取消选择凸面的网格碰撞器。我对一个圆柱体的测试对象进行了测试,我对结果感到满意。我在鸟身上尝试了同样的技巧,但显然没有选择“运动学”,但它不起作用。我已经在搅拌机中对这些东西进行了建模。有没有更简单的方法可以为这些东西统一添加一个完美的碰撞器?

解决方法

拥有完美的对撞机对您来说真的很重要吗? 在游戏中的大部分时间,您只有对撞机的近似值。对于一只鸟,你可以为身体使用一个胶囊对撞机,为每个翅膀使用一个盒子对撞机。

另外,不要让地形成为刚体。物体不一定要有刚体才能碰撞。刚体适用于您希望对象具有物理特性,例如重力或动量。你不希望地形有这些。

,

像上面的答案一样,很少需要使用完美对撞机。例如,如果您曾在《我的世界》中看到对撞机,它们与用于图形的模型完全不同。当然,我的世界是一款方块游戏,但这个概念仍然适用于更逼真的游戏。

以下是我的世界碰撞箱示例:https://www.minecraft.net/content/dam/games/minecraft/screenshots/crawling-hitbox.png