-Blenderで剛体シミュレーションをするときの手順と注意点-


5. Rigid Body Constraint(束縛条件)

■ Generic (一般)

立方体をコピー(Shift-D 又は Alt-D)して、それらが関節状に動作するようにしてみます。x軸方向に並べて、左から順番にCube Cube.001 Cube.002 Cube.003 というように名前をつけています。
左端の Cube を親と考えて、右側のCubeに影響すようにします。
Cube.001 に Rigid Body Constraint (束縛条件)を設定します。
まず、どの物体とどの物体との関係にするのをObject 1 と Object 2 に設定します。今回は親(Cube)と自分(Cube.001)の関係なので、そのように設定しています。
自分を含めない第3者同士の関係に設定する事もできるのですが、どういうときに使うのかが謎です。

Typeはいくつかあるのですが、Generic Spring (一般的+バネ)にしてみました。まず、X Axis, Y Axis, Z Axis を有功にして、「初期の相対位置から」のずれが -1 から 1 の範囲を可動域にしました。
回転は、捻り(X軸回りの回転)が起きないように、X Angle を 0にして、Y Angle を -45度から45度までにしてみました。

さらに、Springが効いているので、動きが少し柔らかくなるはずです。バネのパラメータは初期値のままにしました。


同様にして、Cube.002 には Cube.001 と Cube.002 の関係として設定します。同じように Cube.003 にも設定をします。
親の Cube は Dynamic ではなくして重力の影響を受けないようにしました。残りの3つのキューブは束縛条件の範囲内のみで運動しています。
今度は親も Dynamic にして、下に障害物を置いてみました。全体としてある程度動く物体として落ちていきます。

■ Hinge (蝶番(ちょうつがい))

折角なので、他の例として Hinge を試してみます。親になる物体と自分との関係にして、可動角度の範囲を設定します。
扉っぽくするためにオブジェクトを薄くしました。回転運動は、オブジェクトの原点を中心に行うので、扉の開閉のように動いてくれるように、全体をずらしています。
物体をぶつけてみると蝶番のように動きました。
Constraintは基本的にオブジェクトごとのローカルな座標系で計算しています。なので、全体を回転させて Z 軸(青)を横向きにしてみると
この様な動きもできます。

思ったような動きをさせるのはなかなか難しそうですが、工夫次第でいろいろな事ができそうです。

inserted by FC2 system