The Tilemap Collider 2D component generates collider shapes for tiles on a Tilemap component on the same GameObject. 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 minimize the impact on performance.
属性 | 描述 | |
---|---|---|
Max Tile Change Count | Set 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. Note: 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 component., which can then compose the tile colliders together. Note: This property isn’t available by default. It becomes available when you select a Composite Operation and attach a Composite Collider 2D to the same GameObject. |
|
Material | Select the Physics Material 2D that determines properties of collisions, such as friction and bounce. | |
Is Trigger | Enable this if you want this Collider 2D to behave as a trigger. The physics system ignores this collider when this is enabled. | |
Used by Effector | Enable this if you want the Collider 2D to be used by an attached Effector 2D. | |
Composite Operations | Select the composite operation used by an attached Composite Collider 2D component. Note: When you select any operation besides None, the following properties—Material, Is Trigger, Used By Effector, and Edge Radius—become controlled by the attached Composite Collider 2D component and are no longer available in this collider’s properties. |
|
无 | Select this to have no composite operation take place. | |
Merge | Select this to have this composite operation compose geometry using a Boolean OR operation. | |
Intersect | Select this to have this composite operation compose geometry using a Boolean AND operation. | |
Difference | Select this to have this composite operation compose geometry using a Boolean NOT operation. | |
Flip | Select this to have this composite operation compose geometry using a Boolean XOR operation. | |
Offset | Set the local offset values of the Collider 2D geometry. | |
Layer Overrides | Expand for the Layer override settings. | |
Layer Override Priority | Assign the decision priority that this Collider2D uses when resolving conflicting decisions on whether a contact between itself and another Collision2D should happen or not. Refer to its API page for more information. | |
Include Layers | Select the additional Layers that this Collider 2D should include when deciding if a contact with another Collider2D should happen or not. Refer to its API documentation for more information. | |
Exclude Layers | Select the additional Layers that this Collider 2D should exclude when deciding if a contact with another Collider2D should happen or not. Refer to its API documentation for more information. | |
Force Send Layers | Select the Layers that this Collider 2D is allowed to send forces to during a Collision contact with another Collider2D. Refer to its API documentation for more information. | |
Force Receive Layers | Select the Layers that this Collider 2D can receive forces from during a Collision contact with another Collider2D. Refer to its API documentation for more information. | |
Contract Capture Layers | Select the Layers of other Collider 2D, involved in contacts with this Collider2D, that will be captured. Refer to its API documentation for more information. | |
Callback Layers | Select the Layers that this Collider 2D, during a contact with another Collider2D, will report collision or trigger callbacks for. Refer to its API documentation for more information. |
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:
碰撞体类型 | 功能 |
---|---|
无 | The Tilemap Collider 2D component does not generate any collider shapes for this tile. |
Sprite | 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 smoothens the corners and edges between collider shapes in neighboring 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 Tilemaps.TilemapCollider2D.ProcessTilemapChanges to process them immediately. You can use Tilemaps.TilemapCollider2D-hasTilemapChanges to check if any processing is required.
在 Unity 2020.1 中添加了新的属性 在 2017.2 版中添加了瓦片地图 NewIn20172
TilemapCollider2D
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.