JP4001556B2 - ゲーム装置及び情報記憶媒体 - Google Patents

ゲーム装置及び情報記憶媒体 Download PDF

Info

Publication number
JP4001556B2
JP4001556B2 JP2003032158A JP2003032158A JP4001556B2 JP 4001556 B2 JP4001556 B2 JP 4001556B2 JP 2003032158 A JP2003032158 A JP 2003032158A JP 2003032158 A JP2003032158 A JP 2003032158A JP 4001556 B2 JP4001556 B2 JP 4001556B2
Authority
JP
Japan
Prior art keywords
reflection
image
reflected image
changing
game
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 - Fee Related
Application number
JP2003032158A
Other languages
English (en)
Other versions
JP2003275460A (ja
Inventor
俊明 松野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Namco Ltd
Bandai Namco Entertainment Inc
Original Assignee
Namco Ltd
Namco Bandai Games Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Namco Ltd, Namco Bandai Games Inc filed Critical Namco Ltd
Priority to JP2003032158A priority Critical patent/JP4001556B2/ja
Publication of JP2003275460A publication Critical patent/JP2003275460A/ja
Application granted granted Critical
Publication of JP4001556B2 publication Critical patent/JP4001556B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、ゲーム装置及び情報記憶媒体に関する。
【0002】
【背景技術】
従来より、仮想的な3次元空間であるオブジェクト空間内に複数のオブジェクトを配置し、オブジェクト空間内の所与の視点から見える画像を生成するゲーム装置が知られており、いわゆる仮想現実を体験できるものとして人気が高い。戦闘機の操縦を楽しむことができるゲーム装置を例にとれば、プレーヤは、自身が操作する戦闘機をオブジェクト空間内で飛行させ、他のプレーヤやコンピュータが操作する戦闘機と対戦してゲームを楽しむ。
【0003】
【特許文献1】
特開昭60−250479号公報
【0004】
【発明が解決しようとする課題】
さて、このようなゲーム装置では、プレーヤの仮想現実感の向上のために、よりリアルな画像を生成することが重要な技術的課題になっている。従って、例えば太陽からの光の反射により生じる水面(広義にはマップ)のきらめき(グリッター)などについても、リアルな画像で表現できることが望まれる。そして、水面のきらめきを表現する手法としては、例えば図1(A)、(B)に示す第1、第2の手法を考えることができる。
【0005】
図1(A)の第1の手法は、水面のきらめきを現実世界に忠実にシミュレーションするものである。この第1の手法では、その法線ベクトル911〜917が様々な方向を向く複数のポリゴン901〜907により水面900を構成し、水面900に起伏を持たせる。そして、水面900を構成するポリゴン901〜907の法線ベクトル911〜917と、光源(太陽)からの光源ベクトル920とに基づいて、鏡面反射を表現するための反射演算処理を行う。
【0006】
しかしながら、この第1の手法で水面のきらめきを表現するためには、ポリゴン901〜907の面の向き(法線ベクトル911〜917の方向)を時間経過に伴い変化させる必要がある。また、法線ベクトル911〜917と光源ベクトル920とに基づく反射演算処理の処理負荷も非常に重い。このため、この第1の手法は、処理のリアルタイム性が要求されないCG(ムービー)画像などの生成には好適だが、処理のリアルタイム性が要求されるゲーム画像の生成には適していない。
【0007】
また図1(B)の第2の手法では、水面を表すテクスチャを、時間経過に伴いアニメーションさせることで、水面のきらめきを表現する。この第2の手法によれば、視点位置の移動範囲が強く制限されているゲームや、きらめきが生じる反射領域が固定されているゲームにおいては、少ない処理負荷でリアルな画像を生成できる。
【0008】
しかしながら、図1(B)の第2の手法は、視点位置の移動範囲が制限されていないゲームや、きらめきが生じる反射領域が視点位置の移動に伴い任意の場所に移動するようなゲームには不向きな手法となる。このようなゲームでは、テクスチャをアニメーションさせる反射領域の場所が変化してしまうからである。従って、このようなゲームにおいても、水面のきらめきのリアルな表現が可能となる技術の出現が望まれている。
【0009】
本発明は、以上のような課題を解決するためになされたものであり、その目的とするところは、光源からの光の反射のリアルな表現を、少ない処理負荷で実現できるゲーム装置及び情報記憶媒体を提供することにある。
【0010】
【課題を解決するための手段】
上記課題を解決するために、本発明は、画像を生成するためのゲーム装置であって、光源からの光の反射を表現するための反射演算処理を許可するか否かを示す反射許可フラグがマップの各ドットに対して設定されるマップ画像情報を記憶するための手段と、光源位置と視点位置とに基づいて、反射領域を設定するための手段と、前記反射領域において前記反射許可フラグがオンになっているドットに対して前記反射演算処理を行うための手段とを含むことを特徴とする。
【0011】
また本発明に係る情報記憶媒体は、上記手段を実現するための情報を含むことを特徴とする。
【0012】
本発明では、反射演算処理を許可するか否かを示す反射許可フラグがマップの各ドットに対して設定されている。また、光源位置と視点位置とに基づいて、反射領域が設定される。そして、設定された反射領域において反射許可フラグがオンになっているドットに対しては、光源からの光の反射を表現するための反射演算処理が行われる。即ち、光源からの光の反射の表現が必要な領域(例えば水面)においてのみ、反射演算処理を行うことができるようになる。そして、反射許可フラグはマップの各ドットに対して設定されており、反射領域は、光源位置や視点位置の移動に伴い移動する。従って、視点位置の移動範囲が制限されていなく、反射領域が視点位置の移動に伴い任意の場所に移動するような場合にも、反射領域での光の反射のリアルな表現を、少ない処理負荷で実現できるようになる。
【0013】
なお、反射領域をオブジェクト空間内に設定する場合も、スクリーン(表示画面)上に設定する場合も、本発明の範囲内に含まれる。また反射許可フラグを、マップにマッピングされるテクスチャの各ドットに設定する場合も、テクスチャのパレットの各色に対して設定する場合も、本発明の範囲内に含まれる。
【0014】
また本発明に係るゲーム装置及び情報記憶媒体は、マップの第1の領域においては、前記反射許可フラグがほぼ全面的にオフになり、マップの第2の領域においては、前記反射許可フラグがオンとなるドットが点在していることを特徴とする。このようにすれば、光が反射するドットが、光が反射しないドットに混ざって点在するようになる。これにより、マップ面に実際に起伏を持たなくても、光源からの光がマップ面の起伏に乱反射しているように見せることが可能になる。
【0015】
なお、マップの第1の領域においても、光の反射を表現した方が望ましい部分については、反射許可フラグをオンにすることが望ましい。
【0016】
また本発明に係るゲーム装置及び情報記憶媒体は、マップを含む表示物をスクリーンに透視変換することにより得られるフレーム画像がフレームバッファに書き込まれる際に、フレームバッファの各ドットに対して前記反射許可フラグが書き込まれると共に、フレームバッファに書き込まれた前記反射許可フラグに基づいて前記反射演算処理が行われることを特徴とする。このようにすれば、視点位置や視線方向とマップとの位置関係が変化した場合に、透視変換による画像情報のデフォルメにより、同じ場所のドットの反射許可フラグがフレームバッファに書き込まれたり、書き込まれなかったりするようになる。これにより、同じ場所のドットに対して、反射演算処理が行われたり、行われなかったりするようになる。この結果、同じ場所のドットが、光を反射しているように見えたり、反射していないように見えたりするようになり、少ない処理負担でリアルな画像表現が可能になる。
【0017】
また本発明に係るゲーム装置及び情報記憶媒体は、光源からの光の入射角が大きくなるほど、前記反射領域の幅が細くなる或いは前記反射領域の輝度が高くなることを特徴とする。このようにすれば、光源からの光の入射角に応じて、反射領域の幅や輝度が変化するようになり、画像のリアル度を高めることができる。
【0018】
なお、反射領域の幅や輝度を、入射角そのものに基づいて制御せずに、入射角と数学的に等価なパラメータに基づいて制御する場合も、本発明の範囲内に含まれる。
【0019】
また本発明に係るゲーム装置及び情報記憶媒体は、前記反射領域がスクリーンの外に出た場合に、前記反射領域での前記反射演算処理が省略されることを特徴とする。このようにすれば、反射領域がスクリーンの外に出てしまった場合に、無駄な処理が行われるのを防止でき、処理負担の軽減化を図れる。
【0020】
また本発明に係るゲーム装置及び情報記憶媒体は、視点位置とマップとの距離が遠いほど、前記反射領域の輝度が低くなることを特徴とする。このようにすれば、視点位置とマップとの距離が離れた場合に、反射領域が目立って見えてしまう事態を防止できる。
【0021】
なお、反射領域の輝度を、視点位置とマップとの距離そのものに基づいて制御せずに、この距離と数学的に等価なパラメータに基づいて制御する場合も、本発明の範囲内に含まれる。
【0022】
また本発明は、画像を生成するためのゲーム装置であって、マップ画像情報を記憶するための手段と、マップ面に関して光源位置と面対称の第1の位置を求め、前記第1の位置をスクリーンに透視変換した第2の位置に反射像オブジェクトを設定するための手段と、前記反射像オブジェクトを、マップを含む表示物をスクリーンに透視変換することにより得られるフレーム画像に対して重ね書きすることで、光源からの光の反射を表現するための反射演算処理を行うための手段とを含むことを特徴とする。
【0023】
また本発明に係る情報記憶媒体は、上記手段を実現するための情報を含むことを特徴とする。
【0024】
本発明によれば、マップ面に関して光源位置と面対称の第1の位置を、スクリーンに透視変換した第2の位置が求められ、この第2の位置に反射像オブジェクトが設定される。そして、この反射像オブジェクトを、フレーム画像に重ね書きすることで、反射演算処理が行われる。このように本発明によれば、反射像オブジェクトをオブジェクト空間内に配置することなく、反射演算処理を実現できる。そして、反射像オブジェクトを設定する位置である第2の位置も、第1の位置を透視変換するだけで求めることができる。また特に限定はされないが、視線方向に応じて反射像オブジェクトの奥行き方向のサイズを変化させる処理も省略できるようになる。従って、3次元的な反射像オブジェクトをオブジェクト空間内に配置する手法に比べて処理負荷を軽減しながら、リアルな画像表現が可能になる。
【0025】
また本発明に係るゲーム装置及び情報記憶媒体は、前記反射演算処理を許可するか否かを示す反射許可フラグがマップの各ドットに対して設定されていることを特徴とする。このようにすれば、反射許可フラグがオンになっているドットに対して反射演算処理が行われるようになる。即ち、光源からの光の反射の表現が必要な領域においてのみ、反射演算処理を行うことができるようになる。従って、視点位置の移動範囲が制限されていないような場合にも、反射像オブジェクトが設定される領域での光の反射のリアルな表現を、少ない処理負荷で実現できるようになる。
【0026】
また本発明に係るゲーム装置及び情報記憶媒体は、視点位置と前記第1の位置との高度差に応じて、前記反射像オブジェクトの幅及び前記反射像オブジェクトの輝度の少なくとも一方が制御されることを特徴とする。このようにすれば、光源からの光の入射角を直接求めることなく、入射角に応じて、反射像オブジェクトの幅や輝度を変化させることができるようになる。従って、入射角を求める処理を省くことができ、処理負担の軽減化を図れる。また高度差に応じて反射像オブジェクトの輝度を制御することで、視点位置とマップとの距離が遠く離れた場合に反射像オブジェクトの輝度を低くする処理も実現できるようになる。
【0027】
また本発明に係るゲーム装置及び情報記憶媒体は、前記反射像オブジェクトの輪郭及び輝度分布の少なくとも一方が、時間経過に伴い揺らぐことを特徴とする。このようにすれば、反射像オブジェクトの境界を目立たなくすることが可能になる。また視点位置が静止していた場合等にも、リアルな画像表現を実現できるようになる。
【0028】
【発明の実施の形態】
以下、本発明の好適な実施形態について図面を用いて説明する。なお以下では、本発明を戦闘機ゲーム(フライトシミュレータ)に適用した場合を例にとり説明するが、本発明はこれに限定されず、種々のゲームに適用できる。また以下では、オブジェクトを構成する1又は複数のプリミティブ面が、ポリゴンである場合を例にとり説明を行うが、本発明はこれに限定されず、ポリゴン以外のプリミティブ面(例えば曲面)によりオブジェクトを構成する場合にも適用できる。
【0029】
1.構成
図2に、本実施形態のブロック図の一例を示す。なお同図において本実施形態のゲーム装置は、少なくとも処理部100(或いは処理部100と記憶部140、或いは処理部100と記憶部140と情報記憶媒体150)を含めばよく、それ以外のブロック(例えば操作部130、画像生成部160、表示部162、音生成部170、音出力部172、通信部174、I/F部176、メモリーカード180等)については、任意の構成要素とすることができる。
【0030】
ここで処理部100は、装置全体の制御、装置内の各ブロックへの命令の指示、ゲーム演算などの各種の処理を行うものであり、その機能は、CPU(CISC型、RISC型)、DSP、或いはASIC(ゲートアレイ等)などのハードウェアや所与のプログラム(ゲームプログラム)により実現できる。
【0031】
操作部130は、プレーヤが操作情報を入力するためのものであり、その機能は、レバー、ボタンなどのハードウェアにより実現できる。
【0032】
記憶部140は、処理部100、画像生成部160、音生成部170、通信部174、I/F部176などのワーク領域となるもので、その機能はRAMなどのハードウェアにより実現できる。
【0033】
情報記憶媒体(コンピュータにより情報の読み取りが可能な記憶媒体)150は、プログラムやデータなどの情報を格納するものであり、その機能は、光ディスク(CD、DVD)、光磁気ディスク(MO)、磁気ディスク、ハードディスク、磁気テープ、或いは半導体メモリ(ROM)などのハードウェアにより実現できる。処理部100は、この情報記憶媒体150に格納される情報に基づいて本発明(本実施形態)の種々の処理を行う。即ち情報記憶媒体150には、本発明(本実施形態)の手段(特に処理部100、記憶部140に含まれるブロック)を実現するための種々の情報が格納される。
【0034】
なお、情報記憶媒体150に格納される情報の一部又は全部は、装置への電源投入時等に記憶部140に転送されることになる。また情報記憶媒体150に記憶される情報は、本発明の処理を行うためのプログラムコード、画像情報、音情報、表示物の形状情報、テーブルデータ、リストデータ、プレーヤ情報や、本発明の処理を指示するための情報、その指示に従って処理を行うための情報等の少なくとも1つを含むものである。
【0035】
画像生成部160は、処理部100からの指示等にしたがって、各種の画像を生成し表示部162に出力するものであり、その機能は、画像生成用ASIC、CPU、或いはDSPなどのハードウェアや、所与のプログラム(画像生成プログラム)、画像情報により実現できる。
【0036】
音生成部170は、処理部100からの指示等にしたがって、各種の音を生成し音出力部172に出力するものであり、その機能は、音生成用ASIC、CPU、或いはDSPなどのハードウェアや、所与のプログラム(音生成プログラム)、音情報(波形データ等)により実現できる。
【0037】
通信部174は、外部装置(例えばホスト装置や他のゲーム装置)との間で通信を行うための各種の制御を行うものであり、その機能は、通信用ASIC、或いはCPUなどのハードウェアや所与のプログラム(通信プログラム)により実現できる。
【0038】
なお本発明(本実施形態)の処理を実現するための情報は、ホスト装置が有する情報記憶媒体からネットワーク、通信部174を介してゲーム装置が有する情報記憶媒体に配信するようにしてもよい。このようなホスト装置の情報記憶媒体の使用やゲーム装置の情報記憶媒体の使用も本発明の範囲内に含まれる。
【0039】
また処理部100の機能の一部又は全部を、画像生成部160、音生成部170、又は通信部174の機能により実現するようにしてもよい。或いは、画像生成部160、音生成部170、又は通信部174の機能の一部又は全部を、処理部100の機能により実現するようにしてもよい。
【0040】
I/F部176は、処理部100からの指示等にしたがってメモリーカード(広義には、PDA、携帯型ミニゲーム装置を含む携帯型情報記憶装置)180との間で情報交換を行うためのインターフェースとなるものであり、その機能は、メモリーカードを挿入するためのスロットや、CPUからの命令により制御されるデータ書き込み・読み出し用コントローラICなどにより実現できる。なお、メモリーカード180との間の情報交換を赤外線などの無線を用いて実現する場合には、I/F部176の機能は、半導体レーザ、赤外線センサーなどのハードウェアにより実現できる。
【0041】
処理部100は、ゲーム演算部110を含む。
【0042】
ここでゲーム演算部110は、コイン(代価)の受け付け処理、ゲームモードの設定処理、ゲームの進行処理、選択画面の設定処理、移動体(戦闘機、弾、光源等)の位置や方向を決める処理、視点位置や視線方向を決める処理、移動体のモーションを再生する処理、オブジェクト空間へオブジェクトを配置する処理、ヒットチェック処理、ゲーム成果(成績)を演算する処理、複数のプレーヤが共通のゲーム空間でプレイするための処理、或いはゲームオーバー処理などの種々のゲーム演算処理を、操作部130からの操作情報、メモリーカード180からの情報、ゲームプログラムなどに基づいて行う。なお、本発明を戦闘機ゲーム以外のゲームに適用した場合には、移動体としては、戦闘機以外の飛行機、船(ボート、戦艦、潜水艦、ヨット、モーターボート等)、水上バイク、水上スキー、サーフボード、車、バイク、戦車、ロボット、宇宙船等、種々のものを考えることができる。
【0043】
ゲーム演算部110は、移動体演算部112、視点制御部114、反射領域設定部116、反射演算処理部118を含む。
【0044】
ここで移動体演算部112は、戦闘機などの移動体の移動情報(位置情報、方向情報等)を演算するものであり、例えば操作部130から入力される操作情報や所与のプログラムに基づき、移動体をオブジェクト空間内で移動させる処理などを行う。即ち、プレーヤ(自プレーヤ、他プレーヤ)からの操作情報や、コンピュータからの命令(所与の移動制御アルゴリズム)に基づいて、移動体をオブジェクト空間内で移動させる処理などを行う。
【0045】
より具体的には、移動体演算部112は、移動体の位置や方向を例えば1フレーム(1/60秒)毎に求める処理を行う。例えば(k−1)フレームでの移動体の位置をPMk-1、速度をVMk-1、加速度をAMk-1、1フレームの時間を△tとする。するとkフレームでの移動体の位置PMk、速度VMkは例えば下式(1)、(2)のように求められる。
PMk=PMk-1+VMk-1×△t (1)
VMk=VMk-1+AMk-1×△t (2)
視点制御部114は、移動体演算部112で得られた移動体の位置や方向の情報などに基づいて、視点位置や視線方向等を求める処理を行う。より具体的には、プレーヤの操作する移動体の位置又は方向に例えば追従するように視点位置又は視線方向を変化させる処理を行う。この場合、移動体の位置又は方向に対して、例えば慣性を持ちながら視点位置又は視線方向を追従させることが望ましい。画像生成部150は、この視点制御部114により制御される視点において見える画像を生成することになる。
【0046】
反射領域設定部116は、光源位置と視点位置とに基づいて、反射領域を設定するための処理を行う。より具体的には、例えば、マップ面に関して光源位置と面対称の第1の位置を求め、この第1の位置をスクリーンに透視変換した第2の位置に反射像オブジェクト(広義には反射領域)を設定(配置)するための処理などを行う。
【0047】
反射演算処理部118は、反射領域において反射許可フラグがオンになっているドットに対して、光源からの光の反射を表現するための反射演算処理を行う。より具体的には、例えば、マップを含む表示物をスクリーンに透視変換することにより得られるフレーム画像に対して、反射像オブジェクトを重ね書きすることで、上記反射演算処理を実現する。
【0048】
なお、反射演算処理部118が使用する反射許可フラグは、記憶部140のマップ画像情報記憶部142に記憶されるマップ画像情報の中に含まれる。即ち、マップ画像情報記憶部142は、反射演算処理を許可するか否かを示す反射許可フラグがマップの各ドットに対して設定されるマップ画像情報を記憶する。
【0049】
なお、本実施形態のゲーム装置は、1人のプレーヤがプレイするシングルプレーヤモードによるゲームプレイと、複数のプレーヤがプレイするマルチプレーヤモードによるゲームプレイの両方が可能になっている。
【0050】
また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、1つのゲーム装置を用いて生成してもよいし、ネットワーク(伝送ライン、通信回線)などで接続された複数のゲーム装置を用いて生成してもよい。
【0051】
2.本実施形態の特徴
図3(A)、(B)、図4(A)、(B)に、本実施形態により生成されるゲーム画像の例を示す。
【0052】
本実施形態により実現される戦闘機ゲームでは、プレーヤは、図3(A)、(B)、図4(A)、(B)に示されるゲーム画像を見ながら、自身の戦闘機を操縦してオブジェクト空間内で飛行させる。そして他のプレーヤやコンピュータが操作する戦闘機と対戦してゲームを楽しむ。
【0053】
なお図3(A)、(B)、図4(A)、(B)では、1人称視点での画像(コックピット画像)が生成されているが、本実施形態では3人称視点での画像(自身が操作する戦闘機が表示される画像)も生成可能になっている。
【0054】
図3(A)のE1に示すように、本実施形態によれば、光源(太陽)18からの光による海面のきらめき(光の海面への映り込み)を、リアルに表現できる。また図3(A)から図3(B)、図3(B)から図4(A)、図4(A)から図4(B)というようにプレーヤの視点(戦闘機)が前に移動していった場合にも、反射領域20での海面のきらめきを矛盾無く表現できる。
【0055】
本実施形態の戦闘機ゲームでは、プレーヤは自身の操作する戦闘機をオブジェクト空間内で自由に飛行させることができる。従って、プレーヤの視点位置の移動範囲は制限されておらず、きらめきが生じる反射領域20も視点位置の移動に伴い任意の場所に移動する。このようなゲームでは、前述の図1(B)に示す第2の手法では、海面のきらめきの矛盾の無い表現を実現できない。また、図1(A)の第1の手法では処理負荷が非常に重くなってしまう。更に、反射領域20が海22上にある場合には、きらめきを表現すべきだが、反射領域20が陸地24上にある場合にきらめきが表現されると、生成されるゲーム画像が不自然なものとなる。
【0056】
そこで、本実施形態では図5に示すように、光源位置P0と視点位置VPとに基づいて、反射領域20(或いは反射領域20’)を設定する。そして、この反射領域20において反射許可フラグRFがオンになっているドットに対して、光源からの光の反射を表現するための反射演算処理を行うようにする。この場合、本実施形態では図5に示すように、マップ(陸地、海面)30の各ドットに対して反射許可フラグRFが設定されている。そして、陸地(広義にはマップ30の第1の領域)においては反射許可フラグRFがほぼ全面的に0(オフ)になっており、海(広義にはマップ30の第2の領域)においてはRFは1(オン)になっている。従って、図3(A)〜図4(B)に示すように、海22においては反射演算処理が行われきらめきが表現される一方で、陸地24においては反射演算処理が行われずきらめきが表現されないようになる。これにより、図3(A)〜図4(B)のように視点位置が移動した場合にも、矛盾のない自然な画像を生成できるようになる。
【0057】
なお図3(A)のE2に示すように本実施形態では、陸地24であっても例えば池26などにおいては反射演算処理を行いきらめきを表現するようにしている。また、これ以外にも、ビル28の窓ガラス、建物の鉄骨部分、川等に対しても反射演算処理を行うことが望ましい。即ち、陸地(マップの第1の領域)24に、反射許可フラグRFがオンになるドットを例外的に設けるようにしてもよい。
【0058】
また本実施形態では図6に示すように、陸地24においては、ほぼ全面的に反射許可フラグRF=0(オフ)にする。これにより陸地24ではきらめきが生じないようになる。一方、海22においては、RF=1(オン)となるドットを点在させる。これにより、光が反射するドットが、光が反射しないドットに混ざって点在するようになる。このようにすれば、図1(A)のように海面に起伏を持たせなくても、光源からの光が海面の波に乱反射しているように見せることが可能になる。
【0059】
即ち図1(A)の手法では、ポリゴン901〜907の法線ベクトル911〜917の方向を時間経過に伴い変化させる処理や、法線ベクトル911〜917と光源ベクトル920とに基づく反射演算処理が必要になり、処理負荷が非常に重くなる。これに対して、本実施形態によれば、RF=1となるドットを点在させておくだけで、光が波に乱反射しているように擬似的に見せることができる。即ち少ない処理負担でリアルな表現が可能になる。
【0060】
なお本実施形態では、図5に示すように反射許可フラグRFをマップ30の各ドットに対して設定しているが、これは、海にマッピングされる海面テクスチャの各ドットに対して反射許可フラグRFを設定することで実現できる。より具体的には、図7に示すように、陸面テクスチャ32のパレット34では、色C0〜C15に設定されている反射許可フラグRFを全て0(オフ)にする。一方、海面テクスチャ36のパレット38では、例えば色C16〜C19についてだけRFを1(オン)にし、他の色C20〜C31についてはRFを0にする。そして、フレーム画像40の陸地24については、陸面テクスチャ32とパレット34を用いたテクスチャマッピングにより描画する。一方、海22については、海面テクスチャ36とパレット38を用いたテクスチャマッピングにより描画する。
【0061】
このようにすれば図6に示すように、陸地24では、ほぼ全面的にRF=0になる。また海22では、RF=1のドットが点在するようになる。海22において、図7の色C16〜C19で描画されるドットはRF=1になり、色C20〜C31で描画されるドットはRF=0になるからである。
【0062】
また本実施形態では、マップを含む表示物をスクリーンに透視変換することにより得られるフレーム画像がフレームバッファに書き込まれる際に、フレームバッファの各ドット(ピクセル)に対して反射許可フラグRFを書き込み、この書き込まれたRFに基づいて反射演算処理を行うようにしている。このようにすれば、視点位置や視線方向とマップとの位置関係に応じて、同じ場所のドットであっても、フレームバッファにRF=1が書き込まれて反射演算処理が行われたり、RF=1が書き込まれずに反射演算処理が行われなかったりするようになる。これにより図3(A)〜図4(B)のE3、E4、E5、E6に示すように、同じ場所にあるドットが、視点位置が移動するにつれて、きらめいたり、きらめかなかったりするようになり、よりリアルなきらめきの表現が可能になる。
【0063】
即ち図8(A)において、ドットD0、D2、D3、D4の画像情報は、スクリーン42への透視変換の際に図2のフレームバッファ144に書き込まれる。従って、これらのドットの画像情報に含まれるRF=1もフレームバッファ144に書き込まれ、ドットD0、D2、D3、D4は画面上できらめくようになる。一方、ドットD1の画像情報は、透視変換によりデフォルメされて、フレームバッファ144に書き込まれないようになる。従って、ドットD1の画像情報に含まれるRF=1もフレームバッファ144に書き込まれず、ドットD1は画面上できらめかないようになる。
【0064】
一方、図8(B)では、ドットD1、D3の画像情報はフレームバッファ144に書き込まれ、RF=1もフレームバッファ144に書き込まれるため、D1、D3は画面上できらめくようになる。一方、ドットD0、D2、D4の画像情報は、透視変換によりデフォルメされて、フレームバッファ144に書き込まれず、RF=1もフレームバッファ144に書き込まれない。従って、ドットD0、D2、D4は画面上できらめかないようになる。
【0065】
このように本実施形態では、図8(A)ではきらめいていたドットD0、D2、D4が図8(B)ではきらめかなくなる。また図8(A)ではきらめかなかったドットD1が図8(B)ではきらめくようになる。即ち、視点位置や視線方向とマップとの位置関係が変化すると(透視変換によるスケーリングの度合いが変化すると)、透視変換による画像情報のデフォルメにより、同じ場所のドットの画像情報(反射許可フラグ)がフレームバッファに書き込まれたり、書き込まれなかったりするようになる。これにより、同じ場所のドットがきらめいたり、きらめかなかったりするようになる。従って、図1(A)のような負荷の重い反射演算処理を行わなくても、海面のきらめきのリアルな表現が可能になる。
【0066】
特に、このように同じ場所のドットがきらめいたり、きらめかなかったりする映像効果は、図3(A)のE3に示すように、視点から遠く離れた場所のドットにおいて顕著になる。
【0067】
また本実施形態では、光源からの光の入射角が大きくなるにつれて、反射領域の幅を細くしたり、反射領域の輝度を高くしている。
【0068】
即ち図9(A)のように、光源からの光の入射角θが小さい場合には、反射領域20の幅を太くすると共に、反射領域20での輝度(反射光の輝度に相当)を低くする。一方、図9(B)のように、光源からの光の入射角θが大きい場合には、反射領域20の幅を細くすると共に、反射領域20での輝度を高くする。
【0069】
このようにすることで、光源(太陽)の位置が低くなり水平線の近くに来た場合に、光がきらめく領域が縦に細くなりながら強く光るという様子をリアルに表現できるようになる。
【0070】
このようなきらめき領域の幅や輝度の変化は、例えば図1(A)の第1の手法により光源ベクトルと法線ベクトルとに基づく光反射演算を行うことによっても実現できる。しかしながら、この第1の手法では、処理負荷が非常に重くなってしまう。
【0071】
本実施形態では、設定された反射領域20において反射演算処理を行うことで海面のきらめきを表現している。このため、図1(A)のような手法を採用しなくても、反射領域20の幅や輝度の制御だけで、光がきらめく領域が縦に細くなりながら強く光るという現象をリアルに表現できる。
【0072】
なお、反射領域20の幅や輝度の制御は、必ずしも光の入射角θそのものを使用して制御する必要はなく、光の入射角θと等価なパラメータ(例えば後述する高度差係数α)を用いて制御するようにしてもよい。
【0073】
また本実施形態では、反射領域がスクリーンの外に出た場合に、反射領域での反射演算処理を省略するようにしている。
【0074】
例えば図10(A)のように、視線方向が上方向を向いたりして、反射領域20がスクリーン(表示画面)外に出た場合には、反射領域20での反射演算処理を省略する。このようにすることで、無駄な処理が行われるのを防止でき、処理の高速化を図れるようになる。
【0075】
また本実施形態では、視点位置とマップとの距離が遠いほど、反射領域の輝度を低くするようにしている。
【0076】
例えば図10(B)に示すように、視点位置VPがマップ30から遠く離れた場合には、反射領域20の輝度を低くし、反射領域20が画面上で徐々に消えてゆくようにする。即ち、この種のゲーム装置では、視点位置VPから遠く離れた位置にある表示物については、デプスキューイング処理などを利用して画面から徐々に消してゆく。例えば図10(B)において、視点位置VPとマップ30との距離が遠く離れると、陸地24は画面上でデプスキューイング処理により徐々に消えてゆく。このような場合に反射領域20の輝度が高いと、反射領域20が画面上で目立ってしまい(反射領域20がきらめいてしまい)、不自然な画像になってしまう。
【0077】
本実施形態によれば、視点位置VPとマップ30との距離が離れ、陸地24などの表示物が画面上で徐々に消えてゆくにつれて、反射領域20の輝度も低くなり画面上で徐々に消えてゆくようになる(徐々に薄くなる)。これにより、反射領域20が目立ってしまい不自然な画像が生成されてしまうという事態を防止できる。
【0078】
なお、反射領域20の輝度を低くする制御は、必ずしも視点位置VPとマップとの距離そのものを使用して制御する必要はなく、この距離と等価なパラメータ(例えば後述する高度差係数α)を用いて制御するようにしてもよい。
【0079】
さて、本実施形態では、より具体的には次のようにして反射演算処理を実現している。
【0080】
即ち図11において、まず、マップ30の面(水平面)に関して光源の位置P0と面対称の位置P1(第1の位置)を求め、この位置P1をスクリーン42に透視変換した位置P2(第2の位置)を求める。そして、この位置P2に反射像オブジェクト50を設定する(位置P2と反射像オブジェクト50の中心点(代表点)とが一致するように反射像オブジェクト50を配置する)。
【0081】
次に、図12(A)に示すように、マップなどの表示物をスクリーン42に透視変換することにより得られるフレーム画像40に対して、反射像オブジェクト50を重ね書きする。このようにすることで、光源からの光の反射を表現するための反射演算処理を、簡易に実現できるようになる。
【0082】
なお、図12(B)に示すように、視点(フレーム画像、視界画像)がZ軸(奥行き方向の座標軸)回りに回転した場合には、反射像オブジェクト50もZ軸回りに回転させてからフレーム画像40に重ね書きするようにすることが望ましい。
【0083】
また、特に本発明を限定するものではないが、本実施形態では、視点位置VPが移動しても、VPと光源位置P0の相対的な位置関係は変化しないようになっている。このようにすることで、光源位置P0が無限遠にあるように見せることができる。また、光源位置P0を時間経過に伴い変化させるようにすることも可能である。このようにすれば、東から昇った太陽が時間経過に伴い天空上を移動し、西に沈むというような表現が可能になる。
【0084】
さて反射演算処理を実現する他の手法として次のような手法を考えることができる。即ち、この手法では、まず図11の位置P1を求めて、この位置P1、視点位置VPを結ぶ線とマップ30との交点となる位置P2’を求める。そしてこの位置P2’に、3次元的な反射像オブジェクト50’を設定(配置)する。しかしながら、この手法では、P1、VPを結ぶ線とマップ30との交点である位置P2’を求める処理や、反射像オブジェクト50’の奥行き方向のサイズH’を視線方向に応じて変化させる処理等が必要になる。このため処理負荷が重くなってしまう。
【0085】
これに対して、2次元的な反射像オブジェクト50を位置P2に設定する手法では、位置P1をスクリーン42に透視変換するだけで位置P2を求めることができる。また、この手法では、反射像オブジェクト50の奥行き方向のサイズHを、視線方向に依存しない固定値にすることができる。即ち、Hを、スクリーン距離SD(画角)のみの関数(例えばH=2×SD×tanβ)とすることができる。従って、3次元の反射像オブジェクト50を位置P2’に設定する手法に比べて、処理負荷を軽減できる。
【0086】
なお図12(A)、(B)のようなフレーム画像40への反射像オブジェクト50の重ね書きは、フレーム画像40と反射像オブジェクト50との半透明加算処理により実現できる。
【0087】
即ち図12(C)に示すように、反射像オブジェクト50を、奥行き方向のサイズ(長軸の長さ)がHで水平方向のサイズ(短軸の長さ)がWの楕円形のオブジェクトにする。この場合、この楕円形のオブジェクトは、複数の3角形ポリゴンを組み合わせることで表現する。また反射像オブジェクト50の中心点PCの輝度を所与の値IC(例えばIC=1.0)にすると共に、輪郭点PL0〜PL11の輝度を0.0にする。そして、中心点PCから輪郭点PL0〜PL11の方へと向かうにつれて、輝度を少しずつ低くする(輝度にグラディエーションをかける)。また、反射像オブジェクト50の色は、反射光の色(例えば黄色っぽい白)に設定する。
【0088】
フレーム画像40と反射像オブジェクト50との半透明加算処理は、例えば次のような式により表すことができる。
PR=FR+I×RR (3)
PG=FG+I×RG (4)
PB=FB+I×RB (5)
ここで、FR、FG、FBはフレーム画像40の色情報のR、G、B成分であり、RR、RG、RBは反射像オブジェクト50の色情報のR、G、B成分であり、PR、PG、PBは、半透明加算処理により得られる出力画像の色情報のR、G、B成分である。また、Iは、反射像オブジェクト50に設定される輝度である。
【0089】
例えば、反射像オブジェクト50の輪郭点PL0〜PL11では、図12(C)に示すように輝度I=0.0になるため、PR=FR、PG=FG、PB=FBとなる。即ち輪郭点PL0〜PL11ではフレーム画像40がそのまま出力画像になり、輪郭点PL0〜PL11ではきらめきが生じない。また、反射像オブジェクト50の中心点PCでは、輝度Iが例えばIC=1.0になるため、PR=FR+RR、PG=FG+RG、PB=FB+RBとなる。即ち中心点PCではフレーム画像と反射像オブジェクトの画像を半透明加算したものが出力画像になり、中心点PCが一番強くきらめくようになる。
【0090】
さて、本実施形態では、視点位置VPと位置P1との高度差に応じて、反射像オブジェクトの幅や輝度を制御している。
【0091】
即ち図13(A)のように、視点位置VPと位置P1(マップ30の面に関して光源位置P0と面対称の第1の位置)との高度差(高低差)を表す係数αが大きい場合には、反射像オブジェクト(広義には反射領域)50の幅(水平方向のサイズW)を太くすると共に、反射像オブジェクト50の輝度(中心点の輝度IC)を低くする。一方、図13(B)のように、VPとP1との高度差係数αが小さい場合には、反射像オブジェクト50の幅(水平方向のサイズW)を細くすると共に、反射像オブジェクト50の輝度(中心点の輝度IC)を高くする。
【0092】
図13(A)に示すように、入射角θが小さいと、光源位置P0とマップ30との距離及び位置P1とマップ30との距離は長くなり、高度差係数αは大きくなる。また図13(B)に示すように、入射角θが大きいと、P0とマップ30との距離及びP1とマップ30との距離は短くなり、αは小さくなる。従って、入射角θが小さいということはαが大きいこととほぼ等価となり、入射角θが大きいということはαが小さいこととほぼ等価になる。
【0093】
そこで、本実施形態では、入射角θを直接求めることなく、高度差係数αを用いて反射像オブジェクト50の幅や輝度を制御している。このようにすれば、図9(A)、(B)に示すような光の入射角θに応じた反射領域の幅や輝度の制御を、入射角θを直接求めることなく実現できるようになる。従って、入射角θを求める処理を省くことができ、処理負担の軽減化を図れる。
【0094】
また高度差係数αを用いて反射像オブジェクト50の輝度を制御すれば、図14に示すように、視点位置VPとマップ30との距離が遠く離れた場合に反射像オブジェクト50の輝度を低くする処理も高度差係数αを用いて実現できるようになる。高度差係数αが大きくなることは、VPとマップ30との距離が大きくなることとほぼ等価になるからである。
【0095】
即ち図9(A)、(B)では、入射角θに基づいて、反射領域の輝度を制御し、図10(B)では、視点位置VPとマップ30との距離に基づいて、反射領域の輝度を制御している。従って、反射領域の輝度を制御するパラメータが2つになってしまい、処理が煩雑化する。
【0096】
これに対して、高度差係数αを用いれば、図13(A)、(B)の場合でも図14の場合でも、同じ高度差係数αを用いて反射像オブジェクト50の輝度を制御できるようになる。従って、図9(A)、(B)、図10(B)のように反射領域の輝度の制御に2つのパラメータ(入射角θと、視点位置VP、マップ30間の距離)を使用する場合に比べて、処理負担の軽減化を図れる。
【0097】
なお、高度差係数αに基づいて反射像オブジェクト50の幅を制御する場合には、αに上限値を設けることが望ましい(例えばαが1.0より大きくならないようにする)。
【0098】
また本実施形態では、反射像オブジェクトの輪郭や輝度分布が、時間経過に伴い揺らぐようにしている。
【0099】
即ち図15(A)に示すように、幅や輝度が決定した反射像オブジェクト50の中心点PCや輪郭点PL0〜PL11に、時間経過に伴い変化する揺らぎを加える。そして、このように中心点PCや輪郭点PL0〜PL11に揺らぎが加えられた反射像オブジェクト50を、図2のフレームバッファ144に重ね書きする。
【0100】
時間経過に伴い変化する揺らぎを輪郭点PL0〜PL11に加えることで、図15(B)のように、反射像オブジェクト50の輪郭が揺らぐようになる。これにより、反射像オブジェクト50の境界が目立ってしまう事態を防止できるようになる。即ち図3(A)、(B)、図4(A)、(B)のゲーム画像において、反射領域20の輪郭をぼやかすことが可能になり、プレーヤが画像に不自然さを感じる事態を防止できるようになる。
【0101】
また時間経過に伴い変化する揺らぎを中心点PCに加えることで、反射像オブジェクト50の輝度分布を変化させることが可能になる。輝度が最も高い中心点PCの位置が時間経過に伴い変化するようになるからである。このように反射像オブジェクト50の輝度分布を変化させることで、海面のきらめきを更にリアルに表現できるようになる。
【0102】
即ち、図8(A)、(B)の手法では、視点位置VPが移動している場合には、同じ場所のドットがきらめいたり、きらめかなかったりすることにより、海面のきらめきのリアルな表現が可能になる。しかしながら、視点位置VPが静止している場合には、図8(A)、(B)の手法では、きらめきのリアルな表現を今一つ達成できない。
【0103】
これに対して図15(A)、(B)のように、反射像オブジェクト50の中心点PCに揺らぎを加えて輝度分布を時間経過に伴い変化させれば、視点位置VPが静止している場合にも、海面がきらめいて見えるようになり、海面のきらめきのリアルな表現が可能となる。
【0104】
3.本実施形態の処理
次に、本実施形態の詳細な処理例について図16、図17のフローチャートを用いて説明する。
【0105】
まず、図2のマップ画像情報記憶部(テクスチャ記憶部)142に記憶されるマップ画像情報等に基づいて、フレーム画像を生成し、フレームバッファ144に書き込む(ステップS1)。この際に本実施形態では、反射許可フラグRFもフレームバッファ144に書き込まれる。このようにすれば図8(A)、(B)で説明したように、透視変換による画像情報のデフォルメを利用したきらめきのリアルな表現が可能になる。
【0106】
次に、図11で説明したように、マップ30の面に関して光源位置P0と面対称の位置P1を求める(ステップS2)。そして、スクリーン距離SD(画角)に基づいて、反射像オブジェクトの奥行き方向のサイズH=2×SD×tanβを求める(ステップS3)。なお、βは定数であり例えば10度となる。
【0107】
次に、図13(A)、(B)で説明したように、奥行き方向のサイズHと高度差係数αに基づいて、反射像オブジェクト50の水平方向のサイズW=H×αを求める(ステップS4)。なお、水平方向のサイズWを求める場合には高度差係数αに対してリミット値が設定され、αは0.3〜1.0の値になる(α=1.0の場合には反射像オブジェクト50は真円になる)。
【0108】
次に、図11で説明したように、位置P1をスクリーン42に透視変換した位置P2を求める(ステップS5)。
【0109】
次に、位置P2と反射像オブジェクト50のサイズ(H、或いはH及びW)に基づいて、反射像オブジェクト50がスクリーン外に出たか否か(図10(A)参照)を判断する(図17のステップS6)。そしてスクリーン外に出た場合には、以降のステップS7〜S13の処理(反射演算処理)を省略する。一方、スクリーン内にある場合には、図13(A)、(B)、図14で説明しように、高度差係数αに基づいて、反射像オブジェクト50の中心点PCの輝度ICを変化させる(ステップS7)。即ち高度差係数αが小さい場合には輝度ICを高くし、αが大きい場合には輝度ICを低くする。
【0110】
次に、図12(A)、(B)で説明したように、視点のZ軸回転に合わせて、反射像オブジェクト50を回転させる(ステップS8)。そして、図15(A)、(B)で説明しように、反射像オブジェクト50の輪郭点PL0〜PL11や中心点PCに揺らぎを加える(ステップS9)。
【0111】
次に、処理対象となるドットの反射許可フラグRFがオンになっているか否かを判断する(ステップS10)。そして、RFがオフの場合には次のドットに対する処理に移行する(ステップS13)。即ち図5に示すように、陸地においては、ほとんどの場合、反射許可フラグRFがオフ(RF=0)になっているために、次のドットに対する処理に移行する。
【0112】
RFがオン(RF=1)になっていると判断された場合には、そのドットに対する反射演算処理(反射像オブジェクトをフレーム画像に重ね書きする処理)を行う(ステップS11)。即ち、図5で説明したように、海においてはRF=1となるドットが点在しており、このドットに対しては反射演算処理が行われる。そして、反射像オブジェクト50の全てのドットに対する処理が終了したか否かを判断し(ステップS12)、終了していない場合には次のドットに対する処理に移行する(ステップS13)。
【0113】
4.ハードウェア構成
次に、本実施形態を実現できるハードウェアの構成の一例について図18を用いて説明する。同図に示す装置では、CPU1000、ROM1002、RAM1004、情報記憶媒体1006、音生成IC1008、画像生成IC1010、I/Oポート1012、1014が、システムバス1016により相互にデータ送受信可能に接続されている。そして前記画像生成IC1010にはディスプレイ1018が接続され、音生成IC1008にはスピーカ1020が接続され、I/Oポート1012にはコントロール装置1022が接続され、I/Oポート1014には通信装置1024が接続されている。
【0114】
情報記憶媒体1006は、プログラム、表示物を表現するための画像データ、音データ等が主に格納されるものである。例えば家庭用ゲーム装置ではゲームプログラム等を格納する情報記憶媒体としてCD−ROM、ゲームカセット、DVD等が用いられる。また業務用ゲーム装置ではROM等のメモリが用いられ、この場合には情報記憶媒体1006はROM1002になる。
【0115】
コントロール装置1022はゲームコントローラ、操作パネル等に相当するものであり、プレーヤがゲーム進行に応じて行う判断の結果を装置本体に入力するための装置である。
【0116】
情報記憶媒体1006に格納されるプログラム、ROM1002に格納されるシステムプログラム(装置本体の初期化情報等)、コントロール装置1022によって入力される信号等に従って、CPU1000は装置全体の制御や各種データ処理を行う。RAM1004はこのCPU1000の作業領域等として用いられる記憶手段であり、情報記憶媒体1006やROM1002の所与の内容、あるいはCPU1000の演算結果等が格納される。また本実施形態を実現するための論理的な構成を持つデータ構造は、このRAM又は情報記憶媒体上に構築されることになる。
【0117】
更に、この種の装置には音生成IC1008と画像生成IC1010とが設けられていてゲーム音やゲーム画像の好適な出力が行えるようになっている。音生成IC1008は情報記憶媒体1006やROM1002に記憶される情報に基づいて効果音やバックグラウンド音楽等のゲーム音を生成する集積回路であり、生成されたゲーム音はスピーカ1020によって出力される。また、画像生成IC1010は、RAM1004、ROM1002、情報記憶媒体1006等から送られる画像情報に基づいてディスプレイ1018に出力するための画素情報を生成する集積回路である。なおディスプレイ1018として、いわゆるヘッドマウントディスプレイ(HMD)と呼ばれるものを使用することもできる。
【0118】
また、通信装置1024はゲーム装置内部で利用される各種の情報を外部とやりとりするものであり、他のゲーム装置と接続されてゲームプログラムに応じた所与の情報を送受したり、通信回線を介してゲームプログラム等の情報を送受することなどに利用される。
【0119】
そして図1〜図17で説明した種々の処理は、プログラムやデータなどの情報を格納した情報記憶媒体1006、この情報記憶媒体1006からの情報等に基づいて動作するCPU1000、画像生成IC1010、或いは音生成IC1008等によって実現される。なお画像生成IC1010、音生成IC1008等で行われる処理は、CPU1000あるいは汎用のDSP等によりソフトウェア的に行ってもよい。
【0120】
図19(A)に、本実施形態を業務用ゲーム装置に適用した場合の例を示す。プレーヤは、ディスプレイ1100上に映し出されたゲーム画像を見ながら、レバー1102、ボタン1104等を操作してゲームを楽しむ。装置に内蔵されるシステムボード(サーキットボード)1106には、CPU、画像生成IC、音生成IC等が実装される。そして、(1)光源からの光の反射を表現するための反射演算処理を許可するか否かを示す反射許可フラグがマップの各ドットに対して設定されるマップ画像情報を記憶するための手段、(2)光源位置と視点位置とに基づいて、反射領域を設定するための手段、(3)反射領域において反射許可フラグがオンになっているドットに対して反射演算処理を行うための手段、(4)マップ面に関して光源位置と面対称の第1の位置を求め、第1の位置をスクリーンに透視変換した第2の位置に反射像オブジェクトを設定するための手段、(5)反射像オブジェクトを、マップを含む表示物をスクリーンに透視変換することにより得られるフレーム画像に対して重ね書きすることで、光源からの光の反射を表現するための反射演算処理を行うための手段等を実現するための情報は、システムボード1106上の情報記憶媒体である半導体メモリ1108に格納される。以下、この情報を格納情報と呼ぶ。
【0121】
図19(B)に、本実施形態を家庭用のゲーム装置に適用した場合の例を示す。プレーヤはディスプレイ1200に映し出されたゲーム画像を見ながら、ゲームコントローラ1202、1204を操作してゲームを楽しむ。この場合、上記格納情報は、本体装置に着脱自在な情報記憶媒体であるCD−ROM1206、メモリーカード1208、1209等に格納されている。
【0122】
図19(C)に、ホスト装置1300と、このホスト装置1300と通信回線(LANのような小規模ネットワークや、インターネットのような広域ネットワーク)1302を介して接続される端末1304-1〜1304-nとを含むシステムに本実施形態を適用した場合の例を示す。この場合、上記格納情報は、例えばホスト装置1300が制御可能な磁気ディスク装置、磁気テープ装置、半導体メモリ等の情報記憶媒体1306に格納されている。端末1304-1〜1304-nが、CPU、画像生成IC、音処理ICを有し、スタンドアロンでゲーム画像、ゲーム音を生成できるものである場合には、ホスト装置1300からは、ゲーム画像、ゲーム音を生成するためのゲームプログラム等が端末1304-1〜1304-nに配送される。一方、スタンドアロンで生成できない場合には、ホスト装置1300がゲーム画像、ゲーム音を生成し、これを端末1304-1〜1304-nに伝送し端末において出力することになる。
【0123】
なお、図19(C)の構成の場合に、本発明の処理を、ホスト装置と端末とで(サーバーを設ける場合にはホスト装置とサーバーと端末とで)分散して処理するようにしてもよい。また、本発明を実現するための上記格納情報を、ホスト装置の情報記憶媒体と端末の情報記憶媒体(或いはホスト装置の情報記憶媒体とサーバの情報記憶媒体と端末の情報記憶媒体)に分散して格納するようにしてもよい。
【0124】
また通信回線に接続する端末は、家庭用ゲーム装置であってもよいし業務用ゲーム装置であってもよい。そして、業務用ゲーム装置を通信回線に接続する場合には、業務用ゲーム装置との間で情報のやり取りが可能であると共に家庭用ゲーム装置との間でも情報のやり取りが可能な携帯型情報記憶装置(メモリーカード、PDA、携帯型ゲーム装置)を用いることが望ましい。
【0125】
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。
【0126】
例えば、反射許可フラグを設定する手法は図7で説明したものに限定されるものではない。
【0127】
また反射領域は、オブジェクト空間内に設定してもよいし(例えば図11の反射像オブジェクト50’)、スクリーン上に設定してもよい(反射像オブジェクト50)。
【0128】
また反射演算処理は、図12(A)、(B)、(C)で説明したような半透明加算処理には限定されず、少なくとも光源からの光の反射を表現できる演算処理であればよい。
【0129】
また本発明では、図8(A)、(B)で説明したように、フレーム画像がフレームバッファに書き込まれる際にフレームバッファの各ドットに対して反射許可フラグを書き込むことが特に望ましいが、本発明はこれに限定されない。
【0130】
また第2の位置に反射像オブジェクトを設定し、この反射像オブジェクトをフレーム画像に重ね書きすることで反射演算処理を実現する発明では、反射許可フラグをマップの各ドットに設定することが特に望ましいが、このような反射許可フラグを利用しないことも可能である。
【0131】
また本発明は戦闘機ゲーム以外にも種々のゲーム(戦闘機以外の飛行機のゲーム、宇宙船ゲーム、競争ゲーム、格闘ゲーム、ロボット対戦ゲーム、スポーツゲーム、シューティングゲーム、ロールプレイングゲーム等)に適用できる。
【0132】
また本発明は、業務用ゲーム装置、家庭用ゲーム装置、多数のプレーヤが参加する大型アトラクション装置、シミュレータ、マルチメディア端末、画像生成装置、ゲーム画像を生成するシステム基板等の種々のゲーム装置に適用できる。
【図面の簡単な説明】
【図1】図1(A)、(B)は、水面のきらめきを表現する第1、第2の手法について説明するための図である。
【図2】本実施形態のゲーム装置のブロック図の例である。
【図3】図3(A)、(B)は、本実施形態により生成されるゲーム画像の例を示す図である。
【図4】図4(A)、(B)も、本実施形態により生成されるゲーム画像の例を示す図である。
【図5】マップの各ドットに対して設定された反射許可フラグを用いて反射演算処理を行う手法について説明するための図である。
【図6】陸地では、ほぼ全面的にRFを0にし、海では、RF=1となるドットを点在させる手法について説明するための図である。
【図7】マップの各ドットに対して反射許可フラグを設定する手法の具体例について説明するための図である。
【図8】図8(A)、(B)は、フレーム画像をフレームバッファに書き込む際にフレームバッファの各ドットに対して反射許可フラグも書き込む手法について説明するための図である。
【図9】図9(A)、(B)は、光源からの光の入射角に応じて、反射領域の幅や輝度を制御する手法について説明するための図である。
【図10】図10(A)、(B)は、スクリーンの外に反射領域が出た場合に反射演算処理を省略する手法や、視点位置とマップとの距離が遠く離れた場合に反射領域の輝度を低くする手法について説明するための
【図11】スクリーン42の位置P2に設定した反射像オブジェクトをフレーム画像に重ね書きすることで反射演算処理を実現する手法について説明するための図である。
【図12】図12(A)、(B)、(C)は、半透明加算処理により反射演算処理を実現する手法について説明するための図である。
【図13】図13(A)、(B)は、高度差係数αに基づいて、反射像オブジェクトの幅や輝度を制御する手法について説明するための図である。
【図14】高度差係数αに基づいて、反射像オブジェクトの輝度を制御する手法について説明するための図である。
【図15】図15(A)、(B)は、反射像オブジェクトの中心点や輪郭点に、時間経過に伴い変化する揺らぎを加える手法について説明するための図である。
【図16】本実施形態の詳細な処理例を示すフローチャートの一例である。
【図17】本実施形態の詳細な処理例を示すフローチャートの一例である。
【図18】本実施形態を実現できるハードウェアの構成の一例を示す図である。
【図19】図19(A)、(B)、(C)は、本実施形態が適用される種々の形態の装置の例を示す図である。
【符号の説明】
18 光源(太陽)
20 反射領域
22 海
24 陸地
26 池
28 ビル
30 マップ
32 陸面テクスチャ
34 パレット
36 海面テクスチャ
38 パレット
40 フレーム画像
42 スクリーン
50、50’ 反射像オブジェクト
100 処理部
110 ゲーム演算部
112 移動体演算部
114 視点制御部
116 反射領域設定部
118 反射演算処理部
130 操作部
140 記憶部
142 マップ画像情報記憶部
144 フレームバッファ
150 情報記憶媒体
160 画像生成部
162 表示部
170 音生成部
172 音出力部
174 通信部
176 I/F部
180 メモリーカード(又はPDA)

Claims (8)

  1. 画像を生成するためのゲーム装置であって、
    3次元空間に、光源と、マップ面と、視点とを設定する手段と、
    前記マップ面に関して光源位置と面対称となる前記3次元空間上の特定位置を算出する手段と、
    視点位置に応じて前記3次元空間に設定されるスクリーンに前記特定位置を透視変換した前記スクリーン上のピクセルを算出する手段と、
    算出された前記ピクセルの位置変化に応じて、前記スクリーン上における光源の反射像の位置を変化させる手段と、
    前記3次元空間における前記マップ面を前記スクリーンに透視変換することにより得られる画像と、前記反射像の画像とを合成して、光源からの光の反射を表現する反射演算を行う反射演算手段と、
    を含むことを特徴とするゲーム装置。
  2. 請求項において、
    前記マップ面を基準とする前記視点位置の高さ前記マップ面を基準とする前記特定位置の高さとに応じて変化する高度差情報に基づいて、前記反射像の幅及び前記反射像の輝度の少なくとも一方を制御する反射像制御手段を更に含むことを特徴とするゲーム装置。
  3. 請求項1又は2において、
    前記反射像の輪郭点を変更することによって、前記反射像の輪郭を揺らがせる処理、及び、前記反射像の中心点を変更することによって、前記反射像の輝度分布を揺らがせる処理の少なくとも一方を行う揺らぎ処理手段更に含むことを特徴とするゲーム装置。
  4. 請求項において、
    前記揺らぎ処理手段が、
    時間経過に伴い前記反射像の輪郭点を変更することによって、前記反射像の輪郭を揺らがせる処理、及び、時間経過に伴い前記反射像の中心点を変更することによって、前記反射像の輝度分布を揺らがせる処理の少なくとも一方を行うことを特徴とするゲーム装置。
  5. 画像を生成するためのプログラムを記憶したコンピュータ読み取り可能な情報記憶媒体であって、
    3次元空間に、光源と、マップ面と、視点とを設定する手段と、
    前記マップ面に関して光源位置と面対称となる前記3次元空間上の特定位置を算出する手段と、
    視点位置に応じて前記3次元空間に設定されるスクリーンに前記特定位置を透視変換した前記スクリーン上のピクセルを算出する手段と、
    算出された前記ピクセルの位置変化に応じて、前記スクリーン上における光源の反射像の位置を変化させる手段と、
    前記3次元空間における前記マップ面を前記スクリーンに透視変換することにより得られる画像と、前記反射像の画像とを合成して、光源からの光の反射を表現する反射演算を行う反射演算手段として、
    コンピュータを機能させるプログラムを記憶したことを特徴とする情報記憶媒体。
  6. 請求項において、
    前記マップ面を基準とする前記視点位置の高さ前記マップ面を基準とする前記特定位置の高さとに応じて変化する高度差情報に基づいて、前記反射像の幅及び前記反射像の輝度の少なくとも一方を制御する反射像制御手段として、コンピュータを更に機能させるプログラムを記憶したことを特徴とする情報記憶媒体。
  7. 請求項5又は6において、
    前記反射像の輪郭点を変更することによって、前記反射像の輪郭を揺らがせる処理、及び、前記反射像の中心点を変更することによって、前記反射像の輝度分布を揺らがせる処理の少なくとも一方を行う揺らぎ処理手段として、コンピュータを更に機能させるプログラムを記憶したことを特徴とする情報記憶媒体。
  8. 請求項において、
    前記揺らぎ処理手段が、
    時間経過に伴い前記反射像の輪郭点を変更することによって、前記反射像の輪郭を揺らがせる処理、及び、時間経過に伴い前記反射像の中心点を変更することによって、前記反射像の輝度分布を揺らがせる処理の少なくとも一方を行うことを特徴とする情報記憶媒体。
JP2003032158A 2003-02-10 2003-02-10 ゲーム装置及び情報記憶媒体 Expired - Fee Related JP4001556B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003032158A JP4001556B2 (ja) 2003-02-10 2003-02-10 ゲーム装置及び情報記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003032158A JP4001556B2 (ja) 2003-02-10 2003-02-10 ゲーム装置及び情報記憶媒体

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP37736898A Division JP3420957B2 (ja) 1998-12-29 1998-12-29 ゲーム装置及び情報記憶媒体

Publications (2)

Publication Number Publication Date
JP2003275460A JP2003275460A (ja) 2003-09-30
JP4001556B2 true JP4001556B2 (ja) 2007-10-31

Family

ID=29208424

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003032158A Expired - Fee Related JP4001556B2 (ja) 2003-02-10 2003-02-10 ゲーム装置及び情報記憶媒体

Country Status (1)

Country Link
JP (1) JP4001556B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006318388A (ja) * 2005-05-16 2006-11-24 Namco Bandai Games Inc プログラム、情報記憶媒体及び画像生成システム
JP2007098051A (ja) * 2005-10-07 2007-04-19 Samii Kk 遊技機
JP4824514B2 (ja) * 2006-09-21 2011-11-30 株式会社バンダイナムコゲームス プログラム、情報記憶媒体及び画像生成システム
JP5087453B2 (ja) * 2008-03-31 2012-12-05 株式会社カプコン プログラム、記憶媒体およびコンピュータ装置
JP5321385B2 (ja) * 2009-09-18 2013-10-23 株式会社セガ 画像処理プログラムおよびコンピュータ読み取り可能な記録媒体

Also Published As

Publication number Publication date
JP2003275460A (ja) 2003-09-30

Similar Documents

Publication Publication Date Title
US6850242B1 (en) Image generating system and program
JP3420957B2 (ja) ゲーム装置及び情報記憶媒体
JP4610748B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
US6828969B2 (en) Game system, program and image generating method
JP2002063596A (ja) ゲームシステム、プログラム及び情報記憶媒体
JP4001556B2 (ja) ゲーム装置及び情報記憶媒体
JP4229319B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2006323512A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2001143099A (ja) 画像生成システム及び情報記憶媒体
JP4827250B2 (ja) プログラム、情報記憶媒体及び画像生成システム
JP4721476B2 (ja) 画像生成システム及び情報記憶媒体
JP2005209217A (ja) ゲームシステム及び情報記憶媒体
JP4245356B2 (ja) ゲームシステム及び情報記憶媒体
JP4577968B2 (ja) ゲームシステム及び情報記憶媒体
JP4574058B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2010033299A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP3269813B2 (ja) 画像生成システム及び情報記憶媒体
JP2002063591A (ja) ゲームシステム、プログラム及び情報記憶媒体
JP2002373348A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2005275795A (ja) プログラム、情報記憶媒体及び画像生成システム
JP4450535B2 (ja) 画像生成システム及び情報記憶媒体
JP3538392B2 (ja) ゲームシステム、プログラム及び情報記憶媒体
JP2010033295A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2007164736A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2003162734A (ja) ゲームシステム及び情報記憶媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051221

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061213

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070207

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070404

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070604

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: 20070808

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070814

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100824

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100824

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100824

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110824

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110824

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120824

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120824

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130824

Year of fee payment: 6

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

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

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

LAPS Cancellation because of no payment of annual fees