不是啊,就是你加载场景的时候,提前把需要的SpriteFrame加载好了,再进场景,然后用这套资源,跟缓存没什么关系了
那这个进场景之前就把SpriteFrame加载好的功能该怎么去实现呢?
这个文档我没大懂,我可以在当前场景下加载SpriteFrame,那我应该怎么在场景A中加载场景B的SpriteFrame,然后等场景B中的SpriteFrame加载完成后再进入场景B呢?
你在场景A打算进入场景B,是不是已经知道了场景B的主题了,这时候先加载需要SpriteFrame,然后再进入场景B,这时候再去替换那些资源就好了,不过没试过,不知道有没有其他问题
场景A中似乎没法控制场景B中的SpriteFrame
这个就要你们自己去做处理了,要么提前知道场景B有哪些资源要替换,要么先加载完场景B,然后套个进度条界面,再去加载这些资源,等加载和替换完,再去掉进度条界面
嗯,谢谢啦~~
你们是项目刚开始,还是已经完成了,
项目刚开始建议区分不同的主题加载不同的资源,所有图片都是动态加载的,这样预设和场景可以用一套,后面加主题也好加一些,客户端不需要修改,
如果项目是已经完成了建议,建议不同主题做一套预设和场景,启动场景是个空的,根据服务器回的数据加载不同的场景和预设,这种增加主题要稍微麻烦一些,但是保证了预设场景里面的资源是同步加载的
上面的方法需要切换主题以后要刷新网页或者重启应用,如果需要实时的切换主题,需要记录当前打开的模块,然后实时加载不同主题的预设替换或者重新打开一次已经打开的模块驱动加载新的主题图片
如果只是替换UI框架的风格实现起来要容易不少,替换spriteFrame对应的Texture2d资源应该就可以了,但是要求资源规格要一致
以上只是我的思路而已,实际没有做过类似功能,具体实现过程中有很多细节需要处理,建议不要做实时切换主题