環境:GeoGen 0.5-beta, Houdini 20.5.584, World Creator 2024.3, Unreal Engine 5.6
Unreal Engineへの出力にあたって、ハイトマップの高さを維持するためのツール間の設定を整理します。
現状のワークフローはHoudini(基礎となるハイトマップを生成)→World Creator(浸食エフェクト)→GeoGen(岩場、岩屑、砂礫、植生などの分布マップを生成)→Unreal Engineとなっている。
Houdiniからのエクスポート
Box SOPを通してバウンディングボックスからハイトフィールドの各辺の長さを取得する。

高さの最大値をメモしておく。World Creatorのインポート時に必要になる。
// Run Over: Detail
vector max;
vector min;
getbbox(0, min, max);
f@x = max.x - min.x;
f@z = max.z - min.z;
f@y = max.y - min.y; // 高さ World Creatorで使う
f@percent = f@y / f@x * 100; // 比率 GeoGenで使う
UIが紛らわしいが、Heightmap Output SOPは16bitのPNG出力ができない。
World Creatorに出力するならHDR形式を使うとよい。

高さはAuto Remap設定にする。
World Creatorでインポートする

2D Stampで読み込む。Set Height Rangeにチェックを入れ、高さの最大値を入力する。
GeoGenでハイトマップをインポートする

ハイトフィールドの高さ(m)を事前に調べておく。World Creatorなら左下のMaxに値が表示されている。
Import: Heightmapノードで画像を読み込む。
高さが1011mで縦横が4096mの場合、1011 / 4096 * 100 = 24.68%をRelative vertical scaleに入力する。
GeoGenからHoudiniへ
GeoGenはそのままの設定だと立方体でRemapされる。縦横のスケールが4096mの場合、HoudiniのHeightfield File SOPで読み込む際にHeight Scaleを4096に合わせると高さが一致する。

16BitのPNG形式にして出力する。

Height Scaleを4096にし、Rotateに90を入れるとメッシュを出力したものと一致する。
GeoGenからUnreal Engineへ
GeoGenから4096m(px)で出力する例

16BitのPNG形式にする。
Unreal Engine側でハイトマップを読み込むには、Landscape Modeにし、Manage > NewからImport Textureを選び、読み込みの設定をする。

スケールの計算
ScaleのZに入力する値
4096m * 100 / 512 = 800cm
(高度範囲が512ユニットなので1ユニット分の値にする)
オフセットの計算
LocationのZに入力する値は高さの半分にする
4096m * 100 / 2 = 204800cm