CLI 快速开始
Resprite CLI 可以将已保存的 .resprite 工程导出为单张 PNG、序列帧或规则图集,也支持工程检查、JSON 配置和批量导出,便于将资源导出接入项目构建流程。
CLI 目前为实验性功能。本组文档适用于 CLI 0.3.0-prototype,随 Resprite 1.32.6 的 macOS、Windows 版本提供,Linux x86_64 发行包也包含 CLI。--version 返回 CLI 版本,应用版本在“关于”中查看。
准备第一次导出
- 在自己的项目目录中,将工程保存为
hero.resprite。 - 在 Resprite 中打开 帮助 → 命令行工具,拷贝完整命令,或选择下方对应平台的示例。
- 将应用和工程路径替换为实际路径。输出父目录必须已经存在;首次执行时,
hero.png应不存在。
CLI 只读取磁盘中已保存的内容,不修改源工程或编辑器中的文档、帧和选区。帧号从 0 开始。所有平台都需要可用的图形环境,执行时不显示编辑器窗口。
按平台运行
- macOS
- Windows
- Linux
发行包包含 Apple Silicon(arm64)和 Intel(x86_64)架构。具体 macOS 版本和硬件的兼容性仍待确认;无 GPU CI 和无交互服务会话尚未验证。
cli='/Applications/Resprite.app/Contents/MacOS/resprite-cli'
"$cli" export image "$HOME/Game Projects/hero.resprite" \
--output "$HOME/Game Projects/hero.png" --frame 0
请保留完整 .app,不要只拷贝可执行文件。使用 "$cli" --help 查看语法,使用 "$cli" --version 查看 CLI 版本。
当前提供 Windows x64 版本。Windows ARM64、RDP、断开会话、服务会话和无 GPU CI 尚未验证。
可执行文件位于安装目录的 cli\resprite-cli.exe,可从 Resprite 快捷方式定位安装目录。以下示例在 PowerShell 中执行:
$cli = 'C:\Apps\Resprite\cli\resprite-cli.exe'
& $cli export image 'D:\Game Projects\hero.resprite' --output 'D:\Game Projects\hero.png' --frame 0
if ($LASTEXITCODE -ne 0) { throw "Resprite export failed: $LASTEXITCODE" }
请保留完整安装目录,包括 CLI 相邻的 DLL 和 data 文件夹。使用 & $cli --help 或 & $cli --version 查看帮助或 CLI 版本。
使用 cmd 批处理
"C:\Apps\Resprite\cli\resprite-cli.exe" export image "D:\Game Projects\hero.resprite" --output "D:\Game Projects\hero.png" --frame 0
if errorlevel 1 exit /b %errorlevel%
Linux x86_64 已在 Ubuntu 22.04 本机图形会话中验证,包含 X11(XWayland)和原生 Wayland。其他发行版和运行环境尚未验证;不提供 ARM64 版本,当前不支持无 GPU CI。所有命令,包括 --help 和 --version,均需要可用的图形会话。
**AppDir:**解压时保留符号链接与执行权限,并保留完整发行目录。
cli='/home/user/Apps/Resprite.AppDir/usr/bin/cli/resprite-cli'
"$cli" export image '/home/user/Game Projects/hero.resprite' \
--output '/home/user/Game Projects/hero.png' --frame 0
使用 "$cli" --help 或 "$cli" --version 查看帮助或 CLI 版本。
**AppImage:**使用原始 .AppImage 文件,并将 --cli 放在应用参数首位。将示例文件名替换为实际安装包名称。
cli='/home/user/Apps/Resprite.AppImage'
"$cli" --cli export image '/home/user/Game Projects/hero.resprite' \
--output '/home/user/Game Projects/hero.png' --frame 0
使用 "$cli" --cli --help 或 "$cli" --cli --version。不要在脚本中保存 AppImage 的临时挂载路径。
成功后,在源工程旁找到 hero.png。图片合成可见图层并保留透明度,终端还会输出一条 JSON 结果。之后需要替换 PNG 时,在导出命令末尾添加 --overwrite。动画目录使用不同的覆盖规则。
路径与后续示例
安装不会将 CLI 加入 PATH。工程、导出结果和自定义脚本应放在自己的项目目录,安装目录中的内容可能随升级被替换或随卸载被移除。应用移动或改名后,更新脚本路径,也可以重新打开帮助页拷贝命令。
命令行相对路径以终端当前目录为基准,JSON 配置内的相对路径以配置文件所在目录为基准。包含空格的路径需要加引号。
其他页面使用 resprite-cli 作为命令简写。在已设置 $cli 的终端中,应替换为:
| 平台 | 调用方式 |
|---|---|
| macOS / Linux AppDir | "$cli" ... |
| Windows PowerShell | & $cli ... |
| Linux AppImage | "$cli" --cli ... |
帮助页还可以打开随包的平台、动画和构建流程说明,供离线阅读。使用 在文件夹中显示 定位 Markdown 文件并自行选择阅读器。
故障排查
没有生成图片时,先检查退出码和 stderr,再确认源工程已保存、输出父目录存在且可写,以及需要替换时已明确允许覆盖。链接目标会被拒绝;文件占用和权限限制也可能导致失败。详见结果与退出码。
每次调用最多执行 120 秒,包括批量中的所有任务。超时或强制结束后,先核对可能已生成的产物,再决定是否重试。系统临时目录中可能保留 resprite_cli_*,输出父目录中可能保留 .resprite_cli_*。所有 CLI 任务停止前,不要删除锁文件或清理相关目录。
- macOS
- Windows
- Linux
如果 macOS 拦截启动,请保留系统提示并联系支持。自检脚本不能授予启动许可或解除系统限制。
检查 macOS 安装
/bin/bash '/Applications/Resprite.app/Contents/Helpers/RespriteCLI.app/Contents/Resources/verify_macos_installation.sh'
按需替换安装路径。脚本使用 macOS 自带工具和随包示例,不需要另装开发工具,不修改安装文件或自己的工程。完成后打印 report.txt 路径,并保留示例导出及 stdout/stderr,便于向支持人员提供诊断信息。
PowerShell 5.1 的 > 会重新编码外部程序输出。在已正确解码输出的会话中,可使用 Out-File -Encoding utf8 保存 UTF-8。通过 System.Diagnostics.Process 读取时,将 StandardOutputEncoding 设为 UTF-8。
检查 Windows 安装
使用系统自带的 64 位 Windows PowerShell 5.1,替换实际安装路径后执行:
powershell.exe -NoProfile -ExecutionPolicy Bypass -File 'C:\Apps\Resprite\cli\verify_windows_installation.ps1'
脚本使用随包示例,不需要另装开发工具或联网下载依赖,不修改安装文件或自己的工程。完成后打印 report.json 路径,并保留示例导出。追加 -CheckFilesOnly 只检查安装文件,不验证实际导出是否可用。
遇到 graphics_unavailable / 退出码 70 时,请在可访问 X11 或 Wayland 的图形会话中运行。只有对应会话可用时才设置 GDK_BACKEND=x11 或 GDK_BACKEND=wayland。请保留 stderr,其中可能包含系统加载器诊断。文件系统不支持所需安全写入操作时,导出也会失败。
AppImage 提示缺少 FUSE 时,可使用解压运行模式:
"$cli" --appimage-extract-and-run --cli inspect '/home/user/Game Projects/hero.resprite'
检查 Linux 安装
永久解压的 AppDir 可执行:
python3 '/home/user/Apps/Resprite.AppDir/usr/bin/cli/verify_linux_installation.py'
AppImage 用户可先在临时目录运行 "$cli" --appimage-extract,再运行 python3 squashfs-root/usr/bin/cli/verify_linux_installation.py。自检需要 Python 3、Bash 和随包运行库,不需要开发工具。脚本使用随包示例,不修改安装文件或自己的工程;报告和示例导出保留在打印的位置。追加 --check-files-only 可在无图形会话时检查文件,但不能验证实际导出。