1、请问如何释放直接拖到场景里的prefab资源?
2、cc.url.raw(“resources/sounds/” + url) 通过url播放的音频资源如何释放?
3、游戏运行内存越来越高,感觉是资源都没释放,目前工程是全部把prefab拖到场景里,也没用使用过 cc.loader.loadRes等动态加载API,那么切换场景的时候如何能有效释放上个场景的资源呢?
另外如果通过release释放直接拖到场景里的prefab,是需要release场景里的这个node节点还是relese resource下该prefab里路径url?
大神快快来
你可以试试勾选 场景 释放,看看有没有释放,
如果没有,再试试这个
var deps = cc.loader.getDependsRecursively(prefabOrPath);
cc.loader.release(deps);
这种功能竟然是要“试试这个行不行”,不行再”试试另外一个“;已逆天
也只能这样了,关于内存释放这块文档一直说的很模糊
拖到场景里后,场景加载后这个节点和普通节点没区别,没办法单独释放一个节点下的用到的资源。
静态场景使用自动释放就可以了。动态的资源变化可以用 cc.loader.setAutoRelease 之类的 API 来补充声明下。
cc.url.raw(“resources/sounds/” + url) 通过url播放的音频资源如何释放?
那这种方式播放的音效如何释放呢,播放完毕后是自动释放的还是需要手动释放?如果需要手动释放应该如何释放?
另外我发现勾选了场景的自动释放资源后,切换场景的时候会比不勾选自动释放资源慢2-3秒中,web和原声平台都比较明显?这个有没有方案可以解决?如果不勾选这个选项那么如何手动释放场景里的资源呢?
你场景很大吧?这个没办法
场景也不是很大,也就不到10个界面,这种直接拖到场景里的资源有办法手动释放吗?
没办法,你想要手动释放就不应该放在场景里
动态创建prefab不是很耗性能吗?也试过动态创建,切换场景后从创建到显示明显要比直接拖到场景里要慢2-3秒,这种体验太差了,有没有什么好点的方法?目前能想到加个过渡场景,或者预加载场景,但是也比较慢
cc.instantiate(prefab) 已经非常优化了,你用其它技术手段都未比能有它快
如果你还是会卡 2 - 3 秒,说明场景太大了,只能自己在内容上权衡了。
想问一下,现在的版本还是这样吗?
我的项目也是制作Prefab,通过脚本拖进去场景。然后触发动作 由cc.instantiate生成,执行完毕后再 destroy 销毁。这样节点里面用过的资源会依然残留吗?
那我再次触发这个动作,再instantiate一次呢?内存会不会越来越高?
我也是这样做的,但是我的场景是由很多个prefab组成的,显示到某一界面再判断是否需要通过cc.instantiate创建节点,从创建节点到显示的速度很快啊
一样,不会有残留。
希望官方出一期load release loadingscene用法说明直播。
恩,谢谢解答。
只是我这边一个界面挂了7、8个预制的弹出窗口,当从其他界面切换到这个界面的时候就要等几分钟加载。
看来得优化下引用的资源了