Version: 5.4

Physics.IgnoreCollision

Cambiar al Manual
public static void IgnoreCollision (Collider collider1, Collider collider2, bool ignore= true);

Descripción

Hace que el sistema de detección de colisiones ignore todas las colisiones entre collider1 y collider2.

Esto es útil, digamos, para prevenir que los proyectiles colisionen con los objetos que los disparan.

Tenga en cuenta que IgnoreCollision re-iniciará el estado trigger de los colliders afectados, por lo que podría recibir mensajes OnTriggerExit y OnTriggerEnter en respuesta a llamar esto.

IgnoreCollision tiene unas pocas limitaciones: 1) No es persistente. Esto significa que el estado de colisión ignorado no se almacenará en el editor al guardar una escena. 2) You can only apply the ignore collision to colliders in active game objects. When deactivating the collider or attached rigidbody the IgnoreCollision state will be lost and you have to call Physics.IgnoreCollision again. See Also: Physics.IgnoreLayerCollision.

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour { public Transform bulletPrefab; void Start() { Transform bullet = Instantiate(bulletPrefab) as Transform; Physics.IgnoreCollision(bullet.GetComponent<Collider>(), GetComponent<Collider>()); } }