(57)【特許請求の範囲】
【請求項１】
周辺減光の影響を再現した画像を画像表示部に表示可能なコンピュータに、
仮想カメラにより所定の画角で撮影された画像に対応する第１画像データを、記憶部に格納する第１画像格納機能と、
前記画像の周辺部を減光する減光用の画像に対応する第２画像データを、記憶部に格納する第２画像格納機能と、
仮想カメラの画角に応じて、前記第２画像データを調整する処理を、制御部に実行させる第２画像調整機能と、
前記第１画像データに、調整後の前記第２画像データを重ね合わせる処理を、制御部に実行させることにより、周辺部が減光されたモニタ表示用の画像データを生成するモニタ画像生成機能と、
周辺部が減光された前記モニタ表示用の画像データを用いて、周辺減光の影響を再現した画像を、画像表示部に表示する画像表示機能と、
を実現させるための画像処理プログラム。
【請求項２】
前記第２画像調整機能は、
記憶部に格納された前記第１画像データに基づいて、仮想カメラの所定の前記画角に対応する光量を評価する処理を、制御部に実行させる光量評価機能と、
前記光量に応じて前記第２画像データを調整する処理を、制御部に実行させる画像光量調整機能と、を有する、
請求項１に記載の画像処理プログラム。
【請求項３】
前記光量評価機能では、
記憶部に格納された前記第１画像データをグレースケールの画像データに変換する処理が、制御部により実行され、
前記グレースケールの画像データの階調を示す階調データが、仮想カメラの所定の前記画角に対応する光量を評価するデータとして制御部に認識される、
請求項２に記載の画像処理プログラム。
【請求項４】
前記光量評価機能では、
記憶部に格納された前記第１画像データをグレースケールの画像データに変換する処理が、制御部により実行され、
前記グレースケールの画像データを１ピクセルの前記グレースケールの画像データに変換する処理が、制御部により実行され、
１ピクセルの前記グレースケールの画像データの階調を示す階調データが、仮想カメラの所定の前記画角に対応する光量を評価するデータとして制御部に認識される、
請求項３に記載の画像処理プログラム。
【請求項５】
前記光量評価機能では、
記憶部に格納された前記画像データをグレースケールの画像データに変換する処理が、制御部により実行され、
前記グレースケールの画像データの階調を示す階調データが、制御部に認識され、
前記階調データを平均化する処理が、制御部により実行され、
平均化された前記階調データが、仮想カメラの所定の前記画角に対応する光量を評価するデータとして制御部に認識される、
請求項３に記載の画像処理プログラム。
【請求項６】
前記画像光量調整機能では、
前記光量を評価した前記階調データに応じて、前記画像の周辺部を減光する程度を規定するための透明度データが、制御部により設定され、
前記透明度データに基づいて前記第２画像データの濃淡を調整する処理が、制御部により実行される、
請求項３から５のいずれかに記載の画像処理プログラム。
【請求項７】
前記画像光量調整機能では、
前記減光用の画像の重心位置の透明度データが、第１透明度データとして制御部に認識され、
前記減光用の画像の周辺部の透明度データが、前記光量を評価した前記階調データに応じて、第２透明度データとして制御部に認識され、
前記第１透明度データおよび前記第２透明度データに基づいて、減光用の画像の重心位置と減光用の画像の周辺部との間の減光用の画像の透明度データが、第３透明度データとして制御部により設定され、
前記第１透明度データ、前記第２透明度データ、および前記第３透明度データに基づいて、前記第２画像データの濃淡を調整する処理が、制御部により実行される、
請求項６に記載の画像処理プログラム。
【請求項８】
周辺減光の影響を再現した画像を画像表示部に表示可能な画像処理装置であって、
仮想カメラにより所定の画角で撮影された画像に対応する第１画像データを、記憶部に格納する第１画像格納手段と、
前記画像の周辺部を減光する減光用の画像に対応する第２画像データを、記憶部に格納する第２画像格納手段と、
仮想カメラの画角に応じて、前記第２画像データを調整する処理を、制御部に実行させる第２画像調整手段と、
前記第１画像データに、調整後の前記第２画像データを重ね合わせる処理を、制御部に実行させることにより、周辺部が減光されたモニタ表示用の画像データを生成するモニタ画像生成手段と、
周辺部が減光された前記モニタ表示用の画像データを用いて、周辺減光の影響を再現した画像を、画像表示部に表示する画像表示手段と、
を備える画像処理装置。
【請求項９】
周辺減光の影響を再現した画像を画像表示部に表示可能なコンピュータにより制御される画像処理制御方法であって、
仮想カメラにより所定の画角で撮影された画像に対応する第１画像データを、記憶部に格納する第１画像格納ステップと、
前記画像の周辺部を減光する減光用の画像に対応する第２画像データを、記憶部に格納する第２画像格納ステップと、
仮想カメラの画角に応じて、前記第２画像データを調整する処理を、制御部に実行させる第２画像調整ステップと、
前記第１画像データに、調整後の前記第２画像データを重ね合わせる処理を、制御部に実行させることにより、周辺部が減光されたモニタ表示用の画像データを生成するモニタ画像生成ステップと、
周辺部が減光された前記モニタ表示用の画像データを用いて、周辺減光の影響を再現した画像を、画像表示部に表示する画像表示ステップと、
を備える画像処理制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理プログラム、特に、周辺減光の影響を再現した画像を画像表示部に表示可能な画像処理プログラムに関する。また、この画像処理プログラムによって実現される画像処理装置及び画像処理制御方法に関する。
【背景技術】
【０００２】
従来から、仮想空間に配置されたオブジェクトが仮想カメラにより撮影された場合、ここで撮影された画像をモニタに表示する際には、様々な画像処理技術が施されてきた。
【０００３】
一般的には、物理的なレンズを有する実際のカメラでは、カメラの画角を大きくすると、カメラにより撮影された画像には、周辺減光が発生しやすくなる。一方で、仮想カメラは物理的なレンズを有していないため、仮想カメラでは画角が大きくなっても、仮想カメラにより撮影された画像には、周辺減光が発生することはなかった。
【０００４】
このように、実際のカメラにより撮影された画像と、仮想カメラにより撮影された画像との間には、周辺減光の有無に大きな違いがある。このため、仮想カメラにより撮影された画像を、実際のカメラにより撮影された画像と同じように、モニタに表示しようとした場合、仮想カメラにより撮影された画像に周辺減光の影響を反映させる必要が出る。そこで、従来では、仮想カメラにより撮影された画像に対して、周辺減光用のフィルタをかけることにより、周辺減光の影響が画像に反映されていた。
【０００５】
たとえば、従来の野球ゲームでは、リプレイ画面等において、周辺減光の影響が反映されていた（非特許文献１を参照）。この野球ゲームにおいては、仮想カメラにより撮影された画像に対して、仮想カメラにより撮影された画像の周辺を暗くするフィルタをかけることにより、周辺減光の影響が画像に再現されていた。
【非特許文献１】プロ野球スピリッツ４，株式会社コナミデジタルエンタテインメント、ＰＳ３、２００７年４月１日発売
【発明の開示】
【発明が解決しようとする課題】
【０００６】
従来の野球ゲームでは、仮想カメラにより撮影された画像に対して、仮想カメラにより撮影された画像の周辺を暗くするフィルタ（周辺減光用のフィルタ）をかけることにより、周辺減光の影響が画像において再現されていた。
【０００７】
従来の周辺減光用のフィルタは、仮想カメラにより撮影された画像の周辺を、単に暗くするだけのものであった。このため、従来の周辺減光用のフィルタでは、画像の周辺を一定の割合でしか暗くすることができなかった。詳細には、周辺減光が発生する程度は、一般的に、カメラの画角すなわち光量に応じて変化する。しかしながら、従来の周辺減光用のフィルタでは、仮想カメラの画角すなわち光量が変化しても、画像の周辺を一定の割合でしか暗くすることができなかった。このため、仮想カメラにより撮影された画像に周辺減光用のフィルタをかけたとしても、実際のカメラにより撮影された画像と同じような周辺減光を、仮想カメラにより撮影された画像においてリアルに再現することが困難であった。
【０００８】
本発明は、このような問題に鑑みてなされたものであり、本発明の目的は、仮想カメラにより撮影された画像において、リアリティのある周辺減光を再現することにある。
【課題を解決するための手段】
【０００９】
請求項１に係る画像処理プログラムは、周辺減光の影響を再現した画像を画像表示部に表示可能なコンピュータに、以下の機能を実現させるためのプログラムである。
（１）仮想カメラにより所定の画角で撮影された画像に対応する第１画像データを、記憶部に格納する第１画像格納機能。
（２）画像の周辺部を減光する減光用の画像に対応する第２画像データを、記憶部に格納する第２画像格納機能。
（３）仮想カメラの画角に応じて、第２画像データを調整する処理を、制御部に実行させる第２画像調整機能。
（４）第１画像データに、調整後の第２画像データを重ね合わせる処理を、制御部に実行させることにより、周辺部が減光されたモニタ表示用の画像データを生成するモニタ画像生成機能。
（５）周辺部が減光されたモニタ表示用の画像データを用いて、周辺減光の影響を再現した画像を、画像表示部に表示する画像表示機能。
【００１０】
この画像処理プログラムでは、第１画像格納機能において、仮想カメラにより所定の画角で撮影された画像に対応する第１画像データが、記憶部に格納される。第２画像格納機能において、画像の周辺部を減光する減光用の画像に対応する第２画像データが、記憶部に格納される。第２画像調整機能においては、仮想カメラの画角に応じて、第２画像データを調整する処理が、制御部により実行される。モニタ画像生成機能においては、第１画像データに、調整後の第２画像データを重ね合わせる処理を、制御部に実行させることにより、周辺部が減光されたモニタ表示用の画像データが生成される。画像表示機能においては、周辺部が減光されたモニタ表示用の画像データを用いて、周辺減光の影響を再現した画像が、画像表示部に表示される。
【００１１】
この場合、ある画像が仮想カメラにより所定の画角で撮影されると、この画像に対応する第１画像データが記憶部に格納される。また、画像の周辺部を減光する減光用の画像に対応する第２画像データが、記憶部に格納される。そして、仮想カメラの画角に応じた調整が、第２画像データに対して制御部により実行される。そして、ここで調整された第２画像データ（調整後の第２画像データ）を、仮想カメラにより所定の画角で撮影された画像に対応する第１画像データに重ね合わせる処理が、制御部により実行される。このようにして、周辺部が減光されたモニタ表示用の画像データが生成され、この周辺部が減光されたモニタ表示用の画像データを用いて、周辺減光の影響を再現した画像が、画像表示部に表示される。
【００１２】
このように、請求項１に係る発明では、仮想カメラの画角に応じて調整された減光用の画像データ（第２画像データ）を、仮想カメラにより撮影された画像データ（第１画像データ）に重ね合わせることにより、仮想カメラの画角に応じた周辺減光の影響を、仮想カメラにより撮影された画像に反映することができる。このため、実際のカメラにより撮影された画像と同様に、仮想カメラにより撮影された画像においても、リアリティのある周辺減光を再現することができる。
【００１３】
請求項２に係る画像処理プログラムでは、請求項１に記載の画像処理プログラムにおいて、記憶部に格納された第１画像データに基づいて、仮想カメラの所定の画角に対応する光量を評価する処理が、制御部により実行される。そして、光量に応じて第２画像データを調整する処理が、制御部により実行される。前者の機能は光量評価機能において実現され、後者の機能は画像光量調整機能において実現される。これら光量評価機能および画像光量調整機能は、第２画像調整機能に含まれている。
【００１４】
この場合、仮想カメラにより撮影された画像データ（第１画像データ）に基づいて、仮想カメラにより撮影された画像の光量、すなわち仮想カメラの画角に対応する光量が、評価される。そして、この光量に応じて、減光用の画像データ（第２画像データ）が調整される。このため、請求項２に係る発明では、周辺減光の影響を、仮想カメラにより撮影された画像に対して正確に反映することができる。このため、実際のカメラにより撮影された画像と同様に、仮想カメラにより撮影された画像においても、リアリティのある周辺減光を正確に再現することができる。
【００１５】
請求項３に係る画像処理プログラムでは、請求項２に記載の画像処理プログラムにおいて、記憶部に格納された第１画像データをグレースケールの画像データに変換する処理が、制御部により実行される。そして、グレースケールの画像データの階調を示す階調データが、仮想カメラの所定の画角に対応する光量を評価するデータとして、制御部に認識される。
【００１６】
この場合、仮想カメラにより撮影された画像データ（第１画像データ）が、グレースケールの画像データに変換される。そして、このグレースケールの画像データの階調を示す階調データが算出され、この階調データを用いて、仮想カメラの所定の画角に対応する光量が評価される。このように、請求項３に係る発明では、仮想カメラにより撮影された画像データ（第１画像データ）さえあれば、仮想カメラにより撮影された画像の光量を評価することができる。このため、実際のカメラにより撮影された画像と同様に、仮想カメラにより撮影された画像においても、リアリティのある周辺減光を再現することができる。
【００１７】
請求項４に係る画像処理プログラムでは、請求項３に記載の画像処理プログラムにおいて、記憶部に格納された第１画像データをグレースケールの画像データに変換する処理が、制御部により実行される。そして、グレースケールの画像データを１ピクセルのグレースケールの画像データに変換する処理が、制御部により実行される。そして、１ピクセルのグレースケールの画像データの階調を示す階調データが、仮想カメラの所定の画角に対応する光量を評価するデータとして制御部に認識される。これらの機能は、光量評価機能において実現される。
【００１８】
この場合、仮想カメラにより撮影された画像データ（第１画像データ）が、グレースケールの画像データに変換される。そして、グレースケールの画像データが、１ピクセルのグレースケールの画像データに変換される。そして、１ピクセルのグレースケールの画像データの階調を示す階調データが算出され、この階調データを用いて、仮想カメラの所定の画角に対応する光量が評価される。このように、請求項４に係る発明では、仮想カメラにより撮影された画像の光量を、１ピクセルのグレースケールの画像データの階調データに基づいて評価することができる。このため、実際のカメラにより撮影された画像と同様に、仮想カメラにより撮影された画像においても、リアリティのある周辺減光を再現することができる。
【００１９】
請求項５に係る画像処理プログラムでは、請求項３に記載の画像処理プログラムにおいて、記憶部に格納された画像データをグレースケールの画像データに変換する処理が、制御部により実行される。そして、グレースケールの画像データの階調を示す階調データが、制御部に認識される。そして、階調データを平均化する処理が、制御部により実行される。そして、平均化された階調データが、仮想カメラの所定の画角に対応する光量を評価するデータとして制御部に認識される。これらの機能は、光量評価機能において実現される。
【００２０】
この場合、仮想カメラにより撮影された画像データ（第１画像データ）が、グレースケールの画像データに変換される。そして、グレースケールの画像データの階調を示す階調データが各ピクセルごとに算出され、各ピクセルの階調データを平均化される。そして、平均化された階調データを用いて、仮想カメラの所定の画角に対応する光量が評価される。このように、請求項５に係る発明では、仮想カメラにより撮影された画像の光量を、各ピクセルのグレースケールの画像データの階調データに基づいて評価することができる。このため、実際のカメラにより撮影された画像と同様に、仮想カメラにより撮影された画像においても、リアリティのある周辺減光を再現することができる。
【００２１】
請求項６に係る画像処理プログラムでは、請求項３から５のいずれかに記載の画像処理プログラムにおいて、変換後の第１画像データの階調データに応じて、画像の周辺部を減光する程度を規定するための透明度データが、制御部により設定される。そして、この透明度データに基づいて、第２画像データの濃淡を調整する処理が、制御部により実行される。これらの機能は、画像光量調整機能において実現される。
【００２２】
この場合、グレースケールの画像データ（変換後の第１画像データ）の階調データに応じて、仮想カメラにより撮影された画像の周辺部を減光する程度を規定するための透明度データが、設定される。そして、この透明度データに基づいて、減光用の画像データ（第２画像データ）の濃淡が、調整される。このように、請求項６に係る発明では、仮想カメラにより撮影された画像の光量の大小、すなわちグレースケールの画像の階調の大小を、透明度データを介して、減光用の画像データ（第２画像データ）の濃淡に反映することができる。このため、仮想カメラにより撮影された画像データに、減光用の画像データを重ね合わせると、実際のカメラにより撮影された画像と同様に、仮想カメラにより撮影された画像においても、リアリティのある周辺減光を再現することができる。
【００２３】
請求項７に係る画像処理プログラムでは、請求項６に記載の画像処理プログラムにおいて、減光用の画像の重心位置の透明度データが、第１透明度データとして制御部に認識される。そして、減光用の画像の周辺部の透明度データが、光量を評価した階調データに応じて、第２透明度データとして制御部に認識される。そして、第１透明度データおよび第２透明度データに基づいて、減光用の画像の重心位置と減光用の画像の周辺部との間の減光用の画像の透明度データが、第３透明度データとして制御部により設定される。そして、第１透明度データ、第２透明度データ、および第３透明度データに基づいて、第２画像データの濃淡を調整する処理が、制御部により実行される。これらの機能は、画像光量調整機能において実現される。
【００２４】
この場合、減光用の画像の重心位置の透明度データ（第１透明度データ）および減光用の画像の周辺部の透明度データ（第２透明度データ）に基づいて、減光用の画像の重心位置と減光用の画像の周辺部との間の減光用の画像の透明度データ（第３透明度データ）が、設定される。そして、これらの透明度データに基づいて、減光用の画像データ（第２画像データ）の濃淡が、調整される。このように、請求項７に係る発明では、仮想カメラにより撮影された画像の光量の大小、すなわちグレースケールの画像の階調の大小を、透明度データを介して、減光用の画像データ（第２画像データ）の濃淡に反映することができる。このため、仮想カメラにより撮影された画像データに、減光用の画像データを重ね合わせると、実際のカメラにより撮影された画像と同様に、仮想カメラにより撮影された画像においても、リアリティのある周辺減光を再現することができる。
【００２５】
請求項８に係る画像処理装置は、周辺減光の影響を再現した画像を画像表示部に表示可能な画像処理装置である。この画像処理装置は、仮想カメラにより所定の画角で撮影された画像に対応する第１画像データを、記憶部に格納する第１画像格納手段と、画像の周辺部を減光する減光用の画像に対応する第２画像データを、記憶部に格納する第２画像格納手段と、仮想カメラの画角に応じて、第２画像データを調整する処理を、制御部に実行させる第２画像調整手段と、第１画像データに、調整後の第２画像データを重ね合わせる処理を、制御部に実行させることにより、周辺部が減光されたモニタ表示用の画像データを生成するモニタ画像生成手段と、周辺部が減光されたモニタ表示用の画像データを用いて、周辺減光の影響を再現した画像を、画像表示部に表示する画像表示手段と、を備えている。
【００２６】
請求項９に係る画像処理制御方法は、周辺減光の影響を再現した画像を画像表示部に表示可能なコンピュータにより制御される画像処理制御方法である。この画像処理制御方法は、仮想カメラにより所定の画角で撮影された画像に対応する第１画像データを、記憶部に格納する第１画像格納ステップと、画像の周辺部を減光する減光用の画像に対応する第２画像データを、記憶部に格納する第２画像格納ステップと、仮想カメラの画角に応じて、第２画像データを調整する処理を、制御部に実行させる第２画像調整ステップと、第１画像データに、調整後の第２画像データを重ね合わせる処理を、制御部に実行させることにより、周辺部が減光されたモニタ表示用の画像データを生成するモニタ画像生成ステップと、周辺部が減光されたモニタ表示用の画像データを用いて、周辺減光の影響を再現した画像を、画像表示部に表示する画像表示ステップと、を備えている。
【発明の効果】
【００２７】
本発明では、仮想カメラの画角に応じて調整された減光用の画像データ（第２画像データ）を、仮想カメラにより撮影された画像データ（第１画像データ）に重ね合わせることにより、仮想カメラの画角に応じた周辺減光の影響を、仮想カメラにより撮影された画像に反映することができる。
【００２８】
詳細には、仮想カメラにより撮影された画像データ（第１画像データ）に基づいて、仮想カメラにより撮影された画像の光量、すなわち仮想カメラの画角に対応する光量が、評価される。そして、この光量に応じて、減光用の画像データ（第２画像データ）が調整される。そして、ここで調整された第２画像データ（調整後の第２画像データ）を、仮想カメラにより所定の画角で撮影された画像に対応する第１画像データに重ね合わせることにより、仮想カメラの画角に応じた周辺減光の影響を、仮想カメラにより撮影された画像に反映することができる。
【００２９】
これにより、仮想カメラにより撮影された画像において、実際のカメラにより撮影された画像と同様に、リアリティのある周辺減光を再現することができる。
【発明を実施するための最良の形態】
【００３０】
〔ゲーム装置の構成と動作〕
図１は、本発明の一実施形態によるゲーム装置の基本構成を示している。ここでは、ビデオゲーム装置の一例として、家庭用ビデオゲーム装置をとりあげて説明を行うこととする。家庭用ビデオゲーム装置は、家庭用ゲーム機本体および家庭用テレビジョンを備える。家庭用ゲーム機本体には、記録媒体１０が装填可能となっており、記録媒体１０からゲームデータが適宜読み出されてゲームが実行される。このようにして実行されるゲーム内容が家庭用テレビジョンに表示される。
【００３１】
家庭用ビデオゲーム装置のゲームシステムは、制御部１と、記憶部２と、画像表示部３と、音声出力部４と、操作入力部５とからなっており、それぞれがバス６を介して接続される。このバス６は、アドレスバス、データバス、およびコントロールバスなどを含んでいる。ここで、制御部１、記憶部２、音声出力部４および操作入力部５は、家庭用ビデオゲーム装置の家庭用ゲーム機本体に含まれており、画像表示部３は家庭用テレビジョンに含まれている。
【００３２】
制御部１は、主に、ゲームプログラムに基づいてゲーム全体の進行を制御するために設けられている。制御部１は、たとえば、ＣＰＵ（Central Processing Unit）７と、信号処理プロセッサ８と、画像処理プロセッサ９とから構成されている。ＣＰＵ７と信号処理プロセッサ８と画像処理プロセッサ９とは、それぞれがバス６を介して互いに接続されている。ＣＰＵ７は、ゲームプログラムからの命令を解釈し、各種のデータ処理や制御を行う。たとえば、ＣＰＵ７は、信号処理プロセッサ８に対して、画像データを画像処理プロセッサに供給するように命令する。信号処理プロセッサ８は、主に、３次元空間上における計算と、３次元空間上から擬似３次元空間上への位置変換計算と、光源計算処理と、画像および音声データの生成加工処理とを行っている。画像処理プロセッサ９は、主に、信号処理プロセッサ８の計算結果および処理結果に基づいて、描画すべき画像データをＲＡＭ１２に書き込む処理を行っている。
【００３３】
記憶部２は、主に、プログラムデータや、プログラムデータで使用される各種データなどを格納しておくために設けられている。記憶部２は、たとえば、記録媒体１０と、インターフェース回路１１と、ＲＡＭ（Random Access Memory）１２とから構成されている。記録媒体１０には、インターフェース回路１１が接続されている。そして、インターフェース回路１１とＲＡＭ１２とはバス６を介して接続されている。記録媒体１０は、オペレーションシステムのプログラムデータや、画像データ、音声データ並びに各種プログラムデータからなるゲームデータなどを記録するためのものである。この記録媒体１０は、たとえば、ＲＯＭ（Read Only Memory）カセット、光ディスク、およびフレキシブルディスクなどであり、オペレーティングシステムのプログラムデータやゲームデータなどが記憶される。なお、記録媒体１０にはカード型メモリも含まれており、このカード型メモリは、主に、ゲームを中断するときに中断時点での各種ゲームパラメータを保存するために用いられる。ＲＡＭ１２は、記録媒体１０から読み出された各種データを一時的に格納したり、制御部１からの処理結果を一時的に記録したりするために用いられる。このＲＡＭ１２には、各種データとともに、各種データの記憶位置を示すアドレスデータが格納されており、任意のアドレスを指定して読み書きすることが可能になっている。
【００３４】
画像表示部３は、主に、画像処理プロセッサ９によってＲＡＭ１２に書き込まれた画像データや、記録媒体１０から読み出される画像データなどを画像として出力するために設けられている。この画像表示部３は、たとえば、テレビジョンモニタ２０と、インターフェース回路２１と、Ｄ／Ａコンバータ（Digital-To-Analogコンバータ）２２とから構成されている。テレビジョンモニタ２０にはＤ／Ａコンバータ２２が接続されており、Ｄ／Ａコンバータ２２にはインターフェース回路２１が接続されている。そして、インターフェース回路２１にバス６が接続されている。ここでは、画像データが、インターフェース回路２１を介してＤ／Ａコンバータ２２に供給され、ここでアナログ画像信号に変換される。そして、アナログ画像信号がテレビジョンモニタ２０に画像として出力される。
【００３５】
ここで、画像データには、たとえば、ポリゴンデータやテクスチャデータなどがある。ポリゴンデータはポリゴンを構成する頂点の座標データのことである。テクスチャデータは、ポリゴンにテクスチャを設定するためのものであり、テクスチャ指示データとテクスチャカラーデータとからなっている。テクスチャ指示データはポリゴンとテクスチャとを対応づけるためのデータであり、テクスチャカラーデータはテクスチャの色を指定するためのデータである。ここで、ポリゴンデータとテクスチャデータとには、各データの記憶位置を示すポリゴンアドレスデータとテクスチャアドレスデータとが対応づけられている。このような画像データでは、信号処理プロセッサ８により、ポリゴンアドレスデータの示す３次元空間上のポリゴンデータ（３次元ポリゴンデータ）が、画面自体(視点)の移動量データおよび回転量データに基づいて座標変換および透視投影変換されて、２次元空間上のポリゴンデータ（２次元ポリゴンデータ）に置換される。そして、複数の２次元ポリゴンデータでポリゴン外形を構成して、ポリゴンの内部領域にテクスチャアドレスデータが示すテクスチャデータを書き込む。このようにして、各ポリゴンにテクスチャが貼り付けられた物体つまり各種キャラクタを表現することができる。
【００３６】
音声出力部４は、主に、記録媒体１０から読み出される音声データを音声として出力するために設けられている。音声出力部４は、たとえば、スピーカー１３と、増幅回路１４と、Ｄ／Ａコンバータ１５と、インターフェース回路１６とから構成されている。スピーカー１３には増幅回路１４が接続されており、増幅回路１４にはＤ／Ａコンバータ１５が接続されており、Ｄ／Ａコンバータ１５にはインターフェース回路１６が接続されている。そして、インターフェース回路１６にバス６が接続されている。ここでは、音声データが、インターフェース回路１６を介してＤ／Ａコンバータ１５に供給され、ここでアナログ音声信号に変換される。このアナログ音声信号が増幅回路１４によって増幅され、スピーカー１３から音声として出力される。音声データには、たとえば、ＡＤＰＣＭ（Adaptive Differential Pulse Code Modulation）データやＰＣＭ（Pulse Code Modulation）データなどがある。ＡＤＰＣＭデータの場合、上述と同様の処理方法で音声をスピーカー１３から出力することができる。ＰＣＭデータの場合、ＲＡＭ１２においてＰＣＭデータをＡＤＰＣＭデータに変換しておくことで、上述と同様の処理方法で音声をスピーカー１３から出力することができる。
【００３７】
操作入力部５は、主に、コントローラ１７と、操作情報インターフェース回路１８と、インターフェース回路１９とから構成されている。コントローラ１７には、操作情報インターフェース回路１８が接続されており、操作情報インターフェース回路１８にはインターフェース回路１９が接続されている。そして、インターフェース回路１９にバス６が接続されている。
【００３８】
コントローラ１７は、プレイヤが種々の操作命令を入力するために使用する操作装置であり、プレイヤの操作に応じた操作信号をＣＰＵ７に送出する。コントローラ１７には、第１ボタン１７ａ、第２ボタン１７ｂ、第３ボタン１７ｃ、第４ボタン１７ｄ、上方向キー１７Ｕ、下方向キー１７Ｄ、左方向キー１７Ｌ、右方向キー１７Ｒ、Ｌ１ボタン１７Ｌ１、Ｌ２ボタン１７Ｌ２、Ｒ１ボタン１７Ｒ１、Ｒ２ボタン１７Ｒ２、スタートボタン１７ｅ、セレクトボタン１７ｆ、左スティック１７ＳＬ及び右スティック１７ＳＲが設けられている。
【００３９】
上方向キー１７Ｕ、下方向キー１７Ｄ、左方向キー１７Ｌ及び右方向キー１７Ｒは、例えば、キャラクタやカーソルをテレビジョンモニタ２０の画面上で上下左右に移動させるコマンドをＣＰＵ７に与えるために使用される。
【００４０】
スタートボタン１７ｅは、記録媒体１０からゲームプログラムをロードするようにＣＰＵ７に指示するときなどに使用される。
【００４１】
セレクトボタン１７ｆは、記録媒体１０からロードされたゲームプログラムに対して、各種選択をＣＰＵ７に指示するときなどに使用される。
【００４２】
左スティック１７ＳＬ及び右スティック１７ＳＲは、いわゆるジョイスティックとほぼ同一構成のスティック型コントローラである。このスティック型コントローラは、直立したスティックを有している。このスティックは、支点を中心として直立位置から前後左右を含む３６０°方向に亘って、傾倒可能な構成になっている。左スティック１７ＳＬ及び右スティック１７ＳＲは、スティックの傾倒方向及び傾倒角度に応じて、直立位置を原点とするｘ座標及びｙ座標の値を、操作信号として操作情報インターフェース回路１８とインターフェース回路１９とを介してＣＰＵ７に送出する。
【００４３】
第１ボタン１７ａ、第２ボタン１７ｂ、第３ボタン１７ｃ、第４ボタン１７ｄ、Ｌ１ボタン１７Ｌ１、Ｌ２ボタン１７Ｌ２、Ｒ１ボタン１７Ｒ１及びＲ２ボタン１７Ｒ２には、記録媒体１０からロードされるゲームプログラムに応じて種々の機能が割り振られている。
【００４４】
なお、左スティック１７ＳＬ及び右スティック１７ＳＲを除くコントローラ１７の各ボタン及び各キーは、外部からの押圧力によって中立位置から押圧されるとオンになり、押圧力が解除されると中立位置に復帰してオフになるオンオフスイッチになっている。
【００４５】
以上のような構成からなる家庭用ビデオゲーム装置の概略動作を、以下に説明する。電源スイッチ（図示省略）がオンにされゲームシステム１に電源が投入されると、ＣＰＵ７が、記録媒体１０に記憶されているオペレーティングシステムに基づいて、記録媒体１０から画像データ、音声データ、およびプログラムデータを読み出す。読み出された画像データ、音声データ、およびプログラムデータの一部若しくは全部は、ＲＡＭ１２に格納される。そして、ＣＰＵ７が、ＲＡＭ１２に格納されたプログラムデータに基づいて、ＲＡＭ１２に格納された画像データや音声データにコマンドを発行する。
【００４６】
画像データの場合、ＣＰＵ７からのコマンドに基づいて、まず、信号処理プロセッサ８が、３次元空間上におけるキャラクタの位置計算および光源計算などを行う。次に、画像処理プロセッサ９が、信号処理プロセッサ８の計算結果に基づいて、描画すべき画像データのＲＡＭ１２への書き込み処理などを行う。そして、ＲＡＭ１２に書き込まれた画像データが、インターフェース回路１３を介してＤ／Ａコンバータ１７に供給される。ここで、画像データがＤ／Ａコンバータ１７でアナログ映像信号に変換される。そして、画像データはテレビジョンモニタ２０に供給され画像として表示される。
【００４７】
音声データの場合、まず、信号処理プロセッサ８が、ＣＰＵ７からのコマンドに基づいて音声データの生成および加工処理を行う。ここでは、音声データに対して、たとえば、ピッチの変換、ノイズの付加、エンベロープの設定、レベルの設定及びリバーブの付加などの処理が施される。次に、音声データは、信号処理プロセッサ８から出力されて、インターフェース回路１６を介してＤ／Ａコンバータ１５に供給される。ここで、音声データがアナログ音声信号に変換される。そして、音声データは増幅回路１４を介してスピーカー１３から音声として出力される。
【００４８】
〔ゲーム装置における各種処理概要〕
本ゲーム機において実行されるゲームは、たとえば野球ゲームである。本ゲーム機では、周辺減光の影響を再現した画像が、テレビジョンモニタ２０に表示される。図２は、本発明で主要な役割を果たす機能を説明するための機能ブロック図である。
【００４９】
カメラ設定手段５０は、仮想ゲーム空間における仮想カメラの位置（視点）を規定するためのカメラ用の第１座標データ、仮想カメラの位置を基準とした仮想カメラの視線方向を規定するためのカメラ用の第２座標データ、仮想カメラの画角を規定するための画角データをＣＰＵ７に認識させることにより、仮想カメラを仮想ゲーム空間に設定する機能を備えている。
【００５０】
この手段では、仮想ゲーム空間における仮想カメラの位置を規定するためのカメラ用の第１座標データ、仮想カメラの位置を基準とした仮想カメラの視線方向を規定するためのカメラ用の第２座標データ、仮想カメラの画角を規定するための画角データをＣＰＵ７に認識させることにより、仮想カメラが仮想ゲーム空間に設定される。
【００５１】
ここでは、ゲームが開始されたときに初期条件としてＣＰＵ７に認識される、カメラ用の第１座標データ、カメラ用の第２座標データ、および仮想カメラの画角データは、ＲＡＭ１２に格納されている。これらのデータは、ゲームプログラムが記録媒体１０からＲＡＭ１２にロードされたときにＲＡＭ１２に格納される。また、カメラ用の第１座標データ、カメラ用の第２座標データ、および仮想カメラの画角データの少なくともいずれか１つが変更された場合は、変更後の各データがＲＡＭ１２に格納される。そして、ＲＡＭ１２に格納された各データが、ＣＰＵ７に認識される。
【００５２】
撮影空間規定手段５１は、仮想ゲーム空間において、仮想カメラの撮影対象となる撮影空間を規定するための境界用のデータを、ＣＰＵ７に認識させることにより、撮影空間を仮想ゲーム空間に規定する機能を備えている。
【００５３】
この手段では、仮想ゲーム空間において、仮想カメラの撮影対象となる撮影空間を規定するための境界用のデータを、ＣＰＵ７に認識させることにより、撮影空間が仮想ゲーム空間に規定される。
【００５４】
ここでは、仮想カメラの視界に入る全ての空間（視界空間）の内部の所定の領域が、モニタ２０に表示される空間すなわち撮影空間（視錐領域）として規定される。言い換えると、仮想カメラの画角に入る全ての空間（視界空間）の内部の所定の領域が、撮影空間として規定される。この撮影空間は、カメラ側の面（第１面）およびカメラから離反した側の面（第２面）を仮想ゲーム空間の所定の位置に設定することにより規定される。たとえば、仮想カメラの位置を基準とした所定の２つの位置座標データ（第１面用の境界用のデータおよび第２面用の境界用データ）をＣＰＵ７に認識させることにより、第１面および第２面が、仮想ゲーム空間に規定される。
【００５５】
なお、ここでは、撮影空間を規定するための第１面の位置および第２面の位置は、ゲームプログラムにおいて予め規定されているが、第１面の位置および第２面の位置を、ユーザが任意に設定することができるようにしても良い。
【００５６】
第１画像格納手段５２は、仮想カメラにより所定の画角で撮影された画像に対応する第１画像データを、ＲＡＭ１２に格納する機能を備えている。この手段では、仮想カメラにより所定の画角で撮影された画像に対応する第１画像データが、ＲＡＭ１２に格納される。
【００５７】
ここでは、撮影空間の内部のオブジェクトを仮想カメラにより撮影したときに、撮影空間の内部のオブジェクトを２次元平面に投影する処理が、制御部により実行される。この処理により、仮想カメラにより所定の画角で撮影された画像（第１画像データ）が、生成される。
【００５８】
具体的には、ここでは、撮影空間の内部のオブジェクトが仮想カメラにより撮影されたときに、仮想カメラの視点を基準とした、撮影空間の内部のオブジェクトが位置する深さを示す深度データが、Ｚバッファ用のＲＡＭ１２に格納される。この処理が、撮影空間の内部のオブジェクトを２次元平面に投影する処理に対応する。そして、Ｚバッファ用のＲＡＭ１２に格納された深度データに基づいて、撮影空間の内部のオブジェクトに対応する画像データ（第１画像データ）が、フレームバッファ用のＲＡＭ１２に格納される。このようにして、仮想カメラにより所定の画角で撮影された画像に対応する第１画像データが、ＲＡＭ１２に格納される。
【００５９】
第２画像格納手段５３は、画像の周辺部を減光する減光用の画像に対応する第２画像データを、ＲＡＭ１２に格納する機能を備えている。この手段では、画像の周辺部を減光する減光用の画像に対応する第２画像データが、ＲＡＭ１２に格納される。
【００６０】
ここでは、初期条件としての第２画像データが、ＲＡＭ１２に格納される。この第２画像データに対応する画像は、画像の重心位置から同心円状に段階的に濃度が濃くなる画像になっている。具体的には、この第２画像データに対応する画像は、画像の重心位置が完全透明であり、画像の重心位置から同心円状に段階的に黒色の濃度が濃くなっている。この画像では、画像の重心位置から同心円状に段階的に階調を変化させることにより（グラデーション処理により）、画像の濃度を徐々に変化させている。なお、この初期条件としての画像に対応する第２画像データは、ゲームプログラムにより予め規定されており、ＲＡＭ１２に格納される。
【００６１】
第２画像調整手段５４は、仮想カメラの画角に応じて、第２画像データを調整する処理を、ＣＰＵ７に実行させる機能を備えている。
【００６２】
第２画像調整手段５４は、光量評価手段５４ａと画像光量調整手段５４ｂとを有している。光量評価手段５４ａは、ＲＡＭ１２に格納された第１画像データに基づいて、仮想カメラの所定の画角に対応する光量を評価する処理を、ＣＰＵ７に実行させる機能を備えている。画像光量調整手段５４ｂは、光量に応じて第２画像データを調整する処理を、ＣＰＵ７に実行させる機能を備えている。
【００６３】
第２画像調整手段５４では、仮想カメラの画角に応じて、第２画像データを調整する処理が、以下のように、ＣＰＵ７により実行される。
【００６４】
光量評価手段５４ａでは、ＲＡＭ１２に格納された第１画像データに基づいて、仮想カメラの所定の画角に対応する光量を評価する処理が、ＣＰＵ７により実行される。
【００６５】
ここでは、光量評価手段５４ａでは、ＲＡＭ１２に格納された第１画像データをグレースケールの画像データに変換する処理が、ＣＰＵ７により実行される。そして、グレースケールの画像データの階調を示す階調データが、仮想カメラの所定の画角に対応する光量を評価するデータとしてＣＰＵ７に認識される。
【００６６】
具体的には、ＲＡＭ１２に格納された第１画像データをグレースケールの画像データに変換する処理が、ＣＰＵ７により実行される。そして、グレースケールの画像データを１ピクセルのグレースケールの画像データに変換する処理が、ＣＰＵ７により実行される。そして、１ピクセルのグレースケールの画像データの階調を示す階調データが、仮想カメラの所定の画角に対応する光量を評価するデータとしてＣＰＵ７に認識される。
【００６７】
画像光量調整手段５４ｂでは、光量に応じて第２画像データを調整する処理が、ＣＰＵ７により実行される。
【００６８】
ここでは、光量を評価した階調データに応じて、画像の周辺部を減光する程度を規定するための透明度データが、ＣＰＵ７により設定される。そして、透明度データに基づいて第２画像データの濃淡を調整する処理が、ＣＰＵ７により実行される。
【００６９】
具体的には、減光用の画像の重心位置の透明度データが、第１透明度データとしてＣＰＵ７に認識される。そして、減光用の画像の周辺部の透明度データが、光量を評価した階調データに応じて、第２透明度データとしてＣＰＵ７に認識される。そして、第１透明度データおよび第２透明度データに基づいて、減光用の画像の重心位置と減光用の画像の周辺部との間の減光用の画像の透明度データが、第３透明度データとしてＣＰＵ７により設定される。この第３透明度データは、第１透明度データおよび第２透明度データを初期条件として、一次関数又は多次関数に基づいて、ＣＰＵ７により算出される。すなわち、第３透明度データは、一次関数による線形補間、又は多次関数による多次補間を用いて、ＣＰＵ７により算出される。すると、第１透明度データ、第２透明度データ、および第３透明度データに基づいて、第２画像データの濃淡を調整する処理が、ＣＰＵ７により実行される。なお、ここで用いられる一次関数又は多次関数は、ゲームプログラムにおいて予め規定されており、ＲＡＭ１２に格納されている。
【００７０】
モニタ画像生成手段５５は、第１画像データに、調整後の第２画像データを重ね合わせる処理を、ＣＰＵ７に実行させることにより、周辺部が減光されたモニタ表示用の画像データを生成する機能を備えている。この手段では、第１画像データに、調整後の第２画像データを重ね合わせる処理を、ＣＰＵ７に実行させることにより、周辺部が減光されたモニタ表示用の画像データが生成される。
【００７１】
ここでは、第１画像データに、調整後の第２画像データを重ね合わせることにより、第１画像データと調整後の第２画像データとが合成され、周辺部が減光されたモニタ表示用の画像データが生成される。これにより、仮想カメラにより所定の画角で撮影された画像の周辺部の光量が調整され、周辺部が減光されたモニタ表示用の画像が生成される。
【００７２】
画像表示手段５６は、周辺部が減光されたモニタ表示用の画像データを用いて、周辺減光の影響を再現した画像を、テレビジョンモニタ２０に表示する機能を備えている。この手段では、周辺部が減光されたモニタ表示用の画像データを用いて、周辺減光の影響を再現した画像が、テレビジョンモニタ２０に表示される。
【００７３】
ここでは、周辺部が減光されたモニタ表示用の画像データが、ＣＰＵ７からの表示命令に基づいてテレビジョンモニタ２０に供給される。これにより、周辺減光の影響を再現した画像が、テレビジョンモニタ２０に表示される。
【００７４】
〔野球ゲームにおける周辺減光再現システムの概要〕
次に、野球ゲームにおける周辺減光再現システムの具体的な内容について説明する。また、図９および図１０に示すフローについても同時に説明する。なお、図９は野球ゲームの全体概要を説明するためのフローであり、図１０は上記システムを説明するためのフローである。
【００７５】
まず、ゲーム機の電源が投入されゲーム機が起動されると、野球ゲームプログラムが、記録媒体１０からＲＡＭ１２にロードされ格納される。このときには、野球ゲームを実行する上で必要となる各種の基本ゲームデータも、同時に、記録媒体１０からＲＡＭ１２にロードされ格納される（Ｓ１）。
【００７６】
たとえば、基本ゲームデータには、３次元ゲーム空間用の各種の画像に関するデータが含まれている。そして、この３次元ゲーム空間用の各種の画像に関するデータ、たとえば、スタジアム用の画像データ、選手キャラクタ用の画像データ、および各種のオブジェクトの画像データ等が、ＣＰＵ７に認識される。また、基本ゲームデータには、３次元ゲーム空間用の各種の画像に関するデータを３次元ゲーム空間に配置するための位置座標データが含まれている。また、基本ゲームデータには、上記システムで用いられるデータも、含まれている。
【００７７】
続いて、ＲＡＭ１２に格納された野球ゲームプログラムが、基本ゲームデータに基づいて、ＣＰＵ７により実行される（Ｓ２）。すると、野球ゲームの起動画面がテレビジョンモニタ２０に表示される。すると、野球ゲームを実行するための各種の設定画面がテレビジョンモニタ２０に表示される。ここでは、たとえば、野球ゲームのプレイモードを選択するためのモード選択画面が、テレビジョンモニタ２０に表示される（図示しない）。このモード選択画面において、プレイヤがコントローラ１７を操作することにより、プレイモードが決定される（Ｓ３）。プレイモードには、たとえば、１２球団の中から好きなチームを選択して１試合の対戦を楽しむ対戦モード、１２球団の中から好きなチームを選択してペナントレースを戦うペナントモード、プレイヤが監督の立場でチームの選手キャラクタを育成する育成モード、およりプレイヤがある１人の選手キャラクタの立場になって野球ゲームを体感する成長体感モード等が、用意されている。
【００７８】
続いて、モード選択画面で選択されたプレイモードにおいて、各種のイベントが、ＣＰＵ７により実行される（Ｓ４）。ここで実行される各種のイベントには、たとえば、ＡＩプログラム（Ａｒｔｉｆｉｃｉａｌ  Ｉｎｔｅｌｌｉｇｅｎｃｅ  Ｐｒｏｇｒａｍ）に基づいてＣＰＵ７により自動制御されるイベントや、コントローラ１７からの入力信号に基づいてプレイヤにより手動制御されるイベントのようなイベントがある。また、選手キャラクタの制御には、ＡＩプログラムに基づいて選手キャラクタに命令を自動的に指示する自動制御や、コントローラ１７からの入力信号に基づいて選手キャラクタに命令を直接的に指示する手動制御等がある。このように、本野球ゲームでは、コントローラ１７からの指示やＡＩプログラムからの指示に応じて、イベントが制御されたり、選手キャラクタに命令が指示されたりするようになっている。
【００７９】
続いて、選択されたプレイモードが終了したか否かが、ＣＰＵ７により判断される（Ｓ５）。具体的には、プレイモードが終了したことを示す命令が発行されたか否かが、ＣＰＵ７により判断される。そして、プレイモードが終了したことを示す命令が発行されたとＣＰＵ７により判断された場合（Ｓ５でＹｅｓ）、ゲーム継続用のデータをＲＡＭ１２に格納する処理が、ＣＰＵ７により実行される。そして、ゲーム継続用のデータがＲＡＭ１２に格納されると、この野球ゲームを終了するか否かを選択する選択画面が、テレビジョンモニタ２０に表示される（Ｓ６）。そして、この選択画面において、プレイヤがコントローラ１７を操作することにより、野球ゲームの終了を示す項目が選択されると（Ｓ６でＹｅｓ）、野球ゲームを終了するための処理がＣＰＵ７により実行される（Ｓ７）。一方で、この選択画面において、プレイヤがコントローラ１７を操作することにより、野球ゲームの継続を示す項目が選択されると（Ｓ６でＮｏ）、ステップ３（Ｓ３）のモード選択画面が、テレビジョンモニタ２０に再表示される。
【００８０】
なお、プレイモードが終了するための命令が発行されたとＣＰＵ７に判断されない限り（Ｓ５でＮｏ）、モード選択画面で選択されたプレイモードにおいて、各種のイベントがＣＰＵ７により実行される（Ｓ４）。
【００８１】
次に、周辺減光再現システムの詳細を説明する。
【００８２】
以下には、周辺減光再現システムが対戦モードにおいて機能する場合の例が示される。たとえば、モード選択画面において対戦モードが選択されたときに、周辺減光再現システムが機能する場合の例が示される。特に、以下では、周辺減光再現システムにおいて、リプレイ画像において、周辺減光が再現される場合の例が示される。
【００８３】
本野球ゲームでは、対戦モードが開始される前に、画像の周辺部を減光する減光用の画像Ｄ２に対応する画像データ（第２画像データ）が、ＲＡＭ１２に格納される（Ｓ１００）。ここでは、初期条件としての第２画像データが、ＲＡＭ１２に格納される。この第２画像データに対応する画像Ｄ２は、図３に示すように、画像の重心位置Ｇから同心円状に段階的に濃度が濃くなる画像になっている。具体的には、この第２画像データに対応する画像Ｄ２は、画像の重心位置Ｇから画像の四隅Ｙ１，Ｙ２，Ｙ３，Ｙ４に向けて、同心円状に段階的に黒色の濃度が濃くなっている。この画像では、画像の重心位置Ｇから同心円状に段階的に階調を変化させることにより（グラデーション処理により）、画像の濃度を徐々に変化させている。なお、ここでは、この第２画像データは、基本ゲームデータに含まれている。
【００８４】
そして、対戦モードが開始されると（Ｓ１０１）、図４に示すように、シーン再現用の仮想カメラの位置Ｃ１を３次元仮想ゲーム空間に規定するためのカメラ用の第１座標データ、シーン再現用の仮想カメラの位置Ｃ１を基準として仮想カメラの視線方向ＶＤを規定するための位置Ｃ２を示すカメラ用の第２座標データ、シーン再現用の仮想カメラの画角を規定するための画角データＧＡが、ＣＰＵ７に認識される。これにより、シーン再現用の仮想カメラが３次元仮想ゲーム空間に設定される（Ｓ１０２）。
【００８５】
なお、ここでは、３次元仮想空間の座標系が、図４に示すように定義されている。すなわち、ここでは、仮想カメラの視線方向ＶＤを水平面に投影した方向をＹ方向、高さ方向をＺ方向、Ｙ方向とＺ方向とに互いに直交する方向をＸ方向と、定義されている。また、図４の撮影空間の底面ＶＢは、ＸＹ平面上に設けられている。そして、このＸＹ平面上には、グランド面が定義されている。
【００８６】
続いて、図４に示すように、シーン再現用の仮想カメラの画角に入る全ての空間ＳＫ（視界空間）の内部の所定の領域が、撮影空間ＳＳとして規定される（Ｓ１０３）。ここでは、シーン再現用の仮想カメラの撮影対象となる撮影空間ＳＳの奥行きを規定するための境界、たとえば、仮想カメラ側の面ＶＳ１（第１面）および仮想カメラから離反した側の面ＶＳ２（第２面）を、３次元仮想ゲーム空間の所定の位置に設定することにより、撮影空間ＳＳが３次元仮想ゲーム空間に規定される。
【００８７】
具体的には、仮想カメラの位置Ｃ１の第１座標データ（ｘ１，ｙ１，ｚ１）のｙ座標に、仮想カメラの位置Ｃ１からの第１面ＶＳ１までの距離ｙｓ１を加算する処理を制御部に実行させることにより、第１面用の境界用のデータ（ｘ１，ｙ１＋ｙｓ１，ｚ１）が算出される。また、仮想カメラの位置Ｃ１の第１座標データ（ｘ１，ｙ１，ｚ１）のｙ座標に、仮想カメラの位置Ｃ１からの第２面ＶＳ２までの距離ｙｓ２を加算する処理を制御部に実行させることにより、第２面用の境界用のデータ（ｘ１，ｙ１＋ｙｓ２，ｚ１）が算出される。なお、距離ｙｓ１，ｙｓ２は、ゲームプログラムにおいて予め規定されており、ＲＡＭ１２に格納されている。また、距離ｙｓ１と距離ｙｓ２との間には、「ｙｓ２＞ｙｓ１」の関係が成立している。
【００８８】
このようにして算出された、第１面用の境界用のデータ、および第２面用の境界用のデータを、第１面ＶＳ１の位置座標データおよび第２面ＶＳ２の位置座標データとして、ＣＰＵ７に認識させることにより、第１面ＶＳ１および第２面ＶＳ２が３次元仮想ゲーム空間に決定され、撮影空間ＳＳが３次元仮想ゲーム空間に規定される。
【００８９】
なお、シーン再現用の仮想カメラの撮影対象となる撮影空間ＳＳの幅方向の境界は、シーン再現用の仮想カメラの幅方向の第１画角データＧＡｘｙによって規定される（図４を参照）。また、シーン再現用の仮想カメラの撮影対象となる撮影空間ＳＳの高さ方向の境界は、シーン再現用の仮想カメラの高さ方向の第２画角データＧＡｙｚによって規定される（図４を参照）。このように、ここでは、シーン再現用の仮想カメラの画角データＧＡは、幅方向の第１画角データＧＡｘｙ、および高さ方向の第２画角データＧＡｙｚから構成されている。
【００９０】
続いて、試合イベントが開始されプレイが実行されると（Ｓ１０４）、実行されたプレイがリプレイ対象のプレイであるか否かが、ＣＰＵ７により判別される（Ｓ１０５）。ここでは、リプレイ対象のプレイは、ゲームプログラムにおいて予め規定されている。以下では、３塁に走者キャラクタＫ１が存在していて打者キャラクタにより安打又は外野フライが放たれた場合のプレイが、リプレイ対象のプレイに規定されている場合の例が示される。
【００９１】
具体的には、実行されたプレイが、ゲームプログラムにおいて予め規定されたリプレイ対象のプレイ、たとえば、３塁に走者キャラクタが存在していて打者キャラクタにより安打又は外野フライが放たれた場合のプレイであるか否かが、ＣＰＵ７により判別される。
【００９２】
ここでは、たとえば、走者キャラクタが３塁に存在する場合、３塁における出塁状況を示すフラグの値として、数値「１」がＣＰＵ７により割り当てられる。また、走者キャラクタが３塁に存在しない場合、３塁における出塁状況を示すフラグの値として、数値「０」がＣＰＵ７により割り当てられる。このフラグの値をＣＰＵ７に認識させることにより、走者キャラクタが３塁に存在するか否かが、ＣＰＵ７により判別される。
【００９３】
また、たとえば、打者キャラクタにより安打が放たれた場合、打撃結果を示す結果データの値として、ヒットに対応する数値「１」、２塁打に対応する数値「２」、３塁打に対応する数値「３」、およびホームランに対応する数値「４」のいずれか１つが、ＣＰＵ７により割り当てられる。そして、打者キャラクタにより外野フライが放たれた場合、打撃結果を示す結果データの値として、外野フライに対応する数値「１１」が、ＣＰＵ７により割り当てられる。そして、上記以外の結果の場合、打撃結果を示す結果データの値として、数値「０」が、ＣＰＵ７により割り当てられる。この結果データの値をＣＰＵ７に認識させることにより、打者キャラクタが安打又は外野フライを放ったか否かが、ＣＰＵ７により判別される。
【００９４】
ここで、実行されたプレイがリプレイ対象のプレイであるとＣＰＵ７により判別された場合（Ｓ１０５でＹｅｓ）、このリプレイ対象のプレイに関わるキャラクタの動作を再現するための座標データおよび画像データが、ＲＡＭ１２に格納される。たとえば、３塁に走者キャラクタが存在していて打者キャラクタにより安打又は外野フライが放たれた場合、リプレイ対象のプレイに関わるキャラクタは、走者キャラクタ、捕手キャラクタ、および主審キャラクタとなる。このため、この場合は、プレイ中の走者キャラクタ、プレイ中の捕手キャラクタ、およびプレイ中の主審キャラクタそれぞれの座標データおよび画像データが、ＲＡＭ１２に格納される。また、ここでは、プレイ中のボールの座標データおよび画像データも、ＲＡＭ１２に格納される（Ｓ１０６）。
【００９５】
なお、ボールの座標データは、ボールの軌道方程式に基づいて算出される。たとえば、ボールの軌道方程式は、位置と時間の関数になっている。このボールの軌道方程式において、ボールの送出位置の時間を基準として、時間を１／６０（ｓｅｃ）づつ進行させることにより、所定のフレームにおけるボールの位置が算出される。なお、このボールの軌道方程式を構成するための変数および定数は、ゲームプログラムにおいて予め規定されている。
【００９６】
続いて、ここでＲＡＭ１２に格納されたデータの基づいて、リプレイ対象のプレイ（実行済みのプレイ）を３次元仮想ゲーム空間において再実行する処理が、ＣＰＵ７により実行される。
【００９７】
まず、３次元仮想ゲーム空間の内部に位置する複数のキャラクタそれぞれの座標データが、ＣＰＵ７に認識される。たとえば、３塁に走者キャラクタが存在していて打者キャラクタが安打又は外野フライを放った場合、ホームベースに突入する走者キャラクタ、ボールを捕球する捕手キャラクタ、および主審キャラクタそれぞれの座標データが、１フレームごとに、ＣＰＵ７に認識される。なお、ここでＣＰＵ７に認識される各キャラクタの座標データは、ステップ１０６（Ｓ１０６）でＲＡＭ１２に格納されたデータである。
【００９８】
次に、３次元仮想ゲーム空間の内部を移動するボールの座標データが、ＣＰＵ７に認識される。たとえば、３塁に走者キャラクタが存在していて打者キャラクタが安打又は外野フライを放った場合、ボールを捕球した野手キャラクタから捕手キャラクタへと送球されたボールの座標データが、１フレーム（１／６０ｓｅｃ）ごとに、ＣＰＵに認識される。なお、ここでＣＰＵ７に認識されるボールの座標データは、ステップ１０６（Ｓ１０６）でＲＡＭ１２に格納されたデータである。
【００９９】
ここでは、１フレームごとに、複数のキャラクタの座標データおよびボールの座標データがＣＰＵ７に認識され、仮想カメラの視点を基準とした、撮影空間の内部のオブジェクトが位置する深さを示す深度データが、Ｚバッファ用のＲＡＭ１２に格納される。この処理が、撮影空間の内部のオブジェクトを２次元平面に投影する処理に対応する。そして、Ｚバッファ用のＲＡＭ１２に格納された深度データに基づいて、撮影空間の内部のオブジェクトを撮影したときの画像データ（第１画像データ）が、フレームバッファ用のＲＡＭ１２に格納される。このようにして、仮想カメラにより所定の画角で撮影された画像に対応する第１画像データが、１フレームごとに、ＲＡＭ１２に格納される（Ｓ１０７）。
【０１００】
また、第１画像データがＲＡＭ１２に格納されるときには、仮想カメラにより撮影された各フレームの画像の画角データが、ＲＡＭ１２に格納される（Ｓ１０８）。たとえば、リプレイ対象のプレイが、徐々にクローズアップ（ズーム）されるような場合、各フレームの画像の画角データの値は、フレームの進行に応じて、徐々に小さな値になる。この場合、１フレーム又は数フレームごとに異なる画角データが、ＲＡＭ１２に格納される。一方で、リプレイ対象のプレイが、クローズアップされずに一定の状態で再現される場合、各フレームの画像の画角データの値は、一定値になる。この場合、各フレームにおいて、一定値の画角データが、ＲＡＭ１２に格納される。
【０１０１】
続いて、ＲＡＭ１２に格納された仮想カメラの画角に応じて、減光用の画像Ｄ２に対応する画像データ（第２画像データ）を調整する処理が、以下のように、ＣＰＵ７により実行される。
【０１０２】
まず、ＲＡＭ１２に格納された各フレームの第１画像データに基づいて、各フレームにおける仮想カメラの画角に対応する光量を評価する処理が、ＣＰＵ７により実行される。たとえば、各フレームの第１画像データをグレースケールの画像データに変換する処理が、ＣＰＵ７により実行される。そして、各フレームのグレースケールの画像データを１ピクセルのグレースケールの画像データに変換する処理が、ＣＰＵ７により実行される（Ｓ１０９、図８を参照）。そして、各フレームの１ピクセルのグレースケールの画像データの階調を示す階調データＫＧ１が、各フレームの仮想カメラの画角に対応する光量を評価するデータとしてＣＰＵ７に認識される（Ｓ１１０）。そして、各フレームの１ピクセルのグレースケールの画像データの階調を示す階調データＫＧ１が、ＲＡＭ１２に格納される。
【０１０３】
これらの処理では、各フレームの第１画像データをグレースケールの画像データに変換することにより、グレースケールの画像の濃淡によって各フレームの画像の光量の強弱が評価される。そして、各フレームのグレースケールの画像データを１ピクセルのグレースケールの画像データに変換することにより、各フレームの画像の光量の強弱の平均が評価される。すなわち、各フレームの画像の光量の強弱の平均が、各フレームの１ピクセルのグレースケールの画像データの階調を示す階調データＫＧ１により評価される。
【０１０４】
たとえば、図５に示すように、各フレームの階調を８ビットの２５６階調で表現した場合、各フレームの階調データＫＧ１は、「０〜２５５」までの値をとる。この場合、階調データＫＧ１が「０」であるときが「黒」に対応し、階調データＫＧ１が「２５５」であるときが「白」に対応する。ここで、階調と光量との関係を考えると、階調データＫＧ１の値が小さい画像は、光量が少ない画像に対応し、階調データＫＧ１の値が大きい画像は、光量が多い画像に対応する。
【０１０５】
なお、一般的に、画角が広い場合、空間の広い範囲から光を取り入れることができるので、光量は多くなる。一方で、画角が狭い場合、空間の狭い範囲からしか光を取り入れることができないので、光量は少なくなる。図５には、このような関係も同時に示されている。
【０１０６】
次に、各フレームの光量に応じて第２画像データを調整する処理が、ＣＰＵ７により実行される。たとえば、各フレームの階調データＫＧ１に応じて、画像の周辺部を減光する程度を規定するための各フレームの透明度データＴ１，Ｔ２，Ｔ３が、ＣＰＵ７により設定される（Ｓ１１１）。そして、透明度データＴ１，Ｔ２，Ｔ３に基づいて第２画像データの濃淡を調整する処理が、ＣＰＵ７により実行される（Ｓ１１２）。
【０１０７】
具体的には、減光用の画像Ｄ２の重心位置Ｇの透明度データＴ１が、完全透明に対応する透明度データ（第１透明度データ）としてＣＰＵ７に認識される。なお、ここでは画像が矩形であるので、減光用の画像Ｄ２の重心位置Ｇは、画像の対角線の交点位置になる（図３を参照）。
【０１０８】
そして、減光用の画像Ｄ２の重心位置Ｇの透明度データＴ１（第１透明度データ）がＣＰＵ７に認識されると、減光用の画像Ｄ２の周辺部の透明度データＴ２が、各フレームの階調データＫＧ１に対応する透明度データ（第２透明度データ）として、ＣＰＵ７に認識される。
【０１０９】
ここでは、減光用の画像Ｄ２の周辺部の透明度データＴ２は、次のようにしてＣＰＵ７により、設定される。たとえば、上述したように、階調データＫＧ１の値が小さい画像は、光量が少ない画像に対応し、階調データＫＧ１の値が大きい画像は、光量が多い画像に対応する（図５を参照）。このことから、階調データＫＧ１の値が小さい場合、画像の光量が少ないことになるので、透明度の高い透明度データがＣＰＵ７に認識される。一方で、階調データＫＧ１の値が大きい場合、画像の光量が多いことになるので、不透明度の高い透明度データがＣＰＵ７に認識される。このような透明度と光量との関係は、ゲームプログラムにおいて予め規定されている（図５を参照）。また、この対応テーブルは、ＲＡＭ１２に格納されており、ＣＰＵ７により適宜参照される。
【０１１０】
続いて、第１透明度データＴ１および第２透明度データＴ２に基づいて、減光用の画像Ｄ２の重心位置Ｇと減光用の画像Ｄ２の周辺部との間の減光用の画像Ｄ２の透明度データＴ３が、第３透明度データとしてＣＰＵ７により設定される。この第３透明度データＴ３は、第１透明度データＴ１および第２透明度データＴ２を初期条件として、一次関数又は多次関数に基づいて、ＣＰＵ７により算出される。すなわち、第３透明度データＴ３は、一次関数による線形補間、又は多次関数による多次補間を用いて、ＣＰＵ７により算出される。なお、ここでは、一次関数による線形補間が用いられる。多次関数による多次補間が実行される場合、多次関数の３つ目以上の係数には、ゲームプログラムにおいて予め定義された値が用いられる。
【０１１１】
たとえば、図６に示すように、第１透明度データＴ１が減光用の画像Ｄ２の重心位置Ｇに規定され、第２透明度データＴ２が減光用の画像Ｄ２の四隅Ｙ１，Ｙ２，Ｙ３，Ｙ４（減光用の画像Ｄ２の周辺部）に規定された場合、減光用の画像Ｄ２の重心位置Ｇと減光用の画像Ｄ２の１つの隅角部（四隅の中のいずれか１つ）とを結ぶ直線上の透明度データＴ３（第３透明度データ）が、第１透明度データＴ１および第２透明度データＴ２を初期条件として、ＣＰＵ７により算出される。たとえば、図６では、減光用の画像Ｄ２の重心位置Ｇと減光用の画像Ｄ２の隅角部Ｙ４とを結ぶ直線上の透明度データＴ３（第３透明度データ）が、第１透明度データＴ１および第２透明度データＴ２を初期条件として、ＣＰＵ７により算出される。これにより、減光用の画像Ｄ２の重心位置Ｇから減光用の画像Ｄ２の１つの隅角部に至るまでの直線上の透明度データＴ３、すなわち減光用の画像Ｄ２の重心位置Ｇからの距離に応じた第３透明度データＴ３が、算出される。
【０１１２】
すると、減光用の画像Ｄ２の重心位置Ｇから減光用の画像Ｄ２の１つの隅角部Ｙ４までの透明度データ（第１透明度データＴ１、第２透明度データＴ２、および第３透明度データＴ３）に基づいて、画像の周辺部を減光する減光用の画像Ｄ２に対応する画像データ（第２画像データ）の濃淡を調整する処理が、ＣＰＵ７により実行される。
【０１１３】
ここでは、減光用の画像Ｄ２の重心位置Ｇの第１透明度データＴ１が、完全透明に対応する透明度データであり、減光用の画像Ｄ２の周辺部の第２透明度データＴ２（減光用の画像Ｄ２の１つの隅角部の第２透明度データ）が、各フレームの階調データＫＧ１に対応する透明度データである（図５の備考を参照）。このため、減光用の画像Ｄ２の重心位置Ｇと減光用の画像Ｄ２の周辺部との間の透明度（第３透明度データＴ３に対応する透明度）は、減光用の画像Ｄ２の重心位置Ｇから離れるにつれて低下する、又は、減光用の画像Ｄ２の重心位置Ｇと同じ透明度になる。
【０１１４】
このような性質を有する透明度データ（第１透明度データＴ１、第２透明度データＴ２、および第３透明度データＴ３）が示す透明度を第２画像データに反映することにより、撮影空間の内部のオブジェクトを撮影したときの画像の光量（第１画像データに対応する画像Ｄ１の光量）が考慮された第２画像データ（調整後の第２画像データ）が生成される。これらの処理は、１フレームごとに、ＣＰＵ７により実行される。
【０１１５】
続いて、第１画像データに、調整後の第２画像データを重ね合わせる処理を、１フレームごとに、ＣＰＵ７に実行させることにより、同心円状に周辺部が減光されたモニタ表示用の画像データが生成される（Ｓ１１３）。たとえば、第１画像データに対応する画像Ｄ１に、調整後の第２画像データに対応する画像Ｄ２を重ね合わせることにより（図７を参照）、同心円状に周辺部が減光されたモニタ表示用の画像が生成される。このようにして、仮想カメラにより撮影された画像の周辺部の光量が調整された、モニタ表示用の画像が生成される。すると、周辺部が減光された各フレームのモニタ表示用の画像データが、ＣＰＵ７からの表示命令に基づいてテレビジョンモニタ２０に供給される。すると、周辺減光の影響が再現された画像が、テレビジョンモニタ２０に表示される（Ｓ１１４）。
【０１１６】
続いて、リプレイ画像の再生が終了したか否かが、ＣＰＵ７により判断される（Ｓ１１５）。すなわち、リプレイ画像用の全ての画像データがテレビジョンモニタ２０に供給されたか否かが、ＣＰＵ７により判断される。そして、リプレイ画像用の全ての画像データがテレビジョンモニタ２０に供給されるまで（Ｓ１１５でＹｅｓになるまで）、ステップ１１４（Ｓ１１４）の処理が、繰り返しＣＰＵ７により実行される。一方で、リプレイ画像用の全ての画像データがテレビジョンモニタ２０に供給された場合（Ｓ１１５でＹｅｓ）、試合が終了したか否かが、ＣＰＵ７により判断される（Ｓ１１６）。すなわち、試合を終了する命令が発行されたか否かが、ＣＰＵ７により判断される。そして、試合を終了する命令が発行された場合（Ｓ１１６でＹｅｓ）、各種のデータをＲＡＭ１２に格納する処理が行われる（Ｓ１１７）。一方で、試合を終了する命令が発行されない限り（Ｓ１１６でＮｏ）、ステップ１０５（Ｓ１０５）以降の処理が、ＣＰＵ７により繰り返し実行される。
【０１１７】
上記のように、本実施形態では、各フレームの画像データ（第１画像データ）が、グレースケールの画像データに変換される。そして、このグレースケールの画像データの階調を示す階調データＫＧ１が、算出される。そして、この階調データＫＧ１を用いて、各フレームにおける仮想カメラにより撮影された画像の光量、すなわち仮想カメラの所定の画角に対応する光量が、評価される。そして、この光量に応じて、減光用の画像データ（第２画像データ）が調整される。そして、各フレームの仮想カメラの光量に応じて調整された減光用の画像データ（第２画像データ）を、各フレームの仮想カメラにより撮影された画像データ（第１画像データ）に重ね合わせることにより、仮想カメラの画角に応じた周辺減光の影響を、仮想カメラにより撮影された画像に反映することができる。このため、実際のカメラにより撮影された画像と同様に、仮想カメラにより撮影された画像においても、リアリティのある周辺減光を再現することができる。
【０１１８】
〔他の実施形態〕
（ａ）前記実施形態では、ゲームプログラムを適用しうるコンピュータの一例としての家庭用ビデオゲーム装置を用いた場合の例を示したが、画像処理装置は、前記実施形態に限定されず、モニタが別体に構成された画像処理装置、モニタが一体に構成された画像処理装置、ゲームプログラムを実行することによって画像処理装置として機能するパーソナルコンピュータやワークステーションなどにも同様に適用することができる。
【０１１９】
（ｂ）本発明には、前述したようなゲームを実行するプログラムおよびこのプログラムを記録したコンピュータ読み取り可能な記録媒体も含まれる。この記録媒体としては、カートリッジ以外に、たとえば、コンピュータ読み取り可能なフレキシブルディスク、半導体メモリ、ＣＤ−ＲＯＭ、ＤＶＤ、ＭＯ、ＲＯＭカセット、その他のものが挙げられる。
【０１２０】
（ｃ）前記実施形態では、第１画像データを１ピクセルのグレースケールの画像データに変換することにより、画像の光量の強弱が評価される場合の例を示したが、画像の光量の強弱の評価形態は、前記実施形態に限定されず、どのようにしても良い。たとえば、第１画像データをグレースケールの画像データに変換し、このグレースケールの画像データの階調を示す階調データを平均することにより、画像の光量の強弱を評価しても良い。この場合においても、前記実施形態の効果と同様の効果を得ることができる。
【図面の簡単な説明】
【０１２１】
【図１】本発明の一実施形態によるビデオゲーム装置の基本構成図。
【図２】前記ビデオゲーム装置の一例としての機能ブロック図。
【図３】第２画像データに対応する画像の濃度の分布状態を説明するための図。
【図４】３次元ゲーム空間に配置された、撮影空間を説明するための図。
【図５】第１画像データに対応する画像の階調と、第２画像データを調整するための透明度との関係を示す図。
【図６】第２画像データに対応する画像の透明度の分布状態を説明するための図。
【図７】第１画像データに対応する画像と、調整後の第２画像データに対応する画像との重ね合わせの概念図。
【図８】多ピクセルのグレースケールの画像と、１ピクセルのグレースケールの画像との関係を示す図。
【図９】野球ゲームの全体概要を示すフロー。
【図１０Ａ】周辺減光再現システムを説明するためのフローチャート。
【図１０Ｂ】周辺減光再現システムを説明するためのフローチャート。
【符号の説明】
【０１２２】
１  制御部
２  記憶部
７  ＣＰＵ
１７  コントローラ
２０  テレビジョンモニタ
５０  カメラ設定手段
５１  撮影空間規定手段
５２  第１画像格納手段
５３  第２画像格納手段
５４  第２画像調整手段
５４ａ  光量評価手段
５４ｂ  画像光量調整手段
５５  モニタ画像生成手段
５６  画像表示手段
Ｄ１  撮影空間の内部のオブジェクトを撮影したときの画像、第１画像データに対応する画像
Ｄ２  減光用の画像、第２画像データに対応する画像
Ｇ  減光用の画像の重心位置
Ｙ１，Ｙ２，Ｙ３，Ｙ４  減光用の画像の四隅、減光用の画像の周辺部
ＫＧ１  １ピクセルのグレースケールの画像の階調データ
Ｔ１，Ｔ２，Ｔ３  透明度データ、第１透明度データ、第２透明度データ、第３透明度データ
【図１】
0004572245.tif 000002
【図２】
0004572245.tif 000003
【図３】
0004572245.tif 000004
【図４】
0004572245.tif 000005
【図５】
0004572245.tif 000006
【図６】
0004572245.tif 000007
【図７】
0004572245.tif 000008
【図８】
0004572245.tif 000009
【図９】
0004572245.tif 000010
【図１０Ａ】
0004572245.tif 000011
【図１０Ｂ】
0004572245.tif 000012