Houdiniで以下の2つのHDAを作成しました。
- Heightfieldを含む地形用HDA = hill HDA
- 上記のHeightfieldを受けてポイントを配置するHeightfield Scatterを含むHDA = hill scatter HDA
UE内での、hill HDAで地形を作成し、hill Scatter HDAにhill HDAに接続して使いたいと思います。
入力タイプを設定する際に、Asset InputでもLandscale InputでもUnreal上での地形として入力できるのですがこの2つに違いはあるのでしょうか?
Asset Inputを使用する場合、プラグインはHoudiniで2つのHDAを直接接続しています。つまり、hill scatter HDAへの入力は、hill.hdaによって生成された実際のHeightfieldになります。
Landscale Inputを使用する場合、scatter hdaはUnrealのランドスケープから生成されたHeightfieldを使用しています。(これは実際には,Heightfieldの出力を変換したものです)
つまり以下のようになります。
hill HF (Houdini) --> hill Landscape (非現実) ----> hill Landscapeをhill_scatterでHeightfieldとして使用
Landscale Inputは手動でしか更新されないので、hill HDAを変更してもランドスケープをリビルドしない限り、hill scatter HDAは更新されません。
しかし、Asset Inputは下流での再クックを実行するため、hill HDAを変更するとhill scatter HDAも更新されます。また、Asset Inputを使用する場合、入力データをそのまま再利用しているので、Lnadsale Inputで行われる余分な変換の時間を節約できます。
2つのHDAを次から次へとチェーンしていくときには、Asset Inputを使うことをお勧めします。
しかし、Asset Inputの再クック (およびリビルド) は入力 (とパラメータ) データの再アップロードと更新を強制するため、hill scatter HDAをリビルドすると、hill HDAもリビルドされます。
もし、再クックではなく、 hill scatter HDA のパラメータを変更しただけなら、hill hda は再クックされません。
recook/rebuildの動作を変更することはできません。