TopDownEngine KoalaDungeon のマップの仕組み(1)

以前、 TopDown Engineサンプルゲームの一つ KoalaDungeon主人公のキャラクターチップ画像変えました。
TopDown EngineUnity で利用できる、トップビューのゲーム制作を強力に支援するアセットです。

TopDown Engine KoalaDungeon の HUD のアバター画像も主人公の画像に差し替えました。

TopDown Engine KoalaDungeon の HUD のアバター画像も主人公の画像に差し替えました。

マップを変更するためには、その仕組みを知らなければいけません。
そこで、今回は KoalaDungeonどのようにマップを実現しているのか、その仕組みについて調べたことを紹介します。
※ Unity は 2021.3.14f1、TopDown Engine は 3.1.1 です。主人公のキャラクター画像はぴぽや倉庫様のキャラクターチップを使っています。

マップを表示するゲームオブジェクト

KoalaDungeon でマップを表示するゲームオブジェクトはシーンの Level下位の Grid ゲームオブジェクトです。
Grid下位に Walls() や Grounds(地面) など種類別のタイルマップを担当するゲームオブジェクト群を束ねています。
これらの種類別のマップの層が組み合わさることで一つのマップが作られています。

TopDownEngine KoalaDungeon のマップのゲームオブジェクト群

TopDownEngine KoalaDungeon のマップのゲームオブジェクト群

Grid コンポーネント

Grid ゲームオブジェクトは Grid コンポーネントを持ちます。
Grid コンポーネントは、下位の Tilemap コンポーネントを持つゲームオブジェクト群と連携し、指定されたサイズで、指定された四角形や六角形のマス目ごとにゲームオブジェクトを配置します。

Cell Size はマスのサイズCell Gap はマス間の隙間のサイズを設定できます。
Cell Layout は四角いタイルマップや、六角形のタイルマップ、クオータ-ビューのひし形のタイルマップなどに対応したマスの形を選択できます。
Cell Swizzleマップ全体をとして扱う座標軸の組み合わせです。

Unity Grid コンポーネントでマスの形やサイズを設定し、マスに合わせてゲームオブジェクトを配置できます。

Unity Grid コンポーネントでマスの形やサイズを設定し、マスに合わせてゲームオブジェクトを配置できます。

Unity のグリッドスナップ機能一定間隔に配置することができますが、 Grid コンポーネントを使えば、マス目の形の選択など、より高機能な一定間隔でのゲームオブジェクトの配置が行えます。
詳しくは Grid – Unity マニュアル を参照してください。

新規シーンでのタイルマップの作り方

新規の空っぽのシーンタイルマップ作る場合は、Hierarchy ウィンドウの何もない場所で右クリックをして、ポップアップメニュー[2D Object]→[Tilemap]→[Rectangular] を選択すると、マス目四角形タイルマップが作られます。

もしも Tilemap の追加Grid のマス目の形と違う形状(今回ならば Rectangular 以外)を選択してしまうと、 Grid コンポーネントCell Layout が変更され、Grid の下位の既存のタイルマップのマス目も全て変更されるので注意しましょう。

Unity 新規のシーンでタイルマップを作る手順

Unity 新規のシーンでタイルマップを作る手順

このとき Tilemap が必要とする Grid コンポーネントを持つ上位オブジェクトがない場合は、Grid コンポーネントを持つ Grid ゲームオブジェクトも自動的に作られます

Unity 新規のシーンでタイルマップを作った直後の画面

Unity 新規のシーンでタイルマップを作った直後の画面

Grid の下にタイルマップをさらに追加した場合、すでに Grid があるので Tilemap だけが新しく追加されました。

Unity すでに Grid が上位にある場合 Tilemap だけが新規で追加されます。

Unity すでに Grid が上位にある場合 Tilemap だけが新規で追加されます。

今回はここまで

今回は TopDown Engine の KoalaDungeon のマップ用ゲームオブジェクトの場所、Grid コンポーネント新規シーンにタイルマップを作る手順を紹介しました。
次回は Grid の下で実際のマップを表示する タイルマップ について紹介していきます。

参照サイト Thank You!

 

コメント

Ads Blocker Image Powered by Code Help Pro

お願い - Ads Blocker Detected

このサイトは広告を掲載して運営しています。

ポップアップを閉じて閲覧できますが、よろしければ

このサイト内の広告を非表示にする拡張機能をオフにしていただけませんか?

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

We have detected that you are using extensions to block ads. Please support us by disabling these ads blocker.

タイトルとURLをコピーしました