レベルデザインの方法
Contents
Unityでワールドを制作する際のレベルデザインの一方法を記述します。
一般的に、レベルデザインというと、ゲームステージのデザインから始まり、ゲーム難易度などのデザインまでを含みます。
ここでは、狭義の意味でのレベルデザイン(ゲームステージデザイン)の方法です。
- ステージデザイン:建物や道、川などの配置設計図
レベルデザインは以下の手順で進みます。
- マップ作成:1,000m×1,000mの地図 → LevelDesign.png
- マップ読込:LevelDesign.png → UnityのPlane(平面)
- マップ検討:仮オブジェクトを作成してマップを検討する
マップ作成
マップの要件
マップで表現する範囲は1,000m×1,000mです。それを1,000px×1,000pxの画像にします。
- マップ:1,000m×1,000m
つまり、マップ上の1mを、1pxで表現します。
例えば、
- 横幅100m×奥行30m×高さ30mの校舎 → 横幅100px×奥行30pxの長方形
- 幅50mの川 → 幅50pxの領域
マップの作り方
マップの要件を満たせば、マップの作り方は自由です。
Adobe Illustratorでもいいですし、Excelなどの図形描画機能を使ってもOKです。
凝ったマップを作るのであれば、レイヤー機能があった方がいいでしょう。
普段使い慣れた方法で作ってください。
ここでは、Excelを使った方法を説明します。
Excel作業
まずは、セルを正方形にします。セルを全選択して、セルの横幅と高さを揃えます。
次に、10×10セルを罫線で囲い、各セルも罫線で囲います。
1,000mを10分割したので、各セルの大きさは、100m×100mです。
- セルの大きさ:100m×100m
最後に、Excelの図形描画機能を用いて、マップを作成します。
例えば、
- 学校:幅300m×奥行200m
- 校舎:横100m×奥行30m
- 川:幅200m
LevelDesign.Excel:画像クリックで拡大表示
Snipping Tool作業
Snipping Toolで10×10セル部分を切り出します。

Paint作業
まずは、切り出した画像をPaintに、コピー&ペーストします。
次に、サイズ変更を選択し、以下の設定にして、「OK」ボタンをクリックします。
- 単位:ピクセル
- 水平方向:1000
- 垂直方向:1000
- ▢縦横比を維持する ← チェックを外す!

最後に、pngファイルを書き出します。
- ファイル名:LevelDesign.png
- ファイルサイズ:1,000×1,000px
マップ読込
作成したマップをUnityのPlaneオブジェクトに読込みます。
- LevelDesign.png → Unity:Planeオブジェクト
具体的には以下の手順です。
- Material作成
- Plane作成
Material作成
AssetsにMyMaterialsフォルダを作り、LevelDesign.pngをドラッグ&ドロップして読込みます。
- LevelDesign.png → Assets/MyMaterials
次に、LevelDesignという名前のMaterialを作成します。
- Assets/MyMaterials/LevelDisign
最後に、LevelDesignマテリアルの「アルベド」に、LevelDesign.pngをアタッチします。
- Assets/MyMaterials/LevelDesign.png → アルベド

Plane作成
まずは、ヒエラルキーで、SampleSceneにPlane(平面)オブジェクトを作成します。
- SampleScene/Plane
次に、インスペクターを以下の設定にします※。
- 回転:Y:180
- スケール:X:100, Y:1, Z:100
※Planeの1スケールは10mなので、1,000mの場合は100スケールとなる
最後に、LevelDesignマテリアルをPlaneにアタッチする
- LevelDesignマテリアル → Plane

マップ検討
ここまでで、建物や川などの配置設定図(マップ)をUnityに読み込みました。
ここでは、設計図通りに仮物体を作成し、正しくワールドが出来ているかを確かめます。
仮物体の作成
まずは、SampleSceneに立方体を作成します。
- SampleScene/Cube
次に、CubeをSchoolと名前変更します。
- Cube → School
最後に、インスペクターで属性を変更します※。
- 位置:マップ上の位置 ← X:50, Y:15, Z:245
- スケール:X:100, Y:30, Z:30
※Cubeの1スケールは1mなので、100mの場合は100スケールとなる
これで、横幅100m、奥行30m、高さ30mの校舎ができました。

School2(校舎2)も同様に作成します。
マップを検討
ここまで出来たら、一旦プロジェクトをセーブして、Playしてワールドが正しくできているかをチェックします。
下図は、プレイヤーが校舎に近づいたときのゲーム画面です。
もっと近づいて、校舎を見上げたり、校舎の周りを回ったりすると、設計図通りに正しくワールドができていることが分かります。
- 校舎:100×30×30mで正しくできている
- 川:60mの川幅が正しく再現できている
