185
README.en.md
185
README.en.md
@@ -4,136 +4,151 @@
|
|||||||
[](https://github.com/ww-rm/SpineViewer/releases)
|
[](https://github.com/ww-rm/SpineViewer/releases)
|
||||||
[](https://github.com/ww-rm/SpineViewer/releases)
|
[](https://github.com/ww-rm/SpineViewer/releases)
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
[中文](README.md) | [English](README.en.md)
|
[中文](README.md) | [English](README.en.md)
|
||||||
|
|
||||||
A simple and user-friendly Spine file viewer and exporter with multi-language support (Chinese/English/Japanese).
|
Spine file viewer & exporter, also a dynamic wallpaper program supporting Spine animations.
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
https://github.com/user-attachments/assets/37b6b730-088a-4352-827a-c338127a16f0
|
[https://github.com/user-attachments/assets/37b6b730-088a-4352-827a-c338127a16f0](https://github.com/user-attachments/assets/37b6b730-088a-4352-827a-c338127a16f0)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## Features
|
## Features
|
||||||
|
|
||||||
- Multiple versions of Spine files
|
- Supports multiple Spine file versions (`2.1.x; 3.4.x - 4.2.-`)
|
||||||
- Batch file opening via drag-and-drop or copy-paste
|
- List-based multi-skeleton view with rendering order management
|
||||||
- Batch preview
|
- Supports multi-track animations
|
||||||
- List-based multi-skeleton viewing and render order management
|
- Supports skin/slot/attachment settings
|
||||||
- Multi-selection in lists for batch skeleton parameter settings
|
- Debug rendering support
|
||||||
- Multi-track animation settings
|
- Frame rate / model / track time scale adjustment
|
||||||
- Skin and custom slot attachment settings
|
- Track alpha blending control
|
||||||
- Custom slot visibility
|
- Export single frame / GIF / video
|
||||||
- Debug rendering
|
- Custom export via FFmpeg
|
||||||
- Playback speed adjustment for view/model/track timelines
|
- Supports non-PNG texture formats
|
||||||
- Track alpha blending parameter settings
|
- Desktop dynamic wallpaper with auto-start support
|
||||||
- Fullscreen preview
|
|
||||||
- Export to single frame, image sequence, animated GIF, or video file
|
|
||||||
- Automatic resolution batch export
|
|
||||||
- Custom export with FFmpeg
|
|
||||||
- Program parameter saving
|
|
||||||
- File extension association
|
|
||||||
- Texture images in formats other than PNG
|
|
||||||
- Launch at startup with persistent dynamic wallpaper
|
|
||||||
- ......
|
- ......
|
||||||
|
|
||||||
### Supported Spine Versions
|
---
|
||||||
|
|
||||||
| Version | View & Export |
|
|
||||||
| :-----: | :------------------: |
|
|
||||||
| `2.1.x` | :white\_check\_mark: |
|
|
||||||
| `3.4.x` | :white\_check\_mark: |
|
|
||||||
| `3.5.x` | :white\_check\_mark: |
|
|
||||||
| `3.6.x` | :white\_check\_mark: |
|
|
||||||
| `3.7.x` | :white\_check\_mark: |
|
|
||||||
| `3.8.x` | :white\_check\_mark: |
|
|
||||||
| `4.0.x` | :white\_check\_mark: |
|
|
||||||
| `4.1.x` | :white\_check\_mark: |
|
|
||||||
| `4.2.x` | :white\_check\_mark: |
|
|
||||||
| `4.3.x` | |
|
|
||||||
|
|
||||||
More versions under development \:rocket: \:rocket: \:rocket:
|
|
||||||
|
|
||||||
### Supported Export Formats
|
|
||||||
|
|
||||||
| Format | Use Case |
|
|
||||||
| -------------- | ----------------------------------------------------------------------------- |
|
|
||||||
| Single Frame | Generate high-resolution images of models; manually adjust the desired frame. |
|
|
||||||
| Frame Sequence | Supports PNG format with transparency and lossless compression. |
|
|
||||||
| GIF/Video | Export preview animations or common video formats. |
|
|
||||||
| Custom Export | Supports arbitrary FFmpeg parameters for custom, complex export needs. |
|
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
Download the compressed package from the [Release](https://github.com/ww-rm/SpineViewer/releases) page.
|
Download the compressed package from the [Releases](https://github.com/ww-rm/SpineViewer/releases) page.
|
||||||
|
|
||||||
The software requires the [.NET Desktop Runtime 8.0.x](https://dotnet.microsoft.com/download/dotnet/8.0) to run.
|
The program requires the [.NET Desktop Runtime 8.0.x](https://dotnet.microsoft.com/download/dotnet/8.0) to be installed.
|
||||||
|
|
||||||
Alternatively, download the package with the `SelfContained` suffix for standalone execution.
|
You can also download packages with the `SelfContained` suffix, which can run independently without additional installations.
|
||||||
|
|
||||||
For exporting GIF/MP4 and other animation/video formats, FFmpeg must be installed and added to the system environment variables. Visit the [FFmpeg Windows download page](https://ffmpeg.org/download.html#build-windows) or download the latest version directly: [ffmpeg-release-full.7z](https://www.gyan.dev/ffmpeg/builds/ffmpeg-release-full.7z).
|
Exporting GIF/MP4 or other animated/video formats requires **ffmpeg** installed locally and added to the system PATH. Download [FFmpeg for Windows](https://ffmpeg.org/download.html#build-windows) or the latest full build [ffmpeg-release-full.7z](https://www.gyan.dev/ffmpeg/builds/ffmpeg-release-full.7z).
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Changing Display Language
|
||||||
|
|
||||||
|
Currently, the program supports the following interface languages:
|
||||||
|
|
||||||
|
- `ZH` (Chinese)
|
||||||
|
- `EN` (English)
|
||||||
|
- `JA` (Japanese)
|
||||||
|
|
||||||
|
Change the language via the menu: **File → Preferences… → Language**, then confirm.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
|
|
||||||
### How to Change the Display Language
|
### Overview
|
||||||
|
|
||||||
In the menu, go to "File" -> "Preferences..." -> "Language," select your desired language, and confirm the change.
|
The program uses a left-right layout: the left panel contains controls, the right panel displays the preview.
|
||||||
|
|
||||||
### Basic Overview
|
The left panel contains three sub-panels:
|
||||||
|
|
||||||
The program is organized into a left-right layout:
|
- **Models**: Lists imported and rendered models. Set model parameters, rendering order, and other model-related functions here.
|
||||||
|
- **Browser**: Preview files in a folder without actually importing them. Generate WebP previews or import selected models.
|
||||||
|
- **Canvas**: Set parameters for the right-side preview display.
|
||||||
|
|
||||||
- **Left Panel:** Functionality panel.
|
Most buttons, labels, or input fields show help text on hover.
|
||||||
- **Right Panel:** Preview display.
|
|
||||||
|
|
||||||
The left panel includes three sub-panels:
|
---
|
||||||
|
|
||||||
- **Browse:** Preview the content of a specified folder without importing files into the program. This panel allows generating `.webp` previews for models or importing selected models.
|
### Importing Skeletons
|
||||||
- **Model:** Lists imported models for rendering. Parameters and rendering order can be adjusted here, along with other model-related functionalities.
|
|
||||||
- **Display:** Adjust parameters for the right-side preview display.
|
|
||||||
|
|
||||||
Hover your mouse over buttons, labels, or input fields to see help text for most UI elements.
|
Drag-and-drop or paste skeleton files/folders directly into the **Models** panel.
|
||||||
|
|
||||||
### Skeleton Import
|
Alternatively, use the right-click menu in the **Browser** panel to import selected items.
|
||||||
|
|
||||||
Drag-and-drop or paste skeleton files/directories into the Model panel.
|
---
|
||||||
|
|
||||||
Alternatively, use the right-click menu in the Browse panel to import selected items.
|
### Adjusting Content
|
||||||
|
|
||||||
### Content Adjustment
|
The **Models** panel supports right-click menus, some hotkeys, and batch editing via multi-selection.
|
||||||
|
|
||||||
The Model panel supports right-click menus, some shortcuts, and batch adjustments of model parameters through multi-selection.
|
Mouse interactions in the preview panel:
|
||||||
|
|
||||||
For preview display adjustments:
|
- **Left click**: select and drag models. Hold `Ctrl` for multi-selection (synchronized with the model list).
|
||||||
|
- **Right click**: drag the entire canvas.
|
||||||
|
- **Mouse wheel**: zoom in/out. Hold `Ctrl` to scale selected models together.
|
||||||
|
- **Render selected only**: preview only the selected models, selection can only be changed via the left panel.
|
||||||
|
|
||||||
- **Left-click:** Select and drag models. Hold `Ctrl` for multi-selection, synchronized with the left-side list.
|
Playback controls below the preview allow time adjustment, acting as a simple player.
|
||||||
- **Right-click:** Drag the entire display.
|
|
||||||
- **Scroll wheel:** Zoom in/out. Hold `Ctrl` to scale selected models.
|
|
||||||
- **Render selected-only mode:** In this mode, the preview only shows selected models, and selection status can only be changed via the left-side list.
|
|
||||||
|
|
||||||
The buttons below the preview display allow time adjustments, serving as a simple playback control.
|
---
|
||||||
|
|
||||||
### Content Export
|
### Exporting Content
|
||||||
|
|
||||||
Export follows the **WYSIWYG (What You See Is What You Get)** principle, meaning the preview display reflects the exported output.
|
Right-click on models in the list to access export options.
|
||||||
|
|
||||||
Use the right-click menu in the Model panel to export selected items.
|
Key export parameters:
|
||||||
|
|
||||||
Key export parameters include:
|
- **Output folder**: Optional. If not provided, outputs go to each model’s folder. Otherwise, all outputs go to the specified folder.
|
||||||
|
- **Single export**: Default exports each model separately. If enabled, all selected models are rendered together in one output.
|
||||||
|
- **Auto resolution**: Ignores preview canvas resolution; exported resolution matches the actual size of content. For animations or videos, ensures full display of the animation.
|
||||||
|
|
||||||
- **Output folder:** Optional. When not specified, output is saved to the respective model folder; otherwise, all output is saved to the provided folder.
|
---
|
||||||
- **Export single:** By default, each model is exported independently. Selecting "Export single" renders all selected models in a single frame, producing a unified output.
|
|
||||||
- **Auto resolution:** Ignores the preview resolution and viewport parameters, exporting output at the actual size of the content. For animations/videos, the output matches the size required for full visibility.
|
|
||||||
|
|
||||||
### Dynamic Wallpaper
|
### Dynamic Wallpaper
|
||||||
|
|
||||||
Dynamic wallpaper is implemented through desktop projection, allowing the content of the current preview to be projected onto the desktop in real time.
|
The dynamic wallpaper projects the current preview content to the desktop in real time.
|
||||||
|
|
||||||
You can enable or disable desktop projection from the program preferences or the right-click menu of the tray icon. After adjusting the model and display parameters, you can save the current configuration as a workspace file for convenient restoration later.
|
Enable or disable via program preferences or the tray icon menu. Save workspace files to preserve model and canvas settings.
|
||||||
|
|
||||||
If you want the wallpaper to stay active after startup, you can enable auto-start in the preferences and specify which workspace file should be loaded when the program launches.
|
Auto-start with Windows can also be enabled, along with loading a specific workspace on startup.
|
||||||
|
|
||||||
### More Information
|
---
|
||||||
|
|
||||||
For detailed usage and documentation, see the [Wiki](https://github.com/ww-rm/SpineViewer/wiki). For usage questions or bug reports, submit an [Issue](https://github.com/ww-rm/SpineViewer/issues).
|
### Command-line Tool
|
||||||
|
|
||||||
|
The project includes a CLI tool `SpineViewerCLI` for simple operations on a single model (querying parameters, exporting, etc.). Windows and Linux binaries are provided in Releases.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
$ SpineViewerCLI -h
|
||||||
|
Description:
|
||||||
|
Root Command
|
||||||
|
|
||||||
|
Usage:
|
||||||
|
SpineViewerCLI [command] [options]
|
||||||
|
|
||||||
|
Options:
|
||||||
|
-q, --quiet Suppress console logging (quiet mode).
|
||||||
|
-?, -h, --help Show help and usage information
|
||||||
|
--version Show version information
|
||||||
|
|
||||||
|
Commands:
|
||||||
|
query <skel> Query information of single model
|
||||||
|
preview <skel> Preview a model
|
||||||
|
export <skel> Export single model
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### More
|
||||||
|
|
||||||
|
Detailed instructions and usage guides can be found in the [Wiki](https://github.com/ww-rm/SpineViewer/wiki).
|
||||||
|
Report issues or bugs via [GitHub Issues](https://github.com/ww-rm/SpineViewer/issues).
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## Acknowledgements
|
## Acknowledgements
|
||||||
|
|
||||||
@@ -147,6 +162,6 @@ For detailed usage and documentation, see the [Wiki](https://github.com/ww-rm/Sp
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
*If you find this project helpful, please give it a \:star: and share it with others! :)*
|
*If you like this project, please give it a :star: and share it with others! :\)*
|
||||||
|
|
||||||
[](https://starchart.cc/ww-rm/SpineViewer)
|
[](https://starchart.cc/ww-rm/SpineViewer)
|
||||||
|
|||||||
87
README.md
87
README.md
@@ -16,53 +16,19 @@ https://github.com/user-attachments/assets/37b6b730-088a-4352-827a-c338127a16f0
|
|||||||
|
|
||||||
## 功能
|
## 功能
|
||||||
|
|
||||||
- 支持多版本 spine 文件
|
- 支持多版本 spine 文件 (`2.1.x; 3.4.x - 4.2.x`)
|
||||||
- 支持拖拽/复制粘贴批量打开文件
|
|
||||||
- 支持批量预览
|
|
||||||
- 支持列表式多骨骼查看和渲染层级管理
|
- 支持列表式多骨骼查看和渲染层级管理
|
||||||
- 支持列表多选批量设置骨骼参数
|
- 支持多轨道动画
|
||||||
- 支持多轨道动画设置
|
- 支持皮肤/插槽/附件设置
|
||||||
- 支持皮肤/自定义插槽附件设置
|
|
||||||
- 支持自定义插槽可见性
|
|
||||||
- 支持调试渲染
|
- 支持调试渲染
|
||||||
- 支持画面/模型/轨道时间倍速设置
|
- 支持画面/模型/轨道时间倍速设置
|
||||||
- 支持设置轨道 Alpha 混合参数
|
- 支持设置轨道 Alpha 混合参数
|
||||||
- 支持全屏预览
|
|
||||||
- 支持单帧/动图/视频文件导出
|
- 支持单帧/动图/视频文件导出
|
||||||
- 支持自动分辨率批量导出
|
|
||||||
- 支持 FFmpeg 自定义导出
|
- 支持 FFmpeg 自定义导出
|
||||||
- 支持程序参数保存
|
- 支持非 PNG 格式的纹理图片格式
|
||||||
- 支持文件后缀关联
|
|
||||||
- 支持非 png 格式的纹理图片格式
|
|
||||||
- 支持开机自启常驻动态壁纸
|
- 支持开机自启常驻动态壁纸
|
||||||
- ......
|
- ......
|
||||||
|
|
||||||
### Spine 版本支持
|
|
||||||
|
|
||||||
| 版本 | 查看&导出 |
|
|
||||||
| :---: | :---: |
|
|
||||||
| `2.1.x` | :white_check_mark: |
|
|
||||||
| `3.4.x` | :white_check_mark: |
|
|
||||||
| `3.5.x` | :white_check_mark: |
|
|
||||||
| `3.6.x` | :white_check_mark: |
|
|
||||||
| `3.7.x` | :white_check_mark: |
|
|
||||||
| `3.8.x` | :white_check_mark: |
|
|
||||||
| `4.0.x` | :white_check_mark: |
|
|
||||||
| `4.1.x` | :white_check_mark: |
|
|
||||||
| `4.2.x` | :white_check_mark: |
|
|
||||||
| `4.3.x` | |
|
|
||||||
|
|
||||||
更多版本正在施工 :rocket: :rocket: :rocket:
|
|
||||||
|
|
||||||
### 导出格式支持
|
|
||||||
|
|
||||||
| 导出格式 | 适用场景 |
|
|
||||||
| --- | --- |
|
|
||||||
| 单帧画面 | 支持生成高清模型画面图像, 可手动调节需要的一帧. |
|
|
||||||
| 帧序列 | 支持 PNG 格式帧序列, 可保留透明通道且无损压缩. |
|
|
||||||
| 动图/视频 | 可以生成预览动图或者常见格式视频. |
|
|
||||||
| 自定义导出 | 除上述预设方案, 支持提供任意 FFmpeg 参数进行导出, 满足自定义复杂需求. |
|
|
||||||
|
|
||||||
## 安装
|
## 安装
|
||||||
|
|
||||||
前往 [Release](https://github.com/ww-rm/SpineViewer/releases) 界面下载压缩包.
|
前往 [Release](https://github.com/ww-rm/SpineViewer/releases) 界面下载压缩包.
|
||||||
@@ -73,20 +39,26 @@ https://github.com/user-attachments/assets/37b6b730-088a-4352-827a-c338127a16f0
|
|||||||
|
|
||||||
导出 GIF/MP4 等动图/视频格式需要在本地安装 ffmpeg 命令行, 并且添加至环境变量, [点击前往 FFmpeg-Windows 下载页面](https://ffmpeg.org/download.html#build-windows), 也可以点这个下载最新版本 [ffmpeg-release-full.7z](https://www.gyan.dev/ffmpeg/builds/ffmpeg-release-full.7z).
|
导出 GIF/MP4 等动图/视频格式需要在本地安装 ffmpeg 命令行, 并且添加至环境变量, [点击前往 FFmpeg-Windows 下载页面](https://ffmpeg.org/download.html#build-windows), 也可以点这个下载最新版本 [ffmpeg-release-full.7z](https://www.gyan.dev/ffmpeg/builds/ffmpeg-release-full.7z).
|
||||||
|
|
||||||
|
## 修改显示语言
|
||||||
|
|
||||||
|
本项目目前支持以下界面显示语言:
|
||||||
|
|
||||||
|
- `ZH` (中文)
|
||||||
|
- `EN` (English)
|
||||||
|
- `JA` (日本語)
|
||||||
|
|
||||||
|
可以通过窗口菜单的 "文件" -> "首选项..." -> "语言", 选择你需要的语言并确认修改.
|
||||||
|
|
||||||
## 使用方法
|
## 使用方法
|
||||||
|
|
||||||
### 如何修改显示语言
|
|
||||||
|
|
||||||
窗口菜单的 "文件" -> "首选项..." -> "语言", 选择你需要的语言并确认修改.
|
|
||||||
|
|
||||||
### 基本介绍
|
### 基本介绍
|
||||||
|
|
||||||
程序大致是左右布局, 左侧是功能面板, 右侧是画面.
|
程序大致是左右布局, 左侧是功能面板, 右侧是画面.
|
||||||
|
|
||||||
左侧有三个子面板, 分别是:
|
左侧有三个子面板, 分别是:
|
||||||
|
|
||||||
- **浏览**. 该面板用于预览指定文件夹的内容, 并没有真正导入文件到程序. 在该面板可以为模型生成 webp 格式的预览图, 或者导入选中的模型.
|
|
||||||
- **模型**. 该面板记录导入并进行渲染的模型列表, 可以在这个面板设置与模型渲染相关的参数和渲染顺序, 以及一些与模型有关的功能.
|
- **模型**. 该面板记录导入并进行渲染的模型列表, 可以在这个面板设置与模型渲染相关的参数和渲染顺序, 以及一些与模型有关的功能.
|
||||||
|
- **浏览**. 该面板用于预览指定文件夹的内容, 并没有真正导入文件到程序. 在该面板可以为模型生成 webp 格式的预览图, 或者导入选中的模型.
|
||||||
- **画面**. 该面板用于设置右侧预览画面的参数.
|
- **画面**. 该面板用于设置右侧预览画面的参数.
|
||||||
|
|
||||||
绝大部分按钮或者标签或者输入框都可以通过鼠标指针悬停来获取帮助文本.
|
绝大部分按钮或者标签或者输入框都可以通过鼠标指针悬停来获取帮助文本.
|
||||||
@@ -112,9 +84,7 @@ https://github.com/user-attachments/assets/37b6b730-088a-4352-827a-c338127a16f0
|
|||||||
|
|
||||||
### 内容导出
|
### 内容导出
|
||||||
|
|
||||||
导出遵循 "所见即所得" 原则, 即实时预览的画面就是你导出的画面.
|
在模型列表里, 右键单击选中的模型, 弹出菜单里可以对选中项执行导出操作.
|
||||||
|
|
||||||
在模型面板里, 右键菜单可以对选中项进行导出操作.
|
|
||||||
|
|
||||||
导出有以下几个关键参数:
|
导出有以下几个关键参数:
|
||||||
|
|
||||||
@@ -130,6 +100,29 @@ https://github.com/user-attachments/assets/37b6b730-088a-4352-827a-c338127a16f0
|
|||||||
|
|
||||||
如果希望开机自启常驻壁纸, 也可以在首选项中启用开机自启, 并且设置启动后需要加载的工作区文件.
|
如果希望开机自启常驻壁纸, 也可以在首选项中启用开机自启, 并且设置启动后需要加载的工作区文件.
|
||||||
|
|
||||||
|
### 命令行工具
|
||||||
|
|
||||||
|
项目附带一个纯命令行工具 `SpineViewerCLI`, 目前支持对单个模型执行一些简单操作, 例如参数值查询以及导出等, 并且 Release 界面提供 Windows 和 Linux 多平台二进制文件.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
$ SpineViewerCLI -h
|
||||||
|
Description:
|
||||||
|
Root Command
|
||||||
|
|
||||||
|
Usage:
|
||||||
|
SpineViewerCLI [command] [options]
|
||||||
|
|
||||||
|
Options:
|
||||||
|
-q, --quiet Suppress console logging (quiet mode).
|
||||||
|
-?, -h, --help Show help and usage information
|
||||||
|
--version Show version information
|
||||||
|
|
||||||
|
Commands:
|
||||||
|
query <skel> Query information of single model
|
||||||
|
preview <skel> Preview a model
|
||||||
|
export <skel> Export single model
|
||||||
|
```
|
||||||
|
|
||||||
### 更多
|
### 更多
|
||||||
|
|
||||||
更为详细的使用方法和说明见 [Wiki](https://github.com/ww-rm/SpineViewer/wiki), 有使用上的问题或者 BUG 可以提个 [Issue](https://github.com/ww-rm/SpineViewer/issues).
|
更为详细的使用方法和说明见 [Wiki](https://github.com/ww-rm/SpineViewer/wiki), 有使用上的问题或者 BUG 可以提个 [Issue](https://github.com/ww-rm/SpineViewer/issues).
|
||||||
@@ -146,6 +139,6 @@ https://github.com/user-attachments/assets/37b6b730-088a-4352-827a-c338127a16f0
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
*如果你觉得这个项目不错请给个 :star:, 并分享给更多人知道! :)*
|
*如果你觉得这个项目不错请给个 :star:, 并分享给更多人知道! :\)*
|
||||||
|
|
||||||
[](https://starchart.cc/ww-rm/SpineViewer)
|
[](https://starchart.cc/ww-rm/SpineViewer)
|
||||||
|
|||||||
Reference in New Issue
Block a user