簡単な2Dスクロールゲームを作りたい!
と思った時、Tilemap Editorという機能はとても便利です。
今回は2D Tilemap Editorを使った2Dスクロールゲームの作成方法について紹介します。
開発環境
- Unity6 6000.0.32f1
- Windows11
- VSCode
2D Tilemap Editorとは
ステージをタイルに区切って、タイルごとにテクスチャを張り付けてステージを作り上げるUnity機能です。
簡単にステージを作ることができるのでとてもおすすめです。
Unity Asset Storeの中にはタイルのアセットがいくつかあります。
これらを活用するとあっという間にステージを作ることができます。
ちょっとしたゲームを作る時、または本格的なゲーム制作でも十分活用できる機能だと思います。
Unity6の場合はデフォルトで入っているようです。
入っていない場合はPackage Managerから追加してください。
こちらがUnityの公式ドキュメントです。
Unityのプロジェクトを作ろう
Unity HubからUnityのプロジェクトを作成してください。
2Dにしましょう。
Tilemap用のアセットを準備しよう
Tilemapに使う画像素材は自分で用意しても良いのですが、今回はAsset Storeにあるものを使ってみようと思います。
こちらが無料のTile素材です。
好きなものを選んでプロジェクトにインポートしてください。
私は↓これを使おうと思います。
ステージを作る
Window > 2D > Tile Pallete
を開いてください。
ここがパレットです。絵具のパレットと同じように、ここでタイルを選択してステージに配置していきます。
今回はAssetStoreからインポートしたので自動的にパレットが作られていますが、自分の画像を使ったりする場合はここのCreate New Tile Paletteから作ってください。
次に、SceneにTilemapを作ります。
Hierarchyから、2D Object > Tilemap > Rectangular
を追加してください。
するとこのようにGridが作られ、Tileを配置できるようになります。
これでタイルを配置できます。
Tile Palette上でタイルを選択し、Scene画面に配置してください。
さて、この後地面や壁に当たり判定をつけるわけですが、この例でいう木のように、当たり判定をつけたくないものもありますよね。
そんなときはTilemapをもう一つ作り、当たり判定をつけるものとつけないものに分けます。
今回はこんな風にTilemapとBackgroundに分けてみました。
次に、当たり判定をつけるTilemapにTilemap Collider 2Dというコンポーネントを追加してください。
これでTilemapに当たり判定が付きます。
しかし、よく見るとタイル1つ1つにコライダーがついています。
これを合体させましょう。
Rigidbody2Dコンポーネントを追加し、Body TypeをStaticにした後、Composite Collider 2Dコンポーネントを追加してTilemap Collider 2DのComposite OperationをMergeにしてください。
ここにRigidbody 2D、Colliderを追加したプレイヤーや敵を追加すれば立派なステージの完成です。
プログラムを書いてゲームを作っていきましょう。