(57)【特許請求の範囲】
【請求項１】
画像生成を行うゲームシステムであって、
ワールドマップ上で実表示領域を移動させる手段と、
ワールドマップ上での前記実表示領域の位置座標に応じて、前記実表示領域に存在する少なくとも１つのオブジェクトの半透明情報を変化させる手段と、
実表示領域でのスクロール画像を生成する手段と、
を含むことを特徴とするゲームシステム。
【請求項２】
請求項１において、
前記実表示領域が、移動オブジェクトの移動に伴いワールドマップ上で移動し、
前記実表示領域に存在するオブジェクトの奥側に移動オブジェクトが隠れた場合にも移動オブジェクトが見えるように、オブジェクトの半透明情報を変化させることを特徴とするゲームシステム。
【請求項３】
請求項１又は２において、
ワールドマップの第１の座標軸方向でのオブジェクトの長さよりも第２の座標軸方向でのオブジェクトの長さの方が長い場合には、第２の座標軸での前記実表示領域の位置座標に応じて、オブジェクトの半透明情報を変化させることを特徴とするゲームシステム。
【請求項４】
請求項１乃至３のいずれかにおいて、
前記実表示領域の位置座標が第１の値と第２の値の間にあることを条件に、オブジェクトの半透明情報を変化させることを特徴とするゲームシステム。
【請求項５】
請求項４において、
前記第１、第２の値が各オブジェクト毎に設定されていることを特徴とするゲームシステム。
【請求項６】
請求項１乃至５のいずれかにおいて、
移動オブジェクトの第２の奥行き値が所与のルーチンにより求められ、
求められた移動オブジェクトの第２の奥行き値と、実表示領域に存在するオブジェクトの第１の奥行き値とに基づいて、移動オブジェクトの陰面消去が行われることを特徴とするゲームシステム。
【請求項７】
請求項６において、
移動オブジェクトの位置と実表示領域に存在するオブジェクトの下側境界線とに基づいて、移動オブジェクトの第２の奥行き値が求められることを特徴とするゲームシステム。
【請求項８】
コンピュータが使用可能な情報記憶媒体であって、
ワールドマップ上で実表示領域を移動させる手段と、
ワールドマップ上での前記実表示領域の位置座標に応じて、前記実表示領域に存在する少なくとも１つのオブジェクトの半透明情報を変化させる手段と、
実表示領域でのスクロール画像を生成する手段と、
をコンピュータに実現させるためのプログラムを含むことを特徴とする情報記憶媒体。
【請求項９】
請求項８において、
前記実表示領域が、移動オブジェクトの移動に伴いワールドマップ上で移動し、
前記実表示領域に存在するオブジェクトの奥側に移動オブジェクトが隠れた場合にも移動オブジェクトが見えるように、オブジェクトの半透明情報を変化させることを特徴とする情報記憶媒体。
【請求項１０】
請求項８又は９において、
ワールドマップの第１の座標軸方向でのオブジェクトの長さよりも第２の座標軸方向でのオブジェクトの長さの方が長い場合には、第２の座標軸での前記実表示領域の位置座標に応じて、オブジェクトの半透明情報を変化させることを特徴とする情報記憶媒体。
【請求項１１】
請求項８乃至１０のいずれかにおいて、
前記実表示領域の位置座標が第１の値と第２の値の間にあることを条件に、オブジェクトの半透明情報を変化させることを特徴とする情報記憶媒体。
【請求項１２】
請求項１１において、
前記第１、第２の値が各オブジェクト毎に設定されていることを特徴とする情報記憶媒体。
【請求項１３】
請求項８乃至１２のいずれかにおいて、
移動オブジェクトの第２の奥行き値が所与のルーチンにより求められ、
求められた移動オブジェクトの第２の奥行き値と、実表示領域に存在するオブジェクトの第１の奥行き値とに基づいて、移動オブジェクトの陰面消去が行われることを特徴とする情報記憶媒体。
【請求項１４】
請求項１３において、
移動オブジェクトの位置と実表示領域に存在するオブジェクトの下側境界線とに基づいて、移動オブジェクトの第２の奥行き値が求められることを特徴とする情報記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ゲームシステム及び情報記憶媒体に関する。
【０００２】
【背景技術及び発明が解決しようとする課題】
従来より、仮想的な３次元空間であるオブジェクト空間内の所与の視点から見える画像を生成するゲームシステムが知られており、いわゆる仮想現実を体験できるものとして人気が高い。ロールプレイングゲーム（ＲＰＧ）を楽しむことができるゲームシステムを例にとれば、プレーヤは、自身の分身であるキャラクタ（オブジェクト）を操作してマップ上で移動させ、敵キャラクタと対戦したり、他のキャラクタと対話したり、様々な町を訪れたりすることでゲームを楽しむ。
【０００３】
このようなゲームシステムでは、プレーヤが操作する移動オブジェクト（キャラクタ）が、マップ上に配置される木などのオブジェクトに隠れて見えなくなってしまうという問題が生じる。
【０００４】
そして、このような問題を解決するものとして、例えば特開平９−５０５４１号公報に開示される従来技術が知られている。この従来技術では、プレーヤの視点と移動オブジェクトとの間に障害物（遮蔽物）となるオブジェクトが存在するか否かを判定し、存在すると判定した場合には、そのオブジェクトを透過状態にする処理を行う。このようにすることで、そのオブジェクトが障害物となって移動オブジェクトが隠れて見えなくなってしまうという上記問題を解決できる。
【０００５】
しかしながら、この従来技術では、プレーヤの視点と移動オブジェクトとの間に障害物となるオブジェクトが存在するか否かを判定する処理が必要になるため、処理負荷が非常に重くなるという課題がある。
【０００６】
また、この従来技術では、一定の条件の下では、視点と移動オブジェクトとの間に入り込んだオブジェクトが交互に透過状態になったり非透過状態になったりする。このため、生成される画像がちらついてしまい見苦しいものになるという課題がある。
【０００７】
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、移動オブジェクトが他のオブジェクトに隠れてプレーヤの視点から見えなくなる問題等を少ない処理負担で解決できるゲームシステム及び情報記憶媒体を提供することにある。
【０００８】
【課題を解決するための手段】
上記課題を解決するために、本発明は、画像生成を行うゲームシステムであって、ワールドマップ上で実表示領域を移動させる手段と、ワールドマップ上での前記実表示領域の位置座標に応じて、前記実表示領域に存在する少なくとも１つのオブジェクトの半透明情報を変化させる手段と、実表示領域でのスクロール画像を生成する手段とを含むことを特徴とする。また本発明に係る情報記憶媒体は、コンピュータにより使用可能な情報記憶媒体であって、上記手段をコンピュータに実現させるためのプログラムを含むことを特徴とする。また本発明に係るプログラムは、コンピュータにより使用可能なプログラム（情報記憶媒体又は搬送波に具現化されるプログラム）であって、上記手段をコンピュータに実現させるためのモジュールを含むことを特徴とする。
【０００９】
本発明によれば、ワールドマップ上で実表示領域を移動させながら実表示領域でのスクロール画像が生成される。そして本発明では、実表示領域の位置座標（例えば代表点の位置座標）に応じて、実表示領域内のオブジェクトの半透明情報が変化する。従って、実表示領域の位置に応じた最適な半透明情報をオブジェクトに設定することが可能となり、例えば、移動オブジェクトが他のオブジェクトに隠れてプレーヤの視点から見えなくなる問題等を少ない処理負担で解決できるようになる。
【００１０】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、前記実表示領域が、移動オブジェクトの移動に伴いワールドマップ上で移動し、前記実表示領域に存在するオブジェクトの奥側に移動オブジェクトが隠れた場合にも移動オブジェクトが見えるように、オブジェクトの半透明情報を変化させることを特徴とする。このようにすれば、移動オブジェクトが移動し、実表示領域内のオブジェクトの奥側に移動オブジェクトが隠れた場合に、移動オブジェクトの移動に伴い移動する実表示領域の位置座標に基づいてオブジェクトの半透明情報を変化させ、移動オブジェクトがオブジェクトを透過してプレーヤの視点から見えるようにすることができる。
【００１１】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、ワールドマップの第１の座標軸方向でのオブジェクトの長さよりも第２の座標軸方向でのオブジェクトの長さの方が長い場合には、第２の座標軸での前記実表示領域の位置座標に応じて、オブジェクトの半透明情報を変化させることを特徴とする。このようにすれば、第２の座標軸の位置座標を用いるだけでオブジェクトの半透明情報を変化させることができるようになるため、処理の簡素化を図れる。また、半透明情報の変化区間を設定する第１、第２の値の設定作業も容易化できる。
【００１２】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、前記実表示領域の位置座標が第１の値と第２の値の間にあることを条件に、オブジェクトの半透明情報を変化させることを特徴とする。このようにすれば、ワールドマップ上でのオブジェクトの配置位置に応じた最適な半透明情報をオブジェクトに設定できるようになる。
【００１３】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、前記第１、第２の値が各オブジェクト毎に設定されていることを特徴とする。このようにすれば、各オブジェクトの第１、第２の値を各オブジェクトに最適な値になるように微妙に調整できるようになり、ワールドマップのデザイン作業等を容易化できる。
【００１４】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、移動オブジェクトの第２の奥行き値が所与のルーチンにより求められ、求められた移動オブジェクトの第２の奥行き値と、実表示領域に存在するオブジェクトの第１の奥行き値とに基づいて、移動オブジェクトの陰面消去が行われることを特徴とする。
【００１５】
本発明によれば、移動オブジェクトの第２の奥行き値（擬似的な奥行き値、描画プライオリティ）が、所与の処理ルーチンに基づき求められる。そして、この求められた第２の奥行き値と、実表示領域（ワールドマップ）上のオブジェクトの第１の奥行き値（擬似的な奥行き値、描画プライオリティ値）とに基づき、移動オブジェクトの陰面消去（奥行きソート法による陰面消去、奥行き比較法による陰面消去等）が行われる。これにより、実表示領域に配置されるオブジェクト（２次元オブジェクト）の間に、移動オブジェクトを割り込ませることが可能になり、オブジェクトの描画プライオリティの問題を解決できる。即ち、移動オブジェクトの一部だけが表示され、他の部分が他のオブジェクトに隠れて非表示になるような画像を生成できるようになる。
【００１６】
なお、移動オブジェクトは２次元のオブジェクトであることが特に望ましいが、３次元のオブジェクトであってもよい。
【００１７】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、移動オブジェクトの位置と実表示領域に存在するオブジェクトの下側境界線とに基づいて、移動オブジェクトの第２の奥行き値が求められることを特徴とする。このようにすれば、移動オブジェクトと他のオブジェクトとの位置関係に応じた最適な第２の奥行き値を、簡素で負荷の少ない処理で求めることができるようになる。
【００１８】
なお、移動オブジェクトの第２の奥行き値を求める際には、移動オブジェクトの方向や移動履歴などを考慮してもよい。
【００１９】
また、移動オブジェクトの位置は、移動オブジェクトの最下部に設定された代表点の位置であることが望ましい。移動オブジェクトの最下部に設定された代表点は、移動オブジェクトの中で視点から見て最も手前側にある点であると考えられる。従って、この最下部の代表点の位置に基づき、移動オブジェクトの第２の奥行き値を求めるようにすれば、移動オブジェクトの最適な第２の奥行き値を少ない処理負担で求めることができるようになる。
【００２０】
また、移動オブジェクトの第２の奥行き値を求める際には、オブジェクトの下側境界線を所与の距離だけ延長した線を用いることが望ましい。このようにすれば、移動オブジェクトがオブジェクトの左又は右から移動してきた場合などに、移動オブジェクトを適正に陰面消去できるようになる。
【００２１】
また、この場合の所与の距離は、移動オブジェクトの大きさに基づき特定される距離であることが望ましい。このようにすれば、種々の大きさ（幅）の移動オブジェクトに対する適正な陰面消去が可能になる。
【００２２】
【発明の実施の形態】
以下、本発明の好適な実施形態について図面を用いて説明する。
【００２３】
１．構成
図１に、本実施形態のゲームシステム（画像生成システム）の機能ブロック図の一例を示す。なお同図において本実施形態は、少なくとも処理部１００を含めばよく（或いは処理部１００と記憶部１７０を含めばよく）、それ以外のブロックについては任意の構成要素とすることができる。
【００２４】
操作部１６０は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、マイク、或いは筺体などのハードウェアにより実現できる。
【００２５】
記憶部１７０は、処理部１００や通信部１９６などのワーク領域となるもので、その機能はＲＡＭなどのハードウェアにより実現できる。
【００２６】
情報記憶媒体１８０（コンピュータにより使用可能な記憶媒体）は、プログラムやデータなどの情報を格納するものであり、その機能は、光ディスク（ＣＤ、ＤＶＤ）、光磁気ディスク（ＭＯ）、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ（ＲＯＭ）などのハードウェアにより実現できる。処理部１００は、この情報記憶媒体１８０に格納される情報に基づいて本発明（本実施形態）の種々の処理を行う。即ち情報記憶媒体１８０には、本発明（本実施形態）の手段（特に処理部１００に含まれるブロック）をコンピュータに実現（実行、機能）させるためのプログラム等が格納され、このプログラムは、１又は複数のモジュール（オブジェクト指向におけるオブジェクトも含む）を含む。
【００２７】
なお、情報記憶媒体１８０に格納される情報の一部又は全部は、システムへの電源投入時等に記憶部１７０に転送されることになる。また情報記憶媒体１８０には、本発明の処理を行うためのプログラム、画像データ、音データ、表示物の形状データ、本発明の処理を指示するための情報、或いはその指示に従って処理を行うための情報などを含ませることができる。
【００２８】
表示部１９０は、本実施形態により生成された画像を出力するものであり、その機能は、ＣＲＴ、ＬＣＤ、或いはＨＭＤ（ヘッドマウントディスプレイ）などのハードウェアにより実現できる。
【００２９】
音出力部１９２は、本実施形態により生成された音を出力するものであり、その機能は、スピーカなどのハードウェアにより実現できる。
【００３０】
携帯型情報記憶装置１９４は、プレーヤの個人データやゲームのセーブデータなどが記憶されるものであり、この携帯型情報記憶装置１９４としては、メモリカードや携帯型ゲーム装置などを考えることができる。
【００３１】
通信部１９６は、外部（例えばホスト装置や他のゲームシステム）との間で通信を行うための各種の制御を行うものであり、その機能は、各種プロセッサ、或いは通信用ＡＳＩＣなどのハードウェアや、プログラムなどにより実現できる。
【００３２】
なお本発明（本実施形態）の各手段を実現するためのプログラム（データ）は、ホスト装置（サーバー）が有する情報記憶媒体からネットワーク及び通信部１９６を介して情報記憶媒体１８０に配信するようにしてもよい。このようなホスト装置（サーバー）の情報記憶媒体の使用も本発明の範囲内に含まれる。
【００３３】
処理部１００（プロセッサ）は、操作部１６０からの操作データやプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの各種の処理を行う。この場合、処理部１００は、記憶部１７０内の主記憶部１７２をワーク領域として使用して、各種の処理を行う。
【００３４】
ここで、処理部１００が行うゲーム処理としては、コイン（代価）の受け付け処理、各種モードの設定処理、ゲームの進行処理、選択画面の設定処理、オブジェクト（１又は複数のプリミティブ面）の位置や回転角度（Ｘ、Ｙ又はＺ軸回り回転角度）を求める処理、オブジェクトを動作させる処理（モーション処理）、視点の位置（仮想カメラの位置）や視線角度（仮想カメラの回転角度）を求める処理、マップオブジェクトなどのオブジェクトをオブジェクト空間へ配置する処理、ヒットチェック処理、ゲーム結果（成果、成績）を演算する処理、複数のプレーヤが共通のゲーム空間でプレイするための処理、或いはゲームオーバー処理などを考えることができる。
【００３５】
また、処理部１００は、上記のゲーム処理結果に基づいて各種の画像処理を行い、ゲーム画像を生成し、表示部１９０に出力する。例えば、いわゆる３次元のゲーム画像を生成する場合には、まず、座標変換、クリッピング処理、透視変換、或いは光源計算等のジオメトリ処理が行われ、その処理結果に基づいて、描画データ（プリミティブ面の構成点（頂点）に付与される位置座標、テクスチャ座標、色（輝度）データ、法線ベクトル或いはα値等）が作成される。そして、この描画データ（プリミティブ面データ）に基づいて、ジオメトリ処理後のオブジェクト（１又は複数プリミティブ面）の画像が、描画バッファ１７４（フレームバッファ、ワークバッファ等のピクセル単位で画像情報を記憶できるバッファ）に描画される。これにより、オブジェクト空間内において所与の視点（仮想カメラ）から見える画像が生成されるようになる。
【００３６】
更に、処理部１００は、上記のゲーム処理結果に基づいて各種の音処理を行い、ＢＧＭ、効果音、又は音声などのゲーム音を生成し、音出力部１９２に出力する。
【００３７】
なお、処理部１００の機能は、より好適には、ハードウェア（ＣＰＵ、ＤＳＰ等のプロセッサ又はゲートアレイ等のＡＳＩＣ）とプログラム（ゲームプログラム又はファームウェア等）との組み合わせにより実現される。但し、処理部１００の機能の全てを、ハードウェアにより実現してもよいし、その全てをプログラムにより実現してもよい。
【００３８】
処理部１００は、スクロール処理部１１０、半透明情報変化部１２０、テクスチャマッピング部１３０、陰面消去部１３２、α合成部１３４を含む。
【００３９】
ここで、スクロール処理部１１０は、ワールドマップ上で実表示領域を移動させる処理を行う。ワールドマップは、例えば、プレーヤが操作するキャラクタ（登場人物）などの移動オブジェクトの移動フィールドとなるものであり、背景などを表現するためのオブジェクト（例えば、木、建物、壁又は道等）が配置される。
【００４０】
そして、表示部１９０には、このワールドマップ上の実表示領域でのスクロール画像が表示される。即ち、プレーヤが操作する移動オブジェクト（キャラクタ又は乗り物等）が移動すると、それに伴い実表示領域がワールドマップ上で移動する。具体的には、例えば、移動オブジェクトが実表示領域の中に入るように実表示領域が移動する。そして、移動オブジェクトや実表示領域に配置されるオブジェクトから構成されるスクロール画像が処理部１００により生成され、表示部１９０に表示される。
【００４１】
なお、ゲームステージの変更などの所与のイベントの発生に伴い、ワールドマップは切り替えられる。例えば、移動オブジェクトが森の中を移動するゲームステージの場合には、森を表すワールドマップが使用され、このワールドマップ上で移動オブジェクトが移動する。一方、移動オブジェクトが洞窟の中を移動するゲームステージでは、洞窟を表すワールドマップが使用され、このワールドマップ上で移動オブジェクトが移動する。
【００４２】
また、実表示領域は移動オブジェクトの移動に完全に連動させて移動させる必要は無く、例えば、移動オブジェクトの移動に遅れて実表示領域を移動させたり、移動オブジェクトが所与の距離だけ所与の方向に移動したことを条件に実表示領域を移動させることが望ましい。
【００４３】
半透明情報変化部１２０は、ワールドマップ上での実表示領域の位置座標（例えば、Ｘ、Ｙ座標の少なくとも一方）に応じて、実表示領域に存在する木などのオブジェクトの半透明情報（α値等）を変化させる処理を行う。
【００４４】
より具体的には、実表示領域に存在するオブジェクトの奥側に移動オブジェクトが隠れた場合にも移動オブジェクトがプレーヤの視点から見えるように、オブジェクトの半透明情報を変化させる。このようにすることで、移動オブジェクトが木などのオブジェクトに隠れて見えなくなってしまうという問題を解決できる。
【００４５】
テクスチャマッピング部１３０は、テクスチャ記憶部１７６に記憶されるテクスチャをオブジェクトにマッピングするための処理を行う。この場合、テクスチャマッピング部１３０は、ＬＵＴ記憶部１７８に記憶されるインデックスカラー・テクスチャマッピング用のＬＵＴ（ルックアップテーブル）を用いたテクスチャマッピングを行うことができる。
【００４６】
陰面消去部１３２は、例えば、以下のような手法により陰面消去処理を実現している。
【００４７】
即ち、移動オブジェクトの第２の奥行き値を所与のルーチン（アルゴリズム）により求める。そして、求められた移動オブジェクトの第２の奥行き値（移動オブジェクトを他のオブジェクト間に割り込ませるための奥行き値）と、他のオブジェクト（２次元オブジェクト、立体的に見えるように表現された表示物の２次元画像が描かれたプリミティブ面）の第１の奥行き値とに基づいて、移動オブジェクトの陰面消去を行う。
【００４８】
この場合、移動オブジェクトの第２の奥行き値は、例えば、移動オブジェクトの位置（移動オブジェクトの最下部に設定された代表点の位置）と、他のオブジェクトの下側境界線（下側境界線を所与の距離だけ延長した延長境界線）とに基づいて求めることが望ましい。また、移動オブジェクトの方向や移動履歴（移動経路、移動順序）を考慮して第２の奥行き値を求めてもよい。
【００４９】
なお、陰面消去部１３２が行う陰面消去は、例えば、奥行き値（描画プライオリティ値）に応じてオブジェクト（２次元オブジェクト、プリミティブ面）をソーティングし、視点から見て奥側から順にオブジェクトを描画する奥行きソート法（Ｚソート法）により実現してもよいし、ピクセル毎に奥行き値を比較し、視点から見て手前側のピクセルを描画する奥行き比較法（例えばＺバッファ１７９を用いたＺバッファ法等）により実現してもよい。
【００５０】
α合成部１３４は、α値を用いたα合成処理（αブレンディング、α加算又はα減算等）を行う。なお、α値（Ａ値）は、各ピクセルに関連づけられて記憶されるデータであり、例えば色データ（ＲＧＢ）以外のプラスアルファのデータである。α値は、半透明情報（透明情報又は不透明情報と等価）、マスク情報、バンプ情報などとして使用できる。
【００５１】
なお、本実施形態のゲームシステムは、１人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、このようなシングルプレーヤモードのみならず、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。
【００５２】
また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、１つの端末を用いて生成してもよいし、ネットワーク（伝送ライン、通信回線）などで接続された複数の端末（ゲーム機、携帯電話）を用いて生成してもよい。
【００５３】
２．本実施形態の特徴
次に本実施形態の特徴について図面を用いて説明する。
【００５４】
２．１  実表示領域の移動に伴うオブジェクトの半透明情報変化
本実施形態では図２のＡ１、Ａ２に示すように、移動オブジェクトＭＯＢ（キャラクタ）が移動すると、それに伴い実表示領域ＲＤＡも移動（スクロール）する。そして、移動オブジェクトＭＯＢやこの実表示領域ＲＤＡに存在するオブジェクトＯＢ（木）などから構成されるスクロール画像が、プレーヤに対して表示される。
【００５５】
そして更に本実施形態では、図２のＡ１、Ａ２に示すように、ワールドマップＷＭ上での実表示領域ＲＤＡの例えば左上の位置ＰＤ（広義には代表点の位置）の座標に応じて、ＲＤＡ内のオブジェクトＯＢ（木）の半透明情報（例えばα値）が変化する。
【００５６】
より具体的には、オブジェクトＯＢの奥側（例えば奥行き値が奥側）に移動オブジェクトＭＯＢが移動して隠れた場合にも、移動オブジェクトＭＯＢの画像がプレーヤから見えるように、オブジェクトＯＢを半透明状態にする。
【００５７】
このようにすることで、移動オブジェクトＭＯＢを操作するプレーヤは、ＭＯＢがオブジェクトＯＢの陰に隠れた場合にも、ＭＯＢの存在を見失わないようになる。従って、プレーヤが移動オブジェクトＭＯＢを見失って混乱してしまうというような事態を防止でき、プレーヤがストレスを感じずに移動オブジェクトＭＯＢを操作できる快適なゲーム操作環境を提供できる。
【００５８】
また、例えば特開平９−５０５４１号公報に開示される従来技術では、プレーヤの視点と移動オブジェクトとの間に障害物となるオブジェクトが存在するか否かを判定する処理が必要になるため、処理負荷が非常に重くなるという問題があった。
【００５９】
これに対して本実施形態では、このような判定処理を必要とすることなく、例えば実表示領域ＲＤＡの位置ＰＤの座標をモニタするだけで、オブジェクトＯＢの半透明情報を制御できる。従って、上記判定処理が必要な上記従来技術に比べて、処理負荷が非常に軽くできるという利点がある。
【００６０】
また、上記従来技術には、視点と移動オブジェクトとの間に入り込んだオブジェクトが交互に透過状態になったり非透過状態になったりして、画像がちらついてしまうという問題がある。
【００６１】
これに対して本実施形態では、実表示領域ＲＤＡの位置ＰＤの座標に基づいて、オブジェクトＯＢの半透明情報をスムーズ（リニア）に変化させることができる。従って、上記従来技術で生じていた画像のちらつきの問題を効果的に解消できる。
【００６２】
図３（Ａ）、（Ｂ）、（Ｃ）、図４（Ａ）、（Ｂ）に、本実施形態により生成されたゲーム画像の例を示す。
【００６３】
図３（Ａ）〜図４（Ｂ）に示すように移動オブジェクトＭＯＢ（キャラクタ）が移動すると、それに伴い実表示領域も移動し、表示部に表示されるゲーム画像がスクロールする。
【００６４】
そして、例えば図３（Ｃ）、図４（Ａ）、（Ｂ）では、移動オブジェクトＭＯＢがオブジェクトＯＢの奥側に移動しているが、オブジェクトＯＢが不透明状態から半透明状態に変化している。従って、プレーヤは移動オブジェクトＭＯＢを見失わなくて済むようになる。また、オブジェクトＯＢの半透明度も徐々に変化しているため、プレーヤが感じる不自然さも軽減できる。
【００６５】
なお、本実施形態では、ワールドマップＷＭは複数のブロックに分割されている。そして、実表示領域ＲＤＡを含みＲＤＡよりも広い領域（例えば１．５〜３倍程度の広さの領域）である拡張表示領域（キャッシュ領域）が設定され、この拡張表示領域を構成するブロックの圧縮画像データが主記憶部上に展開（伸張）される。そして、これらの展開されたブロックの画像データのうち、実表示領域ＲＤＡの画像表示に必要なブロックの画像データが、フレームバッファ（描画バッファ）に転送されて描画されることになる。これにより、ワールドマップＷＭ上の実表示領域ＲＤＡでの画像がゲーム画像として表示部に表示されるようになる。
【００６６】
２．２  Ｙ座標の変化による半透明情報の変化
さて、本実施形態では図３（Ａ）〜図４（Ｂ）に示すように、ワールドマップを上空から見下ろしたように見える鳥瞰図のようなゲーム画像が生成される。そして、このようなゲーム画像では、例えば木のように、高さ（縦）方向であるＹ座標軸方向での長さの方が幅（横）方向であるＸ座標軸方向での長さよりも長くなるオブジェクトが多く存在する。
【００６７】
そして、このようなＹ座標軸方向に長いオブジェクトの陰に移動オブジェクト（キャラクタ）が隠れた場合には、Ｙ座標軸方向に移動オブジェクトを長い距離だけ移動させないと、移動オブジェクトが隠れて見えなくなる状況からなかなか抜け出せなくなる。
【００６８】
そこで本実施形態では、この点に着目し、Ｘ座標軸（広義には第１の座標軸）方向よりもＹ座標軸（広義には第２の座標軸）方向での長さが長いオブジェクトについては、実表示領域のＹ座標に応じてそのオブジェクトの半透明情報（α値）を変化させるようにしている。
【００６９】
即ち図５に示すようにオブジェクトＯＢ（木）は、表示時におけるその長さがＸ座標軸方向よりもＹ座標軸方向に長いオブジェクトである。このようなオブジェクトＯＢが存在する実表示領域ＲＤＡがワールドマップＷＭ上で移動した場合には、図５に示すように、実表示領域ＲＤＡの位置ＰＤのＹ座標ＹＤに基づいて、オブジェクトＯＢの半透明情報を変化させる。逆に言えば、図６に示すように、実表示領域ＲＤＡの位置ＰＤのＸ座標ＸＤが変化した場合には、オブジェクトＯＢの半透明情報を変化させない。
【００７０】
例えば図７（Ａ）、（Ｂ）、（Ｃ）は、移動オブジェクトＭＯＢがＸ座標軸方向に移動することで図６のように実表示領域ＲＤＡがＸ座標軸方向に移動した場合に、生成されたゲーム画像の例である。
【００７１】
この場合には図７（Ａ）、（Ｂ）、（Ｃ）に示すように、オブジェクトＯＢは半透明状態に変化せず不透明状態のままとなる。従って、図７（Ｂ）のように移動オブジェクトＭＯＢがオブジェクトＯＢの奥に隠れて見えなくなる事態が生じる。
【００７２】
しかしながら、オブジェクトＯＢのＸ座標軸方向での長さ（幅）は短い。従って、図７（Ｃ）に示すように、Ｘ座標軸方向に移動オブジェクトＭＯＢが少しだけ移動するだけで、ＭＯＢが直ぐに再び見えるようになる。従って、オブジェクトＯＢの半透明情報を変化させなくても、プレーヤが移動オブジェクトＭＯＢを見失ってゲーム操作に混乱する可能性が少ない。
【００７３】
一方、前述の図３（Ａ）〜図４（Ｂ）は、移動オブジェクトＭＯＢがＹ座標軸方向に移動することで図５のように実表示領域ＲＤＡがＹ座標軸方向に移動した場合に、生成されたゲーム画像である。
【００７４】
このようにＹ座標軸方向に長いオブジェクトＯＢの陰に移動オブジェクトＭＯＢが隠れた場合に、オブジェクトＯＢが不透明状態から半透明状態に変化しないと、移動オブジェクトＭＯＢが隠れて見えなくなる状況からなかなか抜け出せなくなる。
【００７５】
本実施形態では、このような場合に、実表示領域ＲＤＡの位置ＰＤのＹ座標に応じて、オブジェクトＯＢの半透明情報が変化する。従って、図３（Ａ）〜図４（Ｂ）から明らかなように、移動オブジェクトＭＯＢがオブジェクトＯＢの高さ方向に移動した場合に、移動オブジェクトＭＯＢの画像が、半透明状態のオブジェクトＯＢの画像を透過してプレーヤの視点から見えるようになる。従って、プレーヤが移動オブジェクトＭＯＢを見失ってゲーム操作に混乱してしまう事態を効果的に防止できる。
【００７６】
また本実施形態によれば、実表示領域ＲＤＡの位置ＰＤのＹ座標だけをモニタしてオブジェクトＯＢの半透明情報を制御すれば済むため、処理の簡素化やパラメータ設定処理（後述する第１、第２の値の設定処理）の簡素化を図れるようになる。
【００７７】
なお、Ｘ座標軸方向に長いオブジェクトの場合には、実表示領域の位置のＸ座標に応じて、そのオブジェクトの半透明情報を変化させるようにしてもよい。また、処理の簡素化や画像の自然さよりも、プレーヤのゲーム操作の混乱の救済を重視する場合には、実表示領域の位置のＸ、Ｙ座標の両方に応じてオブジェクトの半透明情報を変化させてもよい。
【００７８】
２．３  半透明情報の変化区間の設定
本実施形態では、半透明情報が変化する区間（第１の値と第２の値の間の区間）をオブジェクト毎に設定している。
【００７９】
例えば図８に示すように、オブジェクトＯＢAについては、実表示領域ＲＤＡの位置ＰＤのＹ座標ＹＤがＹＤ１A（第１の値）とＹＤ２A（第２の値）の間にあることを条件に、その半透明情報（α値）が変化する。即ちＹ座標ＹＤがＹＤ１AになるとオブジェクトＯＢAの半透明情報の変化が開始し（ＯＢAが半透明になり始める）、ＹＤがＹＤ２AになるとＯＢAの半透明情報の変化が終了する（ＯＢAが完全に透明になる）。
【００８０】
一方、図９に示すように、オブジェクトＯＢBについては、実表示領域ＲＤＡの位置ＰＤのＹ座標ＹＤがＹＤ１B（第１の値）とＹＤ２B（第２の値）の間にあることを条件に、その半透明情報が変化する。即ち、Ｙ座標ＹＤがＹＤ１BになるとオブジェクトＯＢBの半透明情報の変化が開始し（ＯＢBが半透明になり始める）、ＹＤがＹＤ２BになるとＯＢBの半透明情報の変化が終了する（ＯＢBが完全に透明になる）。
【００８１】
このように半透明情報の変化区間（第１の値と第２の値の間の区間）をオブジェクト毎に設定することで、ワールドマップＷＭ上での各オブジェクトの配置位置に応じた適切な半透明制御を実現できるようになる。
【００８２】
例えば、ワールドマップのデザインの際に、移動オブジェクトの一部がオブジェクトに隠れ始める時の実表示領域のＹ座標を得る。そして、この時のＹ座標を、半透明情報の変化を開始するＹ座標（半透明になり始める時のＹ座標）であるＹＤ１（第１の値）に設定するようにする。
【００８３】
また、ワールドマップのデザインの際に、移動オブジェクトの全てがオブジェクトに隠れてしまう時の実表示領域のＹ座標を得る。そして、この時のＹ座標を、半透明情報の変化を終了するＹ座標（完全に透明になる時のＹ座標）であるＹＤ２（第２の値）に設定するようにする。
【００８４】
このように本実施形態によれば、各オブジェクトのＹＤ１、ＹＤ２（第１、第２の値）を各オブジェクトに最適な値になるように、ワールドマップのデザイン時に微妙に調整できる。そして、このような微調整を行うことで、移動オブジェクトが各オブジェクトの奥側に隠れた時に各オブジェクトが適切に半透明になるようなゲーム画像を生成できるようになり、プレーヤが不自然さを感じないゲーム画像を生成できるようになる。
【００８５】
２．４  陰面消去手法
本実施形態では以下に説明する手法により移動オブジェクトの陰面消去を実現している。
【００８６】
本実施形態では図１０に示すように、２次元のオブジェクトＯＢ１〜ＯＢ５（立体的に見えるように表現された表示物の２次元画像がテクスチャマッピングされたプリミティブ面）や地面などで構成される２次元画像のワールドマップを移動フィールドとして、移動オブジェクトＭＯＢ（キャラクタ）が移動する。
【００８７】
そして、このように２次元画像のワールドマップ上を移動オブジェクトＭＯＢが移動する場合には、移動オブジェクトＭＯＢと他の２次元オブジェクトとの間の描画プライオリティに矛盾が生じないようにＭＯＢを描画する必要がある。
【００８８】
例えば図１０のＤ１に示すように移動オブジェクトＭＯＢが移動した場合には、オブジェクトＯＢ１の手前側にＭＯＢが位置しているように見えるようにＭＯＢを描画する必要がある。またＤ２に示すようにＭＯＢが移動した場合には、オブジェクトＯＢ１とＯＢ２の間にＭＯＢが位置しているように見えるようにＭＯＢを描画する必要がある。またＤ３に示すようにＭＯＢが移動した場合には、オブジェクトＯＢ３の奥側にＭＯＢが位置しているように見えるようにＭＯＢを描画する必要がある。
【００８９】
そこで本実施形態では、移動オブジェクトＭＯＢの奥行き値を所与のルーチンにより求め、この求められた奥行き値と他のオブジェクト（実表示領域に存在する２次元オブジェクト）の奥行き値とに基づいて、移動オブジェクトＭＯＢの陰面消去（奥行きソート法又は奥行き比較法等による陰面消去）を行っている。
【００９０】
例えば図１１に示すようにオブジェクトＯＢ１、ＯＢ２、ＯＢ３、ＯＢ４、ＯＢ５、移動オブジェクトＭＯＢが配置されている場合を考える。そして、オブジェクトＯＢ１、ＯＢ２、ＯＢ３、ＯＢ４、ＯＢ５の奥行き値（擬似的な奥行き値、描画プライオリティ値）を、各々、Ｚ１＿１、Ｚ１＿２、Ｚ１＿３、Ｚ１＿４、Ｚ１＿５とする。また、地面（背景）やオブジェクトの抜きの部分での奥行き値をＺ１＿０とする。
【００９１】
この場合に本実施形態では、移動オブジェクトＭＯＢの例えば足下（広義には最下部）に設定された代表点の位置ＰＭ（ＸＭ、ＹＭ）などに基づいて、ＭＯＢの奥行き値Ｚ２を求める。そして、この求められた奥行き値Ｚ２と、オブジェクトＯＢ１〜ＯＢ５の奥行き値Ｚ１＿１〜Ｚ１＿５とに基づいて、移動オブジェクトＭＯＢの陰面消去を行う。
【００９２】
より具体的には、奥行き値Ｚ１＿１〜Ｚ１＿５、Ｚ２に基づいて、オブジェクトＯＢ１〜ＯＢ５、移動オブジェクトＭＯＢをソーティング（Ｚソーティング）する。そして、このソーティングされた順序で、オブジェクトＯＢ１〜ＯＢ５、移動オブジェクトＭＯＢを描画する。即ち、視点から見て奥側から順に描画されるようにＯＢ１〜ＯＢ５、ＭＯＢを描画する。
【００９３】
例えば図１２では、奥行き値がＺ１＿２であるオブジェクトＯＢ２と奥行き値がＺ１＿１であるオブジェクトＯＢ１の間に、奥行き値がＺ２である移動オブジェクトＭＯＢが移動しており、これらの奥行き値の間にはＺ１＿２＞Ｚ２＞Ｚ１＿１の関係が成り立つ。
【００９４】
従って、これらの奥行き値Ｚ１＿２、Ｚ２、Ｚ１＿１に基づいてソーティング処理を行うことで、オブジェクトＯＢ２、移動オブジェクトＭＯＢ、オブジェクトＯＢ１の順序でこれらのオブジェクトが描画されるようになる。
【００９５】
この結果、移動オブジェクトＭＯＢの上半身側では、ＭＯＢの画像がオブジェクトＯＢ２の画像に対して上書き描画されるようになる。一方、移動オブジェクトＭＯＢの下半身側では、オブジェクトＯＢ１の画像がＭＯＢの画像に対して上書き描画されるようになる。これにより、移動オブジェクトＭＯＢの下半身側だけが陰面消去された適正な画像を生成できるようになり、描画プライオリティの問題を解決できる。
【００９６】
以上のように本実施形態によれば、ワールドマップ（２次元画像）を移動フィールドとして移動オブジェクトを移動させ、このワールドマップ上の２次元オブジェクト間に移動オブジェクトを割り込ませることが可能になる。これにより、２次元の画像であるのにもかかわらず、あたかも奥行きがあるかのように、プレーヤを錯覚させることができる。
【００９７】
しかも本実施形態では、例えば図１２のオブジェクトＯＢ１〜ＯＢ５の画像として、カメラで撮影した実写画像や、デザイナがＣＧにより綿密に描いた画像や、有名な画家か描いた絵などを用いることができる。従って、オブジェクトを複数のポリゴンにより立体的に構成した場合に比べて、より自然で現実味のある画像を生成できる。
【００９８】
また、各オブジェクトの奥行き値に基づいてソーティングを行い、各オブジェクトの奥行き値に応じた描画順序で各オブジェクトを描画するようにすれば、オブジェクト間の適正な半透明合成処理を実現できる。
【００９９】
例えば、図１２のオブジェクトＯＢ１〜ＯＢ５の奥行き値Ｚ１＿１〜Ｚ１＿５及び移動オブジェクトＭＯＢの奥行き値Ｚ２の間に、Ｚ１＿５＞Ｚ１＿２＞Ｚ２＞Ｚ１＿１＞Ｚ１＿４＞Ｚ１＿３の関係が成り立っていたとする。
【０１００】
この場合には、まず、奥側のオブジェクトＯＢ５（Ｚ１＿５）、ＯＢ２（Ｚ１＿２）を描画した後、移動オブジェクトＭＯＢ（Ｚ２）を描画する。そして、その後に、オブジェクトＯＢ１（Ｚ１＿１）、オブジェクトＯＢ４（Ｚ１＿４）、オブジェクトＯＢ３（Ｚ１＿３）を描画する。
【０１０１】
このようにすれば、例えばオブジェクトＯＢ１が半透明表示物であった場合に、図１２のＺ２＞Ｚ１＿１となる部分で、移動オブジェクトＭＯＢとオブジェクトＯＢ１との適正な半透明合成処理（αブレンディング、α加算又はα減算等）を実現できるようになる。
【０１０２】
なお、移動オブジェクトＭＯＢの陰面消去は、ピクセル毎に奥行き値を比較する奥行き比較法により実現してもよい。
【０１０３】
この場合には、まず、移動オブジェクトＭＯＢの位置ＰＭ（ＸＭ、ＹＭ）に基づき求められた奥行き値Ｚ２を、ＭＯＢの全てのピクセルの奥行き値に設定する。そして、移動オブジェクトＭＯＢの各ピクセルについて、この奥行き値Ｚ２と、他のオブジェクトの奥行き値Ｚ１（ワールドマップの各ピクセルに設定された奥行き値）を比較する。そして、Ｚ１＞Ｚ２となるピクセルについては移動オブジェクトＭＯＢの画像を上書き描画し、Ｚ２＞Ｚ１となるピクセルについては上書き描画しないようにする。
【０１０４】
図１２を例にとれば、移動オブジェクトＭＯＢの上半身側のピクセルではＺ１＿２＞Ｚ２の関係が成り立つため、ＭＯＢの画像がオブジェクトＯＢ２の画像に対して上書き描画される。一方、移動オブジェクトＭＯＢの下半身側のピクセルではＺ２＞Ｚ１＿１の関係が成り立つため、ＭＯＢの画像は上書き描画されない。これにより、移動オブジェクトＭＯＢの適正な陰面消去画像を得ることができ、描画プライオリティの問題を解決できる。
【０１０５】
次に、移動オブジェクトの奥行き値Ｚ２を取得する手法について説明する。
【０１０６】
まず、本実施形態では図１３に示すように、各オブジェクトＯＢ１〜ＯＢ５の下側境界線Ｌ１〜Ｌ５（太線で示す線）を設定しておく。なお、オブジェクトＯＢ１〜ＯＢ５は、その下側境界線Ｌ１〜Ｌ５の方向がＹ軸の方向に一致しないように、配置する必要がある。また、地面（背景）は、最も奥に描画される部分となっている。
【０１０７】
次に、図１４（Ａ）に示すように、境界線Ｌ１〜Ｌ５の各々の左端をＸ軸の負方向側（左側）に距離Ｗだけ延長し、境界線Ｌ１〜Ｌ５の各々の右端をＸ軸の正方向側（右側）に距離Ｗだけ延長することで、延長境界線Ｌ１’〜Ｌ５’を得る。なお、距離Ｗは、キャラクタなどの移動オブジェクトの大きさにより特定される距離であり、距離Ｗとしては、例えばゲームに登場する移動オブジェクトの最大幅を採用できる。
【０１０８】
次に、図１５に示すように、移動オブジェクトＭＯＢの位置ＰＭ（ＸＭ、ＹＭ）からＹ軸の正方向側（下側）、負方向側（上側）に線ＬＭを引き、この線ＬＭと交わる延長境界線を求める。
【０１０９】
例えば図１５では、線ＬＭは点ＰＬにおいて延長境界線Ｌ３’と交わり、点ＰＵにおいて延長境界線Ｌ４’に交わっている。そして、このような場合には、移動オブジェクトＭＯＢは、オブジェクトＯＢ４とＯＢ３の間に位置すると判断する。即ち、ＭＯＢの奥行き値Ｚ２（描画プライオリティ値）は、ＯＢ４の奥行き値Ｚ１＿４とＯＢ３の奥行き値Ｚ１＿３の間にあると判断する。そして、Ｚ１＿４＞Ｚ２＞Ｚ１＿３の関係が成り立つような値にＭＯＢの奥行き値Ｚ２を設定する。
【０１１０】
同様に、例えば、線ＬＭが延長境界線Ｌ２’、Ｌ１’と交わった場合には、移動オブジェクトＭＯＢはオブジェクトＯＢ２とＯＢ１の間に位置すると判断し、Ｚ１＿２＞Ｚ２＞Ｚ１＿１の関係が成り立つような値にＭＯＢの奥行き値Ｚ２を設定する。
【０１１１】
以上のようにして移動オブジェクトＭＯＢの奥行き値Ｚ２を設定すれば、図１０、図１２で説明したような移動オブジェクトＭＯＢの適正な陰面消去を実現できるようになる。
【０１１２】
なお、図１４（Ａ）で、下側境界線Ｌ１〜Ｌ５を距離Ｗだけ延長したのは以下の理由による。即ち図１６（Ａ）に示すような場所に移動オブジェクトＭＯＢが位置する場合には、図１６（Ｂ）に示すようにＭＯＢの一部がオブジェクトＯＢ１により陰面消去されて見えなくなるはずである。
【０１１３】
ところが、下側境界線Ｌ１を距離Ｗだけ延長しないと、移動オブジェクトＭＯＢの位置ＰＭ（ＸＭ、ＹＭ）から引いた線ＬＭは、下側境界線Ｌ１（Ｌ１’）と交わらなくなる。従って、移動オブジェクトＭＯＢの奥行き値Ｚ２とオブジェクトＯＢ１の奥行き値Ｚ１＿１との間に、Ｚ２＞Ｚ１＿１の関係が成り立つことが保証されなくなる。この結果、図１６（Ｂ）に示すような陰面消去が行われなくなり、移動オブジェクトＭＯＢの画像がオブジェクトＯＢ１の画像に上書き描画されてしまう事態が生じるおそれがある。
【０１１４】
本実施形態のように、下側境界線Ｌ１を距離Ｗ（移動オブジェクトの最大幅）だけ延長すれば、このような事態が生じるのが防止され、適正な陰面消去が可能になる。
【０１１５】
なお、移動オブジェクトの奥行き値を求める手法は、図１５で説明した手法に限定されず種々の変形実施が可能である。
【０１１６】
例えば図１４（Ｂ）に示すように、延長境界線Ｌ１’〜Ｌ５’の端点からＹ軸の負方向側（上側）に他の線にぶつかるまで線（点線で示す線）を延ばすことで、ワールドマップ（２次元画像）を複数の領域ＡＲ１〜ＡＲ５に分割する。
【０１１７】
次に、この分割された各領域ＡＲ１〜ＡＲ５（各領域のピクセル）に、延長境界線Ｌ１’〜Ｌ５’（下側境界線）との位置関係に応じた奥行き値（描画プライオリティ値）を設定する。例えば、領域ＡＲ３には、オブジェクトＯＢ４、ＯＢ３の奥行き値Ｚ１＿４、Ｚ１＿３の間の値になる奥行き値を設定する。同様に、領域ＡＲ１には、オブジェクトＯＢ２、ＯＢ１の奥行き値Ｚ１＿２、Ｚ１＿１の間の値になる奥行き値を設定する。
【０１１８】
そして、移動オブジェクトＭＯＢの位置ＰＭ（ＸＭ、ＹＭ）が領域ＡＲ１〜ＡＲ５のうちのいずれの領域にあるかを判断し、ＰＭが位置する領域に設定された奥行き値を、移動オブジェクトＭＯＢの奥行き値として採用するようにする。
【０１１９】
以上のような手法によっても、図１０、図１２で説明したような移動オブジェクトＭＯＢの適正な陰面消去を実現できる。
【０１２０】
３．本実施形態の処理
次に、本実施形態の処理の詳細例について、図１７のフローチャートを用いて説明する。
【０１２１】
まず、オブジェクトＯＢ（木）に対して、ＯＢが完全に表示される時（α＝１．０）の位置座標ＹＤ１（図８、図９のＹＤ１A、ＹＤ１B）と、ＯＢが完全に消える時（α＝０．０）の位置座標ＹＤ２（図８、図９のＹＤ２A、ＹＤ２B）を設定しておく（ステップＳ１）。
【０１２２】
そして、移動オブジェクトＭＯＢ（キャラクタ）の移動に応じて、実表示領域ＲＤＡの位置座標ＹＤ（図２の位置ＰＤのＹ座標）を変化させる（ステップＳ２）。
【０１２３】
次に、ＹＤ＜ＹＤ２か否かを判断し（ステップＳ３）、ＹＤ＜ＹＤ２の場合には、そのオブジェクトについては描画することなく処理を終了する。ＹＤ＜ＹＤ２の場合には、そのオブジェクトについては描画する必要がないからである。例えば図９のＢ１では、ＹＤ＜ＹＤ２Aとなっているため、オブジェクトＯＢAについては描画することなく処理を終了する。
【０１２４】
ステップＳ３でＹＤ＜ＹＤ２ではない（ＹＤ≧ＹＤ２）と判断された場合には、ＹＤ＞ＹＤ１か否かを判断する（ステップＳ４）。そして、ＹＤ＞ＹＤ１の場合には、α＝１．０（不透明）として、そのオブジェクトＯＢを描画する（ステップＳ５）。例えば図８のＢ２では、ＹＤ＞ＹＤ１Bとなっているため、オブジェクトＯＢBについてはα＝１．０で描画されることになる。
【０１２５】
ステップＳ４でＹＤ＞ＹＤ１ではない（ＹＤ１≧ＹＤ≧ＹＤ２）と判断された場合には、α＝（ＹＤ−ＹＤ２）／（ＹＤ１−ＹＤ２）でオブジェクトＯＢを描画する（ステップＳ６）。
【０１２６】
即ち、図８のＢ３に示すようにＹＤ＝ＹＤ１Aとなった時からオブジェクトＯＢAのα値が１．０から徐々に小さくなる。そして、図８のＢ４に示すようにＹＤ＝ＹＤ２AになるとオブジェクトＯＢAのα値は０．０になり、ＯＢAは完全に透明になる。
【０１２７】
また、図９のＢ５に示すようにＹＤ＝ＹＤ１Bとなった時からオブジェクトＯＢBのα値が１．０から徐々に小さくなる。そして、図９のＢ６に示すようにＹＤ＝ＹＤ２BになるとオブジェクトＯＢBのα値は０．０になり、ＯＢBは完全に透明になる。
【０１２８】
このようにすることで本実施形態では、各オブジェクトＯＢA、ＯＢBのα値（半透明情報）を、ＹＤ１A≧ＹＤ≧ＹＤ２A、ＹＤ１B≧ＹＤ≧ＹＤ２Bを変化区間として変化させている。
【０１２９】
４．ハードウェア構成
次に、本実施形態を実現できるハードウェアの構成の一例について図１８を用いて説明する。
【０１３０】
メインプロセッサ９００は、ＣＤ９８２（情報記憶媒体）に格納されたプログラム、通信インターフェース９９０を介して転送されたプログラム、或いはＲＯＭ９５０（情報記憶媒体の１つ）に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などの種々の処理を実行する。
【０１３１】
コプロセッサ９０２は、メインプロセッサ９００の処理を補助するものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算（ベクトル演算）を高速に実行する。例えば、オブジェクトを移動させたり動作（モーション）させるための物理シミュレーションに、マトリクス演算などの処理が必要な場合には、メインプロセッサ９００上で動作するプログラムが、その処理をコプロセッサ９０２に指示（依頼）する。
【０１３２】
ジオメトリプロセッサ９０４は、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算（ベクトル演算）を高速に実行する。例えば、座標変換、透視変換、光源計算などの処理を行う場合には、メインプロセッサ９００で動作するプログラムが、その処理をジオメトリプロセッサ９０４に指示する。
【０１３３】
データ伸張プロセッサ９０６は、圧縮された画像データや音データを伸張するデコード処理を行ったり、メインプロセッサ９００のデコード処理をアクセレートする処理を行う。これにより、オープニング画面、インターミッション画面、エンディング画面、或いはゲーム画面などにおいて、ＭＰＥＧ方式等で圧縮された動画像を表示できるようになる。なお、デコード処理の対象となる画像データや音データは、ＲＯＭ９５０、ＣＤ９８２に格納されたり、或いは通信インターフェース９９０を介して外部から転送される。
【０１３４】
描画プロセッサ９１０は、ポリゴンや曲面などのプリミティブ面で構成されるオブジェクトの描画（レンダリング）処理を高速に実行するものである。オブジェクトの描画の際には、メインプロセッサ９００は、ＤＭＡコントローラ９７０の機能を利用して、オブジェクトデータを描画プロセッサ９１０に渡すと共に、必要であればテクスチャ記憶部９２４にテクスチャを転送する。すると、描画プロセッサ９１０は、これらのオブジェクトデータやテクスチャに基づいて、Ｚバッファなどを利用した陰面消去を行いながら、オブジェクトをフレームバッファ９２２に高速に描画する。また、描画プロセッサ９１０は、αブレンディング（半透明処理）、デプスキューイング、ミップマッピング、フォグ処理、バイリニア・フィルタリング、トライリニア・フィルタリング、アンチエリアシング、シェーディング処理なども行うことができる。そして、１フレーム分の画像がフレームバッファ９２２に書き込まれると、その画像はディスプレイ９１２に表示される。
【０１３５】
サウンドプロセッサ９３０は、多チャンネルのＡＤＰＣＭ音源などを内蔵し、ＢＧＭ、効果音、音声などの高品位のゲーム音を生成する。生成されたゲーム音は、スピーカ９３２から出力される。
【０１３６】
ゲームコントローラ９４２からの操作データや、メモリカード９４４からのセーブデータ、個人データは、シリアルインターフェース９４０を介してデータ転送される。
【０１３７】
ＲＯＭ９５０にはシステムプログラムなどが格納される。なお、業務用ゲームシステムの場合には、ＲＯＭ９５０が情報記憶媒体として機能し、ＲＯＭ９５０に各種プログラムが格納されることになる。なお、ＲＯＭ９５０の代わりにハードディスクを利用するようにしてもよい。
【０１３８】
ＲＡＭ９６０は、各種プロセッサの作業領域として用いられる。
【０１３９】
ＤＭＡコントローラ９７０は、プロセッサ、メモリ（ＲＡＭ、ＶＲＡＭ、ＲＯＭ等）間でのＤＭＡ転送を制御するものである。
【０１４０】
ＣＤドライブ９８０は、プログラム、画像データ、或いは音データなどが格納されるＣＤ９８２（情報記憶媒体）を駆動し、これらのプログラム、データへのアクセスを可能にする。
【０１４１】
通信インターフェース９９０は、ネットワークを介して外部との間でデータ転送を行うためのインターフェースである。この場合に、通信インターフェース９９０に接続されるネットワークとしては、通信回線（アナログ電話回線、ＩＳＤＮ）、高速シリアルバスなどを考えることができる。そして、通信回線を利用することでインターネットを介したデータ転送が可能になる。また、高速シリアルバスを利用することで、他のゲームシステムとの間でのデータ転送が可能になる。
【０１４２】
なお、本発明の各手段は、その全てを、ハードウェアのみにより実現（実行）してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムのみにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。
【０１４３】
そして、本発明の各手段をハードウェアとプログラムの両方により実現する場合には、情報記憶媒体には、本発明の各手段をハードウェアを利用して実現するためのプログラムが格納されることになる。より具体的には、上記プログラムが、ハードウェアである各プロセッサ９０２、９０４、９０６、９１０、９３０等に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ９０２、９０４、９０６、９１０、９３０等は、その指示と渡されたデータとに基づいて、本発明の各手段を実現することになる。
【０１４４】
図１９（Ａ）に、本実施形態を業務用ゲームシステムに適用した場合の例を示す。プレーヤは、ディスプレイ１１００上に映し出されたゲーム画像を見ながら、レバー１１０２、ボタン１１０４等を操作してゲームを楽しむ。内蔵されるシステムボード（サーキットボード）１１０６には、各種プロセッサ、各種メモリなどが実装される。そして、本発明の各手段を実現するためのプログラム（データ）は、システムボード１１０６上の情報記憶媒体であるメモリ１１０８に格納される。以下、このプログラムを格納プログラム（格納情報）と呼ぶ。
【０１４５】
図１９（Ｂ）に、本実施形態を家庭用のゲームシステムに適用した場合の例を示す。プレーヤはディスプレイ１２００に映し出されたゲーム画像を見ながら、ゲームコントローラ１２０２、１２０４を操作してゲームを楽しむ。この場合、上記格納プログラム（格納情報）は、本体システムに着脱自在な情報記憶媒体であるＣＤ１２０６、或いはメモリカード１２０８、１２０９等に格納されている。
【０１４６】
図１９（Ｃ）に、ホスト装置１３００と、このホスト装置１３００とネットワーク１３０２（ＬＡＮのような小規模ネットワークや、インターネットのような広域ネットワーク）を介して接続される端末１３０４-1〜１３０４-n（ゲーム機、携帯電話）とを含むシステムに本実施形態を適用した場合の例を示す。この場合、上記格納プログラム（格納情報）は、例えばホスト装置１３００が制御可能な磁気ディスク装置、磁気テープ装置、メモリ等の情報記憶媒体１３０６に格納されている。端末１３０４-1〜１３０４-nが、スタンドアロンでゲーム画像、ゲーム音を生成できるものである場合には、ホスト装置１３００からは、ゲーム画像、ゲーム音を生成するためのゲームプログラム等が端末１３０４-1〜１３０４-nに配送される。一方、スタンドアロンで生成できない場合には、ホスト装置１３００がゲーム画像、ゲーム音を生成し、これを端末１３０４-1〜１３０４-nに伝送し端末において出力することになる。
【０１４７】
なお、図１９（Ｃ）の構成の場合に、本発明の各手段を、ホスト装置（サーバー）と端末とで分散して実現するようにしてもよい。また、本発明の各手段を実現するための上記格納プログラム（格納情報）を、ホスト装置（サーバー）の情報記憶媒体と端末の情報記憶媒体に分散して格納するようにしてもよい。
【０１４８】
またネットワークに接続する端末は、家庭用ゲームシステムであってもよいし業務用ゲームシステムであってもよい。そして、業務用ゲームシステムをネットワークに接続する場合には、業務用ゲームシステムとの間で情報のやり取りが可能であると共に家庭用ゲームシステムとの間でも情報のやり取りが可能なセーブ用情報記憶装置（メモリカード、携帯型ゲーム装置）を用いることが望ましい。
【０１４９】
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。
【０１５０】
例えば、移動オブジェクトの陰面消去は、図１０〜図１６（Ｂ）で説明した手法により実現することが特に望ましいが、本発明における陰面消去手法はこれに限定されるものではない。
【０１５１】
また、半透明情報を変化させる手法も、図５、図６、図８、図９で説明した手法が特に望ましいが、これに限定されない。例えば、第１の座標軸での位置座標と第２の座標軸での位置座標の両方に基づいて半透明情報を変化させてもよい。また、実表示領域の位置座標が第２の値になった時にオブジェクトを完全には透明にせずに、ほぼ透明にするようにしてもよい。
【０１５２】
また、本発明により変化させる半透明情報はα値（半透明度、透明度、不透明度）に限定されない。例えば、ブリンク表示やメッシュ表示を制御する情報を半透明情報として変化させてもよい。即ち、移動オブジェクトと木などのオブジェクトが重なり合った場合に、オブジェクトをブリンク表示させたりメッシュ表示させて透過させてもよい。
【０１５３】
また、移動オブジェクトと木などのオブジェクトとが重なり合った場合などに、オブジェクトの一部の半透明情報を変化させてもよい。この場合には、オブジェクトを複数のパーツで構成し、パーツ毎に半透明情報を変化させればよい。
【０１５４】
また本実施形態では移動オブジェクトが２次元のオブジェクトである場合について説明したが、移動オブジェクトは３次元のオブジェクトであってもよい。この場合には、例えば、背景となるワールドマップ（実写画像、ＣＧ画像）を移動フィールドとして、３次元の移動オブジェクト（ポリゴンなどのプリミティブ面で構成されたオブジェクト）が移動することになる。
【０１５５】
また、本発明のうち従属請求項に係る発明においては、従属先の請求項の構成要件の一部を省略する構成とすることもできる。また、本発明の１の独立請求項に係る発明の要部を、他の独立請求項に従属させることもできる。
【０１５６】
また、本発明は種々のゲーム（格闘ゲーム、シューティングゲーム、ロボット対戦ゲーム、スポーツゲーム、競争ゲーム、ロールプレイングゲーム、音楽演奏ゲーム、ダンスゲーム等）に適用できる。
【０１５７】
また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード等の種々のゲームシステム（画像生成システム）に適用できる。
【図面の簡単な説明】
【図１】本実施形態のゲームシステムの機能ブロック図の例である。
【図２】本実施形態の原理について説明するための図である。
【図３】図３（Ａ）、（Ｂ）、（Ｃ）は、本実施形態により生成されるゲーム画像の例である。
【図４】図４（Ａ）、（Ｂ）は、本実施形態により生成されるゲーム画像の例である。
【図５】実表示領域のＹ座標軸での位置座標に応じてオブジェクトの半透明情報を変化させる手法について説明するための図である。
【図６】実表示領域のＸ座標軸での位置座標を変化させる場合について説明するための図である。
【図７】図７（Ａ）、（Ｂ）、（Ｃ）は、本実施形態により生成されるゲーム画像の例である。
【図８】オブジェクト毎に半透明情報の変化区間を設定する手法について説明するための図である。
【図９】オブジェクト毎に半透明情報の変化区間を設定する手法について説明するための図である。
【図１０】ワールドマップを移動フィールドとして移動する移動オブジェクトの陰面消去手法について説明するための図である。
【図１１】オブジェクトの奥行き値と移動オブジェクトの奥行き値に基づいて陰面消去を行う手法について説明するための図である。
【図１２】オブジェクトの奥行き値と移動オブジェクトの奥行き値に基づいて陰面消去を行う手法について説明するための図である。
【図１３】各オブジェクトの下側境界線の設定手法について説明するための図である。
【図１４】図１４（Ａ）、（Ｂ）は、オブジェクトの下側境界線を延長する手法及び延長された下側境界線に基づきワールドマップを複数の領域に分割する手法について説明するための図である。
【図１５】移動オブジェクトの位置とオブジェクトの下側境界線に基づき移動オブジェクトの奥行き値を求める手法について説明するための図である。
【図１６】図１６（Ａ）、（Ｂ）は、オブジェクトの下側境界線を所与の距離だけ延長する手法について説明するための図である。
【図１７】本実施形態の処理の詳細例について示すフローチャートである。
【図１８】本実施形態を実現できるハードウェアの構成の一例を示す図である。
【図１９】図１９（Ａ）、（Ｂ）、（Ｃ）は、本実施形態が適用される種々の形態のシステムの例を示す図である。
【符号の説明】
ＷＭ    ワールドマップ
ＲＤＡ  実表示領域
ＰＤ    実表示領域の位置
ＯＢ    オブジェクト（木）
ＭＯＢ  移動オブジェクト（キャラクタ）
１００  処理部
１１０  スクロール処理部
１２０  半透明情報変化部
１３０  テクスチャマッピング部
１３２  陰面消去部
１３４  α合成部
１６０  操作部
１７０  記憶部
１７２  主記憶部
１７４  描画バッファ
１７６  テクスチャ記憶部
１７８  ＬＵＴ記憶部
１７９  Ｚバッファ
１８０  情報記憶媒体
１９０  表示部
１９２  音出力部
１９４  携帯型情報記憶装置
１９６  通信部
【図１】
0004412692.tif 000002
【図２】
0004412692.tif 000003
【図３】
0004412692.tif 000004
【図４】
0004412692.tif 000005
【図５】
0004412692.tif 000006
【図６】
0004412692.tif 000007
【図７】
0004412692.tif 000008
【図８】
0004412692.tif 000009
【図９】
0004412692.tif 000010
【図１０】
0004412692.tif 000011
【図１１】
0004412692.tif 000012
【図１２】
0004412692.tif 000013
【図１３】
0004412692.tif 000014
【図１４】
0004412692.tif 000015
【図１５】
0004412692.tif 000016
【図１６】
0004412692.tif 000017
【図１７】
0004412692.tif 000018
【図１８】
0004412692.tif 000019
【図１９】
0004412692.tif 000020