腕と脚・IKの概念について

IK(インバース・キネマティクス)の概念

3DCGの世界では「インバース・キネマティクス(略してIK)」という機能があります。
何かというと、特に腕や脚などの2段階の関節で成立している骨に関しては、2段階関節の先端部分を直接移動、コントロールできるような機能です。

 

通常、CGでアニメーションを作るときはこの機能が必須になりますが、普通に鉛筆で絵を描くときでも、細かい部分までしっかり描画しようとすると、この概念を理解しておく必要がある場合があります。

 

言葉で説明してもわかりにくいので、図で見てみましょう。

 

3DCGの人体ではたとえば上腕・下腕と関節がありますが、何も設定しない状態ではこれらを直接、一つ一つ回していくことでポーズを作っていきます(これをフォワード・キネマティクス(略してFK)といいます)

 

画像:3DCGのロボット、上腕と下腕をFKでコントロール。
3DCGのロボット、上腕と下腕をFKでコントロール。
これに対し、腕の先端、つまり手首の位置を直接移動できるように設定し、肘や上腕の回転具合はそれに従って自動で決まるような設定をIKと呼びます。

 

画像:3DCGの腕をIKでコントロール。
3DCGの腕をIKでコントロール。
IKの必要性は、たとえば飛んできたボールを手で受け止めるときのアニメーションを作るとき、飛んでくるボールをつかむため、ボールと同じ位置に手のひらを持ってこなければなりません。
このとき、まず上腕、次に下腕を回してぴったりボールの位置に手のひらが来るようにするのは、かなり難しいことです。

 

画像:FKでボールをつかもうとする。
FKでボールをつかもうとする。
適当に上腕と肘を回して手のひらの位置を調整すればよさそうに見えますが、肘関節は実際のところ、前屈方向にしか曲がりません。ためしに肘をしっかり伸ばし、側屈方向(左右)に曲げてみようとしても、まったく曲がりません。
腕を少し曲げた状態(前屈させた状態)だと左右にも回るように感じますが、よく見ると回っているのは上腕の付け根で、肘は回っていないのです。

 

脚でも同じですが、肘やひざは1方向にしか曲がらないため(肘は回旋できますが)、先端の位置をある地点に正確に合わせるには、付け根(上腕や上脚)の回転から考える必要があり、間違うと決して思った場所には位置しません。

 

人間はこういった複雑な計算を自動で、しかも難なく瞬時にやってのけますが、CGや紙の上に正確に記述するのは、実はかなり難しいのです。

 

 

肘の位置の調整の問題

別の例をみてみます。目の前に消しゴムがあり、これを手に取る絵を描いてみるとします。
すでに上腕付け根の位置が決まっているとしましょう胴体の位置が最初に決まっている)。消しゴムを手に取るので手首の位置は消しゴムのすぐ手前になるでしょう。
上腕と手首関節の位置は図のように決まりますが、これで肘の位置を決めなければなりません。

 

仮に奥行きなしで上腕と下腕を適当な角度で描いてしまうと、手首の位置がちょうど指定の位置にきません。

 

画像:適当に腕を描いたもの。
適当に腕を描いたもの。
上腕と下腕は長さが同じなので、このようにいい加減な角度で描いてしまうと、手首の位置にぴったりこないのです。

 

画像:さらに適当に描いてみたもの。
さらに適当に描いてみたもの。
適当に描いていると、いつまでたってもぴったり指定の位置に手首を合わせられません。
もう少し考えてみます。上腕と下腕は長さが同じなので、コンパスを使って上腕、下腕からそれぞれ腕の長さが半径の円を描きます。そしてこの交点がひじの位置になります。

 

画像:肘の位置を出したもの。
肘の位置を出したもの。
それにしても、たかが消しゴムを手に取るだけでこんな計算をしなければならないのは面倒です。
これは消しゴムの位置を先に決めてしまったため、それに合わせて肘の位置を決めなければならなかったためにこういうことになってしまいました。
先に手首まで普通に描いてしまい、その後手のひらに消しゴムを持たせる、という手順ならこんな面倒なことをする必要はないでしょう。

 

「腕→消しゴム」の順で描けば、面倒ではないのです。しかし常にこのような順番で描けるとは限りません。たとえば二人で手をつないでいるような図の場合、先に一人目を描き、次に二人目を描くときは、二人目の手のひらは一人目の手のひらの位置にぴったりあわせなければなりません。

 

また今回は奥行きなしで腕を描きましたが、これに奥行きが入っている場合は、奥行きの拡大縮小も考えなければならず、さらにややこしくなります。
こういった問題を避けるためには、たとえば接合点から描き始めるという方法もあります。たとえば先の二人で手をつないでいる図だったら、二人目を描くときはつないでいる手のひらから描き始める、という手順です。

 

このように厳密に考えていくと、腕の長さや位置、遠近による拡大縮小などはとても複雑になってきます。
実際に手をつなぐときは、肘をほんの少し曲げて、手のひらの位置は上腕の回転で調整していることが多いものです。
あまり厳密さを求めていくと計算も非常に複雑になってしまい、絵を描くのに時間がかかりすぎて、効率を失ってしまいます。

 

しかしこういった概念があるということは覚えておいてください。
たとえば肘をありえない方向に曲げて描いてしまっても、一見しておかしな絵には見えないこともあります。その後細かく陰影をつけてみると、筋肉の描写によって腕の回旋度合いの不具合が明らかになり、よく見るとなんだかおかしい……というようなことがわかったりします。

 

あまり面倒な場合は、素直に曲がった腕を写真で取ったりし、それを見ながら描いたほうが無難です。