Version: 2022.2

Collider

class in UnityEngine

/

继承自:Component

切换到手册

描述

所有碰撞体的基类。

另请参阅:BoxColliderSphereColliderCapsuleColliderMeshColliderPhysicMaterialRigidbody

如果在游戏过程中需要移动具有 Collider 的对象,还应将 Rigidbody 组件附加到该对象。如果不想使该对象与其他对象进行物理交互,可将 Rigidbody 设置为运动刚体。

变量

attachedArticulationBodyThe articulation body the collider is attached to.
attachedRigidbody碰撞体附加到的刚体。
bounds碰撞体的世界空间包围体积(只读)。
contactOffset该碰撞体的接触偏移值。
enabled启用的 Collider 将与其他 Collider 碰撞,禁用的 Collider 不会这样。
excludeLayersThe additional layers that this Collider should exclude when deciding if the Collider can contact another Collider.
hasModifiableContactsSpecify whether this Collider's contacts are modifiable or not.
includeLayersThe additional layers that this Collider should include when deciding if the Collider can contact another Collider.
isTriggerSpecify if this collider is configured as a trigger.
layerOverridePriorityA decision priority assigned to this Collider used when there is a conflicting decision on whether a Collider can contact another Collider.
material碰撞体使用的材质。
providesContactsWhether or not this Collider generates contacts for Physics.ContactEvent.
sharedMaterial该碰撞体的共享物理材质。

公共函数

ClosestPoint返回碰撞体上最接近给定位置的一个点。
ClosestPointOnBounds与附加碰撞体的包围盒最接近的点。
Raycast投射除这一个外忽略其他所有 Colliders 的 Ray。

消息

OnCollisionEnter当该碰撞体/刚体已开始接触另一个刚体/碰撞体时,调用 OnCollisionEnter。
OnCollisionExit当该碰撞体/刚体已停止接触另一个刚体/碰撞体时,调用 OnCollisionExit。
OnCollisionStayOnCollisionStay is called once per frame for every Collider or Rigidbody that touches another Collider or Rigidbody.
OnTriggerEnter GameObject 与另一个 GameObject 碰撞时,Unity 会调用 OnTriggerEnter。
OnTriggerExit当 Collider other 已停止接触该触发器时调用 OnTriggerExit。
OnTriggerStay对于正在接触该触发器的每个**其他** Collider,“几乎”所有帧都调用 OnTriggerStay。此函数位于物理计时器上,因此它不必运行每个帧。

继承的成员

变量

gameObject此组件附加到的游戏对象。始终将组件附加到游戏对象。
tag此游戏对象的标签。
transform附加到此 GameObject 的 Transform。
hideFlags该对象应该隐藏、随场景一起保存还是由用户修改?
name对象的名称。

公共函数

BroadcastMessage调用此游戏对象或其任何子项中的每个 MonoBehaviour 上名为 methodName 的方法。
CompareTagChecks the GameObject's tag against the defined tag.
GetComponentGets a reference to a component of type T on the same GameObject as the component specified.
GetComponentInChildrenGets a reference to a component of type T on the same GameObject as the component specified, or any child of the GameObject.
GetComponentInParentGets a reference to a component of type T on the same GameObject as the component specified, or any parent of the GameObject.
GetComponentsGets references to all components of type T on the same GameObject as the component specified.
GetComponentsInChildrenGets references to all components of type T on the same GameObject as the component specified, and any child of the GameObject.
GetComponentsInParentGets references to all components of type T on the same GameObject as the component specified, and any parent of the GameObject.
SendMessage调用此游戏对象中的每个 MonoBehaviour 上名为 methodName 的方法。
SendMessageUpwards调用此游戏对象中的每个 MonoBehaviour 上或此行为的每个父级上名为 methodName 的方法。
TryGetComponent获取指定类型的组件(如果存在)。
GetInstanceIDGets the instance ID of the object.
ToString返回对象的名称。

静态函数

Destroy移除 GameObject、组件或资源。
DestroyImmediate立即销毁对象 /obj/。强烈建议您改用 Destroy。
DontDestroyOnLoad在加载新的 Scene 时,请勿销毁 Object。
FindAnyObjectByTypeRetrieves any active loaded object of Type type.
FindFirstObjectByTypeRetrieves the first active loaded object of Type type.
FindObjectOfType返回第一个类型为 type 的已加载的激活对象。
FindObjectsByTypeRetrieves a list of all loaded objects of Type type.
FindObjectsOfTypeGets a list of all loaded objects of Type type.
Instantiate克隆 original 对象并返回克隆对象。

运算符

bool该对象是否存在?
operator !=比较两个对象是否引用不同的对象。
operator ==比较两个对象引用,判断它们是否引用同一个对象。