UGUI+图集+AssetBundle

这套流程解决的问题:减少UI造成的drawcall较高(不打图集小图都会占用drawcall的),而且需要动态加载(因为我们需要热更)

如何打包图集
存放到不同的文件夹下,然后编辑器设置对应的sprite tag  和 公用assetbundle 的名字(为下一步bundle打包做准备)。
注意:开启sprite enable功能(Project setting/Editor 下设置)
注意:Sprite Packer设置的地方需要使用DefaultPackerPolicy功能,而不要使用TightPackerPolicy功能,这个功能可能导致切图有部分是脏的
如何打包图集bundle
使用上一步制作的公用bundle 名字进行打包即可。
注意:不要把小图再打一次了,不然UI上的依赖可能还会找到小图而导致界面上可能出现图集图片 + 小图图片
如何动态加载bundle
打包后的图集assetbundle其实和其他的一样的加载,只是这里需要先加载小图对应的图集,然后在图集中找到这个小图,不然可能出现依赖丢失
的情况,事实上这个是因为bundle加载失败导致的,并不是依赖问题。
难点
其实如上的过程中的难点在于如何去区分图片应该放到那个文件夹的问题,放错了容易冗余,导致图集加载过多而内存爆炸。我们采取的原则是除非你认为
这个图真的是其他地方没有用到的,不然就划到公用图集里面去。(感觉很难维护,不知道其他项目有没有好的处理方案,这里真的很僵硬)
尚未解决的
打包图集的图片会有些糊,即使我们使用了 truecolor 也无济于事,目前还不清楚如何解决这个问题。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,420评论 25 708
  • 1 资源分离打包与加载 游戏中会有很多地方使用同一份资源。比如,有些界面会共用同一份字体、同一张图集,有些场景会共...
    JumboWu阅读 1,836评论 0 9
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,246评论 4 61
  • 我希望自己是你的贵妇而不是荡妇。 男人说最好的女人就是在卧室是荡妇在客厅是贵妇,这是大男子主义下的价值观。荡妇是需...
    听你花开的声音阅读 1,158评论 0 0
  • 约了一个朋友,特别想送点小礼物给他。想到最近几年在自己的人生路上默默无闻的帮助过多次,我理应要报答他。据说要两小时...
    不再虚荣的胡晶阅读 555评论 1 0