版本:Unity 6 (6000.0)
语言英语
  • C#

碰撞器

UnityEngine 中的类

/

继承自:Component

/

UnityEngine.PhysicsModule 中实现

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。尽管我们无法接受所有提交,但我们会阅读用户提出的每项建议更改,并会在适用时进行更新。

关闭

提交失败

由于某些原因,您建议的更改无法提交。请在几分钟后 重试。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

描述

所有碰撞器的基类。

其他资源:BoxColliderSphereColliderCapsuleColliderMeshColliderPhysicsMaterialRigidbody

如果在游戏玩法过程中需要移动具有碰撞器的对象,则还应将 Rigidbody 组件添加到该对象。如果不想让对象与其他对象发生物理交互,则可以将 Rigidbody 设置为运动的。

属性

attachedArticulationBody碰撞器所附加的关节体。
attachedRigidbody碰撞器所附加的刚体。
bounds碰撞器的世界空间边界卷(只读)。
contactOffset此碰撞器的接触偏移值。
enabled已启用的碰撞器将与其他碰撞器发生碰撞,而已启用的碰撞器不会发生碰撞。
excludeLayers该碰撞器在决定碰撞器是否可以与另一个碰撞器接触时应排除的其他图层。
GeometryHolder包含碰撞器的几何形状及其类型的结构。(只读)
hasModifiableContacts指定此碰撞器的接触点是否可修改。
includeLayers该碰撞器在决定碰撞器是否可以与另一个碰撞器接触时应包含的其他图层。
isTrigger指定此碰撞器是否配置为触发器。
layerOverridePriority当对碰撞器是否可以与另一个碰撞器接触做出矛盾的决定时,分配给此碰撞器的决策优先级。
material碰撞器所使用的材料。
providesContacts此碰撞器是否可为 Physics.ContactEvent 生成联系人。
sharedMaterial此碰撞器的共享物理材质。

公共方法

ClosestPoint返回碰撞器上最靠近给定位置的一个点。
ClosestPointOnBounds到附着碰撞器包围盒的最靠近一点。
GetGeometry返回所需类型碰撞器的几何形状。
Raycast投射一条忽略此碰撞器之外的所有碰撞器的射线。

消息

OnCollisionEnter当此碰撞器/刚体开始接触另一个刚体/碰撞器时调用 OnCollisionEnter。
OnCollisionExit当此碰撞器/刚体停止接触另一个刚体/碰撞器时调用 OnCollisionExit。
OnCollisionStay对于每个接触另一个碰撞器或刚体的碰撞器或刚体,每帧调用 OnCollisionStay 一次。
OnTriggerEnter当 GameObject 与另一个 GameObject 碰撞时,Unity 调用 OnTriggerEnter。
OnTriggerExit当碰撞器 other 停止接触触发器时调用 OnTriggerEnter。
OnTriggerStay对于每个接触触发器的碰撞器 other,OnTriggerStay 几乎每帧调用一次。此函数采用物理计时器,因此不一定每帧运行。

继承的成员

属性

gameObject此组件附着的游戏对象。组件始终附着到一个游戏对象。
tag此游戏对象的标记。
transform此 GameObject 上附着的 Transform。
hideFlags该对象是否隐藏、与场景一起保存或可以由用户修改?
name对象名称。

公共方法

BroadcastMessage对此游戏对象或其任何子对象的每个 MonoBehaviour 调用方法名称 methodName。
CompareTag检查 GameObject 的标记与定义的标记。
GetComponent获取指定的组件上 GameObject 中类型的 T 的引用。
GetComponentInChildren获取指定的组件上 GameObject 或 GameObject 的任何子对象中类型的 T 的引用。
GetComponentIndex获取其父 GameObject 上组件的索引。
GetComponentInParent获取指定的组件或 GameObject 的任何父对象上 GameObject 中类型的 T 的引用。
GetComponents获取指定的组件上 GameObject 中所有类型为 T 的组件的引用。
GetComponentsInChildren获取指定的组件或 GameObject 的任何子对象中所有类型为 T 的组件的引用。
GetComponentsInParent获取指定的组件或 GameObject 的任何父对象中所有类型为 T 的组件的引用。
SendMessage对此游戏对象的每个 MonoBehaviour 调用方法名称 methodName。
SendMessageUpwards在该游戏对象和行为的每个祖先上调用该方法 methodName 命名的方法。
TryGetComponent获取指定类型的组件(如果存在)。
GetInstanceID获取对象的实例 ID。
ToString返回对象的名称。

静态方法

Destroy移除一个 GameObject、组件或 asset。
DestroyImmediate立即销毁对象 obj。强烈建议你使用 Destroy。
DontDestroyOnLoad加载新场景时,不要销毁目标对象。
FindAnyObjectByType检索任何已加载的 Type 类型活动的对象。
FindFirstObjectByType检索第一个已加载的 Type 类型活动的对象。
FindObjectsByType检索一个 Type 类型所有已加载对象列表。
Instantiate克隆对象 original 并返回克隆。
InstantiateAsync捕获原始对象(必须与某个 GameObject 相关)的快照,然后返回 AsyncInstantiateOperation。

运算符

bool对象是否存在?
运算符 !=在两个对象引用不同对象时进行比较。
运算符 ==比较两个对象引用以查看它们是否引用的是相同对象。