[雑記]サンプルリソースづくりとメッシュ分離のtips
以前作成した群衆パイプラインをツール化、パイプライン化する。 ・・・ためにCC0のモデルを使わせていただき、セットアップしたサンプルモデルを作成しています。 分離した際の記録なのでこの記事にはあまり情報はありません。

環境
HoudiniFX 20.5.613
背景
以前作成した群衆VAT(以下のリンクページ)をパイプラインとして整備したい。
VATによる群衆表現まとめ
https://www.procedural.jp/articles/lk8i06ubg
ただし、ここで利用させていただいていたMixamoはコンテンツへの組み込みは可能だがリソース自体の再配布は許容されていない。
そのため、今回パイプライン化したデータに含めるための入力サンプルデータをCC0の kenny.nl を利用させていただき、データに含めるために整備する。
KENNY
https://kenney.nl/
こちらのMiniCharactersをサンプルデータとして利用できるように加工した。
スケルトン、モーションも無いので簡単なものを作成する。
Mini Characters 1
https://kenney.nl/assets/mini-characters-1
(実のところMetahumanを使ったサンプルとして作成したかった。
しかし現状のMetahuman For HoudiniはヘアデータをMetahumanにimportするためのワークフローであり、fbxなどで利用することは難しそうだったのでKennyのモデルを利用させていただきました。ここにきてMayaのライセンスを欲しくなるとは・・・)
分類完了したデータ
群衆パイプラインの入力データとして以下のような状態のメッシュ、モーションを準備した。
メッシュ
表示切替を行う単位ごとに色分け


ユニークなUVを設定

テクスチャ
カラー用テクスチャを一枚にまとめて頂点カラーベイク


スキンアニメ
適当な骨と適当なアニメーションを用意した

マージしたメッシュで動く(すべてのパーツが動く)ことを確認

これらのサンプルデータを入力として群衆観客パイプラインとしてhdaとして整理、リポジトリにまとめていく。
分類のTips
Houdiniでメッシュの整理やグループ化するために使った方法とTips。
[Tips]Assembleなどによるpack
手作業で顔、腕、体などをグループ化し、カラーを設定した際手作業で分類した。

メッシュを選択してグループ化したい場合はAssembleなどでパックすると選択しやすい


[Tips]テクスチャから頂点カラーを取得
AttribFromMapノードを使うとテクスチャからUV準拠で頂点カラーを設定できる。
UVを再レイアウトした理由はHoudiniのVATは書き出す際、頂点事にユニークなUV座標を持っている必要があるから(重なっていると座標が壊れるらしい)。
ユニークなUVを割り当てを行うため、元のテクスチャカラーをいったん頂点カラーとして読み込んでベイクを行った。

[Tips]整列してベイク
テクスチャベイクを行う際、重なっているとにじみやアーティファクトの原因になってしまう。
Labs Align And Distributeを使うと簡単に整列できるのでこの状態でベイクするとエラーが出にくい

見ていただいたらわかるかと思いますが、メッシュを顔、腕、体などに分離した際の日記です。
手作業による分類を行おうと思った場合、Houdiniは機械的なグループわけ機能に充実している分、慣れてくるとそれらも併せて使えるで手作業もやりやすいと思っています。
(ちょっと偏った思想かも)

fish_ball
プロシージャル魚類