养生 装修 购物 美食 感冒 便秘 营销 加盟 小吃 火锅 管理 创业 搭配 减肥 培训 旅游

Unity 学习教程 之 销毁Destroy相关函数注意点

时间:2024-09-29 07:28:05

Unity学习教程之销毁Destroy相关函数注意点。本节介绍,在Un坡纠课柩ity开发中,使用销毁函数Destroy()和DestroyImmediate()销毁物体的区别和注意事项,具体如下

工具/原料

Unity

Unity学习教程之销毁Destroy相关函数注意点

1、打开Unity,新建一个空工程,具体如下图

Unity 学习教程 之 销毁Destroy相关函数注意点

2、在场景中,新建一个“Cube”和“Sphere”,并且调整好他们的布局,具体如下图

Unity 学习教程 之 销毁Destroy相关函数注意点

3、在工程中,新建一个脚本,双击脚本或者右键“OpenC#Project”打开脚本,具体如下图

Unity 学习教程 之 销毁Destroy相关函数注意点

4、打开脚本编写,首先设置两个变量获取物体,然后编写Destroy()和DestroyImmediate()函数,分别销毁并打印,具体代码和代码说明如下图

Unity 学习教程 之 销毁Destroy相关函数注意点

5、脚本编译正确,回到Unity界面,在场景中新建空物体“蘅荫酸圉GameObject”,然后把脚本挂载上去,并且把场景中的“Cube”和“Sphere”分别赋值给脚本,具体如下图

Unity 学习教程 之 销毁Destroy相关函数注意点

6、运行场景,分别按下“A”和“S”键,场景中“Cube”和“Sphere”都被销毁,控制台上,打印“Cube”和“null”,具体如下图

Unity 学习教程 之 销毁Destroy相关函数注意点

7、综上所诉:(1)obj并不赦闺尴蚯会立即销毁,而是需要等待下一个Update更新,所以还是可以被print出来;(2)DestroyImmediate立即对对像进行销毁,print出来是nu造婷用痃ll;(3)Destroy销毁场景中的物体,但内存中还存在,当令它需要销毁时,只是给一个标识。而内存中它依然是存在的,只有当内存不够,或一段时间没有再次被引用时(或者更多合理的条件满足),机制才会将它销毁并释放内存;(4)这样做的目的就是为了避免频繁对内存的读写操作。回收器会定时清理一次内存中引用计数为0的对象,很可能你的要销毁的对象在其他地方还有引用而你自己不清楚,直接销毁可能导致其他地方空引用错误;(5)建议使用平常Destroy函数,而不是DestroyImmediate函数;

8、到此,《Unity学习教程之销毁Destroy相关函数注意点》讲解结,谢谢

© 一点知识