カスタム仕様の高さマップとレイヤーの作成および使用方法

ランドスケープ用のカスタム仕様の高さマップとレイヤーの作成と使用方法

Windows
MacOS
Linux

ランドスケープでは、必要な高さマップとレイヤーの両方を外部プログラムで作成しなければならない場合があります。 Unreal Engine (UE4) はこのスタイルのワークフローに対応しています。ワークフローの使用上の注意点をこのページで説明します。

Image of From Landscape Mountains sample project

本ガイドはかなり高度な内容になりますので、Landscape ツールを初めて使う場合はまず「ランドスケープの概要 」をお読みください。

レイヤー

ランドスケープ レイヤーは、高さマップと色データの両方を含む特別なテクスチャです。ランドスケープのルックアンドフィールのカスタマイズに使用します。

レイヤーの形式

ランドスケープ レイヤーは、ILandscapeHeightmapFileFormatILandscapeWeightmapFileFormat インターフェースを実装することにより、外部プログラムからのインポートが可能になります。現在エディタがサポートしている画像ベースのインポート処理は、このインターフェースの使用に置き換わりますが、フルサポートは続けます。ビルトインされた形式の画像は、グレースケール、1 ピクセルあたり 8 ビット、.PNG あるいは .RAW ファイル形式のいずれかの単一チャネル ファイルであることが要求されます。Photoshop でレイヤーを作成する場合は、新規文書作成には次の設定を使います。

Image of Photoshop sample settings

レイヤーのインポート

外部アプリケーションでレイヤーのインポートを行うと、好みのテレイン ワークフローを使用できるという柔軟性が提供されますが、すべて正常に円滑に機能させるためにはいくつかの設定を確認する必要があります。

  1. 作業するランドスケープがあるか、まず確認してください。ランドスケープの作成について疑問がある場合は、「ランドスケープを作成する 」を確認してください。

  2. 次に新しいマテリアルを作成します。このページでは、非常に簡単なマテリアルをサンプルとして作成します。必要に応じて簡単に拡張することができます。設定を完了したマテリアルは以下のようになります。

    Image of basic Landscape shader setup

番号

説明

1

LandscapeLayerCoords

2

TextureSample:T_Ground_Grass_D (Found in StarterContent/Textures)

3

TextureSample:T_Ground_Gravel_D (Found in StarterContent/Textures)

4

TextureSample:T_Rock_Slate_D (Found in StarterContent/Textures)

5

LandscapeLayerBlend

  1. 作成したマテリアルを Landscape アクタに適用します。ランドスケープ全体が黒くなります。

    Image of applying the Landscape Material to the Landscape Actor

  2. この問題を解決するには、いくつかの Layer Info をランドスケープ アクタに追加する必要があります。この例の場合、3 つのレイヤーごとに Layer Info を 1 つ作成します。Layer Info オブジェクトについては、「Layer Info Objects (レイヤー情報オブジェクト) 」セクションを参照してください。

    Image of Creating the Landscape Layer Info objects

  3. 完了すると、[Landscape] パネルの [Target Layers (ターゲット レイヤー)] セクションはこのようになります。

    Image showing all Layer Info objects in the Target Layers section of the Landscape panel

  4. 次にカスタム レイヤーをインポートします。選択した ターゲット レイヤー の上で右クリックして、ポッポアップ メニューから [Import from file (ファイルからインポート)] オプションを選択します。カスタム レイヤー データを含む .PNG ファイルまたは .RAW ファイルの選択を問われます。カスタム レイヤー ファイルは、ランドスケープ アクタを作成した時に設定した Overall Resolution と同じ解像度になります。

    Image of Importing custom layer data from file

  5. 出力されたレイヤーのサイズが正しくない場合、以下の警告がでます。

    Image of Layer size warning

    この問題を解決するには、画像編集ソフトウェアに戻って、警告が示している正しいランドスケープ範囲にファイルをサイズ変更して一致させます。

高さマップ

ベースとなる高さマップを外部ツールで作成してからアンリアルで作業をすると、ランドスケープ作成プロセスがスピードアップするのでお勧めです。World Machine と Terragen などのプログラムは、ランドスケープに使用するベースとなる高さマップを高速で作成します。このベースとなる高さマップは、アンリアル エディタ内の編集ツールを使って、インポート、クリーン アップ、修正、ランドスケープのカスタム、ワールドや希望するゲームプレイへのフィットを後で行うことができます。

高さマップの形式

ハイトマップを外部のプログラムからエクスポートする場合、UE4 では以下の形式を使用します。

  • 16 ビットのグレースケール PNG ファイル。

  • 16 ビットのリトル エンディアン バイト オーダーのグレースケール RAW ファイル。

高さマップのエクスポートに Photoshop を使用している場合は、以下のような新規画像を必ず設定してください。 Image of Sample Photoshop settings for a Heightmap

外部のアプリケーションで高さマップを作成している場合、White の値 (全チャネルで 255) は高さマップ上の最高点、Black の値 (全チャネルで 0) は高さマップ上の最低点をそれぞれ表します。

カスタム仕様の高さマップのインポート

カスタム仕様の高さマップのインポートを開始するには、Landscape Mode ツールバーの [New] をクリックします。アクティベートするには、[Landscape] パネルの[Import from File (ファイルからインポート)] というラジオボックスを選択して、ファイルから高さマップをインポートする機能を開きます。

Image of Import from File option in the Landscape panel

[Please specify a heightmap (高さマップを指定してください)] というボックスの横のボタンを押し、ファイル ブラウザで使用する高さマップを選択します。

Image of button to click to import a heightmap file

では、カスタム仕様の高さマップをインポートしてみましょう。ここの例では、以下の画像を使用します。

Image of a Sample Heightmap for download

画像 (上の) を右クリックして [Save as (名前を付けて保存)] して PC 上にダウンロードします。

PC 上に高さマップのサンプルを保存したら Landscape ツールの中で使ってみましょう。

  1. Landscape ツールを開いたら、Manage モード を開きます。

    Image of opening Landscape Manage mode

  2. [Import from File (ファイルからインポート)] のオプションを選択します。

    Image of Import from File option

  3. [Heightmap File (高さマップ ファイル)] セクションからインポートしたい高さマップを選択します。

    Image of Choosing the Heightmap file you just downloaded

  4. 完了したら、[Import] ボタンを押して、高さマップをベースにしてランドスケープを新規作成します。

    Image of Click the Import button

[Import] ボタンを押す前:

Before pressing Import

[Import] ボタンを押した後:

After pressing Import

Tags
Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback