君がゲームを作る!Unityゲーム開発入門
第43回 屋外と町中、ふたつのマップを作る

町に入ったり、町から出たりするのは
ロールプレイングゲームの特徴だよね

みなさん、こんにちは!

ニュースでオレオレ詐欺で捕まった人などを見ると、「その情熱をもっと他のことに向ければいいのに…」 と思いつつ、今日もゲームのレベル上げに大量の時間を捧げているあらたまです。

「The Elder Scrolls Online」はマジ時間泥棒。。

さて今日は「君がゲームを作る!Unityゲーム開発入門」の第43回目です。

おさらい

前回 では屋外マップ用、町中マップ用のタイルパレットを作成しましたね。

今日はそのタイルパレットを使ってマップを作成していきましょう。

屋外タイルマップを作成する

まずは屋外のタイルマップの作成から始めていきましょう!

これは 第23回 タイルパレットを使ってみよう!(後編) で学習した内容からの発展になります。

もしも第23回の内容を忘れちゃったな…というかたは是非一度読み返してみてくださいねっ

屋外マップ用タイルマップ

「GameObject」メニューの「2D Object」から「Tilemap」をクリックします。

ヒエラルキーウィンドウに「Tilemap」が作成されました。

タイルパレットウィンドウで「WorldTilePallet」を選択し、並べたいタイルをクリックします。

マウスをドラッグしてタイルを並べていきましょう。

僕は今回は最低限必要な広さの範囲でタイルを並べてみましたが、 みなさんは是非広いマップを作成してみてくださいね。

屋外の障害物用タイルマップ

いまのままでは、ゲームのキャラクターがマップの外にまで歩いていけてしまいそうですよね。

そこで「山」などの障害物も配置して、キャラクターがそれより外へは歩いていけないようにしましょう。

障害物を並べる場合はさきほどのタイルマップとは別に、障害物専用のタイルマップを作成して並べます。

「GameObject」メニューの「2D Object」から「Tilemap」をクリックします。

ヒエラルキーウィンドウにふたつめの「Tilemap」が作成されました。

そのふたつめの「Tilemap」を選択します。

あとでわかりやすいように名前をインスペクターウィンドウで「MountainTilemap」に変更しておきましょう。

いまのままですと、草原を描いたTilemapと、これから山を描くMountainTilemapの どちらが前面に表示されるかはUnityまかせになってしまいます。

明示的にMountainTilemapが前面に表示されるように、「Tilemap Renderer」コンポーネントの 「Order in Layer」に「1」を入力します。 この値が大きいほど、前面に重ねて表示されます。

続いて、タイルパレットウィンドウで山のタイルを選択します。

マウスをドラッグして、山のタイルを並べていきましょう。

僕はこのような感じでマップの外枠を作成してみました。

ゲームのシーンって?

続いて町に入ったときに表示されるマップを作りたいのですが、 その前にひとつ、新しく覚えることがあります。

それは「シーン」です。

シーン (Scene)

英単語の意味としては「場面」という意味です。

「映画のあのシーンは感動した」とか言う「シーン」ですね。
ゲームにおいても同じような意味で、物語上で大きな区切りのことです。

シーンを追加する

「屋外」と「町の中」は別の場面(シーン)である、と考えます。

そのため、ゲームに"町の中シーン"を追加してあげましょう。

「Assets」メニューの「Create」から「Scene」をクリックします。

新しいシーンファイルが作成されますので、名前を「Town」に変えておきましょう。

作成されたシーンファイルを右クリックして「Open」をクリックします。

「Town」シーンが開かれました!

町中シーン用のマップを作成する

シーンを開くと、マップが初期状態になりましたよね。
これは町の中シーンのマップがまだからっぽということです。

さきほどまで作っていた屋外用のマップは、ちゃんと標準のシーンの方に保存されていますので安心してくださいね。

それでは屋外用のマップを作ったときと同じ手順、タイルマップの作成から初めて、町中のマップも作成しましょう。

僕はこのような形で作ってみました。
ふたつめのタイルマップの名前は「BushTilemap」に変更してあります。

町、といいつつものすごい狭いマップです。。
みなさんはぜひもっと広い町のマップを作ってみてくださいね。

複数タイルの並べ方

せっかくの町中ですので、ここに家も配置しておきましょう。

タイルパレットを確認すると、今回お借りした素材では家が複数枚のタイルから構成されていますね。

これを1枚ずつ並べるのは地味に大変そうです。。
実はちゃんと簡単にいっぺんに25枚並べる方法が用意されています。

家を構成するタイルのうち、一番左上のタイルから…

一番右下のタイルまでマウスをドラッグすると、25枚のタイルを同時に選択することができます。

あとはそれをシーンウィンドウにドラッグ&ドロップすれば、一度に25枚のタイルを並べることができました。らくちんですね。

あとは花や壺などをお好みで並べて、町中のマップ完成です!

今回はここまでです!

次回は、キャラクターの配置をしていきたいと思います。

次回へ続く。

>> 続きの記事
【君がゲームを作る!Unityゲーム開発入門】第44回 キャラクターを配置する