(57)【要約】【課題】通常表示されるゲーム画像の色情報を変化させた画像を用いた画面表現において、プレイヤオブジェクトの位置を把握しやすい画面表現を行うゲームプログラムおよびゲーム装置を提供すること。【解決手段】仮想カメラから見たカラー画像を生成する。次に、仮想ゲーム空間内のプレイヤオブジェクトのＺ値を基準とし、仮想ゲーム空間内の各オブジェクトとの距離に応じて、当該各オブジェクトに所定のフォグ色を加色することでフォグ画像を生成する。更に、当該フォグ画像に、所定の画素を基準として、当該フォグ画像の縦横方向の画素の距離に応じて更に所定のフォグ色を加色するためのマスク処理を施す。そして、当該フォグ画像とカラー画像とを合成した画像をゲーム画像として表示する。【選択図】図１３
2007159725.tif 000002
【特許請求の範囲】
【請求項１】
仮想ゲーム空間を仮想カメラで撮影した画像を単位時間毎に更新して表示するゲーム装置のコンピュータに実行させるゲームプログラムであって、
前記仮想カメラで撮影される仮想ゲーム空間の画像を生成する画像生成ステップと、
前記仮想ゲーム空間内に決められた基準位置から当該ゲーム空間内の他の位置までの、前記仮想カメラの撮影方向に沿った方向の距離の差に応じた割合で、前記画像生成ステップで生成された画像内の前記他の位置に対して第１色を混色する第１混色ステップと、
前記第１混色ステップによって混色された画像内の所定の画素を基準画素とし、当該基準画素から当該混色された画像における各画素までの当該画像上の距離に応じた割合で当該各画素に第２色を混色する第２混色ステップと、
前記第２混色ステップによって処理された画像を出力する出力ステップとを、前記コンピュータに実行させるゲームプログラム。
【請求項２】
仮想ゲーム空間を仮想カメラで撮影した画像を単位時間毎に更新して表示するゲーム装置のコンピュータに実行させるゲームプログラムであって、
前記仮想カメラで撮影される仮想ゲーム空間の画像を生成する画像生成ステップと、
前記画像生成ステップで生成された画像内の所定画素を基準画素とし、当該基準画素から当該生成された画像の各画素までの当該画像上の距離に応じた割合で当該各画素に第３色を混色する第３混色ステップと、
前記仮想ゲーム空間内に決められた基準位置から当該ゲーム空間内の他の位置までの、前記仮想カメラの撮影方向に沿った方向の距離の差に応じた割合で前記第３混色ステップによって混色された画像内の前記他の位置に対して第４色を混色する第４混色ステップと、
前記第４混色ステップによって処理された画像を出力する出力ステップとを、前記コンピュータに実行させるゲームプログラム。
【請求項３】
前記ゲーム空間内の基準位置から前記他の位置までの、仮想カメラの撮影方向に沿った方向の距離の差が小さいほど、各画素に対して混色する色の混色割合が低くされる、請求項１または２に記載のゲームプログラム。
【請求項４】
前記基準画素は、前記基準位置に対応する画素である、請求項１または２に記載のゲームプログラム。
【請求項５】
前記基準位置は、前記仮想ゲーム空間内に存在するプレイヤオブジェクトの位置である、請求項４に記載のゲームプログラム。
【請求項６】
仮想ゲーム空間の仮想カメラによって撮影して得られたゲーム画像をフレームバッファに記憶するとともに当該ゲーム画像の各画素の奥行き値をＺバッファに記憶する処理を行うためのゲーム装置のコンピュータに実行させるゲームプログラムであって、
前記ゲーム画像内の所定画素の奥行き値を基準値とし、当該基準値と他の画素の奥行き値との差に応じた割合で、前記ゲーム画像の各画素に対して第１色を混色する第１混色ステップと、
前記第１混色ステップによって混色されたゲーム画像内の所定画素を基準画素として、当該基準画素から当該混色されたゲーム画像の各画素までの距離に応じた割合で当該各画素に第２色を混色する第２混色ステップと、
前記第２混色ステップによって処理された画像を出力する出力ステップとを、前記コンピュータに実行させるゲームプログラム。
【請求項７】
仮想ゲーム空間の仮想カメラによって撮影して得られたゲーム画像をフレームバッファに記憶するとともに当該ゲーム画像の各画素の奥行き値をＺバッファに記憶する処理を行うためのゲーム装置のコンピュータに実行させるゲームプログラムであって、
前記ゲーム画像内の所定画素を基準画素として、当該基準画素から当該混色されたゲーム画像の各画素までの距離に応じた割合で当該各画素に第３色を混色する第３混色ステップと、
前記第３混色ステップによって混色されたゲーム画像内の所定画素の奥行き値を基準値とし、当該基準値と他の画素の奥行き値との差に応じた割合で、前記第３混色ステップによって混色されたゲーム画像の各画素に対して第４色を混色する第４混色ステップと、
前記第４混色ステップによって処理された画像を出力する出力ステップとを、前記コンピュータに実行させるゲームプログラム。
【請求項８】
前記基準値と前記他の画素の奥行き値との差が小さいほど、各画素に対して混色する色の混色割合が低くされる、請求項６または７に記載のゲームプログラム。
【請求項９】
前記基準画素は、前記基準値とする画素である、請求項６または７に記載のゲームプログラム。
【請求項１０】
前記基準値とする画素は、前記仮想ゲーム空間内に存在するプレイヤオブジェクトの位置に対応した画素である、請求項９に記載のゲームプログラム。
【請求項１１】
前記基準画素から前記各画素までの距離が小さいほど、各画素に対して混色する色の混色割合が低くされる、請求項１または２または６または７に記載のゲームプログラム。
【請求項１２】
仮想ゲーム空間を仮想カメラで撮影した画像を単位時間毎に更新して表示するゲーム装置であって、
前記仮想カメラで撮影される仮想ゲーム空間の画像を生成する画像生成部と、
前記仮想ゲーム空間内に決められた基準位置から当該ゲーム空間内の他の位置までの、前記仮想カメラの撮影方向に沿った方向の距離の差に応じた割合で、前記画像生成部で生成された画像内の前記他の位置に対して第１色を混色する第１混色部と、
前記第１混色部によって混色された画像内の所定の画素を基準画素とし、当該基準画素から当該混色された画像における各画素までの当該画像上の距離に応じた割合で当該各画素に第２色を混色する第２混色部と、
前記第２混色部によって処理された画像を画面に出力する出力部を備える、ゲーム装置。
【請求項１３】
仮想ゲーム空間を仮想カメラで撮影した画像を単位時間毎に更新して表示するゲーム装置であって、
前記仮想カメラで撮影される仮想ゲーム空間の画像を生成する画像生成部と、
前記画像生成部で生成された画像内の所定画素を基準画素とし、当該基準画素から当該生成された画像の各画素までの当該画像上の距離に応じた割合で当該各画素に第３色を混色する第３混色部と、
前記仮想ゲーム空間内に決められた基準位置から当該ゲーム空間内の他の位置までの、前記仮想カメラの撮影方向に沿った方向の距離の差に応じた割合で前記第３混色部によって混色された画像内の前記他の位置に対して第４色を混色する第４混色部と、
前記第４混色部によって処理された画像を画面に出力する出力部とを備える、ゲーム装置。
【請求項１４】
仮想ゲーム空間の仮想カメラによって撮影して得られたゲーム画像をフレームバッファに記憶するとともに当該ゲーム画像の各画素の奥行き値をＺバッファに記憶する処理を行うためのゲーム装置であって、
前記ゲーム画像内の所定画素の奥行き値を基準値とし、当該基準値と他の画素の奥行き値との差に応じた割合で、前記ゲーム画像の各画素に対して第１色を混色する第１混色部と、
前記第１混色部によって混色されたゲーム画像内の所定画素を基準画素として、当該基準画素から当該混色されたゲーム画像の各画素までの距離に応じた割合で当該各画素に第２色を混色する第２混色部と、
前記第２混色部によって処理された画像を画面に出力する出力部とを備える、ゲーム装置。
【請求項１５】
仮想ゲーム空間の仮想カメラによって撮影して得られたゲーム画像をフレームバッファに記憶するとともに当該ゲーム画像の各画素の奥行き値をＺバッファに記憶する処理を行うためのゲーム装置であって、
前記ゲーム画像内の所定画素を基準画素として、当該基準画素から当該混色されたゲーム画像の各画素までの距離に応じた割合で当該各画素に第３色を混色する第３混色部と、
前記第３混色部によって混色されたゲーム画像内の所定画素の奥行き値を基準値とし、当該基準値と他の画素の奥行き値との差に応じた割合で、前記第３混色部によって混色されたゲーム画像の各画素に対して第４色を混色する第４混色部と、
前記第４混色部によって処理された画像を画面に出力する出力部とを備える、ゲーム装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ゲームプログラムおよびゲーム装置に関し、より特定的には、仮想ゲーム空間における画像の描画処理に関する。
【背景技術】
【０００２】
近年、ゲームシステムに含まれるコンピュータの高性能化に伴い、３次元コンピュータグラフィックス技術を利用した３次元ゲームが増えている。３次元ゲームでは、プレイヤオブジェクトや地形オブジェクト等のポリゴンによって構成されるオブジェクトを３次元のゲーム空間に配置し、所定の視点によってそのゲーム空間内の様子を３次元ゲーム画面として表示している。
【０００３】
ここで、従来からある画面表現方法のひとつとして、モノクロ画像等の、通常表示されるゲーム画面の色情報を変化させた画像を用いるという方法がある。例えば、仮想ゲーム空間内において、そのゲームの舞台となる世界（以下、ワールドと呼ぶ）が複数あるとする。その「ワールド」のうちの１つに「モノクロワールド」という白黒の画素しか存在しないという設定があるとする。この場合、「モノクロワールド」以外ではカラーの画像で表示し、「モノクロワールド」においては、当該ワールド内のオブジェクト全てをモノクロ画像で表示することで他のワールドとの違いを表現していた。
【非特許文献１】週刊ファミ通９月９日号、株式会社エンターブレイン、２７４〜２７５ページ
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述したような画面表現方法においては、従来から以下に示す問題点があった。すなわち、上記「モノクロワールド」では、単純にモノクロ画像を表示し、プレイヤオブジェクトだけ色がついていたため、単調な表現となっていた。更に、背景がモノクロ画像であることから遠近感が掴みにくく、プレイヤにとって、自分の操作しているプレイヤオブジェクトの仮想ゲーム空間内での位置が把握しにくいという問題があった。
【０００５】
それ故に、本発明の目的は、通常表示されるゲーム画像の色情報を変化させた画像を用いた画面表現において、プレイヤオブジェクトの位置を把握しやすい画面表現を行うゲームプログラムおよびゲーム装置を提供することである。
【課題を解決するための手段】
【０００６】
本発明は、上記の課題を解決するために、以下の構成を採用した。なお、括弧内の参照符号および補足説明等は、本発明の理解を助けるために後述する実施形態との対応関係を示したものであって、本発明を何ら限定するものではない。
【０００７】
第１の発明は、仮想ゲーム空間を仮想カメラで撮影した画像を単位時間毎に更新して表示するゲーム装置のコンピュータに実行させるゲームプログラムであって、画像生成ステップ（Ｓ３２）と、第１混色ステップ（Ｓ３２）と、第２混色ステップ（Ｓ３３）と、出力ステップ（Ｓ６）とを有する。画像生成ステップは、仮想カメラで撮影される仮想ゲーム空間の画像を生成する。第１混色ステップは、仮想ゲーム空間内に決められた基準位置から当該ゲーム空間内の他の位置までの、仮想カメラの撮影方向に沿った方向の距離の差に応じた割合で、画像生成ステップで生成された画像内の他の位置に対して第１色を混色する。第２混色ステップは、第１混色ステップによって混色された画像内の所定の画素を基準画素とし、当該基準画素から当該混色された画像における各画素までの当該画像上の距離に応じた割合で当該各画素に第２色を混色する。出力ステップは、第２混色ステップによって処理された画像を出力する。
【０００８】
第２の発明は、仮想ゲーム空間を仮想カメラで撮影した画像を単位時間毎に更新して表示するゲーム装置のコンピュータに実行させるゲームプログラムであって、画像生成ステップ（Ｓ３２）と、第３混色ステップ（Ｓ３３）と、第４混色ステップ（Ｓ３２）と、出力ステップ（Ｓ６）とを有する。画像生成ステップは、仮想カメラで撮影される仮想ゲーム空間の画像を生成する。第３混色ステップは、画像生成ステップで生成された画像内の所定画素を基準画素とし、当該基準画素から当該生成された画像の各画素までの当該画像上の距離に応じた割合で当該各画素に第３色を混色する。第４混色ステップは、仮想ゲーム空間内に決められた基準位置から当該ゲーム空間内の他の位置までの、仮想カメラの撮影方向に沿った方向の距離の差に応じた割合で第３混色ステップによって混色された画像内の他の位置に対して第４色を混色する。出力ステップは、第４混色ステップによって処理された画像を出力する。
【０００９】
第３の発明は、第１または第２の発明において、ゲーム空間内の基準位置から前記他の位置までの、仮想カメラの撮影方向に沿った方向の距離の差が小さいほど、各画素に対して混色する色の混色割合が低くされる。
【００１０】
第４の発明は、第１または第２の発明において、基準画素は、基準位置に対応する画素である。
【００１１】
第５の発明は、第４の発明において、基準位置は、仮想ゲーム空間内に存在するプレイヤオブジェクトの位置である。
【００１２】
第６の発明は、仮想ゲーム空間の仮想カメラによって撮影して得られたゲーム画像をフレームバッファに記憶するとともに当該ゲーム画像の各画素の奥行き値をＺバッファに記憶する処理を行うためのゲーム装置のコンピュータに実行させるゲームプログラムであって、第１混色ステップ（Ｓ５２）と、第２混色ステップ（Ｓ５３）と、出力ステップ（Ｓ６）とを有する。第１混色ステップは、ゲーム画像内の所定画素の奥行き値を基準値とし、当該基準値と他の画素の奥行き値との差に応じた割合で、ゲーム画像の各画素に対して第１色を混色する。第２混色ステップは、第１混色ステップによって混色されたゲーム画像内の所定画素を基準画素として、当該基準画素から当該混色されたゲーム画像の各画素までの距離に応じた割合で当該各画素に第２色を混色する。出力ステップは、第２混色ステップによって処理された画像を出力する。
【００１３】
第７の発明は、仮想ゲーム空間の仮想カメラによって撮影して得られたゲーム画像をフレームバッファに記憶するとともに当該ゲーム画像の各画素の奥行き値をＺバッファに記憶する処理を行うためのゲーム装置のコンピュータに実行させるゲームプログラムであって、第３混色ステップ（Ｓ５３）と、第４混色ステップ（Ｓ５２）と、出力ステップ（Ｓ６）とを有する。第３混色ステップは、ゲーム画像内の所定画素を基準画素として、当該基準画素から当該混色されたゲーム画像の各画素までの距離に応じた割合で当該各画素に第３色を混色する。第４混色ステップは、第３混色ステップによって混色されたゲーム画像内の所定画素の奥行き値を基準値とし、当該基準値と他の画素の奥行き値との差に応じた割合で、第３混色ステップによって混色されたゲーム画像の各画素に対して第４色を混色する。出力ステップは、第４混色ステップによって処理された画像を出力する。
【００１４】
第８の発明は、上記第６または第７の発明において、基準値と他の画素の奥行き値との差が小さいほど、各画素に対して混色する色の混色割合が低くされる。
【００１５】
第９の発明は、上記第６または第７の発明において、基準画素は、基準値とする画素である。
【００１６】
第１０の発明は、上記第９の発明において、基準置とする画素は、仮想ゲーム空間内に存在するプレイヤオブジェクトの位置に対応した画素である。
【００１７】
第１１の発明は、上記第１または第２または第６または第７の発明において、基準画素から各画素までの距離が小さいほど、各画素に対して混色する色の混色割合が低くされる。
【００１８】
第１２の発明は、仮想ゲーム空間を仮想カメラで撮影した画像を単位時間毎に更新して表示するゲーム装置であって、画像生成部（２２、２４）と、第１混色部（２２、２４）と、第２混色部（２２、２４）と、出力部（２２、４４）とを有する。画像生成部は、仮想カメラで撮影される仮想ゲーム空間の画像を生成する。第１混色部は、仮想ゲーム空間内に決められた基準位置から当該ゲーム空間内の他の位置までの、仮想カメラの撮影方向に沿った方向の距離の差に応じた割合で、画像生成部で生成された画像内の他の位置に対して第１色を混色する。第２混色部は、第１混色部によって混色された画像内の所定の画素を基準画素とし、当該基準画素から当該混色された画像における各画素までの当該画像上の距離に応じた割合で当該各画素に第２色を混色する。出力部は、第２混色部によって処理された画像を出力する。
【００１９】
第１３の発明は、仮想ゲーム空間を仮想カメラで撮影した画像を単位時間毎に更新して表示するゲーム装置であって、画像生成部（２２、２４）と、第３混色部（２２、２４）と、第４混色部（２２、２４）と、出力部（２２、４４）とを備える。画像生成部は、仮想カメラで撮影される仮想ゲーム空間の画像を生成する。第３混色部は、画像生成部で生成された画像内の所定画素を基準画素とし、当該基準画素から当該生成された画像の各画素までの当該画像上の距離に応じた割合で当該各画素に第３色を混色する。第４混色部は、仮想ゲーム空間内に決められた基準位置から当該ゲーム空間内の他の位置までの、仮想カメラの撮影方向に沿った方向の距離の差に応じた割合で第３混色部によって混色された画像内の他の位置に対して第４色を混色する。出力部は、第４混色部によって処理された画像を画面に出力する。
【００２０】
第１４の発明は、仮想ゲーム空間の仮想カメラによって撮影して得られたゲーム画像をフレームバッファに記憶するとともに当該ゲーム画像の各画素の奥行き値をＺバッファに記憶する処理を行うためのゲーム装置であって、第１混色部（２２、２４）と、第２混色部（２２、２４）と、出力部（２２、４４）とを備える。第１混色部は、ゲーム画像内の所定画素の奥行き値を基準値とし、当該基準値と他の画素の奥行き値との差に応じた割合で、ゲーム画像の各画素に対して第１色を混色する。第２混色部は、第１混色部によって混色されたゲーム画像内の所定画素を基準画素として、当該基準画素から当該混色されたゲーム画像の各画素までの距離に応じた割合で当該各画素に第２色を混色する。出力部は、第２混色部によって処理された画像を画面に出力する。
【００２１】
第１５の発明は、仮想ゲーム空間の仮想カメラによって撮影して得られたゲーム画像をフレームバッファに記憶するとともに当該ゲーム画像の各画素の奥行き値をＺバッファに記憶する処理を行うためのゲーム装置であって、第３混色部（２２、２４）と、第４混色部（２２、２４）と、出力部（２２、４４）とを備える。第３混色部は、ゲーム画像内の所定画素を基準画素として、当該基準画素から当該混色されたゲーム画像の各画素までの距離に応じた割合で当該各画素に第３色を混色する。第４混色部は、第３混色部によって混色されたゲーム画像内の所定画素の奥行き値を基準値とし、当該基準値と他の画素の奥行き値との差に応じた割合で、第３混色部によって混色されたゲーム画像の各画素に対して第４色を混色する。出力部は、第４混色部によって処理された画像を画面に出力する。
【発明の効果】
【００２２】
上記第１の発明によれば、仮想ゲーム空間内の所定の位置を基準とし、当該位置からの距離に応じて、所定の色が加わっているゲーム画像を表示することができる。これにより、上記仮想ゲーム空間内における上記基準とする位置をわかりやすく表示することができる。
【００２３】
上記第２の発明によれば、上記第１の発明と同様の効果を得ることができる。
【００２４】
上記第３の発明によれば、当該位置から徐々に距離が遠のくにつれて、所定の色が段々と加わったゲーム画像を表示することができる。これにより、上記仮想ゲーム空間内における上記基準とする位置をわかりやすく表示することができる。
【００２５】
上記第４の発明によれば、仮想ゲーム空間内の基準位置に対応する画素を基準画素とするため、第１色の混色と第２色の混色とにおける混色の基点を同じものとすることができる。そのため、全体としてバランスの取れた混色を行うことができる。また、仮想ゲーム空間内の基準位置がどこであるのかをプレイヤにわかりやすく表示することができる。
【００２６】
上記第５の発明によれば、仮想ゲーム空間内におけるプレイヤオブジェクトの位置をプレイヤにわかりやすく表示することができる。これにより、プレイヤは、プレイヤオブジェクトを操作しやすくなる。
【００２７】
上記第６および第７の発明によれば、上記第１の発明と同様の効果を得ることができる。
【００２８】
上記第８乃至１０の発明によれば、上記第３乃至第５の発明と同様の効果を得ることができる。
【００２９】
上記第１１の発明によれば、仮想ゲーム空間内における遠近感をわかりやすくプレイヤに伝えることができる。また、仮想ゲーム空間内の基準位置をわかりやすく表示することができる。
【００３０】
上記第１２乃至１５の発明によれば、上記第１の発明と同様の効果を得ることができる。
【発明を実施するための最良の形態】
【００３１】
図１は本発明の一実施形態に係るゲームシステムの構成を示す外観図であり、図２はそのブロック図である。図１および図２に示すように、ゲームシステムは、ゲーム装置１４、光ディスク１６、メモリカード１８、コントローラ２０およびモニタ１２（図２に示すスピーカ５０を含む）を備える。光ディスク１６およびメモリカード１８は、ゲーム装置１４に着脱自在に装着される。コントローラ２０は、ゲーム装置１４に設けられる複数（図１では、４つ）のコントローラポート用コネクタのいずれかに接続される。コントローラ２０は複数の操作部を有し、具体的には、ジョイスティック２０ａ、Ａボタン２０ｂ、Ｒボタン２０ｃ、Ｂボタン２０ｅ、図示しないＺボタン等を含む。なお、他の実施形態においては、ゲーム装置１４とコントローラ２０との通信は、通信ケーブルを用いずに無線通信によって行われてもよい。また、モニタ１２およびスピーカ５０は、ＡＶケーブル等によってゲーム装置１４に接続される。なお、本発明は図１に示すような据え置き型のゲーム装置に限らず、携帯型のゲーム装置であってもよいし、業務用のゲーム装置であってもよいし、携帯電話やパソコン等のゲームを実行できる装置であってもよいことはもちろんである。以下、図２を参照しながら、本発明に係るゲームシステムにおける各部を詳細に説明するとともに、ゲームシステムにおける一般的な動作を説明する。
【００３２】
外部記憶媒体の一例である光ディスク１６は、例えばＤＶＤ−ＲＯＭであり、ゲームプログラムやキャラクタデータ等のゲームに関するデータを固定的に記憶している。プレイヤがゲームを行う場合、光ディスク１６はゲーム装置１４に装着される。なお、ゲームプログラム等を記憶する手段は、ＤＶＤ−ＲＯＭに限らず、例えばＣＤ−ＲＯＭ、ＭＯ、メモリカード、ＲＯＭカートリッジ等の記憶媒体であってもよく、また、ゲーム装置本体内のメモリやハードディスク等の記憶手段に記憶されるようにしてもよく、この場合、通信によりゲームプログラムをダウンロードするようにしてもよい。メモリカード１８は、例えばフラッシュメモリ等の書き換え可能な記憶媒体によって構成され、例えばゲームにおけるセーブデータ等のデータを記憶する。
【００３３】
ゲーム装置１４は、光ディスク１６に記録されているゲームプログラムを読み出し、ゲーム処理を行う。コントローラ２０は、プレイヤがゲーム操作に関する入力を行うための入力装置であり、前述の通りジョイスティックや複数の操作スイッチを有する。コントローラ２０は、プレイヤによるジョイスティックの操作や操作スイッチの押圧等に応じて操作データをゲーム装置１４に出力する。モニタ１２は、ゲーム装置１４から出力された画像データを画面に表示する。また、スピーカ５０は、典型的にはモニタ１２に内蔵されており、ゲーム装置１４から出力されたゲームの音声を出力する。複数のプレイヤによってゲームを行う場合、コントローラ２０はプレイヤの数だけ設けられる。
【００３４】
次に、ゲーム装置１４の構成について説明する。図２において、ゲーム装置１４内には、ＣＰＵ２２およびそれに接続されるメモリコントローラ４０が設けられる。さらに、ゲーム装置１４内において、メモリコントローラ４０は、グラフィックスプロセッシングユニット（ＧＰＵ）２４と、メインメモリ３４と、デジタル信号処理回路（ＤＳＰ）３６と、各種インターフェース（Ｉ／Ｆ）４２〜５２とに接続される。また、メモリコントローラ４０は、ＤＳＰ３６を介してサブメモリ３８と接続される。メモリコントローラ４０は、これら各構成要素間のデータ転送を制御する。
【００３５】
ゲーム開始の際、まず、ディスクドライブ５４は、ゲーム装置１４に装着された光ディスク１６を駆動する。光ディスク１６に記憶されているゲームプログラムは、ディスクＩ／Ｆ５２およびメモリコントローラ４０を介して、メインメモリ３４に読み込まれる。メインメモリ３４上のプログラムをＣＰＵ２２が実行することによって、ゲームが開始される。ゲーム開始後、プレイヤは、ジョイスティックや操作スイッチを用いてコントローラ２０に対してゲーム操作等の入力を行う。プレイヤによる入力に従い、コントローラ２０は、操作データをゲーム装置１４に出力する。コントローラ２０から出力される操作データは、コントローラＩ／Ｆ４２およびメモリコントローラ４０を介してＣＰＵ２２に入力される。ＣＰＵ２２は、入力された操作データに応じてゲーム処理を行う。ゲーム処理における画像データ生成等に際して、ＧＰＵ２４やＤＳＰ３６が用いられる。また、サブメモリ３８は、ＤＳＰ３６が所定の処理を行う際に用いられる。
【００３６】
ＧＰＵ２４は、ジオメトリユニット２６およびレンダリングユニット２８を含み、画像処理専用のメモリに接続されている。この画像処理専用メモリは、例えばカラーバッファ３０およびＺバッファ３２として利用される。ジオメトリユニット２６は、仮想３次元空間であるゲーム空間に置かれた物体や図形に関する立体モデル（例えばポリゴンで構成されるオブジェクト）の座標についての演算処理を行うものであり、例えば立体モデルの回転・拡大縮小・変形や、ワールド座標系の座標から視点座標系やスクリーン座標系の座標への変換を行うものである。レンダリングユニット２８は、所定のテクスチャに基づいて、スクリーン座標に投影された立体モデルについてピクセルごとのカラーデータ（ＲＧＢデータ）をカラーバッファ３０に書き込むことによって、ゲーム画像を生成する。また、カラーバッファ３０は、レンダリングユニット２８によって生成されたゲーム画像データ（ＲＧＢデータ）を保持するために確保されたメモリ領域である。Ｚバッファ３２は、３次元の視点座標から２次元のスクリーン座標に変換する際に視点からの奥行情報を保持するために確保されたメモリ領域である。ＧＰＵ２４は、これらを用いてモニタ１２に表示すべき画像データを生成し、適宜メモリコントローラ４０およびビデオＩ／Ｆ４４を介してモニタ１２に出力する。なお、ゲームプログラム実行時にＣＰＵ２２において生成される音声データは、メモリコントローラ４０からオーディオＩ／Ｆ４８を介して、スピーカ５０に出力される。なお、本実施形態では、画像処理専用のメモリを別途設けたハードウェア構成としたが、これに限らず例えばメインメモリ３４の一部を画像処理用のメモリとして利用する方式（ＵＭＡ：Ｕｎｉｆｉｅｄ  Ｍｅｍｏｒｙ  Ａｒｃｈｉｔｅｃｔｕｒｅ）を使うようにしてもよい。ゲーム装置１４は、ゲームプログラムを実行することにより生成したゲームデータをメモリコントローラ４０およびメモリＩ／Ｆ４６を介してメモリカード１８に転送する。また、ゲーム装置１４は、ゲーム開始に先立って、メモリカード１８に記憶されたゲームデータを、メモリコントローラ４０およびメモリＩ／Ｆ４６を介してメインメモリ３４に読み込む。
【００３７】
次に、本実施形態で想定するゲームの概要について説明する。本実施形態のゲームは、仮想的な３Ｄゲーム空間内で、プレイヤオブジェクトがリアルタイムに動き回りながら冒険するアクションアドベンチャーゲームである。仮想ゲーム空間には、プレイヤオブジェクトや敵オブジェクト、その他背景オブジェクトが存在し、これらが仮想カメラで撮影されることにより、ゲーム画像としてモニタ１２に表示される。
【００３８】
ここで、本実施形態における仮想ゲーム空間には、「ノーマル世界」と「トワイライト世界」と呼ばれる２種類の世界が存在する。「ノーマル世界」は、普段プレイヤオブジェクトが活躍する世界であり、「トワイライト世界」は、所定の条件を満たしたときのみ行くことができる世界である。「ノーマル世界」および「トワイライト世界」は、共に、仮想カメラから見た画像がゲーム画像として表示されるが、「ノーマル世界」の画像（以下、通常画像）と異なり、「トワイライト世界」では、特殊効果が施された画像（以下、特殊効果画像と呼ぶ）がゲーム画像として表示される。具体的には、「トワイライト世界」は、「ノーマル世界」に比べ、全体的にモノクロ調の、カラフルではない画像で表現される。但し、「トワイライト世界」においても、プレイヤオブジェクトについては、「ノーマル世界」における画像と同様の、色のついた状態で表示される。このとき、「トワイライト世界」におけるプレイヤオブジェクトの位置をより分かりやすくするため、プレイヤオブジェクトの周囲については「ノーマル世界」における画像と同様の、色がついた画像が表示され、プレイヤオブジェクトから距離が離れていくにつれ、徐々に色が薄くなっていくような表現を行う。換言すれば、暗闇の中でつけられた蝋燭のごとく、蝋燭（プレイヤオブジェクト）の周囲だけ明るくし（カラー画像とし）、蝋燭から離れるに連れ、段々暗くなっていく（カラーが薄れていく）ような画面効果を施した特殊効果画像をゲーム画像として表示する。
【００３９】
次に、ゲーム装置１によって実行されるゲーム処理の詳細を説明する。まず、ゲーム処理の際にメインメモリ３４に記憶されるデータについて説明する。図３は、ゲーム装置１のメインメモリ３４のメモリマップを示す図である。ゲーム処理の際、メインメモリ３４には、光ディスク１６から読み込まれたゲームプログラム３４１、画像データ３４２、特殊表示フラグ３４３、準備フラグ３４４、横方向マスクテーブル３４５、縦方向マスクテーブル３４６等が記憶される。
【００４０】
ゲームプログラム３４１は、ＣＰＵ２２の動作プログラム（後述の図４に示すフローチャートに対応する動作を実行させるためのプログラム）である。
【００４１】
画像データ３４２は、ゲーム画像（プレイヤオブジェクト、敵オブジェクト、背景オブジェクト、所定のキャラクタ）を生成するためのデータ（ポリゴンデータやテクスチャデータなど）である。
【００４２】
特殊表示フラグ３４３は、モニタ１２に表示すべきゲーム画像として、上記通常画像を表示するか特殊効果画像を表示するかを示すためのフラグである。プレイヤオブジェクトが上述した「トワイライト世界」にいるときはオンに設定され、「ノーマル世界」にいるときはオフに設定される。また、準備フラグ３４４は、特殊画像生成準備処理（詳細は後述）を実行するか否かを判定するのに用いるフラグである。
【００４３】
横方向マスクテーブル３４５および縦方向マスクテーブル３４６は、マスク処理（詳細は後述）において用いられるテーブルである。
【００４４】
なお、メインメモリ３４には、上記データの他、プレイヤオブジェクトの状態（ＨＰや装備武器等）を示すデータも記憶されている。さらに、メインメモリ３４には、ゲーム処理において用いられる種々のデータが記憶される。
【００４５】
次に、図４を参照して、ゲーム装置１０によって実行されるゲーム処理について説明する。図４はゲーム装置１０によって実行されるゲーム処理の全体処理を示すフローチャートである。図４において、まず、ＣＰＵ２２によって、特殊表示フラグ３４３等の初期化処理が行われる（ステップＳ１）。次に、特殊表示フラグ３４３がオンか否かが判定される（ステップＳ２）。すなわち、特殊効果画像を生成するか通常画像を生成するか（プレイヤオブジェクトがトワイライト世界にいるかいないか）が判定される。その結果、特殊表示フラグ３４３がオフであれば（ステップＳ２でＮＯ）、続いて、特殊表示の準備処理が処理済みか否かを示す準備フラグ３４４がオフか否かが判定される（ステップＳ８）。その結果、準備フラグ３４４がオンであれば（ステップＳ８でＹＥＳ）、準備フラグをオフにして（ステップＳ９）、ステップＳ１０の処理に進む。一方、準備フラグがオフであれば（ステップＳ８でＮＯ）、そのままステップＳ１０の処理に進む。ステップＳ１０では、通常画像を生成する処理が行われる（ステップＳ１０）。より具体的には、ゲーム空間内の各オブジェクトを構成するポリゴンの座標データであるモデリング座標系を、仮想カメラを原点にした視点座標系に変換する。そして、遠近法などの効果や前面の物体に隠れる部分などを計算し、投影変換を行う。最後に、表示される画面に合わせたスクリーン座標系に変換することで、仮想カメラからみた画像が生成され、フレームバッファに格納される（以下、この一連の処理をレンダリング処理と呼ぶ）。その後、処理がステップＳ６に進む。
【００４６】
一方、ステップＳ２において、特殊表示フラグ３４３がオンのときは（ステップＳ２でＹＥＳ）、続いて準備フラグ３４４がオンか否かが判定される（ステップＳ３）。その結果、準備フラグ３４４がオンなら（ステップＳ３でＹＥＳ）、後述のステップＳ５の処理に進む。一方、準備フラグ３４４がオフなら（ステップＳ３でＮＯ）、以下に述べる特殊画像準備処理が行われる（ステップＳ４）
【００４７】
ここで、特殊画像生成準備処理（ステップＳ４）および特殊画像生成処理（ステップＳ５）の処理概要について説明する。まず、ステップＳ５の特殊画像生成処理では、２つの画像がフレームバッファ内に生成される。１つ目は、上記ステップＳ１０と同様にレンダリングすることで得られる第１の画像（以下、カラー画像）である。もう１つは、フォグの効果（以下、フォグ処理）を加えてレンダリングすることで生成される第２の画像（以下、フォグ画像と呼ぶ）である。そして、当該フォグ画像にマスク処理（詳細は後述）を施してから、カラー画像を背景にし、フォグ画像を前景として合成することで、最終的にゲーム画像として画面に表示する特殊効果画像を生成する。このフォグ処理を行う際に必要となる各種パラメータの設定を、ステップＳ４の特殊画像生成準備処理で行う。
【００４８】
次に、本実施形態におけるフォグ処理の概要について説明する。本実施形態におけるフォグ処理とは、レンダリングをする際に行われる処理である。具体的には、一旦上記カラー画像を生成し、当該画像に対してフォグ効果を加えることで、上記仮想カメラからみた画像を生成する処理である。このフォグ効果を加えるということは、各オブジェクト（背景オブジェクトも含む）のＺ値に応じて、当該各オブジェクトのピクセルの色情報（ＲＧＢ値）に、フォグカラーとして指定された色（以下、単にフォグカラーと呼ぶ）を加えることをいう。例えば、まず、フォグカラーとして白（ＲＧＢ値＝２５５，２５５，２５５）を指定する。次に、フォグの終了距離を、例えば１００と指定する。この終了距離とは、ピクセルの色が全てフォグカラーとなる、開始点（フォグ処理を開始するＺ値）からの奥行き方向の距離をいう。例えば、赤色（ＲＧＢ値＝２５５，０，０）のポリゴンが、Ｚ値が１０の位置（これが開始点になる）にあるとする。そして、当該ポリゴンが、カメラ座標系において奥行き方向に向けて移動するに連れて段々と白くなっていき、最終的に１００の位置にくると、当該ポリゴンが完全に白で表示されるように、Ｚ値に応じて徐々にフォグカラーをＲＧＢ値に加えていく処理である。
【００４９】
また、このフォグカラーを加えるのに合わせて、透明度を示すアルファ値も設定する。換言すれば、フォグ画像の各ピクセルには、上記ＲＧＢ値に加えてアルファ値というパラメータを持たせることとなる。これは、特殊画像生成処理においてカラー画像とフォグ画像を合成した際に、前景となるフォグ画像の所定の画素については透過して背景となるカラー画像が見えるようにするためである。より具体的には、本実施形態における特殊画像生成処理によって生成された特殊効果画像は、プレイヤオブジェクトおよびその周辺についてはカラー画像が透過して見えており、プレイヤオブジェクトから遠く離れるほどフォグ画像の透過度が下がり、カラー画像が見えなくなってくるという画像になる。
【００５０】
次に、上記特殊画像生成準備処理の詳細について説明する。図５は、上記ステップＳ４で示した特殊画像生成準備処理の詳細を示すフローチャートである。図５において、まず、プレイヤオブジェクトのＺ値が取得される（ステップＳ２１）。これが、本処理におけるフォグ処理の開始点となる。次に、フォグカラーが決定される（ステップＳ２２）。これは、プレイヤオブジェクトのいるエリアやプレイヤオブジェクトの状態に応じて決定される。例えば、プレイヤオブジェクトが人間状態であるときは白（ＲＧＢ値＝を２５５，２５５，２５５）を、プレイヤオブジェクトがオオカミに変身しているときは青（ＲＧＢ値＝０，０，２５５）をフォグカラーに指定する。ここでは、フォグカラーに白を指定するとして、以下説明を続ける。
【００５１】
次に、フォグの終了距離を決定する（ステップＳ２３）。具体的には、仮想カメラの注目点のＺ値をフォグの終了距離の値とする。次に、フォグカラーの変化率（フォグカラーを加える割合）を算出する式を生成する（ステップＳ２４）。これは、例えば、フォグカラーの変化率とＺ値との関係が図６に示すようなグラフになるような式を生成する。すなわち、図６に示すように、上記開始点（プレイヤオブジェクトの位置）を基準とするＺ値の＋方向（仮想カメラから遠ざかる方向）、−方向（仮想カメラに近づく方向）のそれぞれに向けて、開始点と目標値とＺ値の差に応じて加えられる上記フォグカラーの割合が算出されるような式を生成する。
【００５２】
次に、アルファ値の設定式を生成する（ステップＳ２５）。当該アルファ値については、例えば、図７のグラフのようにアルファ値が算出される式が生成される。つまり、図７に示すように、上記開始点を基準とするＺ値の＋方向、−方向のそれぞれに向けて、開始点と目標値とＺ値の差に応じて設定するアルファ値が算出されるような式を生成する。なお、ここでは算出されるアルファ値は、０〜１００％の範囲であるとし、０％の時が完全に透過することを示すものとする。最後に、準備処理が済んだことを示すため、上記準備フラグ３４４をオンにする（ステップＳ２６）。以上で、ステップＳ４にかかる特殊画像生成準備処理は終了する。
【００５３】
図４に戻り、上記準備処理が終われば、特殊画像生成処理が行われる（ステップＳ５）。ここで、ステップＳ５の処理の詳細を説明する前に、当該処理で行われるマスク処理の概要について説明する。上述したように、ステップＳ５にかかる特殊画像生成処理においては、第１のレンダリング処理によってカラー画像が生成され、第２のレンダリング処理によって、上記準備処理で設定されたパラメータに基づいたフォグのエフェクトが施されたフォグ画像が生成される。そして、これら２つの画像を、カラー画像を背景に、フォグ画像を前景にして画像合成するが、この合成の前に、上記フォグ画像に対して、当該フォグ画像の縦横方向についてのマスク処理が行われる。当該マスク処理は、上記フォグ処理だけでは、図８（Ａ）に示すように、上記開始点、すなわちプレイヤオブジェクトの位置と同じ横方向および縦方向上のオブジェクトについては、一律に同じフォグカラーおよびアルファ値が設定されることになる。そのため、図８（Ｂ）に示すように、プレイヤオブジェクトの周辺についてはフォグカラーおよびアルファ値が低くなるようにし、横方向および縦方向が離れるにつれ、フォグカラーおよびアルファ値を高まるように上記フォグ画像の所定のピクセルの色情報（ＲＧＢα）を補正する処理である。本処理の概要を説明すると、上記フォグ画像の所定の点（プレイヤオブジェクトの足元とする；以下、マスク基準点と呼ぶ）を基準として、横方向および縦方向の一定の範囲内における所定のピクセル（具体的には、アルファ値が所定値以下のピクセル）について、横方向のマスクテーブルおよび縦方向のマスクテーブルに基づいたフォグ色の補正およびアルファ値の補正を行う。このマスクテーブルは、プレイヤの状態に応じた、異なるパターンの複数のマスクテーブルがあらかじめ用意される。例えば、プレイヤオブジェクトが変身することによって、人間の状態と狼の状態とを切り替えることができるとする。そして、プレイヤオブジェクトが人間状態であるときは、図９および図１０に示すような、人間状態用のマスクテーブル３４５１および３４６１が用いられる。また、プレイヤオブジェクトが狼に変身しているときは、図１１および図１２に示すような、狼状態用のマスクテーブル３４５２および３４６２が用いられる。ここでは、人間状態用のマスクテーブルが使用されるものとして、説明を続ける。
【００５４】
図９は、横方向のマスクテーブル３４５１の一例である。また、図１０は、縦方向のマスクテーブル３４６１の一例である。図９において、上記マスク基準点を基準とする横方向（ｘ）へのピクセルの差分値８１に、アルファ調整値８２およびフォグカラー調整値８３が対応付けられている。また、図１０においては、縦方向（ｙ）ピクセルとの差分値９１に、アルファ調整値９２およびフォグカラー調整値９３が対応付けられている。図９のマスクテーブルを適用してマスク処理を行う場合、マスク基準点となるピクセル（差分値８１が０のピクセル）については色情報・アルファ値は補正しない。そして、マスク基準点から右方向（＋方向）に向けて１０ピクセルまでは、アルファ値を１０％加算する。また、フォグカラーが５％強まるように色情報を補正する。同様に、マスク基準点から左方向（−方向）に向けて１０ピクセルまでもアルファ値を１０％加算し、フォグカラーを５％強める。以降、マスク基準点から離れたピクセルほど、加算されるアルファ値が高まり、かつフォグカラーも強まっていく。このように、横方向については、マスク基準点からの左右方向の距離の差に応じて、アルファ値及びフォグカラーの割合を補正する。縦方向についても、横方向と同様に、フォグ画像のマスク基準点からの距離に応じてアルファ値及びフォグカラーの割合が補正される。但し、図１０に示すように、横方向のときと比べ、マスク基準点から一定の範囲までは、補正が行われない。これは、本実施形態においてはフォグ画像のマスク基準点が、上述のようにプレイヤオブジェクトの足元とするために仮想カメラの位置や画角を設定しており、足元（マスク基準点）からプレイヤオブジェクトの身長の高さ分までについては、補正を行わないようにするためである。
【００５５】
図１３は、上記ステップＳ５で示した特殊画像生成処理の詳細を示すフローチャートである。図１３において、まず、第１のレンダリング処理が行われる（ステップＳ３１）。これによって、３Ｄゲーム空間をレンダリングしたカラー画像がフレームバッファ内に生成される。次に、第２のレンダリング処理が行われる（ステップＳ３２）。すなわち、上記と同じ３Ｄゲーム空間からフォグ効果のベースになるカラー画像を生成する。これに対して、上述の特殊画像生成準備処理で設定したフォグの効果を加えることでフォグ画像を生成する。そして、当該フォグ画像をフレームバッファに格納する処理が行われる。
【００５６】
次に、ステップＳ３２で生成したフォグ画像に対して、マスク処理が行われる（ステップＳ３３）。図１４は、上記ステップＳ３３で示したマスク処理の詳細を示すフローチャートである。図１４において、まず、上述したような人間状態用の横方向マスクテーブル３４５１、および縦方向のマスクテーブル３４６１が読み込まれる（ステップＳ４１）。次に、上記フォグ画像のマスク基準点となるピクセルの座標値を取得する（ステップＳ４２）。続いて、当該フォグ画像のピクセルのうち、アルファ値が所定値以下、例えば、１０％以下のピクセルを抽出する（ステップＳ４３）。これは、処理負荷の軽減の観点から、上記３次元ゲーム空間内におけるプレイヤオブジェクトの周辺の範囲だけをマスク処理の対象とするためである。
【００５７】
次に、横方向のマスク処理が行われる（ステップＳ４４）。このステップＳ４４の処理をより具体的に説明すると、上記ステップＳ４３で抽出したピクセルのｘ座標（横方向の座標）と上記ステップＳ４２で取得したマスク基準点との距離（ピクセル数）を算出する。そして、上記横方向マスクテーブル３４５１を参照し、当該距離に応じたアルファ調整値８２を当該ピクセルのアルファ値に加算する。併せて、横方向マスクテーブルのフォグカラー調整値８３の示す値だけ上記フォグ色が強まるように当該ピクセルのＲＧＢ値を調整する。すなわち、フォグカラー調整値８３に示される割合だけフォグカラーを強める。
【００５８】
次に、縦方向のマスク処理が行われる（ステップＳ４５）。このステップＳ４５の処理も、ステップＳ４４の処理と同様に、上記ステップＳ４３で抽出したピクセルのｙ座標（縦方向の座標）と上記マスク基準点との間の距離を算出する。そして、上記縦方向マスクテーブル３４６１を参照し、当該距離に応じたアルファ調整値９２を当該ピクセルのアルファ値に加算する。併せて、縦方向マスクテーブルのフォグカラー調整値９３の示す割合だけフォグが強まるように当該ピクセルのＲＧＢ値を調整する。以上で、ステップＳ３３にかかるマスク処理が終了する。
【００５９】
図１３に戻り、ステップＳ３３のマスク処理が終われば、続いて、カラー画像を背景にし、フォグ画像を前景にして画像合成を行う。そして、当該合成した画像を特殊効果画像としてフレームバッファに格納する（ステップＳ３４）。具体的には、以下の式で、画素値Ｒが算出され、画像が合成されることで特殊効果画像が生成されることになる。
Ｒ＝  Ｒ１×（１．０−α）  ＋  Ｒ２×α
（Ｒ１はカラー画像（背景）のＲＧＢ、Ｒ２はフォグ画像（前景）のＲＧＢ、αはフォグ画像に設定されているアルファ値で０≦α≦１、1＝１００％）
このように、カラー画像とフォグ画像を合成することで、上述のようなフォグ画像の色の境界の部分をぼやかすことができる。すなわち、フォグカラーをＺ値等に応じて加えた結果、加えたフォグカラーの境界部分がはっきりと見えて不自然な画像になることを抑止することができる。これにより、プレイヤオブジェクトの周囲についてはカラー画像が透過してみえているような特殊効果画像が生成されることになる。以上で、図４のステップＳ５にかかる特殊画像生成処理は終了する。
【００６０】
図４に戻り、次に、ステップＳ５の処理の次に、表示処理が行われる（ステップＳ６）。すなわち、フレームバッファに格納されている、ステップＳ５で生成された特殊効果画像またはステップＳ１０で生成された通常画像をゲーム画像としてモニタ１２に表示する処理が行われる。ステップＳ６の後、ゲーム終了か否かが判断される（ステップＳ７）。その結果、ＹＥＳの場合、ゲーム処理を終了し、ＮＯの場合、ステップＳ２に戻って、ゲーム処理が繰り返される。
【００６１】
このように、本実施形態では、「トワイライト世界」のように、特殊効果画像で表現されるべき世界において、プレイヤオブジェクトに近いところについてはカラーをはっきりと表示し、プレイヤオブジェクトから遠いところはカラーを弱めて表示する。これによって、プレイヤオブジェクトが活躍する舞台となる世界を特殊効果画像を用いて表現することでゲーム内容を多彩なものとしつつも、当該特殊効果画像で表示される世界におけるプレイヤオブジェクトの位置をプレイヤに把握させやすくして、操作しやすくすることができる。
【００６２】
なお、上述の実施形態においては、フォグ画像に対してアルファ値を設定していた。これに限らず、カラー画像に対してアルファ値を設定するようにしてもよい。すなわち、上記第１のレンダリング処理時に、アルファ値を加えてレンダリング処理を行い、第２のレンダリング処理ではアルファ値を設定しないようにしてもよい。この場合は、アルファ値については、図７とは逆に、プレイヤオブジェクトの位置においてアルファ値が一番高く（つまり、透過度が低い）、プレイヤオブジェクトから離れていくにつれ、アルファ値が低くなる（つまり、透過度が高い）ように設定すればよい（図１５参照）。
【００６３】
また、仮想ゲーム空間内における時間帯やプレイヤオブジェクトのいる場所、プレイヤオブジェクトの移動速度や種類等に応じて、図１６に示すように、アルファ値を全体的に高め、あるいは低めにずらすような調整をしてもよい。具体的には、上記ステップＳ２５において算出したアルファ値の式（図１６のグラフ１０１）に対して、プレイヤオブジェクトの状態に応じた所定の値を加算・減算し、あるいは、所定の倍率をかけることで、全体的にフォグ画像寄り（図１６のグラフ１０２）あるいはカラー画像寄り（図１６のグラフ１０３）になるよう調整する。アルファ値について、図１６のグラフ１０２のような値に調整した場合は、プレイヤオブジェクト周辺と遠景との間において、カラー画像とフォグ画像との色の変化の度合い（コントラスト）はあまり大きくなく、その結果、プレイヤオブジェクトの周辺のカラーが強調された画像とはならない。一方、図１６のグラフ１０３のような値への調整を行った場合は、逆にカラー画像とフォグ画像との色の変化の度合いが大きくなり、プレイヤオブジェクトの周辺のカラーがより強調された画像となる。その結果、よりプレイヤオブジェクトの位置がわかりやすい画像となる。
【００６４】
例えば、時間帯に応じて上述のような調整をするときは、仮想ゲーム空間が夜のときは、アルファ値が図１６のグラフ１０２になるような調整を行う。すなわち、全体的にフォグ画像寄りの画像とする。一方、昼のときは、アルファ値が図１６のグラフ１０３になるような調整を行って、全体的にカラー画像寄りの画像とする。また、場所に応じて調整させるときは、例えば、上述した「トワイライト世界」では、算出したアルファ値をそのまま用いて（つまり、図１６のグラフ１０１の値）、「トワイライト世界」から「ノーマル世界」への出口に近づいたときに、徐々に図１６のグラフ１０３になるようにアルファ値を調整していくようにすることが考えられる。また、プレイヤオブジェクトの移動速度に応じて調整するときは、例えば、移動速度が速いときは、アルファ値が図１６のグラフ１０３になるような調整、すなわちフォグ画像寄りの画像になるよう調整し、停止しているときは、アルファ値が図１６のグラフ１０３になるような調整を行って、カラー画像寄りの画像にすることが考えられる。これは、プレイヤオブジェクトが移動しているときは、上述したような特殊効果画像を使わなくとも、その動きがあるが故にプレイヤオブジェクトの位置はプレイヤにとって把握しやすい。しかし、プレイヤオブジェクトの移動が停止してしまうと、上記特殊効果画像を使っていない場合、当該プレイヤオブジェクトの位置が分かりにくくなってしまうことから、プレイヤオブジェクトの周囲のカラーを強め、その位置をプレイヤに分かりやすくさせるためである。また、プレイヤオブジェクトの種類に応じて調整させるときは、次のようなことが考えられる。例えば、プレイヤオブジェクトが人間の状態のときは、算出したアルファ値をそのまま用い、狼の状態のときは、アルファ値が図１６のグラフ１０２になるような調整を行って、全体的にフォグ画像寄りの画像にすることが考えられる。このように、ゲームの展開や自然環境の変化等に応じて、アルファ値の特性を調整させることで、ゲームの内容に応じた、より臨場感のあるゲームを提供できる。
【００６５】
また、上述した第２のレンダリング処理（図４のステップＳ５）を行う代わりに、カラー画像を生成する際にＺバッファに格納された奥行き値を利用するようにしてもよい。つまり、第１のレンダリング処理で生成したカラー画像に対して、Ｚバッファの値に応じた所定のフォグ色を当該カラー画像の各画素に加えるようにしてもよい。図１７は、第２のレンダリング処理を行わない場合の特殊効果画像生成処理（図４のステップＳ５の代わりに行われる）の詳細を示すフローチャートである。図１７においては、上述のステップＳ３１と同様の処理で第１のレンダリング処理でカラー画像を生成する（ステップＳ５１）。このとき、レンダリングした結果のピクセルの値がフレームバッファに書き込まれるのに加え、ピクセルのＺ値（奥行き値）がＺバッファに書き込まれる。次に、当該カラー画像の所定の画素（例えば、プレイヤオブジェクトが表示される画素）のＺ値を基準値とし、当該基準値と他の画素のＺ値との差に応じて、上記図６で示したグラフになるようにフォグ色を加える（ステップＳ５２）。そして、当該フォグ色を加えたカラー画像に上記ステップＳ３３と同様のマスク処理を行う（ステップＳ５３）。このように加工したカラー画像を特殊効果画像とする。これにより、レンダリング処理を２度行う必要がなくなり、処理負荷を軽減することができる。また、このようにフォグ色を加えた画像を、上述の実施形態と同様にフォグ色を加える前のカラー画像と合成することで、フォグ色の境界をぼやかすようにしてもよい。この場合、上述のようにＺバッファの値に応じてフォグ色を加える際に、同じくＺバッファの値に応じてアルファ値も設定することはいうまでもない。
【００６６】
更に、先にステップＳ５２とＳ５３の処理の順番を逆にしてもよい。つまり、上記第１のレンダリング処理でフレームバッファに格納されたカラー画像に対して、上述したステップＳ５３にかかるマスク処理を行う。そして、当該マスク処理後の画像に対して、ステップＳ５２にかかる処理、すなわちＺ値に応じたフォグ色を加える処理を行うようにしてもよい。
【００６７】
また、上述した実施形態では、フォグ色として同一色を用いていたが、これに限らず、フォグ色として複数の色を用いるようにしてもよい。例えば、上記ステップＳ３２やＳ５２における処理でＺ値に応じて加えられるフォグ色を白色にする。一方、上記ステップＳ３３やＳ５３におけるマスク処理で加えられるフォグ色は灰色にする等が考えられる。これにより、仮想ゲーム空間の奥行きと上下左右とのフォグ色のバランスを取ることが可能となり、違和感の少ないゲーム画像を生成できる。
【図面の簡単な説明】
【００６８】
【図１】本発明の一実施形態に係るゲームシステムの構成を示す外観図
【図２】図１に示すゲームシステムのブロック図
【図３】メインメモリのメモリマップを示す図
【図４】ゲーム処理のフローチャート
【図５】図４のステップＳ４にかかる特殊画像生成準備処理の詳細を示すフローチャート
【図６】フォグカラー変化率算出の一例を示すグラフ
【図７】アルファ値設定の一例を示すグラフ
【図８】マスク処理の概要を説明するための図
【図９】プレイヤオブジェクトが人間状態のときのＸ方向のマスクテーブルの一例
【図１０】プレイヤオブジェクトが人間状態のときのＹ方向のマスクテーブルの一例
【図１１】プレイヤオブジェクトが狼状態のときのＸ方向のマスクテーブルの一例
【図１２】プレイヤオブジェクトが狼状態のときのＹ方向のマスクテーブルの一例
【図１３】図４のステップＳ５にかかる特殊画像生成処理の詳細を示すフローチャート
【図１４】図１２のステップＳ３３にかかるＸＹマスク処理の詳細を示すフローチャート
【図１５】アルファ値の設定の一例を示すグラフ
【図１６】プレイヤオブジェクトの状態等に応じたアルファ値の設定の一例を示すグラフ
【図１７】第２のレンダリング処理を行わない場合の特殊画像生成処理の詳細を示すフローチャート
【符号の説明】
【００６９】
１２  モニタ
１４  ゲーム装置
１６  光ディスク
１８  メモリカード
２０  コントローラ
２２  ＣＰＵ
２４  ＧＰＵ
３４  メインメモリ
【図１】
2007159725.tif 000003
【図２】
2007159725.tif 000004
【図３】
2007159725.tif 000005
【図４】
2007159725.tif 000006
【図５】
2007159725.tif 000007
【図６】
2007159725.tif 000008
【図７】
2007159725.tif 000009
【図８】
2007159725.tif 000010
【図９】
2007159725.tif 000011
【図１０】
2007159725.tif 000012
【図１１】
2007159725.tif 000013
【図１２】
2007159725.tif 000014
【図１３】
2007159725.tif 000015
【図１４】
2007159725.tif 000016
【図１５】
2007159725.tif 000017
【図１６】
2007159725.tif 000018
【図１７】
2007159725.tif 000019