執筆バージョン: Unreal Engine 5.0 EarlyAcces
|

アーティストの天見です。
今回はHoudiniのアップデートでUnreal EngineでVertex Animation Textureを使う手順がとてもシンプルになったので使ってみたいと思います。
- Vertex Animation Textureとは
頂点の位置、回転の動きを記録したテクスチャです。
これを読み込むことでシミュレーションをUnreal Engineなどのゲームエンジン上で低負荷で再生することができます。

- まずはHoudiniで元となるシュミレーションの作成

Unreal EngineからExportしたFBXファイルを読み込みます。

- Unreal Engineから書き出したFBXは透明で表示されないことがあるので
AlphaとCdのアトリビュートを削除しておきます。


- VOPでvelocityを上向きに追加してDOP内でシュミレーションします。

勢いよく壊せました。


これで下準備はOKです

- Networkをobjからoutに移動してLabs Vertex Animation Textureを作成

Input Geometry 作成したOUT_DOPを選択
Mode/Target Engine はRigidのまま

Include なにを書き出すかを選択します
Geometry,Position(s)、Rotationを選択


FBXが1つとテクスチャが2つ作成されます



Unreal Engine Content Plugin and Guidesを押すとPluginsの入っているフォルダが表示されるので
Unreal Engineのバージョンと同じフォルダをコピー
プロジェクトにPluginsフォルダを作成しそこに入れます

プラグインのあるフォルダが表示されるので
プロジェクトと同じバージョンのフォルダをコピーして

プロジェクトにPluginsのフォルダを作成して

その中にコピー

Houdini側での作業はこれで完了
- UnrealEngine起動
プラグインはフォルダを作成するだけでデフォルトでオンになっています。
- 作成したFBXインポート
設定は下記画像の通り


2枚とも選択して右クリック
Script Asset Actions>Side FX Set VAT HDR Textures

新規にマテリアルをつくり
SideFX_Labs ContentのマテリアルファンクションのMF_VAT_RigidBodyDynamicsをドロップ

WorldPositionつなぎ
Num Customized UVs 5に変更
1-4のCustomedUVつなぐ


Position Texture
Rotate Texture
にそれぞれ作成したテクスチャを割り当て
Houdini FPSをHoudiniでのシュミレーション時のFPSと同じに変更

- これをメッシュに割り当てるとシュミレーションが再生され完成です
注意点として、現在かなりの確率で最初は破片の回転がとびとびのおかしな動きで表示されますが
UnrealEngineを再起動すると正常に表示されるようになります

是非お試しください!