Unity事例ノート

UNITY

発射したPrefabを削除する

前方に発射したボールのPrefabを、あるところまで行けば消えるように作成してみましょう。

クリックでボールを発射し、Z座標20になれば消えていきます。

ミサイルを使ったゲームなど、プレハブを何度も出現させる場合、適切なタイミングで削除するのが良い方法です。

関連記事:
1秒後にPrefabを削除する
落下したプレハブを削除するしくみ
制限時間になればPrefabを全削除
弾が消えなければ次を撃てなくする

発射元のスクリプト

空のオブジェクトを作成します。

BallShot.csを作成して、GameObjectに追加します。

BallShot.csを記述します。

クリックでRay(光線)を飛ばし、その方向に向けて、ボールを飛ばす仕組みです。

ボールのPrefabを生成するたびに、objに格納して、リジッドボディを取得しています。

プレハブを消すスクリプト

次は、ボールのPrefabを作成していきましょう。

Sphereオブジェクトを作成し、色をつけました。

Sphereにリジッドボディを追加します。

BallDestroy.csを作成して、Sphereに追加します。

BallDestroy.csを記述します。

Sphereをプロジェクトビューにドラッグ&ドロップして、Prefabデータにします。

Sphereの元データは削除します。

GameObjectを選択しすると、プレハブのフィールドが出来ています。

ここに、Sphereのプレハブを入れます。

ゲームプレイしてみましょう。

クリックでボール発射、Zが20のところで消えていきます。

関連記事:
1秒後にPrefabを削除する
落下したプレハブを削除するしくみ
制限時間になればPrefabを全削除
弾が消えなければ次を撃てなくする