JP4088169B2 - Image generating apparatus and information storage medium - Google Patents

Image generating apparatus and information storage medium Download PDF

Info

Publication number
JP4088169B2
JP4088169B2 JP2003031450A JP2003031450A JP4088169B2 JP 4088169 B2 JP4088169 B2 JP 4088169B2 JP 2003031450 A JP2003031450 A JP 2003031450A JP 2003031450 A JP2003031450 A JP 2003031450A JP 4088169 B2 JP4088169 B2 JP 4088169B2
Authority
JP
Japan
Prior art keywords
map
map object
coordinate system
data
oblique
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
Application number
JP2003031450A
Other languages
Japanese (ja)
Other versions
JP2003263654A (en
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 JP2003031450A priority Critical patent/JP4088169B2/en
Publication of JP2003263654A publication Critical patent/JP2003263654A/en
Application granted granted Critical
Publication of JP4088169B2 publication Critical patent/JP4088169B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、オブジェクト空間内の所与の視点での画像を生成する画像生成装置及び情報記憶媒体に関する。
【0002】
【背景技術及び発明が解決しようとする課題】
従来より、仮想的な3次元空間であるオブジェクト空間内に複数のオブジェクトを配置し、所与の視点から見える画像を生成する画像生成装置が知られており、いわゆる仮想現実を体験できるものとして人気が高い。
【0003】
ドライビングゲームを楽しむことができる画像生成装置を例にとれば、プレーヤは、自身が操作する車などの移動体をマップ上で走行させてゲームを楽しむ。このようなゲームではそのリアル感や面白さは、コースなどが配置されるマップの形状の良し悪しに強く依存する。したがって、ゲームのリアル感や面白さが高められるように、複雑で変化に富んだマップを用意し表示することが望ましい。
【0004】
特に、プレーヤの操作する移動体が上り坂や下り坂を走行する場合には、実際に上り坂や下り坂を走行しているような感覚をプレーヤに与えることができるようすることが肝要である。
【0005】
一方、プレーヤのリアル感を高めることができるマップであっても、マップのデータの記憶に要する記憶容量が増えてしまうと、画像生成装置の高コスト化を招く。
【0006】
本発明は、以上のような課題を解決するためになされたものであり、その目的とするところは、少ない記憶容量でリアルなマップの表示が可能な画像生成装置及び情報記憶媒体を提供することにある。
【0007】
【課題を解決するための手段】
上記課題を解決するために、本発明は、オブジェクト空間内の所与の視点での画像を生成する画像生成装置であって、オブジェクト空間のマップを構成するマップオブジェクトのデータを記憶する手段と、データが記憶されている所与のマップオブジェクトを、直交座標系から斜交座標系への斜交座標変換により変形するための処理を行う手段と、変形により前記所与のマップオブジェクトから得られた複数のマップオブジェクトの画像を含む画像であって、オブジェクト空間内の所与の視点での画像を生成する手段とを含むことを特徴とする。
【0008】
本発明によれば、記憶手段に記憶される所与のマップオブジェクトが、斜交座標変換により変形される。そしてこの変形により得られた複数のマップオブジェクトを含む画像が生成される。したがって、本発明によれば、記憶手段に1つのマップオブジェクトのデータを記憶しておくだけで、斜交座標変換により変形された複数のマップオブジェクトを表示することが可能となる。この結果、少ない記憶容量でリアルな画像を生成できるようになる。またマップの設計の負担の軽減やマップの設計に要する開発期間の短縮化を図ることも可能となる。
【0009】
また本発明は、マップオブジェクトが配置されるエリアの傾斜角度に応じて、前記直交座標系の座標軸と前記斜交座標系の斜交軸とのなす角度が変化するように、マップオブジェクトを変形することを特徴とする。このようにすることで、各エリアに、その傾斜角度に対応した最適なマップオブジェクトを配置できるようになる。
【0010】
また本発明は、マップオブジェクトを構成する所与のパーツが鉛直方向に向くように、マップオブジェクトを変形することを特徴とする。このようにすることで、例えば下り坂を下っているのか上り坂を上っているのかをプレーヤに感じさせることが可能となり、プレーヤの仮想現実感を向上できる。
【0011】
また本発明は、前記斜交座標系の少なくとも1つの斜交軸に沿った方向でマップオブジェクトがスケーリングされるように、マップオブジェクトを変形することを特徴とする。このようにすることで、マップオブジェクトの変形のバラエティ度を更に増すことが可能になる。
【0012】
また本発明は、マップオブジェクトを配置するエリアの長さに応じて、前記斜交座標系の少なくとも1つの斜交軸に沿った方向でマップオブジェクトがスケーリングされるように、マップオブジェクトを変形することを特徴とする。このようにすることで、各エリアに、その長さに対応した最適なマップオブジェクトを配置できるようになる。
【0013】
また本発明は、マップオブジェクトが、マップ上のコースを区切るためのオブジェクトであることを特徴とする。このようなコースを区切るオブジェクトを変形することで、下り坂や上り坂を走行している感覚を、プレーヤに更に明確に感じさせることが可能となる。
【0014】
【発明の実施の形態】
以下、本発明の好適な実施形態について図面を用いて説明する。なお以下では、本発明を自転車ゲームに適用した場合を例にとり説明するが、本発明が適用されるものはこれに限られるものではない。
【0015】
図1に本実施形態の画像生成装置を業務用のゲーム装置に適用した場合の外観図の一例を示す。
【0016】
ここで、ライディング筐体16は、実際の自転車を模して作られたものであり、図示しないプレーヤはこのライディング筐体16のサドル17に座る。そしてディスプレイ18には、移動体20(搭乗体である自転車及び自転車に搭乗するキャラクタを含む)や移動体20が走るコースや周囲の風景が表示される。プレーヤは、この画像を見ながら、ハンドル32を左右に操作することで、ディスプレイ18に映し出される移動体20の進む方向を決める。またペダル30をA1に示すように漕ぐことで、コース進行方向に移動体20を進める。
【0017】
図2に、本実施形態の画像生成装置の機能ブロック図の一例を示す。
【0018】
ここで操作部10は、プレーヤが、図1のハンドル32を操作したりペダル30を漕ぐことで操作データを入力するためのものであり、操作部10にて得られた操作データは処理部100に入力される。
【0019】
処理部100は、上記操作データと所与のプログラムなどに基づいて、オブジェクト空間に表示物を配置する処理や、このオブジェクト空間の所与の視点での画像を生成する処理を行うものである。この処理部100の機能は、CPU(CISC型、RISC型)、DSP、カスタム(ゲートアレイ等)ICなどのハードウェアにより実現できる。
【0020】
情報記憶媒体190は、プログラムやデータを記憶するものである。この情報記憶媒体190の機能は、CD−ROM、ゲームカセット、ICカード、MO、FD、DVD、ハードディスク、メモリなどのハードウェアにより実現できる。処理部100は、この情報記憶媒体190からのプログラム、データに基づいて種々の処理を行うことになる。
【0021】
処理部100は、ゲーム演算部110とオブジェクトデータ記憶部120と画像生成部150を含む。
【0022】
ここでゲーム演算部110は、ゲームモードの設定処理、ゲームの進行処理、移動体の位置や方向を決める処理、視点位置や視線方向を決める処理、オブジェクト空間へオブジェクトを配置する処理等を行う。
【0023】
オブジェクトデータ記憶部120は、オブジェクト空間内に配置される移動体オブジェクトやマップオブジェクトなどの種々のオブジェクトのデータ(オブジェクトを構成するポリゴン(プリミティブ面)の頂点位置データ、テクスチャデータ、オブジェクト番号等)を記憶するものである。このオブジェクトデータは、初期状態では情報記憶媒体190に格納されており、電源投入後等に情報記憶媒体190からオブジェクトデータ記憶部120に転送される。
【0024】
また画像生成部150は、ゲーム演算部110により設定されたオブジェクト空間での所与の視点での画像を生成する処理を行う。画像生成部150により生成された画像は表示部12において表示される。
【0025】
ゲーム演算部110は移動体演算部112とオブジェクト変形部116を含む。
【0026】
ここで移動体演算部112は、操作部10から入力される操作データや所与のプログラムに基づき、プレーヤが操作する移動体や所与の制御プログラム(コンピュータ)により動きが制御される移動体を、オブジェクト空間内のコース上で移動させる演算を行う。より具体的には、移動体の位置や方向を例えば1フレーム(1/60秒)毎に求める演算を行う。
【0027】
例えば(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)
オブジェクト変形部116は、オブジェクトデータ記憶部120に記憶される所与の1つのオブジェクトのデータに基づいて、この1つのオブジェクトを直交座標系から斜交座標系への斜交座標変換により変形するための処理を行う。
【0028】
さて3次元ゲームにおいては、図3(A)に示すようなマップ38がオブジェクト空間に設けられる。このマップ38は、コース40、トンネル42、台地44、山46などを表現するために複数のマップオブジェクトにより構成される。これらのマップオブジェクトは、ポリゴンや曲面などの複数のプリミティブ面により構成される。そして画像生成装置が出力する画像のリアル感や品質を高めるためには、マップ38の形状を、より複雑で変化に富んだものにすることが望ましい。例えばプレーヤは、所与の操作手段により自転車などの移動体20をオブジェクト空間内のコース40上で走行させてゲームを楽しむ。したがって、例えばコース40に高低差を持たせてやることで、実際に自転車で走行しているという感覚をプレーヤに与えることができ、仮想現実感の向上を図れる。
【0029】
図3(B)に、マップ38を構成するマップオブジェクトの一例として、コース40を区切るために使用されるマップオブジェクト50-1〜50-6を示す。このようなマップオブジェクト50-1〜50-6をコース40の両側に配置することで、移動体20がコースアウトすることを防ぐことができる。また、プレーヤにコース40の形状を認識させることができる。
【0030】
3次元ゲームにおいては、仮想現実感の向上のために、前述のようにコース40は一般的に高低差を有しており起伏に富んでいる。したがってマップオブジェクト50は、図4のB1に示すように平地に配置されたり、B2に示すように下り坂に配置されたりする。B2のようにマップオブジェクト50を下り坂に配置する場合には、下り坂の傾斜角度θに応じた回転行列でマップオブジェクト50を座標変換する。そしてプレーヤは、移動体20に追従する(あるいは移動体20の位置に一致する)視点60からの画像を見ることになる。
【0031】
しかしながら図4のB2に示すようにマップオブジェクト50を配置すると、下り坂を走行しているという感覚をプレーヤに十分伝えることができない。即ち一般的にプレーヤは、鉛直方向に向くものや水平方向に向くものと自分との相対関係を感じ取ることで、下り坂なのか上り坂なのかを判断している。しかしながら図4のB2に示すようにマップオブジェクト50を配置すると、平地においては鉛直方向に向いていたマップオブジェクト50のパーツ(支柱)52が、鉛直方向に向かなくなる。言い換えれば、平地においても下り坂においてもパーツ50は自分(コース40)に対して垂直方向に向いてしまうため、平地を走行しているのか下り坂を走行しているのかをプレーヤは判断できなくなる。この結果、下り坂を走行しているという感覚が損なわれ、プレーヤが感じる仮想現実感が低下する。
【0032】
そこで本実施形態では、図5のC2、C3に示すように、マップオブジェクト50を、直交座標系から斜交座標系への斜交座標変換により変形してコース40上に配置している。このようにすることで、坂の傾斜角度θに依らずに、マップオブジェクト50のパーツ(支柱)52を常に鉛直方向に向けることができる。言い換えれば、パーツ52がコース40に対して向く角度が、坂の傾斜角度θに応じて変化するようになり、平地を走行しているのか下り坂を走行しているのかをプレーヤは判断できるようになる。この結果、下り坂を走行しているという感覚をプレーヤに与えることができ、プレーヤが感じる仮想現実感を大幅に向上できる。
【0033】
図6を用いて斜交座標変換の原理について説明する。なお図6では説明を簡単にするために2次元の場合の例を示している。斜交座標変換とは、直交座標系X、Yから斜交座標系X’、Y’への座標変換を行うことを言い、この座標変換は図6のE1に示すような行列により表すことができる。即ち、この斜交座標変換により下式(3)に示すような座標変換が行われる。
X’=D
Y’=DX+Y (3)
ここでD、Dを斜交座標変換パラメータと呼ぶ。D=1.0の場合にはX’とXは等しくなる。一方、例えばD=0.6の場合には、Xが1だけ増えるにつれてY’はYに対して0.6だけ増え、Xが1だけ減るにつれてY’はYに対して0.6だけ減ることになる。この変換により、長方形64を平行四辺形66に変換できる。
【0034】
そして本実施形態では、図5に示すように、コース40(マップオブジェクトが配置されるエリア)の傾斜角度θに応じて、直交座標系の座標軸Xと斜交座標系の斜交軸X’とのなす角度α(図6参照)を変化させている。即ち傾斜角度θが例えばθ1からθ2というように大きくなるにつれて角度αを大きくしている。このようにすることで、マップオブジェクト50のパーツ52を常に鉛直方向に向けることが可能になる。
【0035】
なお角度αの大きさは、斜交座標変換パラメータのDを変化させることで制御できる。即ち角度αを大きくしたい場合にはDを大きくすればよく、角度αを小さくしたい場合にはDを小さくすればよい。例えばマップオブジェクト50を平地に配置する場合にはD=0.0とすればよく、傾斜角度θが大きくなるにつれてDを大きくすればよい。
【0036】
図7(A)、(B)に本実施形態により生成されるゲーム画像の例を示す。プレーヤは、図2の操作部10を用いて移動体20を操作し、制御プログラムにより制御される移動体や、他のプレーヤが操作する移動体と競争をする。そして本実施形態では、コース40を区切るための区切りマップオブジェクト50がコース40上に配置されている。そしてマップオブジェクト50のパーツ52は、図7(A)のようにマップオブジェクト50が平地に配置されている場合にも、図7(B)のように下り坂に配置されている場合にも、常に鉛直方向に向いている。したがって、プレーヤは、このマップオブジェクト50の存在により、平地を走行しているのか下り坂(あるいは上り坂)を走行しているのかを感じ取ることができるようになる。これによりプレーヤの仮想現実感を大幅に向上できる。
【0037】
図7(A)、(B)に示すような画像を表現する他の手法として、図7(A)に示す形状のマップオブジェクト50と、図7(B)に示す形状のマップオブジェクト50を別々に予め用意しておく手法が考えられる。即ち形状の異なるマップオブジェクトのデータをすべてオブジェクトデータ記憶部120に記憶しておく手法である。
【0038】
しかしながら、この手法によると、傾斜角度に応じた多数のマップオブジェクトのデータをオブジェクトデータ記憶部120に記憶する必要がある。したがって、オブジェクトデータ記憶部120の記憶容量が増大化し、画像生成装置の高コスト化を招く。
【0039】
これに対して本実施形態によれば、傾斜角度に応じて必要になる複数のマップオブジェクトを、例えば直交座標系で記述されたマップオブジェクトを斜交座標変換により変形することで得ている。したがって、オブジェクトデータ記憶部120には、例えば直交座標系で記述された1つのマップオブジェクトを記憶するだけでよくなる。この結果、オブジェクトデータ記憶部120の記憶容量の増大化を防ぐことができ、画像生成装置の低コスト化を図れる。
【0040】
また本実施形態は、斜交座標系の少なくとも1つの斜交軸に沿った方向でマップオブジェクトがスケーリングされるように、マップオブジェクトを変形させるという特徴も有している。
【0041】
例えば図8(A)に示すように、コース40は複数のポリゴン(プリミティブ面)70-1〜70-5により構成されている。そしてポリゴンの長さは場所によって異なり、例えばポリゴン70-2の長さはL1であり、ポリゴン70-4の長さはL2(>L1)である。このように異なる長さのポリゴン上にマップオブジェクトを配置する場合に、その長さに応じて異なる形状のマップオブジェクトを予め用意するようにすると、オブジェクトデータ記憶部120の記憶容量が増大化してしまう。
【0042】
そこで本実施形態では、図8(A)のF1、F2に示すように、ポリゴン70-2、70-4の長さL1、L2(マップオブジェクトを配置するエリアの長さ)に応じて、斜交座標系の少なくとも1つの斜交軸に沿った方向でマップオブジェクトがスケーリングされるようにマップオブジェクト50を変形している。即ち図8(B)のF3、F4に示すように、例えば斜交軸X’に沿った方向でのスケーリングによりマップオブジェクト50を変形する。このようにすることで、ポリゴン70-2に配置するマップオブジェクトとポリゴン70-4に配置するマップオブジェクトを、1つのマップオブジェクトを変形することで得ることができるようになる。これにより、オブジェクトデータ記憶部120の記憶容量の増大化を防止できる。
【0043】
なお斜交軸X’の方向でのスケーリングは、F5に示す行列の斜交座標変換パラメータDを制御することで実現できる。例えばD=1.0の場合には、X’=Xとなりスケーリング率は1になる。一方、D=2.0とすれば、X’=2.0Xとなり斜交軸X’に沿った方向で2.0倍のスケーリング(拡大)が可能となり、D=0.5とすれば、X’=0.5Xとなり斜交軸X’に沿った方向で0.5倍のスケーリング(縮小)が可能となる。
【0044】
以上のように本実施形態によれば、斜交座標変換パラメータD、Dを制御してマップオブジェクトを変形することで、マップオブジェクトを配置するエリアの傾斜角度や長さに応じた種々の形状のマップオブジェクトを表示することが可能となる。これにより、オブジェクトデータ記憶部120の記憶容量の増大化を防ぎながら、下り坂や上り坂を走行しているという感覚をプレーヤに与えられるリアルな画像を提供できるようになる。
【0045】
次に本実施形態の詳細な処理例について、図9のフローチャートを用いて説明する。
【0046】
マップオブジェクトを表示する場合には、図2のオブジェクト変形部116が、まずオブジェクト表示パラメータを読み出す(ステップS1)。図10にオブジェクト表示パラメータの一例を示す。表示位置Pは、マップオブジェクトを表示する位置(ワールド座標系)を指定するものである。回転行列作成パラメータは、マップオブジェクトを回転させる回転行列を作成するためのパラメータである。斜交座標変換パラメータD、Dは、前述のように、直交座標系の座標軸と斜交座標系の斜交軸とのなす角度や、斜交軸上でのスケーリング率を制御するパラメータである。表示オブジェクト番号Nは、マップオブジェクトを特定するためのものである。この表示オブジェクト番号Nを用いることで、オブジェクトデータ記憶部120に記憶されているオブジェクトデータの中から使用するオブジェクトデータを指定できる。斜交座標変換フラグは、斜交座標変換を行って表示するオブジェクトか否かを指定するフラグである。
【0047】
次に、ステップS1で読み出されたオブジェクト表示パラメータの中の回転行列作成パラメータに基づいて回転行列Rを作成する(ステップS2)。
【0048】
次に、オブジェクト表示パラメータの中の斜交座標変換フラグに基づいて、斜交座標変換を行って表示するマップオブジェクトか否かを判断する(ステップS3)。
【0049】
ステップS3で、斜交座標変換を行わずに表示するマップオブジェクトと判断された場合には、回転行列R、表示位置P、表示オブジェクト番号Nに基づきマップオブジェクトを表示する処理を行う(ステップS4)。より具体的には、表示オブジェクト番号Nに基づいて、オブジェクトデータ記憶部120から、対応するマップオブジェクトのデータが読み出される。そして画像生成部150は、この読み出されたマップオブジェクトのデータと回転行列Rとに基づいて、マップオブジェクトを回転する座標変換を行う。そして回転されたマップオブジェクトを、表示位置Pで指定される位置に表示する。
【0050】
ステップS3で、斜交座標変換を行い表示するマップオブジェクトと判断された場合には、オブジェクト表示パラメータに含まれる斜交座標変換パラメータD、Dに基づいて斜交座標変換行列Dを作成する(ステップS5)。この斜交座標変換行列Dを用いることで下式(4)に示されるような直交座標系X、Y、Zから斜交座標系X’、Y’、Z’への座標変換が可能になる。
X’=D
Y’=DX+Y
Z’=Z (4)
なお上式(4)は上式(3)を3次元に拡張したものである。
【0051】
次に、ステップS2で得られた回転行列RとステップS5で得られた斜交座標変換行列Dとを乗算して、新たな行列Tを得る(ステップS6)。
【0052】
次に、回転行列T、表示位置P、表示オブジェクト番号Nに基づきマップオブジェクトを表示する処理を行う(ステップS7)。より具体的には、表示オブジェクト番号Nに基づいて、オブジェクトデータ記憶部120から、対応するマップオブジェクトのデータが読み出される。そして画像生成部150は、この読み出されたマップオブジェクトのデータと回転行列Tとに基づいて、マップオブジェクトを回転すると共に斜交座標変換する座標変換を行う。そして回転され斜交座標変換されたマップオブジェクトを、表示位置Pで指定される位置に表示する。
【0053】
以上のようにして、種々の傾斜角度や長さを有するオブジェクト空間内の各エリアに対して、変形した種々の形状のマップオブジェクトを配置することが可能になる。しかも、オブジェクトデータ記憶部120には、変形前の1つのマップオブジェクトのデータを記憶するだけで済むようになる。
【0054】
次に、本実施形態を実現できるハードウェアの構成の一例について図11を用いて説明する。同図に示す装置では、CPU1000、ROM1002、RAM1004、情報記憶媒体1006、音生成IC1008、画像生成IC1010、I/Oポート1012、1014が、システムバス1016により相互にデータ送受信可能に接続されている。そして前記画像生成IC1010にはディスプレイ1018が接続され、音生成IC1008にはスピーカ1020が接続され、I/Oポート1012にはコントロール装置1022が接続され、I/Oポート1014には通信装置1024が接続されている。
【0055】
情報記憶媒体1006は、プログラム、表示物を表現するための画像データ、音データ等が主に格納されるものである。例えば家庭用ゲーム装置ではゲームプログラム等を格納する情報記憶媒体としてCD−ROM、ゲームカセット、DVD等が用いられる。また業務用ゲーム装置ではROM等のメモリが用いられ、この場合には情報記憶媒体1006はROM1002になる。
【0056】
コントロール装置1022はゲームコントローラ、操作パネル等に相当するものであり、プレーヤがゲーム進行に応じて行う判断の結果を装置本体に入力するための装置である。
【0057】
情報記憶媒体1006に格納されるプログラム、ROM1002に格納されるシステムプログラム(装置本体の初期化情報等)、コントロール装置1022によって入力される信号等に従って、CPU1000は装置全体の制御や各種データ処理を行う。RAM1004はこのCPU1000の作業領域等として用いられる記憶手段であり、情報記憶媒体1006やROM1002の所与の内容、あるいはCPU1000の演算結果等が格納される。また本実施形態を実現するための論理的な構成を持つデータ構造(例えばオブジェクトデータやオブジェクト表示パラメータのデータ構造)は、このRAM又は情報記憶媒体上に構築されることになる。
【0058】
更に、この種の装置には音生成IC1008と画像生成IC1010とが設けられていてゲーム音やゲーム画像の好適な出力が行えるようになっている。音生成IC1008は情報記憶媒体1006やROM1002に記憶される情報に基づいて効果音やバックグラウンド音楽等のゲーム音を生成する集積回路であり、生成されたゲーム音はスピーカ1020によって出力される。また、画像生成IC1010は、RAM1004、ROM1002、情報記憶媒体1006等から送られる画像情報に基づいてディスプレイ1018に出力するための画素情報を生成する集積回路である。なおディスプレイ1018として、いわゆるヘッドマウントディスプレイ(HMD)と呼ばれるものを使用することもできる。
【0059】
また、通信装置1024はゲーム装置内部で利用される各種の情報を外部とやりとりするものであり、他のゲーム装置と接続されてゲームプログラムに応じた所与の情報を送受したり、通信回線を介してゲームプログラム等の情報を送受することなどに利用される。
【0060】
そして図1〜図8、図10で説明した種々の処理は、図9のフローチャートに示した処理等を行うプログラムを格納した情報記憶媒体1006と、該プログラムに従って動作するCPU1000、画像生成IC1010、音生成IC1008等によって実現される。なお画像生成IC1010、音生成IC1008等で行われる処理は、CPU1000あるいは汎用のDSP等によりソフトウェア的に行ってもよい。
【0061】
さて前述した図1は、本実施形態を業務用ゲーム装置に適用した場合の例を示すものである。この場合、装置に内蔵されるシステム基板1106には、CPU、画像生成IC、音生成IC等が実装されている。そして、オブジェクト空間のマップを構成するマップオブジェクトのデータを記憶するための情報、データが記憶されている所与のマップオブジェクトを、直交座標系から斜交座標系への斜交座標変換により変形するための処理を行うための情報、変形により所与のマップオブジェクトから得られた複数のマップオブジェクトの画像を含む画像であって、オブジェクト空間内の所与の視点での画像を生成するための情報等は、システム基板1106上の情報記憶媒体であるメモリ1108に格納される。以下、これらの情報を格納情報と呼ぶ。これらの格納情報は、上記の種々の処理を行うためのプログラムコード、画像情報、音情報、表示物の形状情報、テーブルデータ、リストデータ、プレーヤ情報等の少なくとも1つを含むものである。
【0062】
図12(A)に、本実施形態を家庭用のゲーム装置に適用した場合の例を示す。プレーヤはディスプレイ1200に映し出されたゲーム画像を見ながら、ゲームコントローラ1202、1204を操作してゲームを楽しむ。この場合、上記格納情報は、本体装置に着脱自在な情報記憶媒体であるCD−ROM1206、ICカード1208、1209等に格納されている。
【0063】
図12(B)に、ホスト装置1300と、このホスト装置1300と通信回線1302を介して接続される端末1304-1〜1304-nとを含むゲーム装置に本実施形態を適用した場合の例を示す。この場合、上記格納情報は、例えばホスト装置1300が制御可能な磁気ディスク装置、磁気テープ装置、メモリ等の情報記憶媒体1306に格納されている。端末1304-1〜1304-nが、CPU、画像生成IC、音生成ICを有し、スタンドアロンでゲーム画像、ゲーム音を生成できるものである場合には、ホスト装置1300からは、ゲーム画像、ゲーム音を生成するためのゲームプログラム等が端末1304-1〜1304-nに配送される。一方、スタンドアロンで生成できない場合には、ホスト装置1300がゲーム画像、ゲーム音を生成し、これを端末1304-1〜1304-nに伝送し端末において出力することになる。
【0064】
図13に、画像生成装置の1つであるマップ作成ツールに本実施形態を適用した場合の例を示す。開発者は、キーボード200、マウス202などの操作手段を用いて、マップの作成に必要な種々のデータを入力したり、マップ作成ツールへの種々の指示を行う。
【0065】
処理部210は、マップ作成部212と、マップ作成部212で作成されたマップのデータに基づいて画像を生成する画像生成部214とを含む。そして、マップ作成部212は、斜交座標変換によりマップオブジェクトを変形するための処理等を行うオブジェクト変形部213を含む。
【0066】
情報記憶媒体216には、マップ作成プログラムや、このプログラムの実行のために必要な種々のデータが格納されている。
【0067】
処理部210は、キーボード200、マウス202からの入力データや、情報記憶媒体216に格納されるデータに基づいて種々の処理を行う。これによりマップの作成に必要な種々の画像が表示部218に表示される。このマップ作成ツールによれば、コース40の傾斜角度や長さや、マップオブジェクト50の形状(変形具合)等を確認しながらマップを作成できるため、設計作業の効率化を図れる。
【0068】
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。
【0069】
例えば本発明は、コースを区切るためのオブジェクトに限らず、少なくともマップを構成するマップオブジェクトであれば、種々のマップオブジェクトに適用できる。
【0070】
また斜交座標変換の手法も、本実施形態で説明したものに限らず、これと数学的に等価なものであれば、種々の変形実施が可能である。
【0071】
また本実施形態では自転車の競争ゲームに本発明を適用した場合について説明したが、本発明はこれに限らず種々のゲーム(他の競争ゲーム、スポーツゲーム、対戦ゲーム、ロールプレイングゲーム、シューティングゲーム等)に適用できる。
【0072】
また本発明は、家庭用、業務用のゲーム装置のみならず、シミュレータ、多数のプレーヤが参加する大型アトラクション装置、パーソナルコンピュータ、マルチメディア端末、ゲーム画像を生成するシステム基板等の種々の画像生成装置にも適用できる。
【図面の簡単な説明】
【図1】本実施形態の画像生成装置の外観図の一例である。
【図2】本実施形態の画像生成装置の機能ブロック図の一例である。
【図3】図3(A)、(B)は、マップ及びマップオブジェクトについて説明するための図である。
【図4】斜交座標変換を行わない場合の問題点について説明するための図である。
【図5】本実施形態の原理について説明するための図である。
【図6】斜交座標変換について説明するための図である。
【図7】図7(A)、(B)は、本実施形態により生成される画像の例を示す図である。
【図8】図8(A)、(B)は、斜交軸に沿ったスケーリングについて説明するための図である。
【図9】本実施形態の詳細な処理例を説明するためのフローチャートである。
【図10】オブジェクト表示パラメータについて説明するための図である。
【図11】本実施形態を実現できるハードウェアの構成の一例を示す図である。
【図12】図12(A)、(B)は、本実施形態が適用される種々の形態の装置の例を示す図である。
【図13】本実施形態をマップ作成ツールに適用した場合の例を示す図である。
【符号の説明】
10 操作部
12 表示部
16 ライディング筐体
17 サドル
18 ディスプレイ
20 移動体
30 ペダル
32 ハンドル
38 マップ
40 コース
50 マップオブジェクト
52 パーツ(マップオブジェクトの支柱)
60 視点
100 処理部
110 ゲーム演算部
112 移動体演算部
116 オブジェクト変形部
120 オブジェクトデータ記憶部
150 画像生成部
190 情報記憶媒体
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an image generation apparatus and an information storage medium that generate an image at a given viewpoint in an object space.
[0002]
[Background Art and Problems to be Solved by the Invention]
Conventionally, there has been known an image generating apparatus that arranges a plurality of objects in an object space, which is a virtual three-dimensional space, and generates an image that can be seen from a given viewpoint, and is popular as a so-called virtual reality experience. Is expensive.
[0003]
Taking an example of an image generation device that can enjoy a driving game, a player enjoys the game by running a moving body such as a car that the player operates on a map. In such a game, the real feeling and the fun are strongly dependent on the shape of the map on which the course is arranged. Therefore, it is desirable to prepare and display a complex and varied map so that the realism and fun of the game can be enhanced.
[0004]
In particular, when the moving body operated by the player travels uphill or downhill, it is important to give the player the feeling of actually traveling uphill or downhill. .
[0005]
On the other hand, even for a map that can enhance the player's realism, if the storage capacity required to store the map data increases, the cost of the image generation apparatus increases.
[0006]
The present invention has been made to solve the above-described problems, and an object of the present invention is to provide an image generation apparatus and an information storage medium capable of displaying a realistic map with a small storage capacity. It is in.
[0007]
[Means for Solving the Problems]
In order to solve the above problems, the present invention is an image generation apparatus that generates an image at a given viewpoint in an object space, and stores data of map objects constituting a map of the object space; Means for performing processing for transforming a given map object in which data is stored by oblique coordinate transformation from an orthogonal coordinate system to an oblique coordinate system, and obtained from the given map object by the transformation; An image including images of a plurality of map objects, and means for generating an image at a given viewpoint in the object space.
[0008]
According to the present invention, a given map object stored in the storage means is transformed by oblique coordinate transformation. An image including a plurality of map objects obtained by this deformation is generated. Therefore, according to the present invention, it is possible to display a plurality of map objects deformed by oblique coordinate transformation only by storing data of one map object in the storage means. As a result, a realistic image can be generated with a small storage capacity. It is also possible to reduce the burden of map design and shorten the development period required for map design.
[0009]
According to the present invention, the map object is deformed so that the angle formed by the coordinate axis of the orthogonal coordinate system and the oblique axis of the oblique coordinate system changes according to the inclination angle of the area where the map object is arranged. It is characterized by that. In this way, an optimal map object corresponding to the inclination angle can be arranged in each area.
[0010]
Further, the present invention is characterized in that the map object is deformed so that a given part constituting the map object is oriented in the vertical direction. In this way, for example, it is possible to make the player feel whether it is going downhill or uphill, and the virtual reality of the player can be improved.
[0011]
Further, the present invention is characterized in that the map object is deformed so that the map object is scaled in a direction along at least one oblique axis of the oblique coordinate system. By doing so, it is possible to further increase the variety of deformation of the map object.
[0012]
According to the present invention, the map object is deformed so that the map object is scaled in a direction along at least one oblique axis of the oblique coordinate system according to a length of an area in which the map object is arranged. It is characterized by. In this way, an optimal map object corresponding to the length can be arranged in each area.
[0013]
Further, the present invention is characterized in that the map object is an object for dividing a course on the map. By deforming such an object that divides the course, it is possible to make the player feel more clearly the feeling of traveling downhill or uphill.
[0014]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, preferred embodiments of the present invention will be described with reference to the drawings. In the following, a case where the present invention is applied to a bicycle game will be described as an example. However, the present invention is not limited to this.
[0015]
FIG. 1 shows an example of an external view when the image generation apparatus of the present embodiment is applied to a business game apparatus.
[0016]
Here, the riding case 16 is made by imitating an actual bicycle, and a player (not shown) sits on the saddle 17 of the riding case 16. The display 18 displays a moving body 20 (including a bicycle that is a riding body and a character riding on the bicycle), a course on which the moving body 20 runs, and surrounding scenery. The player determines the advancing direction of the moving body 20 displayed on the display 18 by operating the handle 32 left and right while viewing this image. Moreover, the moving body 20 is advanced in the course traveling direction by pedaling the pedal 30 as indicated by A1.
[0017]
FIG. 2 shows an example of a functional block diagram of the image generation apparatus of the present embodiment.
[0018]
Here, the operation unit 10 is for the player to input operation data by operating the handle 32 of FIG. 1 or by stroking the pedal 30, and the operation data obtained by the operation unit 10 is processed by the processing unit 100. Is input.
[0019]
The processing unit 100 performs processing for arranging a display object in the object space and processing for generating an image at a given viewpoint in the object space based on the operation data and a given program. The function of the processing unit 100 can be realized by hardware such as a CPU (CISC type, RISC type), DSP, custom (gate array, etc.) IC or the like.
[0020]
The information storage medium 190 stores programs and data. The function of the information storage medium 190 can be realized by hardware such as a CD-ROM, game cassette, IC card, MO, FD, DVD, hard disk, and memory. The processing unit 100 performs various processes based on the program and data from the information storage medium 190.
[0021]
The processing unit 100 includes a game calculation unit 110, an object data storage unit 120, and an image generation unit 150.
[0022]
Here, the game calculation unit 110 performs a game mode setting process, a game progress process, a process for determining the position and direction of a moving object, a process for determining a viewpoint position and a line-of-sight direction, a process for placing an object in the object space, and the like.
[0023]
The object data storage unit 120 stores data of various objects such as moving objects and map objects arranged in the object space (vertex position data of polygons (primitive surfaces) constituting the object, texture data, object numbers, etc.). It is something to remember. This object data is stored in the information storage medium 190 in the initial state, and is transferred from the information storage medium 190 to the object data storage unit 120 after the power is turned on.
[0024]
The image generation unit 150 performs processing for generating an image at a given viewpoint in the object space set by the game calculation unit 110. The image generated by the image generation unit 150 is displayed on the display unit 12.
[0025]
The game calculation unit 110 includes a moving object calculation unit 112 and an object deformation unit 116.
[0026]
Here, the moving object calculation unit 112 selects a moving object operated by the player or a moving object whose movement is controlled by a given control program (computer) based on operation data input from the operation unit 10 or a given program. Then, an operation for moving the object in the object space is performed. More specifically, a calculation for obtaining the position and direction of the moving body every frame (1/60 second) is performed.
[0027]
For example, assume that the position of the moving body in the (k-1) frame is PMk-1, the speed is VMk-1, the acceleration is AMk-1, and the time of one frame is Δt. Then, the position PMk and the speed VMk of the moving body in k frames are obtained, for example, by the following equations (1) and (2).
PMk = PMk-1 + VMk-1 * .DELTA.t (1)
VMk = VMk-1 + AMk-1 * .DELTA.t (2)
The object transformation unit 116 transforms one object by oblique coordinate conversion from an orthogonal coordinate system to an oblique coordinate system based on data of a given object stored in the object data storage unit 120. Perform the process.
[0028]
In the three-dimensional game, a map 38 as shown in FIG. 3A is provided in the object space. This map 38 is composed of a plurality of map objects to express the course 40, the tunnel 42, the plateau 44, the mountain 46, and the like. These map objects are composed of a plurality of primitive surfaces such as polygons and curved surfaces. In order to enhance the real feeling and quality of the image output from the image generating apparatus, it is desirable to make the shape of the map 38 more complex and rich in change. For example, the player enjoys the game by running the moving body 20 such as a bicycle on the course 40 in the object space with given operation means. Therefore, for example, by giving a difference in elevation to the course 40, it is possible to give the player a feeling that the bicycle is actually running and to improve virtual reality.
[0029]
FIG. 3B shows map objects 50-1 to 50-6 used to delimit the course 40 as an example of map objects constituting the map 38. By arranging such map objects 50-1 to 50-6 on both sides of the course 40, the moving body 20 can be prevented from going out of the course. In addition, the player can recognize the shape of the course 40.
[0030]
In a three-dimensional game, as described above, the course 40 generally has a height difference and is rich in undulations in order to improve virtual reality. Therefore, the map object 50 is arranged on a flat ground as indicated by B1 in FIG. 4, or is arranged on a downhill as indicated by B2. When the map object 50 is arranged on the downhill as in B2, the map object 50 is coordinate-transformed with a rotation matrix corresponding to the inclination angle θ of the downhill. Then, the player sees an image from the viewpoint 60 that follows the moving body 20 (or coincides with the position of the moving body 20).
[0031]
However, when the map object 50 is arranged as shown in B2 of FIG. 4, it is not possible to sufficiently convey to the player the feeling that the vehicle is traveling downhill. In other words, the player generally determines whether it is a downhill or an uphill by sensing the relative relationship between the player facing the vertical direction or the one facing the horizontal direction. However, when the map object 50 is arranged as shown in B2 of FIG. 4, the parts (supports) 52 of the map object 50 that are oriented in the vertical direction on the flat ground are not oriented in the vertical direction. In other words, the part 50 is oriented in a direction perpendicular to itself (course 40) both on the flat ground and on the downhill, so that the player cannot determine whether the vehicle is traveling on the flat ground or on the downhill. . As a result, the feeling of traveling downhill is impaired, and the virtual reality felt by the player is reduced.
[0032]
Therefore, in this embodiment, as shown by C2 and C3 in FIG. 5, the map object 50 is deformed by oblique coordinate conversion from the orthogonal coordinate system to the oblique coordinate system and arranged on the course 40. In this way, the parts (supports) 52 of the map object 50 can always be directed in the vertical direction regardless of the slope angle θ of the slope. In other words, the angle at which the part 52 faces the course 40 changes according to the slope inclination angle θ, so that the player can determine whether the vehicle is traveling on a flat ground or a downhill. become. As a result, it is possible to give the player a feeling that the vehicle is traveling downhill, and the virtual reality felt by the player can be greatly improved.
[0033]
The principle of oblique coordinate transformation will be described with reference to FIG. FIG. 6 shows an example of a two-dimensional case for the sake of simplicity. The oblique coordinate transformation means performing coordinate transformation from the orthogonal coordinate system X, Y to the oblique coordinate system X ′, Y ′, and this coordinate transformation can be expressed by a matrix as shown by E1 in FIG. it can. That is, coordinate conversion as shown in the following expression (3) is performed by this oblique coordinate conversion.
X ′ = D X X
Y ′ = D Y X + Y (3)
Here D X, referred to as oblique coordinate transformation parameter D Y. In the case of D X = 1.0, X ′ and X are equal. On the other hand, for example, when D Y = 0.6, Y ′ increases by 0.6 relative to Y as X increases by 1, and Y ′ increases by 0.6 relative to Y as X decreases by 1. Will be reduced. By this conversion, the rectangle 64 can be converted into a parallelogram 66.
[0034]
In the present embodiment, as shown in FIG. 5, the coordinate axis X of the orthogonal coordinate system and the oblique axis X ′ of the oblique coordinate system according to the inclination angle θ of the course 40 (area where the map object is arranged) Is changed (see FIG. 6). That is, the angle α is increased as the inclination angle θ increases, for example, from θ1 to θ2. In this way, the part 52 of the map object 50 can be always directed in the vertical direction.
[0035]
Note the size of the angle α can be controlled by varying the D Y of oblique coordinate transformation parameters. That may be increased to D Y if you want to increase the angle alpha, when it is desired to reduce the angle alpha may be reduced D Y. For example in the case of arranging the map object 50 to the flat D Y = 0.0 Tosureba well, may be increased D Y as the inclination angle θ increases.
[0036]
7A and 7B show examples of game images generated by this embodiment. The player operates the moving body 20 using the operation unit 10 shown in FIG. 2, and competes with the moving body controlled by the control program and the moving body operated by another player. In this embodiment, a delimiter map object 50 for delimiting the course 40 is arranged on the course 40. The parts 52 of the map object 50 can be used both when the map object 50 is arranged on a flat ground as shown in FIG. 7A and when the map object 50 is arranged downhill as shown in FIG. Always oriented vertically. Therefore, the presence of the map object 50 allows the player to feel whether he is traveling on a flat ground or traveling downhill (or uphill). This can greatly improve the player's virtual reality.
[0037]
As another method for expressing an image as shown in FIGS. 7A and 7B, the map object 50 having the shape shown in FIG. 7A and the map object 50 having the shape shown in FIG. A method prepared in advance can be considered. That is, this is a method of storing all the map object data having different shapes in the object data storage unit 120.
[0038]
However, according to this method, it is necessary to store data of a large number of map objects corresponding to the inclination angle in the object data storage unit 120. Therefore, the storage capacity of the object data storage unit 120 is increased, and the cost of the image generation apparatus is increased.
[0039]
On the other hand, according to the present embodiment, a plurality of map objects required according to the inclination angle are obtained by transforming, for example, a map object described in an orthogonal coordinate system by oblique coordinate transformation. Accordingly, the object data storage unit 120 only needs to store one map object described in, for example, an orthogonal coordinate system. As a result, an increase in the storage capacity of the object data storage unit 120 can be prevented, and the cost of the image generation apparatus can be reduced.
[0040]
The present embodiment also has a feature that the map object is deformed so that the map object is scaled in a direction along at least one oblique axis of the oblique coordinate system.
[0041]
For example, as shown in FIG. 8A, the course 40 is composed of a plurality of polygons (primitive surfaces) 70-1 to 70-5. The length of the polygon differs depending on the location. For example, the length of the polygon 70-2 is L1, and the length of the polygon 70-4 is L2 (> L1). When map objects are arranged on polygons having different lengths in this way, if a map object having a different shape according to the length is prepared in advance, the storage capacity of the object data storage unit 120 increases. .
[0042]
Therefore, in this embodiment, as shown by F1 and F2 in FIG. 8A, the lengths L1 and L2 of the polygons 70-2 and 70-4 (the length of the area where the map object is arranged) are slanted. The map object 50 is deformed so that the map object is scaled in a direction along at least one oblique axis of the cross coordinate system. That is, as shown by F3 and F4 in FIG. 8B, for example, the map object 50 is deformed by scaling in the direction along the oblique axis X ′. By doing so, the map object to be arranged on the polygon 70-2 and the map object to be arranged on the polygon 70-4 can be obtained by transforming one map object. Thereby, an increase in the storage capacity of the object data storage unit 120 can be prevented.
[0043]
Note scaling in the direction of the oblique transverse X 'may be realized by controlling the oblique coordinate transformation parameter D X of matrix shown in F5. For example, when D X = 1.0, X ′ = X and the scaling rate is 1. On the other hand, if D X = 2.0, X ′ = 2.0X, and scaling (enlargement) of 2.0 times is possible in the direction along the oblique axis X ′, and D X = 0.5. For example, X ′ = 0.5X, and scaling (reduction) of 0.5 times is possible in the direction along the oblique axis X ′.
[0044]
According to this embodiment as described above, it oblique coordinate transformation parameter D X, by deforming the map object by controlling the D Y, the area for arranging the map object tilt angles and various corresponding to the length of It becomes possible to display a map object having a shape. As a result, it is possible to provide a realistic image that gives the player the feeling of traveling downhill or uphill while preventing the storage capacity of the object data storage unit 120 from increasing.
[0045]
Next, a detailed processing example of this embodiment will be described with reference to the flowchart of FIG.
[0046]
When displaying a map object, the object deforming unit 116 in FIG. 2 first reads out an object display parameter (step S1). FIG. 10 shows an example of the object display parameter. The display position P designates a position (world coordinate system) for displaying the map object. The rotation matrix creation parameter is a parameter for creating a rotation matrix for rotating the map object. Oblique coordinate transformation parameters D X, D Y, as described above, and an angle between the oblique transverse axes and oblique coordinate system of the orthogonal coordinate system, with parameters that control the scaling rate on the oblique transverse is there. The display object number N is for specifying a map object. By using this display object number N, the object data to be used can be specified from the object data stored in the object data storage unit 120. The oblique coordinate conversion flag is a flag for designating whether or not the object is to be displayed by performing oblique coordinate conversion.
[0047]
Next, a rotation matrix R is created based on the rotation matrix creation parameters in the object display parameters read out in step S1 (step S2).
[0048]
Next, based on the oblique coordinate conversion flag in the object display parameter, it is determined whether or not the map object is displayed by performing oblique coordinate conversion (step S3).
[0049]
If it is determined in step S3 that the map object is to be displayed without performing oblique coordinate conversion, a process of displaying the map object based on the rotation matrix R, the display position P, and the display object number N is performed (step S4). . More specifically, based on the display object number N, the corresponding map object data is read from the object data storage unit 120. Then, the image generation unit 150 performs coordinate conversion for rotating the map object based on the read map object data and the rotation matrix R. Then, the rotated map object is displayed at the position specified by the display position P.
[0050]
If it is determined in step S3 that the map object is to be displayed after performing oblique coordinate transformation, an oblique coordinate transformation matrix D is created based on the oblique coordinate transformation parameters D X and D Y included in the object display parameters. (Step S5). By using this oblique coordinate transformation matrix D, coordinate transformation from the orthogonal coordinate system X, Y, Z to the oblique coordinate system X ′, Y ′, Z ′ as shown in the following equation (4) becomes possible. .
X ′ = D X X
Y ′ = D Y X + Y
Z '= Z (4)
The above equation (4) is obtained by extending the above equation (3) to three dimensions.
[0051]
Next, a new matrix T is obtained by multiplying the rotation matrix R obtained in step S2 and the oblique coordinate transformation matrix D obtained in step S5 (step S6).
[0052]
Next, a process of displaying a map object based on the rotation matrix T, the display position P, and the display object number N is performed (step S7). More specifically, based on the display object number N, the corresponding map object data is read from the object data storage unit 120. Based on the read map object data and the rotation matrix T, the image generation unit 150 rotates the map object and performs coordinate conversion for oblique coordinate conversion. Then, the map object that has been rotated and subjected to oblique coordinate conversion is displayed at a position specified by the display position P.
[0053]
As described above, it is possible to arrange various deformed map objects for each area in the object space having various inclination angles and lengths. In addition, the object data storage unit 120 only needs to store data of one map object before deformation.
[0054]
Next, an example of a hardware configuration capable of realizing the present embodiment will be described with reference to FIG. In the apparatus shown in the figure, a CPU 1000, a ROM 1002, a RAM 1004, an information storage medium 1006, a sound generation IC 1008, an image generation IC 1010, and I / O ports 1012, 1014 are connected to each other via a system bus 1016 so that data can be transmitted and received. A display 1018 is connected to the image generation IC 1010, a speaker 1020 is connected to the sound generation IC 1008, a control device 1022 is connected to the I / O port 1012, and a communication device 1024 is connected to the I / O port 1014. Has been.
[0055]
The information storage medium 1006 mainly stores programs, image data for expressing display objects, sound data, and the like. For example, a consumer game device uses a CD-ROM, game cassette, DVD, or the like as an information storage medium for storing a game program or the like. The arcade game machine uses a memory such as a ROM. In this case, the information storage medium 1006 is a ROM 1002.
[0056]
The control device 1022 corresponds to a game controller, an operation panel, and the like, and is a device for inputting a result of a determination made by the player in accordance with the progress of the game to the device main body.
[0057]
In accordance with a program stored in the information storage medium 1006, a system program stored in the ROM 1002 (such as device initialization information), a signal input by the control device 1022, the CPU 1000 controls the entire device and performs various data processing. . The RAM 1004 is a storage means used as a work area of the CPU 1000 and stores the given contents of the information storage medium 1006 and the ROM 1002 or the calculation result of the CPU 1000. In addition, a data structure (for example, data structure of object data and object display parameters) having a logical configuration for realizing the present embodiment is constructed on this RAM or information storage medium.
[0058]
Further, this type of apparatus is provided with a sound generation IC 1008 and an image generation IC 1010 so that game sounds and game images can be suitably output. The sound generation IC 1008 is an integrated circuit that generates game sounds such as sound effects and background music based on information stored in the information storage medium 1006 and the ROM 1002, and the generated game sounds are output by the speaker 1020. The image generation IC 1010 is an integrated circuit that generates pixel information to be output to the display 1018 based on image information sent from the RAM 1004, the ROM 1002, the information storage medium 1006, and the like. As the display 1018, a so-called head mounted display (HMD) can be used.
[0059]
The communication device 1024 exchanges various types of information used inside the game device with the outside. The communication device 1024 is connected to other game devices to send and receive given information according to the game program, and to connect a communication line. It is used for sending and receiving information such as game programs.
[0060]
The various processes described in FIGS. 1 to 8 and 10 include an information storage medium 1006 that stores a program for performing the process shown in the flowchart of FIG. 9, a CPU 1000 that operates according to the program, an image generation IC 1010, a sound This is realized by the generation IC 1008 or the like. The processing performed by the image generation IC 1010, the sound generation IC 1008, and the like may be performed by software using the CPU 1000 or a general-purpose DSP.
[0061]
FIG. 1 described above shows an example in which the present embodiment is applied to an arcade game machine. In this case, a CPU, an image generation IC, a sound generation IC, and the like are mounted on a system board 1106 built in the apparatus. Then, the information for storing the data of the map object constituting the map of the object space and the given map object storing the data are transformed by the oblique coordinate conversion from the orthogonal coordinate system to the oblique coordinate system. Information for performing processing for the image, information including images of a plurality of map objects obtained from a given map object by deformation, and information for generating an image at a given viewpoint in the object space Are stored in a memory 1108 which is an information storage medium on the system board 1106. Hereinafter, these pieces of information are referred to as stored information. The stored information includes at least one of program code, image information, sound information, display object shape information, table data, list data, player information, and the like for performing the various processes described above.
[0062]
FIG. 12A shows an example in which the present embodiment is applied to a home game device. The player enjoys the game by operating the game controllers 1202 and 1204 while viewing the game image displayed on the display 1200. In this case, the stored information is stored in a CD-ROM 1206, IC cards 1208, 1209, etc., which are information storage media detachable from the main unit.
[0063]
FIG. 12B shows an example in which the present embodiment is applied to a game device including a host device 1300 and terminals 1304-1 to 1304-n connected to the host device 1300 via a communication line 1302. Show. In this case, the stored information is stored in an information storage medium 1306 such as a magnetic disk device, a magnetic tape device, or a memory that can be controlled by the host device 1300, for example. When the terminals 1304-1 to 1304-n have a CPU, an image generation IC, and a sound generation IC and can generate a game image and a game sound stand-alone, the host device 1300 receives a game image and a game A game program or the like for generating sound is delivered to the terminals 1304-1 to 1304-n. On the other hand, if it cannot be generated stand-alone, the host device 1300 generates a game image and a game sound, which is transmitted to the terminals 1304-1 to 1304-n and output at the terminal.
[0064]
FIG. 13 shows an example when the present embodiment is applied to a map creation tool which is one of image generation apparatuses. The developer inputs various data necessary for creating a map and gives various instructions to the map creation tool using operation means such as the keyboard 200 and the mouse 202.
[0065]
The processing unit 210 includes a map creation unit 212 and an image creation unit 214 that creates an image based on the map data created by the map creation unit 212. The map creating unit 212 includes an object deforming unit 213 that performs processing for deforming a map object by oblique coordinate conversion.
[0066]
The information storage medium 216 stores a map creation program and various data necessary for executing this program.
[0067]
The processing unit 210 performs various processes based on input data from the keyboard 200 and the mouse 202 and data stored in the information storage medium 216. As a result, various images necessary for creating the map are displayed on the display unit 218. According to this map creation tool, a map can be created while confirming the inclination angle and length of the course 40, the shape (deformation) of the map object 50, etc., so that the design work can be made more efficient.
[0068]
The present invention is not limited to that described in the above embodiment, and various modifications can be made.
[0069]
For example, the present invention is not limited to an object for dividing a course, and can be applied to various map objects as long as it is at least a map object constituting a map.
[0070]
Also, the method of oblique coordinate transformation is not limited to that described in the present embodiment, and various modifications can be made as long as it is mathematically equivalent to this.
[0071]
In the present embodiment, the case where the present invention is applied to a bicycle competition game has been described. However, the present invention is not limited to this, and various games (other competition games, sports games, battle games, role playing games, shooting games, etc.) ).
[0072]
The present invention is not limited to home and business game devices, but also various image generation devices such as a simulator, a large attraction device in which a large number of players participate, a personal computer, a multimedia terminal, and a system board for generating game images. It can also be applied to.
[Brief description of the drawings]
FIG. 1 is an example of an external view of an image generation apparatus according to an embodiment.
FIG. 2 is an example of a functional block diagram of the image generation apparatus of the present embodiment.
FIGS. 3A and 3B are diagrams for explaining a map and a map object. FIG.
FIG. 4 is a diagram for explaining a problem that occurs when oblique coordinate conversion is not performed.
FIG. 5 is a diagram for explaining the principle of the embodiment;
FIG. 6 is a diagram for explaining oblique coordinate transformation.
FIGS. 7A and 7B are diagrams illustrating examples of images generated according to the present embodiment.
FIGS. 8A and 8B are diagrams for explaining scaling along the oblique axis. FIGS.
FIG. 9 is a flowchart for explaining a detailed processing example of the present embodiment;
FIG. 10 is a diagram for explaining object display parameters.
FIG. 11 is a diagram illustrating an example of a hardware configuration capable of realizing the present embodiment.
FIGS. 12A and 12B are diagrams illustrating examples of various types of apparatuses to which the present embodiment is applied.
FIG. 13 is a diagram showing an example when the present embodiment is applied to a map creation tool.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 10 Operation part 12 Display part 16 Riding housing | casing 17 Saddle 18 Display 20 Mobile body 30 Pedal 32 Handle 38 Map 40 Course 50 Map object 52 Parts (support of map object)
60 viewpoint 100 processing unit 110 game calculation unit 112 moving body calculation unit 116 object transformation unit 120 object data storage unit 150 image generation unit 190 information storage medium

Claims (8)

オブジェクト空間内を移動する所与の視点での前記オブジェクト空間の画像を生成する画像生成装置であって、
オブジェクト空間のマップを構成するマップオブジェクトのデータを、直交座標系のマップオブジェクトのデータとして記憶する手段と、
前記オブジェクト空間に配置される前記マップオブジェクトの配置位置のデータと、当該マップオブジェクトを、直交座標系のマップオブジェクトから斜交座標系のマップオブジェクトに変換するためのデータであって、当該マップオブジェクトの配置位置の傾斜角度に応じてパラメータが設定される斜交座標変換パラメータのデータとを記憶する手段と、
前記直交座標系の所与のマップオブジェクトを、前記斜交座標変換パラメータに基づき、当該所与のマップオブジェクトの配置位置の傾斜角度に応じた斜交座標系のマップオブジェクトに変形するための処理を行う手段と、
変形された前記斜交座標系のマップオブジェクトを、前記配置位置のデータに基づき前記オブジェクト空間に配置する手段と、
前記オブジェクト空間内を移動する所与の視点での前記オブジェクト空間の画像を生成する手段とを含むことを特徴とする画像生成装置。
An image generation device for generating an image of the object space at a given viewpoint moving in the object space,
Means for storing map object data constituting a map of the object space as map object data in an orthogonal coordinate system;
Data for the arrangement position of the map object arranged in the object space and data for converting the map object from a map object in an orthogonal coordinate system to a map object in an oblique coordinate system , Means for storing oblique coordinate conversion parameter data in which parameters are set according to the inclination angle of the arrangement position ;
Processing for transforming a given map object in the orthogonal coordinate system into a map object in an oblique coordinate system according to the inclination angle of the arrangement position of the given map object based on the oblique coordinate conversion parameter Means to do,
Means for arranging the deformed oblique coordinate system map object in the object space based on the data of the arrangement position;
Means for generating an image of the object space at a given viewpoint moving in the object space.
請求項1において、
マップオブジェクトを構成する所与のパーツが鉛直方向に向くように、マップオブジェクトを変形することを特徴とする画像生成装置。
In claim 1,
An image generation apparatus characterized by deforming a map object so that a given part constituting the map object is oriented in a vertical direction.
オブジェクト空間内を移動する所与の視点での前記オブジェクト空間の画像を生成する画像生成装置であって、
オブジェクト空間のマップを構成するマップオブジェクトのデータを、直交座標系のマップオブジェクトのデータとして記憶する手段と、
前記オブジェクト空間に配置される前記マップオブジェクトの配置位置のデータと、当該マップオブジェクトを、直交座標系のマップオブジェクトから斜交座標系のマップオブジェクトに変換するためのデータであって、当該マップオブジェクトを構成する所与のパーツが鉛直方向に向くようにパラメータが設定される斜交座標変換パラメータのデータとを記憶する手段と、
前記直交座標系の所与のマップオブジェクトを、前記斜交座標変換パラメータに基づき、当該所与のマップオブジェクトを構成する所与のパーツが鉛直方向を向く斜交座標系のマップオブジェクトに変形するための処理を行う手段と、
変形された前記斜交座標系のマップオブジェクトを、前記配置位置のデータに基づき前記オブジェクト空間に配置する手段と、
前記オブジェクト空間内を移動する所与の視点での前記オブジェクト空間の画像を生成する手段とを含むことを特徴とする画像生成装置。
An image generation device for generating an image of the object space at a given viewpoint moving in the object space,
Means for storing map object data constituting a map of the object space as map object data in an orthogonal coordinate system;
Data for the arrangement position of the map object arranged in the object space, and data for converting the map object from a map object in an orthogonal coordinate system to a map object in an oblique coordinate system , the map object being Means for storing oblique coordinate transformation parameter data in which parameters are set so that a given part of the component is oriented vertically ;
To transform a given map object in the orthogonal coordinate system into a map object in an oblique coordinate system in which a given part constituting the given map object faces a vertical direction based on the oblique coordinate transformation parameter Means for performing
Means for arranging the deformed oblique coordinate system map object in the object space based on the data of the arrangement position;
Means for generating an image of the object space at a given viewpoint moving in the object space.
請求項1乃至3のいずれかにおいて、
前記斜交座標系の少なくとも1つの斜交軸に沿った方向でマップオブジェクトがスケーリングされるように、マップオブジェクトを変形することを特徴とする画像生成装置。
In any one of Claims 1 thru | or 3,
An image generating apparatus, wherein a map object is deformed so that the map object is scaled in a direction along at least one oblique axis of the oblique coordinate system.
請求項1乃至4のいずれかにおいて、
マップオブジェクトを配置するエリアの長さに応じて、前記斜交座標系の少なくとも1つの斜交軸に沿った方向でマップオブジェクトがスケーリングされるように、マップオブジェクトを変形することを特徴とする画像生成装置。
In any one of Claims 1 thru | or 4,
An image, wherein the map object is deformed so that the map object is scaled in a direction along at least one oblique axis of the oblique coordinate system according to a length of an area in which the map object is arranged. Generator.
請求項1乃至5のいずれかにおいて、
マップオブジェクトが、マップ上のコースを区切るためのオブジェクトであることを特徴とする画像生成装置。
In any one of Claims 1 thru | or 5,
An image generating apparatus, wherein the map object is an object for separating courses on a map.
オブジェクト空間内を移動する所与の視点での前記オブジェクト空間の画像を生成するためのプログラムが記憶された情報記憶媒体であって、
前記プログラムは、
オブジェクト空間のマップを構成するマップオブジェクトのデータを、直交座標系のマップオブジェクトのデータとして記憶する手段と、
前記オブジェクト空間に配置される前記マップオブジェクトの配置位置のデータと、当該マップオブジェクトを、直交座標系のマップオブジェクトから斜交座標系のマップオブジェクトに変換するためのデータであって、当該マップオブジェクトの配置位置の傾斜角度に応じてパラメータが設定される斜交座標変換パラメータのデータとを記憶する手段と、
前記直交座標系の所与のマップオブジェクトを、前記斜交座標変換パラメータに基づき、当該所与のマップオブジェクトの配置位置の傾斜角度に応じた斜交座標系のマップオブジェクトに変形するための処理を行う手段と、
変形された前記斜交座標系のマップオブジェクトを、前記配置位置のデータに基づき前記オブジェクト空間に配置する手段と、
前記オブジェクト空間内を移動する所与の視点での前記オブジェクト空間の画像を生成する手段としてコンピュータを機能させることを特徴とする情報記憶媒体。
An information storage medium storing a program for generating an image of the object space at a given viewpoint moving in the object space,
The program is
Means for storing map object data constituting a map of the object space as map object data in an orthogonal coordinate system;
Data for the arrangement position of the map object arranged in the object space and data for converting the map object from a map object in an orthogonal coordinate system to a map object in an oblique coordinate system , Means for storing oblique coordinate conversion parameter data in which parameters are set according to the inclination angle of the arrangement position ;
Processing for transforming a given map object in the orthogonal coordinate system into a map object in an oblique coordinate system according to the inclination angle of the arrangement position of the given map object based on the oblique coordinate conversion parameter Means to do,
Means for arranging the deformed oblique coordinate system map object in the object space based on the data of the arrangement position;
An information storage medium that causes a computer to function as means for generating an image of the object space at a given viewpoint that moves in the object space.
オブジェクト空間内を移動する所与の視点での前記オブジェクト空間の画像を生成するためのプログラムが記憶された情報記憶媒体であって、
前記プログラムは、
オブジェクト空間のマップを構成するマップオブジェクトのデータを、直交座標系のマップオブジェクトのデータとして記憶する手段と、
前記オブジェクト空間に配置される前記マップオブジェクトの配置位置のデータと、当該マップオブジェクトを、直交座標系のマップオブジェクトから斜交座標系のマップオブジェクトに変換するためのデータであって、当該マップオブジェクトを構成する所与のパーツが鉛直方向に向くようにパラメータが設定される斜交座標変換パラメータのデータとを記憶する手段と、
前記直交座標系の所与のマップオブジェクトを、前記斜交座標変換パラメータに基づき、当該所与のマップオブジェクトを構成する所与のパーツが鉛直方向を向く斜交座標系のマップオブジェクトに変形するための処理を行う手段と、
変形された前記斜交座標系のマップオブジェクトを、前記配置位置のデータに基づき前記オブジェクト空間に配置する手段と、
前記オブジェクト空間内を移動する所与の視点での前記オブジェクト空間の画像を生成する手段としてコンピュータを機能させることを特徴とする情報記憶媒体。
An information storage medium storing a program for generating an image of the object space at a given viewpoint moving in the object space,
The program is
Means for storing map object data constituting a map of the object space as map object data in an orthogonal coordinate system;
Data for the arrangement position of the map object arranged in the object space, and data for converting the map object from a map object in an orthogonal coordinate system to a map object in an oblique coordinate system , the map object being Means for storing oblique coordinate transformation parameter data in which parameters are set so that a given part of the component is oriented vertically ;
To transform a given map object in the orthogonal coordinate system into a map object in an oblique coordinate system in which a given part constituting the given map object faces a vertical direction based on the oblique coordinate transformation parameter Means for performing
Means for arranging the deformed oblique coordinate system map object in the object space based on the data of the arrangement position;
An information storage medium for causing a computer to function as means for generating an image of the object space at a given viewpoint moving in the object space.
JP2003031450A 2003-02-07 2003-02-07 Image generating apparatus and information storage medium Expired - Lifetime JP4088169B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003031450A JP4088169B2 (en) 2003-02-07 2003-02-07 Image generating apparatus and information storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003031450A JP4088169B2 (en) 2003-02-07 2003-02-07 Image generating apparatus and information storage medium

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP9352476A Division JPH11175706A (en) 1997-12-05 1997-12-05 Image generating device and information storage medium

Publications (2)

Publication Number Publication Date
JP2003263654A JP2003263654A (en) 2003-09-19
JP4088169B2 true JP4088169B2 (en) 2008-05-21

Family

ID=29208418

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003031450A Expired - Lifetime JP4088169B2 (en) 2003-02-07 2003-02-07 Image generating apparatus and information storage medium

Country Status (1)

Country Link
JP (1) JP4088169B2 (en)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6059386A (en) * 1983-09-12 1985-04-05 日本電気株式会社 Pattern line drawing system and apparatus
JP3138264B2 (en) * 1988-06-21 2001-02-26 ソニー株式会社 Image processing method and apparatus
JPH03101792A (en) * 1989-09-14 1991-04-26 Fujitsu Ltd Character string display processing system
JP2883514B2 (en) * 1993-06-10 1999-04-19 株式会社ナムコ Image synthesis device and game device using the same
JP3830188B2 (en) * 1995-12-18 2006-10-04 株式会社バンダイナムコゲームス Game image synthesizer

Also Published As

Publication number Publication date
JP2003263654A (en) 2003-09-19

Similar Documents

Publication Publication Date Title
JP2001321562A (en) Game system and information recording medium
JP4056021B2 (en) Image generating apparatus and information storage medium
JP4114822B2 (en) Image generating apparatus and information storage medium
JPH11146978A (en) Three-dimensional game unit, and information recording medium
JP4397410B2 (en) Image generating apparatus and information storage medium
JP4743770B2 (en) Image generation system, program, and information storage medium
JP4560532B2 (en) Image generating apparatus and information storage medium
JP3123957B2 (en) Three-dimensional game device and information storage medium
JP4088169B2 (en) Image generating apparatus and information storage medium
JP2001079261A (en) Image forming system and information recording medium
JP4212015B2 (en) Image generating apparatus and information storage medium
JP2000331184A (en) Image forming device and information storing medium
JPH11175706A (en) Image generating device and information storage medium
JP3753338B2 (en) 3D simulator apparatus and image composition method
JP4036508B2 (en) Image generating apparatus and information storage medium
JP4036509B2 (en) Image generating apparatus and information storage medium
US20010041618A1 (en) Game apparatus, storage medium and computer program
JP2005122479A (en) Program, information storage medium and image forming apparatus
JP4632530B2 (en) GAME SYSTEM, PROGRAM, AND INFORMATION STORAGE MEDIUM
JP4108167B2 (en) Image generating apparatus and information storage medium
JPH1166343A (en) Image generating device and information storage device
JP2000037560A (en) Game apparatus and information memory medium
JPH1147449A (en) Image forming device and image recording medium
JP4391633B2 (en) Image generation system and information storage medium
JP4245642B2 (en) Image generating apparatus and information storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041130

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070529

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070606

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070806

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071003

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071203

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080222

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

Free format text: PAYMENT UNTIL: 20110228

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110228

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120229

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120229

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120229

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130228

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130228

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20140228

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

EXPY Cancellation because of completion of term