Sceneを作っていく上で、土台となる大地・山・海などの世界は必要不可欠です。
これらはアセットストアから入手することも可能ですが、Unityに備わっている「地形エンジン」という機能を利用すれば、自分好みの世界を作成することができます。
本記事では地形エンジンを使って地形を作成する方法を紹介します。
地形を作成する
メニューバーの「GameObject」から「3D Object」→「Terrain」を選択してください。
![スクリーンショット 2019-06-28 16.30.42 - STYLY](https://styly.cc/wp-content/uploads/2019/06/スクリーンショット-2019-06-28-16.30.42.png)
Terrainメニューを選ぶ
Sceneに平面のような地形モデルが作成されました。
![スクリーンショット 2019-06-28 16.35.35 - STYLY](https://styly.cc/wp-content/uploads/2019/06/スクリーンショット-2019-06-28-16.35.35-e1561707456101.png)
地形モデルが作成された
これを本物の地形っぽく編集していきます。
起伏を作る
作成された地形は平面なので、実際の大地っぽく起伏を作っていきます。
TerrainのInspectorウィンドウを見ると、アイコンの一覧(ツールボタン)が確認できます。
![スクリーンショット 2019-06-28 17.08.24 - STYLY](https://styly.cc/wp-content/uploads/2019/06/スクリーンショット-2019-06-28-17.08.24-e1561709372373.png)
Inspectorのツールボタン
これが地形の編集を行うツールです。
ツールボタン左端の「Raise/Lower Terrain」を選択すると、下に編集用の項目が表示されます。
![スクリーンショット 2019-06-28 17.12.28 - STYLY](https://styly.cc/wp-content/uploads/2019/06/スクリーンショット-2019-06-28-17.12.28.png)
Raise/Lower Terrainを選択
「Brushes」の項目を選択した状態で、Scene上でマウスをクリックやドラッグすると起伏が作成されます。
マウスをScene上に移動すると、ブラシの形で青い影のようなポインタが表示されるので、起伏を作りたいところにポインタを合わせてクリックするとその場所に少し起伏ができます。
![起伏 - STYLY](https://styly.cc/wp-content/uploads/2019/06/起伏.gif)
ブラシで起伏を作成
「Settings」の「Brush Size」はブラシの大きさを、「Opacity」は変化の大きさを指定します。
Opacityの方は「変化の大きさ」と言ってもわかりづらいと思うので、Opacityの数値を10に設定した時と100に設定した時を比べてみましょう。どちらもOpacity以外の設定は同一にして同じように描画しています。
![opacity1 - STYLY](https://styly.cc/wp-content/uploads/2019/06/opacity1.gif)
Opacity=10で描画
![opacity2 - STYLY](https://styly.cc/wp-content/uploads/2019/06/opacity2.gif)
Opacity=100で描画
「変化の大きさ」がどういうものか、なんとなくわかったと思います。
大地を作成する
次は高さが一定の地形を作成します。
ツールボタンの左から2番目の「Paint Height」をクリックすると、下に設定が表示されます。
![スクリーンショット 2019-06-28 20.35.14 - STYLY](https://styly.cc/wp-content/uploads/2019/06/スクリーンショット-2019-06-28-20.35.14.png)
高さの設定
Brush SizeとHeightは「Raise/Lower Terrain」の時と同様です。
「Height」の部分を設定すると、指定された高さの大地が作成されます。
設定後は、「Raise/Lower Terrain」の時と同様にScene上で描画すると大地が作成できます。
![スクリーンショット 2019-06-28 20.31.44 - STYLY](https://styly.cc/wp-content/uploads/2019/06/スクリーンショット-2019-06-28-20.31.44-e1561721589299.png)
大地を作成
高さが一定の大地が作成できました。
テクスチャを設定する
次はTerrainにテクスチャを反映させます。
テクスチャ素材を用意する
まずは無料で使えるTerrain用のテクスチャアセットをインポートしましょう。
アセットストアから「Terrain Textures Pack Free」アセットをダウンロード&インポートしてください。
![スクリーンショット 2019-07-01 11.42.55 - STYLY](https://styly.cc/wp-content/uploads/2019/07/スクリーンショット-2019-07-01-11.42.55-e1561949225970.png)
Terrain Textures Pack Free
Terrainにテクスチャを追加
Terrainのテクスチャの設定は、ツールボタンの「Paint Texture」から「Edit Textures」をクリックしてください。
![スクリーンショット 2019-07-01 11.14.21 - STYLY](https://styly.cc/wp-content/uploads/2019/07/スクリーンショット-2019-07-01-11.14.21-e1561948680411.png)
テクスチャの設定1
ポップアップが表示されるので「Add Texture」を選択してください。
![スクリーンショット 2019-07-01 11.38.47 - STYLY](https://styly.cc/wp-content/uploads/2019/07/スクリーンショット-2019-07-01-11.38.47.png)
テクスチャの設定2
「Add Terrain Texture」というポップアップが表示されるので、左の「None (Texture 2D)」欄の「Select」をクリックしてください。
![スクリーンショット 2019-07-01 11.57.47 - STYLY](https://styly.cc/wp-content/uploads/2019/07/スクリーンショット-2019-07-01-11.57.47-e1561949912505.png)
テクスチャを追加
テクスチャの一覧が表示されるので、どれでもいいですが「GrassUV01」を選択します。
![スクリーンショット 2019-07-01 11.55.38 - STYLY](https://styly.cc/wp-content/uploads/2019/07/スクリーンショット-2019-07-01-11.55.38-e1561950078564.png)
テクスチャ一覧
ポップアプを閉じ、「Add」をクリックしてください。
マウスをクリックやドラッグすると今指定した2個目の
Terrainに草原風のテクスチャが反映されました。
![スクリーンショット 2019-07-01 11.55.54 - STYLY](https://styly.cc/wp-content/uploads/2019/07/スクリーンショット-2019-07-01-11.55.54-e1561952689332.png)
Sceneを確認
2つ目のテクスチャを追加
しかしこれではTerrain全体に1つのテクスチャのみ貼られている状態で、例えば草原と岩など違う色調で表現したい世界には向いていません。
そこで先ほどの草原風のテクスチャとは別に、荒地風のテクスチャをTerrainに追加します。
1つ目のテクスチャの時と同様に、「Edit Textures」→「Add Textures」を選択してください。
テクスチャを選ぶ画面が再度表示されるので、灰色ぽいテクスチャを選択してください。
![スクリーンショット 2019-07-01 12.47.28 - STYLY](https://styly.cc/wp-content/uploads/2019/07/スクリーンショット-2019-07-01-12.47.28-e1561953559326.png)
2つ目のテクスチャを追加
ポップアップを閉じ、BrushでScene上でマウスをクリックやドラッグすると今指定したテクスチャを塗ることができました。
![テクスチャ反映 - STYLY](https://styly.cc/wp-content/uploads/2019/07/テクスチャ反映.gif)
2つ目のテクスチャを描画
テクスチャは、「Edit Texture」から変更可能です。
![スクリーンショット 2019-07-01 13.15.53 - STYLY](https://styly.cc/wp-content/uploads/2019/07/スクリーンショット-2019-07-01-13.15.53.png)
テクスチャを変更する
森林を作る
次はTerrainに木を植えて、森や林のような地形にします。
森林の素材を用意する
まずは無料で使える木のアセットをインポートします。
アセットストアで「Free Trees」をダウンロード&インポートしましょう。
![スクリーンショット 2019-07-01 13.39.08 - STYLY](https://styly.cc/wp-content/uploads/2019/07/スクリーンショット-2019-07-01-13.39.08-e1561956201893.png)
Free Treesアセット
木をSceneに追加
ツールボタンの「Paint Trees」クリックし、「Edit Tress」→「Add Trees」を選択してください。
![スクリーンショット 2019-07-01 13.47.43 - STYLY](https://styly.cc/wp-content/uploads/2019/07/スクリーンショット-2019-07-01-13.47.43-e1561956503334.png)
「Edit Trees」を選択
以下のようなポップアップが表示されるので、右端のボタンをクリックしてください。
![スクリーンショット 2019-07-01 13.54.43 - STYLY](https://styly.cc/wp-content/uploads/2019/07/スクリーンショット-2019-07-01-13.54.43-e1561956946247.png)
右側の小さい点をクリック
するとインポートした木の一覧が表示されるので、気に入った木を選択しましょう。
![スクリーンショット 2019-07-01 13.39.38 - STYLY](https://styly.cc/wp-content/uploads/2019/07/スクリーンショット-2019-07-01-13.39.38-e1561957036837.png)
木アセット一覧
木を選択した状態でScene上にマウスを移すと青いカーソルが表示されるのでクリックすると、森が配置されます。
![木発生 - STYLY](https://styly.cc/wp-content/uploads/2019/07/木発生.gif)
クリックで木を配置
Scene上でマウスでドラッグすると自動的に木が植えられていきます。
![木密集 - STYLY](https://styly.cc/wp-content/uploads/2019/07/木密集.gif)
ドラッグで木を増やす
![スクリーンショット 2019-07-01 13.40.08 - STYLY](https://styly.cc/wp-content/uploads/2019/07/スクリーンショット-2019-07-01-13.40.08-e1561956067108.png)
木をSceneに配置
湖を作る
次はTerrain上に、池や湖のような地形を作っていきます。
池や湖のような地形はUnityにデフォルトで用意されているわけではないので、Terrainに窪みを作り、その内側に水を配置することで作っていきます。
水の素材をインポート
まずは水の素材をインポートしましょう。
メニューバーの「Assets」→「Import Package」→「Environment」を選択してください。
![スクリーンショット 2019-07-05 16.27.06 - STYLY](https://styly.cc/wp-content/uploads/2019/07/スクリーンショット-2019-07-05-16.27.06-e1562311793233.png)
Environmentパッケージをインポート
パッケージをインポートするポップアップが表示されるので、全て選択されている状態で「Import」を選択してください。
![スクリーンショット 2019-07-05 16.39.37 - STYLY](https://styly.cc/wp-content/uploads/2019/07/スクリーンショット-2019-07-05-16.39.37-e1562312427216.png)
全てのパッケージをインポート
インポートが完了したら、Projectビューの「Assets」から「Standard Assets」→「Environment」→「Water」→「Water」→「WaterProDaytime」があることを確認してください。
これが今回使う水の素材です。ちなみに「WaterProNight」はその名の通り、夜用の水なので暗いSceneに配置する場合はWaterProNightを使用しましょう。
![スクリーンショット 2019-07-05 16.44.02 - STYLY](https://styly.cc/wp-content/uploads/2019/07/スクリーンショット-2019-07-05-16.44.02-e1562312742693.png)
Waterプレファブを選択
窪みを作る
次はTerrainに窪みを作ります。
TerrainのInspectorのPaint Hightで以下のように数値を設定してください。
![スクリーンショット 2019-07-05 17.03.56 - STYLY](https://styly.cc/wp-content/uploads/2019/07/スクリーンショット-2019-07-05-17.03.56.png)
Paint Hightの設定
Scene上でドラッグしながら、窪みができるように大地の盛り上がりを1周させてください。
![スクリーンショット 2019-07-05 17.04.38 - STYLY](https://styly.cc/wp-content/uploads/2019/07/スクリーンショット-2019-07-05-17.04.38-e1562314153102.png)
窪みを作成
WaterProDaytimeをSceneに配置
WaterProDaytimeをProjectビューからドラッグ&ドロップでScene上の窪みに合うように配置してください。
![スクリーンショット 2019-07-05 17.06.10 - STYLY](https://styly.cc/wp-content/uploads/2019/07/スクリーンショット-2019-07-05-17.06.10.png)
WaterProDaytimeを配置
大きさが合わない場合は、WaterProDaytimeを拡大縮小・移動して合うように調整してください。
地形をSTYLYにアップロードする
作成した地形はSTYLYにアップロードすることもできます。
ただ、Unityで作成したTerrainをそのままSTYLYにアップロードすると拡大縮小・回転ができない、サイズが大きすぎてアップロードがうまくできない、といった問題が生じるので、以下のTerrainをSTYLYにアップロードする2種類の方法をご参照ください。
こちらの方法は無料で使えるのですが、反映されるテクスチャがメインの1枚だけ・木が再現されないので別の方法で木をSTYLYのScene上で配置する必要がある、というデメリットがあります。
こちらの方法は有料ですが、複数のテクスチャを反映させることができ、また木も再現することができます。
おつかれさまでした、以上で地形エンジンであるTerrainの基本的な操作方法の紹介は終わりです。
地形を自在に操ることができれば、空間制作に幅が出るのでぜひ頑張ってください!