(57)【特許請求の範囲】
【請求項１】
ゲーム空間における少なくとも地形オブジェクトおよびプレイヤキャラクタを前記ゲーム空間に配置された仮想カメラに基づいて俯瞰的に表示するゲーム装置であって、
プレイヤの操作に応答して、前記ゲーム空間における前記プレイヤキャラクタおよび前記仮想カメラの位置を決定する位置決定手段、
前記仮想カメラから前記地形オブジェクトまでの奥行情報をＺバッファに書込みながら、前記地形オブジェクトを地形オブジェクト画像によってフレームバッファ内に描画する地形オブジェクト描画手段、
前記Ｚバッファの奥行情報を書換えず、前記プレイヤキャラクタを第１目印画像によって前記フレームバッファ内に描画する第１目印画像描画手段、および
前記Ｚバッファの奥行情報を参照し、かつ前記プレイヤキャラクタが前記地形オブジェクトよりも前記仮想カメラ側にあるときは前記Ｚバッファの奥行情報を書換えながら、前記プレイヤキャラクタをプレイヤキャラクタ画像によって前記フレームバッファ内に描画するプレイヤキャラクタ描画手段を備える、ゲーム装置。
【請求項２】
前記地形オブジェクトは少なくとも前記ゲーム空間に建物や壁を表示するための建物オブジェクトを含み、
前記第１目印画像描画手段は、前記ゲーム画像における前記建物オブジェクトの画像上に第１目印画像を描画する、請求項１記載のゲーム装置。
【請求項３】
前記第１目印画像は特定形状の第1記号画像を含む、請求項１または２記載のゲーム装置。
【請求項４】
前記第１記号画像は前記プレイヤキャラクタと同一の形状でかつ前記プレイヤキャラクタとは異なるテクスチャを有する、請求項３記載のゲーム装置。
【請求項５】
前記ゲーム空間に敵キャラクタおよびアイテムの少なくとも一方を配置する配置手段、
前記敵キャラクタおよび前記アイテムの少なくとも一方が前記地形オブジェクトに隠れるかどうか判断する第２判断手段、および
前記第２判断手段の判断に応じて、前記ゲーム画像における前記地形オブジェクトの画像上の、前記敵キャラクタおよびアイテムの少なくとも一方に相当する位置に第２目印画像を描画する第２目印画像描画手段をさらに備える、請求項１ないし４のいずれかに記載のゲーム装置。
【請求項６】
前記プレイヤキャラクタから前記敵キャラクタおよび前記アイテムの少なくとも一方までの距離に応じて前記第２目印画像の色合いを変更する色合い変更手段をさらに備える、請求項５記載のゲーム装置。
【請求項７】
前記色合い変更手段は、前記プレイヤキャラクタから前記敵キャラクタおよび前記アイテムの少なくとも一方までの距離が遠くなるほど薄くなるように前記第２目印画像の色合いを変更する、請求項６記載のゲーム装置。
【請求項８】
前記第２目印画像は特定形状の第２記号画像を含む、請求項５ないし７のいずれかに記載のゲーム装置。
【請求項９】
前記地形オブジェクトは地面または床面を表す地面オブジェクトを含み、
前記第１目印画像描画手段によって前記第１目印画像を描画するとき、前記プレイヤキャラクタの足元の前記地面オブジェクトの位置に第３目印画像を描画する第３目印画像描画手段をさらに備える、請求項１ないし８のいずれかに記載のゲーム装置。
【請求項１０】
前記第３目印画像は特定形状の第３記号画像を含む、請求項９記載のゲーム装置。
【請求項１１】
前記第３記号画像は、前記プレイヤキャラクタの足元からの距離に応じて色調の変化する画像を含む、請求項１０記載のゲーム装置。
【請求項１２】
ゲーム空間における少なくとも地形オブジェクトおよびプレイヤキャラクタを前記ゲーム空間に配置された仮想カメラに基づいて俯瞰的に表示するゲーム装置に、
プレイヤの操作に応答して、前記ゲーム空間における前記プレイヤキャラクタおよび前記仮想カメラの位置を決定する位置決定ステップ、
前記仮想カメラから前記地形オブジェクトまでの奥行情報をＺバッファに書込みながら、前記地形オブジェクトを地形オブジェクト画像によってフレームバッファ内に描画する地形オブジェクト描画ステップ、
前記Ｚバッファの奥行情報を書換えず、前記プレイヤキャラクタを第１目印画像によって前記フレームバッファ内に描画する第１目印画像描画ステップ、および
前記Ｚバッファの奥行情報を参照し、かつ前記プレイヤキャラクタが前記地形オブジェクトよりも前記仮想カメラ側にあるときは前記Ｚバッファの奥行情報を書換えながら、前記プレイヤキャラクタをプレイヤキャラクタ画像によって前記フレームバッファ内に描画するプレイヤキャラクタ描画ステップを実行させる、ゲームプログラム。
【請求項１３】
前記地形オブジェクトは少なくとも前記ゲーム空間に建物や壁を表示するための建物オブジェクトを含み、
前記第１目印画像描画ステップでは、前記ゲーム画像における前記建物オブジェクトの画像上に第１目印画像を描画する、請求項１２記載のゲームプログラム。
【請求項１４】
前記第１目印画像は特定形状の第1記号画像を含む、請求項１２または１３記載のゲームプログラム。
【請求項１５】
前記第１記号画像は前記プレイヤキャラクタと同一の形状でかつ前記プレイヤキャラクタとは異なるテクスチャを有する、請求項１４記載のゲームプログラム。
【請求項１６】
前記ゲーム装置にさらに、
前記ゲーム空間に敵キャラクタおよびアイテムの少なくとも一方を配置する配置ステップ、
前記敵キャラクタおよび前記アイテムの少なくとも一方が前記地形オブジェクトに隠れるかどうか判断する第２判断ステップ、および
前記第２判断ステップでの判断に応じて、前記ゲーム画像における前記地形オブジェクトの画像上に、前記敵キャラクタおよびアイテムの少なくとも一方に相当する位置に第２目印画像を描画する第２目印画像描画ステップを実行させる、請求項１２ないし１５のいずれかに記載のゲームプログラム。
【請求項１７】
前記第２目印画像描画ステップは、前記プレイヤキャラクタから前記敵キャラクタおよび前記アイテムの少なくとも一方までの距離に応じて前記第２目印画像の色合いを変更する色合い変更ステップを含む、請求項１６記載のゲームプログラム。
【請求項１８】
前記色合い変更ステップでは前記プレイヤキャラクタから前記敵キャラクタおよび前記アイテムの少なくとも一方までの距離が遠くなるほど薄くなるように前記第２目印画像の色合いを変更する、請求項１７記載のゲームプログラム。
【請求項１９】
前記第２目印画像は特定形状の第２記号画像を含む、請求項１５ないし１８のいずれかに記載のゲームプログラム。
【請求項２０】
前記地形オブジェクトは地面または床面を表す地面オブジェクトを含み、
前記ゲーム装置にさらに、前記第１目印画像描画ステップによって前記第１目印画像を描画するとき、前記プレイヤキャラクタの足元の前記地面オブジェクトの位置に第３目印画像を描画する第３目印画像描画ステップを実行させる、請求項１２ないし１９のいずれかに記載のゲームプログラム。
【請求項２１】
前記第３目印画像描画ステップでは特定形状の前記第３目印画像を描画する、請求項２０記載のゲームプログラム。
【請求項２２】
前記第３記号画像は、前記プレイヤキャラクタの足元からの距離に応じて色調の変化する画像を含む、請求項２１記載のゲームプログラム。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
この発明はゲーム装置およびゲームプログラムに関し、特にたとえばゲーム空間に存在するゲームキャラクタ（プレイヤキャラクタや敵キャラクタおよびアイテム等）および地形オブジェクト（地面オブジェクト，建物オブジェクト等）を仮想カメラによって俯瞰した３次元画像を表示する、ゲーム装置およびそれのためのゲームプログラムに関する。
【０００２】
【従来の技術】
従来より、プレイヤによるコントローラの操作に応じて、ゲーム空間内をキャラクタが動きまわるアクションゲームなどのゲームがある。このようなゲームでは、ゲーム空間におけるプレイヤキャラクタや地形オブジェクト（壁や建物など）等は、ゲーム空間に設けられた仮想カメラによって俯瞰的に撮影された３次元（３Ｄ）画像として表示される。仮想カメラは、プレイヤの操作に応じてプレイヤキャラクタの移動とともに移動することによって、常にゲーム画面にプレイヤキャラクタを映し出している。このようなゲームでは、プレイヤの操作に応じて移動するプレイヤキャラクタが、ゲーム空間に配置された地形オブジェクトなどの後ろ側に回り込みむと、プレイヤキャラクタが地形オブジェクトの陰に隠れてしまう場合がある。このとき、従来のゲームでは、影に隠れたとき直ちに仮想カメラを回転させて、地形オブジェクトの後ろに回りこませてプレイヤキャラクタを表示するようにしたり、プレイヤキャラクタが地形オブジェクトの陰に隠れたとき、仮想カメラを回転させることなく、その地形オブジェクト自体を半透明にすることでプレイヤキャラクタ自身が見えるように表示させたりしている。
【０００３】
【発明が解決しようとする課題】
しかしながら、仮想カメラを直ちに回転させた場合には、その回転によって仮想カメラの位置または方向が直前の状態とは異なることになるので、プレイヤキャラクタを向かわせていた方向がすぐに把握できないため、プレイヤがその操作に戸惑うという問題がある。
【０００４】
また、地形オブジェクト自体を半透明にした場合には、プレイヤキャラクタ以外の背景も見えてしまうので、プレイヤキャラクタより手前の地形オブジェクトがないに等しい状態となり、ゲームとして面白みが少なくなるという問題がある。また、地形オブジェクトが半透明になることで、本来なら地形オブジェクトの後に隠れていて描画しなくてもよい敵キャラクタなども、プレイヤから見えているときと同様の状態でリアルに描画し動かす必要があるので、その処理負担も増えてしまうとう問題もある。
【０００５】
それゆえに、この発明の主たる目的は、新規なビデオゲーム装置およびゲームプログラムを提供することである。
【０００６】
この発明の他の目的は、プレイヤの操作性を損なうことのない、ビデオゲーム装置およびゲームプログラムを提供することである。
【０００７】
この発明の他の目的は、処理負担を大きくしない、ビデオゲーム装置およびゲームプログラムを提供することである。
【０００９】
【課題を解決するための手段】
この発明は、ゲーム空間における少なくとも地形オブジェクトおよびプレイヤキャラクタをゲーム空間に配置された仮想カメラに基づいて俯瞰的に表示するゲーム装置であって、プレイヤの操作に応答して、ゲーム空間におけるプレイヤキャラクタおよび仮想カメラの位置を決定する位置決定手段、仮想カメラから地形オブジェクトまでの奥行情報をＺバッファに書込みながら、地形オブジェクトを地形オブジェクト画像によってフレームバッファ内に描画する地形オブジェクト描画手段、Ｚバッファの奥行情報を書換えず、プレイヤキャラクタを第１目印画像によってフレームバッファ内に描画する第１目印画像描画手段、およびＺバッファの奥行情報を参照し、かつプレイヤキャラクタが地形オブジェクトよりも仮想カメラ側にあるときはＺバッファの奥行情報を書換えながら、プレイヤキャラクタをプレイヤキャラクタ画像によってフレームバッファ内に描画するプレイヤキャラクタ描画手段を備える、ゲーム装置である。
【００１１】
地形オブジェクトが少なくともゲーム空間に建物や壁を表示するための建物オブジェクトを含む場合、第１目印画像描画手段は、ゲーム画像における建物オブジェクトの画像上に第１目印画像を描画する。
【００１２】
なお、第１目印画像は特定形状の第1記号画像を含み、また、その第１記号画像はプレイヤキャラクタと同一の形状でかつプレイヤキャラクタとは異なるテクスチャを有する。
【００１３】
ゲーム装置はさらに、ゲーム空間に敵キャラクタおよびアイテムの少なくとも一方を配置する配置手段、敵キャラクタおよびアイテムの少なくとも一方が地形オブジェクトに隠れるかどうか判断する第２判断手段、および第２判断手段の判断に応じて、ゲーム画像における地形オブジェクトの画像上に、敵キャラクタおよびアイテムの少なくとも一方の少なくとも位置を示すための第２目印画像を描画する第２目印画像描画手段を備えることもできる。
【００１４】
この場合、プレイヤキャラクタから敵キャラクタおよびアイテムの少なくとも一方までの距離に応じて第２目印画像の色合いを変更する色合い変更手段をさらに設けてもよい。
【００１５】
ただし、色合い変更手段は、プレイヤキャラクタから敵キャラクタおよびアイテムの少なくとも一方までの距離が遠くなるほど薄くなるように第２目印画像の色合いを変更する。
【００１６】
なお、第２目印画像は特定形状の第２記号画像であってよい。
【００１７】
ゲーム装置にはさらに、第１目印画像描画手段によって第１目印画像を描画するとき、プレイヤキャラクタの足元の地面の所定範囲を示すための第３目印画像をその足元の地面オブジェクトの位置に描画する第３目印画像描画手段を設けることもできる。
【００１８】
地形オブジェクトが地面または床面を表す地面オブジェクトを含みとき、第３目印画像描画手段は、プレイヤキャラクタの足元の地面オブジェクトの位置に第３目印画像を描画する。
【００１９】
ただし、第３目印画像は特定形状の第３記号画像を含み、その第３記号画像は、プレイヤキャラクタの足元からの距離に応じて色調の変化する画像であってよい。
【００２１】
第２の発明は、ゲーム空間における少なくとも地形オブジェクトおよびプレイヤキャラクタをゲーム空間に配置された仮想カメラに基づいて俯瞰的に表示するゲーム装置に、プレイヤの操作に応答して、ゲーム空間におけるプレイヤキャラクタおよび仮想カメラの位置を決定する位置決定ステップ、仮想カメラから地形オブジェクトまでの奥行情報をＺバッファに書込みながら、地形オブジェクトを地形オブジェクト画像によってフレームバッファ内に描画する地形オブジェクト描画ステップ、Ｚバッファの奥行情報を書換えず、プレイヤキャラクタを第１目印画像によってフレームバッファ内に描画する第１目印画像描画ステップ、およびＺバッファの奥行情報を参照し、かつプレイヤキャラクタが地形オブジェクトよりも仮想カメラ側にあるときはＺバッファの奥行情報を書換えながら、プレイヤキャラクタをプレイヤキャラクタ画像によってフレームバッファ内に描画するプレイヤキャラクタ描画ステップを実行させるためのゲームプログラムである。
【００２８】
この発明において、位置決定手段は、実施例でいえば、図２のＣＰＵ３６を含み、図４のステップＳ７およびＳ９に相当し、プレイヤのコントローラ操作に応答して、プレイヤキャラクタおよび仮想カメラのゲーム空間内での位置を更新的に決定する。地形オブジェクト描画手段は、実施例でいえば、ＣＰＵ３６およびＧＰＵ４２を含み、図６のステップＳ31に相当する。この地形オブジェクト描画手段は、図７のステップＳ４３において地形オブジェクトのテクスチャをフレームバッファに内に描画するとともに、ステップＳ４５においてＺバッファの奥行き情報を更新（格納）する。
【００２９】
第１目印画像描画手段は、実施例でいえば、ＣＰＵ３６，ＧＰＵ４２および図８のステップＳ５３およびＳ５５に相当し、特定形状の第１目印画像をフレームバッファ内に描画する。このとき、具体的には、ステップＳ５５（図８）において、Ｚバッファの奥行き情報を無視し、つまり更新することなく、第１目印画像のテクスチャをフレームバッファに書き込む。さらに、第２発明におけるプレイヤキャラクタ描画手段は、実施例でいえば、ＣＰＵ３６およびＧＰＵ４２を含み、図６のステップＳ３５に相当する。このプレイヤキャラクタ描画手段は、具体的には、図１２のステップＳ７３においてＺバッファを参照し、プレイヤキャラクタが地形オブジェクトの手前側（仮想カメラ側）にあるときには、ステップＳ７７でＺバッファの奥行き情報を更新しながら、ステップＳ７９でプレイヤキャラクタのテクスチャをフレームバッファ内に描画する。
【００３０】
このことによって、この発明では、プレイヤキャラクタの半分が見え、半分が地形オブジェクトに隠れた状態を表示できる。
【００３１】
そして、実施例でいえばＣＰＵ３６に相当する配置手段が、ゲーム空間に敵キャラクタおよび／またはアイテムを配置する。そして、図８のステップＳ５７に相当する第２判断手段が、敵キャラクタおよびアイテムの少なくとも一方が地形オブジェクトの後に存在するかどうか、判断する。第２判断手段がそのように判断した場合、ＣＰＵ３６とステップＳ５９−Ｓ６５に相当する第２目印画像描画手段は、ゲーム画像における地形オブジェクト（建物オブジェクトや壁オブジェクトなど）の画像上に、敵キャラクタおよびアイテムの少なくとも一方に相当する位置にそれらの少なくとも位置を示すための第２目印画像を描画する。第２目印画像も特定形状の記号であってよいが、好ましくは、プレイヤキャラクタから敵キャラクタおよび／またはアイテムまでの距離が遠くなるほど薄くなるように、描画される。
【００３２】
なお、実施例でいえばステップＳ６７およびＳ６９に相当する第３目印画像描画手段は、プレイヤキャラクタが地形オブジェクトの陰で地面オブジェクト上に存在する状態であれば、プレイヤキャラクタの足元を示すように、第３目印画像を描画する。
【００３３】
【発明の効果】
この発明によれば、プレイヤキャラクタが地形オブジェクトの陰に隠れた状態になったとき、まず、その地形オブジェクト上に第１目印画像が描画され、地形オブジェクトの裏側におけるプレイヤキャラクタの位置をプレイヤに把握させることができ、かつ物陰に隠れたことをプレイヤに把握させることできるので、仮想カメラの廻り込み処理を直ちに行う従来技術に比べて、プレイヤを戸惑わせることなくその後の操作を容易にさせることができ、つまり操作に違和感を与えることがない。また、プレイヤが直接見えない領域で自己のプレイヤキャラクタを容易に操作させることができるので、従来にない面白みのあるゲームを提供することができる。さらに、プレイヤキャラクタが隠れた地形オブジェクトの向こう側をリアルに描画する必要もないので、半透明化する従来技術に比べて、処理負担を軽減することも可能である。
【００３４】
この発明の上述の目的，その他の目的，特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【００３５】
【実施例】
図１に示す実施例のビデオゲームシステム１０はビデオゲーム機（以下、単に「ゲーム機」という。）１２を含む。このゲーム機１２には電源が与えられるが、この電源は、実施例では、一般的なＡＣアダプタ（図示せず）であってよい。ＡＣアダプタは家庭用の標準的な壁ソケットに差し込まれ、家庭用電源を、ゲーム機１２を駆動するのに適した低いＤＣ電圧信号に変換する。他の実施例では、電源として、バッテリが用いられてもよい。
【００３６】
ゲーム機１２は、略立方体のハウジング１４を含み、ハウジング１４の上端には光ディスクドライブ１６が設けられる。光ディスクドライブ１６には、ゲームプログラムを記憶した情報記憶媒体の一例である光ディスク１８が装着される。ハウジング１４の前面には複数の（実施例では４つの）コネクタ２０が設けられる。これらコネクタ２０は、ケーブル２４によって、コントローラ２２をゲーム機１２に接続するためのものであり、この実施例では最大４つのコントローラをゲーム機１２に接続することができる。
【００３７】
コントローラ２２には、その上面，下面，あるいは側面などに、操作手段（コントロール）２６が設けられる。操作手段２６は，たとえば２つのアナログジョイスティック，１つの十字キー，複数のボタンスイッチ等を含む。１つのアナログジョイスティックは、スティックの傾き量と方向とによって、プレイヤキャラクタ（プレイヤがコントローラ２２によって操作可能な動画キャラクタ）の移動方向および／または移動速度ないし移動量などを入力するために用いられる。他のアナログジョイスティックは、傾斜方向によって、仮想カメラの移動を制御する。十字スイッチは、アナログジョイスティックに代えてプレイヤキャラクタの移動方向を指示するために用いられる。ボタンスイッチは、プレイヤキャラクタの動作を指示するために利用されたり、３次元画像の仮想カメラの視点を切り換えたり、プレイヤキャラクタの移動スピード調節等に用いられる。ボタンスイッチは、さらに、たとえばメニュー選択やポインタあるいはカーソル移動を制御する。
【００３８】
なお、実施例ではコントローラ２２がケーブル２４によってゲーム機１２に接続された。しかしながら、コントローラ２２は、他の方法、たとえば電磁波（たとえば電波または赤外線）を介してワイヤレスで、ゲーム機１２に接続されてもよい。また、コントローラ２２の操作手段の具体的構成は、もちろん実施例の構成に限られるものではなく、任意の変形が可能である。たとえば、アナログジョイスティックは１つだけでもよいし、用いられなくてもよい。十字スイッチは用いられなくてもよい。
【００３９】
ゲーム機１２のハウジング１４の前面のコネクタ２０の下方には、少なくとも１つの（実施例では２つの）メモリスロット２８が設けられる。このメモリスロット２８にはメモリカード３０が挿入される。メモリカード３０は、光ディスク１８から読み出したゲームプログラムや表示用データ（図３参照）をローディングして一時的に記憶したり、このゲームシステム１０を利用してプレイしたゲームのゲームデータ（たとえばゲームの結果）をセーブしておくために利用される。
【００４０】
ゲーム機１２のハウジング１４の後面には、ＡＶケーブルコネクタ（図示せず）が設けられ、そのコネクタを用いて、ＡＶケーブル３２を通してゲーム機１２にモニタ３４を接続する。このモニタ３４は典型的にはカラーテレビジョン受像機であり、ＡＶケーブル３２は、ゲーム機１２からの映像信号をカラーテレビのビデオ入力端子に入力し、音声信号を音声入力端子に与える。したがって、カラーテレビ（モニタ）３４の画面上にたとえば３次元（３Ｄ）ビデオゲームのゲーム画像が表示され、左右のスピーカからゲーム音楽や効果音などのステレオゲーム音声が出力され得る。
【００４１】
このゲームシステム１０において、ユーザまたはゲームプレイヤがゲーム（または他のアプリケーション）をプレイするために、ユーザはまずゲーム機１２の電源をオンし、対で、ユーザはビデオゲーム（もしくはプレイしたいと思う他のアプリケーション）をストアしている適宜の光ディスク１８を選択し、その光ディスク１８をゲーム機１２のディスクドライブ１６にローディングする。応じて、ゲーム機１２がその光ディスク１８にストアされているソフトウェアに基づいてビデオゲームもしくは他のアプリケーションを実行し始メモリようにする。ユーザはゲーム機１２に入力を与えるためにコントローラ２２を操作する。たとえば、操作手段２６のどれかを操作することによってゲームもしくは他のアプリケーションをスタートさせる。操作手段２６の他のものを動かすことによって、動画キャラクタ（プレイヤキャラクタ）を異なる方向に移動させ、または３次元（３Ｄ）のゲーム世界におけるユーザの視点（カメラ位置）を変化させることができる。
【００４２】
図２は図１実施例のビデオゲームシステム１０の構成を示すブロック図である。ビデオゲーム機１２には、このゲーム機の全体的な制御を担当する中央処理ユニット（以下、「ＣＰＵ」という。）３６が設けられ、このＣＰＵ３６には、バスを介して、メモリコントローラ３８が結合される。メモリコントローラ３８は主として、ＣＰＵ３６の制御の下で、バスを介して結合されるメインメモリ４０の書込みや読出しを制御する。このメモリコントローラ３８にはＧＰＵ(Graphics Processing Unit:グラフィックス処理装置) ４２が結合される。
【００４３】
ＧＰＵ４２は、たとえばシングルチップＡＳＩＣで構成され、メモリコントローラ３８を介してＣＰＵ３６からのグラフィクスコマンド(graphics command：作画命令)を受け、そのコマンドに従って、ジオメトリユニット４４およびレンダリングユニット４６によって３次元（３Ｄ）ゲーム画像を生成する。つまり、ジオメトリユニット４４は、３次元座標系の各種キャラクタやオブジェクト（複数のポリゴンで構成されている。そして、ポリゴンとは少なくとも３つの頂点座標によって定義される多角形平面をいう）の回転，移動，変形等の座標演算処理を行う。レンダリングユニット４６は、各種オブジェクトの各ポリゴンにテクスチャ（Texture：模様画像）を張り付ける（レンダリングする）。したがって、ＧＰＵ４２によって、ゲーム画面上に表示すべき３Ｄ画像データが作成され、その画像データ（テクスチャデータ）がフレームバッファ４８内に描画（記憶）される。なお、ＧＰＵ４２が作画コマンドを実行するにあたって必要なデータ（プリミティブまたはポリゴンやテクスチャ等）は、ＧＰＵ４２がメモリコントローラ３８を介して、メインメモリ４０から入手する。
【００４４】
フレームバッファ４８は、たとえばラスタスキャンモニタ３４の１フレーム分の画像データを描画（蓄積）しておくためのメモリであり、ＧＰＵ４２によって１フレーム毎に書き換えられる。後述のビデオＩ／Ｆ５８がメモリコントローラ３８を介してフレームバッファ４８のデータを読み出すことによって、モニタ３４の画面上に３Ｄゲーム画像が表示される。なお、フレームバッファ４８の容量は、表示したい画面の画素（ピクセルまたはドット）数に応じた大きさである。たとえば、ディスプレイないしモニタ３４の画素数に応じた画素数（記憶位置またはアドレス）を有する。
【００４５】
また、Ｚバッファ５０は、フレームバッファ４８に対応する画素（記憶位置またはアドレス）数×１画素当たりの奥行データのビット数に相当する記憶容量を有し、フレームバッファ４８の各記憶位置に対応するドットの奥行き情報または奥行データ（Ｚ値）を記憶するものである。
【００４６】
なお、フレームバッファ４８およびＺバッファ５０は、ともにメインメモリ４０の一部を用いて構成されてもよい。
【００４７】
メモリコントローラ３８はまた、ＤＳＰ(Digital Signal Processor)５２を介して、サブメモリ５４に結合される。したがって、メモリコントローラ３８は、メインメモリ４０だけでなく、サブメモリ５４の書込みおよび／または読出しを制御する。
【００４８】
メモリコントローラ３８は、さらに、バスによって、各インタフェース（Ｉ／Ｆ）５６，５８，６０，６２および６４に結合される。コントローラＩ／Ｆ５６は、コントローラ２２のためのインタフェースであり、コントローラ２２の操作手段２６の操作信号またはデータをメモリコントローラ３８を通してＣＰＵ３６に与える。ビデオＩ／Ｆ５８は、フレームバッファ４８にアクセスし、ＧＰＵ４２で作成した画像データを読み出して、画像信号または画像データ（ディジタルＲＧＢピクセル値）をＡＶケーブル３２（図１）を介してモニタ３４に与える。外部メモリＩ／Ｆ６０は、ゲーム機１２の前面に挿入されるメモリカード３０（図１）をメモリコントローラ３８に連係させる。それによって、メモリコントローラ３８を介して、ＣＰＵ３６がこのメモリカード３０にデータを書込み、またはメモリカード３０からデータを読み出すことができる。オーディオＩ／Ｆ６２は、メモリコントローラ３８を通してフレームバッファ４８から与えられるオーディオデータまたは光ディスク１８から読み出されたオーディオストリームを受け、それらに応じたオーディオ信号（音声信号）をモニタ３４のスピーカ６６に与える。なお、ステレオ音声の場合には、スピーカ６６は、少なくとも、左右１つずつ設けられる。そして、ディスクＩ／Ｆは、そのディスクドライブ１６をメモリコントローラ３８に結合し、したがって、ＣＰＵ３６がディスクドライブ１６を制御する。このディスクドライブ１６によって光ディスク１８から読み出されたプログラムデータやテクスチャデータ等が、ＣＰＵ３６の制御の下で、メインメモリ４０に書き込まれる。
【００４９】
図３にはメインメモリ４０のメモリマップが示される。メインメモリ４０は、ゲームプログラム記憶領域６８，オブジェクトデータ記憶領域７０およびテクスチャデータ記憶領域７２を含む。ゲームプログラム記憶領域６８には、光ディスク１８から読み出したゲームプログラムが、１度に全部または部分的かつ順次的に、記憶される。
【００５０】
オブジェクトデータ記憶領域７０には、たとえば、プレイヤキャラクタや敵キャラクタのようなゲームキャラクタ、あるいは壁（建物
オブジェクト，地面オブジェクトなどのような地形オブジェクト、さらにはアイテムなどのアイテムオブジェクトがロードされる。なお、各オブジェクトは、ポリゴンによって形成されている。また、メインメモリ４０には、上記各キャラクタおよびオブジェクト等のデータを光ディスク１８から必要に応じてロードするようにしてもよい。
【００５１】
テクスチャデータ記憶領域７２には、上述のプレイヤキャラクタ，敵キャラクタ，壁オブジェクト，地面オブジェクトなどのテクスチャデータの他、実施例に用いられる目印テクスチャ７２ａ，７２ｂおよび７２ｃが記憶される。目印テクスチャ７２ａは、プレイヤキャラクタがゲーム画面上においてたとえば壁オブジェクトの陰に隠れたときに、プレイヤに、その壁オブジェクトの陰にプレイヤキャラクタが存在することを知らせるための目印テクスチャである。同様に、目印テクスチャ７２ｂは、敵キャラクタやアイテムがゲーム画面上において何らかのオブジェクトの陰に隠れたときに、プレイヤに、そのオブジェクトの陰に敵キャラクタやアイテムが存在することを知らせるための目印テクスチャである。さらに、目印テクスチャ７２ｃは、上述の目印テクスチャ７２ａによってオブジェクトの陰に隠れたプレイヤキャラクタの存在を表示する際、プレイヤキャラクタがそのオブジェクトの陰で地面または床面上に存在する場合に、その地面の目印としてプレイヤキャラクタとともに表示されるテクスチャである。
【００５２】
ゲームをプレイするとき、上述のように光ディスク１８をゲーム機１２にセットし、電源を投入すると、光ディスクからデータが読み出され、図３に示すようにメインメモリ４０に必要なデータが記憶される。
【００５３】
そして、図４の最初のステップＳ１では、ＣＰＵ３６は、地形オブジェクト（地面オブジェクト，建物オブジェクト，壁オブジェクト等）およびアイテムのデータをメインメモリ４０のオブジェクトデータ記憶領域７０から読み出し、その地形オブジェクトおよびアイテムを、図５に示すような、ゲーム空間である３次元ワールド座標系の初期座標に配置する。ついで、ステップＳ３において、オブジェクトデータ記憶領域７０からプレイヤキャラクタ，敵キャラクタおよび仮想カメラのデータを読み出し、同じワールド座標系の初期座標に配置する。
【００５４】
ステップＳ５では、ＣＰＵ３６は、コントローラ２２の操作手段２６（図１）が操作されたかどうか、すなわち、コントローラＩ／Ｆ５６およびメモリコントローラ３８を介してコントローラ２２から入力がったかどうか、判断する。
【００５５】
コントローラ入力がある場合、ＣＰＵ３６は、ステップＳ７においてそのコントローラ入力に応じてプレイヤキャラクタの位置をワールド座標系において変更する。プレイヤないしユーザは、図５に示すプレイヤキャラクタ７０の位置を変更する場合には、コントローラ２２の操作手段２６（図１）のうち、たとえばアナログジョイスティック（または３Ｄジョイスティック）を操作する。したがって、ＣＰＵ３６は、このステップＳ９では、たとえばジョイスティックの傾斜方向および傾斜量のデータをコントローラＩ／Ｆ５６から受け、そのデータに基づいて、プレイヤキャラクタ７０の位置を更新する。
【００５６】
次のステップＳ９では、ＣＰＵ３６は、ステップＳ７で更新されたプレイヤキャラクタの位置に応じて、ワールド座標系での仮想カメラの位置を更新する。つまり、このステップＳ９は、仮想カメラのいわゆる「廻り込み処理」を実行するステップである。ユーザによるコントローラの操作によって、図５に示すようにプレイヤキャラクタ７０が「７０」で示す位置から「７０Ａ」で示す位置に移動された場合を想定する。この場合、元の位置で仮想カメラ７２から移動後のプレイヤキャラクタ７０Ａを見るう。そのため、プレイヤキャラクタ７０Ａは建物オブジェクト７４の陰に隠れてしまい、そのままであれば、ゲーム画面上に表示されなくなる。このような場合、ステップＳ９で、プレイヤキャラクタ７０Ａが見える位置まで、つまりプレイヤキャラクタ７０Ａをゲーム画面上に表示できるように、仮想カメラ７２を「７２」で示す位置からたとえば「７２Ａ」で示す位置まで、移動させる。つまり、プレイヤキャラクタの位置に応じて仮想カメラの位置を変更する。
【００５７】
その後、コントローラ入力がない場合と同様に、ステップＳ１１において、ＣＰＵ３６は、敵キャラクタ７６（図５）の位置をワールド座標系内で更新する。敵キャラクタ７６の位置は、コントローラ２２を操作してもしなくても更新する必要があるので、このステップＳ１１をこの時点で実行する。
【００５８】
そして、ステップＳ１３において、ＣＰＵ３６は、上で述べた地形オブジェクト，建物オブジェクト，アイテム，プレイヤキャラクタ，敵キャラクタなどの位置を、仮想カメラ７２（７２Ａ）を基準とする３次元のカメラ座標系に変換する。
【００５９】
その後、ＣＰＵ３６は、ステップＳ１５において、３次元のカメラ座標系を２次元の投陰平面座標系に変換するとともに、テクスチャの指定やクリッピング(clipping：不可視世界の切り取り)等も併せて実行する。
【００６０】
そして、ステップＳ１７において、ゲーム画像生成処理を実行する。このステップＳ１７については、後に詳しく説明する。
【００６１】
ステップＳ１７で後述のようにゲーム画像を生成した後に、ステップＳ１９において、ゲーム画面をモニタ３４（図１）に表示する。つまり、ＣＰＵ３６がビデオＩ／Ｆ５８に指令を与え、応じて、ビデオＩ／Ｆ５６がフレームバッファ４８（図２）にアクセスする。したがって、フレームバッファ４８からモニタ３４に表示すべき画像データが読み出され、ゲーム画像が表示され得る。
【００６２】
その後、ステップＳ２１でゲームが終了したかどうか判断する。ゲームが終了されていれば、そのままこの図４ルーチンを終了するが、ゲームが続行される場合には、先のステップＳ５に戻って、コントローラ２２からの入力を待つ。
【００６３】
図６を参照すると、図４のステップＳ１７に示すゲーム画像生成処理ルーチンが示される。この図６の最初のステップＳ３１では、ＣＰＵ３６（図２）は、まず、地形オブジェクトの描画処理を実行し、続くステップＳ３３，Ｓ３５およびＳ３７において、目印表示処理，プレイヤキャラクタの描画処理および敵キャラクタ（およびアイテム）の描画処理を順次実行する。
【００６４】
ステップＳ３１の地形オブジェクト描画処理ルーチンが図７に詳細に示される。図７の最初のステップＳ４１では，ＣＰＵ３６は、メインメモリ４０（図２，図３）のテクスチャデータ記憶領域７２から、壁オブジェクトや地面オブジェクトのような地形オブジェクトに対応するテクスチャデータを読み出す。
【００６５】
そして、次のステップＳ４３において、ＣＰＵ３６は、ステップＳ１５（図４）で変換した２次元投影平面座標系に投影された地形オブジェクト（壁オブジェクト，地面オブジェクトなど）に相当する位置のフレームバッファ４８（図２）の各ピクセルに、地形オブジェクトのテクスチャを描画する。すなわち、フレームバッファの各ピクセルに相当する記憶位置に、地形オブジェクトの色情報を書き込む。
【００６６】
次のステップＳ４５で、ＣＰＵ３６は、そのときのピクセルに対応するＺバッファ５０（図２）の記憶位置に、地形オブジェクトの奥行き情報（Ｚ値）を書き込む。
【００６７】
ステップＳ４７で全てのピクセルの終了を検出するまで、上述のステップＳ４３およびＳ４５が繰り返し実行され、モニタ３４のの表示画面の全部のピクセルの描画処理が終了したなら、図６のステップＳ３３へリターンし、目印表示処理ルーチンＳ３３に進む。
【００６８】
この目印表示処理ルーチンＳ３３の詳細が、図８に示される。図８の最初のステップＳ５１では、ＣＰＵ３６は、仮想カメラ（視点）から見たプレイヤキャラクタが地形オブジェクトに隠れているか否かを判断する。たとえば、プレイヤキャラクタの配置位置に近似球体を配置し、その近似球体の面積が地形オブジェクトに１／３以上かかっていた場合には、プレイヤキャラクタが地形オブジェクトに隠れていると判断する。具体的には、、プレイヤキャラクタの描画対象（ここでは近似球体）となっているピクセルのＺ値と、フレームバッファ４８の対応するピクセルにおける地形オブジェクトのＺ値とを比較する、いわゆるＺテストが実行される。このＺテストによって、プレイヤキャラクタが地形オブジェクトに比べて前に位置するのか後に位置するのかを、フレームバッファ内の各ピクセル毎に検証する。そのＺテストの結果、ステップＳ５１において、プレイヤキャラクタが地形オブジェクトの後に存在するかどうかが判断される。したがって、ステップＳ５１が第１判断手段に相当する。
【００６９】
このステップＳ５１で“ＮＯ”が判断されるということは、図９に示すように、プレイヤキャラクタ７４はどの地形オブジェクト（図９では壁オブジェクト７８）の陰ではないことになり、この場合には、そのまま、ステップＳ３５（図６）ヘリターンする。
【００７０】
もし、ステップＳ５１で“ＹＥＳ”が判断された場合には、プレイヤキャラクタ７４は、たとえば図１０に示すように、壁オブジェクト７８の陰にかくれた状態である。この状態では、従来であれば、プレイヤキャラクタが陰にかくれたままで、先に説明した仮想カメラの廻り込み処理が行われる。したがって、プレイヤは、カメラの廻り込みが行われるまで、プレイヤキャラクタの存在を見失ってしまうことがある。他方、そのようなカメラの廻り込み処理によって、プレイヤに対して、プレイヤキャラクタ進行方向において違和感を与えてしまう。
【００７１】
これに対して、この実施例では、プレイヤキャラクタ７４が地形オブジェクト７８の陰にかくれたときは、図１０に示す第１目印（プレイヤキャラクタがオブジェクトの陰にかくれている状態をプレイヤに知らせる目的の特殊な形状の記号）８２をゲーム画面上に表示する。それによって、プレイヤまたはユーザに対して、プレイヤキャラクタが物陰に隠れている状態であることを知らしめる。したがって、プレイヤは、この第１目印８２が表示されたことに基づいて、プレイヤキャラクタが物陰に隠れている状態を理解しすることができる。そのため、何らの違和感もなく、ゲームが速やかに続行可能である。
【００７２】
そのために、ステップＳ５３では、ＣＰＵ３６は、メインメモリ４０のテクスチャデータ記憶領域７２から、第１目印８２のテクスチャ７２ａのデータを読み出す。この第１目印８２は、実施例では、プレイヤキャラクタと同形の単色キャラクタである。ただし、このような第１目印８２は任意の形状の記号であってよく、その形状やテクスチャは、後述の第２目印８４および第３目印８６と同様に、任意に設定できるものであることは、もちろんである。
【００７３】
次いで、ステップＳ５５において、ＣＰＵ３６は、Ｚバッファ５０（図２）に描画されている地形オブジェクトの各ピクセルのＺ値を無視して、つまり、当該ピクセルのＺ値を更新することなく、プレイヤキャラクタの形状に相当するフレームバッファの各ピクセルに第１目印テクスチャ７２ａを描画する。このように、各ピクセルのＺ値を無視する（更新しない）ようにすることによって、地形オブジェクトの画像と第１目印画像とが一体の画像となり、その後のＺテストによって、地形オブジェクトより仮想カメラ側にある場合には画像が上書きされ、逆の場合には上書きされないという処理になる。つまり、プレイヤキャラクタが地形オブジェクトの陰に隠れているときは、プレイヤキャラクタの本来のテクスチャが重ね描きされないので、第１目印画像が残る一方、プレイヤキャラクタが地形オブジェクトの手前側にいる隠れているときには、プレイヤキャラクタの本来のテクスチャが重ね描きされることになる。このようにすることで、たとえば図１１に示すように、１つのプレイヤキャラクタ形状のうち、オブジェクトに隠れていない半分がプレイヤキャラクタの本来のテクスチャで表示され、壁オブジェクト７８に隠れた残りの半分が第１目印テクスチャで表示されるような、表示態様も可能となる。
【００７４】
第２判断手段に相当するステップＳ５７では、ＣＰＵ３６は、再びＺテストを実行し、仮想カメラ（視点）から見た敵キャラクタおよび／またはアイテムの配置位置と地形オブジェクトの配置位置（とを比較する。このＺテストによって、各ピクセル毎に、敵キャラクタおよび／またはアイテムが地形オブジェクトに比べて、前に位置するのか後に位置するのかが判断される。そのＺテストの結果、ステップＳ５１において、プレイヤキャラクタが地形オブジェクトの後に存在するかどうかが判断される。このステップＳ５７で“ＮＯ”が判断されるということは敵キャラクタやアイテムはどの地形オブジェクトにも隠れていないことになり、この場合には、そのまま、ステップＳ３５（図６）ヘリターンする。
【００７５】
もし、ステップＳ５７で“ＹＥＳ”が判断された場合には、敵キャラクタやアイテムが、たとえば壁オブジェクト７８の陰にかくれた状態である。この状態では、従来であれば、敵キャラクタやアイテムが地形オブジェクトの陰にかくれたままであり、その後敵キャラクタやアイテムが突然出現することになる。これに対して、実施例では、敵キャラクタまたはアイテムが地形オブジェクト７８の陰にかくれたときは、図１０に示す第２目印（敵キャラクタまたはアイテムがオブジェクトの陰にかくれている状態をプレイヤに知らせる目的の特殊な形状の記号）８４をゲーム画面上に表示する。それによって、プレイヤまたはユーザに対して、敵キャラクタおよび／またはアイテムが物陰に隠れている状態であることを知らしめる。したがって、プレイヤは、この第２目印８４が表示されたことに基づいて、敵キャラクタ等が物陰に隠れている状態を理解することができる。そのため、ゲームが速やかに続行可能である。
【００７６】
具体的には、続くステップＳ５９において、ＣＰＵ３６は、メインメモリ４０のテクスチャデータ記憶領域７２から、第２目印８２のテクスチャ７２ｂのデータを読み出す。この第２目印は、地形オブジェクトの陰に敵キャラクタ８０（図５）またはアイテム（図示せず）が隠れていることをプレイヤに気付かせるための目印で、特殊な形状および／またはテクスチャを持つ。この実施例では、英文の疑問符（？）の形状をした単色キャラクタとした。
【００７７】
その後、ステップＳ６１において、ＣＰＵ３６は、投影平面座標系において、プレイヤキャラクタと敵キャラクタおよび／またはアイテムとの間の距離を計算する。そして、ステップＳ６３において、その距離に応じて第２目印８４の色合い変更する。そして、ステップＳ６５において、ＣＰＵ３６は、ステップＳ５７と同様にして、Ｚ値を無視し、第２目印テクスチャ（および色合いを変更したテクスチャ）を、対応する敵キャラクタおよび／またはアイテムの存在する位置のフレームバッファに描画する。したがって、たとえば、図１０を参照すると、プレイヤキャラクタのための第１目印８２に近い敵キャラクタまたはアイテムの存在する位置には濃い色の疑問符（？）、すなわち、第２目印８４が表示され、第１目印８２から離れた敵キャラクタまたはアイテムの存在する位置には薄い色の第２目印８４Ａが表示される。このように、第２目印８４の色合いをプレイヤキャラクタとの間の距離に応じて変更することによって、プレイヤは、複数の敵キャラクタやアイテムが地形オブジェクトの影に隠れていて、しかもプレイヤキャラクタと個々の敵キャラクタやアイテムとの間の距離が違うことを事前に知ることができる。したがって、突然物陰から敵キャラクタが出現するような驚きや恐怖をプレイヤに与えることがない。
【００７８】
次に、ＣＰＵ３６は、ステップＳ６７において、メインメモリ４０のテクスチャデータ記憶領域７２から、第３目印８６（図１０）のテクスチャ７２ｃのデータを読み出す。この第３目印は、地形オブジェクトの陰に隠れているプレイヤキャラクタが地面または床面上に存在することを示す目印であり、この実施例では、グラデーションを持つ４重円記号とした。ただし、この第３記号８６の形状やテクスチャは任意に変更可能である。
【００７９】
最後に、ステップＳ６９において、Ｚ値を更新することなく、読み出した第３目印テクスチャ７２ｃを、プレイヤキャラクタの足元の位置に描画する。それによって、図１０に示すように、壁オブジェクト７８の陰に、プレイヤキャラクタ用第１目印８２が、地面用第３目印８６の上に立った状態で表示される。したがって、プレイヤまたはユーザは、そのときの図１０に示すゲーム画面をみて、壁オブジェクト７８の後ろの地面オブジェクトの上にプレイヤキャラクタが隠されてることを知ることができる。
【００８０】
なお、この図８において、上述のステップＳ５１およびＳ５７を設けた場合には、ステップＳ５３，Ｓ５５，Ｓ５９〜Ｓ６９が実行しなくてもよいことがあるので、処理負担を軽くすることができる。他方、ステップＳ５１およびＳ５７がない場合であっても、ステップＳ５４およびＳ５５が実行されるので、第１目印画像を表示することができ、また、ステップＳ５９〜Ｓ６９が実行されることによって第２目印画像および第３目印画像を表示させることができる。つまり、図８においてステップＳ５１および／またはＳ５７は、省略されてもよい。
【００８１】
ステップＳ３５（図６）のプレイヤキャラクタの描画処理ルーチンが図１２に詳細に示される。図１２の最初のステップＳ７１では，ＣＰＵ３６は、メインメモリ４０（図２，図３）のテクスチャデータ記憶領域７２から、プレイヤキャラクタに対応するテクスチャデータを読み出す。
【００８２】
そして、次のステップＳ７３において、ＣＰＵ３６は、ステップＳ１５（図４）で変換した２次元投影平面座標系に投影されたプレイヤキャラクタに相当する位置のＺバッファ５０（図２）の各ピクセルの、Ｚ値を参照する。そして、次のステップＳ７５において、ＣＰＵ３６は、書込みの対象となっているピクセルのＺ値が書込みしようとしているプレイヤキャラクタの奥行き情報（Ｚ値）より大きいかどうか判断する。つまり、プレイヤキャラクタを描画すべきかどうか判断する。したがって、このステップＳ７５で“ＮＯ”が判断されると、そのままステップＳ８１に進む。
【００８３】
ステップＳ７５において“ＹＥＳ”が判断されると、次のステップＳ７７においてそのピクセルのＺ値（Ｚバッファ）を更新するとともに、ステップＳ７９において、そのピクセルにプレイヤキャラクタのテクスチャ（色情報）を描画する。そして、次のステップＳ８１全てのピクセルの終了を検出するまで、上述のステップＳ７３−Ｓ７９が繰り返し実行され、モニタ３４のの表示画面の全部のピクセルの描画処理が終了したなら、図６のステップＳ３７へリターンし、敵キャラクタ（およびアイテム）の描画処理ルーチンを実行する。
【００８４】
ステップＳ３５（図６）のプレイヤキャラクタの描画処理ルーチンが図１２に詳細に示される。図１２の最初のステップＳ７１では，ＣＰＵ３６は、メインメモリ４０（図２，図３）のテクスチャデータ記憶領域７２から、プレイヤキャラクタに対応するテクスチャデータを読み出す。
【００８５】
そして、次のステップＳ７３において、ＣＰＵ３６は、ステップＳ１５（図４）で変換した２次元投影平面座標系に投影されたプレイヤキャラクタに相当する位置のＺバッファ５０（図２）の各ピクセルの、Ｚ値を参照する。そして、次のステップＳ７５において、ＣＰＵ３６は、書込みの対象となっているピクセルのＺ値が、書込みしようとしているプレイヤキャラクタの奥行き情報（Ｚ値）より大きいかどうか判断する。つまり、プレイヤキャラクタを描画すべきかどうか判断する。したがって、このステップＳ７５で“ＮＯ”が判断されると、そのままステップＳ８１に進む。
【００８６】
ステップＳ７５において“ＹＥＳ”が判断されると、次のステップＳ７７においてそのピクセルのＺ値（Ｚバッファ）を更新するとともに、ステップＳ７９において、そのピクセルにプレイヤキャラクタのテクスチャ（色情報）を描画する。そして、次のステップＳ８１全てのピクセルの終了を検出するまで、上述のステップＳ７３−Ｓ７９が繰り返し実行され、モニタ３４のの表示画面の全部のピクセルの描画処理が終了したなら、図６のステップＳ３７へリターンし、敵キャラクタ（およびアイテム）の描画処理ルーチンを実行する。
【００８７】
ステップＳ３５（図６）のプレイヤキャラクタの描画処理ルーチンが図１２に詳細に示される。図１２の最初のステップＳ７１では，ＣＰＵ３６は、メインメモリ４０（図２，図３）のテクスチャデータ記憶領域７２から、プレイヤキャラクタに対応するテクスチャデータを読み出す。
【００８８】
そして、次のステップＳ７３において、ＣＰＵ３６は、ステップＳ１５（図４）で変換した２次元投影平面座標系に投影されたプレイヤキャラクタに相当する位置のＺバッファ５０（図２）の各ピクセルの、Ｚ値を参照する。そして、次のステップＳ７５において、ＣＰＵ３６は、書込みの対象となっているピクセルのＺ値が書込みしようとしているプレイヤキャラクタの奥行き情報（Ｚ値）より大きいかどうか判断する。つまり、プレイヤキャラクタを描画すべきかどうか判断する。したがって、このステップＳ７５で“ＮＯ”が判断されると、そのままステップＳ８１に進む。
【００８９】
ステップＳ７５において“ＹＥＳ”が判断されると、次のステップＳ７７においてそのピクセルのＺ値（Ｚバッファ）を更新するとともに、ステップＳ７９において、そのピクセルにプレイヤキャラクタのテクスチャ（色情報）を描画する。そして、次のステップＳ８１全てのピクセルの終了を検出するまで、上述のステップＳ７３−Ｓ７９が繰り返し実行され、モニタ３４のの表示画面の全部のピクセルの描画処理が終了したなら、図６のステップＳ３７へリターンし、敵キャラクタ（およびアイテム）の描画処理ルーチンを実行する。
【００９０】
ステップＳ３７（図６）の敵キャラクタ（および／またはアイテム）の描画処理ルーチンが図１３に詳細に示される。図１３の最初のステップＳ９１では，ＣＰＵ３６は、メインメモリ４０（図２，図３）のテクスチャデータ記憶領域７２から、敵キャラクタ（アイテム）に対応するテクスチャデータを読み出す。
【００９１】
そして、次のステップＳ９３において、ＣＰＵ３６は、２次元投影平面座標系に投影された敵キャラクタ（アイテム）に相当する位置のＺバッファ５０（図２）の各ピクセルの、Ｚ値を参照する。そして、次のステップＳ９５において、ＣＰＵ３６は、書込みの対象となっているピクセルのＺ値が、書込みしようとしている敵キャラクタ（アイテム）の奥行き情報（Ｚ値）より大きいかどうか判断する。つまり、敵キャラクタやアイテムを描画すべきかどうか判断する。したがって、このステップＳ９５で“ＮＯ”が判断されると、そのままステップＳ１０１に進む。
【００９２】
ステップＳ９５において“ＹＥＳ”が判断されると、次のステップＳ９７においてそのピクセルのＺ値（Ｚバッファ）を更新するとともに、ステップＳ９９において、そのピクセルに敵キャラクタ（アイテム）のテクスチャ（色情報）を描画する。そして、次のステップＳ１０１全てのピクセルの終了を検出するまで、上述のステップＳ９３−Ｓ９９が繰り返し実行され、モニタ３４のの表示画面の全部のピクセルの描画処理が終了したなら、図４のステップＳ１９へリターンする。
【図面の簡単な説明】
【図１】図１はこの発明の一実施例のゲームシステムを示す図解図である。
【図２】図２は図１一実施例のゲーム機を詳細に示すブロック図である。
【図３】図３は図２におけるメインメモリのメモリマップの一例を示す図解図である。
【図４】図１実施例の動作を示すフロー図である。
【図５】図５はワールド座標系およびカメラ座標系を示す図解図である。
【図６】図６は図４におけるゲーム画像生成処理の動作を示すフロー図である。
【図７】図７は図６における地形オブジェクト等の描画処理の動作を示すフロー図である。
【図８】図８は図６における目印表示処理の動作を示すフロー図である。
【図９】図９はプレイヤキャラクタがオブジェクトに隠れていない状態のゲーム画面の一例を示す図解図である。
【図１０】図１０はプレイヤキャラクタがオブジェクトに隠れている状態のゲーム画面の一例を示す図解図である。
【図１１】図１１はプレイヤキャラクタの半分がオブジェクトに隠れていて他の半分が隠れている状態のゲーム画面の一例を示す図解図である。
【図１２】図１２は図６におけるプレイヤキャラクタの描画処理の動作を示すフロー図である。
【図１３】図１３は図６における敵キャラクタ（またはアイテム）の描画処理の動作を示すフロー図である。
【符号の説明】
１０  …ゲームシステム
１２  …ゲーム機
１６  …ディスクドライブ
１８  …光ディスク
２２  …コントローラ
２６  …操作手段
３０  …メモリカード
３４  …モニタ
３６  …ＣＰＵ
３８  …メモリコントローラ
４０  …メインメモリ
４２  …ＧＰＵ
５０  …Ｚバッファ
【図１】
0003637031.tif 000002
【図２】
0003637031.tif 000003
【図３】
0003637031.tif 000004
【図４】
0003637031.tif 000005
【図５】
0003637031.tif 000006
【図６】
0003637031.tif 000007
【図７】
0003637031.tif 000008
【図８】
0003637031.tif 000009
【図９】
0003637031.tif 000010
【図１０】
0003637031.tif 000011
【図１１】
0003637031.tif 000012
【図１２】
0003637031.tif 000013
【図１３】
0003637031.tif 000014