Version: 2021.1

CompositeCollider2D

class in UnityEngine

/

继承自:Collider2D

切换到手册

描述

可合并其他碰撞体的碰撞体。

当其他碰撞体的 Collider2D.usedByComposite 设置为 true 时,CompositeCollider2D 将其合并。

当复合碰撞体使用碰撞体时,Editor 将忽略并且不显示 Collider2D.sharedMaterialCollider2D.isTriggerCollider2D.usedByComposite 属性。而是使用 CompositeCollider2D 上的相同属性。应将复合碰撞体的这些属性设置为将所有碰撞体均合并到复合碰撞体中。

复合碰撞体只能合并 BoxCollider2DPolygonCollider2D

变量

edgeRadius控制该碰撞体创建的所有边缘的半径。
generationType指定生成复合碰撞体几何体的时间。
geometryType指定复合碰撞体应生成的几何体的类型。
offsetDistance在合成物理性状时,顶点偏移这个距离。在此距离内性状之间的所有顶点都会组合起来。
pathCount碰撞体中的路径数量。
pointCount获取碰撞体所有路径中的总点数。
vertexDistance控制生成的顶点之间允许的最小距离。

公共函数

GenerateGeometry重新生成复合碰撞体几何体。
GetPath根据碰撞体的索引获取其路径。
GetPathPointCount根据碰撞体的索引获取指定的碰撞体路径中的点数。

继承的成员

变量

enabled启用的 Behaviour 可更新,禁用的 Behaviour 不可更新。
isActiveAndEnabled是否已激活并启用 Behaviour?
attachedRigidbody附加到 Collider2D 的 Rigidbody2D。
bounciness获取碰撞体使用的弹力。
bounds碰撞体的世界空间包围区域。
composite获取可附加到该碰撞体的 CompositeCollider2D。
density碰撞体的密度,用于计算其质量(如果启用自动质量)。
friction获取碰撞体使用的摩擦力。
isTrigger是否将碰撞体配置成了触发器?
offset碰撞体几何形状的局部偏移。
shapeCount碰撞体中不同形状区域的数量。
sharedMaterial应用于碰撞体的 PhysicsMaterial2D。
usedByComposite设置 CompositeCollider2D 是否将使用碰撞体。
usedByEffector附加的特效器是否使用该碰撞体。
gameObject此组件附加到的游戏对象。始终将组件附加到游戏对象。
tag此游戏对象的标签。
transform附加到此 GameObject 的 Transform。

公共函数

Cast将碰撞体形状投射到从该碰撞体位置开始的场景中,而忽略该碰撞体本身。
ClosestPoint返回此碰撞体周边上最接近指定 position 的点。
CreateMesh创建与 Collider2D 几何体定义的区域相同的平面 Mesh。
Distance计算该碰撞体与另一个碰撞体的最小间距。
GetContacts获取此碰撞体的所有接触点。
GetShapeHash根据 Collider2D 的几何体生成简单哈希值。
IsTouching检查该碰撞体是否正在接触 /collider/。
IsTouchingLayers检查该碰撞体是否正在接触指定 layerMask 上的任何碰撞体。
OverlapCollider获取与该碰撞体重叠的所有碰撞体的列表。
OverlapPoint检查碰撞体是否与空间中的某个点重叠。
Raycast将光线投射到从碰撞体位置开始的场景中,并忽略碰撞体本身。
BroadcastMessage调用此游戏对象或其任何子项中的每个 MonoBehaviour 上名为 methodName 的方法。
CompareTag此游戏对象是否使用 tag 进行了标记?
GetComponentReturns the component of Type type if the GameObject has one attached, null if it doesn't. Will also return disabled components.
GetComponentInChildren使用深度首次搜索返回 GameObject 或其任何子项中类型为 type 的组件。
GetComponentInParent返回 GameObject 或其任何父项中类型为 type 的组件。
GetComponents返回 GameObject 中类型为 type 的所有组件。
GetComponentsInChildrenReturns all components of Type type in the GameObject or any of its children. Works recursively.
GetComponentsInParent返回 GameObject 或其任何父项中类型为 type 的所有组件。
SendMessage调用此游戏对象中的每个 MonoBehaviour 上名为 methodName 的方法。
SendMessageUpwards调用此游戏对象中的每个 MonoBehaviour 上或此行为的每个父级上名为 methodName 的方法。
TryGetComponent获取指定类型的组件(如果存在)。

消息

OnCollisionEnter2D当传入碰撞体与该对象的碰撞体接触时发送(仅限 2D 物理)。
OnCollisionExit2D当另一个对象上的碰撞体停止接触该对象的碰撞体时发送(仅限 2D 物理)。
OnCollisionStay2D在另一个对象上的碰撞体正在接触该对象的碰撞体时发送每个帧(仅限 2D 物理)。
OnTriggerEnter2D当另一个对象进入附加到该对象的触发碰撞体时发送(仅限 2D 物理)。
OnTriggerExit2D当另一个对象离开附加到该对象的触发碰撞体时发送(仅限 2D 物理)。
OnTriggerStay2D在另一个对象位于附加到该对象的触发碰撞体之内时发送每个帧(仅限 2D 物理)。