KineFXメモ

とりあえず集めた情報をまとめ。
いいかげんです。間違いもあるかもしれません。

houdini19の記事はこちら。
https://zenn.dev/masuki/articles/172c6f7355ff17

#◯Skeleton
SOP階層でのボーン。
![skeleton01.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669759/625f6383-28c2-c865-9524-b7464380220a.jpeg)
**・skeletonの配置**
変形させるオブジェクトを表示させつつ、Skeletonノードを別の場所に置いて、ポイントを打っていくとよい。
意外と適当にポイント打ってもそれらしい場所にskeletonを作ってくれる。
ただ、修正は必要。
![skeleton02.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669759/eaea302d-e29d-d400-df4c-28c6ad42aac4.jpeg)
**・ポイントの位置を修正する**
上のmodeが「modify」になっていれば修正モード。
**画面を右クリックし、Show Handleにチェックを入れる**とハンドルが表示され位置、回転を修正できる。

skeletonは複数連結可能。プロシージャルにポイントを修正できる。　

#◯Rig Pose
![rig_pose01.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669759/c6eb5e6b-2252-49a3-f805-c1ffee3e8b69.jpeg)
curveやskeletonの下に接続すると、各ポイントから下の階層を移動、回転させることができる。
ポイントごとにアニメの設定も可能。
リグに限らず、モデリングなどにも活用できると思う。革新的。

#◯スキニング(Bone Deform)
オブジェクトを変形させるために関連付けます。

「Houdini 18.5 KineFX」https://vimeo.com/465614203
こちらの動画を参考にしました。
![skeleton01.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669759/7e11621c-cb60-20e7-025a-eb163e2b6d7a.jpeg)
**最終的な変形はBone Deformで行われます。**
18.5のbonedeformはインプットが3つに増えています。

第1インプット　変形させるオブジェクト
第2インプット　skeleton（変形前）
第3インプット  skereton（変形後）

**Bone capture lines
tetembed
bone capture biharmonic**

この3つはシェルフでCaptureGeometry(biharmonic)を実行すると生成されるノードで
それを手動で設置しています。

#◯Attach Control Geometry
コントロールポイントにコントロール用オブジェクトをアタッチする。
objリグではnullをコントローラにしますが、それですな。
ある程度のリグを作るとわかりますが、コントローラは重要です。
![control01.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669759/df0bf3f8-6ba7-26d7-e0bf-6d92dc5a3734.jpeg)
![control02.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669759/31e6957e-6d4c-4cae-3fd2-f691a4979655.jpeg)
第1インプット skeleton
第2インプット アタッチするオブジェクト

**オブジェクトの下にname sopを付けて、名前をつけるのがポイント。**

「group」でアタッチするポイントを選び
「Control Name」にオブジェクトにつけた名前を入力します。

これでRig Poseを使えば、オブジェクトをクリックすることで選択ができます。

#◯Group Joints
skeleton用のグループ。
普通にポイントグループで良いのだが、childで選択できるのが特徴。
作ったグループをRig poseのgroup枠に入れると、まとめて曲げることができる。

#◯Full body IK
![fullbodyIK2.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669759/ac1427bd-e0be-0239-da7d-4dc935d07345.jpeg)
参考：https://youtu.be/bunT4nHWQzI

第1インプットにスケルトン
第2インプットにコントローラにするポイント

「Pin root」にチェックを入れるとルート（最初のポイント）が固定される。

「Map Using」を「Match by Attribute」にする。

コントローラにするポイントはaddでも試したがうまくいかなかった。
画像のように、skeletonからdeletejoint(Delete Non-Selected)でポイントを抜き出し、
それをコントローラにするとうまくいく。

FullbodyIKの記事（別サイト）
https://zenn.dev/masuki/articles/9d1c4cc2ab063e


#◯Full body IK Configure Joints
スケルトンのノードとFull body IKの間に接続。
曲がり方のウェイト的な設定ができる。

#◯IK Chains
2ボーンIKを作る。twistなんかも設定できる。

参考：https://twitter.com/fabriciochamon/status/1319515999230676992
この動画が参考になりました。

![IK_chains.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669759/5a6a1ea2-eeb4-fce3-e6c0-377bd41c553e.jpeg)
・curveを作る。
skeletonかrigdoctorを接続。

rigdoctorの場合、「Initialize Transfroms」「Re_Orient TO Child」あたりをチェック
Visualizeでアイコンサイズを調整

・コントロールポイントを作る。add等で
name SOPを使って、goal twist等の名前を付ける。

・IKchains を接続
第1インプット　curve
第2インプット　コントロールポイント

+を押し、IKの設定をする。

ルート、真ん中、末端のポイントを指定する。

goalとtwistのポイントを指定する。

#◯Reverse Foot
https://youtu.be/OfuIxBxpy1g?t=8165
「Houdini 18.5 HIVE | Day Two」2時間16分あたりに説明がある。

#◯Rig Attribute VOP
画面のスケルトンからポイントを選択し、VOP画面にドラッグするとポイントの名前の付いたノードが配置される。

#◯Link




「A First Look At KineFX」
https://youtu.be/9f06tjunxUs
skeletonの丁寧な説明がある

「Houdini 18.5 HIVE | Day One」
https://www.youtube.com/watch?v=-shmXXV_aEE&t=4611s&ab_channel=Houdini
「Houdini 18.5 HIVE | Day Two」
https://www.youtube.com/watch?v=OfuIxBxpy1g&ab_channel=Houdini

「HoudiniKinefx」cgwiki
https://www.tokeru.com/cgwiki/index.php?title=HoudiniKinefx

「Урок Houdini "Анимация и риг в KineFX" (Часть 1)」
https://www.youtube.com/watch?v=-AFJ5j47pwE&ab_channel=Houdini%D0%BF%D0%BE-%D1%80%D1%83%D1%81%D1%81%D0%BA%D0%B8

読み込んだブレンドシェイプを使う
「Урок Houdini "Анимация и риг в KineFX" (Часть 3)」
https://www.youtube.com/watch?v=7vFXuVHBk3A&ab_channel=Houdini%D0%BF%D0%BE-%D1%80%D1%83%D1%81%D1%81%D0%BA%D0%B8