unity利用ugui打包图集,动态加载sprite资源

wucheruoxu      2022-02-14     384

关键词:

今天做了一个UI界面,这个界面是好友界面,该界面上有若干个好友item。 需要对每个tem的头像对象(image)动态显示对应的头像。尝试利用UGUI的图集来加载,具体实现如下:

1.首先,需要知道SpriteAtlas的功能,可以保存一些关于要打包进去的sprite的设置。(详细参数设置的意义有待进一步研究),其中的Objects For Packing可以关联到需要打包进这个已创建图集的Sprite,或者文件夹,或者texture。目前这里的做法是关联到了文件夹。

技术分享图片

2.此时,unity已经给出了提示:Sprite Atlas packing is disabled.根据提示,改变Sprite packer的模式:

技术分享图片

到此,unity方面的操作已完成,下面就是代码实现了。

3.加载方式使用Resources.load方式,与其他的并无差别(在这里使用了泛型,这样单独抽出来写是为了可以加载其他的类型):

技术分享图片

4.第3步加载好了Sprite Atlas,接下来就要加载在这个图集种的某一张sprite了:

技术分享图片

注:41行加载图集,37行和42行加载其中的sprite。需加载图片只需调用LoadSprite方法就可以了。For example:

技术分享图片

总结:在unity中创建好图集并指定图集后,在代码中只需先加载图集,再加载该图集中的某张sprite就可以了。当然动态加载方式很多,这种只是其中的一种尝试。

 

unity打包之后怎么动态设置texture的参数

在用UGUI时,我们也需要将一个个小图打包成图集,以减小Drawcall(类似coco2d-x一样,打包成图集一次性加载以内存换取图片读取效率),UGUI打包并使用图集有两种方法:一种是使用系统自带的打包工具SpritePacker;一种是使用TextureP... 查看详情

unity_ugui学习图集与使用

...关心自己的图集。做界面的时候只用小图,而在最终打包的时候unity才会把你的小图和并在一张大的图集里面。然而这一切一切都是自动完成的,开发者不需要去care它。一定要打包才可以。   如下图所示,Edit->Pro... 查看详情

unity之图集属性详解和代码示例--拓展一键自动打包图集工具(代码片段)

Unity之图集属性详解和代码示例--拓展一键自动打包图集工具一,图集的相关概念1.1图集的定义1.2图集的意义二,图集的属性介绍2.1属性面板2.2格式处理2.3代码操作三,拓展--打包图集工具3.1图片存放策略3.2图集打包逻... 查看详情

unity之图集属性详解和代码示例--拓展一键自动打包图集工具(代码片段)

Unity之图集属性详解和代码示例--拓展一键自动打包图集工具一,图集的相关概念1.1图集的定义1.2图集的意义二,图集的属性介绍2.1属性面板2.2格式处理2.3代码操作三,拓展--打包图集工具3.1图片存放策略3.2图集打包逻... 查看详情

unity图集打包

http://www.xuanyusong.com/archives/3304http://www.xuanyusong.com/archives/3315http://www.xuanyusong.com/archives/3499http://www.xuanyusong.com/archives/3768 http://blog.csdn.net/ios_song/article/ 查看详情

unity怎么使用spritepacker图集

参考技术A这个嘛有两个方法,一个是将每一个小图都指定到Prefab上,将Prefab保存在Resource文件目录下另一种方式就是打包成assetbundle包,直接加载可用本回答被提问者采纳 查看详情

unity学习-优化_图集归类以及unity和texturepackter的动态批处理(代码片段)

...学习TexturePacker的时候,又发现了一个问题,我想要批量打包,TexturePacker只能做到把碎图拼成一张整图,如果想要在项目里面方便的使用 查看详情

关于unity中的ugui优化,你可能遇到这些问题

...1.SpritePacker大概的工作机制是什么样的?2.如果Sprite没有打包成AssetBundle,直接在GameObject上引用,那么在Build时Unity会将分散的Sprite拼接在一起么?如果没有拼接,那SpritePacker是不是只会优化DrawCall,内存占用上和不用SpritePacker的... 查看详情

unity中sprite是啥意思

...费,我们可以把各个sprite做成图集,把图片上的空间尽量利用得充实一点。这时候,我们就需要一个制作图集的工具。首先,Unity默认是在编辑器环境下不打开图集打包工具的,只有在Build的时候才会执行自动打包图集。Edit–Proj... 查看详情

《从cocos到unity》-2.ui-ugui-精灵

参考技术A1.导入普通图片和TexturePacker打包出的图片集。2.图片的格式选择和九宫格边界的划分。3.2D最基础的元素-精灵。1.最简单的小图,直接拖动到Assets文件夹下即可(和Cocos的操作一模一样)2.使用TexturePacker导出的图集,则和... 查看详情

ugui优化

1首先是图集的打包,demo还是以消灭病毒里面素材来做一个测试来观察如何优化。我们发现Batches的值为6,然后图片没有打包成图集的情况。然后我们将这6张图片打成一张图集。这个时候我们发现 Batches的值为1。我们知... 查看详情

unity自定义atlas图集实现加载图集中的小图

Unity没有提供加载图集里面小图的API,下面是我学习框架课程(因为这个框架课程没有封装LoadAllAsset的方法)所学到的加载方法。1.封装UIAtlas类,保存序列化的图集 /******************* * Title:CW_FrameWark * Author:CW *&... 查看详情

unity使用ugui实现王者荣耀ui界面加载页面(进度条)(代码片段)

...素材4.配置背景图片5.进度条显示UI搭建6.脚本编写7.演示5.打包结语【Unity使用UGUI实现王者荣耀UI界面(一)】加载页面 查看详情

unity使用ugui实现王者荣耀ui界面加载页面(进度条)(代码片段)

...素材4.配置背景图片5.进度条显示UI搭建6.脚本编写7.演示5.打包结语【Unity使用UGUI实现王者荣耀UI界面(一)】加载页面 查看详情

unity3d的spritepacker用法介绍

...费,我们可以把各个sprite做成图集,把图片上的空间尽量利用得充实一点。这时候,我们就需要一个制作图集的工具。1. 首先,Unity默认是在编辑器环境下不打开图集打包工具的,只有在Build的时候才会执行自动打包图集。Edi... 查看详情

图集优化

...里面的图片拖给对象做为背景的,需要先将图片资源打成图集,然后从图集里面去选择自己的图标。但是在UGUI里面,如何创建图集呢?如何在2D界面使用图片资源?这个问题困扰了我好久,但还是被我解决了。UGUI是unity4.6之后新... 查看详情

ugui

UGUI研究院之全面理解图集与使用(三)http://www.xuanyusong.com/archives/3315http://www.xuanyusong.com/archives/3304 UnityUGUI图集与TP打包结合http://www.jianshu.com/p/a8066b15a54c  查看详情

使用unity自带的打包工具

...)目的:在Unity的编辑模式下,就可以自行对Unity的图片打包成图集。第一步:先将Unity的图集打包工具的模式设置为AlwaysEnables(LegacySpritePacker)。Edit->ProjectSetting->Editor->SpritePacker->Mode->AlwaysE 查看详情