Version: 6000.3
语言: 中文
碰撞
碰撞体类型简介

碰撞简介

在 Unity 中,当两个游戏对象Unity 场景中的基本对象,可以表示角色、道具、风景、相机、航路点等。游戏对象的功能由附加到它的组件定义。更多信息
请参阅术语表
配置为冲突占用相同的物理空间。碰撞是大多数游戏以及许多交互式应用程序和模拟器的基础部分。

为了处理游戏对象之间的碰撞,Unity 使用碰撞器碰撞器是一个 Unity 组件,用于定义游戏对象的形状以实现物理碰撞。碰撞体是不可见的,不需要与游戏对象的网格体形状相同。

有关如何将组件添加到游戏对象的指南,请参阅使用组件

每个 3D 碰撞器都有一个 2D 等效项。在 Unity 中,2D 和 3D 物理在不同的物理模拟系统上运行。有关2D物理碰撞器的指导,请参阅Collider 2D

碰撞体类型

碰撞器的类型基于其游戏对象的碰撞体的配置,并且刚体允许游戏对象受到模拟重力和其他力影响的组件。更多信息
请参阅术语表
组件。此配置决定了碰撞器的行为方式,以及它如何与其他碰撞器交互。

  • 静态碰撞器:游戏对象有碰撞器,但没有刚体。
  • 刚体碰撞器:游戏对象具有碰撞器和刚体。
    • 动态碰撞体:刚体是动态的(即,它禁用了 运动学(Is Kinematic) )。
    • 运动学碰撞器(Kinematic colliders) :刚体是运动学的(即,它启用了 运动学(Is Kinematic) )。

碰撞器还有一种子类型,称为触发器碰撞器。触发碰撞器不会与其他碰撞器发生物理碰撞;相反,当其他碰撞体通过它们时,Unity 会调用一个函数。

触发碰撞器

触发碰撞器不会引起碰撞。相反,它们会检测穿过它们的其他碰撞体,并调用可用于启动事件的函数(请参阅使用碰撞触发其他事件)。

要将碰撞器转换为触发器碰撞器,请在 Collider 组件上启用 Is Trigger 属性。触发碰撞器不会与其他碰撞器碰撞;相反,其他碰撞体会穿过它。

要使触发器碰撞器正常工作,碰撞中涉及的至少一个游戏对象必须具有刚体。触发碰撞器可以是任何碰撞器类型(静态或刚体),但在大多数情况下,最好将触发器碰撞器设为静态碰撞器。,然后向通过触发器的游戏对象添加刚体。如果多个游戏对象通过一个触发器,则每个碰撞对中至少有一个游戏对象上必须有一个刚体。

触发器可以是任何碰撞体形状(请参阅碰撞体形状),它们可以是可见的或不可见的。要使触发器不可见,请将碰撞器添加到空游戏对象。仅当其他游戏对象可以明显地通过可见游戏对象时,才向可见游戏对象添加触发器。

对于游戏玩法和模拟,触发器可能需要进行一些调整,以使玩家感觉直观。例如,可以尝试使触发器碰撞器略大于其关联的可见游戏对象,使其具有更宽的半径。

有关不同碰撞器类型如何在碰撞时相互交互的信息,请参阅碰撞器类型之间的交互

碰撞体形状

碰撞器组件有不同的形状配置。碰撞器主要有三种形状类型:

图元碰撞器是内置的简单形状,您可以将其附加到游戏对象并缩放到大致相同的大小和形状。您还可以组合多个基本碰撞器形状以创建复合碰撞器网格碰撞器自由形状的碰撞器组件,它接受网格体参考来定义其碰撞表面形状。更多信息
请参阅术语表
完全匹配游戏对象的网格Unity 的主要图形原语。网格体构成了 3D 世界的很大一部分。Unity 支持三角或四边形多边形网格。Nurbs、Nurms、Subdiv 曲面必须转换为多边形。更多信息
请参阅术语表
.对于复杂形状,它们比原始碰撞器更准确,但需要更多的计算资源。车轮碰撞机用于停飞车辆的特殊对撞机。它具有内置的碰撞检测、车轮物理和基于打滑的轮胎摩擦模型。它可用于车轮以外的物体,但它是专门为带轮子的车辆设计的。更多信息
请参阅术语表
是基于光线投射的碰撞体,专门用于具有物理模拟车轮的游戏内物品(例如车辆)。它们具有内置的车轮物理特性和摩擦控制。

碰撞体表面

您可以控制碰撞体表面的摩擦力和弹跳力。当两个碰撞体相遇时,物理系统使用每个表面的属性来计算它们之间的摩擦力和弹跳力。

有关更多信息,请参阅碰撞体表面

碰撞
碰撞体类型简介