项目信息:
平台-Android
Unity编辑器版本-2018.2.5f1
状况1:真机状况下引用到图集下的sprite的UI显示出错。(图集被打成AB包且勾选了Include in Build).
在我们的测试下发现了以下两个解决方案:(当然我觉得第二个最好)
1.在加载相应UI前,将sprite所属图集(spriteAtlas)提前加载到内存中。(相当麻烦,你得知道自己的sprite属于哪个图集,并且需要相应的一套资源加载的框架)。
2.调用unity提供的回调atlasRequested,手动绑定图集。(untiy2018以后才提供用协程异步加载图集)

解决方法有了,我们来测试一下寻找一下造成这个错误的原因。
测试记录:unity2017.3.0f3 (注意:图集要删了重新弄打包,不然改变include in build再次打AB包,AB包跟着上次的来不变)
SpriteAtlas打AB包,并在场景中加载带sprite引用的UI预制体:
A组:(UnityEditor,不注册事件)
1.勾选Include in Build , 正常显示
2.不勾选Include in Build,不显示,并警告SpriteAtlasManager.atlasRequested wasn't listened to while RGB requested.
B组:(UnityEditor,注册事件)
1.勾选Include in Build,,正常显示,但不触发atlasRequested事件。
2.不勾选Include in Build,正常显示,并触发atlasRequested事件。
C组:(Android真机,不注册事件)
1.勾选Include in Build,不显示,并警告SpriteAtlasManager.atlasRequested wasn't listened to while RGB requested.(我反复确认了3次,应该是uinty这个版本自己的BUG了)
2.不勾选Include in Build,不显示,并警告SpriteAtlasManager.atlasRequested wasn't listened to while RGB requested.
D组:(Android真机,注册事件)
1.勾选Include in Build,正常显示图片,仍然加载atlasRequested事件。(反复确认了两次……)
2.不勾选Include in Build,正常显示图片,触发atlasRequested事件。
总结:
这次测试结果来看,在编辑器下的事件结果(也就是A组和B组)是完全符合Unity官方文档的。
C组1号 和 D组1号是和官方文档的结论好像不太一样。
C组1号勾选了Include in Build居然还是不能正常显示,不过和我们项目开发中遇到的问题是一样的。
D组1号也是出乎我意料的,勾选了Include in Build注册事件,按理说是正常触发且不触发事件的,不过在C组1号的基础上倒是合理,找不到spriteAtlas,于是乎根据事件找到spriteAtlas.
所以C组1号和D组1号其实是一个BUG,那就是android真机上atlas打AB包就算勾了Include in Build也不会找到相关的spriteAtlas(不打AB包还没试过)。
结论:
所以在Android真机打spriteAtlas上我还是建议:不勾选Include in Build用事件来绑定。
参考网页
https://www.litefeel.com/blog/unity-2017-new-sprite-atlas/#comment-28099

转载于:https://www.cnblogs.com/TheChenLin/p/9763710.html

项目开发日志:Build AssetBundle——SpriteAtlas(已解惑)相关推荐

  1. 【Lolttery】项目开发日志 (五)目标dubbox,前进

    距离上一次开始使用dubbo已经有一段时间了,这段时间在项目的开发和实践中,对于dubbo有了更深的了解.今天终于决定抛弃原有的netty框架,正式转战dubbox dubbox是在阿里停止对dubb ...

  2. 游戏AI车辆(Auto Mobile City)项目开发日志(2021.10.18)

    文章目录 前言 今天实现的内容: 样条线控制的车辆AI原型 PID控制器 红绿灯系统 接下来的计划: 前言 这是一个ai车辆项目,将包含几种不同行为模式的AI车辆在城市交通场景中运行,你可以理解我我计 ...

  3. javaweb项目开发日志的原理,方式

    2019独角兽企业重金招聘Python工程师标准>>> 日志框架可以做什么? 日志框架可以帮助各类项目人员,,记录各种项目运行时信息; 以便其,通过日志信息,了解和监控项目的状态,解 ...

  4. 【Lolttery】项目开发日志 (三)维护好一个项目好难

    项目的各种配置开始出现混乱的现象了 在只有一个人开发的情况下也开始感受到维护一个项目的难度. 之前明明还好用的东西,转眼就各种莫名其妙的报错,完全不知道为什么. 今天一天的工作基本上就是整理各种配置. ...

  5. 冰球项目开发日志(一)

    游戏策略子系统 输入:冰球的当前位置和速度. 输出:目标击球位置,到达该位置的时间,以及在该位置击球器的速度矢量. 主要参数:游戏桌几何尺寸(长.宽和底边上的门洞宽度),冰球和击球器的几何尺寸,仿真物 ...

  6. 【Lolttery】项目开发日志 (二) 数据库的二三事

    基本的框架定好了之后,就是数据库的问题咯.在框架上我们选用了现在比较流行的mybatis框架. mybatis与spring的整合十分简单: <!-- 配置sqlSessionFactory - ...

  7. 随手研究一个项目里的坦克履带——项目开发日志(2021.11.15)

    文章目录 前言 笔记: 坦克履带 车辆AI 前言 这几周我在一个新的UE4项目中做实现,正好这个项目中有AI车辆和坦克,拿来研究一下.我也不透露项目具体内容,应该不会被告吧. 笔记: 坦克履带 这个游 ...

  8. JSP基础开发,可以用一些小型的项目中(简单学习,已过时,但是在一些项目中可以用到)

    JSP开发1(了解,已过时) 学习目标 学习内容 学习产出 1. JSP概述 2. JSP快速入门 2.1. 搭建环境 2.2. 编写代码 2.3. 测试 3. JSP原理 4. JSP脚本 4.1. ...

  9. C# *未能找到类型“ * ”,请确保已引用包含此类型的程序集。如果此类型为开发项目的一部分,请确保已使用针对当前平台或任意 CPU 的设置成功生成该项目

    未能找到类型" * ".请确保已引用包含此类型的程序集.如果此类型为开发项目的一部分,请确保已使用针对当前平台或任意 CPU 的设置成功生成该项目 复制出现错误的窗体文件,再删掉窗 ...

最新文章

  1. Express踩坑系列之上传文件
  2. 防范SQL指令植入式***
  3. 浅析ASP.NET的Page.IsPostBack 属性
  4. python中二维数组如何按索引找元素_按索引或坐标访问二维数组中的元素
  5. 收藏 | Redis 超详细总结笔记总
  6. 汉堡菜单_汉堡菜单-可访问性和用户体验设计原则的挑战?
  7. linux下移除环境变量及mkdir命令介绍
  8. 1.6 Dropout 正则化
  9. 破解技术人才招聘难、培养难!CSDN 软件工程师能力认证标准正式开源开放
  10. K8S学习笔记之使用Fluent-bit将容器标准输入和输出的日志发送到Kafka
  11. 5G技术对大数据产业的影响
  12. python科学计算基础教程pdf下载-python科学计算 第二版
  13. winrar解压器_与WinRAR齐名的经典解压缩软件——WinZip,不仅仅是情怀
  14. snipaste滚动截图方法_【软件工具】超强干货|不同级别的截图工具,快来按需领取吧...
  15. 外贸报价后如何跟进客户?winseeing可快速报价展示样品
  16. 如何查询芯片 IC 元器件 的datasheet数据手册
  17. (二)立创EDA之新建工程,原理图,PCB
  18. CSS中已经定义宽度的样式 英文不执行换行
  19. android自定义view(三)绘制表格和坐标系
  20. mysql二亿大表_面对有2亿条数据的mysql表

热门文章

  1. 设计微服务架构需要解决的问题
  2. 子元素增加margin-top会增加给父元素的问题
  3. javascript系列之执行上下文
  4. powerdesigner15(pd)+Oracle 11g 开发小问题
  5. 关于EMF模型的操作,赶紧记下来
  6. 基于OpenDDS开发发布订阅HelloMsg程序的过程(Windows)
  7. Python-MongoDB的驱动安装、升级
  8. CSDN博客投票活动开始了
  9. 转:[C/C++]2014年7月华为校招机试真题(一)
  10. iptables的SNAT和DNAT应用