【Unity】自分だけの風景を「Terrain Tool」で作ろう

今回の記事では、Unityの「Terrain Tool」を使ってSTYLYシーン上に以下のような風景を作る方法を紹介します。

今回作る風景

今回作る風景

シーンを作る上で、地形の作成ごとにマテリアルをアタッチするのは手間がかかります。
また、木や草花などのオブジェクトを1つ1つ配置するのも非効率です。

このTerrain Toolを使えば地形の作成、テクスチャの設定、オブジェクトの追加をブラシで感覚的に作業することができます。
また、自由にディテールを設定できるためシーンのクオリティの調整にも役立ちます。

簡単に風景が作れる!

簡単に風景が作れる!

ぜひマスターしてみましょう。

※シーンごとSTYLYにアップロードする際のシーンサイズは20MB以下が推奨ですが、Terrainは容量が大きくなりやすいので気を付けてください。

サンプル

シーンの作成に移る前に、Terrain Toolを使って作ったシーンを見てイメージを掴んでおきましょう。
今回は以下のような山の中の風景を作っていきます。

事前準備

まずは事前準備としてTerrain ToolをUnityにインポートします。
Window > Package Manager でパッケージマネージャーを開き、ウィンドウ上部の Advancedから Show preview packages にチェックを入れます。

プレビュー版のパッケージを表示できるようにする

プレビュー版のパッケージを表示できるようにする

その後、右上の検索欄から「Terrain Tool」を検索し、右下のInstallからインストールしておきましょう!

Terrain Toolsをインストールする

Terrain Toolsをインストールする

次に素材を用意します。
今回は以下の4つの無料Assetを使います、リンクからインポートしてください。

Terrainを配置する

準備ができたら、まずは地形を作りましょう。
Hierarchyを右クリックし、3D Object > Terrainを選択するとシーンにTerrainを配置できます。

デフォルト状態だとサイズが大きすぎるのでTerrainを選択し、InspectorのTerrain Setting > Mesh ResolutionのTerrain WidthとTerrain Lengthを50に変更しましょう。

Terrainのサイズを調整

Terrainのサイズを調整

TerrainのサイズはTransformのScaleではなく、WidthとLengthを変更して調整します。

地形を作る

次に、Terrainに地形を作りましょう。
Inspector内のPaint Terrainを開き、Raise or Lower Terrainを選択します

[Paint Terrain] > [Raise or Lower Terrain]

Paint Terrain > Raise or Lower Terrain

この状態でSceneのTerrainをクリックすると地面が隆起します。
コントロールキーを押しながらクリックすると地面が押し下げられます。
この二つを組み合わせて地形を作っていきます。

ブラシ感覚で地形を作れる

ブラシ感覚で地形を作れる

しかし、大量の山など複雑な地形を作るときは起伏の上げ下げだけでは非常に面倒です。
そのような複雑な地形を作るときは、「Stamp Terrain」を使うと便利です。

Stamp Terrainを選択

Stamp Terrainを選択

Stamp Terrainを選択し、好きなブラシを選んでTerrainをクリックすれば複雑な地形を簡単に作れます。

Stamp Terrainで地形を作る

Stamp Terrainで地形を作る

今回は以下のような地形を作りました。
ステージの3方向を山のスタンプで囲むことでワールドの境目を目立たないようにしつつ、別のTerrainを使って遠景を作っています。

今回作った地形_1

今回作った地形_1


今回作った地形_2

今回作った地形_2


今回作った地形_3

今回作った地形_3

テクスチャを設定する

全て同じ色では味気がないので、作った地形にテクスチャを設定しましょう。

地形にテクスチャを設定する

地形にテクスチャを設定する

Paint Textureを選択してください。

Terrain Toolでは、Terrainにレイヤーを作り、レイヤーごとにテクスチャを設定することで管理します。
そのために、Terrain Layerを作りましょう。

今回インポートしたGround Textureアセットの各テクスチャを、Terrain Layerに変更していきましょう。
テクスチャがあるフォルダを開き、CreateからTerrain Layerを作ります。

[Create] > [Terrain Layer]

Create > Terrain Layer

 

Diffuseにdiffuseテクスチャを、Normal Mapにnormalテクスチャをそれぞれアタッチしてください。

Layerにテクスチャを適用

Layerにテクスチャを適用

 

Terrain Layerの作成は以上です。
Terrainに戻り、Paint Texture > Layer Palette からAdd Layerを選択し、先ほど作ったレイヤーを追加します。

Terrain Layerを追加

Terrain Layerを追加

 

別のレイヤーを追加してみましょう。
レイヤーを選択した状態でSceneをクリックすることで、指定したテクスチャで地形を色付けできます。

Paint Textureで地形を塗ってみる

Paint Textureで地形を塗ってみる

また、レイヤーの順番を変えることで適用されるテクスチャの切り替えができます。

レイヤーを入れ替えるとテクスチャも入れ替わる

レイヤーを入れ替えるとテクスチャも入れ替わる

ちなみに、Terrainのデフォルトのテクスチャは一番上のレイヤーのものになります

今回は以下のように地形を塗りました。
使用したテクスチャ・レイヤーは以下の通りです。

  • Grass 05
  • Ground & rocks 02
  • Grass & dead leafs 02
  • snow(Terrain Layer)

今回のテクスチャペイント_1

今回のテクスチャペイント_1


今回のテクスチャペイント_2

今回のテクスチャペイント_2


今回のテクスチャペイント_3

今回のテクスチャペイント_3

シーンに木を配置する

色彩豊かになり、シーンの完成度も上がりましたが、まだ少し殺風景に感じられます。
そこで、シーンに木を追加してみましょう。
Paint Treeを選択してください。

Paint Trees > Edit Trees

Paint Trees > Edit Trees

Edit Tree > Add Treeからウィンドウを開き、インポートした木のアセットを設定します。
これで自由に木を追加できるようになります。
削除したい場合はコントロールキーを押しながら木をクリックします。

[Paint Trees]で木を配置する

Paint Treesで木を配置する

Settingsの各項目の詳細は以下の通りです。

  • Brush Size → 生成範囲の広さ
  • Tree Density → 生成する密度
  • Tree Height  → 生成される木の高さ
  • Lock Width to Height → 高さに合わせて木の幅を固定するかどうか
  • Tree Width → 生成される木の幅

    好きなように木をシーンに配置してみましょう。
    今回は以下のように配置してみました。

木の配置_1

木の配置_1


木の配置_2

木の配置_2


木の配置_3

木の配置_3

シーンに草花を配置する

最初と比べるとかなり良くなってきました。
次に、シーンに草花を追加しましょう。

[Paint Details] > [Edit Details]

Paint Details > Edit Details

Edit Details > Add Grass Textureからウィンドウを開き、インポートした草のテクスチャを設定します。
このウィンドウ内では草の高さや幅を設定できます。

草の高さ・幅を設定する

草の高さ・幅を設定する

設定ができたら、Detailsの項から草を選択しシーンをクリックすれば配置できます。

同様の手順で花のテクスチャを設定し、シーンに追加してみましょう。

シーンに草花を追加

シーンに風を配置する

いよいよ最後の仕上げです。
シーンに動きをつけるため、風による木々の揺れを追加します。

風をシーンに追加する

風をシーンに追加する

新しく「Wind Zone」をシーンに追加してください。
このWind Zoneが風の力をシミュレートする機能を持ちます。

[3D object] > [Wind Zone]

3D object > Wind Zone

 

デフォルトではかなり強い風が発生するので、以下の数値程度に変更してみましょう。

Wind Zoneの設定

Wind Zoneの設定

Wind Zoneの詳細な説明は以下の記事で紹介されています。
興味のある方はぜひご参照ください。

これでサンプルシーンの作成は終了です、いかがだったでしょうか。
比較的労力を抑えつつ、自然の風景を作れました。

STYLY Studio内でエフェクトを追加すると、よりシーンにムードを持たせることができます。
ぜひ試してみてください。

Studioでアクセントを加えてみる

Studioでアクセントを加えてみる

ちなみに、上のサンプルシーンにあるゴッドレイは以下の記事から作ることができます。

参考にした情報

今回の記事は、以下の資料を参考に作成したものです。
Unity: How to build beautiful landscapes in Unity using Terrain Tools
Unityでゲームを作ろう!: オープンワールド地形の作り方

STYLYにアップロードする方法

3DモデルをSTYLYにアップロードしてみましょう。

STYLYアカウントを作成する

アカウント作成方法

STYLYにアップロードする方法

UnityからSTYLYにアップロードする方法

今回はTerrain Toolを使用して風景を作る方法を紹介しました。
このツールを使えば、効率よく美しいシーンを作れます。
効率よくシーンを作ることは、より細かいディテールにこだわる余裕を生むことに繋がります。
今回の記事が皆さんの創作に役立てば幸いです。