Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
タイルマップの使用
参考
このページは、既に TileSet を作成するかダウンロードしていることを前提としています。そうでないなら、まず タイルセットの使用 をお読みください。TileMap を作成するには TileSet が必要です。
はじめに
A tilemap is a grid of tiles used to create a game's layout. There are several benefits to using TileMapLayer nodes to design your levels. First, they make it possible to draw the layout by "painting" the tiles onto a grid, which is much faster than placing individual Sprite2D nodes one by one. Second, they allow for much larger levels because they are optimized for drawing large numbers of tiles. Finally, you can add collision, occlusion, and navigation shapes to tiles, adding greater functionality to the TileMap.
Specifying the TileSet in the TileMapLayer
If you've followed the previous page on タイルセットの使用, you should have a TileSet resource that is built into the TileMapLayer node. This is good for prototyping, but in a real world project, you will generally have multiple levels reusing the same tileset.
The recommended way to reuse the same TileSet in several TileMapLayer nodes is to save the TileSet to an external resource. To do so, click the dropdown next to the TileSet resource and choose Save:

ビルトイン TileSet リソースを外部リソースとして保存
Multiple TileMapLayers and settings
When working with tilemaps it's generally advised that you use multiple TileMapLayer nodes when appropriate. Using multiple layers can be advantageous, for example, this allows you to distinguish foreground tiles from background tiles for better organization. You can place one tile per layer at a given location, which allows you to overlap several tiles together if you have more than one layer.
Each TileMapLayer node has several properties you can adjust:
Enabled:
true
の場合、このレイヤーはエディタ内およびプロジェクト実行時に表示されます。TileSet The tileset used by the TileMapLayer node.
レンダリング
Y Sort Origin: The vertical offset to use for Y-sorting on each tile (in pixels). Only effective if Y Sort Enabled under CanvasItem settings is
true
.X Draw Order Reversed Reverses the order tiles are drawn on the X axis. Requires that Y Sort Enabled under CanvasItem settings is
true
.Rendering Quadrant Size A quadrant is a group of tiles drawn together on a single CanvasItem for optimization purposes. This setting defines the length of a square's side in the map's coordinate system. The quadrant size does not apply to a Y sorted TileMapLayer since tiles are grouped by Y position in that case.
物理
Collision Enabled Enables or disables collision.
Use Kinematic Bodies When true TileMapLayer collision shapes will be instantiated as kinematic bodies.
Collision Visibility Mode Whether or not the TileMapLayer's collision shapes are visible. If set to default, then it depends on the show collision debug settings.
Reordering layers
You can reorder layers by drag-and-dropping their node in the Scene tab. You can also switch between which TileMapLayer node you're working on by using the buttons in the top right corner of the TileMap editor.
注釈
レイヤーは、既存のタイルに影響を与えることなく、後から作成、名前変更、または並び替えが可能です。ただし、レイヤーを 削除 すると、そのレイヤー上に配置されていたすべてのタイルも削除されるため注意が必要です。
TileMapエディタを開く
Select the TileMapLayer node, then open the TileMap panel at the bottom of the editor:

Opening the TileMap panel at the bottom of the editor. The TileMapLayer node must be selected first.
ペイントのためにタイルを選択する
上で追加のレイヤーを作成したなら、まずはペイントしたい方のレイヤーを選択していることを確認してください:

TileMapエディタでペイントしたいレイヤーを選択
Tip
In the 2D editor, the layers you aren't currently editing from the same TileMapLayer node will appear grayed out while in the TileMap editor. You can disable this behavior by clicking the icon next to the layer selection menu (Highlight Selected TileMap Layer tooltip).
TIleMapエディタに入ったときに最初のレイヤーは自動で選択されるので、追加のレイヤーを作成していないなら上記のステップはスキップできます。
2Dエディタでタイルを置く前に、エディタ下部にあるTileMapパネルで1つ以上のタイルを選択する必要があります。タイルマップパネルをクリックするか、マウスボタンを押し続けて複数のタイルを選んでください:

TileMapエディタでクリックして1つのタイルを選択
Tip
2DエディタやTileSet エディタと同じく、TileMapパネルはマウスの中ボタンか右ボタンを使ってパンできます。そしてマウスホイールか左上の隅にあるボタンを使ってズームできます。
また、Shift を押しながら操作することで、現在の選択に追加できます。複数のタイルを選択してペイント操作を行うと、選択したすべてのタイルが一度に配置されます。これにより、複数のタイルで構成された構造物(例えば大きなプラットフォームや木など)を1回のクリックで描画することが可能です。
選択範囲は隣接している必要はありません: 選択したタイルの間に空白がある場合、その空間はそのまま空いた状態で2Dエディタにペイントされます。

TileMapエディタで左マウスボタンを押し続けて複数のタイルを選択
TileSetに代替タイルを作っていた場合、ベースタイルを右クリックしてそれらを選択できます:

TileMapエディタで代替タイルを選択
最後に、 シーンコレクション をTileSetに作っていた場合、TileMapにシーンタイルを置くことができます:

TileMapエディタでパーティクルを含んだシーンタイルを設置
ペイントモードとツール
TileMapエディタの上にあるツールバーを使い、様々なペイントモードやツールを選択できます。これらのモードは2Dエディタをクリックしたときの操作に影響し、 TileMap パネルそのものには影響しません。
左から右に、選択できるペイントモードとツール:
選択範囲
2Dエディタで、クリックでタイルを一つ選択し、左マウスボタン長押しで複数を矩形選択します。空の空間は選択できないことに注意してください: 矩形選択をしたときは空白でないタイルだけが選択されます。
現在の選択に追加するには、 Shift を長押ししてタイルを選択します。現在の選択から取り除くには、 Ctrl を長押ししてタイルを選択します。
選択範囲は任意のペイントモードですでに置いてあるパターンのコピーを素早く作るのに使用できます。
Del を押すことで選択したタイルをTileMapから取り除けます。
Paintモード中に Ctrl を押しながら範囲選択操作を行うことで、このモードを一時的に切り替えることができます。
Tip
範囲選択した後に Ctrl + C を押して、その後 Ctrl + V を押すことで、既に置かれたタイルをコピー&ペーストできます。左クリックすると選択範囲が貼り付けられます。この方法で複数回 Ctrl + V を押してコピーを繰り返すことができます。右クリックまたは Escape を押すと貼り付けをキャンセルできます。
ペイント
基本的なペイントモードではクリックまたはマウス左ボタンを長押ししてタイルを置けます。
右クリックすると、選ばれているタイルがTileMapから消されます。言い換えると、空白に置き換えられます。
TileMapで複数タイルを選択するか範囲選択ツールを使っていた場合、マウスをクリックか左ボタンをクリックしたままドラッグするたびに、その選択範囲のタイルすべてが置かれます。
Tip
ペイントモードでは、左マウスボタンを長押しする 前 から Shift を押し続けてることで、左ボタンを押した場所からマウスの終点までに直線を描けます。これは下で説明するラインモードと同一です。
Ctrl と Shift を 左クリックを押す前に 押しながら、左マウスボタンを押してドラッグすることで、マウスの視点から終点までに矩形を描画できます。これは、以下で説明する矩形ツールを使用する方法と同一です。
最後に、 Ctrl を押しながらタイルをクリックする(またはクリックしたままドラッグする)ことで、2Dエディタ内の既存のタイルを選択できます。これにより、現在描画中のタイルがクリックしたタイルに切り替わります。これは、以下で説明するPickerツールを使用する方法と同一です。
ライン
ラインペイントモードを選択した後、タイル1つの太さ(方向によらず)の直線を引けます。
ラインペイントモードで右クリックすると、直線で消去できます。
TileMapで複数タイルを選択するか範囲選択ツールを使うと、ライン上にパターンを繰り返し配置できます。
ペイントモードやEraserモード中に Shift を押しながら描画することで、このモードを一時的に切り替えることができます。

2つのタイルを選択した後、ラインツールを使用して斜め方向にプラットフォームを描画
四角形
四角形ペイントモードを選択すると、軸に沿った長方形を描画できます。
四角形ペイントモードで右クリックをすると、軸に沿った長方形の形で消去できます。
TileMapで複数タイルを選択するか範囲選択ツールを使っていた場合、それらを長方形内に繰り返しパターンとして配置できます。
ペイントモードやEraserモード中に Ctrl と Shift を押しながら描画することで、このモードを一時的に切り替えることができます。
バケツ塗りつぶし
バケツ塗りモードを選択した後、ツールバーの右側に表示される 隣接 チェックボックスを切り替えることで、塗りつぶしが隣接領域のみに制限されるかどうかを選択できます。
Contiguous を有効にすると(デフォルト設定)、現在の選択場所に接しているタイルのみが置き換えられます。この隣接チェックは水平方向および垂直方向に行われますが、斜め方向には 行われません 。
Contiguous を無効にすると、TileMap全体で同じIDを持つすべてのタイルが現在選択されているタイルに置き換えられます。 Contiguous が無効で空のタイルを選択した場合、TileMapの有効エリアを包含する長方形内のすべてのタイルが置き換えられます。
バケツ塗りモード中に右クリックすると、マッチしたタイルが空のタイルに置き換えられます。
TileMapで複数タイルを選択するか範囲選択ツールを使っていた場合、それらを塗りつぶし領域内に繰り返しパターンとして配置することができます。

バケツ塗りつぶしモードを使用
Picker
Picker モードを選択すると、2D エディタ内で Ctrl を押しながらタイルをクリックすることで置かれているタイルを取得できます。これにより、現在の描画タイルがクリックしたタイルに切り替わります。また、左マウスボタンを押しながら四角形選択をすることで複数のタイルを一度に選択することも可能です。でない空のタイルのみ選択できます。
ペイントモード中に Ctrl を押しながらクリックまたはマウスをドラッグすることで、このモードを一時的に切り替えることができます。
消しゴム
このモードは他のペイントモード(ペイント、ライン、四角形、バケツ塗りつぶし)と組み合わせて使用されます。Eraserモードが有効な場合、左クリックすると新しい線を描く代わりにタイルが空のタイルに置き換えられます。
このモードは、他のモード中に左クリックの代わりに右クリックすることで一時的に切り替えることができます。
ばらつきを付けてランダムにペイント
ペイント中にオプションで ランダム化 を有効にすることができます。有効にすると、ペイント時に選択されているタイルの中からランダムに1つが選ばれます。この機能は、ペイント、ライン、矩形、バケツ塗りツールで使用できます。効果的なランダム化ペイントを行うには、TileMapエディタで複数のタイルを選択するか、ばらつきを使用する必要があります(これらの方法は組み合わせて使用できます)。
ばらつき の値を 0 より大きく設定すると、ペイント中にタイルが配置されない可能性が発生します。これにより、広範囲のエリアに非連続的で繰り返しのないディテールを追加することが可能になります(たとえば見下ろし形式の TileMap 上に草やかけらのようなディテールを散らす場合)。
ペイントモードを使用する例:

複数のタイルからランダムに選択し、左マウスボタンを押し続けてペイント
バケツ塗りモードを使う例:

バケツ塗りモードを1つのタイルで使用しつつ、ランダム化とばらつきを有効化
注釈
消しゴムモードではランダム化や散布の設定は考慮されません。選択範囲内のすべてのタイルが常に削除されます。
パターンを使用した、あらかじめ作成されたタイル配置の保存と読み込み
選択モードでタイルをコピー&ペーストすることは可能ですが、タイルの パターン を事前に作成して一度に配置したい場合があります。この操作は、TileMapごとに設定でき、TileMapエディタの パターン タブを選択することで行えます。
新しいパターンを作成するには、選択モードに切り替え、範囲を選択した後に Ctrl + C を押します。その後、 パターンタブ 内の空白部分(空白部分に青いフォーカス枠が表示されるはずです)をクリックします。そして Ctrl + V を押してください:

TileMapエディタで選択から新しいパターンを作成
既存のパターンを使用するには、 パターンタブ でそのイメージをクリックし、任意のペイントモードに切り替えた後、2Dエディター内の任意の場所を左クリックしてください:

TileMapエディタを使って既存のパターンを設置
マルチタイル選択と同様に、パターンはライン、矩形、またはバケツ塗りのペイントモードを使用すると繰り返されます。
注釈
Despite being edited in the TileMap editor, patterns are stored in the TileSet resource. This allows reusing patterns in different TileMapLayer nodes after loading a TileSet resource saved to an external file.
地形を使ってタイルの接続を自動処理
To use terrains, the TileMapLayer node must feature at least one terrain set and a terrain within this terrain set. See 地形セットを作成する(自動タイリング) if you haven't created a terrain set for the TileSet yet.
地形の接続には3種類のペイントモードが使用可能です:
Connect, where tiles are connected to surrounding tiles on the same TileMapLayer.
Path 、同じストローク(マウスボタンを離すまで)でペイントされたタイルと接続されます。
コンフリクトや地形システムでカバーされていない状況を処理するための、タイル固有のオーバーライド。
Connect モードの方が使いやすいですが、ペイント中にアーティストがコントロールできる分、パスにはより柔軟性があります。例えば、Pathは道路を互いに接続せずに隣り合わせることができますが、Connectは両方の道路を強制的に繋げてしまいます。

TileMapエディタのTerrainsタブでConnectモードを選択

TileMapエディタのTerrainsタブでPathモードを選択
最後に、特定の状況でコンフリクトを解決するために、地形から特定のタイルを選択することができます:

TileMapエディタのTerrainsタブで特定のタイルを使ってペイント
ビットの少なくとも1つが対応する地形IDに設定された値に設定されているタイルは、選択できるタイルのリストに表示されます。
欠落したタイルの処理
TileMap が参照している TileSet 内でタイルを削除した場合、TileMap は無効なタイル ID が配置されていることを示すプレースホルダーを表示します:

TileSet参照が壊れているため、TileMapエディタでタイルが見つからない
これらのプレースホルダーは実行中のプロジェクトでは表示 されません が、タイルデータはディスクに保持され続けます。このため、シーンを安全に閉じたり再度開いたりすることができます。同じIDを持つタイルを再追加すると、新しい見た目でタイルが再表示されます。
注釈
Missing tile placeholders may not be visible until you select the TileMapLayer node and open the TileMap editor.