# compositeOrder

> The composite operation order to be used when a CompositeCollider2D is used.

## Definition

* **Type:** Property
* **Namespace:** [UnityEngine](/engine/6000.0/script-reference/unityengine.md)
* **Assembly:** UnityEngine.Physics2DModule

```csharp
public int compositeOrder { get; set; }
```

### Remarks

When this [Collider2D](/engine/6000.0/script-reference/unityengine/collider2d.md) is using any composite operation other than [Collider2D.CompositeOperation.None](/engine/6000.0/script-reference/unityengine/collider2d/compositeoperation/none.md), the composite operation uses the previous composite operation results on the [CompositeCollider2D](/engine/6000.0/script-reference/unityengine/compositecollider2d.md) as the input and applies this [Collider2D](/engine/6000.0/script-reference/unityengine/collider2d.md) geometry using its selected [Collider2D.compositeOperation](/engine/6000.0/script-reference/unityengine/collider2d/compositeoperation-1.md).

The composite order is a simple integer value that is first sorted into ascending order by the [CompositeCollider2D](/engine/6000.0/script-reference/unityengine/compositecollider2d.md) before it applies the composite operations with the lowest value being executed first in order up to the highest values. When the composite order values are identical, the order is undefined. When using only [Collider2D.CompositeOperation.Merge](/engine/6000.0/script-reference/unityengine/collider2d/compositeoperation/merge.md) operations, this order is irrelevant to the final result.

Using this order, it is possible to control which previous [Collider2D](/engine/6000.0/script-reference/unityengine/collider2d.md) that are also using the [CompositeCollider2D](/engine/6000.0/script-reference/unityengine/compositecollider2d.md) are affected by this composite operation.

**NOTE:** After sorting the composite order for all [Collider2D](/engine/6000.0/script-reference/unityengine/collider2d.md), the first composite operation of [Collider2D.CompositeOperation.Merge](/engine/6000.0/script-reference/unityengine/collider2d/compositeoperation/merge.md) will always used, independent of that [Collider2D.compositeOperation](/engine/6000.0/script-reference/unityengine/collider2d/compositeoperation-1.md) property setting. This is due to the fact that the first operation has no input geometry for the operation to complete and only the merge (OR) composite operation results in any geometry!

Additional Resources: [Collider2D.CompositeOperation](/engine/6000.0/script-reference/unityengine/collider2d/compositeoperation.md), [Collider2D.compositeOperation](/engine/6000.0/script-reference/unityengine/collider2d/compositeoperation-1.md) and [CompositeCollider2D](/engine/6000.0/script-reference/unityengine/compositecollider2d.md).
