JP4412692B2 - ゲームシステム及び情報記憶媒体 - Google Patents
ゲームシステム及び情報記憶媒体 Download PDFInfo
- Publication number
- JP4412692B2 JP4412692B2 JP2000284986A JP2000284986A JP4412692B2 JP 4412692 B2 JP4412692 B2 JP 4412692B2 JP 2000284986 A JP2000284986 A JP 2000284986A JP 2000284986 A JP2000284986 A JP 2000284986A JP 4412692 B2 JP4412692 B2 JP 4412692B2
- Authority
- JP
- Japan
- Prior art keywords
- moving object
- display area
- information
- moving
- depth value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Images
Landscapes
- Processing Or Creating Images (AREA)
- Image Generation (AREA)
Description
【発明の属する技術分野】
本発明は、ゲームシステム及び情報記憶媒体に関する。
【0002】
【背景技術及び発明が解決しようとする課題】
従来より、仮想的な3次元空間であるオブジェクト空間内の所与の視点から見える画像を生成するゲームシステムが知られており、いわゆる仮想現実を体験できるものとして人気が高い。ロールプレイングゲーム(RPG)を楽しむことができるゲームシステムを例にとれば、プレーヤは、自身の分身であるキャラクタ(オブジェクト)を操作してマップ上で移動させ、敵キャラクタと対戦したり、他のキャラクタと対話したり、様々な町を訪れたりすることでゲームを楽しむ。
【0003】
このようなゲームシステムでは、プレーヤが操作する移動オブジェクト(キャラクタ)が、マップ上に配置される木などのオブジェクトに隠れて見えなくなってしまうという問題が生じる。
【0004】
そして、このような問題を解決するものとして、例えば特開平9−50541号公報に開示される従来技術が知られている。この従来技術では、プレーヤの視点と移動オブジェクトとの間に障害物(遮蔽物)となるオブジェクトが存在するか否かを判定し、存在すると判定した場合には、そのオブジェクトを透過状態にする処理を行う。このようにすることで、そのオブジェクトが障害物となって移動オブジェクトが隠れて見えなくなってしまうという上記問題を解決できる。
【0005】
しかしながら、この従来技術では、プレーヤの視点と移動オブジェクトとの間に障害物となるオブジェクトが存在するか否かを判定する処理が必要になるため、処理負荷が非常に重くなるという課題がある。
【0006】
また、この従来技術では、一定の条件の下では、視点と移動オブジェクトとの間に入り込んだオブジェクトが交互に透過状態になったり非透過状態になったりする。このため、生成される画像がちらついてしまい見苦しいものになるという課題がある。
【0007】
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、移動オブジェクトが他のオブジェクトに隠れてプレーヤの視点から見えなくなる問題等を少ない処理負担で解決できるゲームシステム及び情報記憶媒体を提供することにある。
【0008】
【課題を解決するための手段】
上記課題を解決するために、本発明は、画像生成を行うゲームシステムであって、ワールドマップ上で実表示領域を移動させる手段と、ワールドマップ上での前記実表示領域の位置座標に応じて、前記実表示領域に存在する少なくとも1つのオブジェクトの半透明情報を変化させる手段と、実表示領域でのスクロール画像を生成する手段とを含むことを特徴とする。また本発明に係る情報記憶媒体は、コンピュータにより使用可能な情報記憶媒体であって、上記手段をコンピュータに実現させるためのプログラムを含むことを特徴とする。また本発明に係るプログラムは、コンピュータにより使用可能なプログラム(情報記憶媒体又は搬送波に具現化されるプログラム)であって、上記手段をコンピュータに実現させるためのモジュールを含むことを特徴とする。
【0009】
本発明によれば、ワールドマップ上で実表示領域を移動させながら実表示領域でのスクロール画像が生成される。そして本発明では、実表示領域の位置座標(例えば代表点の位置座標)に応じて、実表示領域内のオブジェクトの半透明情報が変化する。従って、実表示領域の位置に応じた最適な半透明情報をオブジェクトに設定することが可能となり、例えば、移動オブジェクトが他のオブジェクトに隠れてプレーヤの視点から見えなくなる問題等を少ない処理負担で解決できるようになる。
【0010】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、前記実表示領域が、移動オブジェクトの移動に伴いワールドマップ上で移動し、前記実表示領域に存在するオブジェクトの奥側に移動オブジェクトが隠れた場合にも移動オブジェクトが見えるように、オブジェクトの半透明情報を変化させることを特徴とする。このようにすれば、移動オブジェクトが移動し、実表示領域内のオブジェクトの奥側に移動オブジェクトが隠れた場合に、移動オブジェクトの移動に伴い移動する実表示領域の位置座標に基づいてオブジェクトの半透明情報を変化させ、移動オブジェクトがオブジェクトを透過してプレーヤの視点から見えるようにすることができる。
【0011】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、ワールドマップの第1の座標軸方向でのオブジェクトの長さよりも第2の座標軸方向でのオブジェクトの長さの方が長い場合には、第2の座標軸での前記実表示領域の位置座標に応じて、オブジェクトの半透明情報を変化させることを特徴とする。このようにすれば、第2の座標軸の位置座標を用いるだけでオブジェクトの半透明情報を変化させることができるようになるため、処理の簡素化を図れる。また、半透明情報の変化区間を設定する第1、第2の値の設定作業も容易化できる。
【0012】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、前記実表示領域の位置座標が第1の値と第2の値の間にあることを条件に、オブジェクトの半透明情報を変化させることを特徴とする。このようにすれば、ワールドマップ上でのオブジェクトの配置位置に応じた最適な半透明情報をオブジェクトに設定できるようになる。
【0013】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、前記第1、第2の値が各オブジェクト毎に設定されていることを特徴とする。このようにすれば、各オブジェクトの第1、第2の値を各オブジェクトに最適な値になるように微妙に調整できるようになり、ワールドマップのデザイン作業等を容易化できる。
【0014】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、移動オブジェクトの第2の奥行き値が所与のルーチンにより求められ、求められた移動オブジェクトの第2の奥行き値と、実表示領域に存在するオブジェクトの第1の奥行き値とに基づいて、移動オブジェクトの陰面消去が行われることを特徴とする。
【0015】
本発明によれば、移動オブジェクトの第2の奥行き値(擬似的な奥行き値、描画プライオリティ)が、所与の処理ルーチンに基づき求められる。そして、この求められた第2の奥行き値と、実表示領域(ワールドマップ)上のオブジェクトの第1の奥行き値(擬似的な奥行き値、描画プライオリティ値)とに基づき、移動オブジェクトの陰面消去(奥行きソート法による陰面消去、奥行き比較法による陰面消去等)が行われる。これにより、実表示領域に配置されるオブジェクト(2次元オブジェクト)の間に、移動オブジェクトを割り込ませることが可能になり、オブジェクトの描画プライオリティの問題を解決できる。即ち、移動オブジェクトの一部だけが表示され、他の部分が他のオブジェクトに隠れて非表示になるような画像を生成できるようになる。
【0016】
なお、移動オブジェクトは2次元のオブジェクトであることが特に望ましいが、3次元のオブジェクトであってもよい。
【0017】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、移動オブジェクトの位置と実表示領域に存在するオブジェクトの下側境界線とに基づいて、移動オブジェクトの第2の奥行き値が求められることを特徴とする。このようにすれば、移動オブジェクトと他のオブジェクトとの位置関係に応じた最適な第2の奥行き値を、簡素で負荷の少ない処理で求めることができるようになる。
【0018】
なお、移動オブジェクトの第2の奥行き値を求める際には、移動オブジェクトの方向や移動履歴などを考慮してもよい。
【0019】
また、移動オブジェクトの位置は、移動オブジェクトの最下部に設定された代表点の位置であることが望ましい。移動オブジェクトの最下部に設定された代表点は、移動オブジェクトの中で視点から見て最も手前側にある点であると考えられる。従って、この最下部の代表点の位置に基づき、移動オブジェクトの第2の奥行き値を求めるようにすれば、移動オブジェクトの最適な第2の奥行き値を少ない処理負担で求めることができるようになる。
【0020】
また、移動オブジェクトの第2の奥行き値を求める際には、オブジェクトの下側境界線を所与の距離だけ延長した線を用いることが望ましい。このようにすれば、移動オブジェクトがオブジェクトの左又は右から移動してきた場合などに、移動オブジェクトを適正に陰面消去できるようになる。
【0021】
また、この場合の所与の距離は、移動オブジェクトの大きさに基づき特定される距離であることが望ましい。このようにすれば、種々の大きさ(幅)の移動オブジェクトに対する適正な陰面消去が可能になる。
【0022】
【発明の実施の形態】
以下、本発明の好適な実施形態について図面を用いて説明する。
【0023】
1.構成
図1に、本実施形態のゲームシステム(画像生成システム)の機能ブロック図の一例を示す。なお同図において本実施形態は、少なくとも処理部100を含めばよく(或いは処理部100と記憶部170を含めばよく)、それ以外のブロックについては任意の構成要素とすることができる。
【0024】
操作部160は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、マイク、或いは筺体などのハードウェアにより実現できる。
【0025】
記憶部170は、処理部100や通信部196などのワーク領域となるもので、その機能はRAMなどのハードウェアにより実現できる。
【0026】
情報記憶媒体180(コンピュータにより使用可能な記憶媒体)は、プログラムやデータなどの情報を格納するものであり、その機能は、光ディスク(CD、DVD)、光磁気ディスク(MO)、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ(ROM)などのハードウェアにより実現できる。処理部100は、この情報記憶媒体180に格納される情報に基づいて本発明(本実施形態)の種々の処理を行う。即ち情報記憶媒体180には、本発明(本実施形態)の手段(特に処理部100に含まれるブロック)をコンピュータに実現(実行、機能)させるためのプログラム等が格納され、このプログラムは、1又は複数のモジュール(オブジェクト指向におけるオブジェクトも含む)を含む。
【0027】
なお、情報記憶媒体180に格納される情報の一部又は全部は、システムへの電源投入時等に記憶部170に転送されることになる。また情報記憶媒体180には、本発明の処理を行うためのプログラム、画像データ、音データ、表示物の形状データ、本発明の処理を指示するための情報、或いはその指示に従って処理を行うための情報などを含ませることができる。
【0028】
表示部190は、本実施形態により生成された画像を出力するものであり、その機能は、CRT、LCD、或いはHMD(ヘッドマウントディスプレイ)などのハードウェアにより実現できる。
【0029】
音出力部192は、本実施形態により生成された音を出力するものであり、その機能は、スピーカなどのハードウェアにより実現できる。
【0030】
携帯型情報記憶装置194は、プレーヤの個人データやゲームのセーブデータなどが記憶されるものであり、この携帯型情報記憶装置194としては、メモリカードや携帯型ゲーム装置などを考えることができる。
【0031】
通信部196は、外部(例えばホスト装置や他のゲームシステム)との間で通信を行うための各種の制御を行うものであり、その機能は、各種プロセッサ、或いは通信用ASICなどのハードウェアや、プログラムなどにより実現できる。
【0032】
なお本発明(本実施形態)の各手段を実現するためのプログラム(データ)は、ホスト装置(サーバー)が有する情報記憶媒体からネットワーク及び通信部196を介して情報記憶媒体180に配信するようにしてもよい。このようなホスト装置(サーバー)の情報記憶媒体の使用も本発明の範囲内に含まれる。
【0033】
処理部100(プロセッサ)は、操作部160からの操作データやプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの各種の処理を行う。この場合、処理部100は、記憶部170内の主記憶部172をワーク領域として使用して、各種の処理を行う。
【0034】
ここで、処理部100が行うゲーム処理としては、コイン(代価)の受け付け処理、各種モードの設定処理、ゲームの進行処理、選択画面の設定処理、オブジェクト(1又は複数のプリミティブ面)の位置や回転角度(X、Y又はZ軸回り回転角度)を求める処理、オブジェクトを動作させる処理(モーション処理)、視点の位置(仮想カメラの位置)や視線角度(仮想カメラの回転角度)を求める処理、マップオブジェクトなどのオブジェクトをオブジェクト空間へ配置する処理、ヒットチェック処理、ゲーム結果(成果、成績)を演算する処理、複数のプレーヤが共通のゲーム空間でプレイするための処理、或いはゲームオーバー処理などを考えることができる。
【0035】
また、処理部100は、上記のゲーム処理結果に基づいて各種の画像処理を行い、ゲーム画像を生成し、表示部190に出力する。例えば、いわゆる3次元のゲーム画像を生成する場合には、まず、座標変換、クリッピング処理、透視変換、或いは光源計算等のジオメトリ処理が行われ、その処理結果に基づいて、描画データ(プリミティブ面の構成点(頂点)に付与される位置座標、テクスチャ座標、色(輝度)データ、法線ベクトル或いはα値等)が作成される。そして、この描画データ(プリミティブ面データ)に基づいて、ジオメトリ処理後のオブジェクト(1又は複数プリミティブ面)の画像が、描画バッファ174(フレームバッファ、ワークバッファ等のピクセル単位で画像情報を記憶できるバッファ)に描画される。これにより、オブジェクト空間内において所与の視点(仮想カメラ)から見える画像が生成されるようになる。
【0036】
更に、処理部100は、上記のゲーム処理結果に基づいて各種の音処理を行い、BGM、効果音、又は音声などのゲーム音を生成し、音出力部192に出力する。
【0037】
なお、処理部100の機能は、より好適には、ハードウェア(CPU、DSP等のプロセッサ又はゲートアレイ等のASIC)とプログラム(ゲームプログラム又はファームウェア等)との組み合わせにより実現される。但し、処理部100の機能の全てを、ハードウェアにより実現してもよいし、その全てをプログラムにより実現してもよい。
【0038】
処理部100は、スクロール処理部110、半透明情報変化部120、テクスチャマッピング部130、陰面消去部132、α合成部134を含む。
【0039】
ここで、スクロール処理部110は、ワールドマップ上で実表示領域を移動させる処理を行う。ワールドマップは、例えば、プレーヤが操作するキャラクタ(登場人物)などの移動オブジェクトの移動フィールドとなるものであり、背景などを表現するためのオブジェクト(例えば、木、建物、壁又は道等)が配置される。
【0040】
そして、表示部190には、このワールドマップ上の実表示領域でのスクロール画像が表示される。即ち、プレーヤが操作する移動オブジェクト(キャラクタ又は乗り物等)が移動すると、それに伴い実表示領域がワールドマップ上で移動する。具体的には、例えば、移動オブジェクトが実表示領域の中に入るように実表示領域が移動する。そして、移動オブジェクトや実表示領域に配置されるオブジェクトから構成されるスクロール画像が処理部100により生成され、表示部190に表示される。
【0041】
なお、ゲームステージの変更などの所与のイベントの発生に伴い、ワールドマップは切り替えられる。例えば、移動オブジェクトが森の中を移動するゲームステージの場合には、森を表すワールドマップが使用され、このワールドマップ上で移動オブジェクトが移動する。一方、移動オブジェクトが洞窟の中を移動するゲームステージでは、洞窟を表すワールドマップが使用され、このワールドマップ上で移動オブジェクトが移動する。
【0042】
また、実表示領域は移動オブジェクトの移動に完全に連動させて移動させる必要は無く、例えば、移動オブジェクトの移動に遅れて実表示領域を移動させたり、移動オブジェクトが所与の距離だけ所与の方向に移動したことを条件に実表示領域を移動させることが望ましい。
【0043】
半透明情報変化部120は、ワールドマップ上での実表示領域の位置座標(例えば、X、Y座標の少なくとも一方)に応じて、実表示領域に存在する木などのオブジェクトの半透明情報(α値等)を変化させる処理を行う。
【0044】
より具体的には、実表示領域に存在するオブジェクトの奥側に移動オブジェクトが隠れた場合にも移動オブジェクトがプレーヤの視点から見えるように、オブジェクトの半透明情報を変化させる。このようにすることで、移動オブジェクトが木などのオブジェクトに隠れて見えなくなってしまうという問題を解決できる。
【0045】
テクスチャマッピング部130は、テクスチャ記憶部176に記憶されるテクスチャをオブジェクトにマッピングするための処理を行う。この場合、テクスチャマッピング部130は、LUT記憶部178に記憶されるインデックスカラー・テクスチャマッピング用のLUT(ルックアップテーブル)を用いたテクスチャマッピングを行うことができる。
【0046】
陰面消去部132は、例えば、以下のような手法により陰面消去処理を実現している。
【0047】
即ち、移動オブジェクトの第2の奥行き値を所与のルーチン(アルゴリズム)により求める。そして、求められた移動オブジェクトの第2の奥行き値(移動オブジェクトを他のオブジェクト間に割り込ませるための奥行き値)と、他のオブジェクト(2次元オブジェクト、立体的に見えるように表現された表示物の2次元画像が描かれたプリミティブ面)の第1の奥行き値とに基づいて、移動オブジェクトの陰面消去を行う。
【0048】
この場合、移動オブジェクトの第2の奥行き値は、例えば、移動オブジェクトの位置(移動オブジェクトの最下部に設定された代表点の位置)と、他のオブジェクトの下側境界線(下側境界線を所与の距離だけ延長した延長境界線)とに基づいて求めることが望ましい。また、移動オブジェクトの方向や移動履歴(移動経路、移動順序)を考慮して第2の奥行き値を求めてもよい。
【0049】
なお、陰面消去部132が行う陰面消去は、例えば、奥行き値(描画プライオリティ値)に応じてオブジェクト(2次元オブジェクト、プリミティブ面)をソーティングし、視点から見て奥側から順にオブジェクトを描画する奥行きソート法(Zソート法)により実現してもよいし、ピクセル毎に奥行き値を比較し、視点から見て手前側のピクセルを描画する奥行き比較法(例えばZバッファ179を用いたZバッファ法等)により実現してもよい。
【0050】
α合成部134は、α値を用いたα合成処理(αブレンディング、α加算又はα減算等)を行う。なお、α値(A値)は、各ピクセルに関連づけられて記憶されるデータであり、例えば色データ(RGB)以外のプラスアルファのデータである。α値は、半透明情報(透明情報又は不透明情報と等価)、マスク情報、バンプ情報などとして使用できる。
【0051】
なお、本実施形態のゲームシステムは、1人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、このようなシングルプレーヤモードのみならず、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。
【0052】
また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、1つの端末を用いて生成してもよいし、ネットワーク(伝送ライン、通信回線)などで接続された複数の端末(ゲーム機、携帯電話)を用いて生成してもよい。
【0053】
2.本実施形態の特徴
次に本実施形態の特徴について図面を用いて説明する。
【0054】
2.1 実表示領域の移動に伴うオブジェクトの半透明情報変化
本実施形態では図2のA1、A2に示すように、移動オブジェクトMOB(キャラクタ)が移動すると、それに伴い実表示領域RDAも移動(スクロール)する。そして、移動オブジェクトMOBやこの実表示領域RDAに存在するオブジェクトOB(木)などから構成されるスクロール画像が、プレーヤに対して表示される。
【0055】
そして更に本実施形態では、図2のA1、A2に示すように、ワールドマップWM上での実表示領域RDAの例えば左上の位置PD(広義には代表点の位置)の座標に応じて、RDA内のオブジェクトOB(木)の半透明情報(例えばα値)が変化する。
【0056】
より具体的には、オブジェクトOBの奥側(例えば奥行き値が奥側)に移動オブジェクトMOBが移動して隠れた場合にも、移動オブジェクトMOBの画像がプレーヤから見えるように、オブジェクトOBを半透明状態にする。
【0057】
このようにすることで、移動オブジェクトMOBを操作するプレーヤは、MOBがオブジェクトOBの陰に隠れた場合にも、MOBの存在を見失わないようになる。従って、プレーヤが移動オブジェクトMOBを見失って混乱してしまうというような事態を防止でき、プレーヤがストレスを感じずに移動オブジェクトMOBを操作できる快適なゲーム操作環境を提供できる。
【0058】
また、例えば特開平9−50541号公報に開示される従来技術では、プレーヤの視点と移動オブジェクトとの間に障害物となるオブジェクトが存在するか否かを判定する処理が必要になるため、処理負荷が非常に重くなるという問題があった。
【0059】
これに対して本実施形態では、このような判定処理を必要とすることなく、例えば実表示領域RDAの位置PDの座標をモニタするだけで、オブジェクトOBの半透明情報を制御できる。従って、上記判定処理が必要な上記従来技術に比べて、処理負荷が非常に軽くできるという利点がある。
【0060】
また、上記従来技術には、視点と移動オブジェクトとの間に入り込んだオブジェクトが交互に透過状態になったり非透過状態になったりして、画像がちらついてしまうという問題がある。
【0061】
これに対して本実施形態では、実表示領域RDAの位置PDの座標に基づいて、オブジェクトOBの半透明情報をスムーズ(リニア)に変化させることができる。従って、上記従来技術で生じていた画像のちらつきの問題を効果的に解消できる。
【0062】
図3(A)、(B)、(C)、図4(A)、(B)に、本実施形態により生成されたゲーム画像の例を示す。
【0063】
図3(A)〜図4(B)に示すように移動オブジェクトMOB(キャラクタ)が移動すると、それに伴い実表示領域も移動し、表示部に表示されるゲーム画像がスクロールする。
【0064】
そして、例えば図3(C)、図4(A)、(B)では、移動オブジェクトMOBがオブジェクトOBの奥側に移動しているが、オブジェクトOBが不透明状態から半透明状態に変化している。従って、プレーヤは移動オブジェクトMOBを見失わなくて済むようになる。また、オブジェクトOBの半透明度も徐々に変化しているため、プレーヤが感じる不自然さも軽減できる。
【0065】
なお、本実施形態では、ワールドマップWMは複数のブロックに分割されている。そして、実表示領域RDAを含みRDAよりも広い領域(例えば1.5〜3倍程度の広さの領域)である拡張表示領域(キャッシュ領域)が設定され、この拡張表示領域を構成するブロックの圧縮画像データが主記憶部上に展開(伸張)される。そして、これらの展開されたブロックの画像データのうち、実表示領域RDAの画像表示に必要なブロックの画像データが、フレームバッファ(描画バッファ)に転送されて描画されることになる。これにより、ワールドマップWM上の実表示領域RDAでの画像がゲーム画像として表示部に表示されるようになる。
【0066】
2.2 Y座標の変化による半透明情報の変化
さて、本実施形態では図3(A)〜図4(B)に示すように、ワールドマップを上空から見下ろしたように見える鳥瞰図のようなゲーム画像が生成される。そして、このようなゲーム画像では、例えば木のように、高さ(縦)方向であるY座標軸方向での長さの方が幅(横)方向であるX座標軸方向での長さよりも長くなるオブジェクトが多く存在する。
【0067】
そして、このようなY座標軸方向に長いオブジェクトの陰に移動オブジェクト(キャラクタ)が隠れた場合には、Y座標軸方向に移動オブジェクトを長い距離だけ移動させないと、移動オブジェクトが隠れて見えなくなる状況からなかなか抜け出せなくなる。
【0068】
そこで本実施形態では、この点に着目し、X座標軸(広義には第1の座標軸)方向よりもY座標軸(広義には第2の座標軸)方向での長さが長いオブジェクトについては、実表示領域のY座標に応じてそのオブジェクトの半透明情報(α値)を変化させるようにしている。
【0069】
即ち図5に示すようにオブジェクトOB(木)は、表示時におけるその長さがX座標軸方向よりもY座標軸方向に長いオブジェクトである。このようなオブジェクトOBが存在する実表示領域RDAがワールドマップWM上で移動した場合には、図5に示すように、実表示領域RDAの位置PDのY座標YDに基づいて、オブジェクトOBの半透明情報を変化させる。逆に言えば、図6に示すように、実表示領域RDAの位置PDのX座標XDが変化した場合には、オブジェクトOBの半透明情報を変化させない。
【0070】
例えば図7(A)、(B)、(C)は、移動オブジェクトMOBがX座標軸方向に移動することで図6のように実表示領域RDAがX座標軸方向に移動した場合に、生成されたゲーム画像の例である。
【0071】
この場合には図7(A)、(B)、(C)に示すように、オブジェクトOBは半透明状態に変化せず不透明状態のままとなる。従って、図7(B)のように移動オブジェクトMOBがオブジェクトOBの奥に隠れて見えなくなる事態が生じる。
【0072】
しかしながら、オブジェクトOBのX座標軸方向での長さ(幅)は短い。従って、図7(C)に示すように、X座標軸方向に移動オブジェクトMOBが少しだけ移動するだけで、MOBが直ぐに再び見えるようになる。従って、オブジェクトOBの半透明情報を変化させなくても、プレーヤが移動オブジェクトMOBを見失ってゲーム操作に混乱する可能性が少ない。
【0073】
一方、前述の図3(A)〜図4(B)は、移動オブジェクトMOBがY座標軸方向に移動することで図5のように実表示領域RDAがY座標軸方向に移動した場合に、生成されたゲーム画像である。
【0074】
このようにY座標軸方向に長いオブジェクトOBの陰に移動オブジェクトMOBが隠れた場合に、オブジェクトOBが不透明状態から半透明状態に変化しないと、移動オブジェクトMOBが隠れて見えなくなる状況からなかなか抜け出せなくなる。
【0075】
本実施形態では、このような場合に、実表示領域RDAの位置PDのY座標に応じて、オブジェクトOBの半透明情報が変化する。従って、図3(A)〜図4(B)から明らかなように、移動オブジェクトMOBがオブジェクトOBの高さ方向に移動した場合に、移動オブジェクトMOBの画像が、半透明状態のオブジェクトOBの画像を透過してプレーヤの視点から見えるようになる。従って、プレーヤが移動オブジェクトMOBを見失ってゲーム操作に混乱してしまう事態を効果的に防止できる。
【0076】
また本実施形態によれば、実表示領域RDAの位置PDのY座標だけをモニタしてオブジェクトOBの半透明情報を制御すれば済むため、処理の簡素化やパラメータ設定処理(後述する第1、第2の値の設定処理)の簡素化を図れるようになる。
【0077】
なお、X座標軸方向に長いオブジェクトの場合には、実表示領域の位置のX座標に応じて、そのオブジェクトの半透明情報を変化させるようにしてもよい。また、処理の簡素化や画像の自然さよりも、プレーヤのゲーム操作の混乱の救済を重視する場合には、実表示領域の位置のX、Y座標の両方に応じてオブジェクトの半透明情報を変化させてもよい。
【0078】
2.3 半透明情報の変化区間の設定
本実施形態では、半透明情報が変化する区間(第1の値と第2の値の間の区間)をオブジェクト毎に設定している。
【0079】
例えば図8に示すように、オブジェクトOBAについては、実表示領域RDAの位置PDのY座標YDがYD1A(第1の値)とYD2A(第2の値)の間にあることを条件に、その半透明情報(α値)が変化する。即ちY座標YDがYD1AになるとオブジェクトOBAの半透明情報の変化が開始し(OBAが半透明になり始める)、YDがYD2AになるとOBAの半透明情報の変化が終了する(OBAが完全に透明になる)。
【0080】
一方、図9に示すように、オブジェクトOBBについては、実表示領域RDAの位置PDのY座標YDがYD1B(第1の値)とYD2B(第2の値)の間にあることを条件に、その半透明情報が変化する。即ち、Y座標YDがYD1BになるとオブジェクトOBBの半透明情報の変化が開始し(OBBが半透明になり始める)、YDがYD2BになるとOBBの半透明情報の変化が終了する(OBBが完全に透明になる)。
【0081】
このように半透明情報の変化区間(第1の値と第2の値の間の区間)をオブジェクト毎に設定することで、ワールドマップWM上での各オブジェクトの配置位置に応じた適切な半透明制御を実現できるようになる。
【0082】
例えば、ワールドマップのデザインの際に、移動オブジェクトの一部がオブジェクトに隠れ始める時の実表示領域のY座標を得る。そして、この時のY座標を、半透明情報の変化を開始するY座標(半透明になり始める時のY座標)であるYD1(第1の値)に設定するようにする。
【0083】
また、ワールドマップのデザインの際に、移動オブジェクトの全てがオブジェクトに隠れてしまう時の実表示領域のY座標を得る。そして、この時のY座標を、半透明情報の変化を終了するY座標(完全に透明になる時のY座標)であるYD2(第2の値)に設定するようにする。
【0084】
このように本実施形態によれば、各オブジェクトのYD1、YD2(第1、第2の値)を各オブジェクトに最適な値になるように、ワールドマップのデザイン時に微妙に調整できる。そして、このような微調整を行うことで、移動オブジェクトが各オブジェクトの奥側に隠れた時に各オブジェクトが適切に半透明になるようなゲーム画像を生成できるようになり、プレーヤが不自然さを感じないゲーム画像を生成できるようになる。
【0085】
2.4 陰面消去手法
本実施形態では以下に説明する手法により移動オブジェクトの陰面消去を実現している。
【0086】
本実施形態では図10に示すように、2次元のオブジェクトOB1〜OB5(立体的に見えるように表現された表示物の2次元画像がテクスチャマッピングされたプリミティブ面)や地面などで構成される2次元画像のワールドマップを移動フィールドとして、移動オブジェクトMOB(キャラクタ)が移動する。
【0087】
そして、このように2次元画像のワールドマップ上を移動オブジェクトMOBが移動する場合には、移動オブジェクトMOBと他の2次元オブジェクトとの間の描画プライオリティに矛盾が生じないようにMOBを描画する必要がある。
【0088】
例えば図10のD1に示すように移動オブジェクトMOBが移動した場合には、オブジェクトOB1の手前側にMOBが位置しているように見えるようにMOBを描画する必要がある。またD2に示すようにMOBが移動した場合には、オブジェクトOB1とOB2の間にMOBが位置しているように見えるようにMOBを描画する必要がある。またD3に示すようにMOBが移動した場合には、オブジェクトOB3の奥側にMOBが位置しているように見えるようにMOBを描画する必要がある。
【0089】
そこで本実施形態では、移動オブジェクトMOBの奥行き値を所与のルーチンにより求め、この求められた奥行き値と他のオブジェクト(実表示領域に存在する2次元オブジェクト)の奥行き値とに基づいて、移動オブジェクトMOBの陰面消去(奥行きソート法又は奥行き比較法等による陰面消去)を行っている。
【0090】
例えば図11に示すようにオブジェクトOB1、OB2、OB3、OB4、OB5、移動オブジェクトMOBが配置されている場合を考える。そして、オブジェクトOB1、OB2、OB3、OB4、OB5の奥行き値(擬似的な奥行き値、描画プライオリティ値)を、各々、Z1_1、Z1_2、Z1_3、Z1_4、Z1_5とする。また、地面(背景)やオブジェクトの抜きの部分での奥行き値をZ1_0とする。
【0091】
この場合に本実施形態では、移動オブジェクトMOBの例えば足下(広義には最下部)に設定された代表点の位置PM(XM、YM)などに基づいて、MOBの奥行き値Z2を求める。そして、この求められた奥行き値Z2と、オブジェクトOB1〜OB5の奥行き値Z1_1〜Z1_5とに基づいて、移動オブジェクトMOBの陰面消去を行う。
【0092】
より具体的には、奥行き値Z1_1〜Z1_5、Z2に基づいて、オブジェクトOB1〜OB5、移動オブジェクトMOBをソーティング(Zソーティング)する。そして、このソーティングされた順序で、オブジェクトOB1〜OB5、移動オブジェクトMOBを描画する。即ち、視点から見て奥側から順に描画されるようにOB1〜OB5、MOBを描画する。
【0093】
例えば図12では、奥行き値がZ1_2であるオブジェクトOB2と奥行き値がZ1_1であるオブジェクトOB1の間に、奥行き値がZ2である移動オブジェクトMOBが移動しており、これらの奥行き値の間にはZ1_2>Z2>Z1_1の関係が成り立つ。
【0094】
従って、これらの奥行き値Z1_2、Z2、Z1_1に基づいてソーティング処理を行うことで、オブジェクトOB2、移動オブジェクトMOB、オブジェクトOB1の順序でこれらのオブジェクトが描画されるようになる。
【0095】
この結果、移動オブジェクトMOBの上半身側では、MOBの画像がオブジェクトOB2の画像に対して上書き描画されるようになる。一方、移動オブジェクトMOBの下半身側では、オブジェクトOB1の画像がMOBの画像に対して上書き描画されるようになる。これにより、移動オブジェクトMOBの下半身側だけが陰面消去された適正な画像を生成できるようになり、描画プライオリティの問題を解決できる。
【0096】
以上のように本実施形態によれば、ワールドマップ(2次元画像)を移動フィールドとして移動オブジェクトを移動させ、このワールドマップ上の2次元オブジェクト間に移動オブジェクトを割り込ませることが可能になる。これにより、2次元の画像であるのにもかかわらず、あたかも奥行きがあるかのように、プレーヤを錯覚させることができる。
【0097】
しかも本実施形態では、例えば図12のオブジェクトOB1〜OB5の画像として、カメラで撮影した実写画像や、デザイナがCGにより綿密に描いた画像や、有名な画家か描いた絵などを用いることができる。従って、オブジェクトを複数のポリゴンにより立体的に構成した場合に比べて、より自然で現実味のある画像を生成できる。
【0098】
また、各オブジェクトの奥行き値に基づいてソーティングを行い、各オブジェクトの奥行き値に応じた描画順序で各オブジェクトを描画するようにすれば、オブジェクト間の適正な半透明合成処理を実現できる。
【0099】
例えば、図12のオブジェクトOB1〜OB5の奥行き値Z1_1〜Z1_5及び移動オブジェクトMOBの奥行き値Z2の間に、Z1_5>Z1_2>Z2>Z1_1>Z1_4>Z1_3の関係が成り立っていたとする。
【0100】
この場合には、まず、奥側のオブジェクトOB5(Z1_5)、OB2(Z1_2)を描画した後、移動オブジェクトMOB(Z2)を描画する。そして、その後に、オブジェクトOB1(Z1_1)、オブジェクトOB4(Z1_4)、オブジェクトOB3(Z1_3)を描画する。
【0101】
このようにすれば、例えばオブジェクトOB1が半透明表示物であった場合に、図12のZ2>Z1_1となる部分で、移動オブジェクトMOBとオブジェクトOB1との適正な半透明合成処理(αブレンディング、α加算又はα減算等)を実現できるようになる。
【0102】
なお、移動オブジェクトMOBの陰面消去は、ピクセル毎に奥行き値を比較する奥行き比較法により実現してもよい。
【0103】
この場合には、まず、移動オブジェクトMOBの位置PM(XM、YM)に基づき求められた奥行き値Z2を、MOBの全てのピクセルの奥行き値に設定する。そして、移動オブジェクトMOBの各ピクセルについて、この奥行き値Z2と、他のオブジェクトの奥行き値Z1(ワールドマップの各ピクセルに設定された奥行き値)を比較する。そして、Z1>Z2となるピクセルについては移動オブジェクトMOBの画像を上書き描画し、Z2>Z1となるピクセルについては上書き描画しないようにする。
【0104】
図12を例にとれば、移動オブジェクトMOBの上半身側のピクセルではZ1_2>Z2の関係が成り立つため、MOBの画像がオブジェクトOB2の画像に対して上書き描画される。一方、移動オブジェクトMOBの下半身側のピクセルではZ2>Z1_1の関係が成り立つため、MOBの画像は上書き描画されない。これにより、移動オブジェクトMOBの適正な陰面消去画像を得ることができ、描画プライオリティの問題を解決できる。
【0105】
次に、移動オブジェクトの奥行き値Z2を取得する手法について説明する。
【0106】
まず、本実施形態では図13に示すように、各オブジェクトOB1〜OB5の下側境界線L1〜L5(太線で示す線)を設定しておく。なお、オブジェクトOB1〜OB5は、その下側境界線L1〜L5の方向がY軸の方向に一致しないように、配置する必要がある。また、地面(背景)は、最も奥に描画される部分となっている。
【0107】
次に、図14(A)に示すように、境界線L1〜L5の各々の左端をX軸の負方向側(左側)に距離Wだけ延長し、境界線L1〜L5の各々の右端をX軸の正方向側(右側)に距離Wだけ延長することで、延長境界線L1’〜L5’を得る。なお、距離Wは、キャラクタなどの移動オブジェクトの大きさにより特定される距離であり、距離Wとしては、例えばゲームに登場する移動オブジェクトの最大幅を採用できる。
【0108】
次に、図15に示すように、移動オブジェクトMOBの位置PM(XM、YM)からY軸の正方向側(下側)、負方向側(上側)に線LMを引き、この線LMと交わる延長境界線を求める。
【0109】
例えば図15では、線LMは点PLにおいて延長境界線L3’と交わり、点PUにおいて延長境界線L4’に交わっている。そして、このような場合には、移動オブジェクトMOBは、オブジェクトOB4とOB3の間に位置すると判断する。即ち、MOBの奥行き値Z2(描画プライオリティ値)は、OB4の奥行き値Z1_4とOB3の奥行き値Z1_3の間にあると判断する。そして、Z1_4>Z2>Z1_3の関係が成り立つような値にMOBの奥行き値Z2を設定する。
【0110】
同様に、例えば、線LMが延長境界線L2’、L1’と交わった場合には、移動オブジェクトMOBはオブジェクトOB2とOB1の間に位置すると判断し、Z1_2>Z2>Z1_1の関係が成り立つような値にMOBの奥行き値Z2を設定する。
【0111】
以上のようにして移動オブジェクトMOBの奥行き値Z2を設定すれば、図10、図12で説明したような移動オブジェクトMOBの適正な陰面消去を実現できるようになる。
【0112】
なお、図14(A)で、下側境界線L1〜L5を距離Wだけ延長したのは以下の理由による。即ち図16(A)に示すような場所に移動オブジェクトMOBが位置する場合には、図16(B)に示すようにMOBの一部がオブジェクトOB1により陰面消去されて見えなくなるはずである。
【0113】
ところが、下側境界線L1を距離Wだけ延長しないと、移動オブジェクトMOBの位置PM(XM、YM)から引いた線LMは、下側境界線L1(L1’)と交わらなくなる。従って、移動オブジェクトMOBの奥行き値Z2とオブジェクトOB1の奥行き値Z1_1との間に、Z2>Z1_1の関係が成り立つことが保証されなくなる。この結果、図16(B)に示すような陰面消去が行われなくなり、移動オブジェクトMOBの画像がオブジェクトOB1の画像に上書き描画されてしまう事態が生じるおそれがある。
【0114】
本実施形態のように、下側境界線L1を距離W(移動オブジェクトの最大幅)だけ延長すれば、このような事態が生じるのが防止され、適正な陰面消去が可能になる。
【0115】
なお、移動オブジェクトの奥行き値を求める手法は、図15で説明した手法に限定されず種々の変形実施が可能である。
【0116】
例えば図14(B)に示すように、延長境界線L1’〜L5’の端点からY軸の負方向側(上側)に他の線にぶつかるまで線(点線で示す線)を延ばすことで、ワールドマップ(2次元画像)を複数の領域AR1〜AR5に分割する。
【0117】
次に、この分割された各領域AR1〜AR5(各領域のピクセル)に、延長境界線L1’〜L5’(下側境界線)との位置関係に応じた奥行き値(描画プライオリティ値)を設定する。例えば、領域AR3には、オブジェクトOB4、OB3の奥行き値Z1_4、Z1_3の間の値になる奥行き値を設定する。同様に、領域AR1には、オブジェクトOB2、OB1の奥行き値Z1_2、Z1_1の間の値になる奥行き値を設定する。
【0118】
そして、移動オブジェクトMOBの位置PM(XM、YM)が領域AR1〜AR5のうちのいずれの領域にあるかを判断し、PMが位置する領域に設定された奥行き値を、移動オブジェクトMOBの奥行き値として採用するようにする。
【0119】
以上のような手法によっても、図10、図12で説明したような移動オブジェクトMOBの適正な陰面消去を実現できる。
【0120】
3.本実施形態の処理
次に、本実施形態の処理の詳細例について、図17のフローチャートを用いて説明する。
【0121】
まず、オブジェクトOB(木)に対して、OBが完全に表示される時(α=1.0)の位置座標YD1(図8、図9のYD1A、YD1B)と、OBが完全に消える時(α=0.0)の位置座標YD2(図8、図9のYD2A、YD2B)を設定しておく(ステップS1)。
【0122】
そして、移動オブジェクトMOB(キャラクタ)の移動に応じて、実表示領域RDAの位置座標YD(図2の位置PDのY座標)を変化させる(ステップS2)。
【0123】
次に、YD<YD2か否かを判断し(ステップS3)、YD<YD2の場合には、そのオブジェクトについては描画することなく処理を終了する。YD<YD2の場合には、そのオブジェクトについては描画する必要がないからである。例えば図9のB1では、YD<YD2Aとなっているため、オブジェクトOBAについては描画することなく処理を終了する。
【0124】
ステップS3でYD<YD2ではない(YD≧YD2)と判断された場合には、YD>YD1か否かを判断する(ステップS4)。そして、YD>YD1の場合には、α=1.0(不透明)として、そのオブジェクトOBを描画する(ステップS5)。例えば図8のB2では、YD>YD1Bとなっているため、オブジェクトOBBについてはα=1.0で描画されることになる。
【0125】
ステップS4でYD>YD1ではない(YD1≧YD≧YD2)と判断された場合には、α=(YD−YD2)/(YD1−YD2)でオブジェクトOBを描画する(ステップS6)。
【0126】
即ち、図8のB3に示すようにYD=YD1Aとなった時からオブジェクトOBAのα値が1.0から徐々に小さくなる。そして、図8のB4に示すようにYD=YD2AになるとオブジェクトOBAのα値は0.0になり、OBAは完全に透明になる。
【0127】
また、図9のB5に示すようにYD=YD1Bとなった時からオブジェクトOBBのα値が1.0から徐々に小さくなる。そして、図9のB6に示すようにYD=YD2BになるとオブジェクトOBBのα値は0.0になり、OBBは完全に透明になる。
【0128】
このようにすることで本実施形態では、各オブジェクトOBA、OBBのα値(半透明情報)を、YD1A≧YD≧YD2A、YD1B≧YD≧YD2Bを変化区間として変化させている。
【0129】
4.ハードウェア構成
次に、本実施形態を実現できるハードウェアの構成の一例について図18を用いて説明する。
【0130】
メインプロセッサ900は、CD982(情報記憶媒体)に格納されたプログラム、通信インターフェース990を介して転送されたプログラム、或いはROM950(情報記憶媒体の1つ)に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などの種々の処理を実行する。
【0131】
コプロセッサ902は、メインプロセッサ900の処理を補助するものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算(ベクトル演算)を高速に実行する。例えば、オブジェクトを移動させたり動作(モーション)させるための物理シミュレーションに、マトリクス演算などの処理が必要な場合には、メインプロセッサ900上で動作するプログラムが、その処理をコプロセッサ902に指示(依頼)する。
【0132】
ジオメトリプロセッサ904は、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算(ベクトル演算)を高速に実行する。例えば、座標変換、透視変換、光源計算などの処理を行う場合には、メインプロセッサ900で動作するプログラムが、その処理をジオメトリプロセッサ904に指示する。
【0133】
データ伸張プロセッサ906は、圧縮された画像データや音データを伸張するデコード処理を行ったり、メインプロセッサ900のデコード処理をアクセレートする処理を行う。これにより、オープニング画面、インターミッション画面、エンディング画面、或いはゲーム画面などにおいて、MPEG方式等で圧縮された動画像を表示できるようになる。なお、デコード処理の対象となる画像データや音データは、ROM950、CD982に格納されたり、或いは通信インターフェース990を介して外部から転送される。
【0134】
描画プロセッサ910は、ポリゴンや曲面などのプリミティブ面で構成されるオブジェクトの描画(レンダリング)処理を高速に実行するものである。オブジェクトの描画の際には、メインプロセッサ900は、DMAコントローラ970の機能を利用して、オブジェクトデータを描画プロセッサ910に渡すと共に、必要であればテクスチャ記憶部924にテクスチャを転送する。すると、描画プロセッサ910は、これらのオブジェクトデータやテクスチャに基づいて、Zバッファなどを利用した陰面消去を行いながら、オブジェクトをフレームバッファ922に高速に描画する。また、描画プロセッサ910は、αブレンディング(半透明処理)、デプスキューイング、ミップマッピング、フォグ処理、バイリニア・フィルタリング、トライリニア・フィルタリング、アンチエリアシング、シェーディング処理なども行うことができる。そして、1フレーム分の画像がフレームバッファ922に書き込まれると、その画像はディスプレイ912に表示される。
【0135】
サウンドプロセッサ930は、多チャンネルのADPCM音源などを内蔵し、BGM、効果音、音声などの高品位のゲーム音を生成する。生成されたゲーム音は、スピーカ932から出力される。
【0136】
ゲームコントローラ942からの操作データや、メモリカード944からのセーブデータ、個人データは、シリアルインターフェース940を介してデータ転送される。
【0137】
ROM950にはシステムプログラムなどが格納される。なお、業務用ゲームシステムの場合には、ROM950が情報記憶媒体として機能し、ROM950に各種プログラムが格納されることになる。なお、ROM950の代わりにハードディスクを利用するようにしてもよい。
【0138】
RAM960は、各種プロセッサの作業領域として用いられる。
【0139】
DMAコントローラ970は、プロセッサ、メモリ(RAM、VRAM、ROM等)間でのDMA転送を制御するものである。
【0140】
CDドライブ980は、プログラム、画像データ、或いは音データなどが格納されるCD982(情報記憶媒体)を駆動し、これらのプログラム、データへのアクセスを可能にする。
【0141】
通信インターフェース990は、ネットワークを介して外部との間でデータ転送を行うためのインターフェースである。この場合に、通信インターフェース990に接続されるネットワークとしては、通信回線(アナログ電話回線、ISDN)、高速シリアルバスなどを考えることができる。そして、通信回線を利用することでインターネットを介したデータ転送が可能になる。また、高速シリアルバスを利用することで、他のゲームシステムとの間でのデータ転送が可能になる。
【0142】
なお、本発明の各手段は、その全てを、ハードウェアのみにより実現(実行)してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムのみにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。
【0143】
そして、本発明の各手段をハードウェアとプログラムの両方により実現する場合には、情報記憶媒体には、本発明の各手段をハードウェアを利用して実現するためのプログラムが格納されることになる。より具体的には、上記プログラムが、ハードウェアである各プロセッサ902、904、906、910、930等に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ902、904、906、910、930等は、その指示と渡されたデータとに基づいて、本発明の各手段を実現することになる。
【0144】
図19(A)に、本実施形態を業務用ゲームシステムに適用した場合の例を示す。プレーヤは、ディスプレイ1100上に映し出されたゲーム画像を見ながら、レバー1102、ボタン1104等を操作してゲームを楽しむ。内蔵されるシステムボード(サーキットボード)1106には、各種プロセッサ、各種メモリなどが実装される。そして、本発明の各手段を実現するためのプログラム(データ)は、システムボード1106上の情報記憶媒体であるメモリ1108に格納される。以下、このプログラムを格納プログラム(格納情報)と呼ぶ。
【0145】
図19(B)に、本実施形態を家庭用のゲームシステムに適用した場合の例を示す。プレーヤはディスプレイ1200に映し出されたゲーム画像を見ながら、ゲームコントローラ1202、1204を操作してゲームを楽しむ。この場合、上記格納プログラム(格納情報)は、本体システムに着脱自在な情報記憶媒体であるCD1206、或いはメモリカード1208、1209等に格納されている。
【0146】
図19(C)に、ホスト装置1300と、このホスト装置1300とネットワーク1302(LANのような小規模ネットワークや、インターネットのような広域ネットワーク)を介して接続される端末1304-1〜1304-n(ゲーム機、携帯電話)とを含むシステムに本実施形態を適用した場合の例を示す。この場合、上記格納プログラム(格納情報)は、例えばホスト装置1300が制御可能な磁気ディスク装置、磁気テープ装置、メモリ等の情報記憶媒体1306に格納されている。端末1304-1〜1304-nが、スタンドアロンでゲーム画像、ゲーム音を生成できるものである場合には、ホスト装置1300からは、ゲーム画像、ゲーム音を生成するためのゲームプログラム等が端末1304-1〜1304-nに配送される。一方、スタンドアロンで生成できない場合には、ホスト装置1300がゲーム画像、ゲーム音を生成し、これを端末1304-1〜1304-nに伝送し端末において出力することになる。
【0147】
なお、図19(C)の構成の場合に、本発明の各手段を、ホスト装置(サーバー)と端末とで分散して実現するようにしてもよい。また、本発明の各手段を実現するための上記格納プログラム(格納情報)を、ホスト装置(サーバー)の情報記憶媒体と端末の情報記憶媒体に分散して格納するようにしてもよい。
【0148】
またネットワークに接続する端末は、家庭用ゲームシステムであってもよいし業務用ゲームシステムであってもよい。そして、業務用ゲームシステムをネットワークに接続する場合には、業務用ゲームシステムとの間で情報のやり取りが可能であると共に家庭用ゲームシステムとの間でも情報のやり取りが可能なセーブ用情報記憶装置(メモリカード、携帯型ゲーム装置)を用いることが望ましい。
【0149】
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。
【0150】
例えば、移動オブジェクトの陰面消去は、図10〜図16(B)で説明した手法により実現することが特に望ましいが、本発明における陰面消去手法はこれに限定されるものではない。
【0151】
また、半透明情報を変化させる手法も、図5、図6、図8、図9で説明した手法が特に望ましいが、これに限定されない。例えば、第1の座標軸での位置座標と第2の座標軸での位置座標の両方に基づいて半透明情報を変化させてもよい。また、実表示領域の位置座標が第2の値になった時にオブジェクトを完全には透明にせずに、ほぼ透明にするようにしてもよい。
【0152】
また、本発明により変化させる半透明情報はα値(半透明度、透明度、不透明度)に限定されない。例えば、ブリンク表示やメッシュ表示を制御する情報を半透明情報として変化させてもよい。即ち、移動オブジェクトと木などのオブジェクトが重なり合った場合に、オブジェクトをブリンク表示させたりメッシュ表示させて透過させてもよい。
【0153】
また、移動オブジェクトと木などのオブジェクトとが重なり合った場合などに、オブジェクトの一部の半透明情報を変化させてもよい。この場合には、オブジェクトを複数のパーツで構成し、パーツ毎に半透明情報を変化させればよい。
【0154】
また本実施形態では移動オブジェクトが2次元のオブジェクトである場合について説明したが、移動オブジェクトは3次元のオブジェクトであってもよい。この場合には、例えば、背景となるワールドマップ(実写画像、CG画像)を移動フィールドとして、3次元の移動オブジェクト(ポリゴンなどのプリミティブ面で構成されたオブジェクト)が移動することになる。
【0155】
また、本発明のうち従属請求項に係る発明においては、従属先の請求項の構成要件の一部を省略する構成とすることもできる。また、本発明の1の独立請求項に係る発明の要部を、他の独立請求項に従属させることもできる。
【0156】
また、本発明は種々のゲーム(格闘ゲーム、シューティングゲーム、ロボット対戦ゲーム、スポーツゲーム、競争ゲーム、ロールプレイングゲーム、音楽演奏ゲーム、ダンスゲーム等)に適用できる。
【0157】
また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード等の種々のゲームシステム(画像生成システム)に適用できる。
【図面の簡単な説明】
【図1】本実施形態のゲームシステムの機能ブロック図の例である。
【図2】本実施形態の原理について説明するための図である。
【図3】図3(A)、(B)、(C)は、本実施形態により生成されるゲーム画像の例である。
【図4】図4(A)、(B)は、本実施形態により生成されるゲーム画像の例である。
【図5】実表示領域のY座標軸での位置座標に応じてオブジェクトの半透明情報を変化させる手法について説明するための図である。
【図6】実表示領域のX座標軸での位置座標を変化させる場合について説明するための図である。
【図7】図7(A)、(B)、(C)は、本実施形態により生成されるゲーム画像の例である。
【図8】オブジェクト毎に半透明情報の変化区間を設定する手法について説明するための図である。
【図9】オブジェクト毎に半透明情報の変化区間を設定する手法について説明するための図である。
【図10】ワールドマップを移動フィールドとして移動する移動オブジェクトの陰面消去手法について説明するための図である。
【図11】オブジェクトの奥行き値と移動オブジェクトの奥行き値に基づいて陰面消去を行う手法について説明するための図である。
【図12】オブジェクトの奥行き値と移動オブジェクトの奥行き値に基づいて陰面消去を行う手法について説明するための図である。
【図13】各オブジェクトの下側境界線の設定手法について説明するための図である。
【図14】図14(A)、(B)は、オブジェクトの下側境界線を延長する手法及び延長された下側境界線に基づきワールドマップを複数の領域に分割する手法について説明するための図である。
【図15】移動オブジェクトの位置とオブジェクトの下側境界線に基づき移動オブジェクトの奥行き値を求める手法について説明するための図である。
【図16】図16(A)、(B)は、オブジェクトの下側境界線を所与の距離だけ延長する手法について説明するための図である。
【図17】本実施形態の処理の詳細例について示すフローチャートである。
【図18】本実施形態を実現できるハードウェアの構成の一例を示す図である。
【図19】図19(A)、(B)、(C)は、本実施形態が適用される種々の形態のシステムの例を示す図である。
【符号の説明】
WM ワールドマップ
RDA 実表示領域
PD 実表示領域の位置
OB オブジェクト(木)
MOB 移動オブジェクト(キャラクタ)
100 処理部
110 スクロール処理部
120 半透明情報変化部
130 テクスチャマッピング部
132 陰面消去部
134 α合成部
160 操作部
170 記憶部
172 主記憶部
174 描画バッファ
176 テクスチャ記憶部
178 LUT記憶部
179 Zバッファ
180 情報記憶媒体
190 表示部
192 音出力部
194 携帯型情報記憶装置
196 通信部
Claims (14)
- 画像生成を行うゲームシステムであって、
ワールドマップ上で実表示領域を移動させる手段と、
ワールドマップ上での前記実表示領域の位置座標に応じて、前記実表示領域に存在する少なくとも1つのオブジェクトの半透明情報を変化させる手段と、
実表示領域でのスクロール画像を生成する手段と、
を含むことを特徴とするゲームシステム。 - 請求項1において、
前記実表示領域が、移動オブジェクトの移動に伴いワールドマップ上で移動し、
前記実表示領域に存在するオブジェクトの奥側に移動オブジェクトが隠れた場合にも移動オブジェクトが見えるように、オブジェクトの半透明情報を変化させることを特徴とするゲームシステム。 - 請求項1又は2において、
ワールドマップの第1の座標軸方向でのオブジェクトの長さよりも第2の座標軸方向でのオブジェクトの長さの方が長い場合には、第2の座標軸での前記実表示領域の位置座標に応じて、オブジェクトの半透明情報を変化させることを特徴とするゲームシステム。 - 請求項1乃至3のいずれかにおいて、
前記実表示領域の位置座標が第1の値と第2の値の間にあることを条件に、オブジェクトの半透明情報を変化させることを特徴とするゲームシステム。 - 請求項4において、
前記第1、第2の値が各オブジェクト毎に設定されていることを特徴とするゲームシステム。 - 請求項1乃至5のいずれかにおいて、
移動オブジェクトの第2の奥行き値が所与のルーチンにより求められ、
求められた移動オブジェクトの第2の奥行き値と、実表示領域に存在するオブジェクトの第1の奥行き値とに基づいて、移動オブジェクトの陰面消去が行われることを特徴とするゲームシステム。 - 請求項6において、
移動オブジェクトの位置と実表示領域に存在するオブジェクトの下側境界線とに基づいて、移動オブジェクトの第2の奥行き値が求められることを特徴とするゲームシステム。 - コンピュータが使用可能な情報記憶媒体であって、
ワールドマップ上で実表示領域を移動させる手段と、
ワールドマップ上での前記実表示領域の位置座標に応じて、前記実表示領域に存在する少なくとも1つのオブジェクトの半透明情報を変化させる手段と、
実表示領域でのスクロール画像を生成する手段と、
をコンピュータに実現させるためのプログラムを含むことを特徴とする情報記憶媒体。 - 請求項8において、
前記実表示領域が、移動オブジェクトの移動に伴いワールドマップ上で移動し、
前記実表示領域に存在するオブジェクトの奥側に移動オブジェクトが隠れた場合にも移動オブジェクトが見えるように、オブジェクトの半透明情報を変化させることを特徴とする情報記憶媒体。 - 請求項8又は9において、
ワールドマップの第1の座標軸方向でのオブジェクトの長さよりも第2の座標軸方向でのオブジェクトの長さの方が長い場合には、第2の座標軸での前記実表示領域の位置座標に応じて、オブジェクトの半透明情報を変化させることを特徴とする情報記憶媒体。 - 請求項8乃至10のいずれかにおいて、
前記実表示領域の位置座標が第1の値と第2の値の間にあることを条件に、オブジェクトの半透明情報を変化させることを特徴とする情報記憶媒体。 - 請求項11において、
前記第1、第2の値が各オブジェクト毎に設定されていることを特徴とする情報記憶媒体。 - 請求項8乃至12のいずれかにおいて、
移動オブジェクトの第2の奥行き値が所与のルーチンにより求められ、
求められた移動オブジェクトの第2の奥行き値と、実表示領域に存在するオブジェクトの第1の奥行き値とに基づいて、移動オブジェクトの陰面消去が行われることを特徴とする情報記憶媒体。 - 請求項13において、
移動オブジェクトの位置と実表示領域に存在するオブジェクトの下側境界線とに基づいて、移動オブジェクトの第2の奥行き値が求められることを特徴とする情報記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000284986A JP4412692B2 (ja) | 2000-09-20 | 2000-09-20 | ゲームシステム及び情報記憶媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000284986A JP4412692B2 (ja) | 2000-09-20 | 2000-09-20 | ゲームシステム及び情報記憶媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002092652A JP2002092652A (ja) | 2002-03-29 |
JP4412692B2 true JP4412692B2 (ja) | 2010-02-10 |
Family
ID=18769125
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000284986A Expired - Lifetime JP4412692B2 (ja) | 2000-09-20 | 2000-09-20 | ゲームシステム及び情報記憶媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4412692B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104075719A (zh) * | 2013-03-26 | 2014-10-01 | 高德信息技术有限公司 | 一种三维导航方法和装置 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7309287B2 (en) * | 2003-12-10 | 2007-12-18 | Nintendo Co., Ltd. | Game machine having display screen with touch panel |
JP5714393B2 (ja) * | 2011-04-13 | 2015-05-07 | 任天堂株式会社 | 情報処理プログラム、情報処理装置、情報処理方法及び情報処理システム |
KR101355171B1 (ko) * | 2012-01-05 | 2014-09-23 | 주식회사 드래곤플라이 | 게임 장치 |
CN106730827B (zh) | 2016-12-06 | 2018-10-19 | 腾讯科技(深圳)有限公司 | 一种对象显示的方法以及终端设备 |
-
2000
- 2000-09-20 JP JP2000284986A patent/JP4412692B2/ja not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104075719A (zh) * | 2013-03-26 | 2014-10-01 | 高德信息技术有限公司 | 一种三维导航方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
JP2002092652A (ja) | 2002-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7706636B2 (en) | Image generation system (game system), image generation method, program and information storage medium | |
US6850242B1 (en) | Image generating system and program | |
JP4707080B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP4305903B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP4610748B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP2001319244A (ja) | ゲームシステム及び情報記憶媒体 | |
JP3280355B2 (ja) | 画像生成システム及び情報記憶媒体 | |
JP3413383B2 (ja) | ゲームシステム及び情報記憶媒体 | |
US6847361B1 (en) | Image generation system and program | |
JP2002092633A (ja) | ゲームシステム及び情報記憶媒体 | |
JP4412692B2 (ja) | ゲームシステム及び情報記憶媒体 | |
JP3297410B2 (ja) | 画像生成システム及び情報記憶媒体 | |
JP4577968B2 (ja) | ゲームシステム及び情報記憶媒体 | |
JP4187192B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP4707078B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP2001229403A (ja) | ゲームシステム及び情報記憶媒体 | |
JP3254195B2 (ja) | 画像生成システム及び情報記憶媒体 | |
JP2002092637A (ja) | ゲームシステム及び情報記憶媒体 | |
JP2002216167A (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP3292713B2 (ja) | 画像生成システム及び情報記憶媒体 | |
JP4698701B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP4394211B2 (ja) | 画像生成システム及び情報記憶媒体 | |
JP4592043B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP4803909B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP4592042B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070904 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20091104 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20091111 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20091116 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121127 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 4412692 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121127 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121127 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131127 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |