はじめに
こんにちは!Unityの使い方シリーズ第8回へようこそ!
「ゲームの中で敵を倒したり、不要なアイテムを消したい!」という場面はよくありますよね?
Unityでは、Destroyを使うことで簡単にオブジェクトを消すことができます。
この記事では、Destroyの基本的な使い方を解説しながら、実際に動くサンプルを作成してみましょう。
1. Destroyって何?
DestroyはUnityで使えるメソッドの一つで、シーン上のオブジェクトを削除するためのものです。例えば、敵キャラを倒したときにその敵をシーンから消す場合などに使います。

このメソッドを使うことで、不要になったオブジェクトを効率よく処理できるので、ゲームの動作が軽くなります。
2. Destroyの基本的な使い方
Destroyは、以下のように簡単に使えます。
Destroy(オブジェクト);
例えば、Destroy(gameObject);と書くと、そのスクリプトがアタッチされているオブジェクトが消えます。
さらに、タイマーを設定して「何秒後に消す」といったこともできます。
Destroy(オブジェクト, 秒数);
例:Destroy(gameObject, 3.0f);
→ この場合、3秒後にオブジェクトが消えます。
3. タイマー付きでオブジェクトを消す方法

Destroyには便利なオプションとして「タイマー機能」があります。この機能を使えば、演出のために一定時間後にオブジェクトを消すことができます。例えば、爆発エフェクトを再生した後に、そのエフェクトオブジェクトを削除するときに役立ちます。
例:
void Start()
{
Destroy(gameObject, 5.0f); // このオブジェクトを5秒後に消す
}
4. 実際にDestroyを使ってみよう(簡単なサンプル)
ステップ1:新しい3Dオブジェクトを作る
- ヒエラルキー(Hierarchy)ウィンドウで右クリックします。
- 「3D Object」→「Cube」を選択してキューブを作ります。
ステップ2:スクリプトを作成する
- プロジェクトウィンドウを右クリックして「Create」→「C# Script」を選択します。
(Unity6では「Create」→「Scripting」→「C# Script」) - スクリプトの名前を「DestroyExample」とします。
ステップ3:スクリプトを編集する
以下のコードをスクリプトに記述してください。
using UnityEngine;
public class DestroyExample : MonoBehaviour
{
void Start()
{
// このオブジェクトを3秒後に消す
Destroy(gameObject, 3.0f);
}
}
ステップ4:スクリプトをアタッチする
- 作成したスクリプト「DestroyExample」をヒエラルキーのキューブにドラッグ&ドロップします。
- 再生ボタンを押してみましょう。3秒後にキューブが消えるのが確認できます!
あわせて読みたい
- Unity初心者向け!オブジェクトを複数回クリックで削除する方法
クリック回数に応じて削除する仕組みを解説! - Unityでレイキャストを使ってクリックしたオブジェクトを削除する方法!初心者向け解説
Raycastを使ったスマートな削除方法を学べます。 - Unity初心者向け:削除可能オブジェクトと削除不可オブジェクトの作り方
「このオブジェクトだけ削除可能」といった制御を加えたいときに。 - Unity初心者必見!OnCollisionなどで複数のオブジェクトを指定して消去する方法
接触イベントによる削除処理の基礎を丁寧に解説。 - 初心者向けUnityチュートリアル:SphereがCubeにぶつかると1秒後に消える仕組みを作る方法
物理演算と組み合わせた自動削除の実装にチャレンジ!
よくある質問(Q&A)
- QDestroyを使うとメモリは解放されるの?
- A
はい、
Destroyを使うとUnityのメモリ管理によってそのオブジェクトは解放されます。ただし、使わなくなった変数やリストも一緒に片付けることを忘れないでください。
- Q特定のスクリプトだけを削除することはできる?
- A
はい、
Destroyを使えば特定のコンポーネントを削除することも可能です。
例えば、Destroy(GetComponent<コンポーネント名>());と書くことでそのコンポーネントだけを削除できます。
- QDestroyを使うときの注意点は?
- A
Destroyを呼び出すタイミングに注意しましょう。例えば、重要なオブジェクトを間違って消してしまうと、ゲームが正常に動かなくなる可能性があります。テストをしっかり行いましょう。
おわりに
いかがでしたか?「Destroy」を使うことで、ゲームの中でオブジェクトを消す仕組みが簡単に作れることが分かったと思います。ゲーム開発では、こうした小さなスクリプトの積み重ねが、完成度の高い作品につながります。今回学んだことを活かして、あなたもどんどんオリジナルゲームを作ってみてください!
Unity初心者でも簡単!アセットを活用してゲーム開発を加速しよう!
Unity Asset Storeには、初心者でもすぐに使える便利なアセットがたくさんあります。
でも「どれを使えばいいの?」「どう活用すればいいの?」と迷っていませんか?
この記事では、初心者向けのおすすめアセットとその活用法を詳しく解説!
ゲーム開発をもっと楽しく、効率的に進めたいなら必見です!
あなたのゲーム開発ライフがさらに楽しくなることを願っています。それではまた次回の記事でお会いしましょう!








※当サイトはアフィリエイト広告を利用しています。リンクを経由して商品を購入された場合、当サイトに報酬が発生することがあります。
※本記事に記載しているAmazon商品情報(価格、在庫状況、割引、配送条件など)は、執筆時点のAmazon.co.jp上の情報に基づいています。
最新の価格・在庫・配送条件などの詳細は、Amazonの商品ページをご確認ください。