Documentation

Unity Engine


User Manual

Script Reference

Unity Engine


Collider2D

The parent class for collider types used with 2D gameplay. Provides methods to defines the shape and physical behavior for 2D object interactions, used to detect collisions, and trigger events in 2D game environments.
Read time 10 minutesLast updated 3 days ago

Definition

[RequireComponent(typeof(Transform))]public class Collider2D : Behaviour

Remarks

The Collider2D class serves as a parent class for various two-dimensional collider components that define the physical boundaries of objects. These colliders enable interaction with other objects in a 2D physics simulation. They play a key role in detecting collisions and managing interactions, and setting up triggers for events when objects overlap or make contact with each other.
Collision detection is crucial for creating realistic and interactive game environments. The use of Collider2D-based components addresses the challenge of determining interactions, collisions, and specific behaviors, supporting the implementation of game mechanics like movement and collision responses.
In a typical game development workflow, these components are necessary for objects such as characters, obstacles, and collectibles that require physical interaction or collision detection. Developers add specific Collider2D-derived components to GameObjects to establish interaction boundaries and configure their properties to align with desired dynamics. Scripts can then handle collision events and responses, then integrate seamlessly into the gameplay and physics system.
To use these collider components, add them to GameObjects and configure them to match physical boundaries. While they are not necessary for static or trigger objects, you can add a Rigidbody2D component to enable dynamic interactions and movement. The recommended best practice is to properly configure size, position, and type because it is crucial to avoid inaccurate collision detection or unintended behavior. Be careful to avoid issues like incorrect layering or improperly set triggers that can lead to detection failures.
These collider components work with Unity's Physics2D system. They can be used with layers to optimize collision management and interactions. They also facilitate efficient overlap and raycast operations, such as Physics2D.OverlapCircle and Physics2D.Raycast, for precise object detection. Unity debugging tools can be used to help visualize and refine colliders behaviors.

Properties

Property

Description

attachedRigidbodyThe Rigidbody2D attached to the Collider2D.
bounceCombineThe bounciness combine mode used by the Collider2D.
bouncinessThe bounciness used by the Collider2D.
boundsThe world space bounding area of the collider.
callbackLayersThe Layers that this Collider2D will report collision or trigger callbacks for during a contact with another Collider2D.
compositeGet the CompositeCollider2D that is available to be attached to the collider.
compositeCapableIndicates if this Collider2D is capable of being composited by the CompositeCollider2D.
compositeOperationThe composite operation to be used by a CompositeCollider2D.
compositeOrderThe composite operation order to be used when a CompositeCollider2D is used.
contactCaptureLayersThe layers of other Collider2D involved in contacts with this Collider2D that will be captured.
contactMaskCalculates the effective LayerMask that the Collider2D will use when determining if it can contact another Collider2D.
densityThe density of the collider used to calculate its mass (when auto mass is enabled).
errorStateThe error state that indicates the state of the physics shapes the 2D Collider tried to create. (Read Only)
excludeLayersThe additional Layers that this Collider2D should exclude when deciding if a contact with another Collider2D should happen or not.
forceReceiveLayersThe Layers that this Collider2D can receive forces from during a Collision contact with another Collider2D.
forceSendLayersThe Layers that this Collider2D is allowed to send forces to during a Collision contact with another Collider2D.
frictionThe friction used by the Collider2D.
frictionCombineThe friction combine mode used by the Collider2D.
includeLayersThe additional Layers that this Collider2D should include when deciding if a contact with another Collider2D should happen or not.
isTriggerIs this collider configured as a trigger?
layerOverridePriorityA decision priority assigned to this Collider2D used when there is a conflicting decision on whether a contact between itself and another Collision2D should happen or not.
localToWorldMatrixThe transformation matrix used to transform the Collider physics shapes to world space.
offsetThe local offset of the collider geometry.
shapeCountThe number of active PhysicsShape2D the Collider2D is currently using.
sharedMaterialThe PhysicsMaterial2D that is applied to this collider.
usedByEffectorWhether the collider is used by an attached effector or not.

Methods

Method

Description

CanContactThis method determines if both Colliders can ever come into contact.
CastCasts the Collider shape into the Scene starting at the specified position and rotation.
ClosestPointReturns a point on the perimeter of this Collider that is closest to the specified
position
.
CreateMeshCreates a planar Mesh that is identical to the area defined by the Collider2D geometry.
DistanceCalculates the minimum separation of this collider against another collider.
GetContactCollidersRetrieves all colliders in contact with this Collider, with the results filtered by the
contactFilter
.
GetContactsRetrieves all colliders in contact with this Collider, with the results filtered by the
contactFilter
.
GetShapeBoundsRetrieves a list of Bounds for all PhysicsShape2D created by this Collider2D, and returns the combined Bounds of the retrieved list.
GetShapeHashGenerates a simple hash value based upon the geometry of the Collider2D.
GetShapesGets all the PhysicsShape2D used by the Collider2D.
IsTouchingCheck whether this collider is touching the
collider
or not.
IsTouchingLayersChecks whether this collider is touching any colliders on the specified
layerMask
or not.
OverlapGet a list of all Colliders that overlap this Collider.
OverlapPointCheck if a collider overlaps a point in space.
RaycastCasts a ray into the Scene that starts at the Collider position and ignores the Collider itself.

Enums

Enum

Description

Collider2D.CompositeOperationSpecifies the composite operation to be used by a Collider2D.

Inheritance

Inherited Members

Operators

Operator

Description

operator ==Compares two object references to see if they refer to the same object.
boolDetermines whether the object exists.
operator !=Compares if two objects refer to a different object.