# IsTouching

> Checks whether the passed Colliders are in contact or not.

## Definition

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

## IsTouching(Collider2D, Collider2D)

Checks whether the passed Colliders are in contact or not.

```csharp
public static bool IsTouching(Collider2D collider1, Collider2D collider2)
```

### Parameters

**** (\[Collider2D]\(/engine/6000.5/script-reference/unityengine/collider2d)): The Collider to check if it is touching `collider2`.**** (\[Collider2D]\(/engine/6000.5/script-reference/unityengine/collider2d)): The Collider to check if it is touching `collider1`.

### Returns

| Type                                                          | Description                                         |
| ------------------------------------------------------------- | --------------------------------------------------- |
| [bool](https://learn.microsoft.com/dotnet/api/system.boolean) | Whether `collider1` is touching `collider2` or not. |

### Remarks

It is important to understand that checking whether Colliders are touching or not is performed against the last physics engine update; that is the state of touching Colliders at that time. If you have just added a new [Collider2D](/engine/6000.5/script-reference/unityengine/collider2d.md) or have moved a [Collider2D](/engine/6000.5/script-reference/unityengine/collider2d.md) but a physics update has not yet taken place then the Colliders will not be shown as touching. This function returns the same collision results as the physics collision or trigger callbacks.

## IsTouching(Collider2D, Collider2D, ContactFilter2D)

Checks whether the passed Colliders are in contact or not.

```csharp
public static bool IsTouching(Collider2D collider1, Collider2D collider2, ContactFilter2D contactFilter)
```

### Parameters

**** (\[Collider2D]\(/engine/6000.5/script-reference/unityengine/collider2d)): The Collider to check if it is touching `collider2`.**** (\[Collider2D]\(/engine/6000.5/script-reference/unityengine/collider2d)): The Collider to check if it is touching `collider1`.**** (\[ContactFilter2D]\(/engine/6000.5/script-reference/unityengine/contactfilter2d)): The contact filter used to filter the results differently, such as by layer mask, Z depth, or normal angle.

### Returns

| Type                                                          | Description                                         |
| ------------------------------------------------------------- | --------------------------------------------------- |
| [bool](https://learn.microsoft.com/dotnet/api/system.boolean) | Whether `collider1` is touching `collider2` or not. |

### Remarks

It is important to understand that checking whether Colliders are touching or not is performed against the last physics engine update; that is the state of touching Colliders at that time. If you have just added a new [Collider2D](/engine/6000.5/script-reference/unityengine/collider2d.md) or have moved a [Collider2D](/engine/6000.5/script-reference/unityengine/collider2d.md) but a physics update has not yet taken place then the Colliders will not be shown as touching. This function returns the same collision results as the physics collision or trigger callbacks.

## IsTouching(Collider2D, ContactFilter2D)

Checks whether the passed Colliders are in contact or not.

```csharp
public static bool IsTouching(Collider2D collider, ContactFilter2D contactFilter)
```

### Parameters

**** (\[Collider2D]\(/engine/6000.5/script-reference/unityengine/collider2d)): **** (\[ContactFilter2D]\(/engine/6000.5/script-reference/unityengine/contactfilter2d)): The contact filter used to filter the results differently, such as by layer mask, Z depth, or normal angle.

### Returns

| Type                                                          | Description                                                                                   |
| ------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
| [bool](https://learn.microsoft.com/dotnet/api/system.boolean) | Whether the `Collider` is touching any other Collider filtered by the `contactFilter` or not. |

### Remarks

It is important to understand that checking whether Colliders are touching or not is performed against the last physics engine update; that is the state of touching Colliders at that time. If you have just added a new [Collider2D](/engine/6000.5/script-reference/unityengine/collider2d.md) or have moved a [Collider2D](/engine/6000.5/script-reference/unityengine/collider2d.md) but a physics update has not yet taken place then the Colliders will not be shown as touching. This function returns the same collision results as the physics collision or trigger callbacks.
