(57)【特許請求の範囲】
【請求項１】
オブジェクト空間の画像を生成して表示することによって所与のゲームを実行するゲーム装置であって、
所与の視点から見た前記オブジェクト空間の画像を生成するための画像生成手段と、
反射領域を前記オブジェクト空間内から決定するための決定手段と、
前記所与の視点から見て前記決定手段により決定された前記反射領域に映し出されることとなる当該反射領域に対応する被反射領域を、前記所与の視点の視線方向と当該反射領域の法線方向とを用いて前記画像生成手段により生成された生成画像内から特定するための特定手段と、
前記特定手段により特定された前記被反射領域の画像を、前記画像生成手段により生成された生成画像中の前記反射領域の部分に合成させるための合成手段と、
を備えたゲーム装置。
【請求項２】
オブジェクト空間の画像を生成して表示することによって所与のゲームを実行するゲーム装置であって、
所与の視点から見た前記オブジェクト空間の画像を生成するための画像生成手段と、
反射領域を前記オブジェクト空間内から決定するための決定手段と、
前記所与の視点から見て前記決定手段により決定された前記反射領域に映し出されることとなる当該反射領域に対応する被反射領域を、前記所与の視点の視線方向と当該反射領域の法線方向とを用いて前記画像生成手段により生成された生成画像内から特定するための特定手段と、
前記特定手段により特定された前記被反射領域の画像を、前記反射領域にマッピングさせるための合成手段と、
を備えたゲーム装置。
【請求項３】
請求項１又は２において、
前記決定手段は、決定した前記反射領域の位置と、前記所与の視点との距離に応じて、当該反射領域の形状あるいは大きさを変更するゲーム装置。
【請求項４】
請求項１又は２において、
前記決定手段は、前記所与の視点の俯角に応じて、決定した前記反射領域の形状あるいは大きさを変更するゲーム装置。
【請求項５】
請求項１又は２において、
前記合成手段は、前記反射領域の位置と前記所与の視点との距離に応じて、前記被反射領域の画像の透明度を変化させて合成するゲーム装置。
【請求項６】
請求項１〜５のいずれかにおいて、
前記合成手段は、前記反射領域に対する前記所与の視点の俯角に応じて、前記被反射領域の画像の透明度を変化させるゲーム装置。
【請求項７】
請求項１〜６のいずれかにおいて、
前記決定手段は、所与の条件を具備する前記オブジェクト空間内のオブジェクトの表面に、反射領域を決定するゲーム装置。
【請求項８】
請求項１〜７のいずれかにおいて、
前記決定手段は、前記所与の視点の移動に応じて、前記反射領域の位置を移動させることにより、逃げ水を表現するゲーム装置。
【請求項９】
コンピュータに、オブジェクト空間の画像を生成させて表示させることによって所与のゲームを実行させるためのプログラムであって、
所与の視点から見た前記オブジェクト空間の画像を生成するための画像生成手段、
反射領域を前記オブジェクト空間内から決定するための決定手段、
前記所与の視点から見て前記反射領域に映し出されることとなる当該反射領域に対応する被反射領域を、前記所与の視点の視線方向と当該反射領域の法線方向とを用いて前記画像生成手段により生成された生成画像内から特定するための特定手段、
前記被反射領域の画像を、前記画像生成手段により生成された生成画像中の前記反射領域の部分に合成させるための合成手段、
として前記コンピュータを機能させるためのプログラムを記憶したコンピュータ読み取り可能な情報記憶媒体。
【請求項１０】
コンピュータに、オブジェクト空間の画像を生成させて表示させることによって所与のゲームを実行させるためのプログラムであって、
所与の視点から見た前記オブジェクト空間の画像を生成するための画像生成手段、
反射領域を前記オブジェクト空間内から決定するための決定手段、
前記所与の視点から見て前記反射領域に映し出されることとなる当該反射領域に対応する被反射領域を、前記所与の視点の視線方向と当該反射領域の法線方向とを用いて前記画像生成手段により生成された生成画像内から特定するための特定手段、
前記被反射領域の画像を、前記反射領域にマッピングさせるための合成手段、
として前記コンピュータを機能させるためのプログラムを記憶したコンピュータ読み取り可能な情報記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オブジェクト空間内の所与の視点での画像を生成し、当該生成画像を表示させることによって所与のゲームを実行するゲーム装置等に関する。
【背景技術】
【０００２】
コンピュータグラフィックスでは、仮想的な３次元空間であるオブジェクト空間内に置かれた鏡や池などを表現する反射率の高いオブジェクト（反射物体）をよりリアルに表現するために、いくつかの工夫を凝らしている。その１つとして、オブジェクト空間内の指定された領域をレンダリングする際に、レイ・トレーシングと呼ばれるアルゴリズムを用いて、他の物体が反射物体の表面に反射して映るように表現する方法がある。
【０００３】
レイ・トレーシングとは、所与の視点となる仮想カメラに届いた光線を逆向きに追跡し、当該光線に影響を与える物体の位置および色等を検出することによって、当該光線に対応するピクセルの色を決定するものである。例えば、仮想カメラの視界内に反射物体があり、追跡する光線が反射物体の表面で反射して、他の物体の表面にぶつかる。この場合には、光線が反射した反射物体の部分に、物体の表面の色が反映されることとなる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１０−７１２７２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、オブジェクト空間には複数のオブジェクトが存在し、そして、各オブジェクトは、色や表面特性等を示す複数の属性を有する多数のポリゴンによって構成されている。このため、オブジェクト空間のレンダリングに際して、レイ・トレーシングの手法を施す場合には、各オブジェクトの配置位置、ポリゴンの属性、光源の位置、仮想カメラの位置等が関わってくるため、多くの処理時間を要する。
【０００６】
特に、ユーザが操作部から入力する操作信号に応じて仮想カメラの位置が様々に変化するゲーム装置にあっては、画像生成に係る時間遅延は致命的な問題であった。とりわけ、仮想カメラが高速で移動するレースゲームや、格闘アクションゲーム等の高い処理速度が要求されるゲームにおいて、忠実に光線追跡を実行して反射物体をレンダリングすることは現実的ではなかった。
【０００７】
本発明は、上記問題点を解決するためになされたものであって、生成した画像を利用して、反射物体の表現をより簡単化し、画像生成の処理速度を向上させることを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するための第１の発明は、オブジェクト空間内の所与の視点での画像を生成し、当該生成画像を表示させることによって所与のゲームを実行するゲーム装置であって、反射領域を前記オブジェクト空間内から決定するための決定手段（例えば、図４の逃げ水ポリゴン決定部２２２）と、前記決定手段により決定された前記反射領域に対応する被反射領域を前記生成画像内から特定するための特定手段（例えば、図４のテクスチャ生成部２４２）と、前記特定手段により特定された前記被反射領域の画像を、前記反射領域に対応する前記生成画像内の領域に合成させるための合成手段（例えば、図４のレンダリング部２４０）と、を含むゲーム装置である。
【０００９】
また、第１３の発明は、オブジェクト空間内の所与の視点での画像を生成し、当該生成画像を表示させることによって所与のゲームを実行するための情報を記憶した情報記憶媒体であって、反射領域を前記オブジェクト空間内から決定するための決定情報（例えば、図４のゲームプログラム４２；図１４のフローチャートのステップＳ１）と、前記反射領域に対応する被反射領域を前記生成画像内から特定するための特定情報（例えば、図４のゲームプログラム４２；図１４のフローチャートのステップＳ３〜Ｓ５）と、前記被反射領域の画像を、前記反射領域に対応する前記生成画像内の領域に合成させるための合成情報（例えば、図４のゲームプログラム４２；図１４のフローチャートのステップＳ９）と、を含む情報記憶媒体である。
【００１０】
この第１あるいは第１３の発明によれば、反射領域に映し出される画像（被反射領域）が生成画像内に存在する場合には、生成画像を利用することにより、反射領域の反射に係る表現を迅速かつ容易に実現できる。
【００１１】
第２の発明は、オブジェクト空間内の所与の視点での画像を生成し、当該生成画像を表示させることによって所与のゲームを実行するゲーム装置であって、反射領域を前記オブジェクト空間内から決定するための決定手段（例えば、図４の逃げ水ポリゴン決定部２２２）と、前記決定手段により決定された前記反射領域に対応する被反射領域を前記生成画像内から特定するための特定手段（例えば、図４のテクスチャ生成部２４２）と、前記特定手段により特定された前記被反射領域の画像を、前記反射領域にマッピングさせるための合成手段（例えば、図４のレンダリング部２４０）と、を含むゲーム装置である。
【００１２】
第１４の発明は、オブジェクト空間内の所与の視点での画像を生成し、当該生成画像を表示させることによって所与のゲームを実行するための情報を記憶した情報記憶媒体であって、反射領域を前記オブジェクト空間内から決定するための決定情報（例えば、図４のゲームプログラム４２；図１４のフローチャートのステップＳ１）と、前記反射領域に対応する被反射領域を前記生成画像内から特定するための特定情報（例えば、図４のゲームプログラム４２；図１４のフローチャートのステップＳ３〜Ｓ５）と、前記被反射領域の画像を、前記反射領域にマッピングさせるための合成情報（例えば、図４のゲームプログラム４２；図１４のフローチャートのステップＳ６〜７）と、を含む情報記憶媒体である。
【００１３】
この第２あるいは第１４の発明によれば、被反射領域の画像を反射領域にマッピングできるため、反射物体を容易かつ迅速に表現できる。また、被反射領域の画像を反射領域にマッピングするため、反射物体の表面特性にあわせたマッピングを施すことにより、反射物体に係る反射をよりリアルに表現できる。
【００１４】
また、第３の発明として、第１または第２の発明のゲーム装置において、前記合成手段は、前記被反射領域の画像を歪ませることとしてもよい。
【００１５】
また、第４の発明として、第２の発明のゲーム装置において、前記合成手段は、前記オブジェクト空間における前記反射領域の頂点座標を変更することにより、前記被反射領域の画像を歪ませてマッピングすることとしてもよい。
【００１６】
また、第１５の発明として、第１３または第１４の発明の情報記憶媒体において、前記合成情報は、前記被反射領域の画像を歪ませるための情報を含むこととしてもよい。
【００１７】
この第３、第４あるいは第１５の発明によれば、被反射領域の画像を生成画像内の所与の領域に合成するとき、あるいは、被反射領域の画像を反射領域にマッピングするときに、当該被反射領域の画像を歪ませることができる。従って、表現しようとする反射領域の形状、性質、状態に応じて映し出す画像を変形できる。
【００１８】
また、第５の発明として、第１から第４のいずれかの発明のゲーム装置において、前記決定手段は、決定した前記反射領域の位置と、前記所与の視点との距離に応じて、当該反射領域の形状あるいは大きさを変更することとしてもよい。
【００１９】
また、第６の発明として、第１から第４のいずれかの発明のゲーム装置において、前記決定手段は、前記所与の視点の俯角に応じて、決定した前記反射領域の形状あるいは大きさを変更することとしてもよい。
【００２０】
また、第１６の発明として、第１３から第１５のいずれかの発明の情報記憶媒体において、前記所与の視点と前記反射領域との距離に応じて、当該反射領域を変更するための変更情報を含むこととしてもよい。
【００２１】
また、第１７の発明として、第１３から第１５のいずれかの発明の情報記憶媒体において、前記所与の視点の俯角に応じて、前記反射領域を変更するための変更情報を含むこととしてもよい。
【００２２】
また、第１８の発明として、第１６または第１７の発明の情報記憶媒体において、前記変更情報（例えば、図４のゲームプログラム４２；図９（ａ）、（ｂ））は、前記反射領域の形状あるいは大きさを変化させる情報を含むこととしてもよい。
【００２３】
この第５、第６、第１６、第１７あるいは第１８の発明によれば、反射領域の形状あるいは大きさを、反射領域から所与の視点までの距離や、所与の視点の俯角に応じて変更できる。従って、例えば、反射領域を湖面上に特定する場合、視点との距離や俯角に応じて反射する領域を変更できるため、反射をよりリアルに表現できる。
【００２４】
また、第７の発明として、第１から第４のいずれかの発明のゲーム装置において、前記合成手段は、前記反射領域の位置と前記所与の視点との距離に応じて、前記被反射領域の画像の透明度を変化させて合成することとしてもよい。
【００２５】
また、第８の発明として、第５または第６の発明のゲーム装置において、前記合成手段は、前記反射領域に対する前記所与の視点の俯角に応じて、前記被反射領域の画像の透明度を変化させることとしてもよい。
【００２６】
また、第１９の発明として、第１６または第１７の発明の情報記憶媒体において、前記変更情報（例えば、図４のゲームプログラム４２；図９（ｃ）、（ｄ））は、前記反射領域に対応する前記被反射領域の画像の透明度を決定させるための情報を含み、前記合成情報（例えば、図４のゲームプログラム４２；図１４のフローチャートのステップＳ９）は、前記変更情報により決定された透明度に基づいて前記被反射領域の画像を合成することとしてもよい。
【００２７】
この第７、第８あるいは第１９の発明によれば、反射領域と所与の視点との距離、あるいは、所与の視点の俯角に応じて被反射領域の画像の透明度を変化させるので、例えば、オブジェクト空間における光源の影響等による反射領域の見え方を変化させて表現できる。
【００２８】
また、第９の発明として、第１から第８のいずれかの発明のゲーム装置において、前記決定手段は、所与の条件を具備する前記オブジェクト空間内のオブジェクトの表面に、反射領域を決定することとしてもよい。
【００２９】
この第９の発明によれば、例えば、環境温度によって発生が左右される逃げ水を反射物体として表現する場合、所与の条件を温度とすることにより、熱いところにのみ逃げ水を発生させるように表現できる。
【００３０】
また、第１０の発明として、第１から第９のいずれかの発明のゲーム装置において、前記合成手段は、前記反射領域にキャラクタが存在する場合、当該キャラクタの反射画像を合成するために、当該キャラクタの画像と、当該キャラクタの画像とを交互に合成することとしてもよい。
【００３１】
この第１０の発明によれば、反射領域にキャラクタが存在する場合であっても、キャラクタの画像と、当該キャラクタの画像とを交互に生成画像内に合成できる。従って、反射領域と、キャラクタと、キャラクタの画像とが奥行き順に正しく表現できる。
【００３２】
また、第１１の発明として、第１から第１０のいずれかの発明のゲーム装置において、前記合成手段は、前記特定手段により特定された前記被反射領域の画像を反転させて合成することとしてもよい。ここで、反転とは、白黒反転等の色彩を反転する意味ではなく、所与の軸を対称軸として、上下、左右等に画像を反転させることを意味するものである。
【００３３】
この第１１の発明によれば、被反射領域の画像を反転して生成画像内の対応する領域に合成、あるいは、反射領域にマッピングすることとしたので、被反射領域を鏡のように映し出す反射物体を簡単に表現することができる。
【００３４】
また、第１２の発明として、第１から第１１のいずれかの発明のゲーム装置において、前記決定手段は、前記所与の視点の移動に応じて、前記反射領域の位置を移動させることにより、逃げ水を表現することとしてもよい。
【００３５】
この第１２の発明によれば、所与の視点の移動に応じて反射領域が移動されるため、逃げ水をリアルに表現することができる。
【００３６】
第２０の発明は、複数のプレーヤが、所与のゲームを同一のオブジェクト空間内で遊ぶための、通信回線を介して接続された複数のゲーム装置を含むゲームシステムであって、前記各ゲーム装置は、反射領域と、当該反射領域に対応する被反射領域とを、前記生成画像内から特定するための特定手段（例えば、図４の逃げ水ポリゴン決定部２２２およびテクスチャ生成部２４２）と、前記被反転領域の画像を、前記反射領域に合成させるための合成手段（例えば、図４のレンダリング部２４０）と、を備え、前記合成手段は、前記反射領域に自キャラクタ以外のキャラクタが存在する場合、当該キャラクタの反射画像を合成するために、当該キャラクタの画像と、当該キャラクタの画像とを交互に合成するゲームシステムである。
【００３７】
この第２０の発明によれば、反射領域に映し出される画像（被反射領域）が生成画像内に存在する場合には、当該生成画像を利用することで、反射領域の反射に係る表現を容易にできる。また、キャラクタが反射領域に存在する場合には、当該キャラクタと、当該キャラクタの画像とを交互に生成画像内に合成できる。従って、反射領域内に重なって存在する複数のキャラクタの反射画像をも、正確に表現することができる。
【図面の簡単な説明】
【００３８】
【図１】本発明を家庭用のゲーム装置に適用した場合の一例を示す図。
【図２】レース場の表示例を示す図。
【図３】レース場に逃げ水が表示された例を示す図。
【図４】機能ブロック図の一例を示す図。
【図５】同じ逃げ水発生フラグをもつエリア毎にオブジェクト空間を分割した例を示す図。
【図６】逃げ水ポリゴンを決定した例を示す図。
【図７】距離および俯角を示す図。
【図８】距離を変更する例を示す図。
【図９】（ａ）は、距離と逃げ水ポリゴンの面積の関係を示す関数。（ｂ）は、俯角と逃げ水ポリゴンの面積の関係を示す関数。（ｃ）は、距離とテクスチャの透明度の関係を示す関数。（ｄ）は、俯角とテクスチャの透明度の関係を示す関数。
【図１０】スクリーンを配置した例を示す斜視図（ａ）、およびその断面図（ｂ）。
【図１１】逃げ水に透明感を付けて表示した例を示す図。
【図１２】逃げ水に部分的に透明感を付けて表示した例を示す図。
【図１３】逃げ水の画像を歪ませた例を示す図。
【図１４】本実施の形態に係る処理を説明するフローチャート。
【図１５】複数キャラクタが存在する場合の表示例を示す図。
【図１６】本実施の形態を実現できるハードウェアの構成の一例を示す図。
【図１７】ホスト装置と通信回線を介して接続されるゲーム端末に本実施の形態を適用した場合の一例を示す図。
【図１８】本発明を業務用のゲーム装置に適用した場合の一例を示す図。
【発明を実施するための形態】
【００３９】
以下、本発明の好適な実施形態について図面を参照して説明する。なお、以下では、本発明をバイクレースゲームに適用し、反射物体として逃げ水を表現する場合を例にとって説明するが、本発明が適用されるものはこれに限られるものではない。
【００４０】
図１は、本発明を家庭用のゲーム装置に適用した場合の一例を示す図である。
図１において、ユーザは、ディスプレイ１２００に映し出されたゲーム画像を見ながら、ゲームコントローラ１２０２、１２０４を操作してバイクレースゲーム等のゲームを楽しむ。この場合、ゲームプログラム等のゲームを行うために必要な情報は、本体装置に着脱自在な情報記憶媒体であるＣＤ−ＲＯＭ１２０６、ＩＣカード１２０８、メモリカード１２１２等に格納されている。
【００４１】
バイクレースゲームでは、レース場毎に、或いは、同じレース場であってもゲームの難易度等によって異なる環境（天候やレース場の路面状態等）が設定されている場合が多い。図２は、ディスプレイ１２００に表示されたバイクレースゲームの一場面を示す図であり、ユーザは、自キャラクタ２を操作することでバイクレースゲームを楽しむ。
【００４２】
図３は、レース場の環境として炎天下が設定された場合に、レース場に反射物体として逃げ水６を表現した画面例を示す図である。同図において、逃げ水６は、逃げ水６の奥方の風景を反射して映し出している。従って、炎天下のレース場の状態がよりリアルに表現されている。
【００４３】
図４は、本実施の形態における機能ブロック図の一例を示す図である。図４において、機能ブロックは、操作部１０と、処理部２０と、表示部３０と、情報記憶媒体４０とから構成される。
【００４４】
操作部１０は、ゲームにおける自キャラクタ２の操作や、ゲーム開始あるいは中止等の指示を入力するためのものである。また、図１に示すゲームコントローラ１２０２、１２０４が、操作部１０に相当する。
【００４５】
処理部２０は、主に、ゲーム演算部２２及び画像生成部２４とから構成されており、ＣＩＳＣ型やＲＩＳＣ型のＣＰＵ、ＤＳＰ、画像取込専用ＩＣなどのハードウェアにより実現できる。
【００４６】
ゲーム演算部２２は、操作部１０から入力される指示信号に応じて、情報記憶媒体４０からゲームプログラム４２を読み出してバイクレースゲームを実行する。また、ゲーム演算部２２は、オブジェクト空間構築部２２０、逃げ水ポリゴン決定部２２２、仮想カメラ制御部２２４を含む。
【００４７】
オブジェクト空間構築部２２０は、情報記憶媒体４０に記憶されたゲームプログラム４２や、操作部１０から入力される操作信号に基づいてオブジェクト空間を構築し、仮想的なゲーム空間を設定する。
【００４８】
オブジェクト空間を構成する各オブジェクトは、複数のポリゴンによって形成されるが、オブジェクト空間構築部２２０は、ポリゴン１つ１つに対する色や光沢等の表面特性を定義付けると共に、逃げ水発生フラグを付加する。この各ポリゴンに付加される逃げ水発生フラグとは、逃げ水の発生有無を示すフラグであり、逃げ水ポリゴン決定部２２２が逃げ水として表現するポリゴンをオブジェクト空間内から決定する際に参照される。
【００４９】
図５は、構築されたオブジェクト空間の内、レース場をアスファルト、草、客席の各エリアに分割した例を示す図である。オブジェクト空間構築部２２０は、同図に示すように、オブジェクト空間を、客席エリア５０−１、５０−５、草エリア５０−２、５０−４、アスファルトエリア５０−３に分割し、同じエリア内に存在するオブジェクト（ポリゴン）に対しては、逃げ水発生フラグに同じ値を設定する。
【００５０】
このように、オブジェクト空間を構成する各ポリゴンに逃げ水発生フラグを付加する理由は、逃げ水を表現する場所を制限するためである。現実世界において、逃げ水は、温度が高く、かつ平坦な地面（路面）に出現しやすい。従って、設定されるレース場の環境（温度等）や、オブジェクトの種類に応じて、逃げ水発生フラグにより、逃げ水を発生させるオブジェクトを特定する。
【００５１】
そして、逃げ水ポリゴン決定部２２２は、この逃げ水発生フラグに基づいて、逃げ水として表現するポリゴンを決定する。以下、この逃げ水を表現するために決定されたポリゴンを逃げ水ポリゴンという。
【００５２】
例えば、オブジェクト空間構築部２２０は、図５に示すアスファルトエリア５０−３におけるオブジェクト（ポリゴン）に逃げ水発生フラグを“ＯＮ”として設定し、それ以外のエリアにおけるオブジェクトには、逃げ水発生フラグを“ＯＦＦ”として設定する。そして、逃げ水ポリゴン決定部２２２は、逃げ水発生フラグが“ＯＮ”として設定されたポリゴン、即ち、アスファルトエリア５０−３を構成するポリゴンの中から逃げ水ポリゴンを決定する。図６は、アスファルトエリア５０−３を構成するポリゴンの中から、太枠で囲まれた部分にあるポリゴンを逃げ水ポリゴン５２として決定した例を示す図である。
【００５３】
また、逃げ水ポリゴン決定部２２２は、必ず、視点となる仮想カメラ５４の視線方向に逃げ水ポリゴンを決定する。仮想カメラ５４と逃げ水ポリゴン５２との間の距離５６は、予め値が設定されているものの、種々の条件の変化に応じて変更される。種々の条件とは、例えば、カーブや坂道等のコースの変化や、自キャラクタ２がジャンプ等をしたことによる仮想カメラ５４の俯角５８の変化などが考えられる。
【００５４】
ただし、距離５６とは、図７に示すように、仮想カメラ５４から逃げ水ポリゴン５２の位置までのＺ軸上、即ち、仮想カメラ５２の視線方向上の距離を指す。また、俯角５８は、仮想カメラ５４から逃げ水ポリゴン５２を見た視線ベクトルの俯角を意味する。
【００５５】
図８は、右方にカーブするレース場における、逃げ水ポリゴン５２の発生位置（距離５６）が変化する場合の一例を示す図である。図８に示すように、仮想カメラ５４の視線方向には、アスファルトエリア５０−３の奥に草エリア５０−２、次いで客席エリア５０−１が広がっている。しかしながら、アスファルトエリア５０−３以外のエリアには、逃げ水発生フラグが“ＯＦＦ”として設定されているため、逃げ水ポリゴンの候補として認識されない。したがって、草エリア５０−２に仮想カメラ５４が近づいた場合には、逃げ水ポリゴン５２の発生位置を決定できず、消滅することとなる。そこで、距離５６の値を変更することにより、アスファルトエリア５０−１内から逃げ水となるポリゴンを決定することとしてもよい。
【００５６】
なお、逃げ水ポリゴン決定部２２２は、更に、逃げ水ポリゴン５２として決定するポリゴンの数あるいは面積（広さ）を、決定することとしてもよい。即ち、逃げ水ポリゴン決定部２２２は、仮想カメラ５４から視線方向に距離５６隔てた位置に逃げ水ポリゴン５２を代表する座標点（以下、代表点という。）を決定し、この代表点の位置にあるポリゴンから所与の面積あるいは所与の数を満たすように逃げ水として表現するポリゴンを決定することとしてもよい。
【００５７】
例えば、図９（ａ）に示すように、距離５６と逃げ水ポリゴン５２の面積との関係を関数で定義することとし、逃げ水ポリゴン５２の位置を決定する際に、同時に逃げ水ポリゴン５２の面積を決定することとしてもよい。同図（ａ）において、逃げ水ポリゴン決定部２２２は、逃げ水ポリゴン５２の代表点と仮想カメラ５４との間の距離５６を距離５６ａとした場合には、関数上の対応する面積を満たすように逃げ水ポリゴン５２を決定する。あるいは、距離５６ａよりも距離５６が短い場合には、関数に基づいて逃げ水ポリゴン５２の面積を減少させる。
【００５８】
また、図９（ｂ）に示すように、仮想カメラ５４の逃げ水ポリゴンに対する俯角５８と逃げ水ポリゴン５２の面積とを対応させてもよい。このように、距離と面積、あるいは、俯角と面積の関係を定義付けることにより、逃げ水ポリゴン５２の面積が異常に大きくなったり、無秩序に変化するといったことを防止することができる。
【００５９】
なお、逃げ水ポリゴン５２の形状は、固定的なものでもよいし、指定された面積を満たす範囲でレース場の条件に合わせて変更させることとしてもよい。また、更に逃げ水ポリゴン５２の形状を距離５６や俯角５８に応じて変更するようにしてもよい。
【００６０】
仮想カメラ制御部２２４は、オブジェクト空間構築部２２０で設定されたオブジェクト空間における仮想カメラ５４の視点位置や視線方向の制御を行う。また、仮想カメラ制御部２２４は、一定距離離れた自キャラクタ２の後方から追従するように仮想カメラ５４を制御する。
【００６１】
画像生成部２４は、レンダリング部２４０、テクスチャ生成部２４２等から構成されており、仮想カメラ制御部２２４により制御された仮想カメラ５４の視点に基づく画像を生成する処理を行い、生成した画像データを表示部３０に出力する。
【００６２】
以下、逃げ水ポリゴン５２上に反射した画像を合成し、ゲーム画像を生成するまでの処理の順に従ってレンダリング部２４０およびテクスチャ生成部２４２について説明する。
【００６３】
まず、レンダリング部２４０は、ゲーム演算部２２により設定されたオブジェクト空間を仮想カメラ５４の視点に基づいてレンダリングし、画像を生成する（以下、この生成された画像を背景画像という。）。
【００６４】
次に、テクスチャ生成部２４２は、レンダリング部２４０により生成された背景画像から逃げ水ポリゴン５２にマッピングする被反射領域を決定する。ここで、被反射領域とは、逃げ水が映し出す画像のことであり、既に生成した背景画像内から決定される。そして、テクスチャ生成部２４２は、背景画像の内、被反射領域に対応する部分をテクスチャとして生成する。そして、生成したテクスチャを再びレンダリング部２４０に出力する。
【００６５】
被反射領域を特定する方法は、いつくか考えられる。
例えば、図１０（ａ）に示すように、仮想カメラ５４を基準として逃げ水ポリゴン５２の奥方に、Ｚ軸と垂直に交わるスクリーン６０を置く。ただし、図１０（ａ）において、（Ｘ、Ｙ、Ｚ）は仮想カメラ５４の座標系を、（Ｘs、Ｙs）はスクリーン６０の座標系をそれぞれ意味している。また、スクリーン６０は、レンダリング部２４０が生成する背景画像の座標系をスクリーン６０が置かれたＺ軸上の位置に応じて拡大したものである。
【００６６】
図１０（ｂ）は、図１０（ａ）をＸ軸方向から見た断面図である。テクスチャ生成部２４２は、仮想カメラ５４から各ポリゴン５２−ｎの頂点への視線ベクトル６４と、ポリゴン５２−ｎの法線ベクトル６６とを計算する。そして、２つのベクトルが成す角からポリゴン５２−ｎにより反射されるスクリーン６０上の位置６８を算出する。ここに、ポリゴン５２−ｎとは、逃げ水ポリゴン５２を構成する複数のポリゴンの１つを意味する。同様の処理を各ポリゴン５２−ｎの各頂点に対して施すことにより、ポリゴン５２に対応する被反射領域６２の座標を特定する。そして、テクスチャ生成部２４２は、特定した被反射領域６２をテクスチャとして生成する。
【００６７】
ただし、逃げ水ポリゴン５２と仮想カメラ５４との間の距離５６および俯角５８が一定の場合には、計算をするまでもなく背景画像の同じ座標領域が常に被反射領域６２として特定される。従って、距離５６あるいは俯角５８の値を変更したときにのみ被反射領域を特定する計算を行うこととしてもよい。
【００６８】
なお、テクスチャ生成部２４２は、生成したテクスチャに透明度を設定することとしてもよい。例えば、図９（ｃ）に示すように、距離５６と透明度の関係を関数で定義し、被反射領域のテクスチャの透明度を設定するようにしてもよい。同図によれば、テクスチャの透明度は、逃げ水ポリゴン５２と仮想カメラ５４の間の距離５６が短いほど大きくなるため、逃げ水ポリゴン５２に映る（反射する）画像が薄く表現される。図１１は、テクスチャの透明度を薄く変化させた場合の画面例を示す図である。
【００６９】
また、図９（ｃ）の関係式を用いて、図１２に示すように、逃げ水ポリゴン５２にテクスチャをマッピングする際に、各ポリゴン５２−ｎの位置に応じて透明度を変化させてもよい。図１２に示すように、逃げ水７２の手前部分の画像をより薄く表現できるため、逃げ水をよりリアルに表すことができる。
【００７０】
また、逃げ水ポリゴン５２の透明度を、図９（ｄ）に示すように、逃げ水ポリゴン５２に対する仮想カメラ５４の俯角５８との関数によって決定してもよい。例えば、逃げ水ポリゴン５２の面積を図９（ａ）に示す距離５６との関数によって決定し、テクスチャの透明度を図９（ｄ）に示す俯角５８との関数によって決定する等の図９に示す関数を組み合わせることにより、種々の変化に応じた逃げ水を表現することができる。
【００７１】
以上のように、テクスチャ生成部２４２によってテクスチャが生成されると、レンダリング部２４０は、テクスチャ生成部２４２が生成した各テクスチャを上下に反転させ、オブジェクト空間上の各ポリゴン５２―ｎにマッピングする。そして、レンダリング部２４０は、逃げ水ポリゴン５４をレンダリングして逃げ水の画像を生成すると、既に生成した背景画像の逃げ水ポリゴン５２に対応する位置に合成する。そして、完成した画像データを表示部３０に出力する。
【００７２】
なお、逃げ水ポリゴン５２にテクスチャをマッピングする際、次のような手法を施すことにより、歪ませることとしてもよい。例えば、逃げ水ポリゴン５２を構成する各ポリゴン５２−ｎは、図６に示すように平面的に並んでいたが、各ポリゴン５２−ｎの各頂点座標を一時的に変化させた後、テクスチャをマッピングさせることにより画像を歪ませることとしてもよい。あるいは、テクスチャの画像自体を歪ませてからマッピングさせることとしてもよい。テクスチャの画像を歪ませた例を図１３に示す。同図において、逃げ水７４に反射する画像が歪んでいるため、よりリアルな逃げ水を表現することができる。
【００７３】
表示部３０は、画像生成部２４から入力される画像データを表示画面に表示させる。また、情報記憶媒体４０は、ゲームプログラム４２を記憶している。この情報記憶媒体４０の機能は、ＣＤ−ＲＯＭ、ゲームカセット、ＩＣカード、ＭＯ、ＦＤ、ＤＶＤ、メモリ、ハードディスクなどのハードウェアにより実現できる。また、ゲームプログラム４２には、後述の逃げ水ポリゴン決定処理や画像生成処理を実行するためのプログラムや図９（ａ）〜（ｄ）で示した関数データ等が含まれている。
【００７４】
次に、本実施の形態において、生成した画像を利用して反射物体である逃げ水を表現する処理に係る動作を以下に説明する。
【００７５】
図１４は、本実施の形態の処理例に係る動作を示すフローチャートである。なお、図１４に示す動作は、１フレームに係るゲーム画像の生成について示すものである。まず、逃げ水ポリゴン決定部２２２は、オブジェクト空間構築部２２０が構築したオブジェクト空間内から逃げ水となるポリゴン、即ち、逃げ水ポリゴン５２を決定する処理を行う（ステップＳ１）。
【００７６】
次いで、レンダリング部２４０は、仮想カメラ５４の視点に基づくオブジェクト空間をレンダリングして背景画像を生成する（ステップＳ２）。そして、テクスチャ生成部２４２は、仮想カメラ５４からポリゴン５２−ｎへの視線ベクトル６４を計算し（ステップＳ３）、次いで、ポリゴン５２−ｎの法線ベクトル６６を計算する（ステップＳ４）。
【００７７】
更に、テクスチャ生成部２４２は、２つのベクトルからポリゴン５２−ｎの被反射領域を特定する。同様の処理を、逃げ水ポリゴン５２を構成する全てのポリゴン５２−ｎに対して施し、逃げ水ポリゴン５２の被反射領域６２を特定する（ステップＳ５）。そして、ステップＳ２において生成された背景画像から被反射領域６２に該当するテクスチャを生成し（ステップＳ６）、レンダリング部２４０に出力する。
【００７８】
レンダリング部２４０は、テクスチャ生成部２４２から入力されたテクスチャを逃げ水ポリゴン５２にマッピングした後（ステップＳ７）、仮想カメラ５４の視点に基づいて逃げ水ポリゴン５２をレンダリングする（ステップＳ８）。そして、ステップＳ２において生成された背景画像内の逃げ水ポリゴン５２に対応する位置にレンダリングした画像を合成してゲーム画像を完成させ（ステップＳ９）、表示部３０に出力して本処理を終了する。
【００７９】
なお、上記説明においては、オブジェクト空間内に自キャラクタ２のみが存在する場合を説明したが、複数のキャラクタが存在する場合にも、本発明を適用することは可能である。しかし、複数のキャラクタが存在する場合には、次のような問題がある。
【００８０】
図１５は、複数のキャラクタが存在する場合のオブジェクト空間の一場面例を示す図である。同図において、領域１００は逃げ水ポリゴンの領域を示しており、領域１０２は上記実施の形態において説明した被反射領域に該当する領域を示している。なお、簡明のため、同図における逃げ水ポリゴン等の形を矩形として示している。
【００８１】
図１５において、逃げ水ポリゴン上に存在するキャラクタ、あるいは、被反射領域に存在するキャラクタ１０８〜１１２の反転した画像は、領域１００上に反映される必要がある。しかし、同図に示すオブジェクト空間のゲーム画像を上記実施の形態で説明した順に従って生成した場合、領域１００上のキャラクタ、即ち、キャラクタ１０８および１１０の画像が領域１００上にうまく反映されないという問題がある。
【００８２】
そこで、以下の様に本発明を変形して適用することにより、この問題を解決できる。まず、オブジェクト空間において、図１０（ａ）、（ｂ）に示したスクリーン６０と同等のスクリーンを各キャラクタの配置位置上に設定する。そして、仮想カメラ５４から遠い順、即ち奥行き順に、キャラクタの配置と、当該キャラクタに設定したスクリーンに対する被反射領域の特定および画像合成処理（本処理は、上述したゲーム画像を生成する処理と同様の処理である。）を交互に行うことにより実現することができる。即ち、図１５において、背景画像に対する処理、キャラクタ１１２に対する処理、キャラクタ１１０に対する処理…というように、奥行き順に本実施の形態において説明した処理を施すことにより実現することができる。
【００８３】
次に、本実施の形態を実現できるハードウェアの構成の一例について、図１６を用いて説明する。同図に示す装置では、ＣＰＵ１０００、ＲＯＭ１００２、ＲＡＭ１００４、情報記憶媒体１００６、音生成ＩＣ１００８、画像生成ＩＣ１０１０、Ｉ／Ｏポート１０１２、１０１４が、システムバス１０１６により相互にデータ入出力可能に接続されている。そして、画像生成ＩＣ１０１０には、ディスプレイ１０１８が接続され、音生成ＩＣ１００８には、スピーカ１０２０が接続され、Ｉ／Ｏポート１０１２には、コントロール装置１０２２が接続され、Ｉ／Ｏポート１０１４には、通信装置１０２４が接続されている。
【００８４】
情報記憶媒体１００６は、プログラム、表示物を表現するための画像データ、音データ、プレイデータ等が主に格納されるものである。例えば、家庭用ゲーム装置では、ゲームプログラム等を格納する情報記憶媒体として、ＣＤ−ＲＯＭ、ゲームカセット、ＤＶＤ等が用いられ、プレイデータを格納する情報記憶媒体としてメモリカードなどが用いられる。また、業務用ゲーム装置では、ＲＯＭ等のメモリやハードディスクが用いられ、この場合には、情報記憶媒体１００６は、ＲＯＭ１００２になる。
【００８５】
コントロール装置１０２２は、ゲームコントローラ、操作パネル等に相当するものであり、ユーザがゲーム進行に応じて行う判断の結果を装置本体に入力するための装置である。
【００８６】
情報記憶媒体１００６に格納されるプログラム、ＲＯＭ１００２に格納されるシステムプログラム（装置本体の初期化情報等）、コントロール装置１０２２によって入力される信号等に従って、ＣＰＵ１０００は、装置全体の制御や各種データ処理を行う。ＲＡＭ１００４は、このＣＰＵ１０００の作業領域等として用いられる記憶手段であり、情報記憶媒体１００６やＲＯＭ１００２の所与の内容、あるいはＣＰＵ１０００の演算結果が格納される。また、本実施の形態を実現するための論理的な構成を持つデータ構造（例えば、図９（ａ）〜（ｄ）等の関数データ）は、このＲＡＭ１００４または情報記憶媒体１００６に構築されることになる。
【００８７】
更に、この種の装置には、音生成ＩＣ１００８と画像生成ＩＣ１０１０とが設けられていて、ゲーム音やゲーム画像の好適な出力が行えるようになっている。音生成ＩＣ１００８は、情報記憶媒体１００６やＲＯＭ１００２に記憶される情報に基づいて効果音やバックグラウンド音楽等のゲーム音を生成する集積回路であり、生成されたゲーム音は、スピーカ１０２０によって出力される。また、画像生成ＩＣ１０１０は、ＲＡＭ１００４、ＲＯＭ１００２、情報記憶媒体１００６等から出力される画像情報に基づいてディスプレイ１０１８に出力するための画素情報を生成する集積回路である。なお、ディスプレイ１０１８は、ＣＲＴやＬＣＤ、ＴＶ、プラズマディスプレイ、液晶プラズマディスプレイ、プロジェクター等の表示装置を含む意である。
【００８８】
また、通信装置１０２４は、ゲーム装置内部で利用される各種の情報を外部とやり取りするものであり、他のゲーム装置と接続されてゲームプログラムに応じた所与の情報を送受したり、通信回線を介して、ゲームプログラム等の情報を送受すること等に利用される。
【００８９】
また、図１〜図１３で説明した種々の処理は、図１４のフローチャートに示した処理等を行うプログラムを格納した情報記憶媒体１００６と、該プログラムに従って動作するＣＰＵ１０００、画像生成ＩＣ１０１０、音生成ＩＣ１００８等によって実現される。なお、画像生成ＩＣ１０１０、音生成ＩＣ１００８等で行われる処理は、ＣＰＵ１０００あるいは汎用のＤＳＰ等によりソフトウェア的に行ってもよい。
【００９０】
図１７に、ホスト装置１３００と、このホスト装置１３００と通信回線１３０２を介して接続される端末１３０４−１〜１３０４−ｎとを含むゲーム装置に本実施の形態を適用した場合の例を示す。
【００９１】
この場合、逃げ水ポリゴン決定処理や画像生成処理を実行するためのプログラムや図９（ａ）〜（ｄ）に示した関数データ等は、例えば、ホスト装置１３００が制御可能な磁気ディスク装置、磁気テープ装置、メモリ等の情報記憶媒体１３０６に格納されている。また、端末１３０４−１〜１３０４−ｎが、ＣＰＵ、画像生成ＩＣ、音生成ＩＣ、を有し、スタンドアローンでゲーム画像、ゲーム音を生成できるものである場合には、ホスト装置１３００からは、ゲーム画像、ゲーム音を生成するためのゲームプログラム等が端末１３０４−１〜１３０４−ｎに配送される。一方、スタンドアローンで生成できない場合には、ホスト装置１３００がゲーム画像、ゲーム音を生成し、これを端末１３０４−１〜１３０４−ｎに伝送し端末において出力することになる。
【００９２】
図１８は、本実施の形態を業務用ゲーム装置８０に適用した場合の例を示す図である。この業務用ゲーム装置８０は、レーシングバイクの形状をモデルに形成されており、シート８８に座ったユーザが、スピーカ８６から出力される音を聞きながら、ハンドル８４やアクセル、ブレーキなどを操作することによって、ディプレイ８２上に表示されるキャラクタを操作してバイクレースゲームを楽しむ装置である。
【００９３】
業務用ゲーム装置８０に内蔵されるシステム基板９２には、ＣＰＵ、画像生成ＩＣ、音生成ＩＣ等が実装されている。そして、逃げ水ポリゴン決定処理や画像生成処理を実行するためのプログラムや図９（ａ）〜（ｄ）に示した関数データ等は、システム基板上の情報記憶媒体であるメモリに格納されている。
【００９４】
なお、本発明は、上記実施の形態で説明したものに限らず、種々の変形実施が可能である。例えば、本実施の形態では、逃げ水ポリゴン５２を、オブジェクト空間を構成する各ポリゴンから選択することとしたが、「逃げ水オブジェクト」という移動体を生成し、この「逃げ水オブジェクト」をゲームキャラクタと同様に移動させるようにしてもよい。
【００９５】
また、仮想カメラから逃げ水ポリゴンまでの距離あるいは俯角と、面積あるいは透明度の関係を図９（ａ）〜（ｄ）に示すような関数によって定義したが、距離や俯角とは別個独立に面積や透明度を設定するようにしてもよい。
【００９６】
更に、本実施の形態では、生成した背景画像からテクスチャとなる被反射領域を特定し、逃げ水ポリゴンにマッピングした後に、逃げ水ポリゴンをレンダリングして該背景画像に合成することとした。しかし、背景画像から特定した被反射領域の画像を直接背景画像内の逃げ水ポリゴンに対応する位置に合成することとして、反射領域に対する処理を更に簡略化することとしてもよい。
【００９７】
また、本発明は、家庭用、業務用のゲーム装置のみならず、シミュレータ、多数のキャラクタが参加する大型アトラクション装置、パーソナルコンピュータ、マルチメディア端末、ゲーム画像を生成するシステム基板等の種々の画像生成装置にも適用できる。
【符号の説明】
【００９８】
１０  操作部
２０  処理部
２２  ゲーム演算部
２２０  オブジェクト空間構築部
２２２  逃げ水ポリゴン決定部
２２４  仮想カメラ制御部
２４  画像生成部
２４０  レンダリング部
２４２  テクスチャ生成部
３０  表示部
４０  情報記憶媒体
４２  ゲームプログラム
【図１】
0004802254.tif 000002
【図２】
0004802254.tif 000003
【図３】
0004802254.tif 000004
【図４】
0004802254.tif 000005
【図５】
0004802254.tif 000006
【図６】
0004802254.tif 000007
【図７】
0004802254.tif 000008
【図８】
0004802254.tif 000009
【図９】
0004802254.tif 000010
【図１０】
0004802254.tif 000011
【図１１】
0004802254.tif 000012
【図１２】
0004802254.tif 000013
【図１３】
0004802254.tif 000014
【図１４】
0004802254.tif 000015
【図１５】
0004802254.tif 000016
【図１６】
0004802254.tif 000017
【図１７】
0004802254.tif 000018
【図１８】
0004802254.tif 000019