(57)【特許請求の範囲】
【請求項１】
画像を生成するための画像生成システムであって、
１つの３次元モデルについて複数の３次元モデルデータを記憶する記憶手段と、
前記３次元モデルの方向を求める処理を行う処理手段と、
仮想カメラの方向と前記３次元モデルの方向との相対角度を表す情報に基づいて、前記複数の３次元モデルデータの中から、前記３次元モデルの画像生成に使用する１つ又は複数の３次元モデルデータを選択する選択手段と、
選択された３次元モデルデータに基づいて、オブジェクト空間内において前記仮想カメラから見える前記３次元モデルの画像を生成する手段と、
を含み、
前記選択手段は、
前記相対角度が第Ｋの角度である場合に、前記複数の３次元モデルデータのうち第Ｋの３次元モデルデータを選択し、前記相対角度が第Ｌの角度である場合に、前記複数の３次元モデルデータのうち第Ｌの３次元モデルデータを選択し、
前記複数の３次元モデルデータのそれぞれは複数のパーツから構成され、
前記複数のパーツのうち一部分のパーツは、
前記第Ｋの３次元モデルデータと前記第Ｌの３次元モデルデータとでローカル位置が異なり、
前記複数のパーツのうち他の部分のパーツは、
前記第Ｋの３次元モデルデータと前記第Ｌの３次元モデルデータとでローカル位置が同一であることを特徴とする画像生成システム。
【請求項２】
画像を生成するための画像生成システムであって、
１つの３次元モデルについて複数の３次元モデルデータを記憶する記憶手段と、
前記３次元モデルの方向を求める処理を行う処理手段と、
仮想カメラの方向と前記３次元モデルの方向との相対角度を表す情報に基づいて、前記複数の３次元モデルデータの中から、前記３次元モデルの画像生成に使用する１つ又は複数の３次元モデルデータを選択する手段と、
選択された３次元モデルデータに基づいて、オブジェクト空間内において前記仮想カメラから見える前記３次元モデルの画像を生成する手段と、
を含み、
前記選択手段は、
前記相対角度が第Ｋの角度である場合に、前記複数の３次元モデルデータのうち第Ｋの３次元モデルデータを選択し、前記相対角度が第Ｌの角度である場合に、前記複数の３次元モデルデータのうち第Ｌの３次元モデルデータを選択し、
前記複数の３次元モデルデータのそれぞれは複数のパーツから構成され、
前記複数のパーツのうち一部分のパーツは、
前記第Ｋの３次元モデルデータと前記第Ｌの３次元モデルデータとで形状が異なり、
前記複数のパーツのうち他の部分のパーツは、
前記第Ｋの３次元モデルデータと前記第Ｌの３次元モデルデータとで形状が同一であることを特徴とする画像生成システム。
【請求項３】
画像を生成するための画像生成システムであって、
１つの３次元モデルについて複数の３次元モデルデータを記憶する記憶手段と、
前記３次元モデルの方向を求める処理を行う処理手段と、
仮想カメラの方向と前記３次元モデルの方向との相対角度を表す情報に基づいて、前記複数の３次元モデルデータの中から、前記３次元モデルの画像生成に使用する１つ又は複数の３次元モデルデータを選択する手段と、
選択された３次元モデルデータに基づいて、オブジェクト空間内において前記仮想カメラから見える前記３次元モデルの画像を生成する手段と、
を含み、
前記選択手段は、
前記相対角度が第Ｋの角度である場合に、前記複数の３次元モデルデータのうち第Ｋの３次元モデルデータを選択し、前記相対角度が第Ｌの角度である場合に、前記複数の３次元モデルデータのうち第Ｌの３次元モデルデータを選択し、
前記複数の３次元モデルデータのそれぞれは複数のパーツから構成され、
前記複数のパーツのうち一部分のパーツは、
前記第Ｋの３次元モデルデータが選択される場合には表示されるが、前記第Ｌの３次元モデルデータが選択される場合には表示されず、
前記複数のパーツのうち他の部分のパーツは、
前記第Ｋの３次元モデルデータが選択される場合と、前記第Ｌの３次元モデルデータが選択される場合とにおいて表示されることを特徴とする画像生成システム。
【請求項４】
請求項１乃至３のいずれかにおいて、
前記第Ｋ〜第Ｌの３次元モデルデータが、前記相対角度が第Ｋ〜第Ｌの角度である場合用の第Ｋ〜第Ｌの２次元画像を表示するための３次元モデルデータであることを特徴とする画像生成システム。
【請求項５】
請求項１乃至４のいずれかにおいて、
前記相対角度が第Ｋの角度と第Ｌの角度の間の角度である場合には、前記第Ｋの３次元モデルデータと前記第Ｌの３次元モデルデータとの補間処理により得られる３次元モデルデータに基づき、前記３次元モデルの画像が生成されることを特徴とする画像生成システム。
【請求項６】
請求項１乃至５のいずれかにおいて、
前記３次元モデルが、全体モデルを構成するサブモデルであり、
選択される前記３次元モデルデータが、サブモデルの画像生成に使用されるサブモデルデータであることを特徴とする画像生成システム。
【請求項７】
コンピュータが使用可能な情報記憶媒体であって、
１つの３次元モデルについて複数の３次元モデルデータを記憶する記憶手段と、
前記３次元モデルの方向を求める処理を行う処理手段と、
仮想カメラの方向と前記３次元モデルの方向との相対角度を表す情報に基づいて、前記複数の３次元モデルデータの中から、前記３次元モデルの画像生成に使用する１つ又は複数の３次元モデルデータを選択する手段と、
選択された３次元モデルデータに基づいて、オブジェクト空間内において前記仮想カメラから見える前記３次元モデルの画像を生成する手段としてコンピュータを機能させるためのプログラムが記憶され、
前記選択手段は、
前記相対角度が第Ｋの角度である場合に、前記複数の３次元モデルデータのうち第Ｋの３次元モデルデータを選択し、前記相対角度が第Ｌの角度である場合に、前記複数の３次元モデルデータのうち第Ｌの３次元モデルデータを選択し、
前記複数の３次元モデルデータのそれぞれは複数のパーツから構成され、
前記複数のパーツのうち一部分のパーツは、
前記第Ｋの３次元モデルデータと前記第Ｌの３次元モデルデータとでローカル位置が異なり、
前記複数のパーツのうち他の部分のパーツは、
前記第Ｋの３次元モデルデータと前記第Ｌの３次元モデルデータとでローカル位置が同一であることを特徴とする情報記憶媒体。
【請求項８】
コンピュータが使用可能な情報記憶媒体であって、
１つの３次元モデルについて複数の３次元モデルデータを記憶する記憶手段と、
前記３次元モデルの方向を求める処理を行う処理手段と、
仮想カメラの方向と前記３次元モデルの方向との相対角度を表す情報に基づいて、前記複数の３次元モデルデータの中から、前記３次元モデルの画像生成に使用する１つ又は複数の３次元モデルデータを選択する手段と、
選択された３次元モデルデータに基づいて、オブジェクト空間内において前記仮想カメラから見える前記３次元モデルの画像を生成する手段としてコンピュータを機能させるためのプログラムが記憶され、
前記選択手段は、
前記相対角度が第Ｋの角度である場合に、前記複数の３次元モデルデータのうち第Ｋの３次元モデルデータを選択し、前記相対角度が第Ｌの角度である場合に、前記複数の３次元モデルデータのうち第Ｌの３次元モデルデータを選択し、
前記複数の３次元モデルデータのそれぞれは複数のパーツから構成され、
前記複数のパーツのうち一部分のパーツは、
前記第Ｋの３次元モデルデータと前記第Ｌの３次元モデルデータとで形状が異なり、
前記複数のパーツのうち他の部分のパーツは、
前記第Ｋの３次元モデルデータと前記第Ｌの３次元モデルデータとで形状が同一であることを特徴とする情報記憶媒体。
【請求項９】
コンピュータが使用可能な情報記憶媒体であって、
１つの３次元モデルについて複数の３次元モデルデータを記憶する記憶手段と、
前記３次元モデルの方向を求める処理を行う処理手段と、
仮想カメラの方向と前記３次元モデルの方向との相対角度を表す情報に基づいて、前記複数の３次元モデルデータの中から、前記３次元モデルの画像生成に使用する１つ又は複数の３次元モデルデータを選択する手段と、
選択された３次元モデルデータに基づいて、オブジェクト空間内において前記仮想カメラから見える前記３次元モデルの画像を生成する手段としてコンピュータを機能させるためのプログラムが記憶され、
前記選択手段は、
前記相対角度が第Ｋの角度である場合に、前記複数の３次元モデルデータのうち第Ｋの３次元モデルデータを選択し、前記相対角度が第Ｌの角度である場合に、前記複数の３次元モデルデータのうち第Ｌの３次元モデルデータを選択し、
前記複数の３次元モデルデータのそれぞれは複数のパーツから構成され、
前記複数のパーツのうち一部分のパーツは、
前記第Ｋの３次元モデルデータが選択される場合には表示されるが、前記第Ｌの３次元モデルデータが選択される場合には表示されず、
前記複数のパーツのうち他の部分のパーツは、
前記第Ｋの３次元モデルデータが選択される場合と、前記第Ｌの３次元モデルデータが選択される場合とにおいて表示されることを特徴とする情報記憶媒体。
【請求項１０】
請求項７乃至９のいずれかにおいて、
前記第Ｋ〜第Ｌの３次元モデルデータが、前記相対角度が第Ｋ〜第Ｌの角度である場合用の第Ｋ〜第Ｌの２次元画像を表示するための３次元モデルデータであることを特徴とする情報記憶媒体。
【請求項１１】
請求項７乃至１０のいずれかにおいて、
前記相対角度が第Ｋの角度と第Ｌの角度の間の角度である場合には、前記第Ｋの３次元モデルデータと前記第Ｌの３次元モデルデータとの補間処理により得られる３次元モデルデータに基づき、前記３次元モデルの画像が生成されることを特徴とする情報記憶媒体。
【請求項１２】
請求項７乃至１１のいずれかにおいて、
前記３次元モデルが、全体モデルを構成するサブモデルであり、
選択される前記３次元モデルデータが、サブモデルの画像生成に使用されるサブモデルデータであることを特徴とする情報記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像生成システム及び情報記憶媒体に関する。
【０００２】
【背景技術及び発明が解決しようとする課題】
従来より、仮想的な３次元空間であるオブジェクト空間内の所与の視点（仮想カメラ）から見える画像を生成する画像生成システムが知られており、いわゆる仮想現実を体験できるものとして人気が高い。ロールプレイングゲームを楽しむことができる画像生成システムを例にとれば、プレーヤは、キャラクタ（モデル）を操作してオブジェクト空間内のマップ上で移動させ、敵キャラクタと対戦したり、他のキャラクタと対話したり、様々な町を訪れたりすることでゲームを楽しむ。
【０００３】
さて、このような画像生成システムでは、キャラクタや乗り物などの表示物を表示する場合には、これらの表示物をモデル化した立体的な単一の３次元モデルを用意しておく。そして、この３次元モデルをオブジェクト空間内に配置し、ジオメトリ処理（３次元座標演算）を行って、仮想カメラから見える画像を自動生成する。従って、一度、１つの３次元モデルを用意してしまえば、仮想カメラにより様々な方向からこの３次元モデルを見た場合にも、矛盾の無い画像を生成できるようになる。
【０００４】
ところが、このように単一の３次元モデルを用いて、ジオメトリ処理を行い生成した画像は、数学的には正しい画像ではあるが、今一つプレーヤの情感に訴えることができないという問題がある。
【０００５】
特に漫画のキャラクタを３次元モデルで表現し、正確なジオメトリ処理を行い画像を生成すると、一般の人が漫画で慣れ親しんでいるものとは異なったイメージの画像が生成されてしまう。
【０００６】
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、本来は単一の３次元モデルでは表せない表示物の画像を生成できる画像生成システム及び情報記憶媒体を提供することにある。
【０００７】
【課題を解決するための手段】
上記課題を解決するために、本発明は、画像を生成するための画像生成システムであって、仮想カメラの方向と３次元モデルの方向との相対角度を表す情報に基づいて、単一の３次元モデルを表示するために用意されている複数のモデルデータの中から、３次元モデルの画像生成に使用する１又は複数のモデルデータを選択する手段と、選択されたモデルデータに基づいて、オブジェクト空間内において仮想カメラから見える画像を生成する手段とを含むことを特徴とする。また本発明に係る情報記憶媒体は、コンピュータにより使用可能な情報記憶媒体であって、上記手段を実行するためのプログラムを含むことを特徴とする。また本発明に係るプログラムは、コンピュータにより使用可能なプログラム（搬送波に具現化されるプログラムを含む）であって、上記手段を実行するための処理ルーチンを含むことを特徴とする。
【０００８】
本発明によれば、仮想カメラの方向と３次元モデルの方向との相対角度（相対角度を表す情報）に基づいて、３次元モデルの画像生成に使用されるモデルデータが順次切り替わる（上記相対角度に基づき３次元モデルの形状が変形する）。従って、各相対角度に応じた最適なモデルデータで３次元モデルを表現できるようになる。これにより、本来は単一の３次元モデルでは表現できない表示物（例えば漫画のキャラクタ）の画像も生成できるようになり、単一の３次元モデルだけでは表すことができない画調を実現できる。しかも、本発明によれば、３次元モデルを用いて画像が生成されるため、画調を変えなくてもよい部分については、仮想カメラの方向に応じた正確な画像を得ることができる。
【０００９】
また本発明に係る画像生成システム、情報記憶媒体及びプログラムは、仮想カメラの方向と３次元モデルの方向との相対角度が第Ｋの角度である場合用の第Ｋのモデルデータでの第１のパーツのローカル位置が、前記相対角度が第Ｌの角度である場合用の第Ｌのモデルデータでの前記第１のパーツのローカル位置と異なることを特徴とする。
【００１０】
また本発明に係る画像生成システム、情報記憶媒体及びプログラムは、仮想カメラの方向と３次元モデルの方向との相対角度が第Ｋの角度である場合用の第Ｋのモデルデータでの第２のパーツの形状が、前記相対角度が第Ｌの角度である場合用の第Ｌのモデルデータでの前記第２のパーツの形状と異なることを特徴とする。
【００１１】
更に本発明に係る画像生成システム、情報記憶媒体及びプログラムは、仮想カメラの方向と３次元モデルの方向との相対角度が第Ｋの角度である場合用の第Ｋのモデルデータにおいては表示される第３のパーツが、前記相対角度が第Ｌの角度である場合用の第Ｌのモデルデータにおいては非表示又は簡略表示されることを特徴とする。
【００１２】
以上のように、モデルデータ間で、パーツのローカル位置、形状、表示・非表示等を異ならせることで、漫画キャラクタなどの表現に最適な画像表現を実現できる。
【００１３】
また本発明に係る画像生成システム、情報記憶媒体及びプログラムは、仮想カメラの方向と３次元モデルの方向との相対角度が第Ｉ〜第Ｊの角度である場合用の第Ｉ〜第Ｊのモデルデータが、前記相対角度が第Ｉ〜第Ｊの角度である場合用の第Ｉ〜第Ｊの２次元画像を表示するためのモデルデータであることを特徴とする。このようにすれば、まず初めに、第Ｉ〜第Ｊの２次元画像（絵コンテ等）のデザインを決めて、その第Ｉ〜第Ｊの２次元画像に基づいて、第Ｉ〜第Ｊのモデルデータを作成できるようになる。これにより、第Ｉ〜第Ｊのモデルデータの作成作業を効率化できる。
【００１４】
また本発明に係る画像生成システム、情報記憶媒体及びプログラムは、仮想カメラの方向と３次元モデルの方向との相対角度が第Ｍの角度と第Ｎの角度の間の角度である場合には、第Ｍの角度用の第Ｍのモデルデータと第Ｎの角度用の第Ｎのモデルデータとの補間処理により得られるモデルデータに基づき、３次元モデルの画像が生成されることを特徴とする。このようにすれば、モデルデータの使用記憶容量を節約できると共に、３次元モデルの形状を滑らかに変化させることが可能になる。
【００１５】
また本発明に係る画像生成システム、情報記憶媒体及びプログラムは、前記３次元モデルが、全体モデルを構成するサブモデルであり、選択される前記モデルデータが、サブモデルの画像生成に使用されるサブモデルデータであることを特徴とする。このようにすれば、全体モデルの中の他の部分については、複数のモデルデータが不要になり、単一のモデルデータで済むため、モデルデータの使用記憶容量を節約できる。
【００１６】
【発明の実施の形態】
以下、本発明の好適な実施形態について図面を用いて説明する。
【００１７】
１．構成
図１に、本実施形態のブロック図の一例を示す。なお同図において本実施形態は、少なくとも処理部１００を含めばよく（或いは処理部１００と記憶部１７０、或いは処理部１００と記憶部１７０と情報記憶媒体１８０を含めばよく）、それ以外のブロック（例えば操作部１６０、表示部１９０、音出力部１９２、携帯型情報記憶装置１９４、通信部１９６）については、任意の構成要素とすることができる。
【００１８】
ここで処理部１００は、システム全体の制御、システム内の各ブロックへの命令の指示、ゲーム処理、画像処理、音処理などの各種の処理を行うものであり、その機能は、各種プロセッサ（ＣＰＵ、ＤＳＰ等）、或いはＡＳＩＣ（ゲートアレイ等）などのハードウェアや、所与のプログラム（ゲームプログラム）により実現できる。
【００１９】
操作部１６０は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、筺体などのハードウェアにより実現できる。
【００２０】
記憶部１７０は、処理部１００や通信部１９６などのワーク領域となるもので、その機能はＲＡＭなどのハードウェアにより実現できる。
【００２１】
情報記憶媒体（コンピュータにより使用可能な記憶媒体）１８０は、プログラムやデータなどの情報を格納するものであり、その機能は、光ディスク（ＣＤ、ＤＶＤ）、光磁気ディスク（ＭＯ）、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ（ＲＯＭ）などのハードウェアにより実現できる。処理部１００は、この情報記憶媒体１８０に格納される情報に基づいて本発明（本実施形態）の種々の処理を行う。即ち情報記憶媒体１８０には、本発明（本実施形態）の手段（特に処理部１００に含まれるブロック）を実行するための情報（プログラム或いはプログラム及びデータ）が格納される。
【００２２】
なお、情報記憶媒体１８０に格納される情報の一部又は全部は、システムへの電源投入時等に記憶部１７０に転送されることになる。また情報記憶媒体１８０に記憶される情報は、本発明の処理を行うためのプログラムコード、画像データ、音データ、表示物の形状データ、テーブルデータ、リストデータ、本発明の処理を指示するための情報、その指示に従って処理を行うための情報等の少なくとも１つを含むものである。
【００２３】
表示部１９０は、本実施形態により生成された画像を出力するものであり、その機能は、ＣＲＴ、ＬＣＤ、或いはＨＭＤ（ヘッドマウントディスプレイ）などのハードウェアにより実現できる。
【００２４】
音出力部１９２は、本実施形態により生成された音を出力するものであり、その機能は、スピーカなどのハードウェアにより実現できる。
【００２５】
携帯型情報記憶装置１９４は、プレーヤの個人データやセーブデータなどが記憶されるものであり、この携帯型情報記憶装置１９４としては、メモリカードや携帯型ゲーム装置などを考えることができる。
【００２６】
通信部１９６は、外部（例えばホスト装置や他の画像生成システム）との間で通信を行うための各種の制御を行うものであり、その機能は、各種プロセッサ、或いは通信用ＡＳＩＣなどのハードウェアや、プログラムなどにより実現できる。
【００２７】
なお本発明（本実施形態）の手段を実行するためのプログラム或いはデータは、ホスト装置（サーバー）が有する情報記憶媒体からネットワーク及び通信部１９６を介して情報記憶媒体１８０に配信するようにしてもよい。このようなホスト装置（サーバー）の情報記憶媒体の使用も本発明の範囲内に含まれる。
【００２８】
処理部１００は、ゲーム処理部１１０、画像生成部１３０、音生成部１５０を含む。
【００２９】
ここでゲーム処理部１１０は、コイン（代価）の受け付け処理、各種モードの設定処理、ゲームの進行処理、選択画面の設定処理、３次元モデルの位置、方向（Ｘ、Ｙ又はＺ軸回り回転角度）を求める処理、３次元モデルを動作させる処理（モーション処理）、仮想カメラ（視点）の位置、方向を求める処理、マップなどをオブジェクト空間へ配置する処理、ヒットチェック処理、ゲーム結果（成果、成績）を演算する処理、複数のプレーヤが共通のゲーム空間でプレイするための処理、或いはゲームオーバー処理などの種々のゲーム処理を、操作部１６０からの操作データや、携帯型情報記憶装置１９４からの個人データ、保存データや、ゲームプログラムなどに基づいて行う。
【００３０】
画像生成部１３０は、ゲーム処理部１１０からの指示等にしたがって各種の画像処理を行い、例えばオブジェクト空間内において仮想カメラ（視点）から見える画像を生成して、表示部１９０に出力する。また、音生成部１５０は、ゲーム処理部１１０からの指示等にしたがって各種の音処理を行い、ＢＧＭ、効果音、音声などの音を生成し、音出力部１９２に出力する。
【００３１】
なお、ゲーム処理部１１０、画像生成部１３０、音生成部１５０の機能は、その全てをハードウェアにより実現してもよいし、その全てをプログラムにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。
【００３２】
ゲーム処理部１１０は、モデル演算部１１２、仮想カメラ演算部１１４、モデルデータ選択部１１６、補間部１１８を含む。
【００３３】
ここで、モデル演算部１１２は、３次元モデルの位置や方向を求める処理を行う。この場合、３次元モデルの位置、方向は、操作部１６０を介して入力されるプレーヤの操作データにより求めてもよいし、物理シミュレーションにより求めてもよい。或いは、予め用意されたデータ（テーブル）に基づいて求めてもよい。
【００３４】
仮想カメラ演算部１１４は、仮想カメラの位置や方向を求める処理を行う。この場合、仮想カメラの位置、方向は、操作部１６０を介して入力されるプレーヤの操作データに基づいて求めてもよいし、仮想カメラ制御プログラムにより求めてもよい。或いは、予め用意されたデータ（テーブル）に基づいて求めてもよい。
【００３５】
モデルデータ選択部１１６は、仮想カメラの方向と３次元モデルの方向との相対角度を表す情報に基づいて、モデルデータ記憶部１７２に記憶されている複数のモデルデータ（３次元モデルの形状を表すデータ）の中から、３次元モデルの画像生成に使用する１又は複数のモデルデータを選択する処理を行う。即ち、仮想カメラの回転角度情報や３次元モデルの回転角度情報に基づいて、３次元モデルの画像生成に使用する３次元モデルを順次切り替える処理を行う。このようにすることで、本来は単一の３次元モデルでは表せない表示物（例えば漫画のキャラクタ）の画像を生成できるようになる。
【００３６】
補間部１１８は、モデルデータの補間処理を行う。より具体的には、例えば仮想カメラの方向と３次元モデルの方向との相対角度が第１の角度と第２の角度の間の角度である場合には、第１の角度用の第１のモデルデータと第２の角度用の第２のモデルデータとの補間処理（例えば頂点座標の補間）を行う。そして、３次元モデルの画像は、この補間処理により得られたモデルデータに基づき生成されることになる。
【００３７】
画像生成部１３０は、ジオメトリ処理部１３２（３次元座標演算部）、描画部１４０（レンダリング部）を含む。
【００３８】
ここで、ジオメトリ処理部１３２は、モデルデータ選択部１１６により選択されたモデルデータに基づいて、座標変換、クリッピング処理、透視変換などの種々のジオメトリ処理（３次元座標演算）を行う。
【００３９】
描画部１４０は、ジオメトリ処理後（透視変換後）のモデルデータに基づいて、モデルデータを構成するポリゴン（プリミティブ面）の描画処理を行う。これにより、オブジェクト空間において、仮想カメラ（視点）から見える画像が生成されるようになる。
【００４０】
なお、本実施形態の画像生成システムは、１人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、このようなシングルプレーヤモードのみならず、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。
【００４１】
また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、１つの端末を用いて生成してもよいし、ネットワーク（伝送ライン、通信回線）などで接続された複数の端末を用いて生成してもよい。
【００４２】
２．本実施形態の特徴
本実施形態の特徴は、単一の３次元モデルの画像を生成するために、複数のモデルデータを用意している点にある。
【００４３】
より具体的には図２に示すように、単一の３次元モデルを表示するために複数のモデルデータ１、２、３・・・・を用意しておく。そして、仮想カメラ２０の方向ＣＤと３次元モデル１０の方向ＭＤ（例えば向く方向）との相対角度θに基づいて、これらのモデルデータ１、２、３・・・・の中から、３次元モデルの画像生成に使用する１又は複数のモデルデータを選択する。即ち、相対角度（相対角度と数学的に均等な情報でもよい）に基づいて、画像生成に使用するモデルデータを順次切り替える。そして、選択されたモデルデータに基づいて、オブジェクト空間内において仮想カメラ２０から見える画像が生成される。
【００４４】
例えば図２では、相対角度θ＝θ１の時にはモデルデータ１が選択され、θ＝θ２の時にはモデルデータ２が選択され、θ＝θ３の時にはモデルデータ３が選択される。
【００４５】
そして、モデルデータ１、２、３・・・は、パーツのローカル位置、パーツの形状、或いはパーツの表示・非表示等が異なっている。即ち、例えばモデルデータ１で第１のローカル位置（３次元モデルのローカル座標系での位置）にあったパーツが、モデルデータ２では第２のローカル位置にある。また、モデルデータ１で第１の形状であったパーツが、モデルデータ２では第２の形状になる。また、モデルデータ１で表示されているパーツが、モデルデータ２では非表示（簡略表示）になる。
【００４６】
なお、パーツとしては、鼻、口、目、耳、髪の毛、眼鏡、角、指、ヘッドライト、タイヤ、ドア、窓、武器等、種々のものを考えることができる。
【００４７】
また、選択されたモデルデータは、図３に示すように、各モデルデータに関連づけて設定されたモデル番号（キー情報）に基づいて、図１のモデルデータ記憶部１７２から読み出す。
【００４８】
ここでモデルデータは、３次元モデルの形状を表すためのデータである。例えば図３では、モデルデータは複数のサブモデル（頭部、胸部、腰、腕、脚等）のデータにより構成され、サブモデルデータは複数のポリゴンデータにより構成される。そして、ポリゴンデータは、頂点座標、頂点テクスチャ座標、法線ベクトルなどのデータにより構成される。
【００４９】
なお、図４に示すように、相対角度に基づき選択されるモデルデータは、全体モデルの構成要素であるサブモデルのデータであってもよい。例えば、複数の頭部モデルデータ（広義にはサブモデルデータ）を用意しておき、相対角度に基づいて、これらの複数の頭部モデルデータから１又は複数の頭部モデルデータを選択するようにする。即ち、全体モデルの一部分のみを相対角度に応じて切り替えるようにする。このようにすれば、他の部分については複数のモデルデータが不要になり単一のモデルデータで済むため、モデルデータの使用記憶容量を節約できる。
【００５０】
以上のように本実施形態によれば、仮想カメラの方向と３次元モデルの方向との相対角度に基づいて、画像生成に使用されるモデルデータを切り替えているため、各相対角度に応じた最適なモデルデータで３次元モデルを表現できる。即ち、本来は単一の３次元モデルでは表せない表示物を表示できるようになる。
【００５１】
即ち、通常、この種の画像生成システムでは、単一の３次元モデルを用意し、この３次元モデルをオブジェクト空間内に配置し、ジオメトリ処理（３次元座標演算）を行って、仮想カメラから見える画像を生成する。これにより、どの方向から３次元オブジェクトを見た場合も、矛盾の無い正しい画像を生成できる。従って、通常は、あえて複数の３次元モデルを用意する必要がない。
【００５２】
ところが、例えば漫画のキャラクタを３次元モデルで表すような場合には、このように単一の３次元モデルを用いて画像を生成しても、漫画らしいコミカルな画像を得ることができないことが判明した。
【００５３】
即ち、このような漫画の世界では、一般人が慣れ親しんでいる画調というものがある。ところが、単一の３次元モデルを用いて、正確なジオメトリ処理を行い画像を生成してしまうと、あまりにもリアルな画像になってしまい、いわゆるコミカルな画調の画像を得ることができない。このため、漫画を愛好する一般人の情感に訴えることができないという問題がある。
【００５４】
これに対して本実施形態によれば、仮想カメラの方向と３次元モデルの方向との相対角度に応じた最適なモデルデータで、３次元モデルを表現できる。従って、一般人が慣れ親しんでいるコミカルな画調の画像を生成できる。
【００５５】
しかも本実施形態によれば、３次元モデルを使用して画像が生成されるため、画調を変えなくてよい部分については、仮想カメラの方向に応じた正確な画像を得ることができるという利点がある。
【００５６】
例えば図５のＡ１では、仮想カメラ２０が３次元モデル１２の正面を見ている。そして、この場合には、相対角度θ＝θ１に対応するモデルデータ１が選択される。これにより、Ａ３に示すような画像が生成される。
【００５７】
一方、図５のＡ２では、仮想カメラ２０が３次元モデル１２の右前を見ている。そして、この場合には、相対角度θ＝θ２に対応するモデルデータ２が選択される。このＡ２のモデルデータ２と、Ａ１のモデルデータ１とは、角３０、３２（パーツ）のローカル位置（３次元モデルのローカル座標系での位置）が異なっている。このようにローカル位置を異ならせることで、Ａ４に示すような画像が生成されるようになる。
【００５８】
Ａ３とＡ４を比較すればわかるように、Ａ４では、顔の部分は横を向いているのにもかかわらず、角（つの）３０、３２の位置はＡ３から変化していない。これらの角３０、３２は、この３次元モデル１２の特徴的な部分である。従って、仮想カメラ２０の見る方向が変化しても、これらの角３０、３２の位置については変化させない方が、漫画に慣れ親しんでいる一般人にとっては自然で魅力的になる。
【００５９】
本実施形態では、仮想カメラ２０の見る方向（相対角度θ）に応じて、モデルデータが切り替わる。従って、仮想カメラ２０の見る方向（相対角度θ）に応じて角３０、３２のローカル位置を変えることができ、図５のＡ３、Ａ４に示すような、漫画キャラクタの表現に最適な画像表現を実現できる。しかも、顔の部分の見え方については、仮想カメラ２０の見る方向に応じた見え方に変化するため（顔が横を向く）、３次元モデルを用いることにより得られる利点については、そのまま維持できる。
【００６０】
また図６では、Ｂ１、Ｂ２に示すように仮想カメラ２０の見る方向が変化した場合に（相対角度θがθ１からθ２に変化した場合に）、３次元モデル１４の鼻３４（パーツ）の形状が変化する。即ち、相対角度θ＝θ１の時に使用されるモデルデータ１の鼻３４の形状と、相対角度θ＝θ２の時に使用されるモデルデータ２の鼻３４の形状が異なっている。これにより、図６のＢ３、Ｂ４に示すような画像が生成されるようになる。
【００６１】
鼻３４の形状は、正面から見た場合には図６のＢ１、Ｂ３に示すような形状になっている方が、３次元モデル１４が表現するキャラクタの特徴をよく表すことができ、漫画のデザイン上好ましい。しかしながら、横から見た場合に、鼻３４の形状が図６のＢ１、Ｂ３の形状のままであると、不自然な画像になってしまう。従って、この場合には、鼻３４の形状をＢ２、Ｂ４に示すような形状に変更する。これにより、より自然な画像を生成できるようになる。
【００６２】
また図７のＣ１では３次元モデル１６の鼻３６が非表示になっているのに対して、Ｃ２では鼻３６が表示されている。即ち、相対角度θ＝θ１の時に使用されるモデルデータ１では、鼻３６が非表示になっているのに対して、θ＝θ２の時に使用されるモデルデータ２では、鼻３６が表示される。これにより、図７のＣ３、Ｃ４に示すような画像が生成されるようになる。
【００６３】
女の子のキャラクタでは、正面から見た場合には図７のＣ１、Ｃ３に示すように鼻が非表示になっている方が可愛らしい表情になり、漫画のデザイン上望ましい。一方、横から見た場合には、鼻３６が非表示のままであると、不自然な画像になってしまう。従って、この場合には、図７のＣ２、Ｃ４に示すように、鼻３６を表示するようにする。これにより、正面から見た場合には可愛らしい表情になる一方で、横から見た場合には自然な表情になるような３次元モデル１６の画像を生成できる。
【００６４】
なお、図７のＣ１、Ｃ３では、正面から見た場合に鼻を非表示にしているが、図８のＤ１、Ｄ３に示すように、鼻３６を簡略表示するようにしてもよい（点などで表示する）。
【００６５】
さて、３次元モデルの各モデルデータは、例えば次のような手順で作成することが望ましい。
【００６６】
即ち図９に示すように、３次元モデル１０が表現するキャラクタを各方向（各相対角度）から見た場合の２次元の絵コンテ（２次元画像）を用意する。例えば図９では、正面から見た場合（θ＝θ１）の２Ｄ絵コンテ４０や、右前から見た場合（θ＝θ２）の２Ｄ絵コンテ４２が用意される。ここで、２Ｄ絵コンテ４０は、図５のＡ３、図６のＢ３、図７のＣ３、図８のＤ３に示すような絵コンテである。一方、２Ｄ絵コンテ４２は、図５のＡ４、図６のＢ４、図７のＣ４、図８のＤ４に示すような絵コンテである。
【００６７】
デザイナは、まず、これらの２Ｄ絵コンテ４０、４２のイメージを決める。そして、これらの２Ｄ絵コンテ４０、４２のイメージが表示されるように、各モデルデータ１、２を作成する。この場合、基準となるモデルデータ（例えばモデルデータ１）の各パーツを変更することで、他のモデルデータ（例えばモデルデータ２）を作成することが望ましい。このようにすることで、モデルデータの作成作業を効率化できる。
【００６８】
なお、全ての角度に対応するモデルデータを用意することは現実的ではないため、モデルデータの補間処理を行うことが望ましい。
【００６９】
例えば図１０に示すように、仮想カメラの方向と３次元モデルの方向との相対角度θが０度〜３０度の間にある場合には、０度用のモデルデータ１と、３０度用のモデルデータ２とを補間する処理を行う。同様に、角度θが３０度〜６０度の間にある場合には、３０度用のモデルデータ２と、６０度用のモデルデータ３とを補間する処理を行う。そして補間処理により得られたモデルデータを用いて画像を生成する。これにより、モデルデータの使用記憶容量を節約できる。また、モデルデータが変更される角度（例えば図１０の０度、３０度、６０度）において、３次元モデルの形状を滑らかに変化させることができるようになる。
【００７０】
なお、モデルデータの補間処理は、モデルデータの頂点の座標を補間することなどで実現できる。即ち、例えば、モデルデータ１の第１の頂点の座標とモデルデータ２の第１の頂点の座標とを補間し、補間により得られた頂点の座標を、新たに生成されたモデルデータの第１の頂点の座標にすればよい。
【００７１】
３．本実施形態の処理
次に、本実施形態の詳細な処理例について、図１１のフローチャートを用いて説明する。
【００７２】
まず、ワールド座標系での３次元モデル（全体モデル、或いは頭部モデルなどのサブモデル）の位置、方向を算出する（ステップＳ１）。次に、ワールド座標系での仮想カメラ（視点）の位置、方向を算出する（ステップＳ２）。即ち、仮想カメラのスクリーン座標系を算出する。
【００７３】
次に、３次元モデルの方向と仮想カメラの方向の相対角度を算出する（ステップＳ３）。即ち、スクリーン座標系での３次元モデルの方向を算出する。
【００７４】
次に、得られた相対角度に基づいて、図２で説明したようにモデルデータを選択する（ステップＳ４）。そして、選択されたモデルデータのモデル番号（キー情報）を指定して、モデルデータ記憶部からモデルデータを読み出し、ジオメトリ処理部に転送する（ステップＳ５）。
【００７５】
次に、モデルデータに基づき、座標変換、クリッピング、透視変換などのジオメトリ処理を行い（ステップＳ６）、ジオメトリ処理後（透視変換後）のオブジェクトデータ（ポリゴンデータ）を、描画部に転送する（ステップＳ７）。そして、ジオメトリ処理後のモデルデータに基づいて、描画処理を行う（ステップＳ８）。
【００７６】
以上のようにすることで、３次元モデルの方向と仮想カメラの方向の相対角度に応じて、画像生成に使用されるモデルデータを順次切り替えることができるようになる。
【００７７】
４．ハードウェア構成
次に、本実施形態を実現できるハードウェアの構成の一例について図１２を用いて説明する。
【００７８】
メインプロセッサ９００は、ＣＤ９８２（情報記憶媒体）に格納されたプログラム、通信インターフェース９９０を介して転送されたプログラム、或いはＲＯＭ９５０（情報記憶媒体の１つ）に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などの種々の処理を実行する。
【００７９】
コプロセッサ９０２は、メインプロセッサ９００の処理を補助するものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算（ベクトル演算）を高速に実行する。例えば、３次元モデルを移動させたり動作（モーション）させるための物理シミュレーションに、マトリクス演算などの処理が必要な場合には、メインプロセッサ９００上で動作するプログラムが、その処理をコプロセッサ９０２に指示（依頼）する。
【００８０】
ジオメトリプロセッサ９０４は、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算（ベクトル演算）を高速に実行する。例えば、座標変換、透視変換、光源計算などの処理を行う場合には、メインプロセッサ９００で動作するプログラムが、その処理をジオメトリプロセッサ９０４に指示する。
【００８１】
データ伸張プロセッサ９０６は、圧縮された画像データや音データを伸張するデコード処理を行ったり、メインプロセッサ９００のデコード処理をアクセレートする処理を行う。これにより、オープニング画面、インターミッション画面、エンディング画面、或いはゲーム画面などにおいて、ＭＰＥＧ方式等で圧縮された動画像を表示できるようになる。なお、デコード処理の対象となる画像データや音データは、ＲＯＭ９５０、ＣＤ９８２に格納されたり、或いは通信インターフェース９９０を介して外部から転送される。
【００８２】
描画プロセッサ９１０は、描画（レンダリング）処理を高速に実行するものである。描画処理の際には、メインプロセッサ９００は、ＤＭＡコントローラ９７０の機能を利用して、ジオメトリ処理後のモデルデータ（ポリゴンデータ）を描画プロセッサ９１０に渡すと共に、必要であればテクスチャ記憶部９２４にテクスチャを転送する。すると、描画プロセッサ９１０は、これらのモデルデータ（ポリゴンデータ）やテクスチャに基づいて、Ｚバッファなどを利用した陰面消去を行いながら、３次元モデルを構成するポリゴン（プリミティブ面）をフレームバッファ９２２に高速に描画する。また、描画プロセッサ９１０は、αブレンディング（半透明処理）、ミップマッピング、フォグ処理、トライリニア・フィルタリング、アンチエリアシング、シェーディング処理なども行うことができる。そして、１フレーム分の画像がフレームバッファ９２２に書き込まれると、その画像はディスプレイ９１２に表示される。
【００８３】
サウンドプロセッサ９３０は、多チャンネルのＡＤＰＣＭ音源などを内蔵し、ＢＧＭ、効果音、音声などの高品位のゲーム音を生成する。生成されたゲーム音は、スピーカ９３２から出力される。
【００８４】
ゲームコントローラ９４２からの操作データや、メモリカード９４４からのセーブデータ、個人データは、シリアルインターフェース９４０を介してデータ転送される。
【００８５】
ＲＯＭ９５０にはシステムプログラムなどが格納される。なお、業務用ゲームシステムの場合には、ＲＯＭ９５０が情報記憶媒体として機能し、ＲＯＭ９５０に各種プログラムが格納されることになる。なお、ＲＯＭ９５０の代わりにハードディスクを利用するようにしてもよい。
【００８６】
ＲＡＭ９６０は、各種プロセッサの作業領域として用いられる。
【００８７】
ＤＭＡコントローラ９７０は、プロセッサ、メモリ（ＲＡＭ、ＶＲＡＭ、ＲＯＭ等）間でのＤＭＡ転送を制御するものである。
【００８８】
ＣＤドライブ９８０は、プログラム、画像データ、或いは音データなどが格納されるＣＤ９８２（情報記憶媒体）を駆動し、これらのプログラム、データへのアクセスを可能にする。
【００８９】
通信インターフェース９９０は、ネットワークを介して外部との間でデータ転送を行うためのインターフェースである。この場合に、通信インターフェース９９０に接続されるネットワークとしては、通信回線（アナログ電話回線、ＩＳＤＮ）、高速シリアルバスなどを考えることができる。そして、通信回線を利用することでインターネットを介したデータ転送が可能になる。また、高速シリアルバスを利用することで、他の画像生成システム、他のゲームシステムとの間でのデータ転送が可能になる。
【００９０】
なお、本発明の各手段は、その全てを、ハードウェアのみにより実行してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムのみにより実行してもよい。或いは、ハードウェアとプログラムの両方により実行してもよい。
【００９１】
そして、本発明の各手段をハードウェアとプログラムの両方により実行する場合には、情報記憶媒体には、本発明の各手段をハードウェアを利用して実行するためのプログラム（プログラム、データ）が格納されることになる。より具体的には、上記プログラムが、ハードウェアである各プロセッサ９０２、９０４、９０６、９１０、９３０等に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ９０２、９０４、９０６、９１０、９３０等は、その指示と渡されたデータとに基づいて、本発明の各手段を実行することになる。
【００９２】
図１３（Ａ）に、本実施形態を業務用ゲームシステムに適用した場合の例を示す。プレーヤは、ディスプレイ１１００上に映し出されたゲーム画像を見ながら、レバー１１０２、ボタン１１０４等を操作してゲームを楽しむ。内蔵されるシステムボード（サーキットボード）１１０６には、各種プロセッサ、各種メモリなどが実装される。そして、本発明の各手段を実行するためのプログラム（或いはプログラム、データ）は、システムボード１１０６上の情報記憶媒体であるメモリ１１０８に格納される。以下、この情報を格納情報と呼ぶ。
【００９３】
図１３（Ｂ）に、本実施形態を家庭用のゲームシステムに適用した場合の例を示す。プレーヤはディスプレイ１２００に映し出されたゲーム画像を見ながら、ゲームコントローラ１２０２、１２０４を操作してゲームを楽しむ。この場合、上記格納情報は、本体システムに着脱自在な情報記憶媒体であるＣＤ１２０６、或いはメモリカード１２０８、１２０９等に格納されている。
【００９４】
図１３（Ｃ）に、ホスト装置１３００と、このホスト装置１３００とネットワーク１３０２（ＬＡＮのような小規模ネットワークや、インターネットのような広域ネットワーク）を介して接続される端末１３０４-1〜１３０４-nとを含むシステムに本実施形態を適用した場合の例を示す。この場合、上記格納情報は、例えばホスト装置１３００が制御可能な磁気ディスク装置、磁気テープ装置、メモリ等の情報記憶媒体１３０６に格納されている。端末１３０４-1〜１３０４-nが、スタンドアロンでゲーム画像、ゲーム音を生成できるものである場合には、ホスト装置１３００からは、ゲーム画像、ゲーム音を生成するためのゲームプログラム等が端末１３０４-1〜１３０４-nに配送される。一方、スタンドアロンで生成できない場合には、ホスト装置１３００がゲーム画像、ゲーム音を生成し、これを端末１３０４-1〜１３０４-nに伝送し端末において出力することになる。
【００９５】
なお、図１３（Ｃ）の構成の場合に、本発明の各手段を、ホスト装置（サーバー）と端末とで分散して実行するようにしてもよい。また、本発明の各手段を実行するための上記格納情報を、ホスト装置（サーバー）の情報記憶媒体と端末の情報記憶媒体に分散して格納するようにしてもよい。
【００９６】
またネットワークに接続する端末は、家庭用ゲームシステムであってもよいし業務用ゲームシステムであってもよい。そして、業務用ゲームシステムをネットワークに接続する場合には、業務用ゲームシステムとの間で情報のやり取りが可能であると共に家庭用ゲームシステムとの間でも情報のやり取りが可能な携帯型情報記憶装置（メモリカード、携帯型ゲーム装置）を用いることが望ましい。
【００９７】
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。
【００９８】
例えば、本発明のうち従属請求項に係る発明においては、従属先の請求項の構成要件の一部を省略する構成とすることもできる。また、本発明の１の独立請求項に係る発明の要部を、他の独立請求項に従属させることもできる。
【００９９】
また、仮想カメラの方向と３次元モデルの方向との相対角度を表す情報は、相対角度に限定されず、相対角度と均等な情報（例えば数学的に均等な情報）も含む。
【０１００】
また、本発明において用意する複数のモデルデータとしては、図５〜図８で説明したようなモデルデータが特に望ましいが、これに限定されるものではない。
【０１０１】
また、本発明において３次元モデルが表現する表示物は、漫画のキャラクタであることが特に望ましいが、これに限定されるものではない。例えば、漫画に登場する他の表示物（車、飛行機、船、家等）や、漫画以外で使用される表示物を３次元モデルで表現した場合にも、本発明は適用できる。
【０１０２】
また本発明は種々のゲーム（格闘ゲーム、シューティングゲーム、ロボット対戦ゲーム、スポーツゲーム、競争ゲーム、ロールプレイングゲーム、音楽演奏ゲーム、ダンスゲーム等）に適用できる。
【０１０３】
また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、画像生成システム、ゲーム画像を生成するシステムボード等の種々の画像生成システムに適用できる。
【図面の簡単な説明】
【図１】本実施形態の画像生成システムのブロック図の例である。
【図２】本実施形態のモデルデータの切り替え手法について説明するための図である。
【図３】モデルデータの読み出し手法について説明するための図である。
【図４】サブモデルについて説明するための図である。
【図５】パーツのローカル位置をモデルデータ間で異ならせる手法について説明するための図である。
【図６】パーツの形状をモデルデータ間で異ならせる手法について説明するための図である。
【図７】パーツの表示・非表示をモデルデータ間で異ならせる手法について説明するための図である。
【図８】パーツの表示・簡略表示をモデルデータ間で異ならせる手法について説明するための図である。
【図９】２Ｄ絵コンテからモデルデータを作成する手法について説明するための図である。
【図１０】モデルデータの補間処理について説明するための図である。
【図１１】本実施形態の詳細な処理例について示すフローチャートである。
【図１２】本実施形態を実現できるハードウェアの構成の一例を示す図である。
【図１３】図１３（Ａ）、（Ｂ）、（Ｃ）は、本実施形態が適用される種々の形態のシステムの例を示す図である。
【符号の説明】
１０、１２、１４、１６  ３次元モデル
２０        仮想カメラ
３０、３２  角
３４、３６  鼻
４０、４２  ２Ｄ絵コンテ（２次元画像）
１００  処理部
１１０  ゲーム処理部
１１２  モデル演算部
１１４  仮想カメラ演算部
１１６  モデルデータ選択部
１１８  補間部
１３０  画像生成部
１３２  ジオメトリ処理部
１４０  描画部
１５０  音生成部
１６０  操作部
１７０  記憶部
１７２  モデルデータ記憶部
１８０  情報記憶媒体
１９０  表示部
１９２  音出力部
１９４  携帯型情報記憶装置
１９６  通信部
【図１】
0004367804.tif 000002
【図２】
0004367804.tif 000003
【図３】
0004367804.tif 000004
【図４】
0004367804.tif 000005
【図５】
0004367804.tif 000006
【図６】
0004367804.tif 000007
【図７】
0004367804.tif 000008
【図８】
0004367804.tif 000009
【図９】
0004367804.tif 000010
【図１０】
0004367804.tif 000011
【図１１】
0004367804.tif 000012
【図１２】
0004367804.tif 000013
【図１３】
0004367804.tif 000014