スケルトンのボーンやコントロール リグのエフェクタを操作する場合、キネマティクス規則を使用して、これらのオブジェクト同士の相対的な動きを計算する方法を指定します。フォワード キネマティクスとインバース キネマティクスという 2 つの主要なキネマティクス規則があります。
ほとんどのアニメータは、IK (インバース キネマティクス)と FK (フォワード キネマティクス)の組み合わせを使用してキャラクタを操作します。FK を使用して個々のボーンに作用するピボット ポイントを選択して操作したり、IK を使用してボーンの階層を移動したりすることができます。
ほとんどの状況で、FK と IK を両方組み合わせてしかできない微調整が必要になります。このため、FK と IK の両方について十分に理解しておく必要があります。
フォワード キネマティクスは接続されたジョイント グループの変換方法の 1 つで、チェーンのルート(最上位)の動きがエンド ジョイントに達するチェーンのすべてのジョイントに影響を与えます。チェーンのすべてのジョイントが後続のジョイントに影響を与えますが、先行するジョイントには影響を与えません。言い換えると、フォワード キネマティクスはチェーン上を下位に向かって伝搬します。
腕の FK チェーン A. 肩のジョイントつまりルート ジョイント B. 肘のジョイント C. 手首のジョイント D. 手のジョイントつまりエンド ジョイント
腕の FK チェーンでは、肩のジョイント(A)の回転が肘(B)と手首(C)を通って手(D)まで伝搬します。肘(B)だけが回転した場合は、手首(C)と手(D)だけが動き、肩(A)は動きません。言い換えると、FK チェーンのジョイントには、子ノード(B)が親ノード(A)の動作に追従する親子関係があります。通常はアニメータがキャラクタのすべてのジョイント モーションについてこのような複雑な規則を定義しなければいけませんが、MotionBuilder では、この作業はコントロール リグが行ってくれます。
フォワード キネマティクスによって、スケルトンの個々のボーンを完全に制御でき、手動でチェーンの個々のジョイントを配置できます。インバース キネマティクスだけでは不可能な、このような微調整が必要になる場合があります。
FK では、指のジョイントなど、個々のジョイントを操作できます。
このように、FK の機能の 1 つはスケルトンの個々のボーンが完全に制御可能であることです。これによりチェーンにある個々のジョイントを手動で配置できます。
インバース キネマティクス(IK)は接続されたジョイント グループのもう 1 つの変換方法で、エンド ジョイントの動きがチェーンを遡ってすべてのジョイントに影響を与えます。チェーンのエンド エフェクタを配置することによってアクションのゴールを定義するため、エンド エフェクタはゴールとも呼ばれ、IK は「ゴールベースの動き」と呼ばれます。すべてのジョイントは先行するジョイントに影響を与えますが、後続のジョイントには影響しません。言い換えると、インバース キネマティクスはチェーンを遡って伝搬します。
腕の IK チェーン A. 肩のエフェクタ B. ヒジのエフェクタ C. 手首のエフェクタ
IK チェーンのすべての変換は、指先の変換であっても、指のジョイント、手、手首、肘、および肩に伝搬します。
IK はゴールベースであるため、IK チェーンでは同一のゴールに到達しうる無数のポジションが存在します。このため、ジョイントがどの方向に曲がるかについての「ヒント」をメインの IK チェーンに与える追加エフェクタを指定する必要があります。
MotionBuilder は、このゴールに到達するための残りのチェーンの配置を計算します。これにより、ボディのすべてのパーツが他のパーツに関連して動くため、リアルな動きを作成できます。ゴールを配置すると、ボディの残りは MotionBuilder によって配置されます。
インバース キネマティクスは、関連するボディのパーツに影響を与えます。
コントロール リグは、ジョイントの向きを決定する役割を持ちます。コントロール リグに追加できる、既存の IK エフェクタに対応した補助的なエフェクタもあります。補助エフェクタとピボットは、キャラクタのリーチに対して付加的な IK コントロールを提供し、対応する IK エフェクタ上に表示されます。
本来、IK リグでは、ボーンの階層を操作するためにチェーンの終わりにエフェクタを移動することによって、迅速かつ直観的にキャラクタを配置できます。インバース キネマティクスだけでは不可能な微調整が必要になる場合があります。このような場合は、インバース キネマティクスとフォワード キネマティクスを組み合わせて、必要なポジションを正確に作成します。