Unity 动态添加或移除预制件
Posted newchenxf
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity 动态添加或移除预制件相关的知识,希望对你有一定的参考价值。
具体而言,指的是在代码中,动态添加或删除预制件。
这种功能,一般用于切换副本,地图等场景。
例如,做两个预制件,一个是主城,一个是副本。那可以通过代码,来动态加载2个预制件,来切换场景。
核心函数,是GameObject.Instantiate
和 GameObject.Destroy
。
具体办法:
先把预制件放到Assets/Resouces
目录下,如果文件多的话,可以再叠加个目录,如prefab。例如,绝对路径是Assets/Resouces/prefab/ExitZone.prefab
。
则在你所在的Scene的任何一个挂载脚本下,执行如下代码:
tempObject = Resources.Load("prefab/ExitZone") as GameObject;
GameObject.Instantiate(tempObject);
注意,后缀.prefab
不要加。
这样,运行期间,就会添加这个对象。
如果你运行期间,用完prefab还想删除咋办?
也很简单,执行
GameObject.Destroy(this.tempObject);
以上是关于Unity 动态添加或移除预制件的主要内容,如果未能解决你的问题,请参考以下文章