JP4462704B2 - ゲーム装置および情報記憶媒体 - Google Patents
ゲーム装置および情報記憶媒体 Download PDFInfo
- Publication number
- JP4462704B2 JP4462704B2 JP2000092240A JP2000092240A JP4462704B2 JP 4462704 B2 JP4462704 B2 JP 4462704B2 JP 2000092240 A JP2000092240 A JP 2000092240A JP 2000092240 A JP2000092240 A JP 2000092240A JP 4462704 B2 JP4462704 B2 JP 4462704B2
- Authority
- JP
- Japan
- Prior art keywords
- generation
- wind
- force
- generated
- given
- 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
Links
Images
Landscapes
- Processing Or Creating Images (AREA)
Description
【発明の属する技術分野】
本発明は、オブジェクト空間内の所与の視点での画像を生成し、当該生成画像を表示させることによって所与のゲームを実行するゲーム装置等に関する。
【0002】
【従来の技術】
仮想的な3次元空間であるゲーム空間に、力を発生させる生成源を所与のタイミングで設定することにより、一種の攻撃技として表現するゲーム装置や、当該生成源の近傍におけるプレーヤキャラクタの操作を困難せしめ、ゲームに面白みを加味させるといったゲーム装置がある。
【0003】
【発明が解決しようとする課題】
しかしながら、ゲーム空間全体に渡る、例えば、風や水流といった力が生じている状況を表現する場合には、その力の計算に要する処理時間と、キャラクタ等のオブジェクトを表現するために要する処理時間とのバランスから、複雑な力を発生させることが困難であった。
【0004】
即ち、1枚のゲーム画像を、遅くとも1/60秒の1フレーム時間内に生成する必要があるため、力の計算に多くの処理時間をかけることができない。このため、ゲーム空間全体における力の大きさを常に同じ大きさとしたり、方向および大きさはランダムであるものの、その一瞬におけるゲーム空間全体においては均一な力が生じているといった表現とすることが限界であった。
【0005】
このため、ゲーム空間全体に及んでいる力を表現したゲーム画像は、退屈な、面白味のない、違和感のあるものであった。
【0006】
本発明の課題は、ゲーム空間における複雑な力の表現を単純な方法により実現することである。
【0007】
【課題を解決するための手段】
以上の課題を解決するための第1の形態は、オブジェクト空間内の所与の視点での画像を生成し、当該生成画像を表示させることによって所与のゲームを実行するゲーム装置であって、所与の方向への力を生成する生成源を、前記オブジェクト空間内に複数設定するための生成源設定手段(例えば、図7の風生成部220)と、前記生成源それぞれの力の大きさを変動させるための力変動手段(例えば、図7の風生成部220)と、を備え、前記生成源それぞれからの力が前記オブジェクト空間内で流動的に干渉し合うことを特徴とするゲーム装置である。
【0008】
また、第10の形態は、オブジェクト空間内の所与の視点での画像を生成し、当該生成画像を表示させることによって所与のゲームを実行するための情報を記憶した情報記憶媒体であって、所与の方向への力を生成する生成源に係る情報(例えば、図7の風制御プログラム44)と、前記オブジェクト空間内に前記生成源を複数設定するための生成源設定情報(例えば、図7の風制御プログラム44)と、前記生成源それぞれの力の大きさを変動させるための力変動情報(例えば、図3の履歴テーブル300)と、前記生成源それぞれからの力に基づいて、前記オブジェクト空間内での流動的な力の干渉を表現するための表現情報(例えば、図7の受風処理プログラム46)と、を含む情報記憶媒体である。
【0009】
ここで、生成源それぞれからの力を流動的に干渉させる手法としては、種々の方法が考えられる。例えば、発明の実施の形態において詳細に説明するように、生成源から生成される力の値と、生成した時間とを対応づけて一時的に保存し、オブジェクト空間の所与の地点と、生成源との距離等に基づいて、当該所与の地点における力を算出・決定する手法や、生成源から生成される力の値を時間の関数によって定義して、所与の地点における力を算出・決定する方法等があり、何れの方法を適用することとしてもよい。
【0010】
この第1または第10の形態によれば、生成源を設定し、生成する力を変動させることにより、容易に、オブジェクト空間全体に及ぶ複雑な力を生成することができる。また、生成される力は、流動的なものであるため、無秩序な方向および強さにはならない。従って、例えば、プレーヤキャラクタの操作において、プレーヤは、次の瞬間における力をある程度予想することができるが、複数の生成源による力が干渉するために完全には予測できず、面白味のあるゲームを実現することができる。
【0011】
また、第1の形態のゲーム装置における生成源を、第2の形態として、並行的な力を生成することとして構成したり、第3の形態として、放射状に力を生成することとして構成してもよい。
【0012】
また、第10の形態の情報記憶媒体における生成源を、第11の形態として、並行的な力を生成することとして構成したり、第12の形態として、放射状に力を生成することとして構成してもよい。
【0013】
この第2、第3、第11、あるいは第12の形態によれば、生成源のバラエティを増すことができ、より複雑な力をオブジェクト空間全体に生成することができる。
【0014】
また、第4の形態として、第1から第3のいずれかの形態のゲーム装置における前記生成源設定手段は、前記所与のゲームの進行または時間経過に応じて、設定する生成源の数を変更することとしてもよい。
【0015】
またさらに、第5の形態として、第1から第4のいずれかの形態のゲーム装置における前記力変動手段は、前記所与のゲームの進行または時間経過に応じて、前記生成源それぞれの力の大きさを変動させることとしてもよい。
【0016】
この第4または第5の形態によれば、例えば、プレー回数やプレー時間、ボスキャラ等と対戦するといったステージの種類等に応じて、生成源の数の増減や力の大きさの変動を行うことができる。
【0017】
また、第6の形態として、第1から第5のいずれかの形態のゲーム装置であって、前記力変動手段は、前記生成源それぞれの力の大きさを非周期的に変動させることとしてもよい。
【0018】
ここで非周期的に変動させる手段としては、ランダムな数値を生成させたり、カオスやアトラクタ等の無秩序な値を生成させること等により実現できる。
【0019】
この第6の形態によれば、力の大きさの変化が繰り返しとなるといった面白味のないゲームとなることを抑制することができる。
【0020】
また、第7の形態として、第1から第6のいずれかの形態のゲーム装置であって、前記オブジェクト空間に存する所与のオブジェクトが、前記生成源により生成される力に基づいて変形または移動することとしてもよい。
【0021】
この場合、オブジェクトは、それぞれの生成源から生成されるそれぞれの力に基づいて変形または移動することとしてもよいし、生成源それぞれから生成される力を合成した1つの力に基づいて変形または移動することとしてもよい。
【0022】
この第7の形態によれば、生成源それぞれの力を合成した力を受けて物体が移動する様子や、粘土のような柔らかい物体が方々からの力を受けて変形するといった様子等を表現することができる。
【0023】
また、第8の形態として、第7の形態のゲーム装置であって、前記所与のオブジェクトは、変形または移動の基準となる制御点を有し、前記制御点における前記力に基づいて、前記所与のオブジェクトが変形または移動することとしてもよい。なお、この場合、オブジェクトが有する制御点の数は1つあるいは複数であってもよいし、また、1つの制御点における力に基づいて、複数のオブジェクトが変形または移動するようにしてもよい。
【0024】
この第8の形態によれば、オブジェクトを変形または移動させるための力の計算は、制御点における力の計算で済む。
【0025】
また、第9の形態として、第1から第8のいずれかの形態のゲーム装置であって、前記オブジェクト空間における所与のオブジェクトを動かすことにより、前記生成源が生成する力は風力であることを表現することとしてもよい。
【0026】
この第9の形態によれば、オブジェクト空間内に吹いている複雑な風を、容易に表現することができる。また、所与のオブジェクトを草原(実際には草のオブジェクトの集合となるが)とすることにより、オブジェクト空間における風を効果的に表現することができる。また、流動的な風となるため、よりリアリティのある画像を生成することができる。
【0027】
【発明の実施の形態】
以下、本発明の好適な実施形態について図面を参照して説明する。なお、以下では、生成源から生成される力を風力とし、当該生成源から吹く風に揺られる草を表現する方法を説明するが、本発明が適用されるものはこれに限られるものではない。
【0028】
図1(a)〜(c)は、草オブジェクトが受ける風を時間経過に従って表現した画像例を示す図であり、(a)から(c)へと時間が経過している。同図(a)において、図の左側で倒れていた草が、(b)では起き上がり、一方、中央部分の草が倒れている。(c)では、中央部分の草は起き上がり、右側の草が倒れている。このように、草の倒れる角度や方向等の状態の変化から、時間経過に伴って風が左から右へと吹き去ったことを表現している。本実施の形態では、画像中、直接確認することはできないが、草オブジェクトが受ける力、即ち風の強さを一定時間毎に制御することで、風が流動的にオブジェクト空間を流れる様子をよりリアルに表現し、且つ簡単に実現させる手法について、以下に説明する。
【0029】
まず、風を表現するための原理を説明する。
本実施の形態では、一定時間毎に力の大きさが異なる風を生成する生成源を、オブジェクト空間内に複数設定する。設定する位置は、キャラクタが活動する領域(以下、メイン領域という)の外側とし、各生成源には、メイン領域に向かう平行な風を生成させるとともに、一定時間毎に風力を変化させて生成させる。一方、風の影響を受ける対象となる物(草オブジェクト等)は、各生成源との距離および時間経過に応じた力を各生成源から受ける。即ち、生成源により生成された風は、速度を持ち、所与の時間が経過することで、各草オブジェクトの地点に到達することとなる。以下に、オブジェクト空間に風の生成源を3つ設定した場合を例にして、詳細を説明する。
【0030】
図2は、3つの生成源を、オブジェクト空間中の座標系(以下、ワールド座標系という)のY軸方向から見た図である。同図に示すように、各風の生成源A〜Cは、X−Z平面に垂直な平面よって定義されており、メイン領域200を囲むように設定する。また、各風のベクトルは、生成源である平面に対して垂直であることとする。従って、1つの生成源から発生する風は、高さ(即ち、Y座標)に関わらず平行であり、常に同じ方向に進むこととなる。また、各生成源が発生する風の速度は、時刻によらず一定のものとする。従って、風の生成源との距離がわかれば、その地点がその瞬間に受ける風の発生時刻を逆算することができる。
【0031】
また、生成源AおよびCは、ワールド座標系のX軸方向と45度の角度を成し、生成源Bは、Z軸方向と−45度の角度を成すものとする。従って、生成源AとCから発生する風は、互いに打ち消し合うこととなる。このように、両サイドから風を発生させて、互いに風の強さを抑制することで、ただ単に風が一方向に進むのではなく、あらゆる事物の影響を受けて複雑に吹く風を表現することができる。
【0032】
また、各風の生成源が一定時間毎に生成する風の強さは、アトラクタなどの収束性のあるカオスを計算することで決定する。例えば、気象のモデルとして知られる連立微分方程式
dx/dt=a(y−x) …(1)
dy/dt=bx−y−xz …(2)
dz/dt=xy−cz …(3)
を用いて算出する。ここに、a,b,cは定数であり、アトラクタが発生するための適当な数値を代入する。この方程式に適当な初期値(x0、y0、z0)を与え、一定時間毎に計算して得られる値(x、y、z)のうち、例えば、xを生成源Aの風力FA、yを生成源Bの風力FB、zを生成源Cの風力FCとして決定する。このようにアトラクタを用いる理由は、風の流れが周期的になったり、極端に無秩序な風を発生しないためである。
【0033】
そして、各風の生成源に対して計算した風の強さを図3に示すような履歴テーブル300に記憶する。履歴テーブル300には、各風の強さとともに、その計算を実行した時刻を記憶し、現在時刻が最上段に来るように更新する。
【0034】
一方、各草オブジェクトが受ける風の計算は、次のように行う。まず、図4(a)に示すように、算出対象となる地点202において、各生成源から受ける風のベクトル(即ち、風の力と方向)(FA,FB,FC)を計算する。そして、図4(b)に示すように、算出した各風ベクトルを合成して、草オブジェクトが受ける風(合成ベクトル)を決定する。
【0035】
草オブジェクトが1つの生成源Aから受ける風ベクトルの計算は、次のようにする。まず、生成源Aから出発して草オブジェクトに到達するまでの風の進行時間tを、生成源Aと草オブジェクトとの距離dおよび生成源Aの風速VAとから算出する(t=d/VA)。そして、該草オブジェクトが現在時刻Tに受ける風の発生時刻(T−t)を求める。次いで、履歴テーブル300を読み出して、時刻(T−t)に生成源Aが生成した風の風力を調べ、草オブジェクトが生成源Aから取得する風ベクトルを決定する。生成源BおよびCが各草オブジェクトに与える風ベクトルも同様の計算によって求める。
【0036】
なお、全ての生成源から発生する風の速度(VA,VB,VC)を等しく設定し、かつ、式(1)〜(3)によって得られる値を直接風力とした場合、各生成源がばらばらに風力を設定することとなり、結果的にただ闇雲に草が揺れているように見える可能性がある。そこで、式(1)〜(3)によって得られた値に、α>β、γという関係を持つ係数(α、β、γ)を各生成源の風力(FA,FB,FC)にそれぞれ掛け、更に、生成源Aの風速を生成源B,Cの風速よりも早く設定する。このようにすることで、生成源Aの風をメインとして、メイン領域200に吹く風を特徴づけ、そのメインの風が変化する様、即ちメインの風の向きが揺らいだり、メインの風の強弱が変化するといった、よりリアルな風を表現することができる。
【0037】
図5(a)〜(d)は、生成源Aをメインの風生成源として設定した場合に、ワールド座標系を格子状に分割した各格子点が受ける合成ベクトルを示す図であり、同図(a)から(d)へと時間が経過している。同図(a)において、図上方に存在した風力の大きい風が、時間の経過に伴って(図(b)から(d)と移るに従って)図の中央部分に移動している。このように、1つの生成源を他の生成源と差別化することで、オブジェクト空間全体に強弱をもって流れる風を表現することができる。また、各生成源の風力をアトラクタによって決定しているため、毎時に発生する風力を非周期的に、且つ、滑らかに変化させることができる。
【0038】
次に、本実施の形態における構成を説明する。
図6は、本発明を家庭用のゲーム装置に適用した場合の一例を示す図である。同図において、ユーザは、ディスプレイ1200に映し出されたゲーム画像を見ながら、ゲームコントローラ1202、1204を操作してゲームを楽しむ。この場合、ゲームプログラム等のゲームを行うために必要な情報は、本体装置に着脱自在な情報記憶媒体であるCD−ROM1206、ICカード1208、メモリカード1212等に格納されている。
【0039】
図7は、本実施の形態における機能ブロックの一例を示す図である。同図において、機能ブロックは、操作部10と、処理部20と、表示部30と、情報記憶媒体40とから構成されている。
【0040】
操作部10は、ゲームにおける自キャラクタの操作や、ゲーム開始あるいは中止等の指示を入力するためのものであり、図6に示す、ゲームコントローラ1202、1204が操作部10に相当する。
【0041】
処理部20は、システム全体の制御、システム内の各ブロックへの指示、ゲーム処理、画像処理、音処理等の各種の処理を行うものであり、また、処理部20には、主に、ゲーム演算部22、画像生成部24、メモリ26が含まれる。その機能は、各種プロセッサ(CPU、DSP等)、あるいはASIC(ゲートアレイ等)、メモリ(RAMやROM等)等のハードウェアや、所与のプログラムにより実現できる。
【0042】
ゲーム演算部22は、ゲームの進行処理、選択画面の設定処理、オブジェクト空間上での各オブジェクトやキャラクタの位置や向きを求める処理、視点の位置や視線方向等を求める処理等の種々のゲーム処理を操作部10からの操作信号や、情報記憶媒体40から読み出すゲームプログラム42等に基づいて実行する。
【0043】
また、ゲーム演算部22は、風生成部220と、草制御部222を有し、ゲームの進行に応じて風の発生タイミングを決定すると、風生成部220には風の発生指示を、草制御部222には受風処理の指示をそれぞれ出力する。
【0044】
風生成部220は、ゲーム演算部22から風の発生指示が入力されると、情報記憶媒体40に記憶された風制御プログラム44を読み出して、オブジェクト空間内に風の生成源A〜Cを設定すると、一定時間毎に、各生成源A〜Cから発生させる風の強さを上記(1)〜(3)の式を用いて計算する。また、風生成部220は、風力を計算する度に現在時刻をカウントし、各生成源A〜Cの風力とともにメモリ26に記憶される履歴テーブル300(図3参照)に記憶する。
【0045】
草制御部222は、ゲーム演算部22から受風処理の指示が入力されると、情報記憶媒体40に記憶された受風処理プログラム46を読み出して、対象となる草オブジェクトが受ける風のベクトルを算出し、その風ベクトルに応じて草オブジェクトの倒れる角度、方向等を決定する。そして、決定した倒れ角、方向に従って各草オブジェクトを変形すると、該草オブジェクトのワールド座標系における座標データとともに画像生成部24に出力する。図8は、草制御部222が実行する受風処理を説明するフローチャートである。
【0046】
同図において、草制御部222は、変数iに0を代入して(ステップS1)、n個ある草オブジェクトからi番目の草オブジェクトの座標を検出する(ステップS2)。次いで、変数jに0を代入し(ステップS3)、j番目の生成源と草オブジェクトiとの距離dを算出する(ステップS4)。
【0047】
そして、ステップS4で算出した距離dと生成源jに定義された風の速度Vjとから風の進行時間tを算出し、現在の時刻Tに草オブジェクトiが受ける風の発生時刻(T−t)を算出する。そして、図3に示す履歴テーブル300を呼び出して、生成源jが草オブジェクトiに与える風ベクトルを決定する(ステップS5)。
【0048】
次いで、jに1を加算し(ステップS6)、j=3であるか、即ち、全ての生成源からの風ベクトルを取得したか否かを判断し(ステップS7)、まだ計算していない生成源が存在するならば、ステップS4に戻る。
【0049】
一方、ステップS7において、全ての生成源からの風ベクトルを取得していると判断した場合には、取得した全ての風ベクトルを合成し、草オブジェクトiが受ける風の合成ベクトルを決定する(ステップS8)。
【0050】
そして、iに1を加算して(ステップS9)、i=nであるか、即ち、全ての草オブジェクトに対して処理を実行したか否かを判断する(ステップS10)。未処理の草オブジェクトが存在する場合には、ステップS2に戻って、ステップS2〜S10を繰り返す。全ての草オブジェクトに対して処理が終了していれば、本処理を終了する。
【0051】
画像生成部24は、ゲーム演算部22からの指示等に応じて各種の画像処理を実行する。例えば、ゲーム演算部22が構築するオブジェクト空間における自キャラクタや仮想カメラの視点に基づく画像データを生成し、表示部30に出力して表示させる。また、表示部30は、画像生成部24から入力される画像データを画面に出力するためのものであり、CRT、LCD、HMD等のハードウェアにより実現できる。
【0052】
メモリ26は、風生成部220から現在の時刻および各生成源の風力が入力されると、図3に示すような履歴テーブル300を生成、あるいは更新して記憶するように構成されている。
【0053】
情報記憶媒体40は、ゲームプログラム42を記憶している。この情報記憶媒体40の機能は、CD−ROM、ゲームカセット、ICカード、MO、FD、DVD、メモリ、ハードディスク等のハードウェアによって実現できる。また、ゲームプログラム42には、風制御プログラム44および受風処理プログラム46が含まれており、風制御プログラム44は、風の生成源を設定するためのプログラム、風力計算をするためのプログラム、風履歴テーブル26を生成するためのプログラムを含み、受風処理プログラム46は、草オブジェクトの受風処理を実行するためのプログラム等を有する。
【0054】
次に、本実施の形態における風の生成処理における全体の動作を、図9に示すフローチャートに基づいて以下説明する。なお、本処理は、一定時刻毎に(例えば、1フレーム毎に)実行するものである。
【0055】
まず、風生成部220は、ゲーム演算部22から風の発生指示が入力されると、式(1)〜(3)を用いて風力を算出し(ステップS20)、履歴テーブル300に更新する(ステップS21)。
【0056】
また、草制御部222は、ゲーム演算部22から受風処理の実行指示が入力されると、対象となる全ての草オブジェクトが受ける風の強さを算出し、各草オブジェクトの倒れ角、方向を計算し(ステップS22)、本処理を終了する。
【0057】
次に、本実施の形態を実現できるハードウェアの構成の一例について、図10を用いて説明する。同図に示す装置では、CPU1000、ROM1002、RAM1004、情報記憶媒体1006、音生成IC1008、画像生成IC1010、I/Oポート1012、1014が、システムバス1016により相互にデータ入出力可能に接続されている。そして、画像生成IC1010には、ディスプレイ1018が接続され、音生成IC1008には、スピーカ1020が接続され、I/Oポート1012には、コントロール装置1022が接続され、I/Oポート1014には、通信装置1024が接続されている。
【0058】
情報記憶媒体1006は、プログラム、表示物を表現するための画像データ、音データ、プレイデータ等が主に格納されるものである。例えば、家庭用ゲーム装置では、ゲームプログラム等を格納する情報記憶媒体として、CD−ROM、ゲームカセット、DVD等が用いられ、プレイデータを格納する情報記憶媒体としてメモリカードなどが用いられる。また、業務用ゲーム装置では、ROM等のメモリやハードディスクが用いられ、この場合には、情報記憶媒体1006は、ROM1002になる。
【0059】
コントロール装置1022は、ゲームコントローラ、操作パネル等に相当するものであり、ユーザがゲーム進行に応じて行う判断の結果を装置本体に入力するための装置である。
【0060】
情報記憶媒体1006に格納されるプログラム、ROM1002に格納されるシステムプログラム(装置本体の初期化情報等)、コントロール装置1022によって入力される信号等に従って、CPU1000は、装置全体の制御や各種データ処理を行う。RAM1004は、このCPU1000の作業領域等として用いられる記憶手段であり、情報記憶媒体1006やROM1002の所与の内容、あるいはCPU1000の演算結果が格納される。
【0061】
更に、この種の装置には、音生成IC1008と画像生成IC1010とが設けられていて、ゲーム音やゲーム画像の好適な出力が行えるようになっている。音生成IC1008は、情報記憶媒体1006やROM1002に記憶される情報に基づいて効果音やバックグラウンド音楽等のゲーム音を生成する集積回路であり、生成されたゲーム音は、スピーカ1020によって出力される。また、画像生成IC1010は、RAM1004、ROM1002、情報記憶媒体1006等から出力される画像情報に基づいてディスプレイ1018に出力するための画素情報を生成する集積回路である。またディスプレイ1018は、CRTやLCD、TV、プラズマディスプレイ、プロジェクター等の表示装置を含む意である。
【0062】
また、通信装置1024は、ゲーム装置内部で利用される各種の情報を外部とやり取りするものであり、他のゲーム装置と接続されてゲームプログラムに応じた所与の情報を送受したり、通信回線を介して、ゲームプログラム等の情報を送受すること等に利用される。
【0063】
また、図1〜図7で説明した種々の処理は、図8あるいは図9のフローチャートに示した処理等を行うための風制御プログラム44、受風処理プログラム46等を含むプログラムを格納した情報記憶媒体1006と、該プログラムに従って動作するCPU1000、画像生成IC1010、音生成IC1008等によって実現される。なお、画像生成IC1010、音生成IC1008等で行われる処理は、CPU1000あるいは汎用のDSP等によりソフトウェア的に行ってもよい。
【0064】
図11に、ホスト装置1300と、このホスト装置1300と通信回線1302を介して接続される端末1304−1〜1304−nとを含むゲーム装置に本実施の形態を適用した場合の例を示す。
【0065】
この場合、図7に示す風制御プログラム44、受風処理プログラム46、ゲームプログラム42等は、例えば、ホスト装置1300が制御可能な磁気ディスク装置、磁気テープ装置、メモリ等の情報記憶媒体1306に格納されている。また、端末1304−1〜1304−nが、CPU、画像生成IC、音生成IC、を有し、スタンドアローンでゲーム画像、ゲーム音を生成できるものである場合には、ホスト装置1300からは、ゲーム画像、ゲーム音を生成するためのゲームプログラム等が端末1304−1〜1304−nに配送される。一方、スタンドアローンで生成できない場合には、ホスト装置1300がゲーム画像、ゲーム音を生成し、これを端末1304−1〜1304−nに伝送し端末において出力することになる。
【0066】
なお、本発明は、上記実施の形態で説明したものに限らず、種々の変形実施が可能である。例えば、風力を計算するに当って、式(1)〜(3)を毎時計算して、算出した3つの値を風力として採用することとしたが、例えば、Pn+1=Pn+kPn(1−Pn)等の漸化式等、他の式を利用して求めるようにしてもよい。なお、上記式のnは、計算回数を示しており、n+1は現在の、nは前回の計算結果を意味する。また、kは係数であり、適当な数値を代入することでアトラクタを生成する。
【0067】
あるいは、本実施の形態では、風の流れが周期的に、あるいは、極端な無秩序にならないためにアトラクタを用いた風力計算を採用したが、各風の生成源から発生する風の強さを周期関数によって算出することとしてもよい。この際、各生成源に異なる周期を与え、風にうねりを与えるようにしてもよい。また、風の周期を一定時間毎にランダムに変更して、長期のタイムスケールで非周期的になるようにしてもよい。この場合には、周期関数の時間に応じた周波数を記憶し、対象物が受ける風力を求める際に、風の発生時刻を周期関数に代入することで算出するようにしてもよい。
【0068】
また、設定する風の生成源を3つとしたが、この数に限定するものではない。あるいは、生成源を平面とし、風が各生成源から平行的に発生するものとしたが、風の生成源をオブジェクト空間の所与の一点とし、放射上に風が発生することとしてもよい。この場合には、風の発生点とその影響を受ける対象物との距離を算出して力を計算することとなる。
【0069】
なお、上記実施例では、風に対して草のオブジェクト1つ1つを計算することとしたが、風の影響を受ける対象となる事物が多量に存在し、全ての対象物に対して上記処理を実行したのでは処理が膨大になる場合には、次のように処理を簡単化してもよい。まず、対象物を図12(a)に示すようなブロック毎に分割し、各ブロックの各頂点が各生成源から受ける風ベクトルを求める。そして、同図(b)に示すように、各生成源から得た各風ベクトルを合成し、最終的に各頂点がうける風のベクトルを決定する。更に、同図(c)に示すように、各ブロックの頂点間に任意の数のベクトルを補うことで、ブロックの各頂点に与えた風ベクトルを滑らかに変化させる。そして、各ブロック内に存在する対象物には、各草オブジェクトの最近隣に設定した風ベクトルを与えることとする。
【0070】
また、各生成源で生成される力を「風」としたが、「波」を表現するものであってもよい。例えば、図2に示す生成源Aは上向きベクトルを、生成源B,Cは下向きベクトルをそれぞれ発生するものとする。そして、水平面を図12(a)に示すようにブロックで分割し、各ブロックの頂点と各生成源との距離を算出してその頂点が各生成源から取得するベクトルを算出する。図13(a)は、オブジェクト空間の断面図を示すものであり、水平面320に定義された各ブロックの頂点が取得したベクトルを表示している。そして、各ベクトルの合成ベクトルを水面の高さとして決定することで、図13(b)に示すような波を表現する。
【図面の簡単な説明】
【図1】本発明を適用することで、草が風によって揺れる様子を示す図であり、(a)〜(c)は、その時間経過をそれぞれ示している。
【図2】オブジェクト空間に風の生成源を設定した一例を示す図。
【図3】履歴テーブルの一例を示す図。
【図4】(a)は、各生成源から受ける風のベクトルをそれぞれ示した図。(b)は、(a)に示すベクトルの合成ベクトルを示す図。
【図5】オブジェクト空間を格子状に分割し、その各格子点上で受ける風の合成ベクトルを示す図。(a)〜(d)は、その時間経過を示す。
【図6】本発明を家庭用のゲーム装置に適用した場合の一例を示す図。
【図7】機能ブロック図。
【図8】受風処理を説明するフローチャート。
【図9】風生成処理の全体動作を説明するフローチャート。
【図10】本実施の形態を実現できるハードウェア構成の一例を示す図。
【図11】ホスト装置と通信回線を介して接続されるゲーム端末に本実施の形態を適用した場合の一例を示す図。
【図12】(a)は、ブロックの各頂点に受ける風ベクトルを表現した一例を示す図。(b)は、合成ベクトルを示す図。(c)は、2つの頂点間にベクトルを補った一例を示す図。
【図13】本発明を波に適用した場合の図。(a)は、各発生源から取得したベクトルを表示した一例を示す図。(b)は、合成ベクトルを示す図。
【符号の説明】
10 操作部
20 処理部
22 ゲーム演算部
220 風生成部
222 草制御部
24 画像生成部
26 メモリ
30 表示部
40 情報記憶媒体
42 ゲームプログラム
44 風制御プログラム
46 受風処理プログラム
Claims (10)
- オブジェクト空間内の所与の視点での画像を生成してゲームを実行するゲーム装置であって、
前記オブジェクト空間内の所与の領域に向かう所与の力の風を生成する生成源を、風の方向が異なるように当該領域の外側に複数設定する生成源設定手段と、
前記生成源それぞれが生成する風の力を変動させる変動手段と、
前記生成源それぞれが生成した風の力を当該風が生成された生成時刻と対応付けて記憶部に記憶する記憶手段と、
前記領域中の所与の位置において、当該位置と当該生成源間の距離、及び、当該生成源が生成した風の所与の進行速度を用いて、当該位置で当該時点において受ける風が生成された生成時刻を、前記各生成源それぞれについて算出する生成時刻算出手段と、
前記各生成源それぞれについて、前記算出された生成時刻において当該生成源が生成した風の力を前記記憶部から読み出す読出手段と、
前記読出手段により読み出された前記各生成源それぞれが生成した風の力を合成して、前記所与の位置で当該時点において受ける風の合成力を求める合成力算出手段と、
を備え、前記生成源それぞれが生成する風の力を変動させることで前記領域内において吹く風の方向及び強さが異なる複雑な風を表現することを特徴とするゲーム装置。 - オブジェクト空間内の所与の視点での画像を生成してゲームを実行するゲーム装置であって、
前記オブジェクト空間内の所与の水面領域に向かう所与の力の波を生成する生成源を、波の方向が異なるように当該領域の外側に複数設定する生成源設定手段と、
前記生成源それぞれが生成する波の力を変動させる変動手段と、
前記生成源それぞれが生成した波の力を当該波が生成された生成時刻と対応付けて記憶部に記憶する記憶手段と、
前記領域中の所与の位置において、当該位置と当該生成源間の距離、及び、当該生成源が生成した波の所与の進行速度を用いて、当該位置で当該時点において受ける波が生成された生成時刻を、前記各生成源それぞれについて算出する生成時刻算出手段と、
前記各生成源それぞれについて、前記算出された生成時刻において当該生成源が生成した波の力を前記記憶部から読み出す読出手段と、
前記読出手段により読み出された前記各生成源それぞれが生成した波の力を合成して、前記所与の位置で当該時点において受ける波の合成力を求める合成力算出手段と、
を備え、前記生成源それぞれが生成する波の力を変動させることで前記領域内における波の方向及び高さが複雑に変化する波を表現することを特徴とするゲーム装置。 - 請求項1または2に記載のゲーム装置であって、
前記生成源設定手段は、前記生成源を前記領域の周囲三方に少なくとも設定することを特徴とするゲーム装置。 - 請求項1から3のいずれかに記載のゲーム装置であって、
前記生成源設定手段は、少なくとも2つの前記生成源を、前記領域に向かう方向が直角となるように設定することを特徴とするゲーム装置。 - 請求項1から4のいずれかに記載のゲーム装置であって、
前記複数の生成源のうち、メインの生成源を設定するメイン生成源設定手段を更に備え、
前記変動手段は、前記メインの生成源による力の大きさを、残余の生成源よりも大きくして、前記生成源それぞれの力の大きさを変動させる、
ことを特徴とするゲーム装置。 - 請求項1から4のいずれかに記載のゲーム装置であって、
前記複数の生成源のうち、メインの生成源を設定するメイン生成源設定手段と、
前記メインの生成源による力の進行速度を、残余の生成源の進行速度よりも速く設定する進行速度設定手段と、
を更に備えたことを特徴とするゲーム装置。 - 請求項1から6のいずれか記載のゲーム装置であって、
前記変動手段は、前記ゲームの進行または時間経過に応じて、前記生成源それぞれの力の大きさを変動させることを特徴とするゲーム装置。 - 請求項1から7のいずれか記載のゲーム装置であって、
前記変動手段は、前記生成源それぞれの力の大きさを非周期的に変動させることを特徴とするゲーム装置。 - コンピュータに、オブジェクト空間内の所与の視点での画像を生成させてゲームを実行させるためのプログラムを記憶したコンピュータ読み取り可能な情報記憶媒体であって、
前記プログラムは、
前記オブジェクト空間内の所与の領域に向かう所与の力の風を生成する生成源を、風の方向が異なるように当該領域の外側に複数設定する生成源設定手段、
前記生成源それぞれが生成する風の力を変動させる変動手段、
前記生成源それぞれが生成した風の力を当該風が生成された生成時刻と対応付けて記憶部に記憶する記憶手段、
前記領域中の所与の位置において、当該位置と当該生成源間の距離、及び、当該生成源が生成した風の所与の進行速度を用いて、当該位置で当該時点において受ける風が生成された生成時刻を、前記各生成源それぞれについて算出する生成時刻算出手段、
前記各生成源それぞれについて、前記算出された生成時刻において当該生成源が生成した風の力を前記記憶部から読み出す読出手段、
前記読出手段により読み出された前記各生成源それぞれが生成した風の力を合成して、前記所与の位置で当該時点において受ける風の合成力を求める合成力算出手段、
として前記コンピュータを機能させ、前記生成源それぞれが生成する風の力を変動させることで前記領域内において吹く風の方向及び強さが異なる複雑な風を表現するように前記コンピュータを機能させるためのプログラムである、
情報記憶媒体。 - コンピュータに、オブジェクト空間内の所与の視点での画像を生成させてゲームを実行させるためのプログラムを記憶したコンピュータ読み取り可能な情報記憶媒体であって、
前記プログラムは、
前記オブジェクト空間内の所与の水面領域に向かう所与の力の波を生成する生成源を、波の方向が異なるように当該領域の外側に複数設定する生成源設定手段、
前記生成源それぞれが生成する波の力を変動させる変動手段、
前記生成源それぞれが生成した波の力を当該波が生成された生成時刻と対応付けて記憶部に記憶する記憶手段、
前記領域中の所与の位置において、当該位置と当該生成源間の距離、及び、当該生成源が生成した波の所与の進行速度を用いて、当該位置で当該時点において受ける波が生成された生成時刻を、前記各生成源それぞれについて算出する生成時刻算出手段、
前記各生成源それぞれについて、前記算出された生成時刻において当該生成源が生成した波の力を前記記憶部から読み出す読出手段、
前記読出手段により読み出された前記各生成源それぞれが生成した波の力を合成して、前記所与の位置で当該時点において受ける波の合成力を求める合成力算出手段、
として前記コンピュータを機能させ、前記生成源それぞれが生成する波の力を変動させることで前記領域内における波の方向及び高さが複雑に変化する波を表現するように前記コンピュータを機能させるためのプログラムである、
情報記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000092240A JP4462704B2 (ja) | 2000-03-29 | 2000-03-29 | ゲーム装置および情報記憶媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000092240A JP4462704B2 (ja) | 2000-03-29 | 2000-03-29 | ゲーム装置および情報記憶媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001276416A JP2001276416A (ja) | 2001-10-09 |
JP4462704B2 true JP4462704B2 (ja) | 2010-05-12 |
Family
ID=18607603
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000092240A Expired - Fee Related JP4462704B2 (ja) | 2000-03-29 | 2000-03-29 | ゲーム装置および情報記憶媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4462704B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3734823B1 (ja) | 2005-01-26 | 2006-01-11 | 任天堂株式会社 | ゲームプログラムおよびゲーム装置 |
JP2007286669A (ja) * | 2006-04-12 | 2007-11-01 | Sony Corp | 画像処理装置および方法、並びにプログラム |
JP5031260B2 (ja) | 2006-05-02 | 2012-09-19 | 任天堂株式会社 | オブジェクト制御プログラム、オブジェクト制御装置、オブジェクト制御システムおよびオブジェクト制御方法 |
-
2000
- 2000-03-29 JP JP2000092240A patent/JP4462704B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2001276416A (ja) | 2001-10-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8915784B2 (en) | Program, information storage medium, and image generation system | |
US9044669B2 (en) | Program, information storage medium, and image generation system | |
US20090244064A1 (en) | Program, information storage medium, and image generation system | |
US8909506B2 (en) | Program, information storage medium, information processing system, and information processing method for controlling a movement of an object placed in a virtual space | |
JP3926307B2 (ja) | 3次元画像描画装置及び方法、プログラム、並びに記録媒体 | |
JP2005316948A (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP2013208373A (ja) | プログラム、情報記憶媒体及びサーバ | |
JP2010035978A (ja) | ゲームプログラムおよびゲーム装置 | |
US7402104B2 (en) | Game performing method, game apparatus, storage medium, data signal and program | |
JP4462704B2 (ja) | ゲーム装置および情報記憶媒体 | |
US8216066B2 (en) | Game device, game device control method, program, and information storage medium | |
JP2011172673A (ja) | プログラム、情報記憶媒体及びゲーム装置 | |
JP2010029375A (ja) | ゲームシステム、プログラム、及び情報記憶媒体 | |
CN111862273A (zh) | 动画处理方法、装置、电子设备及存储介质 | |
US7129945B2 (en) | Image generation method, program and information storage medium | |
CN116196611A (zh) | 基于挥手动作的体感游戏方法 | |
JP2001276414A (ja) | ゲーム装置、および、情報記憶媒体 | |
JP2001286675A (ja) | ゲーム装置、情報記憶媒体およびゲームシステム | |
JP2009251887A (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP4467590B2 (ja) | 描画装置、描画方法、および描画プログラム | |
JP4229316B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP6960968B2 (ja) | プログラム及びサーバ | |
JP2007087030A (ja) | プログラム、情報記憶媒体及び画像生成システム | |
JP2009247555A (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP2009251883A (ja) | 画像生成システム、プログラム及び情報記憶媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070216 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20070216 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20070307 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20070307 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090728 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090928 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091110 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100108 |
|
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: 20100209 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100216 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130226 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4462704 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130226 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130226 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140226 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |