[工具] SpineProjectRebuilder 是一款专为 Spine 骨骼动画开发者设计的 **项目反推工具** Spine 项目反推工具

SpineProjectRebuilder 是一款专为 Spine 骨骼动画开发者设计的 **项目反推工具** Spine 项目反推工具

SpineProjectRebuilder 是一款专为 Spine 骨骼动画开发者设计的 **项目反推工具**。

当您只有 Spine 导出的运行时文件(`.json` + `.atlas` + `.png`),但没有原始 `.spine` 项目文件时,本工具可以从这些导出文件中**反推还原出可导入 Spine 编辑器的项目结构**。

反推完成后,只需在 Spine 编辑器中执行 **File → Import Data**,即可重建完整的骨骼树、插槽、皮肤和所有动画,再保存为 `.spine` 项目文件,实现从运行时资产到可编辑项目的完整还原。


核心功能

1. Atlas 大图解包

  • 完整支持 **Spine 3.x / 4.x** 标准 `.atlas` 格式

  • 精确处理精灵坐标(xy)、尺寸(size)、原始尺寸(orig)、偏移(offset)

  • 自动还原旋转精灵(`rotate: true`)------ 顺时针旋转90°还原

  • 完整支持 Spine 的下左坐标系(bottom-left origin)offset 还原

  • 解包散图完整保留透明通道

2. JSON 骨骼数据处理

  • 自动解析 Spine 导出的 JSON 骨骼数据

  • 修正 `skeleton.images` 路径指向 `./images/`,确保 Spine 编辑器能正确关联图片

  • 保留完整的骨骼层次、插槽、皮肤、动画关键帧数据

  • JSON 解析失败时自动回退为原文件复制,确保不丢失数据

3. 项目目录结构生成

自动创建标准 Spine 项目目录结构:

```

output/

projectName/

images/ ← 解包还原的散图

body.png

head.png

leg.png

111/ ← 子目录精灵自动创建

body.png

head.png

leg.png

bandit1/

body.png

head.png

leg.png

projectName.json ← 修正后的骨骼数据

```

  • 精灵名含路径分隔符时自动创建对应子目录

  • 输出结构可直接被 Spine 编辑器识别

4. 帧动画支持

  • 自动识别 `index` 字段

  • 对动画帧文件名添加帧序号后缀(如 `walk_0000.png`、`walk_0001.png`)

  • 完整保留帧序列信息

5. 单文件模式

  • 指定单组 `.json` + `.atlas` + `.png` 进行反推

  • 支持**拖拽**文件到程序窗口

  • 自动推断配套文件路径(选择 `.json` 后自动填充 `.atlas` 和 `.png` 路径)

6. 批量目录模式

  • 递归扫描目录,自动匹配 `.json` + `.atlas` 配套文件

  • 一次性反推所有 Spine 项目

  • 自动跳过非 Spine JSON 文件(不包含 `skeleton` 字段的 JSON)


使用方法

单文件模式

  1. 选择"单个文件反推"模式

  2. 点击"浏览"选择 `.json` 骨骼数据文件(自动填充 Atlas 和 PNG 路径)

  3. 设置输出目录

  4. 点击"开始反推"

> 也可以直接将 `.json` 或 `.atlas` 文件拖拽到程序窗口,路径会自动填充。

批量模式

  1. 选择"批量反推"模式

  2. 选择包含 Spine 导出文件的目录

  3. 设置输出目录

  4. 点击"开始反推"

在 Spine 编辑器中导入

反推完成后,按以下步骤在 Spine 编辑器中还原项目:

  1. 打开 Spine 编辑器(版本需与 JSON 中 `skeleton.spine` 字段标注的版本匹配)
  2. 执行 **File → Import Data**
  3. 选择输出目录中的 `.json` 文件
  4. Spine 编辑器将自动重建骨骼树、插槽、皮肤和所有动画
  5. 保存为 `.spine` 项目文件

反推原理

SpineProjectRebuilder 的处理流程:

  1. **解析 Atlas** --- 读取 `.atlas` 文件,获取精灵列表和位置信息

  2. **提取散图** --- 从大图 PNG 中裁剪每个精灵,还原旋转和偏移,保存到 `images/` 目录

  3. **处理 JSON** --- 解析骨骼数据文件,修正 `skeleton.images` 路径指向 `./images/`

  4. **输出项目** --- 生成 Spine 编辑器可直接导入的完整项目结构


可还原与不可还原内容

| 可完整还原 | 不可还原 |

|-----------|----------|

| 骨骼层次结构 | 编辑器工作区布局 |

| 所有动画关键帧 | 编辑器参考线/备注 |

| 皮肤/附件定义 | 编辑历史 |

| 混合模式/颜色 | 原始未裁切高清素材 |

| 事件定义 | IK 约束的可视化编辑状态 |

| 变形目标(Mesh) | 网格权重的编辑器视图 |

| 约束关系 | |

> 注:不可还原的内容均为编辑器辅助信息,不影响动画的最终渲染效果。反推后的项目在运行时表现与原始项目完全一致。


适用人群

| 人群 | 使用场景 |

|------|---------|

| 游戏开发者 | 丢失 `.spine` 源文件后从运行时资产恢复项目 |

| 外包团队 | 接收客户交付的运行时文件后需要二次修改 |

| 游戏学习者 | 研究商业游戏的骨骼动画结构和动画技巧 |

| 美术师 | 需要修改已有动画但只有导出文件 |

| 项目迁移 | 将旧项目资产迁移到新的 Spine 版本 |


系统要求

  • **操作系统**: Windows 7 / 8 / 10 / 11(64位)

  • **运行库**: 无需安装额外运行库

  • **内存**: 建议 512MB 以上(处理大量精灵时需要更多)

  • **Spine 编辑器**: 需要匹配版本的 Spine 编辑器来导入反推结果


注意事项

  1. **Spine 版本匹配**:导入时 Spine 编辑器版本需与 JSON 中 `skeleton.spine` 字段标注的版本匹配,否则可能导入失败

  2. 解包出的散图已完整还原透明通道、偏移和原始尺寸

  3. 批量模式会自动跳过不包含 `skeleton` 字段的 JSON 文件,避免误处理

  4. 反推后的项目建议立即保存为 `.spine` 文件,以便后续编辑


常见问题

**Q: 反推后的项目能完全替代原始 .spine 项目吗?**

A: 动画数据(骨骼、动画、皮肤、事件等)可以完整还原,运行时表现与原始项目一致。但编辑器辅助信息(工作区布局、参考线、编辑历史等)无法还原。

**Q: 支持二进制格式的 Spine 导出文件吗?**

A: 当前版本仅支持 JSON 文本格式的骨骼数据文件,不支持 `.skel` 二进制格式。

**Q: 反推后图片路径不对怎么办?**

A: 工具会自动将 JSON 中的 `skeleton.images` 路径修正为 `./images/`,确保 Spine 编辑器能正确关联图片。如果仍有问题,请检查输出目录结构是否完整。

**Q: 可以只反推部分动画吗?**

A: 反推是针对整个 JSON 文件的,会还原其中包含的所有骨骼和动画数据。如需只保留部分动画,可在 Spine 编辑器导入后手动删除不需要的动画。

百度网盘下载:

链接: 百度网盘 请输入提取码 提取码: 2t5f

蓝奏云下载地址:

https://net188.lanzout.com/b009huurrc 密码:fp8k