Terrain エディターの操作

Tutorial

·

Beginner

·

+10XP

·

60 mins

·

(14)

Unity Technologies

Terrain エディターの操作

Unity の Terrain (地形作成) エディターを使用すると、詳細でリアルな地形を作成することができます。用意されている Terrain ツールを使えば、最適なランドスケープを簡単に効率よくデザインすることができます。このチュートリアルでは、特定のツールやテクニックを使用して地形を作成し、カスタマイズする方法を学びます。景観形成、樹木の追加、そしてブラシを使ってテクスチャ、樹木、草のようなディテールを地形に加えることができます。このチュートリアルを終える頃には、地形作成エディターがいかに強力で多機能であるか、また、プロジェクト用にカスタマイズされた地形をいかに簡単に作成できるかをしっかりと理解していることでしょう。

Languages available:

1. プロジェクトの準備

まず、新規に作成した Universal Render Pipeline(URP)プロジェクトに空のシーンを作成します。ただし、Terrain エディターは 3D、HDRP、URP のいずれのプロジェクトのテンプレートでも作業が可能です。なお、2D プロジェクトのテンプレートでは、地形エディターは使用できません。保存した自分のプロジェクトで練習することをお勧めします。それ以外の場合は、Unity Hub から新規に URP プロジェクトを作成して、このチュートリアルに従ってください。まず、新しい Terrain ゲームオブジェクトを作成しましょう。


2. Terrain (地形) の作成

Unity で Terrain エディターを使用するには、まず Terrain ゲームオブジェクトを作成する必要があります。


1. トップメニューのドロップダウンから、GameObject > 3D Object > Terrain の順に選択します。これにより、シーンに新しい Terrain ゲームオブジェクトが追加されます。


新たに追加した Terrain (地形)をシーンビューに表示

新たに追加した Terrain (地形)をシーンビューに表示


地形を作成すると、対応する Terrain アセットが Project ウィンドウに追加されます。


Project ウィンドウの New Terrain アセット

Project ウィンドウの New Terrain アセット


地形は大きくて平らな平面になります。Hierarchy ウィンドウで Terrain ゲームオブジェクトを選択すると、Inspector に Terrain ツールが表示されます。


Inspector ウィンドウの Terrain 設定とツール

Inspector ウィンドウの Terrain 設定とツール


Inspector の Terrain コンポーネントにある 5 つのアイコンのツールバーには、隣接する地形を作成したり、地形の特徴を彫刻のように造形したり、地形にテクスチャマップをペイントしたりするためのオプションが用意されています。木だけでなく、草や花、岩などのディテールを追加することができます。また、選択した地形の一般的な設定を変更することもできます。


3. 隣接する地形の作成

地形のデフォルトサイズは、メッシュの解像度が正方形で、縦横が 1000 メートルとなっています。 タイル状のグリッドシステムを使って地形を拡張したい場合は、Create Neighbor Terrains ボタンを使って拡張することができます。


1. まず、Inspector の Terrain ツールバーの最初のボタンである Create Neighbor Terrains ボタンを選択します。次に、Scene ウィンドウにマウスを置くと、新しいグリッドが表示され、地形の北、南、東、西を示す 4 つの象限が表示されています。


Create Neighbor Terrains ボタンをクリックすると、1 つの Terrain に対してアウトライン化された象限が表示される

Create Neighbor Terrains ボタンをクリックすると、1 つの Terrain に対してアウトライン化された象限が表示される


2. Scene ウィンドウで、隣接する象限のアウトラインを選択すると、 隣接する Terrain (地形) を追加することができます。地形が新たに作成されると、それに付随するゲームオブジェクトが Hierarchy 内に徐々に作成されていきます。


隣接する Terrain (地形) の追加

隣接する Terrain (地形) の追加


この技術を使えば、プロジェクトに必要な広さや狭さの範囲で、広大な範囲の地形作成タイルを作成することができます。このチュートリアルでは、隣接する Terrains を 2×2、つまり 2000 × 2000m の偶数グリッドに設定しています。


2x2 グリッドに設定された 4 つの隣接するタイル

2x2 グリッドに設定された 4 つの隣接するタイル


4. 地形のスカルプティングを実行

Paint Terrain ツールには、スカルプティングからスムージング、追加エフェクトの適用まで、さまざまな機能をご用意しております。ここでは、Paint Terrain ツールについて、さらに詳しくご紹介します。


1. Terrain ツールバーの 2 番目のボタンである Paint Terrain ツールを選択します。「Raise or Lower Terrain」というタイトルのドロップダウンメニューを選択すると、利用可能なオプションのリストが表示されます。このドロップダウンメニューでは、さまざまなペイントやスカルプティングのツールにアクセスできます。まず、Raise or Lower Terrain ツールのオプションを見てみましょう。


Paint Terrain ツールのメニューオプションにアクセスする

Paint Terrain ツールのメニューオプションにアクセスする


Scene ウィンドウでは、マウスカーソルがどこにあっても、円筒形のオブジェクトがホバリングしているのが見えます。これは、地形のスカルプティングを可能にするデフォルトのブラシです。


デフォルトの円筒形のブラシカーソルで、地形を上げたり下げたりする

デフォルトの円筒形のブラシカーソルで、地形を上げたり下げたりする


2. Scene ウィンドウで円筒形のブラシを有効にして、左クリックで選択し、マウスでドラッグして地形を持ち上げます。ブラシの感度が非常に高く、地形の高さが非常に早く上がることがすぐにわかるでしょう。ブラシの微調整は次のステップで行いますが、とりあえず Shift キーを押しながらマウスで左クリックすると、地形が地面の高さまで下がります。


円筒形のブラシは、非常に繊細に地形を上げ下げします。

円筒形のブラシは、非常に繊細に地形を上げ下げします。


3. ブラシの設定を微調整して、ブラシの強さを下げてみましょう。Inspector で Opacity15 に下げます。これはブラシの強さに影響し、マウスでスカルプティングしたときに地形を盛り上げる速さを遅くします。さらに、Brush Size 50 にしてみましょう。これで、Scene ウィンドウのブラシカーソルの形が変わり、幅広で平らな円になりました。Paint Terrain ツールでマウスをクリックし、地形に沿ってドラッグして、地形のスカルプトを続けます。地形をより正確にコントロールしながら、効果的にスカルプトしたり、盛り上げたりすることができます。


ブラシの Opacity の値を下げ、Brush Size を大きくしています。

ブラシの Opacity の値を下げ、Brush Size を大きくしています。


4. 次に、ブラシの形状を変えてみましょう。Inspector の内蔵ブラシのパレットから別のブラシを選択し、さまざまなブラシの形状でスカルプティングする練習をします。Opacity や Brush Sizes の調整も練習しておきましょう。


内蔵された独自のブラシ形状で地形のスカルプティングを行う。

内蔵された独自のブラシ形状で地形のスカルプティングを行う。


5. Brush Size や Opacity の違いによる様々なブラシ形状の組み合わせの可能性を試し、ユニークな形の山脈を造形します。ヒントとしては、キーボードの開始括弧と閉じ括弧 ( [ ] ) を使って、スカルプティング中にブラシのサイズを大きくしたり小さくしたりする練習をしてください。


ブラシの形状やサイズを様々に組み合わせて、地形をスカルプティングしていきます。

ブラシの形状やサイズを様々に組み合わせて、地形をスカルプティングしていきます。


6. 地形を特定の高さにスカルプトするには、 Terrain Brush メニューのドロップダウンを選択し、Set Height を選択します。次に、Height の値を 55(または同様の高さの値)に設定します。ブラシの形状、サイズ、不透明度を選択し、シーン内にカーソルを置きます。次に、地形の上をクリックアンドドラッグして、その特徴をスカルプします。Terrain の地形は、標高を特定の Set Height の値に制限して、台地になります。これは峡谷、河川敷、岩盤などを作成する際に特に有効です。


Set Heigh オプションを使用して、地形を特定の高さにスカルプティングします。

Set Heigh オプションを使用して、地形を特定の高さにスカルプティングします。


7. 地形の粗いエッジを滑らかにしたり、地形を滑らかにするには、Terrain Brush メニューのドロップダウンを選択し、Smooth Height を選択します。いずれかのブラシを使ってスカルプティングすると、地形のギザギザしたエッジが徐々に滑らかになります。Opacity を上げると、スカルプティング時の滑らかさが増します。


Set Height オプションを使用して、地形を特定の高さにスカルプティングします。

Set Height オプションを使用して、地形を特定の高さにスカルプティングします。


8. Stamp Terrain ツールを使って地形を調整するには、Terrain Brush メニューのドロップダウンを選択し、Stamp Terrain を選択します。Stamp Terrain を使用してブラシでスカルプティングすると、地形は Stamp Height プロパティで指定された設定の高さに適合しますが、既存の地形の高さのある標高地形の一部を残し、両方の高さが混ざった状態の形状を作成します。Stamp Height を高めに設定し、シーンにカーソルを置いて、マウスを 1 回クリックしてスタンプを適用します。


表面形状の特徴を組み合わせる「Stamp Terrain」ツールで、地形を特定の高さにスカルプティングすることができます。

表面形状の特徴を組み合わせる「Stamp Terrain」ツールで、地形を特定の高さにスカルプティングすることができます。


5. 地形テクスチャの概要

Paint Texture ツールを使用すると、詳細でリアルなテクスチャを地形にペイントすることができます。Paint Texture ツールは、マテリアルレイヤーを使って地形の表面に直接テクスチャをペイントすることができます。複数のマテリアルレイヤーを組み合わせて積み重ねることで、非常に詳細なテクスチャを実現することができます。地形は非常に大きくなることがあるため、マテリアルテクスチャは通常、シームレスなエッジを持つタイルとして用意されており、不必要に大きなイメージのマテリアルを使用せずに、ランドスケープ全体に繰り返しパターンを描くことができます。地形用のサンプルテクスチャマテリアルをセットアップするには、自分でイメージテクスチャを用意するか、サンプルマテリアルをプロジェクトの Assets フォルダーにダウンロードする必要があります。ここでは、アセットストアからダウンロード可能なサンプルテクスチャを使用します。


6. サンプルテクスチャを使ってみよう

マテリアルテクスチャのアセットをプロジェクトに導入するには、様々なオプションがあります。このチュートリアルでは、「Standard Assets」と呼ばれるおなじみの方法で、アセットストアからサンプルテクスチャをダウンロードしました。いくつかの Standard Assets フォルダーはプロジェクトに役立ちますが、必要としない追加項目もあります。そのため、地形に関連する選択したフォルダーのみをインポートします。


1. トップメニューのドロップダウンから、 Window > Asset Store と選択してウィンドウを開きます。


2. 「Standard Assets」を検索して選択し、Import を選択します。


Asset Store ウィンドウから Standard Assets をインポートする

Asset Store ウィンドウから Standard Assets をインポートする


3. Import Unity Package のポップアップウィンドウが表示されます。すべての三角形を折りたたみ、すべてのチェックボックスの選択を None にして解除します。次に、Environment フォルダーの SpeedTree フォルダーと TerrainAssets フォルダーのみを選択して、Import を選択します。


選択した Environment Folder のみをインポート

選択した Environment Folder のみをインポート


これで、地形のテクスチャを含むサンプルの環境アセットを利用する準備が整いました。


7. 地形のテクスチャのペイント

Terrain Layers を使って、地形にテクスチャをペイントしていきます。


1. Hierarchy ウィンドウで Terrain を選択した状態で、Inspector の Paint Terrain のペイントブラシツールを選択し、ドロップダウンメニューのオプションを Paint Texture に設定します。Edit Terrain Layers ボタンを選択し、Create Layer を選択します。


Terrain レイヤーの作成

Terrain レイヤーの作成


2. プロジェクトに保存されている 2D アセットの全コレクションを含む Select Texture2D のポップアップウィンドウが表示されます。検索フィールドに「albedo」と入力して検索すると、地形の 2D サンプルの表面テクスチャが整理されて表示されます。「GrassRockyAlbedo」というラベルの付いたテクスチャを選択します。


「Select Texture2D」ウィンドウで GrassRockyAlbedo の表面テクスチャを選択

「Select Texture2D」ウィンドウで GrassRockyAlbedo の表面テクスチャを選択


3. GrassRockyAlbedo テクスチャが、選択された地形に Terrain レイヤーとして均一に追加されました。


選択された Terrain タイルに均一に適用された Terrain  レイヤー

選択された Terrain タイルに均一に適用された Terrain レイヤー


4. 同じ Terrain レイヤーを他の隣接する Terrain 象限に適用するには、まず Hierarchy ウィンドウで Terrain tile ゲームオブジェクトを選択し、Inspector の Edit Terrain Layers ボタンを選択し、Add Layer を選択します。


隣接する Terrain タイルに Terrain レイヤーを追加

隣接する Terrain タイルに Terrain レイヤーを追加


5. Select TerrainLayer のポップアップウィンドウが表示されます。レイヤーを選択する際には、どのレイヤーにすでに表面テクスチャが関連付けられているかを判断して、該当するレイヤーを選択します。なお、このレイヤーには 1 つの表面テクスチャしか割り当てられていませんが、このチュートリアルの後のステップで、レイヤーに追加のテクスチャを追加します。


Terrain レイヤーを選択して、表面テクスチャを作成

Terrain レイヤーを選択して、表面テクスチャを作成


6. 引き続き、残りの各 Terrain に Terrain レイヤーを追加します。


残りの Terrain タイルそれぞれに Terrain レイヤーを適用する

残りの Terrain タイルそれぞれに Terrain レイヤーを適用する


7. 地形にズームインして、テクスチャの詳細をより明確に表示します。繰り返されるタイル状のパターンを識別できるようになったことに注目してください。


GrassRockyAlbedo 表面テクスチャが地形に適用され、タイル状のパターンで繰り返されている

GrassRockyAlbedo 表面テクスチャが地形に適用され、タイル状のパターンで繰り返されている


8. 追加の表面テクスチャを適用して、地形にさらに詳細をペイントしましょう。最初に Edit Terrain Layers ボタンを選択し、次に Add Layer メニューを選択し、最後に表面テクスチャを追加するという先ほどの手順を繰り返して、 GrassHillAlbedo、CliffAlbedo、SandAlbedo のテクスチャを追加します。


複数の Terrain レイヤーを追加し、表面テクスチャを追加する

複数の Terrain レイヤーを追加し、表面テクスチャを追加する


9. Terrain レイヤーを選択して、地形に表面テクスチャの組み合わせをペイントする練習をします。Brush Size と Opacity を調整して、詳細でユニークなブレンドを実現してください。


複数の表面テクスチャをブレンドしてペイントする

複数の表面テクスチャをブレンドしてペイントする


8. 樹木と詳細ブラシの使用

Tree ツールは、IDV Inc. のサードパーティ製品である「SpeedTree」を認識し、あらかじめ Tree (樹木) のアセットとモデリングソフトウェアを提供しています。これらのブラシを使うことで、樹木や葉、草、岩などを地形の上に直接ペイントすることができ、オブジェクトモデルを個別に配置する作業を軽減することができます。SpeedTree アセットは、標準アセットに含まれており、あらかじめプロジェクトにインポートされています。また、アセットストアでは、市販の樹木や植生のパッケージを販売しています。


9. SpeedTree を使ってみる

アセットストアから無料の SpeedTrees パッケージをダウンロードしてインストールし、パッケージマネージャーを使ってアセットをプロジェクトに直接インポートすることで、あなたのプロジェクトで SpeedTree モデルを無償でお試しいただけます。


1. Webブラウザから、Unity アセットストアで無料の SpeedTrees パッケージを検索し、Add to My Assets ボタンを選択してください。


Web ブラウザのアセットストアから Add to My Assets ボタンを選択する

Web ブラウザのアセットストアから Add to My Assets ボタンを選択する


2. パッケージマネージャーから、まず Download ボタンを選択し、ダウンロードが完了したら Import ボタンを選択します。最後に、Import Unity Packages のポップアップウィンドウから再度 Import ボタンを選択すると、SpeedTrees Package がプロジェクトに保存されます。


Package Manager ウィンドウから Free SpeedTrees パッケージをインポートする。

Package Manager ウィンドウから Free SpeedTrees パッケージをインポートする。


SpeedTrees を地形の上にペイントする前に、まず SpeedTrees のマテリアルを再生成し、Universal Render Pipeline(URP)プロジェクトで動作するようにする必要があります。これはちょっとした調整で簡単にできます。


3. Project ウィンドウの Assets フォルダ内にある Free_SpeedTrees フォルダーに移動します。次に、「Broadleaf_desktop.spm」という名前の最初の樹木のアセットを選択します。 Inspector で Apply & Generate Materials ボタンを選択します。


Inspector の Apply & Generate Materials ボタンを選択する。

Inspector の Apply & Generate Materials ボタンを選択する。


4. 前のステップを繰り返して、Broadleaf_MobileConifer_DesktopPalm_Desktop という名前の残りの Trees マテリアルを再生成します。これで、地形の上に樹木を適用する準備が整いました。


10. Paint Trees ツールの使用

Paint Trees ブラシツールは、Paint Terrain ブラシツールと同じように動作しますが、ブラシを動作させるためには、まず樹木のメッシュを定義する必要があります。


1. Hierarchy ウィンドウで Terrain を選択した状態で、Terrain ツールバーの 3 番目のボタンである Paint Trees ツールを選択します。Edit Trees ボタンを選択して、ドロップダウンメニューから Add Tree を選択します。


Paint Trees ツールに樹木のメッシュを追加する

Paint Trees ツールに樹木のメッシュを追加する


2. Add Tree のポップアップウィンドウが表示されます。Tree Prefab フィールドの右側にある Object Loader の丸いボタンを選択して、樹木のモデルを選択します。


Add Tree ウィンドウで Object Loader の丸いボタンを選択する。

Add Tree ウィンドウで Object Loader の丸いボタンを選択する。


3. Select GameObject のポップアップウィンドウが表示されます。「Broadleaf_Desktop」というラベルの付いた樹木のメッシュを選択し、Add Tree ウィンドウの Add ボタンを選択して、Paint Trees ブラシツールに木のモデルを読み込みます。


Paint Trees ツールに Broadleaf_Desktop の樹木のメッシュを追加。

Paint Trees ツールに Broadleaf_Desktop の樹木のメッシュを追加。


4. これで、地形の上に樹木をペイントする準備ができました。Brush SizeTree Density の設定を調整して、樹木を配置する密集度またはまばらさを決定します。また、Random Tree Height のチェックボックスを選択し、スライダーの範囲を調整することで、ランダム性の範囲を広くしたり狭くしたりします。各樹木がランダムに回転して配置されるように、Random Tree Rotation のチェックボックスを有効にしておき、最後にスライダーを調整して樹木の Color Variation を増減させます。Scene ウィンドウの地形の上にカーソルを置いた状態で、マウスをクリックおよびドラッグして、木を選択的に地形の上にペイントします。Shift キーを押しながらペイントすると、樹木が削除されます。


Paint Trees ツールを使って、地形の上に樹木を配置する。

Paint Trees ツールを使って、地形の上に樹木を配置する。


5. Brush Size と Tree Density の値を調整を行い、森や列の木立をペイントする練習をします。


異なる密度とサイズを組み合わせた樹木の適用

異なる密度とサイズを組み合わせた樹木の適用


11. ディテールのペイント

Paint Details ブラシツールは、Paint Trees と Terrain ブラシツールを Paint Details ブラシツールとほとんど同じように動作しますが、ブラシを動作させるためには、同様にまず詳細メッシュを定義する必要があります。この例では、草のディテールをペイントします。


1. Hierarchy ウィンドウで Terrain を選択した状態で、Terrain ツールバーの 4 番目のボタンである Paint Details ツールを選択します。Edit Details ボタンを選択して、ドロップダウンメニューから Add Grass Texture を選択します。


Paint Details ツールに草のテクスチャを追加

Paint Details ツールに草のテクスチャを追加


2. Add Grass Texture のポップアップウィンドウが表示されます。Detail Texture フィールドの右にあるObject Loader の丸いボタンを選択して、草のテクスチャを選択します。


Add Grass Texture ウィンドウで Object Loader の丸いボタンを選択する。

Add Grass Texture ウィンドウで Object Loader の丸いボタンを選択する。


3. Select Texture2D のポップアップウィンドウが表示されます。検索フィールドに「grass」と入力して、「GrassFrond01AlbedoAlpha」というラベルの付いた草のメッシュを選択します。次に、Add Grass Texture ウィンドウの Add ボタンを選択して、Paint Details ブラシツールに草のテクスチャを読み込みます。


Paint Details ツールに GrassFrond01 テクスチャを追加

Paint Details ツールに GrassFrond01 テクスチャを追加


4. これで、草のテクスチャを地形にペイントする準備が整いました。Brush Size Target Strength の設定を調整して、草のテクスチャのサイズと密度を設定します。Scene ウィンドウの地形にカーソルを置いた状態で、マウスをクリックおよびドラッグして、草のテクスチャを地形に選択的にペイントします。ディテールを削除するには、Shift キーを押しながらペイントします。


Paint Details ツールを使って、地形に草のテクスチャをペイントする

Paint Details ツールを使って、地形に草のテクスチャをペイントする


12. Terrain 設定ツール

Terrain Settings では、地形の特徴を確認したり、地形の調整を行うことができます。


1. Hierarchy ウィンドウで Terrain を選択した状態で、Terrain ツールバーの 5 番目で最後のボタンである Terrain Settings ツールを選択します。


Terrain Settings ツールを使って、地形を調べる

Terrain Settings ツールを使って、地形を調べる


このチュートリアルでは、このセクションを詳しく説明しませんが、Basic Terrain のカテゴリーを含め「地形」には調整や変更が可能な追加設定(Tree & Detail ObjectsWind SettingsMesh ResolutionHoles SettingsTexture ResolutionsLighting など)があることがお分かりいただけると思います。.


13. 次のステップ

Terrain エディターは、広大で詳細、複雑で設定可能な地形のランドスケープを素早く作成できる強力なツールです。練習すれば、丘、山、高原、谷などを簡単に創造的に造形できるようになります。スカルプティングやペイント、テクスチャの追加など、ユニークで多様な地形の作成にチャレンジしてみてください。ほんの少しの努力で、あなたのランドスケープはリアルでクリエイティブな生き生きとした地形になるでしょう。


Complete this tutorial