(57)【特許請求の範囲】
【請求項１】
画像を生成するためのプログラムであって、
しわ表現のための少なくとも１つの制御点が設定されるモデルオブジェクトのモーション処理を行うモーション処理部と、
モデルオブジェクトのモーションの変化によりその位置が変化する前記制御点の位置を求める制御点演算部と、
モデルオブジェクトの表面のしわを表現するためのテクスチャであって、そのテクスチャパターンが異なる複数のしわ表現テクスチャを記憶するテクスチャ記憶部と、
前記制御点に基づいて、複数のしわ表現テクスチャの合成パラメータを求めるパラメータ演算部と、
求められた前記合成パラメータにより複数のしわ表現テクスチャを合成し、得られた合成テクスチャをモデルオブジェクトにマッピングすることで、モデルオブジェクトのしわ画像を生成する画像生成部として、
コンピュータを機能させ、
モデルオブジェクトに対してしわ表現のための第１、第２の制御点が設定され、
前記パラメータ演算部は、
前記第１、第２の制御点の位置に基づいて、前記合成パラメータを求めることを特徴とするプログラム。
【請求項２】
請求項１において、
前記制御点演算部は、
前記モーション処理に使用される座標変換マトリクスを用いた座標変換により、前記制御点の位置を求め、
前記パラメータ演算部は、
座標変換により求められた前記制御点の位置に基づいて、前記合成パラメータを求めることを特徴とするプログラム。
【請求項３】
請求項２において、
前記制御点演算部は、
座標変換マトリクスを用いた座標変換により、前記制御点のワールド座標系での位置を求め、
前記パラメータ演算部は、
前記制御点のワールド座標系での位置に基づいて、前記合成パラメータを求めることを特徴とするプログラム。
【請求項４】
請求項２において、
前記制御点演算部は、
モデルオブジェクトのスケルトンが複数の骨及び複数の関節により構成される場合に、座標変換マトリクスを用いた座標変換により、前記複数の関節のうちの所与の関節に対する前記制御点の相対的な位置を求め、
前記パラメータ演算部は、
前記所与の関節に対する前記制御点の相対的な位置に基づいて、前記合成パラメータを求めることを特徴とするプログラム。
【請求項５】
請求項１乃至４のいずれかにおいて、
前記パラメータ演算部は、
前記第１の制御点と他の制御点又は基準点との第１の距離と、前記第２の制御点と他の
制御点又は基準点との第２の距離を求め、求められた前記第１、第２の距離に基づいて前記合成パラメータを求めることを特徴とするプログラム。
【請求項６】
請求項５において、
前記パラメータ演算部は、
前記第１、第２の距離の比に応じて変化する前記合成パラメータを求めることを特徴とするプログラム。
【請求項７】
画像を生成するためのプログラムであって、
しわ表現のための少なくとも１つの制御点が設定されるモデルオブジェクトのモーション処理を行うモーション処理部と、
モデルオブジェクトのモーションの変化によりその位置が変化する前記制御点の位置を求める制御点演算部と、
モデルオブジェクトの表面のしわを表現するためのテクスチャであって、そのテクスチャパターンが異なる複数のしわ表現テクスチャを記憶するテクスチャ記憶部と、
前記制御点に基づいて、複数のしわ表現テクスチャの合成パラメータを求めるパラメータ演算部と、
求められた前記合成パラメータにより複数のしわ表現テクスチャを合成し、得られた合成テクスチャをモデルオブジェクトにマッピングすることで、モデルオブジェクトのしわ画像を生成する画像生成部として、
コンピュータを機能させ、
モデルオブジェクトのスケルトンが複数の骨及び複数の関節により構成される場合に、前記複数の関節のうちの所与の関節の前側に前側制御点が設定され、前記所与の関節の後ろ側に後ろ側制御点が設定され、
前記制御点演算部は、
モデルオブジェクトのモーションの変化によりその位置が変化する前記前側制御点の位置と前記後ろ側制御点の位置を求め、
前記パラメータ演算部は、
前記前側制御点に基づいて第１の合成パラメータを求め、前記後ろ側制御点に基づいて第２の合成パラメータを求め、
前記画像生成部は、
求められた前記第１の合成パラメータにより複数のしわ表現テクスチャを合成し、得られた合成テクスチャをモデルオブジェクトの前側面にマッピングすることで、モデルオブジェクトの前側面におけるしわ画像を生成し、求められた前記第２の合成パラメータにより複数のしわ表現テクスチャを合成し、得られた合成テクスチャをモデルオブジェクトの後ろ側面にマッピングすることで、モデルオブジェクトの後ろ側面におけるしわ画像を生成することを特徴とするプログラム。
【請求項８】
請求項１乃至７のいずれかにおいて、
前記しわ表現テクスチャのテクセル値をフェッチするためのテクスチャ座標を設定するテクスチャ座標設定部として、
コンピュータを機能させ、
前記テクスチャ記憶部は、
前記しわ表現テクスチャを、第１、第２、第３のテクスチャ座標でテクセル値がフェッチされるボリュームテクスチャとして記憶し、
前記テクスチャ座標設定部は、
前記合成パラメータに基づいて、ボリュームテクスチャの前記第３のテクスチャ座標を設定し、
前記画像生成部は、
前記第１、第２、第３のテクスチャ座標に基づいて、しわ表現テクスチャをボリュームテクスチャとしてモデルオブジェクトにマッピングする処理を行うことを特徴とするプログラム。
【請求項９】
コンピュータ読み取り可能な情報記憶媒体であって、請求項１乃至８のいずれかに記載のプログラムを記憶したことを特徴とする情報記憶媒体。
【請求項１０】
画像を生成する画像生成システムであって、
しわ表現のための少なくとも１つの制御点が設定されるモデルオブジェクトのモーション処理を行うモーション処理部と、
モデルオブジェクトのモーションの変化によりその位置が変化する前記制御点の位置を求める制御点演算部と、
モデルオブジェクトの表面のしわを表現するためのテクスチャであって、そのテクスチャパターンが異なる複数のしわ表現テクスチャを記憶するテクスチャ記憶部と、
前記制御点に基づいて、複数のしわ表現テクスチャの合成パラメータを求めるパラメータ演算部と、
求められた前記合成パラメータにより複数のしわ表現テクスチャを合成し、得られた合成テクスチャをモデルオブジェクトにマッピングすることで、モデルオブジェクトのしわ画像を生成する画像生成部と、
を含み、
モデルオブジェクトに対してしわ表現のための第１、第２の制御点が設定され、
前記パラメータ演算部は、
前記第１、第２の制御点の位置に基づいて、前記合成パラメータを求めることを特徴とする画像生成システム。
【請求項１１】
画像を生成する画像生成システムであって、
しわ表現のための少なくとも１つの制御点が設定されるモデルオブジェクトのモーション処理を行うモーション処理部と、
モデルオブジェクトのモーションの変化によりその位置が変化する前記制御点の位置を求める制御点演算部と、
モデルオブジェクトの表面のしわを表現するためのテクスチャであって、そのテクスチャパターンが異なる複数のしわ表現テクスチャを記憶するテクスチャ記憶部と、
前記制御点に基づいて、複数のしわ表現テクスチャの合成パラメータを求めるパラメータ演算部と、
求められた前記合成パラメータにより複数のしわ表現テクスチャを合成し、得られた合成テクスチャをモデルオブジェクトにマッピングすることで、モデルオブジェクトのしわ画像を生成する画像生成部と、
を含み、
モデルオブジェクトのスケルトンが複数の骨及び複数の関節により構成される場合に、前記複数の関節のうちの所与の関節の前側に前側制御点が設定され、前記所与の関節の後ろ側に後ろ側制御点が設定され、
前記制御点演算部は、
モデルオブジェクトのモーションの変化によりその位置が変化する前記前側制御点の位置と前記後ろ側制御点の位置を求め、
前記パラメータ演算部は、
前記前側制御点に基づいて第１の合成パラメータを求め、前記後ろ側制御点に基づいて第２の合成パラメータを求め、
前記画像生成部は、
求められた前記第１の合成パラメータにより複数のしわ表現テクスチャを合成し、得られた合成テクスチャをモデルオブジェクトの前側面にマッピングすることで、モデルオブジェクトの前側面におけるしわ画像を生成し、求められた前記第２の合成パラメータにより複数のしわ表現テクスチャを合成し、得られた合成テクスチャをモデルオブジェクトの後ろ側面にマッピングすることで、モデルオブジェクトの後ろ側面におけるしわ画像を生成することを特徴とする画像生成システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム、情報記憶媒体及び画像生成システムに関する。
【背景技術】
【０００２】
従来より、キャラクタ、車などのオブジェクトが配置設定されるオブジェクト空間内（仮想的な３次元空間）において仮想カメラ（所与の視点）から見える画像を生成する画像生成システム（ゲームシステム）が知られており、いわゆる仮想現実を体験できるものとして人気が高い。サッカーゲームを楽しめる画像生成システムを例にとれば、プレーヤは、スクリーン上に映し出されたキャラクタを操作し、ドリブルをしたりシュートをしたりしてゲームを楽しむ。
【０００３】
このような画像生成システムでは、生成される画像のリアル性への要求が、年々、高まっている。従って、キャラクタの衣服や肌のしわについても、リアルに表現できることが望ましい。
【特許文献１】特開平１１−１４４０８４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、リアルなしわ表現を簡素な処理で実現できるプログラム、情報記憶媒体及び画像生成システムを提供することにある。
【課題を解決するための手段】
【０００５】
本発明は、画像を生成する画像生成システムであって、しわ表現のための少なくとも１つの制御点が設定されるモデルオブジェクトのモーション処理を行うモーション処理部と、モデルオブジェクトのモーションの変化によりその位置が変化する前記制御点の位置を求める制御点演算部と、モデルオブジェクトの表面のしわを表現するためのテクスチャであって、そのテクスチャパターンが異なる複数のしわ表現テクスチャを記憶するテクスチャ記憶部と、前記制御点に基づいて、複数のしわ表現テクスチャの合成パラメータを求めるパラメータ演算部と、求められた前記合成パラメータにより複数のしわ表現テクスチャを合成し、得られた合成テクスチャをモデルオブジェクトにマッピングすることで、モデルオブジェクトのしわ画像を生成する画像生成部とを含む画像生成システムに関係する。また本発明は、上記各部としてコンピュータを機能させるプログラム、又は該プログラムを記憶したコンピュータ読み取り可能な情報記憶媒体に関係する。
【０００６】
本発明によれば、モデルオブジェクトのモーションの変化により、モデルオブジェクトに設定される制御点の位置が変化する。そして、このような制御点に基づいて合成パラメータが求められ、合成パラメータに基づいて複数のしわ表現テクスチャが合成され、得られた合成テクスチャがモデルオブジェクトにマッピングされる。従って本発明によれば、モデルオブジェクトのモーション変化に連動して合成パラメータが変化し、合成テクスチャも変化するようになる。従って、モデルオブジェクトのモーション変化に連動して、しわ画像も変化するようになり、リアルなしわ表現を簡素な処理で実現できる。
【０００７】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記制御点演算部は、前記モーション処理に使用される座標変換マトリクスを用いた座標変換により、前記制御点の位置を求め、前記パラメータ演算部は、座標変換により求められた前記制御点の位置に基づいて、前記合成パラメータを求めるようにしてもよい。
【０００８】
このようにモーション処理用の座標変換マトリクスを有効活用すれば、モーション変化により変化する制御点の位置を、簡素な処理で求めることができる。
【０００９】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記制御点演算部は、座標変換マトリクスを用いた座標変換により、前記制御点のワールド座標系での位置を求め、前記パラメータ演算部は、前記制御点のワールド座標系での位置に基づいて、前記合成パラメータを求めるようにしてもよい。
【００１０】
このようにすれば、ワールド座標系での制御点についての位置関係や方向関係により、合成パラメータを求めることが可能になる。
【００１１】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記制御点演算部は、モデルオブジェクトのスケルトンが複数の骨及び複数の関節により構成される場合に、座標変換マトリクスを用いた座標変換により、前記複数の関節のうちの所与の関節に対する前記制御点の相対的な位置を求め、前記パラメータ演算部は、前記所与の関節に対する前記制御点の相対的な位置に基づいて、前記合成パラメータを求めるようにしてもよい。
【００１２】
このようにすれば、制御点の相対的な位置の変化に連動して、合成パラメータを変化させて、しわ画像を変化させることが可能になり、よりリアルなしわ画像を生成できる。
【００１３】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、モデルオブジェクトに対してしわ表現のための第１、第２の制御点が設定され、前記パラメータ演算部は、前記第１、第２の制御点の位置に基づいて、前記合成パラメータを求めるようにしてもよい。
【００１４】
このようにすれば、第１の制御点の位置の変化の仕方と第２の制御点の位置の変化の仕方の違い応じて、合成パラメータが変化して、生成されるしわ画像も変化するようになり、多様なしわ画像の生成が可能になる。
【００１５】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記パラメータ演算部は、前記第１の制御点と他の制御点又は基準点との第１の距離と、前記第２の制御点と他の制御点又は基準点との第２の距離を求め、求められた前記第１、第２の距離に基づいて前記合成パラメータを求めるようにしてもよい。
【００１６】
このようにすれば、第１、第２の制御点と他の制御点又は基準点との第１、第２の距離を求めるという簡素な処理で、合成パラメータを求めて、しわ画像を生成できるようになる。
【００１７】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記パラメータ演算部は、前記第１、第２の距離の比に応じて変化する前記合成パラメータを求めるようにしてもよい。
【００１８】
このようにすれば、第１、第２の距離の比の変化により、合成パラメータを変化させて、しわ画像を生成できるようになる。
【００１９】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、モデルオブジェクトのスケルトンが複数の骨及び複数の関節により構成される場合に、前記複数の関節のうちの所与の関節の前側に前側制御点が設定され、前記所与の関節の後ろ側に後ろ側制御点が設定され、前記制御点演算部は、モデルオブジェクトのモーションの変化によりその位置が変化する前記前側制御点の位置と前記後ろ側制御点の位置を求め、前記パラメータ演算部は、前記前側制御点に基づいて第１の合成パラメータを求め、前記後ろ側制御点に基づいて第２の合成パラメータを求め、前記画像生成部は、求められた前記第１の合成パラメータにより複数のしわ表現テクスチャを合成し、得られた合成テクスチャをモデルオブジェクトの前側面にマッピングすることで、モデルオブジェクトの前側面におけるしわ画像を生成し、求められた前記第２の合成パラメータにより複数のしわ表現テクスチャを合成し、得られた合成テクスチャをモデルオブジェクトの後ろ側面にマッピングすることで、モデルオブジェクトの後ろ側面におけるしわ画像を生成するようにしてもよい。
【００２０】
このようにすれば、モデルオブジェクトの前側面におけるしわの変化の仕方と、モデルオブジェクトの後ろ側面におけるしわの変化の仕方を異ならせることが可能になり、より多様でリアルなしわ画像の生成が可能になる。
【００２１】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記しわ表現テクスチャのテクセル値をフェッチするためのテクスチャ座標を設定するテクスチャ座標設定部を含み（テクスチャ座標設定部としてコンピュータを機能させ）、前記テクスチャ記憶部は、前記しわ表現テクスチャを、第１、第２、第３のテクスチャ座標でテクセル値がフェッチされるボリュームテクスチャとして記憶し、前記テクスチャ座標設定部は、前記合成パラメータに基づいて、ボリュームテクスチャの前記第３のテクスチャ座標を設定し、前記画像生成部は、前記第１、第２、第３のテクスチャ座標に基づいて、しわ表現テクスチャをボリュームテクスチャとしてモデルオブジェクトにマッピングする処理を行うようにしてもよい。
【００２２】
このようにすれば、ボリュームテクスチャ機能を有効活用して、合成テクスチャのマッピング処理が行われるため、処理負荷の軽減や処理の高速化を図れる。
【００２３】
また本発明は、画像を生成する画像生成システムであって、モデルオブジェクトの表面のしわを表現するためのテクスチャであって、そのテクスチャパターンが異なる複数のしわ表現テクスチャを記憶するテクスチャ記憶部と、前記しわ表現テクスチャのテクセル値をフェッチするためのテクスチャ座標を設定するテクスチャ座標設定部と、複数のしわ表現テクスチャの合成パラメータを求めるパラメータ演算部と、モデルオブジェクトのしわ画像を生成する画像生成部とを含み、前記テクスチャ記憶部は、前記しわ表現テクスチャを、第１、第２、第３のテクスチャ座標でテクセル値がフェッチされるボリュームテクスチャとして記憶し、前記テクスチャ座標設定部は、前記合成パラメータに基づいて、ボリュームテクスチャの前記第３のテクスチャ座標を設定し、前記画像生成部は、前記第１、第２、第３のテクスチャ座標に基づいて、しわ表現テクスチャをボリュームテクスチャとしてモデルオブジェクトにマッピングする処理を行う画像生成システムに関係する。また本発明は、上記各部としてコンピュータを機能させるプログラム、又は該プログラムを記憶したコンピュータ読み取り可能な情報記憶媒体に関係する。
【００２４】
本発明によれば、合成パラメータに基づいて複数のしわ表現テクスチャが合成され、得られた合成テクスチャがモデルオブジェクトにマッピングされる。またボリュームテクスチャの機能を有効活用して、合成テクスチャのマッピング処理が行われる。従って、処理負荷の軽減や処理の簡素化を実現しながら、リアルなしわ画像の生成が可能になる。
【発明を実施するための最良の形態】
【００２５】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【００２６】
１．構成
図１に本実施形態の画像生成システム（ゲームシステム）の機能ブロック図の例を示す。なお本実施形態の画像生成システムは図１の構成要素（各部）の一部を省略した構成としてもよい。
【００２７】
操作部１６０は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、ステアリング、アクセル、ブレーキ、或いはタッチパネル型ディスプレイなどにより実現できる。記憶部１７０は、処理部１００や通信部１９６などのワーク領域となるもので、その機能はＲＡＭ（ＶＲＡＭ）などにより実現できる。
【００２８】
情報記憶媒体１８０（コンピュータにより読み取り可能な媒体）は、プログラムやデータなどを格納するものであり、その機能は、光ディスク（ＣＤ、ＤＶＤ）、ハードディスク、或いはメモリ（ＲＯＭ等）などにより実現できる。処理部１００は、情報記憶媒体１８０に格納されるプログラム（データ）に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体１８０には、本実施形態の各部としてコンピュータ（操作部、処理部、記憶部、出力部を備える装置）を機能させるためのプログラム（各部の処理をコンピュータに実行させるためのプログラム）が記憶される。
【００２９】
表示部１９０は、本実施形態により生成された画像を出力するものであり、その機能は、ＣＲＴ、ＬＣＤ、タッチパネル型ディスプレイ、或いはＨＭＤ（ヘッドマウントディスプレイ）などにより実現できる。音出力部１９２は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
【００３０】
携帯型情報記憶装置１９４は、プレーヤの個人データやゲームのセーブデータなどが記憶されるものであり、この携帯型情報記憶装置１９４としては、メモリカードや携帯型ゲーム装置などがある。通信部１９６は外部（例えばホスト装置や他の画像生成システム）との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ＡＳＩＣなどのハードウェアや、プログラムなどにより実現できる。
【００３１】
なお本実施形態の各部としてコンピュータを機能させるためのプログラム（データ）は、ホスト装置（サーバー）が有する情報記憶媒体からネットワーク及び通信部１９６を介して情報記憶媒体１８０（あるいは記憶部１７０）に配信してもよい。このようなホスト装置（サーバー）による情報記憶媒体の使用も本発明の範囲内に含めることができる。
【００３２】
処理部１００（プロセッサ）は、操作部１６０からの操作データやプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの処理を行う。処理部１００は記憶部１７０（主記憶部１７２）をワーク領域として各種処理を行う。この処理部１００の機能は、各種プロセッサ（ＣＰＵ、ＤＳＰ等）、ＡＳＩＣ（ゲートアレイ等）などのハードウェアや、プログラムにより実現できる。
【００３３】
処理部１００は、ゲーム演算部１０８、オブジェクト空間設定部１１０、移動処理部１１２、モーション処理部１１３、仮想カメラ制御部１１４、制御点演算部１１６、パラメータ演算部１１８、テクスチャ座標設定部１１９、画像生成部１２０、音生成部１３０を含む。なおこれらの一部を省略する構成としてもよい。
【００３４】
ゲーム演算部１０８はゲーム演算処理を行う。ここでゲーム演算としては、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、移動体やマップなどのオブジェクトを配置する処理、オブジェクトを表示する処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。
【００３５】
オブジェクト空間設定部１１０は、モデルオブジェクト（車、人、ロボット等）、コース（道路）、マップ（地形）、建物、樹木、壁などの表示物を表す各種オブジェクト（ポリゴン、自由曲面又はサブディビジョンサーフェイスなどのプリミティブ面で構成されるオブジェクト）をオブジェクト空間に配置設定する処理を行う。即ちワールド座標系でのオブジェクトの位置や回転角度（向き、方向と同義）を決定し、その位置（Ｘ、Ｙ、Ｚ）にその回転角度（Ｘ、Ｙ、Ｚ軸回りでの回転角度）でオブジェクトを配置する。具体的には、記憶部１７０のモデルデータ記憶部１７６には、移動体（キャラクタ）等のモデルデータが記憶されている。そしてオブジェクト空間設定部１１０は、このモデルデータを用いてオブジェクト空間へのオブジェクトの設定（配置）処理を行う。
【００３６】
移動処理部１１２は、モデルオブジェクト（キャラクタ、ロボット、車又は戦車等の移動）を移動させるための演算を行う。即ち操作部１６０によりプレーヤが入力した操作データや、プログラム（移動アルゴリズム）や、各種データなどに基づいて、モデルオブジェクトをオブジェクト空間内で移動させる処理を行う。具体的には、モデルオブジェクトの移動情報（位置、回転角度、速度、或いは加速度）を、１フレーム（１／６０秒）毎に順次求めるシミュレーション処理を行う。なおフレームは、移動処理やモーション処理や画像生成処理を行う時間の単位である。
【００３７】
モーション処理部１１３は、モデルオブジェクト（キャラクタ）にモーション（アニメーション）を行わせるモーション処理（モーション再生、モーション生成）を行う。このモーション処理は、モデルオブジェクトのモーションを、モーションデータ記憶部１７９に記憶されているモーションデータに基づいて再生することなどで実現できる。
【００３８】
具体的にはモーションデータ記憶部１７９には、モデルオブジェクトのスケルトンを構成する各骨（モデルオブジェクトを構成するパーツオブジェクト、関節、モーション骨）の位置又は回転角度（親の骨に対する子の骨の３軸周りの回転角度）等を含むモーションデータが記憶されている。モーション処理部１１３は、このモーションデータをモーションデータ記憶部１７９から読み出し、読み出されたモーションデータに基づいてモデルオブジェクトのスケルトンを構成する各骨（パーツオブジェクト）を動かすことで（スケルトン形状を変形させることで）、モデルオブジェクトのモーションを再生する。
【００３９】
なお、モーションデータ記憶部１７９に記憶されるモーションデータは、現実世界の人にセンサをつけてモーションキャプチャを行うことで作成できるが、モーションデータを、物理シミュレーション（物理計算を利用したシミュレーション。擬似的な物理計算でもよい）やモーションブレンドなどによりリアルタイムに生成してもよい。また、少ないモーションデータ量でリアルなモーションを再生するために、インバース・キネマティクス等を用いてモーション再生を行ってもよい。
【００４０】
仮想カメラ制御部１１４は、オブジェクト空間内の所与（任意）の視点から見える画像を生成するための仮想カメラ（視点）の制御処理を行う。具体的には、仮想カメラの位置（Ｘ、Ｙ、Ｚ）又は回転角度（Ｘ、Ｙ、Ｚ軸回りでの回転角度）を制御する処理（視点位置、視線方向あるいは画角を制御する処理）を行う。
【００４１】
例えば仮想カメラにより車、キャラクタなどのモデルオブジェクト（移動体）を後方から撮影する場合には、モデルオブジェクトの位置又は回転の変化に仮想カメラが追従するように、仮想カメラの位置又は回転角度（仮想カメラの向き）を制御する。この場合には、移動処理部１１２で得られたモデルオブジェクトの位置、回転角度又は速度などの情報に基づいて、仮想カメラを制御できる。或いは、仮想カメラを、予め決められた回転角度で回転させたり、予め決められた移動経路で移動させる制御を行ってもよい。この場合には、仮想カメラの位置（移動経路）又は回転角度を特定するための仮想カメラデータに基づいて仮想カメラを制御する。
【００４２】
制御点演算部１１６は、しわ表現のための制御点の演算処理を行う。即ち本実施形態ではモデルオブジェクトに対して少なくとも１つの制御点が設定される。この制御点はモデルオブジェクトのスケルトンの関節そのものであってもよいし、関節から所与の距離だけ離れた位置に設定されて関節の動きに追従する点であってもよい。本実施形態では、モーション処理部１１３のモーション処理によりモデルオブジェクトのモーションがフレーム毎に変化する。そして制御点演算部１１６は、モデルオブジェクトのモーションの変化に連動してその位置が変化する制御点の位置を求める演算を行う。
【００４３】
例えば制御点演算部１１６は、モーション処理に使用される座標変換マトリクス（モーションマトリクス）を用いた座標変換により、制御点の位置を求める。例えば座標変換マトリクスを用いた座標変換により、制御点をローカル座標系からワールド座標系に変換し、ワールド座標系での制御点の位置を求める。或いは、モデルオブジェクトのスケルトンが複数の骨及び複数の関節により構成される場合に、座標変換マトリクスを用いた座標変換により、関節に対する制御点の位置（相対的な位置）を求める。また、関節の前側に前側制御点が設定され、関節の後ろ側に後ろ側制御点が設定される場合に、制御点演算部１１６は、モデルオブジェクトのモーションの変化によりその位置が変化する前側制御点の位置と後ろ側制御点の位置を求める。
【００４４】
パラメータ演算部１１８は、画像処理やゲーム処理に用いる各種のパラメータを演算する。例えば本実施形態ではテクスチャ記憶部１７８がしわ表現テクスチャを記憶する。具体的には、モデルオブジェクトの表面のしわを表現するためのテクスチャであって、そのテクスチャパターンが異なる複数のしわ表現テクスチャを記憶する。そしてパラメータ演算部１１８は、制御点に基づいて、複数のしわ表現テクスチャの合成パラメータを求める。
【００４５】
例えばパラメータ演算部１１８は、座標変換マトリクスを用いた座標変換により求められた制御点の位置に基づいて、合成パラメータを求める。具体的には、座標変換マトリクスを用いた座標変換により、制御点のワールド座標系での位置が求められた場合には、制御点のワールド座標系での位置に基づいて、合成パラメータを求める。或いは、関節に対する制御点の相対的な位置に基づいて、合成パラメータを求める。またモデルオブジェクトに対してしわ表現のための第１、第２の制御点が設定された場合には、これらの第１、第２の制御点に基づいて、合成パラメータを求める。具体的には、第１の制御点と他の制御点（関節）又は基準点（モデルオブジェクトの代表点）との第１の距離（第１の距離パラメータ）と、第２の制御点と他の制御点又は基準点との第２の距離（第２の距離パラメータ）を求め、求められた第１、第２の距離に基づいて合成パラメータを求める。例えば第１、第２の距離そのものに基づいて合成パラメータを求めたり、第１、第２の距離パラメータを引数とする関数の値に基づいて合成パラメータを求める。また、例えば第１、第２の距離の比に応じて変化する合成パラメータを求めることができる。或いは制御点演算部１１６が、前側制御点の位置と後ろ側制御点の位置を求めた場合には、パラメータ演算部１１８は、前側制御点に基づいて第１の合成パラメータを求め、後ろ側制御点に基づいて第２の合成パラメータを求める。なお制御点間を結ぶ第１、第２の直線のなす角度に基づいて合成パラメータを求めてもよい。
【００４６】
テクスチャ座標設定部（テクスチャ座標演算部）１１９は、テクスチャ座標の設定処理（演算処理）を行う。即ちしわ表現テクスチャのテクセル値をフェッチするためのテクスチャ座標の設定処理を行う。例えばテクスチャ記憶部１７８は、しわ表現テクスチャを、第１、第２、第３のテクスチャ座標（Ｕ、Ｖ、Ｗ座標）でテクセル値がフェッチされるボリュームテクスチャとして記憶する。別の言い方をすれば、しわ表現テクスチャをボリュームテクスチャの設定モードで記憶する。この場合にテクスチャ座標設定部１１９は、パラメータ演算部１１８で求められた合成パラメータに基づいて、ボリュームテクスチャの第３のテクスチャ座標（Ｗ座標）を設定する。なお第１、第２のテクスチャ座標については、モデルオブジェクトの頂点に設定されるＵ、Ｖ座標を用いることができる。
【００４７】
画像生成部１２０は、処理部１００で行われる種々の処理（ゲーム処理）の結果に基づいて描画処理を行い、これにより画像を生成し、表示部１９０に出力する。いわゆる３次元ゲーム画像を生成する場合には、まずモデル（オブジェクト）の各頂点の頂点データ（頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等）を含むモデルデータが入力され、入力されたモデルデータに含まれる頂点データに基づいて、頂点処理（頂点シェーダによるシェーディング）が行われる。なお頂点処理を行うに際して、必要に応じてポリゴンを再分割するための頂点生成処理（テッセレーション、曲面分割、ポリゴン分割）を行うようにしてもよい。
【００４８】
頂点処理では、頂点処理プログラム（頂点シェーダプログラム、第１のシェーダプログラム）に従って、頂点の移動処理や、座標変換（ワールド座標変換、カメラ座標変換）、クリッピング処理、あるいは透視変換等のジオメトリ処理が行われ、その処理結果に基づいて、オブジェクトを構成する頂点群について与えられた頂点データを変更（更新、調整）する。そして、頂点処理後の頂点データに基づいてラスタライズ（走査変換）が行われ、ポリゴン（プリミティブ）の面とピクセルとが対応づけられる。そしてラスタライズに続いて、画像を構成するピクセル（表示画面を構成するフラグメント）を描画するピクセル処理（ピクセルシェーダによるシェーディング、フラグメント処理）が行われる。
【００４９】
ピクセル処理では、ピクセル処理プログラム（ピクセルシェーダプログラム、第２のシェーダプログラム）に従って、テクスチャの読出し（テクスチャマッピング）、色データの設定／変更、半透明合成、アンチエイリアス等の各種処理を行って、画像を構成するピクセルの最終的な描画色を決定し、透視変換されたモデルの描画色を描画バッファ１７４（ピクセル単位で画像情報を記憶できるバッファ。ＶＲＡＭ、レンダリングターゲット）に出力（描画）する。即ち、ピクセル処理では、画像情報（色、法線、輝度、α値等）をピクセル単位で設定あるいは変更するパーピクセル処理を行う。これにより、オブジェクト空間内において仮想カメラ（所与の視点）から見える画像が生成される。
【００５０】
なお頂点処理やピクセル処理は、シェーディング言語によって記述されたシェーダプログラムによって、ポリゴン（プリミティブ）の描画処理をプログラム可能にするハードウェア、いわゆるプログラマブルシェーダ（頂点シェーダやピクセルシェーダ）により実現される。プログラマブルシェーダでは、頂点単位の処理やピクセル単位の処理がプログラム可能になることで描画処理内容の自由度が高く、従来のハードウェアによる固定的な描画処理に比べて表現力を大幅に向上させることができる。
【００５１】
画像生成部１２０は、オブジェクトを描画する際にジオメトリ処理、隠面消去処理、αブレンディング、テクスチャマッピング処理等を行う。
【００５２】
ジオメトリ処理では、オブジェクトに対して、座標変換、クリッピング処理、透視投影変換、或いは光源計算等の処理が行われる。そして、ジオメトリ処理後（透視投影変換後）のモデルデータ（オブジェクトの頂点の位置座標、テクスチャ座標、色データ、法線ベクトル、或いはα値等）は、記憶部１７０に保存される。
【００５３】
隠面消去処理としては、描画ピクセルのＺ値（奥行き情報）が格納されるＺバッファ（奥行きバッファ）を用いたＺバッファ法（奥行き比較法、Ｚテスト）による隠面消去処理がある。即ちオブジェクトのプリミティブに対応する描画ピクセルを描画する際に、Ｚバッファ（描画バッファのＺプレーン）に格納されるＺ値を参照する。そして参照されたＺバッファのＺ値と、プリミティブの描画ピクセルでのＺ値とを比較し、描画ピクセルでのＺ値が、仮想カメラから見て手前側となるＺ値（例えば小さなＺ値）である場合には、その描画ピクセルの描画処理を行うとともにＺバッファのＺ値を新たなＺ値に更新する。
【００５４】
αブレンディング（α合成）は、α値（Ａ値）に基づいて行う処理であり、通常αブレンディング、加算αブレンディング或いは減算αブレンディングなどがある。なおα値は、各ピクセル（テクセル、ドット）に関連づけて記憶できる情報であり、例えば色情報以外のプラスアルファの情報である。α値は、半透明度（透明度、不透明度と等価）情報、マスク情報、或いはバンプ情報などとして使用できる。
【００５５】
テクスチャマッピング（テクスチャフェッチ、テクスチャサンプリング）処理は、テクスチャ記憶部１７８に記憶されるテクスチャ（テクセル値）をオブジェクトにマッピングする処理である。具体的には、オブジェクト（プリミティブ面）の頂点等に設定（付与）されるテクスチャ座標等を用いてテクスチャ記憶部１７８からテクスチャ（色、α値などの表面プロパティ）を読み出す。そして、２次元の画像又はパターンであるテクスチャをオブジェクトにマッピングする。この場合に、ピクセルとテクセルとを対応づける処理やバイリニア補間（広義にはテクセル補間）などを行う。
【００５６】
そして本実施形態では画像生成部１２０が、パラメータ演算部１１８により求められた合成パラメータにより、複数のしわ表現テクスチャを合成し、得られた合成テクスチャをモデルオブジェクト（服、肌）にマッピングすることで、モデルオブジェクトのしわ画像（しわ表現画像）を生成する。例えばパラメータ演算部１１８が前側制御点用の第１の合成パラメータと後ろ側制御点用の第２の合成パラメータを求めた場合には、求められた第１の合成パラメータにより複数のしわ表現テクスチャを合成し、合成テクスチャをモデルオブジェクトの前側面にマッピングすることで、モデルオブジェクトの前側面におけるしわ画像を生成する。また求められた第２の合成パラメータにより複数のしわ表現テクスチャを合成し、得られた合成テクスチャをモデルオブジェクトの後ろ側面にマッピングすることで、モデルオブジェクトの後ろ側面におけるしわ画像を生成する。なお前側面用のしわ表現テクスチャと後ろ側面用のしわ表現テクスチャを、異なるパターンのテクスチャにしてもよい。またテクスチャ座標設定部１１９がボリュームテクスチャのための第１、第２、第３のテクスチャ座標を設定した場合には、画像生成部１２０は、第１、第２、第３のテクスチャ座標に基づいて、しわ表現テクスチャをボリュームテクスチャ（合成テクスチャ）としてモデルオブジェクトにマッピングする処理を行う。
【００５７】
音生成部１３０は、処理部１００で行われる種々の処理の結果に基づいて音処理を行い、ＢＧＭ、効果音、又は音声などのゲーム音を生成し、音出力部１９２に出力する。
【００５８】
なお、本実施形態の画像生成システムは、１人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、１つの端末を用いて生成してもよいし、ネットワーク（伝送ライン、通信回線）などで接続された複数の端末（ゲーム機、携帯電話）を用いて分散処理により生成してもよい。
【００５９】
２．本実施形態の手法
２．１  モーション処理
本実施形態では図２に示すように、モデルオブジェクトＭＯＢ（キャラクタ）が、複数のパーツオブジェクト（腰１２、胸１４、首１６、頭１８、右上腕２０、右前腕２２、右手２４、左上腕２６、左前腕２８、左手３０、右股３２、右すね３４、右足３６、左股３８、左すね４０、左足４２）により構成されている。そして、これらのパーツオブジェクト（部位）の位置や回転角度（方向）は、スケルトンモデルを構成する骨Ｂ０〜Ｂ１９の位置（関節Ｊ０〜Ｊ１５の位置）や回転角度（親の骨に対する子の骨の相対的な回転角度）により特定される。なお、これらの骨、関節は仮想的なものであり、現実に表示されるオブジェクトではない。
【００６０】
本実施形態では、モデルオブジェクトＭＯＢのスケルトンを構成する骨（モーション骨、関節、パーツオブジェクト）が親子（階層）構造を有している。例えば、手２４、３０の骨Ｂ７、Ｂ１１の親は前腕２２、２８の骨Ｂ６、Ｂ１０となり、Ｂ６、Ｂ１０の親は上腕２０、２６の骨Ｂ５、Ｂ９となる。また、Ｂ５、Ｂ９の親は胸１４の骨Ｂ１となり、Ｂ１の親は腰１２の骨Ｂ０となる。また、足３６、４２の骨Ｂ１５、Ｂ１９の親はすね３４、４０の骨Ｂ１４、Ｂ１８となり、Ｂ１４、Ｂ１８の親は股３２、３８の骨Ｂ１３、Ｂ１７となり、Ｂ１３、Ｂ１７の親は腰１２の骨Ｂ１２、Ｂ１６となる。
【００６１】
モーションデータ記憶部１７９には、これらの骨（パーツオブジェクト、関節）の位置、回転角度が、モーションデータとして記憶されている。なお骨の回転角度だけをモーションデータに含ませて、骨の位置（関節の位置）についてはモデルオブジェクトのモデルデータの中に含ませてもよい。
【００６２】
例えば、歩きモーションが、Ｍ０、Ｍ１、Ｍ２・・・・ＭＮという基準モーション（各フレームでのモーション）により構成されているとする。するとこれらの各基準モーションＭ０、Ｍ１、Ｍ２・・・・ＭＮでの各骨の位置又は回転角度が、モーションデータとして予め記憶されている。そして、例えば基準モーションＭ０の各パーツオブジェクトの位置、回転角度を読み出し、次に基準モーションＭ１の各パーツオブジェクトの位置、回転角度を読み出すというように、基準モーションのモーションデータを時間経過に伴い順次読み出すことで、モーション処理（モーション再生）が実現される。
【００６３】
なお、モーションデータ記憶部１７９に記憶するモーションデータは、一般的には、モーションキャプチャにより取得したり、デザイナが作成する。またモーションデータは、親の骨の位置、回転角度に対する子の骨の相対的な位置、相対的な回転角度（３軸周りの回転角度）で表される。具体的には図３に示すように、親の骨ＢＭＰに対する子の骨ＢＭＣの、Ｘ軸、Ｙ軸、Ｚ軸回りの回転角度α、β、γが、モーションデータとして記憶される。
【００６４】
また、図２においてＲＰはモデルオブジェクトＭＯＢの代表点であり、このＲＰは例えば腰（Ｊ０）の真下の位置（高さ零の位置）に設定されている。また図２の骨Ｂ１〜Ｂ１９以外にも、モーション骨によるモデルオブジェクトの変形を補助する補助骨を設けてもよい。
【００６５】
２．２  しわ表現テクスチャの合成によるしわ画像の生成
本実施形態では図４に示すように、モデルオブジェクト（キャラクタ）の表面（衣服、肌等）のしわ（表面がたるんで、細かに縮み、筋目ができたもの）を表現するための複数のしわ表現テクスチャＴＥＸ１、ＴＥＸ２を用意する。これらのしわ表現テクスチャＴＥＸ１、ＴＥＸ２は、そのテクスチャパターンが異なっている。本実施形態では、パラメータ演算部１１８により求められた合成パラメータによりしわ表現テクスチャＴＥＸ１、ＴＥＸ２を合成し、得られた合成テクスチャＴＥＸ１２をモデルオブジェクトにマッピングすることで、モデルオブジェクトのしわ画像を生成する。例えば合成パラメータをＡとすると、合成テクスチャはＴＥＸ１２＝Ａ×ＴＥＸ１＋（１−Ａ）×ＴＥＸ２と表すことができる。なお合成テクスチャの生成手法は、このような式で表される手法に限定されない。例えばＴＥＸ１の合成率（ブレンド率）とＴＥＸ２の合成率（ブレンド率）を独立に制御するなどの種々の変形実施が可能である。
【００６６】
本実施形態では、しわ表現のための少なくとも１つの制御点がモデルオブジェクトに設定される。例えば図４では、モデルオブジェクトの右肩付近（関節Ｊ４）に制御点Ｃ１が設定され、左肩付近に制御点Ｃ２（関節Ｊ７）が設定される。また左腰付近に制御点Ｃ３が設定され、右腰付近に制御点Ｃ４が設定される。
【００６７】
そして本実施形態では、制御点Ｃ１〜Ｃ４に基づいて、しわ表現テクスチャＴＥＸ１、ＴＥＸ２の合成パラメータＡを求める。例えばモーション処理に使用される座標変換マトリクスを用いた座標変換により、制御点Ｃ１〜Ｃ４の位置（例えばワールド座標系での位置）を求め、求められた位置に基づいて、合成パラメータＡを求める。
【００６８】
なお、各骨の座標変換マトリクスは、スケルトンを構成する各骨（各パーツオブジェクト）の回転マトリクスと平行移動ベクトルのマトリクスにより得ることができる。ここで回転マトリクス（行列）は、例えば図３で説明したＸ軸、Ｙ軸、Ｚ軸回りでの回転角度α、β、γ（ロール角）などを用いてその成分が表されるマトリクスである。また平行移動ベクトルのマトリクスは、例えば各骨の位置を表すためのマトリクスである。これらの回転マトリクスと平行移動ベクトルのマトリクスにより得られる座標変換マトリクスを用いることで、各骨に追従するパーツオブジェクトの頂点ローカル座標を、ワールド座標に変換することができる。
【００６９】
図４では、しわ表現のための制御点Ｃ１、Ｃ２（第１、第２の制御点）が設定され、これらの制御点Ｃ１、Ｃ２の位置に基づいて、合成パラメータＡが求められる。即ち制御点Ｃ１（第１の制御点）と他の制御点Ｃ３（或いは基準点）との距離Ｌ１（第１の距離）と、制御点Ｃ２（第２の制御点）と他の制御点Ｃ４（或いは基準点）との距離Ｌ２（第２の距離）が求められる。そして求められた距離Ｌ１、Ｌ２に基づいて合成パラメータＡが求められる。例えばＦ（Ｌ１、Ｌ２）を、Ｌ１、Ｌ２を引数とする関数とした場合に、合成パラメータはＡ＝Ｆ（Ｌ１、Ｌ２）と表すことができる。このＡ＝Ｆ（Ｌ１、Ｌ２）により、合成テクスチャＴＥＸ１２は、例えばＴＥＸ１２＝Ａ×ＴＥＸ１＋（１−Ａ）×ＴＥＸ２などの式により求めることができる。
【００７０】
例えば図５（Ａ）（Ｂ）では、モデルオブジェクトのモーションの変化により、制御点Ｃ１、Ｃ２等の位置が変化している。
【００７１】
そして図５（Ａ）では、制御点Ｃ１、Ｃ３間の距離Ｌ１の方が、制御点Ｃ２、Ｃ４間の距離Ｌ２よりも短くなっている。この場合には例えば合成パラメータＡを大きくして、しわ表現テクスチャＴＥＸ１の合成率（ブレンド率）の方がしわ表現テクスチャＴＥＸ２の合成率よりも大きくなるようにする。こうすれば、しわ表現テクスチャＴＥＸ２に比べて、しわ表現テクスチャＴＥＸ１のしわの方が強く表現されたしわ画像が生成されるようになる。
【００７２】
また図５（Ｂ）では、制御点Ｃ２、Ｃ４間の距離Ｌ２の方が、制御点Ｃ１、Ｃ３間の距離Ｌ１よりも短くなっている。この場合には例えば合成パラメータＡを小さくして、しわ表現テクスチャＴＥＸ２の合成率の方がしわ表現テクスチャＴＥＸ１の合成率よりも大きくなるようにする。こうすれば、しわ表現テクスチャＴＥＸ１に比べて、しわ表現テクスチャＴＥＸ２のしわの方が強く表現されたしわ画像が生成されるようになる。
【００７３】
本実施形態では制御点Ｃ１、Ｃ２等の位置が、モデルオブジェクトのモーション変化に連動して変化し、制御点間の距離Ｌ１、Ｌ２も変化する。例えばフィールド上を走るモデルオブジェクト（キャラクタ）の右肩が前に行き、左肩が後ろに行くと、図５（Ａ）に示すように距離Ｌ１が短くなり、距離Ｌ２が長くなる。すると合成パラメータＡが大きくなり（ＴＥＸ１の合成率が大きくなり）、しわ表現テクスチャＴＥＸ１の方のしわが強く表現されたしわ画像が生成される。その後、フィールド上を走るモデルオブジェクトのモーションが変化し、モデルオブジェクトの左肩が前に行き、右肩が後ろに行くと、図５（Ｂ）に示すように距離Ｌ２が短くなり、距離Ｌ１が長くなる。すると合成パラメータＡが小さくなり（ＴＥＸ２の合成率が小さくなり）、しわ表現テクスチャＴＥＸ２の方のしわが強く表現されたしわ画像が生成される。
【００７４】
このように、モデルオブジェクトの右肩と左肩が交互に前に出るというようにモーションが変化すると、それに連動して合成パラメータＡが変化し、しわ表現テクスチャＴＥＸ１、ＴＥＸ２の影響度も交互に強くなり、しわのアニメーション表現が行われる。従って、あたかもモデルオブジェクトのモーション変化に連動して、モデルオブジェクトの服のしわが変化しているかのように見える画像を生成できる。従って、リアルなしわ表現を簡素な処理で実現できる。
【００７５】
図６にしわ表現テクスチャＴＥＸ１の例を示し、図７にしわ表現テクスチャＴＥＸ２の例を示す。図６のしわ表現テクスチャＴＥＸ１は、例えば図５（Ａ）のように距離Ｌ１が短い場合のしわ画像を表すテクスチャである。図７のしわ表現テクスチャＴＥＸ２は、例えば図５（Ｂ）のように距離Ｌ２が短い場合のしわ画像を表すテクスチャである。このようにテクスチャパターンが異なるテクスチャＴＥＸ１、ＴＥＸ２の画像が、モデルオブジェクトの服の表面に交互に表れることで、しわのアニメーション表現が実現される。なお、本実施形態において用意するしわ表現テクスチャは２つに限定されず、３つ以上であってもよく、これらの３つ以上のしわ表現テクスチャを合成してマッピングしてもよい。
【００７６】
図８に本実施形態により生成されるゲーム画像の例を示し、図９にしわ部分の拡大図を示す。図８、図９ではサッカー選手を表すモデルオブジェクトのシャツの表面のしわが表現されている。例えば図８のようにモデルオブジェクトの右肩が前に行き、左肩が後ろに行くと、図５（Ａ）に示すように距離Ｌ１が短くなり、距離Ｌ２が長くなる。すると合成パラメータＡが大きくなり、図６のしわ表現テクスチャＴＥＸ１のしわの方が強く表現されたしわ画像が生成される。その後、モデルオブジェクトの左肩が前に行き、右肩が後ろに行くと、図５（Ｂ）に示すように距離Ｌ１が短くなり、距離Ｌ２が長くなり、図７のしわ表現テクスチャＴＥＸ２のしわの方が強く表現されたしわ画像が生成される。従って、モデルオブジェクトの走りモーションに連動してしわパターンが変化する様子を表現できる。
【００７７】
なお合成パラメータＡについては種々の演算手法が可能である。例えば図１０では、合成パラメータＡは、距離Ｌ１、Ｌ２を引数とする関数Ｆ（Ｌ１、Ｌ２）で表されている。具体的には合成パラメータＡは、距離Ｌ１、Ｌ２の比に応じて変化するパラメータとなっている。即ち合成パラメータＡは、Ｈ１（Ｌ１）／｛Ｈ１（Ｌ１）＋Ｈ２（Ｌ２）｝を引数とする関数Ｇで表すことができる。ここで、関数Ｈ１はＬ１を引数とする関数であり、関数Ｈ２はＬ２を引数とする関数である。例えば合成パラメータは、Ａ＝Ｌ１／（Ｌ１＋Ｌ２）と表すことができる。
【００７８】
具体的には、距離Ｌ１＝Ｌ２の場合には、合成パラメータはＡ＝０．５になる。従って、この場合には図６のしわ表現テクスチャＴＥＸ１と図７のしわ表現テクスチャＴＥＸ２が１対１の割合で合成された合成テクスチャＴＥＸ１２が生成されて、モデルオブジェクトの前側面にマッピングされる。
【００７９】
またＬ１ｍａｘ、Ｌ１ｍｉｎを距離Ｌ１の最大値、最小値とし、Ｌ２ｍａｘ、Ｌ２ｍｉｎを距離Ｌ２の最大値、最小値としたとする。すると、Ｌ１＝Ｌ１ｍｉｎ、Ｌ２＝Ｌ２ｍａｘの場合に、合成パラメータはＡ＝１．０になる。従って、図６のしわ表現テクスチャＴＥＸ１が合成テクスチャＴＥＸ１２として、モデルオブジェクトにマッピングされるようになる。またＬ１＝Ｌ１ｍａｘ、Ｌ２＝Ｌ２ｍｉｎの場合に、合成パラメータはＡ＝０になる。従って、図７のしわ表現テクスチャＴＥＸ２が合成テクスチャＴＥＸ１２として、モデルオブジェクトにマッピングされるようになる。なお合成パラメータＡの演算手法は図１０に限定されず、種々の変形実施が可能である。
【００８０】
また図４ではモデルオブジェクトに対して４つの制御点Ｃ１〜Ｃ４が設定されているが、図１１（Ａ）に示すように２つの制御点Ｃ１、Ｃ２だけを設定したり、１つの制御点だけを設定するようにしてもよい。図１１（Ａ）では制御点Ｃ１と基準点ＢＰとの距離がＬ１になり、制御点Ｃ２と基準点ＢＰとの距離がＬ２になる。この基準点ＢＰは、制御点Ｃ１についての距離Ｌ１や、制御点Ｃ２についての距離Ｌ２を設定するための基準となる点である。この基準点ＢＰとしては、図２の関節Ｊ１（或いはＪ０）の点や、関節Ｊ１から所与の距離だけ離れた点（例えばキャラクタのおへそ）などを用いることができる。
【００８１】
また基準点ＢＰの位置に、しわ表現のための制御点Ｃ３を設定し、制御点Ｃ１、Ｃ３間の距離をＬ１とし、制御点Ｃ２、Ｃ３間の距離をＬ２として、距離Ｌ１、Ｌ２により合成パラメータＡを求めてもよい。
【００８２】
また、距離Ｌ１、Ｌ２ではなく、制御点Ｃ１と基準点ＢＰ（又は他の制御点）を結ぶ直線ＳＬ１と、制御点Ｃ２と基準点ＢＰ（又は他の制御点）を結ぶ直線ＳＬ２とのなす角度θに基づいて、合成パラメータＡを求めてもよい。
【００８３】
またモデルオブジェクトのスケルトンが複数の骨及び複数の関節により構成される場合に、座標変換マトリクスを用いた座標変換により、複数の関節のうちの所与の関節に対する制御点の相対的な位置を求め、この相対的な位置に基づいて、合成パラメータＡを求めてもよい。
【００８４】
例えば図１１（Ｂ）において、関節Ｊ３は、図２の頭１８のパーツオブジェクトの関節であり、親の骨Ｂ２に対する、子の骨Ｂ３のなす角度（図３のα、β、γ）を変化させることで、頭１８の動き（傾き）が制御される。そして図１１（Ｃ）の骨Ｂ２０、Ｂ２１は、眉毛５１、５２の動きを制御するための骨である。即ち親の骨Ｂ２に対する子の骨Ｂ２０、Ｂ２１のなす角度（図３のα、β、γ）を制御することで、眉毛５１、５２の動きが制御される。
【００８５】
そして図１１（Ｂ）では、眉毛５１、５２の位置（例えば眉毛の関節位置）に制御点ＣＢ１、ＣＢ２が設定されている。そして、例えば骨Ｂ２に対する骨Ｂ２０のなす角度（モーションデータ）により求められる座標変換マトリクスを用いた座標変換により、関節Ｊ３に対する制御点ＣＢ１の相対的な位置が求められる。即ち関節Ｊ３を原点とするローカル座標系での制御点ＣＢ１の位置が求められる。また骨Ｂ２に対する骨Ｂ２０のなす角度（モーションデータ）により求められる座標変換マトリクスを用いた座標変換により、関節Ｊ３に対する制御点ＣＢ２の相対的な位置が求められる。即ち関節Ｊ３を原点とするローカル座標系での制御点ＣＢ２の位置が求められる。
【００８６】
そして、求められた制御点ＣＢ１、ＣＢ２の相対的な位置に基づいて、しわ表現テクスチャの合成パラメータＡが求められる。例えば、関節Ｊ３を原点とするローカル座標系での制御点ＣＢ１、ＣＢ２のＸ座標、Ｙ座標又はＺ座標の少なくとも１つに基づいて、合成パラメータＡが求められる。
【００８７】
図１２に図１１（Ｂ）の手法で生成される画像の例を示す。図１１（Ｂ）の手法によれば、図１２のモデルオブジェクト（キャラクタ）の顔の表情の変化により眉毛の位置が動くと、それに伴い眉毛の周りのしわ画像も変化するようになる。即ち図８、図９のシャツのしわと同様の皮膚のしわが、眉毛の周りに表れ、そのしわの画像が、眉毛の位置の変化（骨Ｂ２０、Ｂ２１の変化）に連動して変化するようになる。これにより、顔の表情が更にリアルに表現されるようになり、プレーヤの仮想現実感を向上できる。
【００８８】
２．３  前側、後ろ側制御点
本実施形態では、モデルオブジェクトの前側（正面側）と後ろ側（背面側）に制御点を設定し、これらの制御点により第１、第２の合成パラメータを独立に制御してもよい。
【００８９】
例えば図１３（Ａ）（Ｂ）では、モデルオブジェクトのスケルトンを構成する複数の関節のうちの関節Ｊ３（右肩の関節）の前側に、前側制御点ＣＦ１が設定され、関節Ｊ３の後ろ側に後ろ側制御点ＣＢ１が設定される。即ち関節Ｊ３に対して前側にオフセットした位置に制御点ＣＦ１が設定（配置）され、後ろ側にオフセットした位置に制御点ＣＢ１が設定（配置）される。
【００９０】
また図１３（Ｃ）（Ｄ）では、関節Ｊ７（左肩の関節）の前側に、前側制御点ＣＦ２が設定され、関節Ｊ７の後ろ側に後ろ側制御点ＣＢ２が設定される。即ち関節Ｊ７に対して前側にオフセットした位置に制御点ＣＦ２が設定（配置）され、後ろ側にオフセットした位置に制御点ＣＢ２が設定（配置）される。
【００９１】
そして制御点演算部１１６は、モデルオブジェクトのモーションの変化によりその位置が変化する前側制御点ＣＦ１、ＣＦ２の位置と、後ろ側制御点ＣＢ１、ＣＢ２の位置を求める。
【００９２】
またパラメータ演算部１１８は、図１４（Ａ）に示すように前側制御点ＣＦ１、ＣＦ２等に基づいて第１の合成パラメータＡＦを求める。また図１４（Ｂ）に示すように、後ろ側制御点ＣＢ１、ＣＢ２等に基づいて第２の合成パラメータＡＢを求める。
【００９３】
そして画像生成部１２０は、求められた合成パラメータＡＦによりしわ表現テクスチャＴＥＸ１、ＴＥＸ２を合成し、得られた合成テクスチャＴＥＸＦ１２をモデルオブジェクトの前側面にマッピングすることで、モデルオブジェクトの前側面におけるしわ画像を生成する。また、求められた合成パラメータＡＢによりしわ表現テクスチャＴＥＸ１、ＴＥＸ２を合成し、得られた合成テクスチャＴＥＸＢ１２をモデルオブジェクトの後ろ側面にマッピングすることで、モデルオブジェクトの後ろ側面におけるしわ画像を生成する。
【００９４】
例えば図１４（Ａ）では、前側制御点ＣＦ１、ＣＦ３間の距離ＬＦ１と、前側制御点ＣＦ２、ＣＦ４間の距離ＬＦ２が求められる。そしてこれらの距離ＬＦ１、ＬＦ２を関数とする合成パラメータＡＦ＝Ｆ（ＬＦ１、ＬＦ２）が求められる。この合成パラメータＡＦは例えば距離ＬＦ１、ＬＦ２の比に応じて変化するパラメータである。なお図１１（Ａ）の手法と同様に、前側制御点ＣＦ１と基準点ＢＰとの距離をＬＦ１とし、前側制御点ＣＦ２と基準点ＢＰとの距離をＬＦ２としてもよい。
【００９５】
また図１４（Ｂ）では、後ろ側制御点ＣＢ１、ＣＢ３間の距離ＬＢ１と、後ろ側制御点ＣＢ２、ＣＢ４間の距離ＬＢ２が求められる。そしてこれらの距離ＬＢ１、ＬＢ２を関数とする合成パラメータＡＢ＝Ｆ（ＬＢ１、ＬＢ２）が求められる。この合成パラメータＡＢは例えば距離ＬＢ１、ＬＢ２の比に応じて変化するパラメータである。なお図１１（Ａ）の手法と同様に、後ろ側制御点ＣＢ１と基準点ＢＰとの距離をＬＢ１とし、後ろ側制御点ＣＢ２と基準点ＢＰとの距離をＬＢ２としてもよい。
【００９６】
図１４（Ａ）の合成パラメータＡＦに基づき得られた合成テクスチャＴＥＸＦ１２を、モデルオブジェクトの前側面にマッピングすると共に、図１４（Ｂ）の合成パラメータＡＢに基づき得られた合成テクスチャＴＥＸＢ１２を、モデルオブジェクトの後ろ側面にマッピングすれば、モデルオブジェクトの前側面と後ろ側面とで、生成されるしわ画像が異なったものになり、よりリアルな画像を生成できる。
【００９７】
例えば図８のようにモデルオブジェクトの右肩が前に出た場合、モデルオブジェクトの前側面においては、右肩の前側制御点ＣＦ１と左腰の前側制御点ＣＦ３の距離ＬＦ１は短くなり、左肩の前側制御点ＣＦ２と右腰の前側制御点ＣＦ４の距離ＬＦ２は長くなる。従って、モデルオブジェクトの前側面では、しわ表現テクスチャＴＥＸ１が強く表現されたしわ画像が生成されるようになる。一方、モデルオブジェクトの後ろ側面においては、右肩の後ろ側制御点ＣＢ１と左腰の後ろ側制御点ＣＢ３の距離ＬＢ１は長くなり、左肩の後ろ制御点ＣＢ２と右腰の後ろ側制御点ＣＢ４の間の距離ＬＢ２は短くなる。従って、モデルオブジェクトの後ろ側面では、しわ表現テクスチャＴＥＸ２が強く表現されたしわ画像が生成される。
【００９８】
この結果、モデルオブジェクトの前側面と後ろ側面とで、生成されるしわ画像が異なるようになる。従って、よりリアルな画像を生成でき、プレーヤの仮想現実感を更に向上できる。
【００９９】
２．４  ボリュームテクスチャ
画像生成システム（ゲーム装置）においては、ボリュームテクスチャ（３次元テクスチャ）と呼ばれるテクスチャマッピング機能がサポートされている場合がある。ここでボリュームテクスチャとは、ポリゴンやラインなどの２次元のプリミティブの描画に使用できるテクセルの３次元の集まりである。ボリュームテクスチャ（立体テクスチャ）で処理されるプリミティブの各頂点には、３要素のテクスチャ座標（Ｕ、Ｖ、Ｗ）が必要になる。このボリュームテクスチャをマッピングしてプリミティブを描画すると、各プリミティブのピクセルには、従来の２次元テクスチャの場合と同じような規則に従って、ボリュームテクスチャのテクセル値（色値）が設定される。このボリュームテクスチャは、フォグや爆発などの特殊効果を表現するために用意されたものである。このボリュームテクスチャは、幅×高さの２次元サーフェスがスタックされて、幅×高さ×奥行きのボリュームを構成するテクスチャと考えることもできる。なお、ボリュームテクスチャはミップレベルを持つことができ、各ミップレベルの大きさは、直前のミップレベルの半分の大きさにカットされる。
【０１００】
ボリュームテクスチャのテクセル値を参照するためには、図１５に示すように３つのテクスチャ座標Ｕ、Ｖ、Ｗ（第１、第２、第３のテクスチャ座標）が必要になる。即ちテクスチャ座標設定部１１９は、しわ表現テクスチャのテクセル値をフェッチするためのテクスチャ座標Ｕ、Ｖ、Ｗを設定する。
【０１０１】
具体的には、各頂点に対して、３つのテクスチャ座標Ｕ、Ｖ、Ｗを有するカスタム頂点型を指定して、頂点バッファを作成し、頂点のデータを設定する。そして、ポリゴンなどのプリミティブを描画する前に現在のテクスチャをボリュームテクスチャに設定して、プリミティブを描画する。なお、テクスチャ座標Ｕ、Ｖは、通常の２次元テクスチャのテクセル値をフェッチ（サンプリング）するためのテクスチャ座標に相当する。
【０１０２】
本実施形態では、しわ表現テクスチャＴＥＸ１、ＴＥＸ２の合成パラメータＡに基づいて、ボリュームテクスチャの第３のテクスチャ座標Ｗを設定する。例えば合成パラメータＡそのものをテクスチャ座標Ｗに設定したり、合成パラメータＡから得られるパラメータをテクスチャ座標Ｗに設定する。そしてテクスチャ座標Ｕ、Ｖ、Ｗに基づいて、しわ表現テクスチャをボリュームテクスチャとしてモデルオブジェクトにマッピングする処理を行う。このようにすれば図１５に示すように、テクスチャＴＥＸ１、ＴＥＸ２を合成した合成テクスチャＴＥＸ１２がモデルオブジェクトにマッピングされるようになる。
【０１０３】
例えば図１５では、テクスチャ座標Ｗが大きいほどテクスチャＴＥＸ１の合成率（ブレンド率）が大きくなり、テクスチャ座標Ｗが小さいほどテクスチャＴＥＸ２の合成率が大きくなるように、合成テクスチャＴＥＸ１２が生成される。即ちテクスチャ座標Ｕ、Ｖで指定されるテクスチャＴＥＸ１、ＴＥＸの各テクセル値が、テクスチャ座標Ｗで決まる合成率（ブレンド率）で合成（テクセル補間）されて、プリミティブのピクセルに描画されるようになる。
【０１０４】
このようなボリュームテクスチャ機能を利用して、合成テクスチャＴＥＸ１２を得るようにすれば、合成テクスチャＴＥＸ１２を生成するためのプログラム処理を省略し、画像生成システムのハードウェアが有するボリュームテクスチャ機能を有効活用して、合成テクスチャＴＥＸ１２をマッピングできるようになる。即ちテクスチャ座標Ｕ、Ｖ、Ｗと、しわ表現テクスチャＴＥＸ１、ＴＥＸ２を指定した１回のテクスチャマッピングで、合成テクスチャＴＥＸ１２をモデルオブジェクトにマッピングして、しわ画像を生成できる。従って、処理負荷の軽減や処理の高速化を図れる。
【０１０５】
なお図１５のようにボリュームテクスチャを用いてしわ表現のための合成テクスチャＴＥＸ１２をモデルオブジェクトにマッピングする手法では、制御点に基づき合成パラメータを求めてもよいが、それ以外の要素に基づいて合成パラメータを求めるようにしてもよい。例えばモーションデータ（骨のなす角度、座標変換マトリクス）に基づいて、直接に合成パラメータを求め、求められた合成パラメータに基づいてテクスチャ座標Ｗを設定し、得られた合成テクスチャをモデルオブジェクトにマッピングしてもよい。
【０１０６】
２．５  詳細な処理例
次に本実施形態の詳細な処理例を図１６のフローチャートを用いて説明する。
【０１０７】
まずフレーム（１／６０秒）の更新タイミングか否かを判断する（ステップＳ１）。そしてフレームの更新タイミングである場合には、モデルオブジェクトの移動処理を行う（ステップＳ２）。即ちモデルオブジェクトの速度、加速度等に基づいてモデルオブジェクト（代表点）の位置、方向を更新する。
【０１０８】
次に、モーションデータに基づいて、モデルオブジェクトのモーション処理のための座標変換マトリクス（モーションマトリクス）を求める（ステップＳ３）。即ち親の骨に対する子の骨の回転角度などを含むモーションデータに基づいて、座標変換マトリクス（行列）を求める。そして、各関節の座標変換マトリクスに基づいて、各制御点をワールド座標系に座標変換する（ステップＳ４）。例えば図４の制御点Ｃ１、Ｃ２、Ｃ３、Ｃ４をワールド座標系に座標変換し、ワールド座標系での位置を求める。或いは図１３（Ａ）（Ｂ）（Ｃ）（Ｄ）の制御点ＣＦ１、ＣＢ１、ＣＦ２、ＣＢ２を、例えば関節Ｊ４、Ｊ７についての座標変換マトリクスにより座標変換して、ワールド座標系での位置を求める。
【０１０９】
次に制御点間の距離Ｌ１、Ｌ２を求める（ステップＳ５）。そして、求められた距離Ｌ１、Ｌ２に基づき、図１５で説明したボリュームテクスチャのテクスチャ座標Ｗを求める（ステップＳ６）。例えばＷ＝Ｌ１／（Ｌ１＋Ｌ２）というように、距離Ｌ１、Ｌ２の比に応じた値としてＷを求める。
【０１１０】
次に、モデルオブジェクトの各頂点のＵ、Ｖ座標をボリュームテクスチャの第１、第２のテクスチャ座標に設定し、Ｗをボリュームテクスチャの第３のテクスチャ座標に設定する（ステップＳ７）。そしてテクスチャ座標（Ｕ、Ｖ、Ｗ）に基づいて、図６、図７のしわ表現テクスチャをボリュームテクスチャとしてモデルオブジェクトにマッピングして、モデルオブジェクトのプリミティブを描画する（ステップＳ８）。
【０１１１】
３．ハードウェア構成
図１７に本実施形態を実現できるハードウェア構成の例を示す。メインプロセッサ９００は、ＤＶＤ９８２（情報記憶媒体。ＣＤでもよい。）に格納されたプログラム、通信インターフェース９９０を介してダウンロードされたプログラム、或いはＲＯＭ９５０に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などを実行する。コプロセッサ９０２は、メインプロセッサ９００の処理を補助するものであり、マトリクス演算（ベクトル演算）を高速に実行する。例えばオブジェクトを移動させたり動作（モーション）させる物理シミュレーションに、マトリクス演算処理が必要な場合には、メインプロセッサ９００上で動作するプログラムが、その処理をコプロセッサ９０２に指示（依頼）する。
【０１１２】
ジオメトリプロセッサ９０４は、メインプロセッサ９００上で動作するプログラムからの指示に基づいて、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、マトリクス演算を高速に実行する。データ伸張プロセッサ９０６は、圧縮された画像データや音データのデコード処理を行ったり、メインプロセッサ９００のデコード処理をアクセレートする。これにより、オープニング画面やゲーム画面において、ＭＰＥＧ方式等で圧縮された動画像を表示できる。
【０１１３】
描画プロセッサ９１０は、ポリゴンや曲面などのプリミティブ面で構成されるオブジェクトの描画（レンダリング）処理を実行する。オブジェクトの描画の際には、メインプロセッサ９００は、ＤＭＡコントローラ９７０を利用して、描画データを描画プロセッサ９１０に渡すと共に、必要であればテクスチャ記憶部９２４にテクスチャを転送する。すると描画プロセッサ９１０は、描画データやテクスチャに基づいて、Ｚバッファなどを利用した隠面消去を行いながら、オブジェクトをフレームバッファ９２２に描画する。また描画プロセッサ９１０は、αブレンディング（半透明処理）、デプスキューイング、ミップマッピング、フォグ処理、バイリニア・フィルタリング、トライリニア・フィルタリング、アンチエイリアシング、シェーディング処理なども行う。頂点シェーダやピクセルシェーダなどのプログラマブルシェーダが実装されている場合には、シェーダプログラムに従って、頂点データの作成・変更（更新）やピクセル（あるいはフラグメント）の描画色の決定を行う。１フレーム分の画像がフレームバッファ９２２に書き込まれるとその画像はディスプレイ９１２に表示される。
【０１１４】
サウンドプロセッサ９３０は、多チャンネルのＡＤＰＣＭ音源などを内蔵し、ＢＧＭ、効果音、音声などのゲーム音を生成し、スピーカ９３２を介して出力する。ゲームコントローラ９４２やメモリカード９４４からのデータはシリアルインターフェース９４０を介して入力される。
【０１１５】
ＲＯＭ９５０にはシステムプログラムなどが格納される。業務用ゲームシステムの場合にはＲＯＭ９５０が情報記憶媒体として機能し、ＲＯＭ９５０に各種プログラムが格納される。なおＲＯＭ９５０の代わりにハードディスクを利用してもよい。ＲＡＭ９６０は各種プロセッサの作業領域となる。ＤＭＡコントローラ９７０は、プロセッサ、メモリ間でのＤＭＡ転送を制御する。ＤＶＤドライブ９８０（ＣＤドライブでもよい。）は、プログラム、画像データ、或いは音データなどが格納されるＤＶＤ９８２（ＣＤでもよい。）にアクセスする。通信インターフェース９９０はネットワーク（通信回線、高速シリアルバス）を介して外部との間でデータ転送を行う。
【０１１６】
なお本実施形態の各部（各手段）の処理は、その全てをハードウェアのみにより実現してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。
【０１１７】
そして本実施形態の各部の処理をハードウェアとプログラムの両方により実現する場合には、情報記憶媒体には、ハードウェア（コンピュータ）を本実施形態の各部として機能させるためのプログラムが格納される。より具体的には、上記プログラムが、ハードウェアである各プロセッサ９０２、９０４、９０６、９１０、９３０に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ９０２、９０４、９０６、９１０、９３０は、その指示と渡されたデータとに基づいて本発明の各部の処理を実現する。
【０１１８】
なお、上記のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語と共に記載された用語は、明細書または図面のいかなる箇所においても、その異なる用語に置き換えることができる。
【０１１９】
また、制御点の設定手法、制御点の演算手法、パラメータの演算手法、テクスチャの合成手法、テクスチャのマッピング手法も本実施形態で説明したものに限定されず、これらと均等な手法も本発明の範囲に含まれる。
【０１２０】
また本発明は種々のゲームに適用できる。また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレイヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード、携帯電話等の種々の画像生成システムに適用できる。
【図面の簡単な説明】
【０１２１】
【図１】本実施形態の画像生成システムの機能ブロック図の例。
【図２】モデルオブジェクト、スケルトン構造の例。
【図３】骨の親子関係の説明図。
【図４】本実施形態の手法の説明図。
【図５】図５（Ａ）（Ｂ）は本実施形態の手法の説明図。
【図６】しわ表現テクスチャの例。
【図７】しわ表現テクスチャの例。
【図８】本実施形態により生成された画像の例。
【図９】しわの拡大画像の例。
【図１０】合成パラメータの演算手法の説明図。
【図１１】図１１（Ａ）（Ｂ）は本実施形態の手法の変形例の説明図。
【図１２】本実施形態により生成された画像の例。
【図１３】図１３（Ａ）（Ｂ）（Ｃ）（Ｄ）は前側制御点、後ろ側制御点を設定する手法の説明図。
【図１４】図１４（Ａ）（Ｂ）は前側制御点、後ろ側制御点を設定する手法の説明図。
【図１５】ボリュームテクスチャを利用する手法の説明図。
【図１６】本実施形態の詳細な処理を説明するフローチャート。
【図１７】ハードウェア構成例。
【符号の説明】
【０１２２】
１００  処理部、１０８  ゲーム演算部、１１０  オブジェクト空間設定部、
１１２  移動処理部、１１３  モーション処理部、１１４  仮想カメラ制御部、
１１６  制御点演算部、１１８  パラメータ演算部、１１９  テクスチャ座標設定部、
１２０  画像生成部、１６０  操作部、１７０  記憶部、
１７２  主記憶部、１７４  描画バッファ、１７６  モデルデータ記憶部、
１７８  テクスチャ記憶部、１７９  モーションデータ記憶部、
１８０  情報記憶媒体、１９０  表示部、１９２  音出力部、
１９４  携帯型情報記憶装置、１９６  通信部
【図１】
0004786389.tif 000002
【図２】
0004786389.tif 000003
【図３】
0004786389.tif 000004
【図４】
0004786389.tif 000005
【図５】
0004786389.tif 000006
【図１０】
0004786389.tif 000007
【図１１】
0004786389.tif 000008
【図１３】
0004786389.tif 000009
【図１４】
0004786389.tif 000010
【図１５】
0004786389.tif 000011
【図１６】
0004786389.tif 000012
【図１７】
0004786389.tif 000013
【図６】
0004786389.tif 000014
【図７】
0004786389.tif 000015
【図８】
0004786389.tif 000016
【図９】
0004786389.tif 000017
【図１２】
0004786389.tif 000018