本文へ移動

スプライトシートメーカー

用意したスプライト画像を1枚のPNGにまとめます。元の絵は先にピクセルアートメーカーで描けます。

画像と配置

ブラウザー内で処理します。

1ファイル10 MiB以下、合計40 MiB以下です。 静止画像のPNG・JPEG・WebPを1~40枚選んでください。

画像をドラッグして並べ替えます。キーボード:Alt + ← / →。

プレビューと書き出し

静止画像のPNG・JPEG・WebPを1~40枚選んでください。

手元の画像からシートを作る

既存のフレームを1枚のPNGにまとめる道具で、キャラクターや動作を描く機能ではありません。PNG・JPEG・WebPを追加し、サムネイルをドラッグして並べ替えます。3枚目を2枚目に移動すると、1・2・3・4が1・3・2・4になります。キーボードでは画像にフォーカスしてAlt + 左右キーで並べ替えます。削除はホバーやフォーカス時に右上に表示され、タッチ画面では常に表示されます。列数は初回の追加後、手動変更または全消去まで維持されます。

初期設定ではセルサイズを自動で決めます。元画像の最大幅・最大高さを使い、拡大縮小せず元のピクセルを保ちます。追加・削除時も自動更新します。列数と間隔で配置を調整し、ゲーム側のセルサイズを指定したい場合だけ「サイズ指定・拡大縮小」で幅・高さ・補間を表示します。プレビューの外枠はPNG全体の境界で、保存には入りません。画像間の透明部分も1枚のシート内の余白です。

固定グリッドの仕組み

左から右、次に上から下へ並びます。透明な余白を含め、すべてのセルは同じ大きさです。間隔はセル同士と外周の両方に入ります。最終行の空きは透明です。画像枚数が少なくても指定した列数を維持します。

回転・トリミング・最適配置は行いません。画像をセルの中央に置きます。原寸で入らない場合はエラーです。「セル内に収める」は縦横比を保って拡大縮小し、最終的な幅と高さを整数ピクセルに切り捨てます。「整数倍で拡大」は入る最大の整数倍率を使い、縮小はしません。

確認できる2つの例

16 × 16の画像3枚、4列、32 × 32のセル、間隔2 pxなら138 × 36のシートです。セルの始点は(2, 2)、(36, 2)、(70, 2)。原寸では最初の画像内容は(10, 10)から始まり、セル内に8 pxの余白ができます。

8 × 8の画像5枚、2列、16 × 16のセル、間隔1 pxなら35 × 52です。整数倍拡大では2倍になります。5枚目のセルは(1, 35)から始まり、6個目の空きセルは透明です。座標の原点は左上です。

座標を読み、保存する

PNGには透明部分を含む合成画像を保存します。市松模様は任意の表示補助で、ファイルには入りません。折りたたんだゲーム用データ欄に、JSON保存と任意の座標表があります。ゲームやコードでフレームを切り出す場合だけ使い、画像だけならPNGで十分です。列見出しは画像名・左位置・上位置・セル幅・高さ(px)です。表示行番号は1始まり、JSONのindexは0始まりです。

各フレームのindexは0始まりです。ファイル名、整数のx・y・width・heightはセル全体を示します。contentは実際に描いた領域、sourceは展開した元画像のサイズです。同名ファイルはindexで区別します。JSONは座標表であり、画像を含むアーカイブでも再読み込み用プロジェクトでもありません。PNGと一緒に保管してください。

ドット絵を保つ設定は?

原寸または整数倍拡大と最近傍を使います。整数倍率なら元の各ピクセルが均等な正方形になります。「セル内に収める」は小数倍率になり、最近傍でもピクセルの幅が不均等になる場合があります。滑らかな補間は輪郭を混ぜるためイラスト向けです。JPEGの背景は読み込んでも透明になりません。

制限はありますか?

最大40ファイル、1枚10 MiB、合計40 MiBです。各画像は各辺8192 px・16,777,216ピクセル以下、展開後の合計は33,554,432ピクセル以下です。出力は入力1枚と同じ画素制限です。サイズ指定時のセルの辺1~2048 px、列数1~40、間隔0~256 px。超える場合はサイズを減らすか分割してください。

読み込みに失敗したら?

破損・非対応・アニメーション画像を拒否します。一括読み込みに失敗しても、既存のフレームは保ちます。クリアは進行中の読み込みを取り消し、画像を除去します。画像はローカルで展開し、削除や置き換え時に解放します。次回訪問まで保存されないため、閉じる前や言語変更前に出力を保存してください。

GIF変換やキャラクターのアニメ化は?

対応しません。用意した静止画像を並べる道具です。GIF抽出、AIキャラクター、再生時間、回転、トリミング、ZIP、他者のキャラクター素材の提供はありません。JSONは汎用座標表なので、ゲームエンジン側でフィールド名や座標方式の調整が必要な場合があります。