本文へスキップ

RPGツクールのオートタイルをGodot・Tiled・Unityへ(A2→47タイル)

RPGツクールのA2ブロックは、他のエンジンが理解するタイルセットではありません。Studioは4分割パーツから47のブロブタイルを組み立て(ピクセルをコピー、描き直しなし)、地形ルールと一緒に書き出します。

RPGツクールMV/MZのA2オートタイルは47枚のタイルではありません。48pxタイルの2 × 3ブロックを、マップエディターが24 × 24のミニタイルに分けてセルごとに組み直す仕組みです。他のエンジンには完成したタイルが必要です。Nerulioはこの組み立てを一度だけ行い、ミニタイルをバイト単位でそのままコピーしてブロブ47タイル(または16タイルのデュアルグリッド)を作り、Godot 4のピアリングビット、TiledのWangセット、UnityのRule Tile、LDtkのルールと一緒に書き出します。A1の動く水、A3の建物、データベースの設定は変換しません。

タイルセットやオートタイルのシート(PNG)をドロップ
空のStudioを開く
ブラウザ内で処理し、ファイルはアップロードされません。
Studio のタイル作業画面:GameMaker配置と認識した47タイルのシート、地形ビット、完了したチェック
CC0アセット(OpenGameArt)を開いた実際のStudio画面です。
書き出し先
  • Godot 4 TileSet検証済み· Godot 4.7.2
  • Tiled検証済み· Tiled 1.12.2
  • Unity 6 Rule Tile検証済み· Unity 6000.5.3f1 + 2D Tilemap Extras 8.0.3
  • LDtk一部検証· LDtk 1.5.3 schema + loader

A2オートタイルがミニタイルから組み立てられる仕組み

RPGツクールMZの素材規格(Asset Standards)は、タイルを48 × 48px、A2(地面)シートを768 × 576pxとし、オートタイル1つを6タイルのパターンとして説明しています。パレットに表示される代表タイル、四隅に境界のあるタイル、中央1つと8方向のタイルからなるまとまりです。公式ブログが要点を補っています。左上のタイルはパレット用の見本にすぎず、エディターは24 × 24のミニタイル単位で考え、各ミニタイルは完成タイルの常に同じ隅に入ります。

完成タイルの4分の1は、隣の3セルだけで決まります。左上の4分の1なら北・西・北西です。そのため4分の1ごとの状態は5つだけです。外角(両側が開いている)、上下の縁、横の縁、内角(両側はつながり斜めだけ開いている)、全面です。4象限 × 5状態 = ミニタイル20枚で、47通りの組み合わせをすべて作れます。

Nerulioは内角のミニタイルをブロック右上のタイルから、外角・縁・中央をその下の2 × 2のボックスから取ります。象限と状態ごとにちょうど1枚を使い、組み立てと同時に各タイルの地形パターンも記録するので、ビットが絵と食い違うことはありません。2 × 2のA4壁ブロックは辺の情報しかないため、辺だけの16タイルになります。

ミニタイル(4分の1)
48pxタイルの24 × 24pxの4分の1。RPGツクールもNerulioも、タイルを4枚のミニタイルで作ります。
A2ブロック
地面のオートタイル1つ。2 × 3タイル=48pxで96 × 144px。
孤立タイル
同じ地形の隣が1つもないセルのタイル。外角のミニタイル4枚でできています。
ブロブ47
角+辺の地形が空に対して必要とする、異なる47枚のタイル。

例:48pxのA2オートタイル1つをミニタイルごとに

A2シート   768 × 576px ÷ 48 = 16 × 12タイル = 2 × 3タイルのオートタイルブロック8 × 4個
ブロック1つ 96 × 144px = 24 × 24pxのミニタイル4 × 6枚
  ミニ列0–1、行0–1   パレットの見本(使わない)
  ミニ列2–3、行0–1   4つの内角
  ミニ列0–3、行2–5   ボックス:外角、縁、中央
4分の1の状態  外角、上下の縁、横の縁、内角、全面 = 5
4象限 × 5状態 = ミニタイル20枚  →  47タイル × 4 = 188回のコピー
孤立タイル = ボックスの外角4枚、全面タイル = ボックス中央のミニタイル4枚

生成したタイルはすべてこれらのミニタイルのコピーなので、リンクした元エディターでミニタイルを1枚直すと、それを使うタイルがすべて更新され、Studioがその枚数を表示します。

何がどこに対応するか

RPGツクールNerulioエンジン
2 × 3のオートタイルブロック(A2地面、48px)元ブロック。シートサイズ768 × 576(32pxなら512 × 384)か、単独の2 × 3ブロックとして認識直接は使わない。エンジンには完成タイルが入る
決まった隅に入る24 × 24のミニタイル20の状態を47タイル(またはデュアルグリッド16タイル)にコピー公開された47の並びのPNGシート1枚
エディターの自動的な隣接選択タイルごとの地形パターン(隣8セル)Godotのピアリングビット、TiledのWang ID、Unityのルール、LDtkの3 × 3ルール
パレット見本タイル(左上)無視—
A4壁ブロック(2 × 2)辺だけの16タイルGodotのMatch Sides、Tiledの辺セット
隣り合う2つの地面オートタイル任意:AからBへの遷移(開いた辺を地形Bに、Bの全面タイルを追加)遷移つきの2地形セット
A1アニメーションオートタイル、A3建物非対応—
通行・茂み・カウンターなどのデータベース設定読まない(PNGにない)エンジン側で衝突やデータを設定

できること

  • 素材:RPGツクールMV/MZのA2(2×3ブロック)、A4の壁、内角が左上にある2×3の基本ブロック。単独の2×3ブロックはサイズから判定。
  • 4分割パーツのままブロブ47・辺16、または同じパーツでデュアルグリッド16を組み立て。AからBへの遷移も可能。
  • 素材ブロック上のリンクされたピクセルエディター:1ストロークごとにセットを組み直し、取り消しは1回単位。
  • 生成したセットはGodot 4(検証済み)、Tiled(検証済み)、Unity Rule Tile(検証済み)、LDtk(一部検証)へ書き出し。

使い方

  1. A2(またはA4)シートをドロップ。
  2. 使うブロックで「このブロックから組み立て」を選ぶ。
  3. ブロブ47かデュアルグリッドを選び、必要なら遷移用の2つ目の地形を指定。
  4. エンジン向けに書き出し。

出力されるファイル

生成したシートはA2の元とリンクした新しい画像としてプロジェクトに入り、書き出しZIPにはエンジンごとのフォルダーができます(画像名がcave.pngの場合の例)。

ファイル用途
cave.png生成した47タイル(または16タイルのデュアルグリッド)シート。A2のミニタイルをピクセルそのままコピーしたもの。
godot/nerulio-tileset.json + nerulio_tileset_import.gdスクリプトが、Match Corners and Sidesの地形1つとピアリングビット188個を持つGodot 4のTileSetを作ります。
tiled/cave.tsx + sample.tmx混合(mixed)Wangセットと小さなサンプルマップ。
unity/nerulio-ruletile.json + Editor/NerulioRuleTileImporter.csルール47個のRuleTile 1つ(ブロブセットのみ)。
ldtk/cave.ldtkオートレイヤールール47個のIntGridレイヤーとサンプルレベル(一部検証)。

生成したセットでGodotのマップを塗る

  1. Godot 4にチェックして書き出し(Ctrl+E)、godotフォルダーのPNG、nerulio-tileset.json、nerulio_tileset_import.gdをプロジェクトのルートにコピーします(またはスクリプトのJSON_PATH・OUTPUT_PATHを修正)。
  2. ファイルシステムドックがPNGを取り込んだら、スクリプトを開いてFile › Runで実行します。出力パネルにタイル47、ピアリングビット188と出るはずです。
  3. TileMapLayerのTile Setプロパティにnerulio-tileset.tresを設定します。セルサイズはタイルから取られ、MV/MZの絵なら48 × 48pxです。
  4. TerrainsタブのConnectモードで塗ります。内角や孤立した1セルも含め、RPGツクールのエディターがオートタイルをつなぐのと同じように隣とつながります。
  5. RPGツクールの通行設定は画像には含まれません。物理レイヤーを自分で追加するか、Nerulioでタイルごとに衝突形状を取ってください。Godotタイルセットの衝突を参照。

結果の確認

  • Studioで、生成したセットのチェックパネルがすべての組み合わせがあると報告し、全ピクセルが元のコピーなので絵のチェックは対象外だと表示します。
  • Godotで孤立した1セル(孤立タイル、外角4つ)、3 × 3の範囲(異なるタイル9枚)、L字(内角)を塗ります。RPGツクールで同じ形を描いたときと同じ見た目になるはずです。
  • 任意のタイルを拡大します。4分の1ずつがA2ブロックのミニタイルと同一で、ぼやけたり再サンプリングされたピクセルがないはずです。

トラブルシューティング

症状考えられる原因確認方法対処
「RPGツクールA2」の候補が出ないシートが横16タイルの768 × 576(または512 × 384)でない、またはグリッドが48pxでない画像サイズとタイルセットパネルで選んだグリッド48pxのグリッドを指定するか、96 × 144のブロック1つだけを切り出して読み込む
角が裏返って見える(外角の位置に内角)内角が左上にあるブロック(Blobsmithの基本形)か、別のブロックを選んだブロック上段のどちらのタイルに4つの内角があるか元の種類をBlobsmithに変えるか、ブロックの左上タイルを選び直す
生成がタイルサイズを受け付けない4分割するには幅と高さが偶数である必要があるグリッドのタイルサイズ(47pxと打ち間違えることが多い)グリッドを実際の偶数サイズ(例:48px)に直す
Godotで草と土がくっきり途切れる生成したブロック1つは、空に対する地形1つタイルセットパネルの地形が1つAからBの生成:遷移の背景に地形Bの全面タイルを選ぶ
水が動かないA1のアニメーションオートタイルは非対応—アニメーションはエンジン側で扱う(GodotのTileSetエディターのアニメーションタイル)。このツールの範囲外
キャラクターが壁をすり抜けるRPGツクールの通行設定はPNGではなくデータベースにあるTileSetエディターに物理レイヤーがない衝突ポリゴンを取るか、Godotで物理レイヤーを追加

ほかの方法

方法こんなときに向いています
A2ブロックを24 × 24に切り、画像エディターで47タイルを手で組み立てるどのみち一部のタイルを描き直すとき。188回のミニタイル配置と、エンジン側のビット設定を自分で行うことになります。
Blobsmith(Web)47タイルのシート画像だけが必要なとき。2026-09-23の私たちのテストでは、無料版はシートを書き出しましたが、GodotやTiledの地形ファイルは出しませんでした。
自作エンジンのコードで実行時にミニタイルを組み立てるA1のアニメーションまでRPGツクールと同じ動作が必要で、タイル描画を自分で書くとき。

エンジン別の書き出しと検証方法

「検証済み」は、実際のCC0アセットから書き出したファイルを本物のエンジン・ツールで読み込み、元データと比較したという意味です。読み込んでいない形式はそのように表示します。

書き出し先ファイル検証
Godot 4 TileSetPNG · nerulio-tileset.json · nerulio_tileset_import.gd検証済み Godot 4.7.2同梱のインポートスクリプトが地形ピアリングビット付きのTileSetを作成。set_cells_terrain_connectで塗ったマップが、9つのコーパスシートの全セルでStudioのプレビューと一致。
Tiled.tsx Wang set · sample.tmx検証済み Tiled 1.12.2Tiled自身の読み込みで全Wang IDが記述どおりに読まれ、サンプルマップはピクセル単位で一致。地形ブラシ自体は操作していません。
Unity 6 Rule Tilenerulio-ruletile.json · Editor/NerulioRuleTileImporter.cs検証済み Unity 6000.5.3f1 + 2D Tilemap Extras 8.0.3ブロブ・辺タイルセット:塗ったTilemapの全セルが予測どおりのスプライト。角/デュアルグリッドはUnityへ書き出しません。
LDtk.ldtk (1.5.3) · rules · sample level一部検証 LDtk 1.5.3 schema + loaderLDtkのJSONスキーマと公式ローダーで受理され、ルールを再実行すると書き出したタイルと一致。LDtkアプリでは未確認。

検証の根拠

タイルコーパスでピクセルだけから配置を判定:ブロブ47テンプレート4つとWangテンプレート2つは高信頼度、実在の64px洞窟タイルセットは中信頼度で全タイルのビットが正解。Godot 4.7.2は全テストセルをStudioの予測どおりに塗りました(ブロブセットごとに485/485、4地形のデュアルグリッド251/251)。Tiled 1.12.2は全Wang IDを読み戻し、Unity 6000.5はブロブ・辺セットの塗った全セルで一致。

制限

  • A1のアニメーションオートタイルとA3の建物オートタイルは組み立てません。
  • データベースの設定(通行、茂み、カウンター、地形タグ)は画像になく、変換されません。
  • Unityへはブロブと辺のセットのみです。同じブロックから作ったデュアルグリッドのセットはGodot・Tiled・LDtkへ書き出します。
  • Tiledの地形ブラシ、LDtkアプリ、Godotエディターでの塗りは操作していません。検証はエンジンの読み込み機能とset_cells_terrain_connectで行いました。
  • Unityへはブロブ・辺タイルセットのみ。地形が複数あると、互いにつながらないRule Tileが複数になります。
  • アイソメトリック・六角タイル、アニメーションタイル、オクルージョン・ナビゲーションレイヤーは対象外です。
  • 既知の配置なしでビットを提案するには基準となる「塗りつぶし」タイルが必要です。辺だけの道テンプレートでは、そのタイルを選ぶまで推定を誤ることがあります。

バージョンと出典

コーパスでは、ピクセルからは配置の手がかりがなかった実在のRPGツクールA2シートをサイズから認識し、47タイルに組み立て、Godot 4.7.2が予測どおりに塗りました(485/485セル)。Tiled・LDtk・Unityの書き出しも同じチェックに通り、A4の天井ブロックも同様でした。同じブロックをBlobsmithと比べると、47枚中47枚がバイト単位で一致しました。上のRPGツクールに関する記述はMZの素材規格と公式ブログに基づき、RPGツクール自体は実行していません。

参照した公式ドキュメント

よくある質問

生成したタイルは描き直されますか?

いいえ。各タイルは素材ブロックからコピーした4分割パーツなので、ピクセルはバイト単位で一致します。そのため絵のチェックは対象外です。

ツクールの動く水(A1)は?

対応していません。A1のアニメーションオートタイルは対象外です。

無料ですか?アカウントは必要ですか?

このページの機能はすべて無料で、アカウントなしで使えます。透かしや制限された書き出しはありません。

スプライトはアップロードされますか?

いいえ。Studioはこのブラウザのタブ内でデコード・パック・書き出しを行います。プロジェクトはブラウザ(IndexedDB)に自動保存され、.nerulioファイルとして保存できます。

Asepriteやエンジンのプラグインは必要ですか?

いいえ。.asepriteファイルはブラウザで読み書きします。エンジン別のバンドルには必要なものが入っています(Godotはインポート設定とシーン、UnityとGodotのタイルセットは小さなエディタースクリプト)。