【Godot】Terrains機能でオートタイル(自動タイル配置)を設定する

作成: 2025-06-20最終更新: 2025-12-06

タイルの境界を自動判定して適切なタイルを配置する機能。効率的なマップ作成が可能

概要

2Dゲームの背景を作る上で欠かせないタイルマップ。しかし、草地と土の境界、崖の角など、タイルのつなぎ目を一つ一つ手作業で配置していくのは非常に骨の折れる作業です。Godot 4では、この問題を解決する「Terrains」機能(旧Godot 3のAutotileに相当)が搭載されており、AIが賢く自動でタイルを配置してくれます。

この記事では、Godot 4の強力なTerrains機能を使って、面倒なタイル配置を自動化する方法を分かりやすく解説します。

Terrains機能とは?

Terrains機能は、タイルセット内の各タイルに「これは草」「これは土」といった地形情報(Terrain)と、隣接するタイルのパターン(Peering Bits)を設定しておくことで、タイルマップエディタでブラシのように塗るだけで、適切なタイルを自動的に選択・配置してくれる機能です。

Godot 3の「Autotile」と似ていますが、Godot 4のTerrainsはよりパワフルで、複数の地形が複雑に隣接するような状況も扱えるように進化しました。

Terrains設定の3ステップ

設定は少し複雑に見えますが、手順通りに進めれば大丈夫です。ここでは、草(Grass)と土(Dirt)の2つの地形で試してみましょう。

ステップ1: TileSetエディタでTerrain Setを作成

  1. TileMapノードを選択し、インスペクタからTileSetプロパティをクリックして、画面下のTileSetエディタを開きます。
  2. インスペクタのTerrainsセクションで、「配列のサイズを追加」をクリックし、新しいTerrain Setを作成します。
  3. 作成したTerrain SetModeを、タイルセットの種類に応じて設定します。一般的にはMatch Corners and Sides(3x3)で問題ありません。

ステップ2: Terrainの作成

  1. 作成したTerrain Setを展開し、Terrainsプロパティで「配列のサイズを追加」を2回クリックして、2つのTerrain(地形)スロットを作成します。
  2. それぞれのNameを「Grass」「Dirt」とし、分かりやすいColorを設定します。これで地形の定義は完了です。

ステップ3: 各タイルにTerrain情報を設定(Peering Bits)

ここが最も重要な作業です。

  1. TileSetエディタの「Paint」プロパティを選択します。
  2. 右側のインスペクタでProperties > Terrains > Terrain Setを先ほど作成した0に設定します。
  3. TileSetパネルから設定したいタイル(例: 草タイル)を選択します。
  4. Paintブラシを使って、選択したタイルに地形情報を塗っていきます。Terrainプロパティで「Grass」(0)を選択し、タイルのどの部分が草地であるかを塗ります。

Terrain Peering Bitsの設定
Godot公式ドキュメントより引用。中央の9つのマスがPeering Bitsを表す

このとき、Peering Bits(中央の3x3のマス)を正しく設定することが重要です。これは「このタイルは、周りがどんなタイルだったら表示されるべきか」を定義するルールです。

  • 中心のマス: このタイル自身の地形(例: Grass)
  • 周りの8マス: 隣接するタイルの地形(例: Dirt、または何もない空間)

例えば、草地の右上角のタイルであれば、中心と左、左下、下が「Grass」、それ以外が「Dirt」または「空」になるように設定します。この設定を、境界線となるすべてのタイルパターン(16タイルや47タイルなど)に対して行います。

Terrainブラシで描画する

設定が完了したら、TileMapエディタに戻り、Terrainsタブを選択します。先ほど設定した地形(GrassやDirt)がパレットに表示されているはずです。

あとは描きたい地形を選択し、キャンバスをドラッグするだけ。Godotが自動的にPeering Bitsのルールに従って、適切な境界タイルを配置してくれます。これまで手作業で一つずつ選んでいたのが嘘のように、直感的にレベルを作成できるはずです。

まとめ

Terrains機能の設定は、最初は少し手間がかかります。しかし、一度設定してしまえば、その後のレベルデザインの効率は劇的に向上します。特に、広いマップを作成したり、デザインを頻繁に修正したりする場合には、その恩恵は計り知れません。

まずは簡単な2種類の地形でTerrains機能を試し、その便利さをぜひ体感してみてください。