Unity中 Destory()函数销毁对象时不是立刻销毁的,他是一个延迟执行的函数,是在当前帧之后,渲染帧之前销毁对象,例如下面代码:
Destroy(transform.GetChild(0).gameObject);
Debug.Log(transform.childCount);
子物体只有一个,当用Destory函数销毁子物体后,打印子物体个数还是1。
解决方法:
使用DestroyImmediate函数,他是立即销毁对象。
DestroyImmediate(transform.GetChild(0).gameObject);
Debug.Log(transform.childCount);
得到的结果是0。
最后
以上就是傻傻羽毛最近收集整理的关于Unity中Destory销毁对象不是立即销毁的全部内容,更多相关Unity中Destory销毁对象不是立即销毁内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复