Skip to content

iceyear/SiglusFgimageBatchMerge-Rust

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🦀 SiglusFgimageBatchMerge-Rust

GitHub contributors GitHub License

📖 简介

这是一个基于 kiikkuab/SiglusFgimageBatchMerge 的 Rust 重构版本,用于自动化处理 Siglus 引擎游戏中的立绘合成,本项目使用 Summer Pocket 的偏移量数据。

✨ 特性

  • 📊 多线程并行处理,显著提升处理速度
  • 🔄 自动识别并处理不同距离和长度模式的立绘
  • 📁 按角色和距离自动分类保存输出文件
  • 📝 可通过 JSON 配置文件自定义角色配置
  • 📈 友好的命令行进度显示

📋 使用前提

  1. 已经使用 GARBro 等工具将游戏中的 .g00 文件解码为 .png 文件
  2. 有基础知识了解 Siglus 引擎的立绘组成方式(表情+身体部分)

🛠️ 安装

# 克隆仓库
git clone https://github.com/iceyear/SiglusFgimageBatchMerge-Rust.git

# 进入项目目录
cd SiglusFgimageBatchMerge-Rust

# 编译
cargo build --release

📖 使用方法

基本用法

./siglus_fgimage_batch_merge --distance a --length a

参数说明

参数 短参数 说明 默认值
--distance -d 距离模式: 1=远距离, 2=普通, 3=近距离, a=全部 a
--length -l 长度模式: y=长版, n=普通版, a=两者都要 a
--part-folder 部分图像文件夹路径 ./G00/
--g00-folder g00文件文件夹路径 ./g00-origin/
--output-folder 输出文件夹路径 ./output/
--config-file 角色配置文件路径 characters_dict.json

📁 目录结构

程序需要以下目录结构才能正常工作(可修改源码以适应您的需求):

项目目录
├── G00/ (存放解码后的PNG图像文件)
├── g00-origin/ (存放原始g00文件,用于获取偏移量)
├── output/ (输出目录,自动创建)
└── characters_dict.json (角色配置文件,首次运行自动创建)

⚙️ 角色配置文件

程序使用 JSON 格式的配置文件来定义角色关系。首次运行会自动创建默认配置,您可以根据需要修改:

{
  "sr_f01": ["0101", "0102", "0201", "0202", "0301", "0302", "0401"],
  "sr_f02": ["0103", "0203", "0303"],
  "sr_f12": ["13"],
  "sr_f21": ["21", "22"]
}

键为身体部分代码,值为该角色可用的表情代码列表。

🔄 工作流程

  1. 程序根据配置的距离模式和长度模式搜索匹配的图片
  2. 使用原始 g00 文件获取偏移量信息
  3. 根据偏移量合并表情和身体部分图片
  4. 将结果保存到输出目录,按角色和距离分类

📝 注意事项

  • Summer Pocket 的立绘偏移量数据与原始项目可能有所不同
  • 确保拥有足够的磁盘空间用于存储输出图像
  • 大量图片处理可能需要较长时间,请耐心等待
  • 如遇到特定角色的合成问题,可尝试调整配置文件

🙏 致谢

📄 许可证

本项目基于 MIT 许可证开源 - 详见 LICENSE 文件

About

🚀 Siglus 引擎立绘批量合成工具的 Rust 实现版本

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages