Unity性能优化---使用SpriteAtlas创建图集进行批次优化

在日常游戏开发中,UI是不可缺少的模块,而在UI中又使用着大量的图片,特别是2D游戏还有很多精灵图片存在,如果不加以处理,会导致很高的Batches,影响性能。

比如如下的例子:

Batches是9,在FrameDebug中显示如下:

将UI和2D精灵图片分别合并为一个图集如下:

运行后:只有3个批次

FrameDebug中显示如下:

注:

生成的图集中这三个选项的作用如下:

Allow Rotation(允许旋转),如果没有旋转的需求可以不勾选。

Use Crunch Compression(压缩),如果需要压缩节省空间可以勾选并选择压缩率。

Tight Packing(图集是否紧密生成),如果有需要可以勾选(在UI部分效果不明显,在精灵图片中使用明显,可以显著减小图集大小)。效果如下:

参考链接:

2D Batches Optimization using Sprite Atlas (youtube.com)

Unity Optimize UI - Reduce your Draw Calls Improve your performance in 10 MINUTES! (youtube.com)

相关推荐
chao_78940 分钟前
王者荣耀游戏测试场景题
功能测试·游戏
与火星的孩子对话2 小时前
Unity3D开发AI桌面精灵/宠物系列 【六】 人物模型 语音口型同步 LipSync 、梅尔频谱MFCC技术、支持中英文自定义编辑- 基于 C# 语言开发
人工智能·unity·c#·游戏引擎·宠物·lipsync
虾球xz5 小时前
游戏引擎学习第293天:移动Familiars
c++·学习·游戏引擎
敲代码的 蜡笔小新6 小时前
【行为型之访问者模式】游戏开发实战——Unity灵活数据操作与跨系统交互的架构秘诀
unity·设计模式·c#·访问者模式
Magnum Lehar14 小时前
3d游戏引擎EngineTest的系统实现3
java·开发语言·游戏引擎
动感光博16 小时前
Unity序列化字段、单例模式(Singleton Pattern)
unity·单例模式·c#
虾球xz16 小时前
游戏引擎学习第290天:完成分离渲染
c++·人工智能·学习·游戏引擎
虾球xz16 小时前
游戏引擎学习第285天:“Traversables 的事务性占用”
c++·学习·游戏引擎
虾球xz17 小时前
游戏引擎学习第280天:精简化的流式实体sim
数据库·c++·学习·游戏引擎
FAREWELL0007517 小时前
Unity基础学习(十五)核心系统——音效系统
学习·unity·c#·游戏引擎