(57)【特許請求の範囲】
【請求項１】
予め生成された複数のフレーム画像によって構成されるＣＧ映像を再生する処理を行うための画像生成システムであって、
前記ＣＧ映像を記憶する記憶手段と、
前記ＣＧ映像に基づいて所与の演算処理を行う手段と、
前記ＣＧ映像により表現される表示物を含む画像を描画する描画手段と、
を含み、
前記記憶手段が記憶する前記ＣＧ映像が、前記ＣＧ映像を構成する各フレーム画像の各ピクセルの画像データと共に、前記ＣＧ映像を構成する各フレーム画像の各ピクセルに対して予め設定された法線ベクトルデータを含み、
前記所与の演算処理を行う手段が、
前記ＣＧ映像を構成する各フレーム画像の各ピクセルに対して予め設定された法線ベクトルデータに基づいて、所与の演算処理を行うことを特徴とする画像生成システム。
【請求項２】
所与のカメラにより撮影された複数のフレーム画像によって構成される実写映像を再生する処理を行うための画像生成システムであって、
前記実写映像を記憶する記憶手段と、
前記実写映像に基づいて所与の演算処理を行う手段と、
前記実写映像により表現される表示物を含む画像を描画する描画手段と、
を含み、
前記記憶手段が記憶する前記実写映像が、前記実写映像を構成する各フレーム画像の各ピクセルの画像データと共に、前記実写映像を構成する各フレーム画像の各ピクセルに対して予め設定された法線ベクトルデータを含み、
前記所与の演算処理を行う手段が、
前記実写映像を構成する各フレーム画像の各ピクセルに対して予め設定された法線ベクトルデータに基づいて、所与の演算処理を行うことを特徴とする画像生成システム。
【請求項３】
請求項１又は２において、
前記所与の演算処理が、
前記各フレーム画像の各ピクセルに対して予め設定された法線ベクトルデータに基づいて行われる、前記表示物のレンダリング処理であることを特徴とする画像生成システム。
【請求項４】
請求項３において、
前記各フレーム画像の各ピクセルに対して予め設定された法線ベクトルデータに基づいて、前記表示物に環境テクスチャがマッピングされることを特徴とする画像生成システム。
【請求項５】
請求項３又は４において、
前記各フレーム画像の各ピクセルに対して予め設定された法線ベクトルデータに基づいて、前記表示物のシェーディング処理が行われることを特徴とする画像生成システム。
【請求項６】
請求項１〜５のいずれかにおいて、
前記所与の演算処理が、
前記各フレーム画像の各ピクセルに対して予め設定された法線ベクトルデータに基づいて行われる、前記表示物と移動表示物とのヒット処理であることを特徴とする画像生成システム。
【請求項７】
請求項１において、
前記記憶手段が記憶する前記ＣＧ映像が、前記ＣＧ映像を構成する各フレーム画像の各ピクセルに対して予め設定された第１の奥行き値データを含み、
前記描画手段が、
フレーム毎に、前記ＣＧ映像を構成するフレーム画像の各ピクセルに対して予め設定された第１の奥行き値データと移動表示物の第２の奥行き値データとに基づいて陰面消去を行いながら、前記フレーム画像と移動表示物とが合成された画像を描画することを特徴とする画像生成システム。
【請求項８】
請求項２において、
前記記憶手段が記憶する前記実写映像が、前記実写映像を構成する各フレーム画像の各ピクセルに対して予め設定された第１の奥行き値データを含み、
前記描画手段が、
フレーム毎に、前記実写映像を構成するフレーム画像の各ピクセルに対して予め設定された第１の奥行き値データと移動表示物の第２の奥行き値データとに基づいて陰面消去を行いながら、前記フレーム画像と移動表示物とが合成された画像を描画することを特徴とする画像生成システム。
【請求項９】
予め生成された複数のフレーム画像によって構成されるＣＧ映像を再生する処理を行うための画像生成システムのためのプログラムを記憶した、コンピュータが使用可能な情報記憶媒体であって、
前記ＣＧ映像を記憶する記憶手段と、
前記ＣＧ映像に基づいて所与の演算処理を行う手段と、
前記ＣＧ映像により表現される表示物を含む画像を描画する描画手段として、コンピュータを機能させるプログラムを記憶した情報記憶媒体であって、
前記記憶手段が記憶する前記ＣＧ映像が、前記ＣＧ映像を構成する各フレーム画像の各ピクセルの画像データと共に、前記ＣＧ映像を構成する各フレーム画像の各ピクセルに対して予め設定された法線ベクトルデータを含み、
前記所与の演算処理を行う手段が、
前記ＣＧ映像を構成する各フレーム画像の各ピクセルに対して予め設定された法線ベクトルデータに基づいて、所与の演算処理を行うことを特徴とする情報記憶媒体。
【請求項１０】
所与のカメラにより撮影された複数のフレーム画像によって構成される実写映像を再生する処理を行うための画像生成システムのためのプログラムを記憶した、コンピュータが使用可能な情報記憶媒体であって、
前記実写映像を記憶する記憶手段と、
前記実写映像に基づいて所与の演算処理を行う手段と、
前記実写映像により表現される表示物を含む画像を描画する描画手段として、コンピュータを機能させるプログラムを記憶した情報記憶媒体であって、
前記記憶手段が記憶する前記実写映像が、前記実写映像を構成する各フレーム画像の各ピクセルの画像データと共に、前記実写映像を構成する各フレーム画像の各ピクセルに対して予め設定された法線ベクトルデータを含み、
前記所与の演算処理を行う手段が、
前記実写映像を構成する各フレーム画像の各ピクセルに対して予め設定された法線ベクトルデータに基づいて、所与の演算処理を行うことを特徴とする情報記憶媒体。
【請求項１１】
請求項９又は１０において、
前記所与の演算処理が、
前記各フレーム画像の各ピクセルに対して予め設定された法線ベクトルデータに基づいて行われる、前記表示物のレンダリング処理であることを特徴とする情報記憶媒体。
【請求項１２】
請求項１１において、
前記各フレーム画像の各ピクセルに対して予め設定された法線ベクトルデータに基づいて、前記表示物に環境テクスチャがマッピングされることを特徴とする情報記憶媒体。
【請求項１３】
請求項１１又は１２において、
前記各フレーム画像の各ピクセルに対して予め設定された法線ベクトルデータに基づいて、前記表示物のシェーディング処理が行われることを特徴とする情報記憶媒体。
【請求項１４】
請求項９〜１３のいずれかにおいて、
前記所与の演算処理が、
前記各フレーム画像の各ピクセルに対して予め設定された法線ベクトルデータに基づいて行われる、前記表示物と移動表示物とのヒット処理であることを特徴とする情報記憶媒体。
【請求項１５】
請求項９において、
前記記憶手段が記憶する前記ＣＧ映像が、前記ＣＧ映像を構成する各フレーム画像の各ピクセルに対して予め設定された第１の奥行き値データを含み、
前記描画手段が、
フレーム毎に、前記ＣＧ映像を構成するフレーム画像の各ピクセルに対して予め設定された第１の奥行き値データと移動表示物の第２の奥行き値データとに基づいて陰面消去を行いながら、前記フレーム画像と移動表示物とが合成された画像を描画することを特徴とする情報記憶媒体。
【請求項１６】
請求項１０において、
前記記憶手段が記憶する前記実写映像が、前記実写映像を構成する各フレーム画像の各ピクセルに対して予め設定された第１の奥行き値データを含み、
前記描画手段が、
フレーム毎に、前記実写映像を構成するフレーム画像の各ピクセルに対して予め設定された第１の奥行き値データと移動表示物の第２の奥行き値データとに基づいて陰面消去を行いながら、前記フレーム画像と移動表示物とが合成された画像を描画することを特徴とする情報記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像生成システム及び情報記憶媒体に関する。
【０００２】
【背景技術及び発明が解決しようとする課題】
従来より、仮想的な３次元空間であるオブジェクト空間内の所与の視点から見える画像を生成する画像生成システムが知られており、いわゆる仮想現実を体験できるものとして人気が高い。
【０００３】
このような画像生成システムでは、ゲームのオープニング、幕間、エンディングなどにおいて、プレーヤのゲーム意欲を盛り上げたりプレーヤの感動を高めるために、いわゆるムービー（動画）と呼ばれるものが再生される。このムービーでは、ＣＧツールにより制作されたＣＧ映像や実写映像が再生されるため、ポリゴン（プリミティブ面）により構成された３次元オブジェクトをリアルタイムに動かすことで生成される画像に比べて、よりリアルで写実的な表現が可能になる。
【０００４】
しかしながら、これまでの画像生成システムでは、ムービー再生のためのデータであるムービーデータが、２次元画像データや音データしか含まなかった。従って、ムービーは、シナリオの説明などの補助的な役割しか果たしていなかった。また、周囲の状況によってムービーの内容が変化するようなこともなかったため、表現される画像が今一つ画一的で単調であった。
【０００５】
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、周囲の状況なども反映することができるムービーの表示が可能な画像生成システム及び情報記憶媒体を提供することにある。
【０００６】
【課題を解決するための手段】
上記課題を解決するために、本発明は、画像を生成するための画像生成システムであって、ムービー再生のためのデータであって法線ベクトルデータを含むムービーデータを記憶するムービーデータ記憶手段と、ムービーデータが含む法線ベクトルデータに基づいて所与の演算処理を行う手段と、ムービーを含む画像を描画する描画手段とを含むことを特徴とする。また本発明に係る情報記憶媒体は、コンピュータにより使用可能な情報記憶媒体であって、上記手段を実現（実行）するためのプログラムを含むことを特徴とする。また本発明に係るプログラムは、コンピュータにより使用可能なプログラム（搬送波に具現化されるプログラムを含む）であって、上記手段を実現（実行）するための処理ルーチンを含むことを特徴とする。
【０００７】
本発明によれば、ムービー再生のためのデータであるムービーデータ（ＣＧ映像、実写映像等）が、法線ベクトルデータを含む。そして、この法線ベクトルデータに基づいて、レンダリング処理やヒット処理などの所与の演算処理が行われる。従って、本発明によれば、この法線ベクトルデータを用いて、周囲の状況などをムービーに反映できるようになり、従来は単調で画一的であったムービー表示を、多様でリアルなものにできるようになる。しかも、本発明によれば、表示物がムービーで表現されるため、表示物をポリゴンで構成しその画像をリアルタイムに生成する手法に比べて、よりリアルで写実的な画像表現が可能になる。
【０００８】
また本発明に係る画像生成システム、情報記憶媒体及びプログラムは、前記所与の演算処理が、ムービーデータが含む法線ベクトルデータに基づいて行われる、ムービーにより表現される表示物のレンダリング処理であることを特徴とする。このようにすれば、ムービー表示物（ムービーにより表現される表示物）の元画像が、ムービーデータが含む法線ベクトルデータに基づいて変化するようになる。従って、ムービー表示物の表現を、更に多様でリアルなものにすることができる。
【０００９】
また本発明に係る画像生成システム、情報記憶媒体及びプログラムは、ムービーデータが含む法線ベクトルデータに基づいて、ムービーにより表現される表示物に環境テクスチャがマッピングされることを特徴とする。このようにすることで、ムービー表示物の周囲の環境をムービー表示物に映し込むことが可能になり、ムービー表示物に、メタリックな質感や透明感のある質感を持たせることが可能になる。
【００１０】
また本発明に係る画像生成システム、情報記憶媒体及びプログラムは、ムービーデータが含む法線ベクトルデータに基づいて、ムービーにより表現される表示物のシェーディング処理が行われることを特徴とする。このようにすれば、ムービー表示物の陰影づけを、周囲の状況により変化させることが可能になり、ムービー表示物の多様な表現が可能になる。
【００１１】
また本発明に係る画像生成システム、情報記憶媒体及びプログラムは、前記所与の演算処理が、ムービーデータが含む法線ベクトルデータに基づいて行われる、ムービーにより表現される表示物と移動オブジェクトとのヒット処理であることを特徴とする。このようにすれば、ムービー表示物が、あたかも３次元表示物であるかのような錯覚をプレーヤに与えることが可能になり、プレーヤの仮想現実感を高めることができる。
【００１２】
また本発明に係る画像生成システム、情報記憶媒体及びプログラムは、前記ムービーデータ記憶手段に記憶されるムービーデータが、第１の奥行き値データを含み、前記描画手段が、ムービーデータが含む第１の奥行き値データと移動オブジェクトの第２の奥行き値データとに基づいて陰面消去を行いながら、ムービーと移動オブジェクトとが合成された画像を描画することを特徴とする。このようにすれば、ムービー表示物の物陰に移動オブジェクトが隠れるなどの画像表現が可能になる。従って、２次元映像であるムービーにあたかも奥行きがあるかのように、プレーヤを錯覚させることができ、プレーヤの仮想現実感を高めることができる。
【００１３】
なお、第１、第２の奥行き値データに基づく陰面消去は、Ｚバッファを用いたＺバッファ法により行うことが望ましい。また移動オブジェクトは、複数のプリミティブ面（ポリゴン、曲面等）により構成することが望ましい。
【００１４】
【発明の実施の形態】
以下、本発明の好適な実施形態について図面を用いて説明する。
【００１５】
１．構成
図１に、本実施形態のブロック図の一例を示す。なお同図において本実施形態は、少なくとも処理部１００を含めばよく（或いは処理部１００と記憶部１７０、或いは処理部１００と記憶部１７０と情報記憶媒体１８０を含めばよく）、それ以外のブロック（例えば操作部１６０、表示部１９０、音出力部１９２、携帯型情報記憶装置１９４、通信部１９６）については、任意の構成要素とすることができる。
【００１６】
ここで処理部１００は、システム全体の制御、システム内の各ブロックへの命令の指示、ゲーム処理、画像処理、音処理などの各種の処理を行うものであり、その機能は、各種プロセッサ（ＣＰＵ、ＤＳＰ等）、或いはＡＳＩＣ（ゲートアレイ等）などのハードウェアや、所与のプログラム（ゲームプログラム）により実現できる。
【００１７】
操作部１６０は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、筺体などのハードウェアにより実現できる。
【００１８】
記憶部１７０は、処理部１００や通信部１９６などのワーク領域となるもので、その機能はＲＡＭなどのハードウェアにより実現できる。
【００１９】
情報記憶媒体（コンピュータにより使用可能な記憶媒体）１８０は、プログラムやデータなどの情報を格納するものであり、その機能は、光ディスク（ＣＤ、ＤＶＤ）、光磁気ディスク（ＭＯ）、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ（ＲＯＭ）などのハードウェアにより実現できる。処理部１００は、この情報記憶媒体１８０に格納される情報に基づいて本発明（本実施形態）の種々の処理を行う。即ち情報記憶媒体１８０には、本発明（本実施形態）の手段（特に処理部１００に含まれるブロック）を実行（実現）するための情報（プログラム或いはデータ）が格納される。
【００２０】
なお、情報記憶媒体１８０に格納される情報の一部又は全部は、システムへの電源投入時等に記憶部１７０に転送されることになる。また情報記憶媒体１８０に記憶される情報は、本発明の処理を行うためのプログラムコード、画像データ、音データ、表示物の形状データ、テーブルデータ、リストデータ、本発明の処理を指示するための情報、その指示に従って処理を行うための情報等の少なくとも１つを含むものである。
【００２１】
表示部１９０は、本実施形態により生成された画像を出力するものであり、その機能は、ＣＲＴ、ＬＣＤ、或いはＨＭＤ（ヘッドマウントディスプレイ）などのハードウェアにより実現できる。
【００２２】
音出力部１９２は、本実施形態により生成された音を出力するものであり、その機能は、スピーカなどのハードウェアにより実現できる。
【００２３】
携帯型情報記憶装置１９４は、プレーヤの個人データやセーブデータなどが記憶されるものであり、この携帯型情報記憶装置１９４としては、メモリカードや携帯型ゲーム装置などを考えることができる。
【００２４】
通信部１９６は、外部（例えばホスト装置や他の画像生成システム）との間で通信を行うための各種の制御を行うものであり、その機能は、各種プロセッサ、或いは通信用ＡＳＩＣなどのハードウェアや、プログラムなどにより実現できる。
【００２５】
なお本発明（本実施形態）の手段を実行するためのプログラム或いはデータは、ホスト装置（サーバー）が有する情報記憶媒体からネットワーク及び通信部１９６を介して情報記憶媒体１８０に配信するようにしてもよい。このようなホスト装置（サーバー）の情報記憶媒体の使用も本発明の範囲内に含まれる。
【００２６】
処理部１００は、ゲーム処理部１１０、画像生成部１３０、音生成部１５０を含む。
【００２７】
ここでゲーム処理部１１０は、コイン（代価）の受け付け処理、各種モードの設定処理、ゲームの進行処理、選択画面の設定処理、オブジェクト（１又は複数のプリミティブ面）の位置や回転角度（Ｘ、Ｙ又はＺ軸回り回転角度）を求める処理、オブジェクトを動作させる処理（モーション処理）、視点の位置（仮想カメラの位置）や視線角度（仮想カメラの回転角度）を求める処理、マップオブジェクトなどのオブジェクトをオブジェクト空間へ配置する処理、ヒットチェック処理、ゲーム結果（成果、成績）を演算する処理、複数のプレーヤが共通のゲーム空間でプレイするための処理、或いはゲームオーバー処理などの種々のゲーム処理を、操作部１６０からの操作データや、携帯型情報記憶装置１９４からの個人データ、保存データや、ゲームプログラムなどに基づいて行う。
【００２８】
画像生成部１３０は、ゲーム処理部１１０からの指示等にしたがって各種の画像処理を行い、例えばオブジェクト空間内で仮想カメラ（視点）から見える画像を生成して、表示部１９０に出力する。また、音生成部１５０は、ゲーム処理部１１０からの指示等にしたがって各種の音処理を行い、ＢＧＭ、効果音、音声などの音を生成し、音出力部１９２に出力する。
【００２９】
なお、ゲーム処理部１１０、画像生成部１３０、音生成部１５０の機能は、その全てをハードウェアにより実現してもよいし、その全てをプログラムにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。
【００３０】
ゲーム処理部１１０は、移動・動作演算部１１２、ヒット処理部１１４を含む。
【００３１】
ここで移動・動作演算部１１２は、キャラクタなどの移動オブジェクトの移動情報（位置データ、回転角度データ）や動作情報（移動オブジェクトの各パーツの位置データ、回転角度データ）を演算するものであり、例えば、操作部１６０によりプレーヤが入力した操作データやゲームプログラムなどに基づいて、移動オブジェクトを移動させたり動作させたりする処理を行う。
【００３２】
より具体的には、移動・動作演算部１１４は、移動オブジェクトの位置や回転角度を例えば１フレーム（１／６０秒）毎に求める処理を行う。例えば（ｋ−１）フレームでの移動オブジェクトの位置をＰＭk-1、速度をＶＭk-1、加速度をＡＭk-1、１フレームの時間を△ｔとする。するとｋフレームでの移動オブジェクトの位置ＰＭk、速度ＶＭkは例えば下式（１）、（２）のように求められる。
【００３３】
ＰＭk＝ＰＭk-1＋ＶＭk-1×△ｔ              （１）
ＶＭk＝ＶＭk-1＋ＡＭk-1×△ｔ              （２）
ヒット処理部１１４は、ムービー表示物（ムービーにより表現される表示物）とショットとのヒット処理を行う。より具体的には本実施形態では、ムービーデータ記憶部１７２に記憶されるムービーデータが、法線ベクトルデータを含む。そして、ヒット処理部１１４が含むヒットチェック部１１６が、ムービー表示物（例えば敵ボスキャラクタ）にショット（例えば矢、弾丸）がヒットしたか否かを判断する。そして、ヒットしたと判断された場合には、ヒット処理部１１４は、ヒット時の状況に応じた種々の処理を行う。例えば、ショットのヒット方向と、ヒットした場所に設定されている法線ベクトルとに基づいて、ショットの跳ね返り方向を計算し、その方向にショットを跳ね返す処理を行う。或いは、ショットが壁などにヒットした場合には、ショットを消滅させる処理を行う。
【００３４】
画像生成部１３０は、ジオメトリ処理部１３２（３次元演算部）、描画部１４０を含む。
【００３５】
ここで、ジオメトリ処理部１３２は、座標変換、クリッピング処理、透視変換、或いは光源計算などの種々のジオメトリ処理（３次元演算）を行う。
【００３６】
描画部１４０は、オブジェクトやテクスチャのデータなどに基づいて、オブジェクト空間において仮想カメラから見える画像を描画する処理を行う。そして、本実施形態の描画部１４０は、ムービーを含む画像を描画する。
【００３７】
描画部１４０は、陰面消去部１４２、レンダリング部１４４を含み、レンダリング部１４４は、テクスチャマッピング部１４６、シェーディング部１４８を含む。
【００３８】
ここで陰面消去部１４２は、ムービーデータ記憶部１７２に記憶されるムービーデータが含む奥行き値Ｚ１と、キャラクタなどの移動オブジェクトの奥行き値Ｚ２とに基づいて陰面消去を行う。この場合、本実施形態の陰面消去部１４２は、Ｚバッファ１７４を用いてＺバッファ法のアルゴリズムにしたがった陰面消去を行う。
【００３９】
レンダリング部１４４は、キャラクタなどの移動オブジェクト、ボスキャラクタなどのムービー表示物、背景を表示部１９０に表示するためのレンダリング処理を行う。この場合、本実施形態のレンダリング部１４４は、ムービーデータ記憶部１７２に記憶されるムービーデータが含む法線ベクトルデータに基づいて、レンダリング処理を行うことになる。
【００４０】
より具体的には、レンダリング部１４４が含むテクスチャマッピング部１４６は、ムービーデータが含む法線ベクトルデータに基づいて、テクスチャ記憶部１７６に記憶される環境テクスチャをムービー表示物にマッピングする処理を行う。また、レンダリング部１４４が含むシェーディング部１４８は、ムービーデータが含む法線ベクトルデータに基づいて、ムービー表示物に陰影をつける処理を行う。
【００４１】
なお、本実施形態の画像生成システムは、１人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、このようなシングルプレーヤモードのみならず、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。
【００４２】
また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、１つの端末を用いて生成してもよいし、ネットワーク（伝送ライン、通信回線）などで接続された複数の端末を用いて生成してもよい。
【００４３】
２．本実施形態の特徴
本実施形態では、ムービー再生のためのデータであるムービーデータに法線ベクトルのデータを含ませている。そして、この法線ベクトルデータに基づいて種々の演算処理を行っている。
【００４４】
より具体的には例えば図２に示すように、ムービーを構成する各フレーム画像の各ピクセルに対して、画像データ（ＲＧＢ）の他に、法線ベクトルＮＶのデータを含ませる。そして、このＮＶに基づいて、レンダリング処理（環境テクスチャマッピング、シェーディング処理）やヒット処理などの種々の演算処理を行う。
【００４５】
例えば図３（Ａ）では、プレーヤが操作するキャラクタ１０（移動オブジェクト）は、ダンジョン（迷宮）の中でボスキャラクタ７０（ムービー表示物）と対峙している。
【００４６】
この場合、本実施形態では、ボスキャラクタ７０はムービーにより表現されているため、非常にリアルな映像になっている。また、ムービー表示物であるボスキャラクタ７０には、図３（Ｂ）に示すように法線ベクトルＮＶが予め設定されている。即ちボスキャラクタ７０を表示するためのムービーデータの各フレームの画像の各ピクセルに対して、ボスキャラクタ７０の各面の方向を示す法線ベクトルＮＶのデータが設定されている。
【００４７】
そして本実施形態では図４に示すように、この法線ベクトルＮＶ（ＮＸ、ＮＹ、ＮＺ）に基づいて、環境テクスチャのマッピングのためのＵ、Ｖ座標（広義にはテクスチャ座標）を求める。そして、このＵ、Ｖ座標に基づいて、テクスチャ記憶部から対応するテクスチャが読み出されることになる。
【００４８】
なお、テクスチャ空間での実際のテクスチャ座標ＴＸ、ＴＹは、上記Ｕ、Ｖ座標と、テクスチャ座標のオフセットアドレス（ベースアドレス）と、テクスチャのサイズ情報などに基づいて特定されることになる。
【００４９】
また、テクスチャ空間に用意される環境テクスチャ８０は、ボスキャラクタ７０から上方向に魚眼レンズで見た時に得られるような画像になっており、プレーヤが操作するキャラクタ１０や、ダンジョン内にある出入り口７２、炎７４、壁７６が映し出されている。
【００５０】
このような環境テクスチャ８０とボスキャラクタ７０の下地テクスチャ（元テクスチャ）とをボスキャラクタ７０にマルチテクスチャマッピングすることで、図５に示すような画像を生成できる。即ち、ボスキャラクタ７０に、その周囲の環境（キャラクタ１０、出入り口７２、炎７４、壁７６等）が映り込むようになり、よりリアルで写実的な画像を生成できるようになる。
【００５１】
例えば、図５において、プレーヤの操作によりキャラクタ１０が動けば、ボスキャラクタ７０に映り込むキャラクタ１０の画像も動くようになる。また、炎７４が揺らめけば、ボスキャラクタ７０に映り込む炎７４の画像も揺らめくようになる。またキャラクタ１０が例えば火を放てば、その火がボスキャラクタ７０に映り込むようになる。
【００５２】
このように本実施形態によれば、周囲の環境の変化の影響を、ムービー表示物であるボスキャラクタ７０の画像に反映できるようになり、これまでにないリアルな画像を生成できる。
【００５３】
即ち、ボスキャラクタ７０をムービーで表現せずに、ボスキャラクタ７０の画像をリアルタイムに生成する手法においても、リアルタイムに計算した法線ベクトルを用いてボスキャラクタ７０に環境テクスチャをマッピングすることで、周囲の環境をボスキャラクタ７０に映し込むことができる。
【００５４】
しかしながら、この手法では、ボスキャラクタ７０の全てのピクセルについての法線ベクトルをリアルタイムに計算しなければならない。従って、処理負荷が非常に重く、１フレーム内に全ての処理を終了するというリアルタイム処理の要請に応えることが難しい。このため、ボスキャラクタ７０の大きさを小さくしたり、ボスキャラクタ７０のポリゴン数を少なくしたりするなどの工夫が必要になる。
【００５５】
また、複数のポリゴンで構成されたボスキャラクタ７０の画像をリアルタイムに生成する手法では、処理できるポリゴン数に限界があるため、得られる画像は今一つリアリティが低くなり、プレーヤの仮想現実感を高めることができない。
【００５６】
これに対して本実施形態では、法線ベクトルのデータは、ＣＧツールなどを用いて予め作成され、ムービーデータに内包される。従って、各ピクセルの法線ベクトルをリアルタイムに計算する必要がなく、ボスキャラクタ７０の画像をリアルタイムに生成する手法に比べて、画像生成システムの処理負担を大幅に軽減できる。
【００５７】
また本実施形態では、ＣＧツールなどにより予め作り込まれたムービーを用いてボスキャラクタ７０が表現される。従って、ボスキャラクタ７０の画像をリアルタイムに生成する手法に比べて、よりリアルで写実的な画像を生成できるようになる。
【００５８】
なお、本実施形態におけるムービーは、ＣＧツールで制作した一連のセル画像により構成されるＣＧ映像でもよいし、カメラにより撮影した実写映像でもよい。
【００５９】
ムービーとしてＣＧ映像を用いる場合には、ＣＧの作成時に生成された各ピクセルの法線ベクトルデータを、ムービーデータの中に含ませるようにすればよい。即ち、ＣＧの作成時に生成された法線ベクトルデータは通常は破棄されるが、これを破棄せずにムービーデータの中に含ませるようにする。このようにすることで、法線ベクトルデータを含むムービーデータを、それほど手間をかけることなく用意することができるようになる。
【００６０】
なお、法線ベクトルは、全てのフレーム画像に設定しもよいし、一部のフレーム画像にのみ設定しもよい。また、法線ベクトルは、ムービーを構成するフレーム画像の全てのピクセルに対して設定しもよいし、一部のピクセルにのみ設定してもよい。また、法線ベクトルのデータを圧縮してムービーデータに含ませるようにしてもよい。
【００６１】
また、ムービーは、図５のように、ボスキャラクタなどの移動表示物の表現に用いてもよいし、背景として用いてもよい。そして、ムービーを、ボスキャラクタの表現に用いる場合には、ムービー表示のための仮想的なスクリーンを用意し、この仮想スクリーンに、ボスキャラクタのムービーを投影するようにする。或いは、ムービー表示のためのポリゴン（プリミティブ面）を用意し、ムービーをテクスチャとしてこのポリゴンにマッピングするようにしてもよい。
【００６２】
さて、法線ベクトルデータを用いる演算処理としては種々のものを考えることができる。
【００６３】
例えば図６では、ムービーデータが含む法線ベクトルデータに基づいて、シェーディング処理を行っている。
【００６４】
即ち、光源８２（図５の炎７４、キャラクタ１０が放った光等）からの光の入射方向（或いは光源の位置）と、法線ベクトルＮＶの方向と、照明モデルと基づいて、ボスキャラクタ７０のシェーディング処理を行う。図７（Ａ）を例にとれば、光源８２からの光の入射方向ＬＤと法線ベクトルＮＶの方向のなす角度θ（入射角）に基づいて、ピクセル８４での輝度を変化させている。例えばｃｏｓθが大きいピクセルでは、その輝度を高くし、ｃｏｓθが小さいピクセルは、その輝度を低くする。
【００６５】
このようにすることで、光源８２からの光の入射方向（或いは光源の位置）が変化すると、ムービー表示物であるボスキャラクタ７０の陰影づけも変化するようになる。従って、これまでは単調に再生されるにすぎなかったムービーが、周囲の状況によってその表示内容が変化するようになるため、これまでにないリアルな画像表現を実現できる。
【００６６】
また、ムービーデーターが含む法線ベクトルデータに基づいて、ヒット処理を行うようにしてもよい。
【００６７】
例えば図８（Ａ）では、プレーヤが操作するキャラクタ１０が、ボスキャラクタ７０に対して矢１２を放っている。そして図８（Ｂ）では、この放った矢１２がボスキャラクタ７０にヒットして跳ね返っている。この場合に、本実施形態では、矢１２の跳ね返り方向を、ボスキャラクタ７０のムービーデータが含む法線ベクトルデータに基づいて求めている。
【００６８】
図７（Ｂ）を例にとれば、矢１２の入射方向ＨＤと法線ベクトルＮＶの方向とのなす角度をα、矢１２の跳ね返り方向ＲＤと法線ベクトルＮＶの方向とのなす角度をβとした場合に、α＝βとなるように矢１２を跳ね返らせる。
【００６９】
このようにすれば、矢１２がヒットした面に応じて、矢１２の跳ね返り方向が変化するようになる。従って、ボスキャラクタ７０があたかもポリゴンの面を持つ立体的な３次元オブジェクトであるかのような錯覚をプレーヤに与えることができ、プレーヤの仮想現実感を向上できる。
【００７０】
例えば、ボスキャラクタ７０を複数のポリゴンで構成し、ボスキャラクタ７０の画像をリアルタイムに生成する手法によっても、リアルタイムに計算した法線ベクトルの方向に基づいて、矢１２の跳ね返り方向を変化させることができる。
【００７１】
しかしながら、この手法では、ボスキャラクタ７０の全てのピクセルについての法線ベクトルをリアルタイムに計算しなければならないため、処理負荷が非常に重い。また、リアルタイムに処理できるポリゴンの枚数には限界があるため、得られる画像が不自然で人工的になってしまう。
【００７２】
これに対して本実施形態では、ボスキャラクタ７０の画像はＣＧツールなどを用いて予め時間をかけて作成されているため、ボスキャラクタ７０を多数のポリゴンで構成できる。或いは、ボスキャラクタ７０の画像を実写により作成することもできる。従って、得られるボスキャラクタ７０の画像は非常にリアルなものになる。
【００７３】
しかも本実施形態では、ムービーデータが含む法線ベクトルデータに基づいてヒット処理が行われるため、２次元のムービー画像を３次元の画像であるかのようにプレーヤを錯覚させることができる。従って、プレーヤの仮想現実感を、より一層高めることができる。
【００７４】
なお、ムービーデータに含ませることができるデータとしては、法線ベクトルデータ以外にも種々のものを考えることができる。
【００７５】
例えば図９では、ムービーデータの中に、画像データ（ＲＧＢ）、法線ベクトルＮＶの他に、奥行き値Ｚ１のデータを含ませている。そして、この奥行き値Ｚ１とキャラクタ（移動オブジェクト）の奥行き値Ｚ２とに基づいて、Ｚバッファ法などのアルゴリズムにしたがった陰面消去を行いながら、ムービーとキャラクタが合成された画像を描画する。
【００７６】
このようにすることで図１０（Ａ）に示すように、ムービーの絵の中にキャラクタを割り込ませることができるようになる。即ち、ムービーで表現されるタンス２０（ムービー表示物）の物陰にキャラクタ１０が隠れたり、ムービーで表現される出入り口２２からキャラクタが出て行くなどの画像表現が可能になる。或いは、ムービーで表現される窓２４の向こう側からキャラクタ１０が覗き込むなどの画像表現も可能になる。
【００７７】
即ち、これまでのムービーでは、ムービーデータが画像データや音データしか含まず、奥行き値のデータを含まなかった。従って、ムービーとキャラクタの合成画像を生成しようとすると、図１０（Ｂ）に示すようにキャラクタ１０が常に手前に表示されるようになってしまい、リアルが画像を生成できなかった。
【００７８】
本実施形態によれば、図１０（Ａ）に示すように、キャラクタ１０の奥行き値Ｚ２の大きさに応じて、キャラクタ１０がムービー表示物の物陰に隠れたり、隠れなかったりするようになるため、よりリアルで臨場感溢れる画像を生成できる。
【００７９】
なお、ムービーとしてＣＧ映像を用いる場合には、ＣＧの作成時に生じた各ピクセルの奥行き値のデータを破棄せずにムービーデータの中に含ませるようにする。即ち、ＣＧツールのＺバッファに記憶される最終的な奥行き値のデータは、通常は破棄されるが、これを破棄せずに、画像データ（ＲＧＢ）と共にムービーデータの中に含ませるようにする。このようにすることで、奥行き値のデータを含むムービーデータを、それほど手間をかけることなく用意することができるようになる。
【００８０】
一方、ムービーとして実写映像を用いる場合には以下のようにする。
【００８１】
例えば図１１に示すように、被写体となる人物３０、机３１、椅子３２等を撮影用のカメラ５０で撮影する際に、複数台の位置測定用のカメラ５２、５４を用いて人物３０、机３１、椅子３２を異なる方向から撮影する。そして、得られた画像を用いて数値計算を行い、三角測量の原理で人物３０、机３１、椅子３２の奥行き値（位置）を求める。そして、求められた奥行き値を、撮影用のカメラ５０により得られたムービーデータ（実写映像データ）の中に含ませるようにする。
【００８２】
なお、人物３０、机３１、椅子３２のおおよその奥行き値がわかれば十分である場合には、即ち、キャラクタが、人物３０、机３１、椅子３２の手前に位置するか後ろに隠れるかが判別できれば十分である場合には、次のようにすればよい。即ち、これらの被写体の代表点にピンポン玉などのターゲット３３〜４０を取り付け、これらターゲット３３〜４０の位置をカメラ５２、５４で測定することで、被写体の奥行き値を特定する。
【００８３】
なお、この場合、ターゲット３３〜４０は、撮影用のカメラ５０から見えない位置に取り付けることが望ましい。例えば人物３０の場合には、人物３０の後頭部や背中にターゲットを取り付ける。そして、位置測定用のカメラ５２、５４を人物３０の後方や頭上に設置して人物３０を撮影し、人物３０の奥行き値を特定する。
【００８４】
また、カメラ５０により撮影する際に、壁６０を青色にし（ブルーバック）、別に用意された背景と、人物３０、机３１、椅子３２とを、クロマキー合成するようにしてもよい。この場合に、別に用意された背景の奥行き値は例えば無限大に設定し、人物３０、机３１、椅子３２の奥行き値は、カメラ５２、５４による測定で得られた値を設定する。このようにすれば、より正確な奥行き値を設定できる。
【００８５】
また、カメラ５２、５４を用いる代わりに、超音波や電磁波とそれを受信する受信機を用いて奥行き値を求めてもよい。例えば、ターゲットから超音波や電磁波を発信して、ターゲットとは別の位置に設置された１又は複数の受信機で受信する。そして、受信機への超音波や電磁波の到達時間や、複数の受信機への到達時間の差に基づいて、奥行き値（位置）を求めるようにする。
【００８６】
なお、ムービーデータに含ませるデータとしては、以上に説明した法線ベクトルＮＶ、奥行き値Ｚ１以外にも、ヒットエリアデータ（ムービー表示物のヒットエリアを特定するためのデータ）、移動データ（キャラクタなどの移動オブジェクトの移動経路や移動値を特定するためのデータ）、透明度データ（ムービー表示物の透明度を設定するためのデータ）等、種々のデータを考えることができる。
【００８７】
例えばムービーデータにヒットエリアデータを含ませれば、図８（Ａ）、（Ｂ）において、移動オブジェクト（キャラクタ１０、矢１２）とムービー表示物（ボスキャラクタ７０）との精密なヒットチェックを実現できるようになる。
【００８８】
また、ムービーデータに移動データを含ませれば、移動オブジェクトとムービー表示物とのヒット後に、移動オブジェクトを適正な移動経路で移動させたり、ムービー表示物の動きに連動して移動オブジェクトを移動させたりすることが可能になる。
【００８９】
３．本実施形態の処理
次に、本実施形態の処理の詳細例について、図１２、図１３、図１４、図１５、図１６のフローチャートを用いて説明する。
【００９０】
図１２は、全体処理に関するフローチャートである。
【００９１】
画像生成システムがリセットされると、ハードウェアの初期化処理が行われる（ステップＳ１）。そして、ＭＯＤＥ（システムのメインモード）がＡＴＴＲ（アトラクション）に設定される（ステップＳ２）。
【００９２】
次に、フレーム開始の割り込みが発生したか否かを判断し（ステップＳ３）、発生した場合には、フレームバッファを切り替える（ステップＳ４）。即ち前のフレームで画像を描画したフレームバッファを表示用のフレームバッファに切り替え、前のフレームで画像を表示したフレームバッファを描画用のフレームバッファに切り替える。
【００９３】
次に、ＭＯＤＥが、ＡＴＴＲ、ＩＮＩＴ、ＧＡＭＥ、ＥＮＤＩＮＧのいずれに設定されているか否かを判断する（ステップＳ５〜Ｓ８）。そして、ＡＴＴＲ、ＩＮＩＴ、ＧＡＭＥ、ＥＮＤＩＮＧに設定されていた場合には、各々、アトラクション、ゲーム初期化、ゲームメイン、エンディングの処理に移行する（ステップＳ９〜Ｓ１２）。なお、ＭＯＤＥがＯＶＥＲに設定されていた場合にはゲームオーバー処理に移行する（ステップＳ１３）。
【００９４】
そして、上記の処理の終了後、描画処理を行う（ステップＳ１４）。この場合に本実施形態では、ムービーデータが含む法線ベクトルデータに基づいて、レンダリング処理やヒット処理を行う。また、ムービーデータが含む奥行き値Ｚ１や移動オブジェクトの奥行き値Ｚ２に基づいて、Ｚバッファを使用したＺバッファ法により、陰面消去を行う。
【００９５】
図１３は、図１２のステップＳ１１のゲームメイン処理のフローチャートである。
【００９６】
まず、ＭＯＤＥＳＵＢ（システムのサブモード）が、ＳＥＬ、ＩＮＴＲＯ、ＭＯＶＩＥ、ＷＩＮのいずれに設定されているかを判断する（ステップＳ２０〜Ｓ２３）。そして、ＳＥＬ、ＩＮＴＲＯ、ＭＯＶＩＥ、ＷＩＮに設定されていた場合には、各々、キャラクタ選択、イントロダクション、ムービープレイ、勝利の処理に移行する（ステップＳ２４〜Ｓ２７）。なお、ＭＯＤＥＳＵＢがＬＯＳＥに設定されていた場合には敗北処理に移行する（Ｓ２８）。
【００９７】
図１４は、図１３のステップＳ２６のムービープレイ処理のフローチャートである。
【００９８】
まず、ムービーデータのストリームをメインメモリに読み込む（ステップＳ３０）。そして、読み込んだムービーデータをワークバッファに展開する（ステップＳ３１）。より具体的には、ＲＧＢ、奥行き値Ｚ１、ヒットエリアフラグＨＦ、高さＨＨ、移動経路ＭＲ、移動値ＭＶ、法線ベクトルＮＶ、音ＳＤのデータを、各々、ＲＧＢ、Ｚ１、ＨＦ、ＨＨ、ＭＲ、ＭＶ、ＮＶ、ＳＤのワークバッファに展開する。
【００９９】
次に、キャラクタ（プレーヤが操作するキャラクタ）の移動処理を行い（ステップＳ３２）、ヒット処理を行う（ステップＳ３３）。そして、勝敗の判定処理を行う（ステップＳ３４）。そして、プレーヤが勝利したか否かを判断し（ステップＳ３５）、勝利した場合にはＭＯＤＥＳＵＢにＷＩＮを設定する（ステップＳ３６）。一方、勝利しなかった場合にはプレーヤが敗北したか否かを判断し（ステップＳ３７）、敗北した場合にはＭＯＤＥＳＵＢにＬＯＳＥを設定する（ステップＳ３８）。
【０１００】
次に、ステップＳ３１〜Ｓ３４の処理結果に基づいて、描画リスト（ポリゴンデータ、テクスチャデータ、環境（光源、仮想カメラ）設定データなどのリスト）を作成する（ステップＳ３９）。描画処理は、この描画リストに基づいて行われることになる。
【０１０１】
図１５は、図１２のステップＳ１４の描画処理の一部を示すフローチャートである。
【０１０２】
まず、ボスキャラクタから上方向に見た画像をレンダリングし、レンダリング結果を環境テクスチャとして図１のテクスチャ記憶部１７６に書き込む（ステップＳ４０）。これにより、図４に示すような環境テクスチャ８０が用意されることになる。
【０１０３】
次に、図１４のステップＳ３１でＮＶバッファに展開されたボスキャラクタの法線ベクトルＮＶに基づいて、ＮＶに対応する環境テクスチャをテクスチャ記憶部１７６から読み出す（ステップＳ４１）。そして、ボスキャラクタの下地テクスチャ（元テクスチャ）と環境テクスチャとを、ボスキャラクタにマルチテクスチャマッピングする（ステップＳ４２）。これにより、図５に示すような、周囲の環境がボスキャラクタに映り込んだリアルな画像を生成できる。
【０１０４】
なお、環境テクスチャをリアルタイムに生成せずに、予め用意された擬似的な環境テクスチャをボスキャラクタにマッピングするようにしてもよい。
【０１０５】
図１６は、矢とボスキャラクタのヒット処理のフローチャートである。
【０１０６】
まず、矢の移動処理を行い（ステップＳ５０）、次に、矢とボスキャラクタとのヒットチェック処理を行う（ステップＳ５１）。
【０１０７】
そして、矢がボスキャラクタにヒットしたか否かを判断し（ステップＳ５２）、ヒットした場合には、図１４のステップＳ３１でＮＶバッファに展開された法線ベクトルＮＶに基づいて、図７（Ｂ）で説明したように、矢の跳ね返り方向を計算する（ステップＳ５３）。そして、計算された跳ね返り方向に基づいて、矢の移動方向を補正する（ステップＳ５４）。
【０１０８】
一方、矢がボスキャラクタにヒットしなかった場合には、プレーヤが操作するキャラクタに矢がヒットしたか否かを判断し（ステップＳ５５）、ヒットした場合には、プレーヤのキャラクタのダメージ量を変化させる処理を行う（ステップＳ５６）。そして、矢を消滅させる処理を行う（ステップＳ５７）。一方、矢がプレーヤのキャラクタにヒットしなかった場合には、矢が壁にヒットしたか否かを判断し（ステップＳ５８）、ヒットした場合には、矢を消滅させる処理を行う（ステップＳ５７）。
【０１０９】
以上に説明した処理を、各フレーム毎に行うことで、ムービーデータが含む法線ベクトルデータに基づくシェーディング処理（環境マッピング）、ヒット処理が可能になる。
【０１１０】
４．ハードウェア構成
次に、本実施形態を実現できるハードウェアの構成の一例について図１７を用いて説明する。
【０１１１】
メインプロセッサ９００は、ＣＤ９８２（情報記憶媒体）に格納されたプログラム、通信インターフェース９９０を介して転送されたプログラム、或いはＲＯＭ９５０（情報記憶媒体の１つ）に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などの種々の処理を実行する。
【０１１２】
コプロセッサ９０２は、メインプロセッサ９００の処理を補助するものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算（ベクトル演算）を高速に実行する。例えば、オブジェクトを移動させたり動作（モーション）させるための物理シミュレーションに、マトリクス演算などの処理が必要な場合には、メインプロセッサ９００上で動作するプログラムが、その処理をコプロセッサ９０２に指示（依頼）する。
【０１１３】
ジオメトリプロセッサ９０４は、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算（ベクトル演算）を高速に実行する。例えば、座標変換、透視変換、光源計算などの処理を行う場合には、メインプロセッサ９００で動作するプログラムが、その処理をジオメトリプロセッサ９０４に指示する。
【０１１４】
データ伸張プロセッサ９０６は、圧縮された画像データや音データを伸張するデコード処理を行ったり、メインプロセッサ９００のデコード処理をアクセレートする処理を行う。これにより、オープニング画面、インターミッション（幕間）画面、エンディング画面、或いはゲーム画面などにおいて、ＭＰＥＧ方式等で圧縮されたムービー（動画）を表示できるようになる。なお、デコード処理の対象となる画像データや音データは、ＲＯＭ９５０、ＣＤ９８２に格納されたり、或いは通信インターフェース９９０を介して外部から転送される。
【０１１５】
描画プロセッサ９１０は、ポリゴンや曲面などのプリミティブ面で構成されるオブジェクトの描画（レンダリング）処理を高速に実行するものである。オブジェクトの描画の際には、メインプロセッサ９００は、ＤＭＡコントローラ９７０の機能を利用して、オブジェクトデータを描画プロセッサ９１０に渡すと共に、必要であればテクスチャ記憶部９２４にテクスチャを転送する。すると、描画プロセッサ９１０は、これらのオブジェクトデータやテクスチャに基づいて、Ｚバッファなどを利用した陰面消去を行いながら、オブジェクトをフレームバッファ９２２に高速に描画する。また、描画プロセッサ９１０は、αブレンディング（半透明処理）、デプスキューイング、ミップマッピング、フォグ処理、トライリニア・フィルタリング、アンチエリアシング、シェーディング処理なども行うことができる。そして、１フレーム分の画像がフレームバッファ９２２に書き込まれると、その画像はディスプレイ９１２に表示される。
【０１１６】
サウンドプロセッサ９３０は、多チャンネルのＡＤＰＣＭ音源などを内蔵し、ＢＧＭ、効果音、音声などの高品位のゲーム音を生成する。生成されたゲーム音は、スピーカ９３２から出力される。
【０１１７】
ゲームコントローラ９４２からの操作データや、メモリカード９４４からのセーブデータ、個人データは、シリアルインターフェース９４０を介してデータ転送される。
【０１１８】
ＲＯＭ９５０にはシステムプログラムなどが格納される。なお、業務用ゲームシステムの場合には、ＲＯＭ９５０が情報記憶媒体として機能し、ＲＯＭ９５０に各種プログラムが格納されることになる。なお、ＲＯＭ９５０の代わりにハードディスクを利用するようにしてもよい。
【０１１９】
ＲＡＭ９６０は、各種プロセッサの作業領域として用いられる。
【０１２０】
ＤＭＡコントローラ９７０は、プロセッサ、メモリ（ＲＡＭ、ＶＲＡＭ、ＲＯＭ等）間でのＤＭＡ転送を制御するものである。
【０１２１】
ＣＤドライブ９８０は、プログラム、画像データ、或いは音データなどが格納されるＣＤ９８２（情報記憶媒体）を駆動し、これらのプログラム、データへのアクセスを可能にする。
【０１２２】
通信インターフェース９９０は、ネットワークを介して外部との間でデータ転送を行うためのインターフェースである。この場合に、通信インターフェース９９０に接続されるネットワークとしては、通信回線（アナログ電話回線、ＩＳＤＮ）、高速シリアルバスなどを考えることができる。そして、通信回線を利用することでインターネットを介したデータ転送が可能になる。また、高速シリアルバスを利用することで、他の画像生成システム、他のゲームシステムとの間でのデータ転送が可能になる。
【０１２３】
なお、本発明の各手段は、その全てを、ハードウェアのみにより実行してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムのみにより実行してもよい。或いは、ハードウェアとプログラムの両方により実行してもよい。
【０１２４】
そして、本発明の各手段をハードウェアとプログラムの両方により実行する場合には、情報記憶媒体には、本発明の各手段をハードウェアを利用して実行するためのプログラムが格納されることになる。より具体的には、上記プログラムが、ハードウェアである各プロセッサ９０２、９０４、９０６、９１０、９３０等に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ９０２、９０４、９０６、９１０、９３０等は、その指示と渡されたデータとに基づいて、本発明の各手段を実行することになる。
【０１２５】
図１８（Ａ）に、本実施形態を業務用ゲームシステムに適用した場合の例を示す。プレーヤは、ディスプレイ１１００上に映し出されたゲーム画像を見ながら、レバー１１０２、ボタン１１０４等を操作してゲームを楽しむ。内蔵されるシステムボード（サーキットボード）１１０６には、各種プロセッサ、各種メモリなどが実装される。そして、本発明の各手段を実行するための情報（プログラム又はデータ）は、システムボード１１０６上の情報記憶媒体であるメモリ１１０８に格納される。以下、この情報を格納情報と呼ぶ。
【０１２６】
図１８（Ｂ）に、本実施形態を家庭用のゲームシステムに適用した場合の例を示す。プレーヤはディスプレイ１２００に映し出されたゲーム画像を見ながら、ゲームコントローラ１２０２、１２０４を操作してゲームを楽しむ。この場合、上記格納情報は、本体システムに着脱自在な情報記憶媒体であるＣＤ１２０６、或いはメモリカード１２０８、１２０９等に格納されている。
【０１２７】
図１８（Ｃ）に、ホスト装置１３００と、このホスト装置１３００とネットワーク１３０２（ＬＡＮのような小規模ネットワークや、インターネットのような広域ネットワーク）を介して接続される端末１３０４-1〜１３０４-nとを含むシステムに本実施形態を適用した場合の例を示す。この場合、上記格納情報は、例えばホスト装置１３００が制御可能な磁気ディスク装置、磁気テープ装置、メモリ等の情報記憶媒体１３０６に格納されている。端末１３０４-1〜１３０４-nが、スタンドアロンでゲーム画像、ゲーム音を生成できるものである場合には、ホスト装置１３００からは、ゲーム画像、ゲーム音を生成するためのゲームプログラム等が端末１３０４-1〜１３０４-nに配送される。一方、スタンドアロンで生成できない場合には、ホスト装置１３００がゲーム画像、ゲーム音を生成し、これを端末１３０４-1〜１３０４-nに伝送し端末において出力することになる。
【０１２８】
なお、図１８（Ｃ）の構成の場合に、本発明の各手段を、ホスト装置（サーバー）と端末とで分散して実行するようにしてもよい。また、本発明の各手段を実行するための上記格納情報を、ホスト装置（サーバー）の情報記憶媒体と端末の情報記憶媒体に分散して格納するようにしてもよい。
【０１２９】
またネットワークに接続する端末は、家庭用ゲームシステムであってもよいし業務用ゲームシステムであってもよい。そして、業務用ゲームシステムをネットワークに接続する場合には、業務用ゲームシステムとの間で情報のやり取りが可能であると共に家庭用ゲームシステムとの間でも情報のやり取りが可能な携帯型情報記憶装置（メモリカード、携帯型ゲーム装置）を用いることが望ましい。
【０１３０】
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。
【０１３１】
例えば、本発明のうち従属請求項に係る発明においては、従属先の請求項の構成要件の一部を省略する構成とすることもできる。また、本発明の１の独立請求項に係る発明の要部を、他の独立請求項に従属させることもできる。
【０１３２】
また、ムービーデータが含む法線ベクトルデータに基づいて行われる演算処理は、本実施形態で説明したレンダリング処理（環境マッピング、シェーディング処理）やヒット処理に限定されず、種々の演算処理を考えることができる。
【０１３３】
また、ヒット処理も、本実施形態で説明した矢とボスキャラクタとのヒット処理に限定されず、種々の変形実施が可能である。例えば、野球ゲームにおいて、外野のフェンスや観客をムービーで表現し、フェンスにヒットしたボールの跳ね返り方向を、ムービーデータに埋め込まれた法線ベクトルデータに基づいて計算してもよい。
【０１３４】
また、ムービーで表現されるムービー表示物は、敵のボスキャラクタのような移動表示物であってもよいし、背景などであってもよい。
【０１３５】
またムービーデータのデータ構造は、図２や図９で説明した構造が特に望ましいが、これに限定されず、種々の変形実施が可能である。
【０１３６】
また、法線ベクトルデータ、第１の奥行き値データ、ヒットエリアデータ、移動データ等は、ムービーを構成する各画像（フレーム画像）の全てのピクセルに設定してもよいし、一部のピクセルにのみ設定してもよい。或いは、各画像に対して設定するようにしてもよい。
【０１３７】
また、陰面消去の手法はＺバッファ法であることが特に望ましいが、それ以外の手法を採用してもよい。
【０１３８】
また本発明は種々のゲーム（ロールプレイングゲーム、アクションゲーム、シューティングゲーム、格闘ゲーム、ロボット対戦ゲーム、スポーツゲーム、競争ゲーム、音楽演奏ゲーム、ダンスゲーム等）に適用できる。
【０１３９】
また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード等の種々の画像生成システムに適用できる。
【図面の簡単な説明】
【図１】本実施形態の画像生成システムのブロック図の例である。
【図２】本実施形態の手法について説明するための図である。
【図３】図３（Ａ）は、ボスキャラクタとキャラクタが対峙している場面のゲーム画像の例であり、図３（Ｂ）は、ボスキャラクタに設定された法線ベクトルの例について示す図である。
【図４】ムービーデータが含む法線ベクトルデータに基づき環境テクスチャをマッピングする手法について説明するための図である。
【図５】本実施形態により生成されるゲーム画像である。
【図６】ムービーデータが含む法線ベクトルデータに基づきシェーディング処理を行う手法について説明するための図である。
【図７】図７（Ａ）は、光源からの光の入射方向と法線ベクトルの方向のなす角度に基づいて、ピクセルの輝度を変化させる手法について説明するための図であり、図７（Ｂ）は、矢の入射方向と法線ベクトルの方向とに基づき矢を跳ね返らせる手法について説明するための図である。
【図８】図８（Ａ）、（Ｂ）は、ムービーデータが含む法線ベクトルデータに基づき、矢を跳ね返らせる手法について説明するための図である。
【図９】ムービーデータに奥行き値のデータを含ませる手法について説明するための図である。
【図１０】図１０（Ａ）は、本実施形態により生成される画像の例であり、図１０（Ｂ）は、比較例により生成される画像の例である。
【図１１】ムービーデータとして実写映像を用いる場合におけるムービーデータの作成手法について説明するための図である。
【図１２】本実施形態の全体処理の例について示すフローチャートである。
【図１３】ゲームメイン処理の例について示すフローチャートである。
【図１４】ムービープレイ処理の例について示すフローチャートである。
【図１５】描画処理の例について示すフローチャートである。
【図１６】ヒット処理の例について示すフローチャートである。
【図１７】本実施形態を実現できるハードウェアの構成の一例を示す図である。
【図１８】図１８（Ａ）、（Ｂ）、（Ｃ）は、本実施形態が適用される種々の形態のシステムの例を示す図である。
【符号の説明】
１０    キャラクタ
１２    矢
２０    タンス
２２    出入り口
２４    窓
３０    登場人物
３１    机
３２    椅子
３３〜４０  ターゲット（ピンポン玉）
５０    撮影用のカメラ
５２、５４  位置測定用のカメラ
６０    壁
７０    ボスキャラクタ
７２    出入り口
７４    炎
７６    壁
８０    環境テクスチャ
８２    光源
８４    ピクセル
１００  処理部
１１０  ゲーム処理部
１１２  移動・動作演算部
１１４  ヒット処理部
１１６  ヒットチェック部
１３０  画像生成部
１３２  ジオメトリ処理部
１４０  描画部
１４２  陰面消去部
１４４  レンダリング部
１４６  テクスチャマッピング部
１４８  シェーディング部
１５０  音生成部
１６０  操作部
１７０  記憶部
１７２  ムービーデータ記憶部
１７４  Ｚバッファ
１７６  テクスチャ記憶部
１８０  情報記憶媒体
１９０  表示部
１９２  音出力部
１９４  携帯型情報記憶装置
１９６  通信部
【図１】
0004367810.tif 000002
【図２】
0004367810.tif 000003
【図３】
0004367810.tif 000004
【図４】
0004367810.tif 000005
【図５】
0004367810.tif 000006
【図６】
0004367810.tif 000007
【図７】
0004367810.tif 000008
【図８】
0004367810.tif 000009
【図９】
0004367810.tif 000010
【図１０】
0004367810.tif 000011
【図１１】
0004367810.tif 000012
【図１２】
0004367810.tif 000013
【図１３】
0004367810.tif 000014
【図１４】
0004367810.tif 000015
【図１５】
0004367810.tif 000016
【図１６】
0004367810.tif 000017
【図１７】
0004367810.tif 000018
【図１８】
0004367810.tif 000019