猫とゲームエンジン

今日も猫に面倒みられながら生きてる

HoudiniEngineのTerrainワークフローを考えてみる⑤

指定の場所にfoliageを作成する

環境

Houdini Indie 20.0.688
Unreal Plugin 20.0.688
Unreal Engine 5.3.2

hda の準備

前回UE上からhdaに入力を設定できるのがわかったので、今回はLandscapeを入力としてfoliageを作成する

terrainの入力からmask作成、height field scatter を作成し、terrain上にpointを作成するhdaを準備する

height field scatterで point を配置

不要なアトリビュートが多いのでアトリビュートを削除し

不要なアトリビュートを削除

pointに unreal instanceというアトリビュートを作成し、このポイントに配置したいfoliage をUE上から「リファレンスをコピー」で取得した文字列を設定する ※foligeではなく通常のsdtatic meshのリファレンスだと何も生成されないので注意

リファレンスをunreal instanceに設定

UE上でfoliageを作成

hdaを保存し、UE上で読み込み、Houdini Inputs に Landscapeを設定し、 buildすると instance foliage actorが作成されfoliage が作成される

foliageが作成される

懸念と対策

ポイントに設定された名称に合わせてfoliageが作成されるので、多様なfoliageを生やす実制作だと各々のポイントにいちいち設定するのもという感じ

ポイントに指定したリファレンスパスが生成

Houdini が project pegasus で公開してくれている「PE_Unreal_Instances」というhdaが指定したリファレンスをポイント群にランダムに割り振ってくれるので仕組みとしてよさげ

project pegasus のunreal instance hda