「リバースフット」 で検索するとたくさん出てきます。
ただ、Softimage XSI や Maya ばかりだったので、Blender で作った例をあげときます。(まぁ、たいして変わりませんが)
名前が見にくいと思いますが、以下のようになっています。
- UpperLeg … 上肢(太もも)。
- LowerLeg … 下肢。UpperLeg の子。IK Solver が仕込んである。Chain Len は 2、Target は “ikLeg”、Pole Target は “poleLeg”。
- Ankle … 足の甲部分。LowerLeg の子。Copy Rotation が仕込んである。Target は “AnkleAngle”。
- Toe … つま先部分。Ankle の子。Copy Rotation が仕込んである。Target は “ctrlToe”。
以上が基本的な骨格部分です。
脚のメッシュを以上のボーンでスキニングすることになります。
以下は上記のボーンをコントロールするためのコントローラです。
- ctrlLeg … 足全体のコントローラ。
- ctrlToe … つま先の角度をコントロールするコントローラ。ctrlLeg の子(非接続)。
- ctrlAnkle … 足の甲の角度をコントロールするコントローラ。ctrlLeg の子(非接続)。
- AnkleAngle … ctrlAnkle の角度を Ankle に伝えるためのボーン。ctrlAnkle の子(非接続)。(ctrlAnkle が後ろ向きなので Ankle にあわせて前向きに直すためのボーン)
- ikLeg … IK Solver のターゲットになるボーン。AnkleAngle の子(非接続)。
- poleLeg … IK Solver のポールターゲットになるボーン。ctrlLeg の子(非接続)。
また、図ではずらして描いてますが、本当は ctrlLeg と ctrlToe、ctrAnkle は重なっています。そして、これらが AnkleAngle の先っぽのところにあります。
コントロールに使うのは ctrlLeg、ctrlToe、ctrlAnkle、そして、poleLeg だけです。
- ctrlLeg … 脚の移動、回転。
- ctrlToe … つま先の上下の向き。上下以外の回転と移動を禁止しておくと使いやすい。
- ctrAnkle … 足の甲部分の上下の向き。上下以外の回転と移動を禁止しておくと使いやすい。
- poleLeg … 膝の向き。ctrlLeg の子にしておけば ctrlLeg の向きを変えれば脚をひねることができる。つま先の向きを変えずに内股にしたりするときは poleLeg を移動する。ctrlLeg の子にするかどうかはお好みで。
あとは見やすく選択しやすいように Shape を作ったり、グループ分けして色をつけたりすれば OK です。
もちろん、コントローラの 4つ以外はボーンレイヤーを分けて普段は非表示にしておけば邪魔になりません。(なにより、間違って動かしちゃったりするのを防げます)
サンプルの blend ファイルを置いておきます。
http://cid-ca42d76a68f54d16.skydrive.live.com/self.aspx/Public/Blender/LegRig.blend
(Blender 2.49b)
つま先も動かせるようにした 「リバースフット改」 という感じのものですが、結構使いかってはいいんじゃないかと思います。