多関節剛体の素材としてこの様な形にしました。 (横を向かせた 8角形の Cylinder です) 角をとった形にしたのはシミュレーションの時に引っかかりにくいようにするためです。 また、回転の中心が節の中央ではなく関節部分になるように中心をはずしてあります。 ボーンの根元と先端をこの形状に合わせようとしています。 | |
前節と同じようにx軸方向に並べて、左から順番にCylinder Cylinder.001 Cylinder.002 Cylinder.003 というように名前がつけています。 また、関節部分には Rigid Body Constraint を置くための Empty を配置しました。 | |
前回の要領で、根元だけ動かないようにして、他の節に Rigid Body を設定します。 関節部分にあたる Empty にそれぞれ Constraint (Generic Spring 汎用ばね)を設定しました。 移動の自由度はなしにして(LowerとUpperを0に設定します)、角度を前後45度まで可動にしました。 | |
ところで、剛体を複数のオブジェクトに順に設定していくような場合には、 剛体のメニューの中に Copy From Active (アクティブからコピー)があるのでこれを使うと手順が少なくて済みます。 |
時間を0に戻して初期位置で編集します。親の Cylinder と重なるように、Boneを追加します。 Edit モードで編集して、Tail の位置を調整してx軸方向を向くようにします。 | |
Rigid Body と重なるように、 Bone を延長して増やしていきます。 ※) 厳密には、ボーンのつなぎ目が関節として配置した Empty に重なるようにします | |
Pose Mode にして一本一本のボーンの設定を編集します。 | |
Bone Constraint の Child of (チャイルド)をそれぞれに設定します。 | |
Bone は Cylinder に、Bone.001 は Cylinder.001 にというように、順番に結びつけていきます。 | |
これだけだと動きは追随するのですが、Bone が曲がりすぎます。 これは、子供のBoneの角度が親の角度を反映するために、角度が合計されているためです。 | |
ボーンの Releations (関係)設定で、Inherit Rotation (回転を継承) を切って、親の回転の影響を受けないようにします。 これで剛体のオブジェクトの回転だけを反映するようになります。 | |
Bone が 物理シミュレーションに従って動きました。 | |
Blender 2.78 以降で Bendy Bones (ベンディボーン = 曲がるボーン)が導入されています。 今回のような揺れるボーンの設定にはせっかくなので適用しておくとより柔軟な動きが表現できます。 | |
Bendy Bone の曲がり具合は表示設定を B-Bone(B-ボーン) にしないと表示されません。 B-Boneで表示すると、ボーンがより滑らかに曲がっていることがわかります。 |
Aramature を使ったアニメーションの詳細はキャラクターアニメーションの作り方の範疇になるので、ここでは詳しく触れません。 代わりにものすごい簡単な多関節キャラクターとして蛇を使ってみます。 この蛇はフリー配布素材をもとにして、ボーン(Armature)と重なるように蛇をモデリングしました。 剛体は邪魔なので非表示にして隠しています。 胴体は充分に滑らかに曲がってくれるように追加で多めに分割(Ctrl-R)しています。 | |
蛇のモデルとArmatureに親子関係(Ctrl-P)をつけて、モデルがArmatureによって変形するように調整します。 とりあえずは今回のような単純な形状では、Automatic Weight (自動のウェイトで)で充分だと思います。 パラメータなどはここでは説明しないのですが、キャラクターアニメーションをつけるための手順に従います。 (ウェブ上にも多くの資料があると思います) | |
根元のオブジェクトを振って、蛇のニョロニョロアニメーションができました。 根元が動いているだけなので、あまり精気がある動きではないですが、ある程度それらしい動きができました。 |