Documentation

Unity Engine


User Manual

Script Reference

Unity Engine


GetContacts

Retrieves all contact points in for contacts between with the collider1 and collider2, with the results filtered by the ContactFilter2D.
Read time 14 minutesLast updated 8 days ago

Definition

  • Type: Method
  • Namespace: UnityEngine
  • Assembly: UnityEngine.Physics2DModule

GetContacts(Collider2D, Collider2D, ContactFilter2D, ContactPoint2D[])

Retrieves all contact points in for contacts between with the
collider1
and
collider2
, with the results filtered by the
ContactFilter2D
.
public static int GetContacts(Collider2D collider1, Collider2D collider2, ContactFilter2D contactFilter, ContactPoint2D[] contacts)

Parameters

collider1

The Collider to check if it has contacts against
collider2
.

collider2

The Collider to check if it has contacts against
collider1
.

contactFilter

The contact filter used to filter the results differently, such as by layer mask, Z depth, or normal angle.

An array of ContactPoint2D used to receive the results.

Returns

Type

Description

intReturns the number of contacts placed in the
contacts
array.

Remarks

Contacts involving a Collider2D set to be a trigger will never be returned here because trigger Colliders do not have contact points. This is true even if the
contactFilter
has its ContactFilter2D.useTriggers set to true.
When retrieving contacts, you should ensure that the provided array is large enough to contain all the contacts you are interested in. Typically the array would be reused therefore it would be a size to return a reasonable quantity of contacts. This function also means that no allocations occur which means no work is produced for the garbage collector.

GetContacts(Collider2D, ContactPoint2D[])

Retrieves all contact points in contact with the
Collider
.
public static int GetContacts(Collider2D collider, ContactPoint2D[] contacts)

Parameters

collider


An array of ContactPoint2D used to receive the results.

Returns

Type

Description

intReturns the number of contacts placed in the
contacts
array.

Remarks

Contacts involving a Collider2D set to be a trigger will never be returned here because trigger Colliders do not have contact points.
When retrieving contacts, you should ensure that the provided array is large enough to contain all the contacts you are interested in. Typically the array would be reused therefore it would be a size to return a reasonable quantity of contacts. This function also means that no allocations occur which means no work is produced for the garbage collector.

GetContacts(Collider2D, ContactFilter2D, ContactPoint2D[])

Retrieves all contact points in contact with the
Collider
, with the results filtered by the
ContactFilter2D
.
public static int GetContacts(Collider2D collider, ContactFilter2D contactFilter, ContactPoint2D[] contacts)

Parameters

collider


contactFilter

The contact filter used to filter the results differently, such as by layer mask, Z depth, or normal angle.

An array of ContactPoint2D used to receive the results.

Returns

Type

Description

intReturns the number of contacts placed in the
contacts
array.

Remarks

Contacts involving a Collider2D set to be a trigger will never be returned here because trigger Colliders do not have contact points. This is true even if the
contactFilter
has its ContactFilter2D.useTriggers set to true.
When retrieving contacts, you should ensure that the provided array is large enough to contain all the contacts you are interested in. Typically the array would be reused therefore it would be a size to return a reasonable quantity of contacts. This function also means that no allocations occur which means no work is produced for the garbage collector.

GetContacts(Collider2D, Collider2D[])

Retrieves all Colliders in contact with the
Collider
.
public static int GetContacts(Collider2D collider, Collider2D[] colliders)

Parameters

collider


colliders

Returns

Type

Description

intReturns the number of Colliders placed in the
Colliders
array.

Remarks

When retrieving contacts, you should ensure that the provided array is large enough to contain all the contacts you are interested in. Typically the array would be reused therefore it would be a size to return a reasonable quantity of contacts. This function also means that no allocations occur which means no work is produced for the garbage collector.

GetContacts(Collider2D, ContactFilter2D, Collider2D[])

Retrieves all Colliders in contact with the
Collider
, with the results filtered by the
ContactFilter2D
.
public static int GetContacts(Collider2D collider, ContactFilter2D contactFilter, Collider2D[] colliders)

Parameters

collider


contactFilter

The contact filter used to filter the results differently, such as by layer mask, Z depth, or normal angle.

colliders

Returns

Type

Description

intReturns the number of Colliders placed in the
Colliders
array.

Remarks

When retrieving contacts, you should ensure that the provided array is large enough to contain all the contacts you are interested in. Typically the array would be reused therefore it would be a size to return a reasonable quantity of contacts. This function also means that no allocations occur which means no work is produced for the garbage collector.

GetContacts(Rigidbody2D, ContactPoint2D[])

Retrieves all contact points in contact with any of the Collider(s) attached to this rigidbody.
public static int GetContacts(Rigidbody2D rigidbody, ContactPoint2D[] contacts)

Parameters

rigidbody

The rigidbody to retrieve contacts for. All Colliders attached to this rigidbody will be checked.

An array of ContactPoint2D used to receive the results.

Returns

Type

Description

intReturns the number of contacts placed in the
contacts
array.

Remarks

Contacts involving a Collider2D set to be a trigger will never be returned here because trigger Colliders do not have contact points.
When retrieving contacts, you should ensure that the provided array is large enough to contain all the contacts you are interested in. Typically the array would be reused therefore it would be a size to return a reasonable quantity of contacts. This function also means that no allocations occur which means no work is produced for the garbage collector.

GetContacts(Rigidbody2D, ContactFilter2D, ContactPoint2D[])

Retrieves all contact points in contact with any of the Collider(s) attached to this rigidbody, with the results filtered by the
ContactFilter2D
.
public static int GetContacts(Rigidbody2D rigidbody, ContactFilter2D contactFilter, ContactPoint2D[] contacts)

Parameters

rigidbody

The rigidbody to retrieve contacts for. All Colliders attached to this rigidbody will be checked.

contactFilter

The contact filter used to filter the results differently, such as by layer mask, Z depth, or normal angle.

An array of ContactPoint2D used to receive the results.

Returns

Type

Description

intReturns the number of contacts placed in the
contacts
array.

Remarks

Contacts involving a Collider2D set to be a trigger will never be returned here because trigger Colliders do not have contact points. This is true even if the
contactFilter
has its ContactFilter2D.useTriggers set to true.
When retrieving contacts, you should ensure that the provided array is large enough to contain all the contacts you are interested in. Typically the array would be reused therefore it would be a size to return a reasonable quantity of contacts. This function also means that no allocations occur which means no work is produced for the garbage collector.

GetContacts(Rigidbody2D, Collider2D[])

Retrieves all Colliders in contact with any of the Collider(s) attached to this rigidbody.
public static int GetContacts(Rigidbody2D rigidbody, Collider2D[] colliders)

Parameters

rigidbody

The rigidbody to retrieve contacts for. All Colliders attached to this rigidbody will be checked.

colliders

Returns

Type

Description

intReturns the number of Colliders placed in the
Colliders
array.

Remarks

When retrieving contacts, you should ensure that the provided array is large enough to contain all the contacts you are interested in. Typically the array would be reused therefore it would be a size to return a reasonable quantity of contacts. This function also means that no allocations occur which means no work is produced for the garbage collector.

GetContacts(Rigidbody2D, ContactFilter2D, Collider2D[])

Retrieves all Colliders in contact with any of the Collider(s) attached to this rigidbody, with the results filtered by the
ContactFilter2D
.
public static int GetContacts(Rigidbody2D rigidbody, ContactFilter2D contactFilter, Collider2D[] colliders)

Parameters

rigidbody

The rigidbody to retrieve contacts for. All Colliders attached to this rigidbody will be checked.

contactFilter

The contact filter used to filter the results differently, such as by layer mask, Z depth, or normal angle.

colliders

Returns

Type

Description

intReturns the number of Colliders placed in the
Colliders
array.

Remarks

When retrieving contacts, you should ensure that the provided array is large enough to contain all the contacts you are interested in. Typically the array would be reused therefore it would be a size to return a reasonable quantity of contacts. This function also means that no allocations occur which means no work is produced for the garbage collector.

GetContacts(Collider2D, Collider2D, ContactFilter2D, List<ContactPoint2D>)

Retrieves all contact points in for contacts between with the
collider1
and
collider2
, with the results filtered by the
contactFilter2D
.
public static int GetContacts(Collider2D collider1, Collider2D collider2, ContactFilter2D contactFilter, List<ContactPoint2D> contacts)

Parameters

collider1

The Collider to check if it has contacts against
collider2
.

collider2

The Collider to check if it has contacts against
collider1
.

contactFilter

The contact filter used to filter the results differently, such as by layer mask, Z depth, or normal angle.

A list of ContactPoint2D used to receive the results.

Returns

Type

Description

intReturns the number of contacts placed in the
contacts
list.

Remarks

Contacts involving a Collider2D set to be a trigger will never be returned here because trigger Colliders do not have contact points. This is true even if the
contactFilter
has its ContactFilter2D.useTriggers set to true.
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
.

GetContacts(Collider2D, List<ContactPoint2D>)

Retrieves all contact points in contact with the
Collider
.
public static int GetContacts(Collider2D collider, List<ContactPoint2D> contacts)

Parameters

collider


A list of ContactPoint2D used to receive the results.

Returns

Type

Description

intReturns the number of contacts placed in the
contacts
list.

Remarks

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.

GetContacts(Collider2D, ContactFilter2D, List<ContactPoint2D>)

Retrieves all contact points in contact with the
Collider
, with the results filtered by the
contactFilter2D
.
public static int GetContacts(Collider2D collider, ContactFilter2D contactFilter, List<ContactPoint2D> contacts)

Parameters

collider


contactFilter

The contact filter used to filter the results differently, such as by layer mask, Z depth, or normal angle.

A list of ContactPoint2D used to receive the results.

Returns

Type

Description

intReturns the number of contacts placed in the
contacts
list.

Remarks

Contacts involving a Collider2D set to be a trigger will never be returned here because trigger Colliders do not have contact points. This is true even if the
contactFilter
has its ContactFilter2D.useTriggers set to true.
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
.

GetContacts(Collider2D, List<Collider2D>)

Retrieves all Colliders in contact with the
Collider
.
public static int GetContacts(Collider2D collider, List<Collider2D> colliders)

Parameters

Returns

Type

Description

intReturns the number of Colliders placed in the
Colliders
list.

Remarks

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.

GetContacts(Collider2D, ContactFilter2D, List<Collider2D>)

Retrieves all Colliders in contact with the
Collider
, with the results filtered by the
contactFilter2D
.
public static int GetContacts(Collider2D collider, ContactFilter2D contactFilter, List<Collider2D> colliders)

Parameters

collider


contactFilter

The contact filter used to filter the results differently, such as by layer mask, Z depth, or normal angle.

Returns

Type

Description

intReturns the number of Colliders placed in the
Colliders
list.

Remarks

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
.

GetContacts(Rigidbody2D, List<ContactPoint2D>)

Retrieves all contact points in contact with any of the Collider(s) attached to this Rigidbody.
public static int GetContacts(Rigidbody2D rigidbody, List<ContactPoint2D> contacts)

Parameters

rigidbody

The Rigidbody to retrieve contacts for. All Colliders attached to this Rigidbody will be checked.

A list of ContactPoint2D used to receive the results.

Returns

Type

Description

intReturns the number of contacts placed in the
contacts
list.

Remarks

Contacts involving a Collider2D set to be a trigger will never be returned here because trigger Colliders do not have contact points.
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
.

GetContacts(Rigidbody2D, ContactFilter2D, List<ContactPoint2D>)

Retrieves all Colliders in contact with any of the Collider(s) attached to this Rigidbody, with the results filtered by the
contactFilter2D
.
public static int GetContacts(Rigidbody2D rigidbody, ContactFilter2D contactFilter, List<ContactPoint2D> contacts)

Parameters

rigidbody

The Rigidbody to retrieve contacts for. All Colliders attached to this Rigidbody will be checked.

contactFilter

Returns the number of contacts placed in the
contacts
list.

A list of ContactPoint2D used to receive the results.

Returns

Type

Description

intReturns the number of contacts placed in the
contacts
list.

Remarks

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
.

GetContacts(Rigidbody2D, List<Collider2D>)

Retrieves all Colliders in contact with any of the Collider(s) attached to this Rigidbody.
public static int GetContacts(Rigidbody2D rigidbody, List<Collider2D> colliders)

Parameters

rigidbody

The Rigidbody to retrieve contacts for. All Colliders attached to this Rigidbody will be checked.

Returns

Type

Description

intReturns the number of Colliders placed in the
Colliders
list.

Remarks

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.

GetContacts(Rigidbody2D, ContactFilter2D, List<Collider2D>)

Retrieves all Colliders in contact with any of the Collider(s) attached to this Rigidbody, with the results filtered by the
contactFilter2D
.
public static int GetContacts(Rigidbody2D rigidbody, ContactFilter2D contactFilter, List<Collider2D> colliders)

Parameters

rigidbody

The Rigidbody to retrieve contacts for. All Colliders attached to this Rigidbody will be checked.

contactFilter

The contact filter used to filter the results differently, such as by layer mask, Z depth, or normal angle.

Returns

Type

Description

intReturns the number of Colliders placed in the
Colliders
list.

Remarks

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
.