Created on | Updated on
フォローする

Houdini Digital AssetをUnrealEngineで使用する

はじめにデジタルアセットを作成します。

HDA(Houdini Digital Asset)にまとめたいノードをすべて選択し、左上にあるSubnetボタンをクリックします。

Subnetworkにまとめることができました。
名前を任意に変更します。

Subnetworkを選択し、Assets>New Digital Asset From Selection...を選択します。

Digital Assetを作成するためのウィンドウが開きます。

  • Operator Nameは、内部で使用する名前で一度つけたら簡単に変更することはできません。複数人で作成する場合は、ルール付けを行う必要があります。文字から始まり、文字と数字、アンダースコア(_)を使用することができます。
  • Operator Labelは、Houdiniユーザーインターフェイス(タブメニューを含む)に表示される、人間が判読可能なオペレータの名前です。誰でもわかりやすい名前を付けることをお勧めします。
  • Save to Libraryは、新しいアセットを保存するオペレータータイプライブラリ(HDA)ファイルの保存場所です。1つの.hdaファイルに複数のアセットを含めることができますが、通常は各デジタルアセットを独自の.hdaファイルに保存し、アセットの内部名(Internal Name)の後に.hdaファイルの名前を付ける必要があります。 これにより、アセット、ライブラリ、および依存関係をパイプラインで簡単に管理できます。ライブラリ名の代わりに Embeddedという単語を入力すると、アセット定義は.hdaファイルに保存されるのではなく、シーンファイルに埋め込まれます。

Acceptを押すと、この時点でHDAは保存され、オペレーターオプションの設定ウィンドウが開きます。

Parametersタブを開きます。

ここでは、HDAに追加したノードから任意のパラメータを外部で操作できるように定義することができます。

例えば、CircleのRadius XをHDAのトップで操作できるようにしたい場合、パラメーターをマウスの左ボタンでEdit Operator Type Propertiesにドラッグします。

そして、Labelにわかりやすい名前を設定します。

これでAcceptをクリックします。

HDAを選択すると、その時点でPipe Radiusを操作できるようになっています。

次に例えば、パイプの形そのものを作っているカーブ自体をエンジン側で変更したいとします。

Edit Operator Type Propertiesウィンドウを閉じてしまった場合、Asset>Edit Asset Properties>オプションを変更したいアセット名を選択します。

Edit Operator Type PropertiesウィンドウでNodeタブを開きます。

Editable Nodesの横のボタンをクリックし、表示されたChoose OperatorウィンドウからCurveノードを選択し、Acceptをクリックします。

Editable Nodesにcurve1が入りました。

Acceptをクリックして、ウィンドウを閉じます。

Asset>Save Asset>今変更したHDA名を選択し、HDAの変更を保存します。

UnrealEngineを起動します。
UnrealEngineでHDAをロードするには、Houdiniインストール時にHoudini Engineの項目でUnreal Engineにチェックをいれてインストールしている必要があります。インストールしていない場合は、Houdiniのインストーラーを起動し、再度インストールを行ってください。

Unreal Engineが起動しましたら、編集>PluginsでHoudini Engineが有効になっていることを確認します。

Houdini Engineが有効になっていることが確認できたら、コンテンツブラウザにHDAをドラッグします。
読み込んだアセットのアイコンがHoudiniロゴとなります。

ビューポートにHDAをドラッグすると、パイプが作成されました。

カーブポイントを移動することでパイプの形を変更することが可能です。

また、Altキーを押しながら、先端のカーブポイントを移動することでポイントを追加して、移動することができます。

このような形でエンジン内で好きなようにPipeを配置していくことが可能です。

また、HDA上に公開したパラメーターも同様に編集することが可能です。

せっかくなのでSubstance SourceからSubstanceをUnrealに直接ダウンロードしてみました。

割り当てて、Substanceパラメーターを編集します。
すべてエンジン内でプロシージャルに設定できるため、いつでも変更にすることができます。