unity中使用TexturePacker图集打包工具

转自:https://www.cnblogs.com/cnxkey/articles/9743920.html

在游戏开发过程中,图片的使用是必不可少的,尤其是在UI部分,往往会使用大量的图片。如果每一张图片都是单独使用的话,实际上会对性能造成很大的损耗的。

这时候我们往往是把需要的图片资源进行分类,然后按照需要打包成对应的图集。这样会方便管理和更新迭代,同时也减少了很多的性能开销。

假如你一个UI界面使用了10张不同的图片,那么加载这个界面的时候,就会同时对10个图片资源进行渲染,而如果这10张图片是在同一个图集里面的话,那么就相当于同时只进行了1张相对较大的图片的渲染,这样实时渲染的性能开销会更少,这是一种用空间换时间的一种办法。

大家在学习过程中有可能见过类似这样的一张图片(下图),这其实就是打包图集后图片,接下来我将教大家如何使用TexturePacker工具制作这样图片,并用在Unity3D中。

v2-8ae3554ea0ec43e405fa5293e6e960ab_hd

安装

软件安装部分我就不细说了,正常的安装步骤,我使用的版本是3.0.9,希望大家保持和我一样的版本来学习,这里我放出一个链接,里面包含TexturePacker的安装包和Unity工程所需要的Editor工具,将$TexturePackerImporter.unitypackage导入unity工程即可,导入unitypackage包属于unity基本操作的内容,不在本节讨论范围,小白请看这(导入教程)

安装包及Editor工具链接:https://pan.baidu.com/s/1i6TxRP7
密码:0e4y

界面属性

接下来打开软件:

目前有两种导入图片的方法:

1、 拖拽图片到右边空白处即可完成添加单张图片的操作

2、 拖拽文件夹到右边空白处,即可添加文件夹内所有图片

(建议使用文件夹形式,因为方便管理,不用每次拖拽到界面,甚至可以结合外部程序去管理文件夹)

v2-3047a21a682e406bbc31165d3f6f3762_r

v2-aeb63339513a76468818c71895fcce36_r

以上红框中的内容建议详细了解一下,是比较重要的修改项,将鼠标悬停在上面就会显示每个修改项的详细介绍

v2-49413a0328b6c8823364129f29a6b40c_hd

这里简单讲解一下:

Output

DataFormat:务必选择Uniyt3D

Datafile:打包导出图集数据的路径

Texturefile:保存的图片格式(建议PNG)

Texturefile:打包导出图集图片的路径

Geometry

Maxsize:最大导出尺寸

Sizeconstrains : 尺寸约束,对图集尺寸进行约束,因为unity的对图片的要求是2的次幂最为合适,所以这里建议选择Pot(Power of 2)

Scale:导出比例,意思是原图进行一定比例的压缩

Layout

Allowrotation:是否允许旋转(务必取消勾选,否则导入到游戏中图片会发生旋转)

Layout标签下的前几条属性均与图集的排序,图片的间隔等有关,可以自行测试了解

打包图集

接下来就是正式导出图集了,点击上方工具栏的Publish按钮即可导出(导出前请先设置图集图片和数据导出的路径)导出完成后建议Save保存工程,保存成.tps文件,这样我们的一个图集工程就成功建立起来了!

v2-1683adcb2873fe3f63d58e5a675ce8a7_hd

 

打包前v2-c2f5a157660aef65518cd14acc05ddaa_hd打包后

以后更新和管理图集的快捷操作:把更新的图片放到对应文件夹里面,打开.tps工程,直接点击Publish按钮导出即可

因为打开的时候会自动重新识别文件夹里面图片并按照之前的属性排序,操作非常方便

导入Unity3d中

把导出的.png和.txt文件导入到unity工程中(两个文件必须在同一目录下),然后右键点击图集数据文件(.txt文件),点击TexturePacker—Process to Sprite即可(此菜单项需要在导入了Editor工具后才会出现)

v2-89086ac9e356015131b9a8af5e223aab_r

使用之后效果如图:

v2-ffdc6df08bb364df99ab937c12c1827c_hd

 

分割后

这样就可以像使用普通图片一样拖拽使用这些图片了,接下来到底如何使用这些图片将由你决定了!下一节我将写一个Editor工具类,批量引用到一个预制体上,这样我们就能在运行过程中根据图片的名字(或约定的命名约束),动态加载图集中的某一张图片使用,敬请期待!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: TexturePacker是一个常用的纹理打包工具,可用于将多个小图标或纹理合并到一个大的纹理图集,并生成相应的元数据和配置。UnityPackageUnity游戏引擎的一种打包文件格式,可以包含游戏资源、脚本、场景等。 当我们使用TexturePacker创建纹理图集后,可以将生成的文件保存为UnityPackage格式,以便在Unity轻松导入和使用。这个导入器UnityPackage是一种用于将TexturePacker文件导入到Unity项目工具使用TexturePacker导出的UnityPackage文件可以包含纹理图集的图片文件以及与之相关的配置、元数据等。导入UnityPackage时,Unity会自动解析并展示出这些资源,方便我们在游戏使用。 通过导入器UnityPackage,我们可以一键导入TexturePacker生成的图集资源到Unity项目,省去了手动添加、配置的繁琐过程。导入后,我们可以在Unity编辑器直接引用这些纹理图集,用于设置游戏的界面、角色、地图等。同时,由于TexturePacker图集制作工具通常会自动优化纹理,减小纹理的内存占用和渲染性能消耗,因此使用TexturePacker导入的图集也能为我们的游戏性能提供一定的优化。 总而言之,texturepacker importer unitypackage是一个用于将TexturePacker生成的纹理图集资源导入到Unity项目工具,可以方便地使用TexturePacker提供的纹理打包功能,并优化游戏性能。 ### 回答2: TexturePacker Importer UnityPackage是一种Unity引擎的插件,用于导入纹理图集Texture Atlas)制作工具TexturePacker生成的文件。TexturePacker是一款广泛使用的纹理图集制作工具,它可以将多个小纹理合并成一个大纹理,并且在文件记录了每个小纹理的位置和大小等信息。 通过使用TexturePacker Importer UnityPackage,我们可以将TexturePacker生成的文件轻松导入到Unity项目。一旦导入成功,我们就可以在Unity使用TexturePacker生成的纹理图集使用TexturePacker Importer UnityPackage有以下几个优点: 1. 减少内存占用:通过将多个小纹理合并成一个大纹理图集,可以减少游戏加载时所需的内存占用,提高游戏的性能。 2. 提高渲染效率:在游戏使用纹理图集可以减少渲染调用次数,提高游戏的渲染效率。 3. 管理方便:通过导入TexturePacker生成的文件,我们可以在Unity直接使用纹理图集,并且可以很方便地管理和更新纹理。 使用TexturePacker Importer UnityPackage的步骤如下: 1. 下载和安装TexturePacker Importer UnityPackage插件。 2. 将TexturePacker生成的文件拖放到Unity项目的Assets文件夹。 3. 在Unity项目选择导入的文件,并设置导入的属性。 4. 导入成功后,我们可以在Unity的资源管理器看到导入的纹理图集文件,可以在游戏使用它。 总之,TexturePacker Importer UnityPackage是一个非常有用的插件,可以方便地导入和使用TexturePacker生成的纹理图集,提高游戏的性能和渲染效率。 ### 回答3: TexturePacker是一款功能强大的纹理打包软件,它可以将多张纹理打包成一张大的纹理集,以减少游戏的纹理数量,优化游戏性能。Importer UnityPackageUnity游戏引擎的一种导入方式,可以将其他软件创建的资源文件以Unity可识别的格式导入到Unity项目TexturePacker Importer UnityPackage就是将TexturePacker打包好的纹理集以UnityPackage的方式导入到Unity项目使用。这样做的好处是可以方便地管理纹理资源,减少项目的文件数量,并且可以提高游戏的运行效率。 使用TexturePacker Importer UnityPackage的方法很简单。首先,将TexturePacker导出的纹理集文件保存为UnityPackage格式。然后,在Unity编辑器选择“Assets”菜单下的“Import Package”选项,从弹出的对话框选择导入的UnityPackage文件,点击“Import”按钮进行导入。 导入完成后,可以在Unity项目看到导入的纹理集资源。可以将这个纹理集应用到游戏对象的材质上,也可以在脚本通过代码使用纹理集的纹理。在使用纹理集的过程,可以根据需求进行调整纹理的显示方式,例如裁剪、平铺、重复等。 TexturePacker Importer UnityPackage使用可以大大简化游戏开发过程的纹理处理工作,减少纹理资源的浪费和加载开销,提高游戏的性能和画面质量。因此,在开发Unity游戏时,推荐使用TexturePacker Importer UnityPackage来管理和使用纹理资源。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值