[开发者心得] 当我们destroy()的时候,我们销毁了什么?

[复制链接]
880 |0
山山山 发表于 2023-6-30 15:27:52 | 显示全部楼层 |阅读模式
本帖最后由 山山山 于 2023-11-20 15:50 编辑

论坛中有一个问题:请问当GameObject调用destroy()方法删除后,对这个GameObject的引用会变成什么?例如我将一个GameObject存在一个Map里,然后我将这个GO destroy,那么我应该怎么判断存储在Map中的这个GO已经被destroy了? 尝试了判断其引用是否为null或者undefined,似乎都不行


销毁的方法会在开发中经常使用,但销毁时具体发生了什么,到底有什么东西被销毁了?本文将通过一个实验介绍引擎中GameObject销毁的逻辑。

开始实验

1. 首先,让我们创建一个预制体,这个预制体包含两个子物体和一个脚本。
MetaApp20230630-145759.jpeg

2. 接着,让我们写出来它的生成和销毁逻辑。在这个过程中,我们通过访问这个预制体和它的子对象的属性来判断他们是否存在。

测试项目:
testDestroy.rar (86.13 KB, 下载次数: 48)
回复

使用道具 举报

热门版块
快速回复 返回顶部 返回列表