>   >  【Houdini 18.5 レビュー】バージョンアップの目玉は、一新されたリグシステム KineFX
【Houdini 18.5 レビュー】バージョンアップの目玉は、一新されたリグシステム KineFX

【Houdini 18.5 レビュー】バージョンアップの目玉は、一新されたリグシステム KineFX

Topic 5:SOPによるアニメーションの読み込みやブレンド

KineFXには大前提となるルールがあります。KineFXの処理ではジョイントの固有性確保のため、固有のName Attributeが必須となり重複は許されません。また、Parentは必ずひとつしか許されません。KineFXの使用時には、このルールを守ることが求められます。なお、KineFXはリターゲットだけに特化しているわけではなく、通常のアニメーション機能も実装されています。Full Bodyではない通常のIKを付与する最も簡単な方法は、IK Chainsノードを使用することです。IK Chainsノードの中を見ると、Rig Attribute VOPが実体であることがわかります。VOP内でジョイントに対してGet Point Transformを行い、必要となる処理(Two Bone IK、Parent Constraint、Look Atなど)を施した後、Set Point Transformを実行します。この組み合わせが、Rig VOPにおける処理の基本となります。

ほかにも、パス追従アニメーションを実現するTransform From Pathや、Vellum Hairの結果をボーンに転写するCurve Solverなど、非常に多くのノードが用意されています。2つのスケルトンを準備し、片方は上半身、もう片方は下半身の動きを適用したい場合などは、Skeleton BlendやBlend Shapesなどを駆使して、ほしい結果を導き出します。


アニメーションブレンド

▲IK Chainsの第2インプットにはIKアニメーション用のIKドライバ(Name付きのTwistとGoalジョイント)を入力します。複数のIK Chainsの同時登録もできます。注意点はBlendの初期値が0になっており、1にしなければアニメーションが適用されないことです。0である理由は、Kine FX全体で様々なアニメーションをブレンドすることを前提にしているからでしょう


▲アニメーションブレンドの手法は、従来のBlend ShapeのほかにSkeleton Blendなどがあり、接地アニメーションの足首の微調整や、IK Chainsとのブレンドなどによって、理想とするアニメーションをつくり出せます


KineFXでは、スケルトンでの最終的なデフォームをBone Deformが担います。FBXの場合は、ウェイト付きのスキンが入力されるため問題なく動作します。一方でイチからキャプチャする場合は、第1インプットにボーンキャプチャ用のノードを付与する必要があり、従来のオブジェクトノードで使用していた手法を踏襲してBone Capture Biharmonicを使用します。ウェイトの微調整が必要な場合は、Capture Layer Paintノードで編集します。ロボットのようなハードサーフェスをスケルトンに追従させる場合は、Capture Packed Geometryでキャプチャします。これは入力するジオメトリをPackして、ひとかたまりのパーツに見立ててボーンにアタッチする手法です。Rig Attribute VOPと組み合わせれば、ピストン構造の補助パーツを付けることも可能です。


Bone Capture Biharmonicと、Capture Packed Geometry

▲アニメーションに対するスキンをHoudini内でつくり出す場合は、【上】人や動物の動きであればBone Capture Biharmonicを、【下】ロボットなどの動きであればCapture Packed Geometryを用います


Rig Attribute VOPと、Rig Attribute Wrangle

  • ◀▼VOPにGet Point TransformとSet Point Transformを配置する場合は、ビューポート上でジョイントを選択し、のpoint_2と書かれた丸印をVOP内にドラッグ&ドロップすると便利です(上の丸がGet、下の丸がSet)


▲こちらのWrangleではrotate関数の参照演算子となるlocaltransformに値が代入されています。通常のWrangleとは異なり、ジョイントごとに親の座標が継承された上で計算されます


KineFXは、ゲームエンジンなどで採用されているステートマシンの考え方に基づくアニメーション処理方法にインスパイアされています。そのステートマシンの特徴が顕著に表れている機能が、Motion Clipジオメトリで、単一のアニメーションのポーズをPackしたプリミティブで構成されています。


時間に依存しないMotion Clip

▲Motion Clipノードにスケルトンデータを入力すると、スケルトンアニメーション全体が単一のジオメトリにカプセル化され、複数のフレームを一度に視覚化できます。視覚化した後、Motion Clip Retimeでモーションクリップをシフト・スケーリング・トリミングしたり、Motion Clip Cycleでループ処理したり、Extract Locomotionで特定の位置に留めたり、Motion Clip Blendでアニメーションのブレンドを行なったりします。特定箇所の動きを確認したい場合は、Motion Clip Extractを使用して、指定のグループをPackされていないポイントのリストとして出力します。この抽出したデータは、SOPレベルであり、時間に依存しない状態であるため、既存のSOPで一度に複数のフレームを簡単に操作できます。抽出したデータはMotion Clip UpdateによってMotion Clipに再度マージさせます。Motion Clipの調整が完了した後、単一フレームを計算して出力する際には、Motion Clip Evaluateを使用します


KineFXは、さらに機能強化を図っていくロードマップが敷かれています。OBJからSOPへの完全移行を目指すHoudiniアニメーション機能の動向から、今後も目が離せません。



  • 月刊CGWORLD + digital video vol.269(2021年1月号)
    第1特集:Unreal Engine ここが好き!
    第2特集:映画『STAND BY ME ドラえもん 2』
    定価:1,540円(税込)
    判型:A4ワイド
    総ページ数:112
    発売日:2020年12月10日
    cgworld.jp/magazine/cgw269.html

特集