导出

Spine 可导出单张图片、序列图片、视频以及 JSON 或二进制数据。

要打开 导出 对话框,请按 ctrl+E ( Mac 上则为 cmd+E )或者点击 Spine 左上角的 Spine 图标并从菜单中选择 导出

JSON

Spine 可以将所有骨架数据导出为 JSON 。此类数据可以用 Spine 运行时加载并在应用中显示,显示效果与其在 Spine 中一致

JSON 在某些方面比二进制更具优势。 Spine 导出格式的大部分变化均不会使之前导出的 JSON 数据无效。而且 JSON 更符合人类阅读习惯,更易于解析代码。其劣势在于, JSON 数据更大,解析数据较慢。

请参阅 JSON 格式了解关于导出 JSON 数据的详情。

  • 输出文件夹 该文件夹将针对项目的各个骨架分别创建一个 JSON 文件。文件名将使用骨架名称。
  • 扩展名 JSON 文件将使用该文件扩展名。
  • 格式 Spine 可选择写入类似于 JSON 但较小、较易于阅读和编辑的格式。
    • JSON 标准 JSON。
    • Java 脚本 类似于 JSON ,但只在必要时引用名称。输出为有效 Java 脚本。
    • Minimal 类似于 JSON ,但只在不包含 rnt空格 且不以 /{}[]:," 开头时引用名称和值。此外,名称中不得包含 : 且值不得包含 }], 。该格式需要宽松型 JSON 解析器,如libgdx
  • 非必要的数据 勾选时, JSON 将包含那些渲染骨架所不必需的额外数据,使得文件略大。不过 JSON 导回 Spine 时需要此类数据。请参阅导入了解详情。
  • 优质打印 勾选时, JSON 会排版成合适的格式,以符合人类阅读习惯。
  • 创建图集 勾选时,骨架所用图片将打包成纹理图集。该方法十分方便,不过独立运行纹理打包器可加大对打包过程的控制力度。请参阅纹理打包了解详情。

二进制

Spine 可以将所有骨架数据导出为二进制。此类数据可以用 Spine 运行时加载并在应用中显示,显示效果与其在 Spine 中一致。

二进制在某些方面比 JSON 更具优势。二进制更小,解析代码时更快,但不太符合人类阅读习惯。其劣势在于,Spine 导出格式的大部分变化均会使之前导出的二进制数据无效,届时需要重新导出。

请参阅二进制格式了解关于导出二进制数据的详情。

  • 输出文件夹 该文件夹将针对项目的各个骨架分别创建一个二进制文件。文件名将使用骨架名称。
  • 扩展名 二进制文件将使用该文件扩展名。
  • 非必要的数据 勾选时,二进制数据将包含那些渲染骨架所不必需的额外数据,使得文件略大。不过二进制数据导回 Spine 时需要此类数据。请参阅导入了解详情。
  • 创建图集 勾选时,骨架所用图片将打包成纹理图集。该方法十分方便,不过独立运行纹理打包器可加大对打包过程的控制力度。请参阅纹理打包了解详情。

GIF

Spine 可导出动态 GIF ,便于在互联网分享。 GIF 这种图片格式只有256种颜色,且不支持半透明,所以可能会降低品质。

  • 类型 导出类型。
    • 序列 当前动画导出为动态 GIF 。
    • 当前骨架姿势导出为静态 GIF 。
  • 输出文件 用于写入的 GIF 文件。
  • 图片 勾选时,将渲染骨架图片。
  • 骨骼 勾选时,将渲染骨架骨骼。
  • 背景 使用的背景颜色。
  • 透明 勾选时,完全透明像素将变为透明,而非变为背景颜色。由于 GIF 不支持半透明,半透明像素仍使用背景颜色。
  • 品质 高品质能产生更好的颜色,但导出时间会变长。
  • FPS GIF 动画每秒帧数。
  • 重复 重复 GIF 动画的次数。可选定0永远重复。

JPEG

Spine 可导出 JPEG 图片。 JPEG 这种有损耗的图片格式不支持透明,所以可能会降低品质。

  • 类型 导出类型。
    • 序列 指定动画分别导出为若干 JPEG 文件。
    • 当前骨架姿势导出为单个 JPEG 。
  • 动画 只导出当前动画或者一次性导出所有动画。
  • 皮肤 只导出当前皮肤或者一次性导出所有皮肤。
  • 输出文件夹 写入 JPEG 文件的文件夹。
  • 图片 勾选时,将渲染骨架图片。
  • 骨骼 勾选时,将渲染骨架骨骼。
  • 背景 使用的背景颜色。
  • 品质 高品质能产生更好的图片,但文件会变大。
  • FPS JPEG 序列每秒帧数。
  • 创建图集 勾选时,导出的图片将打包成纹理图集。该方法十分方便,不过独立运行纹理打包器可加大对打包过程的控制力度。请参阅纹理打包了解详情。

PNG

Spine 可导出 PNG 图片。 PNG是一种无损图片格式,支持透明,所以不会降低品质。

  • 类型 导出类型。
    • 序列 指定动画分别导出为若干 PNG 文件。
    • 当前骨架姿势导出为单个 PNG 。
  • 动画 只导出当前动画或者一次性导出所有动画。
  • 皮肤 只导出当前皮肤或者一次性导出所有皮肤。
  • 输出文件夹 写入 PNG 文件的文件夹。
  • 图片 勾选时,将渲染骨架图片。
  • 骨骼 勾选时,将渲染骨架骨骼。
  • 背景 勾选时,使用背景颜色。未勾选时, PNG 背景为透明背景。
  • FPS JPEG 序列每秒帧数。
  • 创建图集 勾选时,导出的图片将打包成纹理图集。该方法十分方便,不过独立运行纹理打包器可加大对打包过程的控制力度。请参阅纹理打包了解详情。

AVI

Spine 可以导出当前动画的 AVI 视频文件。

  • 编解码器 用于对 AVI 视频进行编码的编解码器。
  • 输出文件 用于写入的 AVI 文件。
  • 图片 勾选时,将渲染骨架图片。
  • 骨骼 勾选时,将渲染骨架骨骼。
  • 背景 使用的背景颜色。
  • 品质 对于 JPEG 编解码器,高品质能产生更好的图片,但文件会变大。
  • FPS AVI 视频每秒帧数。

QuickTime

Spine 可以导出当前动画的 QuickTime MOV 视频文件。

  • 编解码器 用于对 MOV 视频进行编码的编解码器。
  • 输出文件 用于写入的 MOV 文件。
  • 图片 勾选时,将渲染骨架图片。
  • 骨骼 勾选时,将渲染骨架骨骼。
  • 背景 使用的背景颜色。
  • 品质 对于 JPEG 编解码器,高品质能产生更好的图片,但文件会变大。
  • FPS MOV 视频每秒帧数。

命令行

使用脚本和构建服务器时,可以通过命令行来运行导出和纹理打包。这种情况下, Spine 会启动,执行一次或多次的导出或纹理打包命令,然后退出。

前提条件

Spine 和 Spine 启动程序必须为2.1.00或更高版本才能执行命令行导出。要更新 Spine 启动程序,可使用 Spine 授权链接(用户购买时会收到含该授权链接的邮件)来下载和重装 Spine。

用户可在无头机上导出 JSON 与二进制数据及打包纹理。导出图片或视频时需要 OS 视窗系统及 OpenGL 。

用法

用于导出和纹理打包的命令行用法:

导出: Spine [-i <project.spine>] [-o <path>] -e <path>
打包: Spine -i <path> -o <path> -p <name>

导出:
-i, --input   Spine 项目文件路径,覆盖导出设置 JSON 。
-o, --output  写入导出文件的路径,覆盖导出设置 JSON 。
-e, --export  导出设置 JSON 文件的路径。

打包:
-i, --input   用于打包的图片文件夹路径。
-o, --output  写入纹理图集文件的路径。
-p, --pack    打包设置 JSON 文件的纹理图集名称或路径。

例:
Spine --export /path/to/export.json
Spine --export "/path/with spaces/to/export.json"
Spine --input /path/to/project.spine --output /path/to/output/
      --export /path/to/export.json
Spine -i /path/to/project.spine -o /path/to/output/ -e /path/to/export.json
Spine -e /path/to/export1.json -e /path/to/export2.json
Spine -i /path/to/images/ -o /path/to/output/ --pack /path/to/pack.json
Spine -i /path/to/images/ -o /path/to/output/ -p /path/to/pack.json
Spine -i /path/to/project1.spine -o /path/to/output/ -e /path/to/export1.json
      -i /path/to/project2.spine -e /path/to/export2.json -i /path/to/images/
      -o /path/to/output/ -p /path/to/pack.json

输出文件夹不存在时将被创建。如最后一例所示,用户可指定多个导出和纹理打包命令。若命令无效,则 Spine 将返回非零错误代码。

导出时,输入和输出路径为选填项。若指定输入和输出路径,则二者将覆盖导出设置 JSON 文件中的输入和/或输出路径。输入路径为项目文件路径。输出路径可能是文件或文件夹,视导出设置而定。使用 Spine 时,点击 导出 对话框底部的 保存 按钮可创建导出设置 JSON 文件。

纹理打包时,输入和输出路径均为文件夹路径,且均为必填项。 --pack-p 参数可能是写入输出文件时所用的纹理图集名称,也可能是打包设置 JSON 文件的路径。使用 Spine 时,点击 纹理打包器设置 对话框底部的 保存 按钮以创建打包设置 JSON 文件。不含文件扩展名的 JSON 文件名将用作纹理图集名称。

进行纹理打包时,会使用指定打包设置 JSON 文件的设置。若指定的是纹理图集名称,则使用默认设置。而输入文件夹中任何 pack.json 文件的设置均能覆盖上述设置。请参阅 Spine 纹理打包器JSON 配置了解详情。

Windows

Windows 版 Spine 有两个可执行文件: Spine.exeSpine.com 。 EXE 文件为 GUI 应用,它不用控制台窗口即可启动 Spine ,也不用等 Spine 退出。 COM 文件为命令行应用,它将 Spine 的输出文件导向控制台窗口,并等待 Spine 退出。

这两个可执行文件均可用于命令行导出,不过一般而言 COM 文件更受欢迎。如果 Spine 安装文件夹位于系统路径或者当前工作目录,那么指定不含扩展名的 Spine 时将执行 Spine.com 。例如:

Spine -e C:\path\to\export.json

Mac

使用 Mac 版 Spine 时,用户可直接启动 Spine 可执行文件来进行命令行导出,而不用打开 Spine.app 。可执行文件位于 Spine.app/Contents/MacOs/SpineSpine.app 内。例如:

/Applications/Spine/Spine.app/Contents/MacOs/Spine -e /path/to/export.json

Linux

使用 Linux 版 Spine 时,用户通过运行 Spine.sh 脚本来进行命令行导出。例如:

./Spine.sh -e /path/to/export.json

下一节:纹理打包 上一节:权重