
【Unity】 マップを作成してみよう
- タイルマップを作成
- タイルパレットを作成
- タイルパレットに画像を反映
- タイルマップに色付け
- タイルマップに衝突判定を設定
- まとめ
目次
タイルマップを作成

まずは、タイルマップオブジェクトを作成していきます。
タイルマップはHierarchy上を右クリックし、[2Dオブジェクト]→[Tilemap]→[RectAnguler]を選択することで作成することができます。

今回タイルマップは衝突判定有りと衝突判定無しのマップを作成するため、二つ作成しています。
オブジェクト名は衝突判定ありをTilemapCollider、衝突判定なしをTilemapNoColliderとしています。
タイルパレットを作成

作成したタイルマップに画像を割り当てるために、タイルパレットを作成していきます。
タイルパレットを作成する前に、タイルパレットに使用する画像を用意します。
以下の画像を使用していきます。個人で作成した画像なので、自由に使ってください。



サンプル画像をUnityに取り込んでいきます。ドラック&ドロップで取り込むことができます。

それでは、タイルパレットを作成していきましょう。
[Window]→[2D]→[Tile Palette]を開いてください。 [Create New Palette]をクリックして、タイルパレットを作成します。 パレット名は好きな名前を付けてあげてください。

タイルパレットに画像を反映

作成したタイルパレットに画像を割り当てていきます。
タイルパレットに画像をドラッグ&ドロップすることで割り当てることができます。

これでタイルパレットは完成です。
タイルマップに色付け

タイルパレットを使って、衝突判定なしのタイルマップに色付けしていきます。
[Hierarchy]で該当のタイルマップを選択してから、色付けに使う画像を選択します。 衝突判定なしのタイルマップなので、移動できることを想定して、床の画像を選択します。
タイルマップ上をクリックすると、色塗りできるようになっていることが確認できます。
自分の好きなように塗ってみてください。

衝突判定なしのタイルマップが色塗り終わったら、衝突判定ありの方も塗っていきます。
衝突判定ありのタイルマップなので、移動できない場所を想定して、壁やステージエリア外の画像を使って色塗りしていきます。

タイルマップに衝突判定を設定

衝突判定ありのタイルマップに衝突判定を加えていきます。 衝突判定に必要なコンポーネントは以下の通りです。各コンポーネントを追加してください。
- Tilemap Collider2D
- Rigidbody 2D
- Composite Collider 2D

それぞれのコンポーネントについて、プロパティを設定していきます。
Tilemap Collider2D
[Used By Composite]にチェックを入れてください。
チェックいれることにより、[Composite Collider 2D]と連動され、 タイルが結合し、隙間が無くなります。

Rigidbody 2D
[Body Type]を[Static]にしてください。
[Static]にすることで、静止しているオブジェクトに対して有効になります。 タイルマップは動くことはないので、この設定にします。

Composite Collider 2D
特に設定することはありませんが、一応画像の設定通りになっているかを確認してください。

まとめ

タイルマップを使って、マップを作成する方法について解説しました。 実際にこのマップを使って動作する様子は次の記事で解説していこうと思います。
この本では、Unityの基本から高度なテクニックまで、実際のプロジェクトに役立つ知識を網羅しています。 初心者から経験者まで、Unityを扱うすべての開発者にとっての必読書です。
この本を読んで、あなたのUnityスキルを飛躍的に向上させませんか?
合わせて読みたい

ゲームオブジェクトを動かしてみよう
この記事では、Unityで四角形の2Dオブジェクトを生成し、C#スクリプトを使って動かす方法を解説しています。まずはオブジェクトの作成から始め、その後オブジェクトを原点に移動させます。動作させるためのスクリプトMoveScriptを作成し、オブジェクトに付与して実行する手順が説明されています。ゲーム実行時にオブジェクトが上方向に動く様子を示し、Unityでオブジェクトを動かす基本的な方法を覚えることができます。
更新日:2023/11/14