Destroyを使うとオブジェクトを破壊することができます。
ここではプレハブの「弾」を、指定秒数後に破棄する命令を書いてみたいと思います。
成果物
![dest2](https://sunagitsune.com/wp-content/uploads/2021/08/dest2.gif)
ゲーム内に作ったプレハブ(オブジェクト)を、指定秒数後に自動で破棄します。
Destoryの使い方
ゲームオブジェクトを破壊
Destroy(オブジェクト,秒数);
※秒数を省略した場合0秒になる
Destroy(オブジェクト,秒数);
※秒数を省略した場合0秒になる
![st3](https://sunagitsune.com/wp-content/uploads/2021/08/st3.gif)
別の記事でプレイヤーキャラクターから弾を撃てるようにしたんですが、
![destroyme1](https://sunagitsune.com/wp-content/uploads/2021/08/destroyme1.png)
この弾は何事もなければどこまでも飛んでいくので、撃てば撃っただけ増え続け、リソースを圧迫し続けます。
それは困るので、しばらくしたら壊れるようにしてみます。
それは困るので、しばらくしたら壊れるようにしてみます。
![destroyme2](https://sunagitsune.com/wp-content/uploads/2021/08/destroyme2.png)
弾のスクリプトに、Destroy(this.gameObject);と書けば、自分自身(オブジェクト)をゲームから除去します。
ヒットした時はこれを実行すればいいんですが、今回はヒットしなかった時の話なので、
ヒットした時はこれを実行すればいいんですが、今回はヒットしなかった時の話なので、
![destroyme3](https://sunagitsune.com/wp-content/uploads/2021/08/destroyme3.png)
最後に数字をつけてDestroy(this.gameObject, 1);のようにします。
一秒後に自分を破棄という時限式の命令になります。これをStartメソッド内で実行してやれば、
一秒後に自分を破棄という時限式の命令になります。これをStartメソッド内で実行してやれば、
![dest1](https://sunagitsune.com/wp-content/uploads/2021/08/dest1.gif)
弾を撃っても、
![dest2](https://sunagitsune.com/wp-content/uploads/2021/08/dest2.gif)
指定秒数後に自動的に消滅します。
![](https://sunagitsune.com/wp-content/uploads/2021/07/computer-1343393_1280-160x90.jpg)
やりたいことから逆引きするUNITYの使い方まとめ
Unityをやりたいことから学習していけるよう、機能・用途別にまとめたページです。C#の命令別の逆引きは現時点で作っていません。2019の時期に書き始めているので、それより前のバージョンについては言及しません。
コメント