2 つのコライダーの衝突判定を無効化します
これは例えば発射物が発射したオブジェクトに衝突しないようにする場合などに役に立ちます。
IgnoreCollision は影響されたコライダーのトリガー状態をリセットします。そのため、この機能の呼び出しに応じて OnTriggerExit と OnTriggerEnter メッセージを受け取るかもしれません。
IgnoreCollision にはいくつかの制約があります:
1) 永続しない。つまりシーン保存したとき IgnoreCollision 状態はエディターに格納されません。
2) 有効なゲームオブジェクトにしか IgnoreCollision を適用できません。
コライダーまたはアタッチされた Rigidbody を無効化するとき IgnoreCollision 状態は失われ、再び Physics.IgnoreCollision を呼び出しする必要があります。
See Also: Physics.IgnoreLayerCollision.
// Instantiate a bullet and make it ignore collisions with this object.
var bulletPrefab : Transform;
function Start () { var bullet = Instantiate(bulletPrefab) as Transform; Physics.IgnoreCollision(bullet.GetComponent.<Collider>(), GetComponent.<Collider>()); }
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>()); } }