3BearLabs3Bear Tools
画像

スプライトノーマライザー:スプライトシートの再配置

不揃いなスプライトシートを均一なグリッドに変換し、各フレームを記述したJSONファイルも出力します。

ブラウザ内で処理します — ファイルはこの端末から出ません。

使い方

  1. 背景が透過したスプライトシートを読み込みます。
  2. スプライト検出が終わるのを待ち、プレビューの上に表示されるスプライト数、グリッドサイズ、セルサイズを確認します。
  3. 元のシートと再配置後のシートを見比べてから、PNGとJSONファイルをダウンロードします。

手描きや手動で書き出したスプライトシートは、フレームの大きさがまちまちで間隔も不揃いなことが多く、切り出しにくいものです。このツールはアルファチャンネルで各スプライトを見つけるため、動作には透過背景が必要です。アルファ値が小さなしきい値を超えるピクセルをスプライトの一部とみなします。シートをスキャンしてまずスプライトの行を探し、次に各行の中のスプライトを探します。典型的なスプライトより面積がかなり小さい細かな破片は除外されます。

その後、スプライトは同じ大きさのセルからなるグリッドにコピーされます。グリッドはおおよそ正方形に近い配置で、セルの幅と高さは見つかった最大のスプライトに合わせます。各スプライトはセルの左側に置かれ、縦方向は中央に揃えられます。ツールは、元の画像と再配置後の画像に並べて、検出したスプライト数、列×行で表したグリッド、ピクセル単位のセルサイズを表示します。

ダウンロードは2種類です。PNGは再配置後のシートです。JSONファイルには、すべてのフレームが名前順に並び、新しいシート内での位置とサイズ、元のサイズ、セル内でのスプライトのオフセット、0と0.5のピボットが記載されます。名前はファイル名に3桁の連番を付けて作られます。

何も検出されなかった場合は、透過背景の画像を使うようページに案内が表示されます。検出と再配置はブラウザ内で行われ、画像はアップロードされません。

よくある質問

スプライトが検出されないのはなぜですか?

検出は透過に依存しています。シートに単色の背景がある場合は、背景除去ツールなどで先に取り除いてください。

スプライトはどの順番で配置されますか?

読み順です。上の行から1行ずつ、各行の中では左から右へ並びます。

JSONファイルには何が入りますか?

各フレームの矩形、元のサイズ、スプライトのオフセット、ピボットを含むframesオブジェクトと、小さなmetaセクションが入ります。

スプライトはリサイズされますか?

いいえ。各スプライトはピクセルサイズを保ちます。変わるのは間隔と位置だけです。

シートはどこかにアップロードされますか?

いいえ。すべてブラウザ内で実行されます。

関連ツール