理解碰撞17 Mar 2025 | 阅读 2 分钟 如你所知,你游戏中的一切都是 GameObject。 甚至组成你关卡的各个图块本身也是 GameObject。 当我们把每个组件都视为 GameObject 时,我们就会明白场景中可能有成千上万的 GameObject,以某种方式相互交互。 你可以想象,如果 Unity 为每个 GameObject 添加碰撞,那么引擎计算每个 GameObject 的碰撞是不切实际的。 在 Unity 中,碰撞与实际的 Sprite 本身是分离的,作为单独的组件附加,并单独计算。 碰撞器组件描述了对象用于物理碰撞的形状。 碰撞器将是不可见的,并且需要与 GameObject 的网格形状完全相同。 让我们添加一个简单的墙,我们的玩家可以撞到它。 首先,创建一个 sprite。 要做到这一点,在层次结构选项卡中右键单击你的场景,然后选择 2D 对象 -> Sprite。 ![]() 将新的 Sprite 重命名为 Player。 或者直接进入项目选项卡,右键单击 Assets 并选择 Create -> Sprites -> Square。 ![]() 将该正方形拖到场景中。 ![]() 现在转到 Inspector 选项卡中的 Add Component,搜索“Box Collider 2D”。 ![]() 你会在你的 Player GameObject 的周围看到一条明亮的绿色线。 这是碰撞边界。 它定义了可碰撞对象的实际形状。 ![]() 我们可以创建不同形状和大小的碰撞。 它们可以是矩形形状,甚至可以是多边形形状。 下一主题理解预制体和实例化 |
我们请求您订阅我们的新闻通讯以获取最新更新。