资源按需加载的一个小问题

xu_yanfeng
Thu, 24 Nov 2016 07:27:12 +0000

如果Scene中的脚本里面含有Prefab类型的变量,

那么在加载scene的过程中也会把Prefab用的资源一并加载了,然后依次递归,把所有引用到的Prefab资源加载了
但是在实际的开发中,有这样的需求: 我需要按需加载资源,没有用到的或者没有展示的UI界面不加载相应的资源,显然使用cc.Prefab类型的变量,这样行不通,如果不能用cc.Prefab类型的变量,那么我只能通过动态加载资源的方式load相应的Prefab:

想使用cc.Prefab类型的变量就是因为可以在creater种指定相应的Prefab,但是会递归加载预制体资源,拖慢加载速度,因为有些预制体我仅仅是想在用到的时候方便创建, 既然要动态加载,那么就要手动指定第一个参数(预制体的相对路径文件名),这样虽然能解决问题,但是丧失了数据驱动灵活性,最后想了好多办法,我提个建议:

  path:{default:""}

当设置为字符串的时候,拖动资源文件到creater响应的变量位置,可以把资源的路径赋值上去,这样代码中就能拿到Prefab的路径,使用cc.load.load(),就想加载自定义资源一样使用,希望考虑下

阅读整个主题