public static Collider2D OverlapArea(Vector2 pointA,
Vector2 pointB,
int layerMask = DefaultRaycastLayers,
float minDepth = -Mathf.Infinity,
float maxDepth = Mathf.Infinity);

pointA | One corner of the rectangle. |

pointB | Diagonally opposite the point A corner of the rectangle. |

layerMask | Filter to check objects only on specific layers. |

minDepth | Only include objects with a Z coordinate (depth) greater than or equal to this value. |

maxDepth | Only include objects with a Z coordinate (depth) less than or equal to this value. |

**Collider2D**
The collider overlapping the area.

Checks if a collider falls within a rectangular area.

The rectangle is defined by two diagonally opposite corner coordinates in world space. You can think of these as top-left and bottom-right but the test will still work if the ordering of the points is reversed. The optional *layerMask* allows the test to check only for objects on specific layers.

Although the Z axis is not relevant for rendering or collisions in 2D, you can use the *minDepth* and *maxDepth* parameters to filter objects based on their Z coordinate. If more than one collider falls within the area then the one returned will be the one with the lowest Z coordinate value. Null is returned if there are no colliders in the area.

See Also: OverlapAreaAll & OverlapAreaNonAlloc.

public static int OverlapArea(Vector2 pointA,
Vector2 pointB,
ContactFilter2D contactFilter,
Collider2D[] results);

pointA | One corner of the rectangle. |

pointB | Diagonally opposite the point A corner of the rectangle. |

contactFilter | The contact filter used to filter the results differently, such as by layer mask, Z depth. Note that normal angle is not used for overlap testing. |

results | The array to receive results. The size of the array determines the maximum number of results that can be returned. |

**int**
Returns the number of results placed in the `results`

array.

Checks if a collider falls within a rectangular area.

The rectangle is defined by two diagonally opposite corner coordinates in world space. You can think of these as top-left and bottom-right but the test will still work if the ordering of the points is reversed.

This function returns the number of colliders found and places those colliders in the `results`

array. The results can also be filtered by the `contactFilter`

. Note that filtering by normal angle is not available for overlap functions.

public static int OverlapArea(Vector2 pointA,
Vector2 pointB,
ContactFilter2D contactFilter,
List<Collider2D> results);

pointA | One corner of the rectangle. |

pointB | Diagonally opposite the point A corner of the rectangle. |

contactFilter | The contact filter used to filter the results differently, such as by layer mask, Z depth. Note that normal angle is not used for overlap testing. |

results | The list to receive results. |

**int**
Returns the number of results placed in the `results`

list.

Checks if a Collider falls within a rectangular area.

The rectangle is defined by two diagonally opposite corner coordinates in world space. You can think of these as top-left and bottom-right but the test will still work if the ordering of the points is reversed.

The integer return value is the number of results written into the `results`

list. The results list will be resized if it doesn't contain enough elements to report all the results. This prevents memory from being allocated for results when the `results`

list does not need to be resized, and improves garbage collection performance when the query is performed frequently.

The results can also be filtered by the `contactFilter`

.

Note that filtering by normal angle is not available for overlap functions.