人間のリアルな動きを作成する

MotionBuilder は、キャラクタのリアルな動きを簡単に作成できる多くのツールを提供します。

本項目では、わかりやすくするために、MotionBuilder キャラクタ エンジンによる Biped、すなわち人間のスケルトン処理を例に説明します。本セクションで扱わない四足歩行モデルのアニメーションでは、他に特別な条件や例外が発生します。

うまくキャラクタをアニメートするには、スケルトンの動きの仕組みと MotionBuilder が自然なモーションを再現する仕組みを理解しておくことが重要です。

人間のスケルトンについて

人間の自然な動きを作成するには、最初に実際の人間の骨格(スケルトン)とその動作の仕組みを調べる必要があります。

人間の骨格は、基本的に、一連の関節(ジョイント)で構成され、関節は筋肉と腱によって動く骨(ボーン)で結合されています。

アニメーションでリアルな動きを作成するために、3D スケルトンは、筋肉、腱、および骨の複雑なシステムを実際に再現する代りに、一連のジョイントを使用して人間の骨格の動きを模倣します。

単純な 3D スケルトンは、肩、肘、手首、膝などの主要なジョイントから構成されます。実物では、筋肉や腱が関節(ジョイント)を動かし、その関節が骨格のリアルな動きを創り出しているので、筋肉や腱を再現する代りに、ジョイント(関節)を直接操作してモデルの動きを正確に再現できます。

人間の骨格の関節に似せて各点が 3D 空間に配置され、結合されます。たとえば、以下の図は、ジョイントを表わす点とボーンを表わす線で作成された非常に単純なスケルトンです。ジョイント間に描かれるものは、この段階では重要ではありません。

一連のドットは、線(ボーンを表す)で結合されたジョイントを表します。次のセクションでは、この一連の点を人間の骨格のように動作させるために必要な関係と規則について説明します。

人間の動きを作成する基本的な規則

キャラクタをキャラクタライズするとき、キャラクタ エンジンによって自動的に人間の動きを制御する一連の設定が定義されるため、独自の設定を定義する必要はありません。ただし、人間のリアルな動きの作成に関してよく知っておくことは重要です。

一連の点を人間のスケルトンのように動作させるには、点の相互作用の仕組みを定義する規則を設定する必要があります。適切な相互作用を実現するには、各点の他の点に対する影響を制御する関係を作成しておく必要があります。これを怠ると、一連のジョイントが動いても、人間の骨格のようには動作しません。

もう一度、関節を表わす点を使用している を参照してください。関係が設定されていないと、各ジョイントは独立して動作します。

たとえば、肘を表わす点を動かしたとき、肘だけが動き、手首と手は動きません。人間の骨格であれば、肘を動かすと手首と手も同時に動きます。

A. 単純なスケルトンで右腕の動きを定義するリレーションが確立されていない場合、右腕の動きは不自然になります。B. 肘が動くと手首と手が動き、自然な動きを再現する規則が作成されています。

自然な動きを再現するには、「右の肘を動かしたときは必ず右の手首と手も動く」という規則が必要です。

また、ジョイントの回転を制御する規則も必要です。人間の動きを研究するとよくわかりますが、たとえば、右の肘が動くと、手首と手も動き、さらに、右の肩が回転します。このため、「右の肘が動くと、右の肩が回転する」という規則を作成します。

人間の骨格の動きをすべて調べると、移動と回転を制御する数百もの規則を発見できます。MotionBuilder は、すでにこれらの規則のほとんどを把握しています。