VATによる群衆表現まとめ
ここ最近取り組んでいた、「観客のような大量に存在しているその場から動かない群衆」を想定したパイプラインの検討

◇ VATによる群衆表現①:ソフトボディVATでキャラクターを動かす

ジョイントアニメーションをしているスキンメッシュキャラクターをVATでUnrealEngine上で動かす工程。
(+少し変わったデータのマテリアルだったのでKarmaを使って単一のテクスチャのマテリアルにコンバートする工程にも軽く触れています)
◇ VATによる群衆表現②:LODを含むVATの作成

VATにLODを持たせて出力する工程。
ある程度Houdiniに慣れていないとわかりづらい工程でしたがLODを設定した状態で作成してくれるのはさすがLabsという印象。
形状や動作ももちろん自由に調整できます。
◇ VATによる群衆表現③:頂点カラーによるキャラクターバリエーションの切り替え

参考にさせていただいたHoudini公式のチュートリアルで共有されていた手法の工程。
頂点カラーで表示切替を行うことでマテリアルインスタンス一つだけで多くの群衆バリエーションを表現する仕組み。
僕がテストで使ったのはMixamoのモデルで少し効果が伝わりづらいですが元のチュートリアルで利用しているモデルがイメージ伝わりやすいと思います。
(元のチュートリアル:Vertex Animation Textures for Crowds)
◇ VATによる群衆表現④:モーション制御

位置によってモーションにオフセットを入れる工程と、ひとつのVATに複数のモーションをまとめて、個体ごとに切り分けて動かす方法。
群衆のためのアニメーションバリエーションを作成しています。
◇ VATによる群衆表現⑤:unlit等、その他の調整

主に用途次第になりそうな主要機能では無い部分の検証。
- パーツごとに色の異なるunlitを使用したより軽量なシルエット表現
- ストップモーションのようなアニメーションに変更してフレーム長を削減し、VATテクスチャの軽量化
- LODをBOXで再構成し、含まれる頂点数を大幅に減らす
◇ VATによる群衆表現⑥:HoudiniEngineを使った群衆Actorの配置

今回追った工程で作成した群衆はBluePrintで表示切替を行う仕組みでした。
それならHoudiniEngine側で配置時に値を調整できそうということでやってみた検証です。
建物を配置時にpointを設定することで群衆の自動配置を行うような仕組みが作れそうです。
VAT3.0になってから最終的な出力を考慮して動作を追ったことは無かったので非常に有意義でした。
そしてHoudini側のワークフローとHoudiniEngineのパイプラインとしての役割が向上したことでかなり魅力的な仕組みだと感じます。
人以外の鳥や昆虫、魚といった群衆もそのうち考えて試してみます。

fish_ball
プロシージャル魚類