南京网站公司,最好的wordpress教程,珠海网站设计费用,市场营销成功案例分析项目信息#xff1a;平台-AndroidUnity编辑器版本-2018.2.5f1状况1#xff1a;真机状况下引用到图集下的sprite的UI显示出错。#xff08;图集被打成AB包且勾选了Include in Build#xff09;.在我们的测试下发现了以下两个解决方案#xff1a;#xff08;当然我觉得第二… 项目信息 平台-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 wasnt 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 wasnt listened to while RGB requested.我反复确认了3次应该是uinty这个版本自己的BUG了 2.不勾选Include in Build不显示,并警告SpriteAtlasManager.atlasRequested wasnt 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