
ゲーム内のキャラクターにはスケルトンがあります。私たち自身のスケルトンと同様に、これは相互に接続して移動する隠された一連のオブジェクトです。子育てと呼ばれる手法を使用して、ターゲットオブジェクト(子)が別のオブジェクト(親)に割り当てられます。親オブジェクトが移動するたびに、子オブジェクトは割り当てられた属性に従って移動します。完全な階層は、子と親を持つオブジェクトを使用して作成できます。人間のキャラクターの例を次に示します。
スケルトンが作成され、すべての子育てコントロールが配置されると、キャラクターがアニメートされます。おそらく、キャラクターアニメーションの最も一般的な方法は、逆運動学に依存しています。この手法では、子オブジェクトをアニメーターが望む場所に移動し、親オブジェクトと他のすべてのアタッチされたオブジェクトを追跡します。ゲームで人気のあるもう1つの方法は、モーションキャプチャです。これは、実在の人物の一連のセンサーを使用して、一連の座標をコンピュータシステムに送信します。座標はゲームキャラクターのスケルトンにマッピングされ、流動的でリアルなモーションに変換されます。
各キャラクターの可動域はゲームにプログラムされています。イベントの典型的なシーケンスは次のとおりです。
- コントローラのボタンを押して、キャラクターを前進させます。
- ボタンは回路を完成させ、コントローラーは結果のデータをコンソールに送信します。
- コンソールのコントローラーチップはデータを処理し、ゲームアプリケーションロジックに転送します。
- ゲームロジックは、ゲームのその時点での適切なアクションが何であるかを決定します(キャラクターを前方に移動します)。
- ゲームロジックは、動きの作成に関係するすべての要素(影、衝突モデル、視角の変化)を分析します。
- ゲームロジックは、キャラクターのスケルトンの新しい座標とその他すべての変更をレンダリングエンジンに送信します。
- レンダリングエンジンは、影響を受けるオブジェクトごとに新しいポリゴンを使用してシーンをレンダリングし、シーンを1秒間に約60回再描画します。
- キャラクターが前進するのがわかります。
ここにいくつかの興味深いリンクがあります:
- 3DOがビデオゲームを作成する方法
- ビデオゲームシステムのしくみ
- ソニープレイステーション2のしくみ
- ソニーのプレイステーションのしくみ
- 3Dグラフィックスのしくみ
- MicrosoftXboxのしくみ
- インタラクティブシェーディングアプレット!
- テクスチャマッピングを使用したプログラミング
- テクスチャマッピングに関するSGIレポート
- 3DFXプログラミング