首页/ 第 13 章 · 2D 游戏开发/ 第 203 课
LESSON 203 · 2D 游戏开发

Sprite Atlas 图集

图集已掌握。下一课学 2D 相机设置进阶。

⏱ 约 13 分钟📊 难度:入门🗂 第 13 章 · 2D 游戏开发📍 第 203 / 300 课
课程进度
203 / 300

🎯本节学习目标

  • 理解图集作用
  • 创建图集
  • 应用图集

🚀课程导读

几十张精灵图一张张渲染很浪费。图集把多图合成一张大图,GPU 一次画完。本课掌握。

为什么用图集

合批的“秘密”。

  1. 【问题】每张精灵图一个材质/一次绘制调用(Draw Call),图多就卡。
  2. 【图集 Sprite Atlas】把多张图合成一张大图 + 记录每张子图的位置。
  3. 【效果】同图集的精灵共享一个材质 → GPU 一次批量绘制(合批)→ 性能大幅提升。
  4. 【适用】2D 角色多帧动画、UI 图标、大量小物件。
  5. 【注意事项】图集里的图不能单独修改(改图要重新打图集)。
  6. 【工具】Unity 的 Sprite Atlas 功能(推荐)+ 第三方(TexturePacker)。
  7. 【进阶】图集大小 2 的幂(2048x2048),别超过 GPU 上限。
  8. 【性能】Draw Call 是 2D 性能核心,图集是最有效的优化手段。
💡
图集 = “拼图”:把碎片拼成一张大图,GPU 一次抓走,不再一张张拿。

创建 Sprite Atlas

两步打包。

  1. 【创建】Project 右键 → Create → 2D → Sprite Atlas。
  2. 【Objects for Packing】选中图集,把要打包的精灵文件夹/精灵拖进 Objects for Packing 列表。
  3. 【设置】点【Include in Build】;Texture 设置(尺寸、格式)。
  4. 【打包】选中图集,Inspector 点【Pack Preview】预览打包结果(编辑器阶段)。
  5. 【使用】打包后项目里正常用精灵即可,运行时自动从图集加载(无需改代码)。
  6. 【查看】打包预览里能看到大图与子图布局。
  7. 【批次】同一对象的多个动画帧放一个图集。
  8. 【UI】UI 图集用 SpriteAtlas 同样受益。
  9. 【注意】图集添加了“引用”后不要删除原始图。
  10. 【验证】Profiler 里 Draw Call 明显下降(第 268 课)。
  11. 【推荐】2D 项目从第一天就用图集。
  12. 【完成】你的 2D 游戏“轻装上阵”。
  13. 【注意】图集修改后要重新 Pack(右键图集 → Update Atlas)——编辑器自动处理,构建时自动打包。
图集用法:建图集 → 拖精灵 → Pack → 正常用。性能白捡。

常见错误与排查

错误:图集打包后精灵显示异常?
原因:图集没 Include in Build 或精灵未加入
解决:确认 Include in Build 勾选;把使用的精灵加进 Objects for Packing。

动手练习

课后小任务(做出来才算真的学会)

  • 把多个精灵打包进图集
  • 验证 Draw Call 下降
  • 理解图集的原理

本节小结

图集已掌握。下一课学 2D 相机设置进阶。

完成打卡后,主站会实时更新你的学习进度 🎯

← 上一课Sprite 精灵与 SpriteRenderer