目录

一、UI图集打包是什么?

二、TexturePacker图集打包工具的下载地址以及安装流程

三、TexturePacker图集工具具体使用流程

导入纹理

配置图集设置

精灵设置

图集打包

应用图集


一、UI图集打包是什么?

        在介绍TexturePacker工具之前先了解一下咱们在U3D中做UI优化时图集打包到底是什么意思,也是为自己做一个巩固。

        定义:

        Unity3D图集打包,也称为纹理图集打包或精灵图集打包,是一种将多个小纹理合并成一个大纹理的过程。

        优点:                

                a.减少渲染调用b.减少内存开销c.提高游戏性能d.提升载入速度e.提升载入速度减小包体,合成的大图会比之前所有的散图所占用的物理存储更小

        概念:

                图集打包是将游戏中使用到的小纹理(如角色、背景、道具等)合并成一个大纹理的过程。这样做的好处是减少了渲染调用次数和纹理切换次数,提高了渲染性能和内存利用效率。

        图集打包优化原理:

  1. 减少批次调用:游戏引擎在绘制物体时,会根据纹理进行批次调用。如果每个物体都使用不同的纹理,那么就会产生大量的批次调用,导致性能下降。而通过图集打包,可以将多个小纹理合并成一个大纹理,减少批次调用次数,提高性能。

  2. 减少纹理切换:纹理切换是指从一个纹理切换到另一个纹理的过程。纹理切换会导致GPU状态的切换,影响渲染性能。通过图集打包,可以将多个小纹理合并成一个大纹理,减少纹理切换次数,提高性能。

  3. 内存利用效率:每张纹理都需要占用一定的内存空间,而通过图集打包,可以将多个小纹理合并到一个大纹理中,节约了内存空间。此外,图集打包还可以使用压缩算法对纹理进行压缩,减少内存占用。

  4. UV优化:在进行图集打包时,需要调整小纹理的UV坐标。通过优化UV坐标,可以避免纹理重复采样,从而提高渲染性能。

        大概总结: Unity3D图集打包是一种优化渲染性能和内存利用效率的技术。它通过将多个小纹理合并成一个大纹理,减少批次调用、纹理切换和内存占用,从而提高游戏的性能表现。

二、TexturePacker图集打包工具的下载地址以及安装流程

        TexturePacker图集工具下载地址:

        TexturePacker - Create Sprite Sheets for your game! (codeandweb.com)

        TexturePacker图集工具安装流程:傻瓜式安装  自定义一下你想安装的文件路径就好

三、TexturePacker图集工具具体使用流程


        在游戏开发过程中,图片的使用是必不可少的,尤其是在UI部分,往往会使用大量的图片。如果每一张图片都是单独使用的话,实际上会对性能造成很大的损耗的。这时候我们往往是把需要的图片资源进行分类,然后按照需要打包成对应的图集。这样会方便管理和更新迭代,同时也减少了很多的性能开销。

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

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

 

导入纹理

        打开TexturePacker软件,点击菜单栏的"文件",选择"新建项目"或者"添加精灵"来导入纹理文件。你可以一次性导入多个纹理文件、(当然也可以直接拖拽对应精灵资源文件夹到软件中)

配置图集设置

        在纹理列表中,选中要打包的纹理文件,然后在右侧的属性面板中进行设置。你可以设置图集的名称、输出格式、尺寸、边距、旋转等。

可以将鼠标移动到不同Title上查看对应的详解(这有助于你更好的理解与设置你理想的图集效果)

精灵设置

        在纹理列表中,选中一个纹理文件,然后在右侧的属性面板中可以对该纹理进行精灵设置。你可以指定单个精灵的名称、边界框(如果有透明区域,要确保边界框正确覆盖实际内容)、旋转、偏移等。

图集打包

        完成图集和精灵的设置后,点击菜单栏的"发布精灵表"按钮或者使用快捷键Ctrl+P来完成精灵图集的产出,开始进行图集的打包生成。(输出目录以及文件名是在第一步时你选择的路径)

应用图集

        将生成的图集文件和代码文件导入到你的游戏项目中。(生成的文件必须放在同一文件夹下)通过UnityAssetStore提供的TexturePacker插件加载图集文件,并使用生成的代码文件中的信息来获取精灵的位置、UV坐标等信息

TexturePacker插件下载地址:TexturePacker Importer | 精灵管理 | Unity Asset Store

四、展示打完图集的一个最明显的效果(减少DrawCall)

        DrawCall(绘制调用):在计算机图形学中,指向图形处理器发送指令以绘制图形的过程。

未使用图集打包:

使用图集打包后:

五、TexturePacker图集打包工具(拆解图集以及预览精灵动画)

这里我就直接上视频  步骤也比较简单

拆解以及动画演示

        对于TexturePacker图集打包工具我所知道的到此也就这么多,如果在讲解的过程中有大佬发现错误请及时指出,我也会及时对文章进行更改(避免误导他人)。

感谢大家的观看,您的点赞和关注是我最大的动力

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐