Psyduck

Spineの書き出しを自動化するツールは存在しますか?

すでに書き出し設定が保存されているSpineデータの
Atlasテクスチャーのスケール感を2倍にして再書き出ししたいです。
100点ほどあり、量が多いので自動化したいと考えています。

複数のSpineデータが入っているフォルダーを1つのフォルダーに格納し
それを好きな場所にフォルダーごとに書き出ししたいです。

書き出ししたいデータは以下です。
~~
.skel
.atlas.txt
Atlasテクスチャ
~~

もしその様なプログラムがあれば
お教えいただけると嬉しいです。
宜しくお願いいたします。
添付ファイルを見るにはパーミッションが必要です
Psyduck
  • 記事: 2

Misaki

こんにちは!
書き出しの自動化ですが、Spineはコマンドラインから実行してインポート及びエクスポートを行うことができますので、ユーザーガイドのこちらのページを参考にご自身で書き出しのスクリプトを作成することができます。
コマンドラインインターフェース - Spineユーザーガイド

今回はテクスチャーのスケールを2倍にしたいとのことですので、まずはSpineエディター上でテクスチャ・パッカー設定を開いて、出力(Output) > スケール(Scale)の設定を「2.0」にして左下のボタンから保存してください(設定内容はpack.jsonとして保存されます)。
保存したpack.jsonファイルを入力フォルダ内に置くか、コマンドラインからのエクスポートの際に--pack(省略形は-p)で読み込めばご希望の設定で書き出せます。
texture-packer-setting.png

※画像の例ではスケールとアトラス拡張子以外デフォルト設定になっていますが、他の設定も必要に応じて変更してから保存してください。

もしコマンドラインインターフェースのユーザーガイドをご覧になっても分からない点があればお気軽にご質問ください。
添付ファイルを見るにはパーミッションが必要です
アバター
Misaki

Misaki
  • 記事: 245

Psyduck

ありがとうございます。

2つ質問があります。
①キャラごとにパーツ枚数とサイズが違います。
テクスチャパッカー設定で、【スケールの数値は何でも良いので、必ず一枚のテクスチャに収める。】
という挙動をさせたいです。それは可能でしょうか?
複数のSpineデータから一気に書き出ししたいです。


②スケール値を一律2倍ではなく、キャラの設定ごとに2倍にした上でとスクリプトで
書き出ししたいのですが、それは可能でしょうか?


キャラごとにパーツ枚数とサイズ、また
保存されているテクスチャーパッカー設定のスケール値が違います。
例えば、Aは、0.24。Bは0.3です。
この保存されている設定から各々2倍にして自動で複数のSpineデータから一気に書き出ししたいです。

===
つまり以下の数値で書き出ししたいです。画像も添付します。
A:
テクスチャサイズ:1024→2048
スケール値:0.24→0.48

B:
テクスチャサイズ:1024→2048
スケール値:0.3→0.6
===

スケール値を一律2倍ではなく、キャラの設定ごとに2倍にした上でとスクリプトで
書き出ししたいのですが、それは可能でしょうか?
添付ファイルを見るにはパーミッションが必要です
Psyduck
  • 記事: 2

Misaki

①に関しまして
スケールの数値は何でも良いので、必ず一枚のテクスチャに収める。
申し訳ありませんがそのような設定は不可能です。テクスチャの書き出しの際には、必ずスケールの値を指定していただく必要があります。(仮にpack.jsonでも指定がなかった場合はデフォルト値になりますので、スケール1.0での書き出しになります)
コマンドラインからの実行で書き出す際に設定出来ることと、Spineを開いて書き出す際に設定出来ることは基本的に一致していますので、Spine上から行えないことはコマンドラインからも行えません。

②に関しましては、単純にそれぞれのキャラごとのpack.jsonをご用意いただき、それぞれパックしたい画像が入っているフォルダに置く、またはスクリプトを記述される際にそれぞれのキャラクターのエクスポート時に対応するpack.jsonを読み込むように記述していただければ可能です。

また、
保存されている設定から各々2倍にして自動で複数のSpineデータから一気に書き出ししたい
とのことですが、コマンドラインからの書き出しの際は、Spineプロジェクトからパック設定を読み込むということは出来ず、パック設定は必ずpack.jsonからの読み込みになります。(デフォルト設定で書き出す場合はpack.json無しでも書き出せます)

pack.jsonはプロジェクトへの紐付きを持っていない、設定項目が羅列されているだけの単純なJSONですので、スケール値0.48で書き出したいキャラクターが複数いれば、1つpack.jsonを用意したらファイルをコピーして該当キャラクターの画像フォルダ(イメージパスで指定しているフォルダ)に配置するだけで設定を適用できます。また、各設定を変更したい場合、pack.jsonを直接テキストエディターで開いて編集してもご利用いただけます。

pack.jsonについてはユーザーガイドのテクスチャ・パッカー設定のページにて詳しく紹介されていますのであわせてご確認ください。
テクスチャパッキング - Spineユーザーガイド: JSON設定
アバター
Misaki

Misaki
  • 記事: 245


Return to 日本のSpine ユーザー