トリガー条件
オブジェクトがどのような条件で破壊されるか(トリガー条件)について解説します。 InstantDestructionSimple を使用した場合、主に「衝突での破壊」と「スクリプトからのメソッド呼び出しによる破壊」の2つの方法があります。
衝突での破壊
オブジェクトに他のコライダーが接触した際に、自動的に破壊がトリガーされます。
- 自動セットアップ: コンポーネント追加時に、メッシュのサイズに合わせた
BoxColliderが自動で付与されます。 - OnCollision / OnTrigger に対応: 物理的な衝突(
OnCollisionEnter)およびトリガーによる接触(OnTriggerEnter)の双方に対応しています。 - 爆発中心の自動計算: 衝突時には、対象との接点(接触ポイント)が自動的に計算され、そこを起点として破片が飛び散ります。
OnTriggerメソッド呼び出しでの破壊
任意のスクリプトから直接メソッドを呼び出し、好きなタイミングで破壊を実行することができます。
OnTrigger()オブジェクトのバウンディングボックス中心を起点として破壊を実行します。OnTrigger(Vector3 expPos)引数にワールド座標を渡すことで、指定した位置(爆発地点など)を起点として破壊を実行します。レイキャスト(Physics.Raycast)などで検出した着弾点(RaycastHit.point)を渡すことで、弾が当たった箇所を中心に破片を吹き飛ばす表現が可能です。
破壊の条件が整ったら、次は破壊時の見た目を華やかにする エフェクトとサウンド (Effects) の設定に進みましょう。
