ドキュメント

Unity Engine

Unity Engine

Terrain レイヤー

Create Terrain Layers
読み終わるまでの所要時間 10 分最終更新 1ヶ月前

Terrain Layer (Terrain レイヤー) は、Terrain (地形) のサーフェスの品質を定義します。Terrain レイヤーは、Terrain のマテリアルが Terrain のサーフェスを描画するために必要なテクスチャやその他のプロパティを保管します。Terrain レイヤーはアセットであるため、複数の Terrain タイルに再利用できます。
Terrain の表面にテクスチャを追加して、色や細部を作成できます。通常、Terrain ゲームオブジェクトは大きいので、表面にタイル状に並べてシームレスに繰り返すテクスチャを持つベースの Terrain レイヤーを使用するのが最適です。それぞれが異なるテクスチャを持つ複数の Terrain レイヤーを使用して、興味深い多様な Terrain サーフェスをビルドできます。
Terrain に最初に適用した Terrain レイヤーは、自動的にベースレイヤーになり、ランドスケープ全体に広がります。他の Terrain レイヤーを使用してエリアをペイントし、草、砂漠、雪などのさまざまなグループの地表をシミュレートできます。草が茂った田園地帯と砂浜の間の徐々に遷移させるには、可変の不透明度を持つテクスチャを適用すると良いでしょう。

砂のテクスチャを持つ Terrain

Terrain レイヤーの作成

Terrain インスペクターで Terrain レイヤーを直接作成するには、Terrain Inspector の上部にあるツールバーのペイントブラシアイコンをクリックし、ドロップダウンメニューから Paint Texture を選択します。Terrain Layers セクションの一番下にある Edit Terrain Layers ボタンをクリックし、Create Layer を選択します。

Terrain Inspector でレイヤーを作成

オーバーレイから Terrain レイヤーを編集するには、以下のようにします。
  1. Terrain Tools オーバーレイで、Material Mode の

    Material Mode Menu ボタン

    を選択します。Materials Mode ツールは、Terrain Tools オーバーレイの終了時に表示されます。
  2. Terrain Tools オーバーレイで使用可能な Materials Mode ツールから、Paint Texture の

    Paint Texture

    を選択します。
  3. Tool Settings オーバーレイで、Edit Terrain Layers を選択します。

オーバーレイでのレイヤーの作成

Create Layer をクリックすると Select Texture2D ウィンドウが開きます。ここで、Terrain レイヤーの Diffuse (ディフューズ) チャンネルとして使用する画像を選択します。Normal Map (法線マップ) か Mask Map (マスクマップ) テクスチャを Terrain レイヤーに割り当てるには、Project ウィンドウで対応する Terrain レイヤーを選択し、その Inspector ウィンドウを使用します。
また、自動的に Terrain に関連付けられない Terrain レイヤーアセットを作成するには、Project ウィンドウを右クリックし、コンテキストメニューから Create > Terrain Layer を選択します。次に、新しい Terrain レイヤーのさまざまなプロパティを Inspector ウィンドウで設定します。
Terrain レイヤーの数がレンダリングのパフォーマンスに与える影響に関しては、レンダリングのパフォーマンスを参照してください。Terrain タイルに実際にペイントしない Terrain レイヤーを割り当てている場合でも、レンダリングのパフォーマンスに影響する場合があります。

Terrain レイヤーの追加

最初は、Terrain には Terrain レイヤーが割り当てられていません。Terrain レイヤーを追加するまで、デフォルトではチェッカーボードのテクスチャを使用します。
プロジェクトで Terrain レイヤーを作成したら、Edit Terrain Layers ボタンをクリックし、Add Layer を選択して Select TerrainLayer ウィンドウを開きます。Terrain Layer を Terrain に追加するには、このウィンドウで Terrain Layer をダブルクリックします。

Terrain レイヤーのプロパティ

Terrain Settings で設定されたマテリアルと、使用されているレンダーパイプラインに応じて、Inspector にさまざまなオプション、設定、UI が表示されます。

Inspector の Terrain レイヤー設定

| プロパティ |

説明

Diffuse
Normal Map
Normal Scale
Mask Map
Channel Remapping
Specular
メタリック
Smoothness
Tiling Settings

Texture のペイント

Unity は、ランドスケープ全体に加えた最初の Terrain レイヤーを適用します。複数の Terrain レイヤーを加える場合は、Paint Texture ツールを使用して、Terrain に後続のテクスチャを適用します。
Terrain レイヤーなしで新しい Terrain タイルを加えてペイントすると、Unity は自動的に選択した Terrain レイヤーをその新しい Terrain タイルに追加します。これは最初の Terrain レイヤーであるため、そのテクスチャはベースレイヤーになり、Terrain タイル全体を塗りつぶします。
Terrain Inspector で Brushes には、使用可能なブラシと、その下に Brush Size オプションと Opacity オプションが表示されます。これらのツールの詳細は、Terrain の作成と編集を参照してください。

レンダリングのパフォーマンス

Terrain タイルに割り当てる Terrain レイヤーの数は、レンダラーのパフォーマンスに影響する場合があります。推奨される Terrain レイヤーの最大数は、プロジェクトが使用するレンダーパイプラインによって異なります。
  • プロジェクトでユニバーサルレンダーパイプライン (URP) またはビルトインレンダーパイプラインを使用する場合は、テクスチャパスごとに 4 つの Terrain レイヤーを使用できます。パスの数に制限はありません。つまり、Terrain レイヤーは数に制限なく使用できますが、パスが増えるごとに Terrain のレンダリングにかかる時間が長くなります。パフォーマンスを最大化するには、各 Terrain タイルを 4 つの Terrain レイヤーに制限します。
  • プロジェクトに HD レンダーパイプライン (HDRP) を使用する場合は、各 Terrain タイルに最大 8 つの Terrain レイヤーを追加することができ、システムはそれらをシングルパスでレンダリングします。パスを追加することはできません。8 つを超える Terrain レイヤーを加えると、それらは Unity エディターに表示されますが、ランタイムには無視されます。