Unity 使用 Destroy 方法注意事項


建立時間: 2023年5月20日 21:20
更新時間: 2023年5月20日 21:20

前言

在一個偶然情況下,我使用 Destroy 方法,摧毀某個遊戲物件,接著我判斷此遊戲物件是否存在,結果意外地卻表示存在,但遊戲運行畫面卻有刪除,本篇將分享這個事情是什麼情況。

Destroy 延遲

在使用 Destroy 方法摧毀遊戲物件時,並不會立即摧毀,會延遲一下下,但會在同一幀完成。會有這個狀況並不是漏洞,而是因為遊戲物件被摧毀時,會調用 OnDisable, OnDestroy 這些方法,或者是一些我不知道的程序,所以最快也會在這一幀的 Update 之後才開始進行刪除。

如果真的要立即刪除的話可以使用 DestroyImmediate 方法,目前我還沒使用過這個方法,以後有機會再分享 DestroyImmediate 使用效果,官方建議使用 Destroy 方法,不要使用 DestroyImmediate,可能是讓 Destroy 流程走好走滿比較好,總之要用哪個方法都需注意程式是否如預期運行。

詳細說明請參考官方文件。

參考

觀看次數: 723
destroyimmediateunity
按讚追蹤 Enjoy 軟體 Facebook 粉絲專頁
每週分享資訊技術

一杯咖啡的力量,勝過千言萬語的感謝。

支持我一杯咖啡,讓我繼續創作優質內容,與您分享更多知識與樂趣!