如何快速实现游戏主题风格的切换?

求教大佬们! 我自己开发的一个小游戏。 最近换了一下游戏的主题风格。
包括背景、按钮、文字颜色等 都换了一遍。

但是上线后,有一部分玩家说 还是喜欢之前的风格。。。
我当然知道不能惯着他们 :rofl:。 但是如果能够实现 一键换肤的话 肯定会更好。

问题来了。。。怎么实现呢?

自己想的办法就是,做两个一模一样的远程资源包,除了图片内容不一样,资源的ID都是一样的。 这样就可以根据玩家的选择,切换不同的资源包。

感觉好麻烦,都2023年了,还没有方便快捷 并且优雅的方案吗?

搞个动态加载,给个字段。字段=1的时候就加载包1里的图,2就加载包2里的图。不就行了

包1 和 包2 同一个位置的图 他们的uuid 得是一样的吧? 因为sprite 需要根据uuid来引用

这样的话 包1、包2 的生成也是个麻烦事情

怎么可能是一样的uuid那 你动态加载只是拼个前后缀而已呀,实际上就是2个不同的图片呀

你的想法就是对的。其实也不麻烦啊,开分支就完了,这样会出现第二个工程,然后这个分支只改图内容就可以保持uuid不变;

哈哈 先发一个这个

是的 uuid不变才能让 其他的组件引用的时候 引用到。 如果uuid变的话 那就是所有的组件必须得动态引用图片了,根据图片名称加载。

我好多组件都是直接引用的,必须得保持uuid一致。

不应该啊,我前段时间发过帖子啊:rofl:

那新功能合代码时候你怎么弄,只合代码不合资源?资源重新拖一遍 :crazy_face:

分支合主干是不会把你分支改过的东西覆盖的,除非你主干也换了图就会出现冲突,不过一切全部用"我的"就没事了。所以不用在意代码改动的问题,全部合过来即可;

不过还是感觉resources创建对应的皮肤文件夹,动态拼路径方便一些。我上家做的slot类型的,500多个岛的皮肤就是动态加载的,感觉还是这样方便一些。

如果你的资源全都是通过路径去访问那确实不存在这种问题啊,只能说cocos比较骚,都是通过uuid来访问资源的:rofl:

美术资源放在cdn上,根据切换的分支去远程加载对应的资源。