Houdini LookAt POP
RBD中など、特定の方向へ回転させたいとき
特に初期状態がバラバラなものを制御するときのメモ
Sim前
Rest SOP
Primitive Transforms > Add Transform Matrices で姿勢(3x3)を保存しておく
Sim内
Lookat POP
Inputs > Input1 -> Myselfに
prim()関数でAttribute参照できないため
Mode: Target is Direction
Use VEX Expression
N, upを復元する
code:cpp
matrix3 m = prim(0, "restxform", @ptnum);
refup = {0, 1, 0} * m;
refdir = {0, 0, 1} * m;
あとはtarget, upを任意の方向に指定する
備考
Sim中のorient, N, upを直接参照するとうまくいかない
Nやupでも良いが、何かしらRestしておいたものを使う
デフォルトでSpin Torqueは結構強いしSpin Drag>Spin Resistanceのはかなり弱い
Spin Torque: 0.25, Spin Resistance: 2 あたりで程よい
Sim途中でModeをVEX経由で切り替えるとうまくいかない
Lookatを複数用意する