The Tilemap Collider 2D component generates ColliderAn invisible shape that is used to handle physical collisions for an object. A collider doesn’t need to be exactly the same shape as the object’s mesh - a rough approximation is often more efficient and indistinguishable in gameplay. More info
See in Glossary shapes for TilesA simple class that allows a sprite to be rendered on a Tilemap. More info
See in Glossary on a TilemapA GameObject that allows you to quickly create 2D levels using tiles and a grid overlay. More info
See in Glossary component on the same GameObjectThe fundamental object in Unity scenes, which can represent characters, props, scenery, cameras, waypoints, and more. A GameObject’s functionality is defined by the Components attached to it. More info
See in Glossary. When you add or remove Tiles on the Tilemap component, the Tilemap Collider 2D updates the Collider shapes during LateUpdate
. It batches multiple Tile changes together to ensure minimal impact on performance.
Property | Function |
---|---|
Max Tile Change Count | The maximum number of Tile changes (such as adding/removing Tiles to the Tilemap) to accumulate before doing a full Collider rebuild instead of an incremental rebuild. A high number of accumulated changes can cause the incremental rebuild of the Tilemap Collider 2D to be slower than a full rebuild. Decrease this value to resolve this issue. |
Extrusion Factor | Set the amount (in Unity world space units) to extrude the Collider shape of each Tile. This minimizes the gaps between the Collider shapes of neighboring Tiles and brings them to within the minimum Vertex Distance set in the Composite Collider 2D, which can then compose the Tile Colliders together. This property is grayed out and disabled by default. It is only available when Used by Composite is enabled, and a Composite Collider 2D is attached to the same GameObject. |
MaterialAn asset that defines how a surface should be rendered. More info See in Glossary |
A Physics Material that determines properties of collisionsA collision occurs when the physics engine detects that the colliders of two GameObjects make contact or overlap, when at least one has a Rigidbody component and is in motion. More info See in Glossary, such as friction and bounce. |
Is Trigger | Select this check box to have the Tilemap Collider 2D behave as a trigger. |
Used by Effector | Select this check box to make the Tilemap Collider 2D be used by an attached Effector 2D. |
Used by Composite | Select this check box to make this Collider be used by an attached Composite Collider 2D. When Used by Composite is enabled, all properties except Offset are no longer available in the Tilemap Collider 2D component. Instead, the properties are controlled by the attached Composite Collider 2D component. |
Offset | The local offset of the Tilemap Collider 2D geometry. |
The Collider shapes generated for each Tile in the Tilemap depend on the desired Collider type set in the Tile Asset’s properties. The component’s shape generation behavior corresponds to the Collider Types in the following ways:
Collider Type | Function |
---|---|
None | The Tilemap Collider 2D component does not generate any Collider shapes for this Tile. |
SpriteA 2D graphic objects. If you are used to working in 3D, Sprites are essentially just standard textures but there are special techniques for combining and managing sprite textures for efficiency and convenience during development. More info See in Glossary |
The Tilemap Collider 2D component generates a Collider shape based on the Sprite assigned to the Tile. The Collider shape is based on the Custom Physics Shape set for the Sprite. |
Grid | The Tilemap Collider 2D component generates a Collider shape based on the shape of the Grid cell, which is determined by the selected Cell Layout of the Grid component. |
You can use the Tilemap Collider 2D component together with the Composite Collider 2D component. When you add both components to the same Tilemap, Unity composites the Collider shapes of neighboring Tiles together. This smoothes out the corners and edges between Collider shapes in neighbouring Tiles.
Using both components together reduces the number of individual Collider shapes involved in a physics update, which reduces the amount of calculations required, and minimizes the impact on performance.
If you require immediate changes to happen to the Collider, use TilemapCollider2D.ProcessTilemapChanges to process them immediately. You can use TilemapCollider2D.hasTilemapChanges to check if any processing is required.