1
/
5

【Unity】Destroyメソッドでオブジェクトが破棄されるタイミング【株式会社ライトコード】

弊社エンジニアの記事になります。

Destroyメソッドの使い方について

Unityでゲームを作る際、例えばキャラクターが弾を撃ち、敵を倒す場合、弾が敵に当たった時に弾のオブジェクトをシーン上から削除する必要が出てくるだろう。
使い方は以下の通り。

// 特定のオブジェクトを破棄する
GameObject bullet = GameObject.Find("Bullet");
Destroy(bullet);

// このスクリプトがついたオブジェクトを破棄する
Destroy(gameObject);

ただし、Destroyはコンポーネントも削除できるので、書き方によってはオブジェクトは残ってしまう

// このスクリプトを破棄する(オブジェクトは残る)
Destroy(this);

var canvasGroup = gameObject.GetComponent();
// CanvasGroupのコンポーネントを破棄する(オブジェクトは残る)
Destroy(canvasGroup);

Destroyメソッドでオブジェクトが破棄されるタイミング

本題のDestroyメソッドでオブジェクトが破棄されるタイミングは、
Destroyメソッドが呼ばれたフレームの最後
ライフサイクルのOnDestroyに当たる部分になる。

https://docs.unity3d.com/ja/2023.2/Manual/ExecutionOrder.html

実際に検証

コード:

using UnityEngine;

コード
public class Gun : MonoBehaviour
{
GameObject bullet;
int frameCount;

void Start()
{
bullet = GameObject.Find("Bullet");
frameCount = 0;
}

void Update()
{
frameCount += 1;
if (bullet != null)
{
// bulletがまだあったら破棄する
Destroy(bullet);
}

// Destroy後に判定する
if (bullet == null)
{
Debug.Log($"{frameCount}フレーム目: bullet is null");
}
else
{
Debug.Log($"{frameCount}フレーム目: bullet is not null");
}
}
}

実行結果:

記事の続きは下のリンクをクリック!

https://rightcode.co.jp/blogs/45482


エンジニア積極採用中です!

現在、WEBエンジニア、モバイルエンジニア、デザイナー、営業などを積極採用中です!

採用ページはこちら:https://rightcode.co.jp/recruit

社員の声や社風などを知りたい方はこちら:https://rightcode.co.jp/blogs?category=life

社長と一杯飲みながらお話しませんか?(転職者向け)

特設ページはこちら: https://rightcode.co.jp/gohan-sake-president-talk

もっとワクワクしたいあなたへ

現在、ライトコードでは「WEBエンジニア」「モバイルエンジニア」「ゲームエンジニア」、「デザイナー」「WEBディレクター」「営業」などを積極採用中です!

ライトコードは技術力に定評のある受託開発をメインにしているIT企業です。

有名WEBサービスやアプリの受託開発などの企画、開発案件が目白押しの状況です。

  • もっと大きなことに挑戦したい!
  • エンジニアとしてもっと成長したい!
  • モダンな技術に触れたい!

現状に満足していない方は、まずは、エンジニアとしても第一線を走り続ける弊社代表と気軽にお話してみませんか?

ネット上では、ちょっとユルそうな会社に感じると思いますが(笑)、
実は技術力に定評があり、沢山の実績を残している会社ということをお伝えしたいと思っております。

  • ライトコードの魅力を知っていただきたい!
  • 社風や文化なども知っていただきたい!
  • 技術に対して熱意のある方に入社していただきたい!

一度、【Wantedly内の弊社ページ】や【コーポレートサイト】をのぞいてみてください。

【コーポレートサイト】https://rightcode.co.jp/

【採用募集】https://rightcode.co.jp/recruit(こちらからの応募がスムーズ)

【wantedlyぺージ】https://www.wantedly.com/companies/rightcode

Invitation from 株式会社ライトコード
If this story triggered your interest, have a chat with the team?
株式会社ライトコード's job postings

Weekly ranking

Show other rankings
Like Hiroyuki Choshi's Story
Let Hiroyuki Choshi's company know you're interested in their content