首页 » 教程中心 » 游戏开发 » Sprite Sheet 导出教程:Unity / Godot 完整工作流
游戏开发

Sprite Sheet 导出教程:Unity / Godot 完整工作流

📖 约1200字 · 最后更新:2026年8月

一、什么是 Sprite Sheet

Sprite Sheet(精灵图集/精灵表)是将动画的所有帧排列在一张图片上,配合数据文件描述每帧的位置和大小。游戏引擎只需加载一张图,就能播放完整动画,大幅减少绘制调用(Draw Call),提升性能。这是将 Aseprite 动画导入游戏引擎的标准方式。

二、导出设置

在 Aseprite 中按 Ctrl+E 打开导出对话框:

  1. Output File 选择 .png 格式
  2. 在 Sprite Sheet 区域:
    • Sheet Type:选择排列方式
      • Horizontal:水平排列
      • Vertical:垂直排列
      • Packed:自动紧凑排列(推荐)
    • Constraints:固定行数/列数(可选)
    • Padding:帧间距,建议 1-2 像素避免纹理采样溢出
  3. 勾选 JSON Data,选择 Hash 或 Array 格式
  4. 点击 OK 导出,会生成 .png 和 .json 两个文件

三、JSON 数据格式

导出的 JSON 文件包含:

  • frames:每帧的位置(x, y)、尺寸(w, h)、时长(duration)
  • meta:图片尺寸、帧标签(frameTags)、图层信息、切片数据

如果使用了帧标签,JSON 中会包含 frameTags 数组,引擎可直接按名称识别动画片段。

四、导入 Unity

方式一:官方 Aseprite Importer(推荐)

  1. Unity 2021.3.15+ 版本,打开 Window → Package Manager
  2. 搜索 "2D Aseprite Importer" 并安装
  3. 直接将 .aseprite 文件拖入 Project 窗口
  4. 在 Inspector 中设置 Pixels Per Unit(通常 16 或 32)
  5. 勾选 Generate Animation Clips 和 Generate Physics Shape
  6. 点击 Apply,自动生成精灵图集和动画控制器

详细步骤见Aseprite 与 Unity 2D 集成教程

方式二:手动导入 PNG + JSON

  1. 将导出的 .png 和 .json 放入 Unity 项目
  2. 选中 PNG,Sprite Mode 设为 Multiple
  3. 打开 Sprite Editor,根据 JSON 数据手动切片或使用第三方插件

五、导入 Godot

Godot 4 原生支持 Aseprite 导入:

  1. 将 .aseprite 文件放入项目文件夹
  2. Godot 会自动识别并生成 AnimatedSprite2D 资源
  3. 在 Import 面板设置裁剪、过滤等选项
  4. 帧标签自动成为动画名称

详细步骤见Aseprite 与 Godot 4 集成教程。如果使用 PNG + JSON,可安装 Godot Aseprite Wizard 插件自动导入。

导出时 Padding 设为 1-2 像素非常重要。如果帧之间没有间距,GPU 纹理采样时可能会把相邻帧的像素混入,导致精灵边缘出现细线。

六、导出注意事项

  • 确保所有帧尺寸一致(Aseprite 默认 Canvas 大小统一)
  • 如果角色有空白边缘,勾选 Trim 自动裁剪空白
  • 合并图层后导出可减小文件体积,但会丢失图层信息
  • 不同方向的动画(左/右)可以只画一个方向,在引擎中翻转

批量导出多个文件可以使用命令行批处理。动画制作见帧动画教程

还没有 Aseprite?

立即下载 Aseprite