真的没有问题么?我预制体里有个button,释放资源后,渲染就报错了。
场景加载的资源不受ResLoader管理,你添加的按钮与场景中的按钮依赖了相同的资源,所以在释放时释放了按钮的图片,如果是空场景,所有资源使用ResLoader来加载则不会有这样的问题,或者我在启动的时候,把cc.loader的加载方法进行替换,完全接管资源加载,但场景切换还需要做一些特殊处理。
1赞
谢谢分享
谢谢解答
还有一个简单的方法,因为这里只有场景是不走ResLoader的,在场景加载完成后获取该场景对应的所有依赖资源,建立一个ref,相当于是用ResLoader加载的场景,在场景切换的时候再去释放这个ref。在场景不开延迟加载的情况,这么处理也可以。如果要 完美 解决这个问题,可能直接修改引擎会好一些,但不大想侵入到引擎内部的代码。
mark thinks
mark mark,宝爷给力,最近一直在看资源相关的
mark
mark
mark
mark.
好文章
嗯,之前没看清楚,刚刚调试了一下确实有泄漏,已经fix并验证过了,可以pull下来看看,顺便把resMap给清理了
那个……JS里面其实可以不要 static getInstance()
这样的函数,直接在 constructor 里 return 对象实例就好了,这样new出来的都是同一个对象
那你每次使用都new?
还不如直接导出一个new呢
这个怎么处理呢。 怎么才能获取场景对应的所有依赖资源呀。
mark
谢谢大佬 mark