KineFX で Procedual Rigging をつくる
2022-12-17 #Blog #KineFXResearch
https://gyazo.com/7c001183fdee711a1bef0464ed75a872
Houdini Advent Calendar 2022 17日目の記事です
19, 19.5 を経ていろいろな新機能が登場しましたが, 中でも KineFX でのキャラクターセットアップが登場時よりも更に洗練されている印象なので, モデリングからスキニング, Procedual Rigging と呼ばれるリギング手法までの流れを紹介させていただきます
Project
usachang.zip
上記のURLからこの記事で使用するプロジェクトファイルのダウンロードができます
作成時のHoudini のバージョンは 19.5.435 です
以降の内容はプロジェクトを開きつつお読みいただければ幸いです
-.icon
1. Modeling
https://gyazo.com/771df0db69a14f4e636d110d3f14c660
/obj/modeling
VDB from Polygons SOP.iconVDB from Polygons SOP と Convert VDB SOP.iconConvert VDB SOP を使用したボリュームベースのモデリングで適当なベースメッシュを用意しています
2. Skinning
https://gyazo.com/d5f086be5e25cacc6b1b78c3115b6d35https://gyazo.com/ef5499eadb0d6399f213fe21f7357b97
Capture Geo Shapes を利用した 自動 Weight
/obj/skinning
Houdini 19.5 で登場した Capture Geo Shapes による Skinning を行っています
Skeleton に対してガイドとなる Geometry を Attach して, ウェイトの範囲を定義することができます
minami110.icon Weight 付けの基準がよくわからなくて怖かった Joint Capture Biharmonic SOP.iconJoint Capture Biharmonic SOP がある程度制御可能になって, ウェイトペイントによる破壊的な修正の機会が減りました
細かい内容は Capture Geo Shapes を利用した Joint Capture という記事を書いていますので参考にしてください
3. Blend shapes の追加
https://gyazo.com/88a6dabebdf808b034a8ad5d4af83ce6https://gyazo.com/268d1f5b5972572a7139ae87237f739f
/obj/blendshapes
スキン済みの Geometry に対して Blend shapes を追加しています
Houdini 19.0 から登場した Character Blend Shapes Add SOP.iconCharacter Blend Shapes Add SOP で Houdini 18.5 時代に比べかなりシンプルに Blend shapes を追加することができるようになりました
キーイングに関しても Houdini 19.5 で登場した Character Blend Shape Channels SOP.iconCharacter Blend Shape Channels SOP で簡単に行うことができます
4. Character HDA の作成
https://gyazo.com/75aa92e44e200999ee308fdf67ea39e3 https://gyazo.com/57378ca7ca3473d723c3dcef12b4396a
ここまで作成した Skinned Geometry と Rest Skeleton をHDA化しておきます
KineFX のノードとOutput と色を合わせた HDAでリリースしておくと今後の取り回しが良くなります
5. Procedual Control Rig
https://gyazo.com/c5aaa8d86785bbb8e36b3a3a78bb1dd9https://gyazo.com/da9497ce59baaf0062534a388923cc42
/obj/rigging/usahang_rig
Control Rig と呼ばれる Rig をセットアップしています
Rig Pose SOP.iconRig Pose SOP と同様の操作感 (Procedual Rigging) になるモデル専用の Controller を作成します
minami110.icon 上流の Animation に追従する Controller や, 特定ショット専用の Controller などがぱっと簡単に構築できます. 個人的には Controller の組みやすさとメンテのしやすさが KineFX を使用する最大の利点に感じています
細かい内容や具体的なプロダクション向けの多機能な Controller は公式の Character Workflow というチュートリアルが大変参考になります
組み方次第でわりと何でもできるのですがこのプロジェクトでは Character Workflow を参考に極めてシンプルなもの構築しています
https://gyazo.com/77bfd5cb9d7c711e3cca28fd92b7c0f0 https://gyazo.com/a2d0055c0ea7082e5f146eb14921f380
Rig HDA の UI
https://gyazo.com/63a29dfb9b283c0ae412f736428fedb5 https://gyazo.com/37f544933c55ab3af5b7654a69a2dfcf
Edit Operator Type Properties
Rig は必ず HDA としてセットアップする必要があります
HDA の Default State を kinefx__rigpose という Stateに指定すると, HDA 内部にある全ての Rig Pose SOP.iconRig Pose SOP が操作できるようになります
Keying が必要な Transfromation をパラメーターとして公開しています
https://gyazo.com/7c001183fdee711a1bef0464ed75a872
Controller を何個も重ねられる
入力のアニメーションに合わせて Controller をゼロからアタッチする仕組みのため, ノードごとに独立した加算的なアニメーションの合成が可能です
minami110.icon 既に収録済みのアニメーションを少し修正したり, 上流のアニメーションを Bypass したり, テイクわけがノードでできたりとかなり柔軟で感動的なアニメーション体験があります
IK/FK スイッチや Spine Solver も Character Workflow では紹介されているので細かい作り方はこちらを参考に..
https://gyazo.com/4bb0ad2a0e93147c9f94012221dee3ca
sankyu ~
-.icon
Refs
Create weights with capture geo shapes
Blend shapes
Character Workflow | Rig, Animate, Secondary Motion | SideFX