JP4443716B2 - ゲーム装置、および、情報記憶媒体 - Google Patents
ゲーム装置、および、情報記憶媒体 Download PDFInfo
- Publication number
- JP4443716B2 JP4443716B2 JP2000092523A JP2000092523A JP4443716B2 JP 4443716 B2 JP4443716 B2 JP 4443716B2 JP 2000092523 A JP2000092523 A JP 2000092523A JP 2000092523 A JP2000092523 A JP 2000092523A JP 4443716 B2 JP4443716 B2 JP 4443716B2
- Authority
- JP
- Japan
- Prior art keywords
- snow
- area
- unit area
- model
- 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
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/60—Methods for processing data by generating or executing the game program
- A63F2300/66—Methods for processing data by generating or executing the game program for rendering three dimensional images
- A63F2300/663—Methods for processing data by generating or executing the game program for rendering three dimensional images for simulating liquid objects, e.g. water, gas, fog, snow, clouds
Landscapes
- Image Generation (AREA)
Description
【発明の属する技術分野】
本発明は、3次元の仮想空間の画像を所与の視点に基づき生成し、当該生成画像を表示させることによって所与のゲームを実行するゲーム装置等に関する。
【0002】
【従来の技術】
3次元の仮想空間の画像を所与の視点に基づいて生成する場合、仮想空間内の至る所に降る雪や雨、一面に広がる草原等の動きをよりリアルに表現するためには、所与の視点の視界に関わらず、雪や雨の粒子1つ1つ、あるいは、草のオブジェクト1つ1つを全空間に渡って定義し、1フレーム毎にその運動(雪や雨ならば落下運動、草ならば風に揺れる運動等)を計算する必要がある。
【0003】
【発明が解決しようとする課題】
しかしながら、仮想空間に降る雪や雨、あるいは、一面に広がる草等のオブジェクトを表現する上記方法をゲーム装置に適用する場合には、次のような問題があった。ゲーム装置においては、プレーヤの入力操作に応じてリアルタイムで画像を生成しなければならない。しかしながら、ゲーム空間である仮想空間が広大に設定されている場合、その広さに応じて設定する粒子やオブジェクトの数が増加するため、空間全体に渡る粒子やオブジェクトの運動を計算する処理はゲームを進行させる全体の処理に対してかなりの負担となる。また、全ての粒子やオブジェクトの移動位置を記憶するためのメモリ領域が大量に必要となるという問題がある。更に、メモリに対する全粒子の位置データの入出力も、画像を生成する処理の速度を低下させる一因となる。
【0004】
本発明の課題は、上記問題を解決するためになされたものであって、雨や雪、草原や森林といったゲーム画像の内の環境に係る画像の生成を効率的かつ高速に実現することである。
【0005】
【課題を解決するための手段】
上記課題を解決するための第1の発明は、3次元の仮想空間の画像を所与の視点に基づき生成し、当該生成画像を表示させることによって所与のゲームを実行するゲーム装置において、前記仮想空間が同一の環境にあることを擬似的に表現するために、前記所与の視点の視線方向または視点位置が変化する際に、視界から外れた領域内の環境を新たに視界となる領域に表現するための表現手段(例えば、図9の雪位置決定部224)を備えることを特徴とするゲーム装置である。
【0006】
第6の発明は、3次元の仮想空間の画像を所与の視点に基づき生成することによって所与のゲームを実行するための情報を記憶した情報記憶媒体であって、前記仮想空間が同一の環境にあることを擬似的に表現するために、前記所与の視点の視線方向または視点位置が変化する際に、視界から外れた領域内の環境を新たに視界となる領域に表現するための表現情報(例えば、図9の雪制御情報44)を含むことを特徴とする情報記憶媒体である。
【0007】
ここに、環境とは、プレーヤキャラクタ等のキャラクタを除いた仮想空間を指す意であり、地面や草原等の地形の他、雨や雪、霧といった自然現象を含む、方向に対する特異性を持たないもののことである。
【0008】
この第1又は第6の発明によれば、画面上に表現された環境が所与の視点に基づく視界の移動に伴って繰り返し表現されるため、仮想空間に設定する環境を空間全体に渡って定義する必要がなく、ゲーム画像を生成する処理速度を向上させるとともに、メモリ資源を節約することができる。また、視界の移動に伴って、視界から外れた領域内の環境(あるいは、その環境を構成する要素)が新たに視界となる領域へと順次移動されるため、違和感のない画像を生成することができる。
【0009】
また、第2の発明として、第1の発明のゲーム装置において、前記環境は、所与の粒子または所与のオブジェクトが1つあるいは複数存在する空間であって、前記所与の視点の視線方向または視点位置が変化した場合には、前記仮想空間に前記所与の粒子または所与のオブジェクトが存する空間が連続的に広がっていることを前記表現手段により擬似的に表現することとしてもよい。
【0010】
また、第7の発明として、第6の発明の情報記憶媒体において、所与の粒子または所与のオブジェクトが1つあるいは複数存在する空間を前記環境とするための情報と、前記所与の視点の視線方向または視点位置が変化した場合には、前記仮想空間に前記所与の粒子または所与のオブジェクトが存する空間が連続的に広がっていることを擬似的に表現するための情報を含むこととしてもよい。
【0011】
この第2又は第7の発明によれば、環境を構成する要素が粒子あるいはオブジェクトであり、視界の位置や方向が変更しても、粒子あるいはオブジェクトが仮想空間内の至る所に存在するかのように表現することができる。従って、所与の粒子または所与のオブジェクトの数が多くなる程、本発明を適用する効果、即ち、画像生成に係る処理速度の向上を図ることができる。
【0012】
また、第3の発明として、第2の発明のゲーム装置において、前記所与の粒子は、雨または雪であることとしてもよい。
【0013】
また、第4の発明として、第2の発明のゲーム装置において、前記所与のオブジェクトは、地形オブジェクトであることとしてもよい。ここに、地形オブジェクトとは、砂漠や地割れした地面、草が密生する草原等、仮想空間の地面を構成するオブジェクトを意味するものである。
【0014】
この第3又は第4の発明によれば、雪や雨が仮想空間全体に降る様子や、一面に広がる砂漠、乾燥しきって地割れした地面、どこまでも続く草原などを表現することができる。また、視界内に必要な数のみを考慮すればよいため、雪や雨の落下運動や、草原の一つ一つの草が風になびく運動等を計算する処理を大幅に削減することができる。
【0015】
また、第5の発明として、第1から第4の何れかの発明のゲーム装置において、単位領域(例えば、発明の実施の形態において説明する雪モデル)に所与の環境を設定するための単位領域設定手段(例えば、図9の雪演算部220)を備え、前記表現手段は、前記単位領域の一部または全部を、前記所与の視点の視界内に複製することにより、前記仮想空間が同一の環境にあることを擬似的に表現することとしてもよい。
【0016】
また、第8の発明として、第6又は第7の発明の情報記憶媒体において、単位領域に所与の環境を設定するための情報と、前記単位領域の一部または全部を、前記所与の視点の視界内に複製することにより、前記仮想空間が同一の環境にあることを擬似的に表現するための情報とを含むこととしてもよい。
【0017】
この第5又は第8の発明によれば、単位領域が有する環境(あるいは、粒子やオブジェクト)を視界内に複数配置することができる。従って、単位領域を視界に対して小さく設定し、その複製を視界内に複数表現すれば、単位領域内の環境を定義する処理や、単位領域内に存する粒子やオブジェクトの運動を制御する処理等を更に削減することができるとともに、メモリ資源のより一層の節約をすることができる。
【0018】
【発明の実施の形態】
以下に、本発明の好適な実施の形態について図面を参照して説明する。なお、以下では、本発明をアドベンチャーゲームに適用した場合を例に取って、ゲーム空間である仮想空間の至る所で同じように降る雪(即ち、雪が降る環境)を効率良く表現する方法について説明するが、本発明が適用されるものはこれに限られるものではない。
【0019】
図1(a)は、本発明を適用することで、雪が降る環境を表現した一画像例を示す図である。同図(a)は、プレーヤが操作する自キャラクタの視点に基づく画像であり、雪が空間全体に降っているように表現するために、各雪の粒子は、所与の視点に近い位置に存在するほど大きく、遠くに存在するほど小さく表現されている。一方、図1(b)は、自キャラクタが図1(a)の位置から右方向に平行移動した場合の一画像例を示している。同図(b)において、新たに視界となった領域202に表示されている雪は、自キャラクタの視点位置の移動によって視界から外れた領域、即ち、同図(a)における領域200に表示されていた雪である。このように、本発明は、仮想空間の環境を視界にのみ設定し、視界の位置が移動すると、その移動に伴ってワールド空間に設定した環境の一部あるいは全部の設定位置を変更するものである。
【0020】
次に、本発明の原理を説明する。
まず、仮想空間とは独立した所与の大きさの雪モデルを設定する。雪モデルとは、所与の大きさをした空間中を雪である複数の粒子が降るモデルである。そして、雪モデルにおける各粒子の位置座標と、仮想空間における位置座標とを対応づけることにより、雪モデルを仮想空間における視界内の環境として表現する。即ち、所与の大きさをした空間中にのみ雪を降らせ、各雪の粒子を仮想空間における視界内のどの位置に表現するかを決定する。このことにより、降雪の処理を高速化するとともに、メモリ資源を節約することができる。以下、詳細にこの原理を説明する。
【0021】
図2は、雪モデルの一例を示す図であり、(xl、yl、zl)は、雪モデルの座標系(以下、ローカル座標系という。)を、Olは、ローカル座標系の原点をそれぞれ意味している。また、雪モデルを直方体として定義し、各辺の長さは、x軸方向はLx、y軸方向はLy、z軸方向はLzであるとする。そして、この直方体の内部に雪の粒子(実際には、座標点)n個を定義し、初期条件(初期位置、初速度等)に基づいて1フレーム毎に各雪の粒子の初期位置からの移動量を計算する。
【0022】
そして、生成した雪モデルを視界に表現する位置を決定する。図3は、仮想空間に定義した座標系(以下、ワールド座標系という。)をY軸方向から見た図である。同図において、自キャラクタの視界302の好適な位置に雪を表現する領域となる表現領域304を配置する。従って、表現領域304は、視界302の移動に伴ってワールド座標系を移動することとなる。また、表現領域304を雪モデルと同じ形状、即ち、Lx×Ly×Lzの直方体のものとし、雪モデルを構成する全ての雪の粒子をこの表現領域304の内部に表現する。しかしながら、雪モデルに定義されたローカル座標系の原点位置を表現領域304の一点(例えば、表現領域の左下点322)に定義した場合、表現領域304の移動に伴って雪モデルも移動することとなる。これによって、視界の位置が変化し、自キャラクタが見るキャラクタ等の位置が変化したにもかかわらず、雪の表示が変化しないという矛盾が生じる。
【0023】
この矛盾を解消するために、表現領域の移動の前後で重なる領域に存在する雪の粒子の位置は変更せずに、表現領域の移動によって表現領域から外れた領域に存在する粒子の位置のみを変化させる。例えば、図4(a)に示す表現領域306が、X軸方向に移動して図4(b)に示す位置に変化した場合には、領域308の部分に存在した雪の粒子を新たに表現領域となった領域310の部分に表現し、移動の前後で重なる領域に存在する粒子は移動させない。同様に、図4(b)に示す表現領域306がZ軸方向に移動したことで、図4(c)に示す位置に変化した場合には、領域312に存在した雪の粒子を領域314の位置に表現する。
【0024】
具体的な方法としては、まず、ワールド座標系に、各雪の粒子の標準位置を設定する。標準位置とは、雪モデルの初期状態をワールド座標系の標準となる位置(例えば、原点Ow)に対応付けた場合の、各粒子の位置(初期位置)を示すものである。そして、1フレーム毎に自キャラクタの視点位置および視線方向に基づいて表現領域を設定し、この表現領域と各粒子の標準位置とを比較するための代表点を表現領域内に決定する。各粒子の標準位置と表現領域の代表点との差が表現領域の幅の何倍分あるかを算出し、ちょうど表現領域の整数倍となる位置を、ワールド座標系における粒子の初期位置として決定する。そして、各雪のローカル座標系での移動量(即ち、各雪の初速度に基づく移動量)を表現領域内に決定した初期位置に加算して雪の表現位置を決定する。
【0025】
以下に、式を用いて標準位置から表現領域への変換処理について説明する。まず、表現領域の代表点の座標(Xm、Ym、Zm)を以下のように算出する。
Xm=Xc+d*sin(ry)+Lx/2 …(1)
Ym=Yc …(2)
Zm=Zc+d*cos(ry)+Lz/2 …(3)
ここに、(Xc、Yc、Zc)とは自キャラクタの視点の座標を、ryは(X,Z)平面上におけるZ軸と視線ベクトルとの成す角を、dは表現領域の中心点と視点との距離をそれぞれ意味している。例えば、視点がX軸方向に平行移動した場合には、ry=0であるため、代表点は、(Xm、Zm)=(Xc+d+Lx/2、Zc+Lz/2)の位置、即ち、図3に示す表現領域304の右上点318の座標が算出される。
【0026】
そして、ワールド座標系に設定した各粒子を標準位置から表現領域内に変換する。この処理の特徴は、各雪の粒子を表現する位置を、表現領域(あるいは雪モデル)の各辺の長さ毎に等間隔で移動させることである。まず、各粒子の標準位置(X0、Z0)と表現領域の代表点(Xm、Zm)の差分を計算し、
(δX、δZ)=(Xm−X0、Zm−Z0) …(4)
差分(δX,δZ)の各座標を表現領域の各辺の長さ(Lx、Lz)で割った商(α、β)を算出する。そして、算出した商(α、β)と表現領域の各辺(Lx、Lz)の各座標を掛け合わせ(αLx、βLz)、この値に標準位置の座標(X0、Z0)を加算して、表現領域内に変換した雪の初期位置とする。即ち、
(X、Z)=(αLx、βLz)+(X0、Z0) …(5)
が表現領域内の雪の初期位置となる。
【0027】
例えば、図5(a)に示すように、雪モデル320をワールド座標系の原点に設定し、各粒子の標準位置を設定する。ただし、図5(a)は、雪モデル320を構成する3つの粒子322、324、326の標準位置をワールド座標系のY軸方向から見た図である。図5(b)は、ワールド座標系に、視点300に基づいて表現領域328を配置した一例を示す図である。同図(b)において、表現領域328の代表点は、(1)〜(3)の式により、右上点330の座標として計算される。
【0028】
まず、粒子322の標準位置と代表点330との差分(δX,δZ)を表現領域の各辺(Lx、Lz)で割った商は、(0、0)と計算される。従って、粒子322の表現領域328における初期位置は標準位置のままである。一方、粒子324と代表点330との差分を(Lx、Lz)で割った商は(0、1)と計算される。従って、粒子324のZ座標にLzを加算し、図5(c)に示すように、表現領域328内の位置324´の場所に初期位置として決定される。また、粒子326と代表点330との差分を(Lx、Lz)で割った商は(1、1)と計算されるため、図5(c)における位置326´に初期位置が決定されることとなる。
【0029】
そして、雪粒子の標準位置を表現領域内に変換して表現領域内での初期位置を決定すると、初速度(vx、vy、vz)に雪発生からの時間を掛けた移動量を加算して、その時刻における雪の粒子の表現位置を決定する。
【0030】
このように、各雪の粒子の標準位置を、表現領域の各辺(Lx、Lz)間隔で移動させることで、表現領域内へ変換させる。このため、図6に示すように、視点の移動に伴って、表現領域336が表現領域338の位置に移動した場合であっても、その移動の前後で重なる部分に存在する粒子340、342の位置は変化せず、移動後の表現領域338から外れる部分に存在する粒子344の位置だけが変更することとなり、生成される画像に矛盾が生じない。また、雪の発生からの時間をカウントし、初期位置からの移動量を毎時算出することとしたので、その時々の粒子の位置をメモリに記憶する必要がない。このため、メモリへの転送の負担を軽減し、画像生成処理をより高速にすることができる。
【0031】
また、ここで注意すべきことは、雪モデルとして定義したn個の粒子は、ワールド座標系とは無関係にローカル座標系内で運動するということである。そして、雪の粒子の表現位置を決定する処理は、表現領域の位置と各粒子の初期位置に基づく標準位置とを対応付け、その対応する位置に粒子が存在すると宣言する処理である。従って、表現領域が複数存在する場合には、各表現領域と各粒子の標準位置とを対応付けて、複数の雪モデル(即ち、複数の粒子)がワールド座標系に存在するかのように設定することができる。
【0032】
従って、図7に示すように、視界内に2つの表現領域350、352を設けることも可能である。同図において、表現領域350は、雪モデルと合同であり、表現領域352は、XおよびZ軸方向に対してそれぞれ雪モデルの2倍の長さを有している。従って、雪の粒子の表現位置を決定する際には、表現領域352を雪モデルと合同な形状に分割し、各領域350および352−1〜4に対して、上記と同様の処理を施すことにより雪が降る環境を表現することができる。
【0033】
次に、本実施の形態における構成を説明する。
図8は、本発明を家庭用のゲーム装置に適用した場合の一例を示す図である。同図において、ユーザは、ディスプレイ1200に映し出されたゲーム画像を見ながら、ゲームコントローラ1202、1204を操作してアドベンチャーゲーム等のゲームを楽しむ。この場合、ゲームプログラム等のゲームを行うために必要な情報は、本体装置に着脱自在な情報記憶媒体であるCD−ROM1206、ICカード1208、メモリカード1212等に格納されている。
【0034】
図9は、本実施の形態における機能ブロックの一例を示す図である。同図において、機能ブロックは、操作部10と、処理部20と、表示部30と、情報記憶媒体40とから構成されている。
【0035】
操作部10は、ゲームにおける自キャラクタの操作や、ゲーム開始あるいは中止等の指示を入力するためのものであり、図8に示す、ゲームコントローラ1202、1204が操作部10に相当する。
【0036】
処理部20は、システム全体の制御、システム内の各ブロックへの命令の指示、ゲーム処理、画像処理、音処理等の各種の処理を行うものであり、その機能は、各種プロセッサ(CPU、DSP等)、あるいはASIC(ゲートアレイ等)等のハードウェアや、所与のプログラムにより実現できる。また、処理部20には、主に、ゲーム演算部22、画像生成部24が含まれる。
【0037】
ゲーム演算部22は、ゲームの進行処理、選択画面の設定処理、仮想空間上での各オブジェクトやキャラクタの位置や向きを求める処理、視点の位置や視線方向等を求める処理等の種々のゲーム処理を操作部10からの操作信号や、情報記憶媒体40から読み出すゲームプログラム42等に基づいて実行する。
【0038】
また、ゲーム演算部22は、情報記憶媒体40から雪制御情報44を読み出して本発明を実現するための処理を実行する、雪演算部220と、領域決定部222と、雪位置決定部224とを有する。なお、ゲーム演算部22は、ゲームの進行に応じて雪の発生タイミングを決定し、雪演算部220には、雪モデルを生成させるための指示信号を、領域決定部222には、雪を仮想空間に表現する位置を決定させるための指示信号をそれぞれ出力する。
【0039】
雪演算部220は、ゲーム演算部22から雪モデルの生成指示が入力されると、図2に示すような雪モデルを生成する。即ち、雪演算部220は、ローカル座標系における初期位置と、初速度とに基づいて各雪の初期位置からの移動量を1フレーム毎に計算して、雪位置決定部224に出力する。
【0040】
具体的には、1つの雪の寿命をFmaxフレームと定義する。そして、雪を降らせ始めたフレームから毎フレームカウントするカウンタfwを設け、各粒子の時刻Fを計算する。例えば、
F=(fw+f0)mod Fmax …(6)
として、時刻FがFmaxになるまで粒子を運動させることとする。ここに、modとは、(fw+f0)をFmaxで割った余りを取ることを意味する。また、f0は、各粒子に初期条件として与えられたフレーム数であり、初期位置に応じて設定する。
【0041】
そして、雪の初期位置からの移動量、即ち、
(δx,δy,δz)=(vx、vy、vz)*F …(7)
を計算する。例えば、F=9であれば、初期位置から9フレーム後の粒子の位置を算出する。ここに、異なる粒子の初期位置の高さ(y軸方向)が同じであっても、f0の値が異なる場合、Fの値が異なるため、その2つの粒子は異なる高さに表現されることとなる。
【0042】
このように、雪演算部220は、雪制御情報44から各雪の粒子の初期条件を読出し、雪発生からの時間をカウントして、毎時における初期位置からの移動量を計算している。従って、各時刻での雪の位置をメモリ等に書き戻す必要がないため、メモリとのデータ転送の管理・実行処理を削減することができる。
【0043】
また、雪演算部220は、各雪の色の濃度(あるいは、透明度)Aを制御する。例えば、初期の色の濃度をA0、色の変化速度をvaとし、各フレーム毎に
A=A0+va*F …(8)
を計算する。
【0044】
領域決定部222は、ゲーム演算部22からワールド座標系における自キャラクタの視点位置および視線方向が入力されると、図3あるいは図7に示すように、視点の視線上に各表現領域の中心点を設定し、視界全体に雪を表現できるように表現領域を配置する。
【0045】
雪位置決定部224は、雪演算部220から各粒子の初期位置が入力されると、ワールド座標系に各粒子の標準位置を設定する。また、領域決定部222から表現領域の設定位置が入力されると、表現領域の代表点を計算し、変換処理を実行して標準位置の粒子を表現領域に変換する。そして、雪演算部220から入力される各粒子の移動量を、変換した表現領域内の粒子の初期位置に加算して各粒子のワールド座標系における表現位置を決定する。
【0046】
以下に、図10(a)に示すような雪モデル600を用いて本発明を適用した場合について説明する。図10(a)に示す雪モデル600では、雪モデルの1/3の領域に雪の粒子が定義されていない。また、図10(b)は、ワールド座標系に、キャラクタ602と木オブジェクト604を設定した一例を示す図であり、格子状に引かれた線は、雪モデルとの対応を明確にするために表記したものであって、実際に画像化される線ではない。図11(a)は、図10(b)の606の位置に自キャラクタの視点があり、表現領域を608の位置に設定した場合に生成される画像を示す図である。図11(a)において、画面右側の1/3の領域に雪が表現されていない理由は、図10(a)に示す雪モデル600に起因する。
【0047】
一方、自キャラクタの視点位置が図10(b)の610に移動すると、これに伴って表現領域608も表現領域612の位置に移動する。新たに表現領域となった部分614には、表現領域612から外れた部分616に表現されていた粒子が表現されることとなる。従って、視点610に基づく画像は、図11(b)に示すものとなる。図11(a)の領域700に表示されていた雪が、図11(b)の領域702に表示される。
【0048】
画像生成部24は、ゲーム演算部22からの指示に応じて各種の画像処理を行う。例えば、ゲーム演算部22が設定する仮想空間における自キャラクタの視点に基づく画像データを生成し、表示部30に出力して表示させる。また、画像生成部24は、ゲーム演算部22から各雪粒子の座標データおよび色の濃度(透明度)データが入力されると、視点から見える奥行き順に従って大きさを変更させ、色の濃度データに従って濃度を変更させて雪の画像データを生成する。
【0049】
表示部30は、画像生成部24から入力される画像データを画面に出力するものであり、CRT、LCD、HMD等のハードウェアにより実現できる。
【0050】
情報記憶媒体40は、ゲームプログラム42を記憶している。この情報記憶媒体40の機能は、CD−ROM、ゲームカセット、ICカード、MO、FD、DVD、メモリ、ハードディスクなどのハードウェアによって実現できる。また、情報記憶媒体40には、雪制御情報44が含まれており、この雪制御情報44には、後述する雪表現処理を実行するためのプログラム、および、各雪の初期条件等のデータ等が含まれている。
【0051】
次に、雪演算部220、領域設定部222、雪位置決定部224により実行される雪表現処理について、図12に示すフローチャートを用いて以下説明をする。なお、本処理は、1フレーム毎に、全ての表現領域に対して実行するものである。
【0052】
図12において、領域決定部222は、ゲーム演算部22から自キャラクタの視点位置および視線方向等のデータが入力されるとワールド座標系における表現領域の位置を決定する(ステップS1)。そして、表現領域の代表点となる座標を計算する(ステップS2)。
【0053】
次いで、雪演算部220が変数iに0を代入した後(ステップS3)、雪位置決定部224は、雪演算部220からローカル座標系におけるi番目の粒子の初期位置が入力されると、ワールド座標系の標準的な位置と対応付けて、標準位置を設定する(ステップS4)。
【0054】
また、雪演算部220は、雪モデル中のi番目の粒子を選択し、ローカル座標系における雪粒子の移動量(δx、δy、δz)を算出する(ステップS5)。また、色の濃度を計算して(ステップS6)、色濃度データとして画像生成部24に出力する。
【0055】
また、雪位置決定部224は、ステップS4において、i番目の粒子の標準位置を設定すると、雪演算部220の処理と並列して、i番目の粒子の標準位置から表現領域への変換処理を実行する。まず、i番目の粒子と代表点との差分(δX,δZ)を計算する(ステップS7)。
【0056】
次いで、(δX/Lx、δZ/Lz)の商(α、β)を算出する(ステップS8)。そして、(αLx+X0、βLz+Z0)を算出して、表現領域内での粒子iの初期位置(X,Z)を求める(ステップS9)。
【0057】
雪位置決定部224は、ステップS5で算出した粒子iのローカル座標系での移動量(δx、δy、δz)と、ステップS9で求めた表現領域内での粒子iの初期位置(X、Z)とから、ワールド座標系における粒子iの表現位置(X、Y、Z)を決定し(ステップS10)、粒子iの座標データとして画像生成部24に出力する。
【0058】
画像生成部24は、ゲーム演算部22から入力された色濃度データと座標データに基づいて粒子iの画像を生成する(ステップS11)。
【0059】
そして、iに1を加算し(ステップS12)、i=nであるか否か、即ち、雪モデルに定義された全ての粒子の処理を終了したか否かを確かめる(ステップS13)。未処理の粒子が存在するならば、ステップS4に戻ってステップS4からS13の処理を繰り返し、粒子iの表現位置を決定し、粒子iの画像を生成する。ステップS13において、i=nの条件を満たすならば、本処理を終了する。
【0060】
次に、本実施の形態を実現できるハードウェアの構成の一例について、図13を用いて説明する。同図に示す装置では、CPU1000、ROM1002、RAM1004、情報記憶媒体1006、音生成IC1008、画像生成IC1010、I/Oポート1012、1014が、システムバス1016により相互にデータ入出力可能に接続されている。そして、画像生成IC1010には、ディスプレイ1018が接続され、音生成IC1008には、スピーカ1020が接続され、I/Oポート1012には、コントロール装置1022が接続され、I/Oポート1014には、通信装置1024が接続されている。
【0061】
情報記憶媒体1006は、プログラム、表示物を表現するための画像データ、音データ、プレイデータ等が主に格納されるものである。例えば、家庭用ゲーム装置では、ゲームプログラム等を格納する情報記憶媒体として、CD−ROM、ゲームカセット、DVD等が用いられ、プレイデータを格納する情報記憶媒体としてメモリカードなどが用いられる。また、業務用ゲーム装置では、ROM等のメモリやハードディスクが用いられ、この場合には、情報記憶媒体1006は、ROM1002になる。
【0062】
コントロール装置1022は、ゲームコントローラ、操作パネル等に相当するものであり、ユーザがゲーム進行に応じて行う判断の結果を装置本体に入力するための装置である。
【0063】
情報記憶媒体1006に格納されるプログラム、ROM1002に格納されるシステムプログラム(装置本体の初期化情報等)、コントロール装置1022によって入力される信号等に従って、CPU1000は、装置全体の制御や各種データ処理を行う。RAM1004は、このCPU1000の作業領域等として用いられる記憶手段であり、情報記憶媒体1006やROM1002の所与の内容、あるいはCPU1000の演算結果が格納される。
【0064】
更に、この種の装置には、音生成IC1008と画像生成IC1010とが設けられていて、ゲーム音やゲーム画像の好適な出力が行えるようになっている。音生成IC1008は、情報記憶媒体1006やROM1002に記憶される情報に基づいて効果音やバックグラウンド音楽等のゲーム音を生成する集積回路であり、生成されたゲーム音は、スピーカ1020によって出力される。また、画像生成IC1010は、RAM1004、ROM1002、情報記憶媒体1006等から出力される画像情報に基づいてディスプレイ1018に出力するための画素情報を生成する集積回路である。またディスプレイ1018は、CRTやLCD、TV、プラズマディスプレイ、プロジェクター等の表示装置を含む意である。
【0065】
また、通信装置1024は、ゲーム装置内部で利用される各種の情報を外部とやり取りするものであり、他のゲーム装置と接続されてゲームプログラムに応じた所与の情報を送受したり、通信回線を介して、ゲームプログラム等の情報を送受すること等に利用される。
【0066】
また、図1〜図11で説明した種々の処理は、図12のフローチャートに示した処理等を行うための雪制御情報44等を含むプログラムを格納した情報記憶媒体1006と、該プログラムに従って動作するCPU1000、画像生成IC1010、音生成IC1008等によって実現される。なお、画像生成IC1010、音生成IC1008等で行われる処理は、CPU1000あるいは汎用のDSP等によりソフトウェア的に行ってもよい。
【0067】
図14に、ホスト装置1300と、このホスト装置1300と通信回線1302を介して接続される端末1304−1〜1304−nとを含むゲーム装置に本実施の形態を適用した場合の例を示す。
【0068】
この場合、図9に示す雪制御情報44や、ゲームプログラム42等は、例えば、ホスト装置1300が制御可能な磁気ディスク装置、磁気テープ装置、メモリ等の情報記憶媒体1306に格納されている。また、端末1304−1〜1304−nが、CPU、画像生成IC、音生成IC、を有し、スタンドアローンでゲーム画像、ゲーム音を生成できるものである場合には、ホスト装置1300からは、ゲーム画像、ゲーム音を生成するためのゲームプログラム等が端末1304−1〜1304−nに配送される。一方、スタンドアローンで生成できない場合には、ホスト装置1300がゲーム画像、ゲーム音を生成し、これを端末1304−1〜1304−nに伝送し端末において出力することになる。
【0069】
なお、本発明は、上記実施例で説明したものに限らず、種々の変形実施が可能である。例えば、上記実施例においては、雪の発生に係る処理をCPUが実行することとして説明したが、ベクトル演算プロセッサ等を用いてゲーム演算処理とは独立して処理することとしてもよい。即ち、雪の発生に係るプロセッサは、自キャラクタの視点位置および視線方向等に基づいて、表現領域を設定するとともに、雪モデルの演算処理や、雪モデルと表現領域とを対応付けてワールド座標系における粒子の表現位置を決定する処理等を、CPUとは独立して実行することとしてもよい。この場合には、CPUの処理と平行して環境を生成する処理を行うことができるため、より効率的に画像を生成できる。
【0070】
また、雪演算部220によって各雪の粒子の移動位置を計算するようにしたが、予め複数の粒子(例えば4つや5つの粒子)の表示パターンを定義し、雪演算部は、この表示パターンを代表する一点の位置を制御することとしてもよい。あるいは、雪モデルの大きさを小さく、かつ、雪モデル内に存在する粒子数を少なく(あるいは、1つ)定義し、多数の表現領域を視界内に配置するようにしてもよい。
【0071】
また、本実施の形態では、単位領域に定義される環境として雪(雪モデル)を扱ったが、例えば、図15に示すように、単位領域内に密生する草オブジェクトを定義して、本発明を適用してもよい。ただし、この場合、単位領域のy軸方向に上限を設けず、視線が上空に向いても草オブジェクトが表現されないようにする必要がある。
【0072】
【発明の効果】
本発明によれば、画面上に表現された環境(あるいは、環境を構成する粒子やオブジェクト)が所与の視点に基づく視界の移動に伴って繰り返し表現されるため、仮想空間に設定する環境を空間全体に定義する必要がなく、ゲーム画像を生成する処理速度を向上させるとともに、メモリ資源を節約することができる。また、環境を有する単位領域を設定し、視界内に複数配置できるため、環境を定義する処理そのものや、環境を構成する粒子やオブジェクトの運動を制御する処理等を更に削減することができる。
【図面の簡単な説明】
【図1】(a)は、雪が降る状態を表現する一画像例を示す図。(b)は、視点位置が(a)の位置から右にずれた場合の一画像例を示す図。
【図2】雪モデルの一例を示す図。
【図3】ワールド座標系に表現領域を設定した一例を示す図。
【図4】(a)は、ワールド座標系に表現領域を設定した一例を示す図。(b)は、(a)に示す表現領域がX軸方向に移動した図。(c)は、(b)に示す表現領域がZ軸方向に移動した図。
【図5】(a)は、雪モデルおよび各粒子の標準位置を示す図。(b)は、ワールド座標系に表現領域を設定した一例を示す図。(c)は、表現領域に雪の粒子を表現した図。
【図6】標準位置に基づいて表現領域内に各粒子を配置した図。
【図7】ワールド座標系に複数の表現領域を設定した一例を示す図。
【図8】本発明を家庭用のゲーム装置に適用した場合の一例を示す図。
【図9】機能ブロックの一例を示す図。
【図10】(a)は、雪モデルの一例を示す図。(b)は、仮想空間の一例を示す図。
【図11】(a)は、図10(b)の視点606に基づく一画像例を示す図。(b)は、図10(b)の視点610に基づく一画像例を示す図。
【図12】雪表現処理を説明するフローチャート。
【図13】本実施の形態を実現できるハードウェア構成の一例を示す図。
【図14】ホスト装置と通信回線を介して接続されるゲーム端末に本実施の形態を適用した場合の一例を示す図。
【図15】単位領域内に設定された草オブジェクトの一例を示す図。
【符号の説明】
10 操作部
20 処理部
22 ゲーム演算部
220 雪演算部
222 領域設定部
224 雪位置決定部
24 画像生成部
40 情報記憶媒体
42 ゲームプログラム
44 雪制御情報
Claims (6)
- 3次元の仮想空間の画像を所与の視点に基づき生成し、当該生成画像を表示させることによって所与のゲームを実行するゲーム装置において、
前記仮想空間に、前記所与の視点の視界を含む単位領域を設定する領域設定手段と、
複数の個別オブジェクト又は粒子(以下、代表して「個別オブジェクト」という)によって前記仮想空間に所与の環境を表現する環境モデルを前記単位領域と対応付け、前記複数の個別オブジェクトそれぞれを前記環境モデル中の位置に対応する前記単位領域中の位置に位置させることで前記環境モデルを設定するモデル設定手段と、
を備え、
前記モデル設定手段は、前記所与の視点の視線方向又は視点位置の変化によって前記単位領域の設定位置が変化した際に、該変化の前後で前記単位領域が重なる部分の個別オブジェクトの位置についてはそのままとし、該変化によって単位領域から外れた個別オブジェクトそれぞれの位置を新たに単位領域となった領域部分中の位置に変更するモデル設定変更手段を有する、
ことを特徴とするゲーム装置。 - 前記モデル設定変更手段は、前記単位領域の設定位置が変化した際に、該変化によって単位領域から外れた個別オブジェクトそれぞれの位置を、前記単位領域分の距離だけ移動した位置であって新たに単位領域となった領域部分中の位置に変更する、
請求項1に記載のゲーム装置。 - 前記複数の個別オブジェクトそれぞれを個別制御する個別オブジェクト制御手段、
を更に備え、
前記個別オブジェクト制御手段は、
前記複数の個別オブジェクトそれぞれを時間経過に応じて移動させる移動制御手段、
を有する、
請求項1又は2に記載のゲーム装置。 - 前記個別オブジェクトは、雨または雪の粒子である請求項1〜3の何れか一項に記載のゲーム装置。
- 前記個別オブジェクトは、草オブジェクトである請求項1又は2に記載のゲーム装置。
- コンピュータに、3次元の仮想空間の画像を所与の視点に基づき生成し、当該生成画像を表示させることによって所与のゲームを実行させるためのプログラムを記憶したコンピュータ読み取り可能な情報記憶媒体であって、
前記プログラムは、
前記仮想空間に、前記所与の視点の視界を含む単位領域を設定する領域設定手段、
複数の個別オブジェクトによって前記仮想空間に所与の環境を表現する環境モデルを前記単位領域と対応付け、前記複数の個別オブジェクトそれぞれを前記環境モデル中の位置に対応する前記単位領域中の位置に位置させることで前記環境モデルを設定するモデル設定手段、
として前記コンピュータを機能させるとともに、
前記モデル設定手段が、前記所与の視点の視線方向又は視点位置の変化によって前記単位領域の設定位置が変化した際に、該変化の前後で前記単位領域が重なる部分の個別オブジェクトの位置についてはそのままとし、該変化によって単位領域から外れた個別オブジェクトそれぞれの位置を新たに単位領域となった領域部分中の位置に変更するモデル設定変更手段を有する、
ように前記コンピュータを機能させるためのプログラムである情報記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000092523A JP4443716B2 (ja) | 2000-03-29 | 2000-03-29 | ゲーム装置、および、情報記憶媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000092523A JP4443716B2 (ja) | 2000-03-29 | 2000-03-29 | ゲーム装置、および、情報記憶媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001276414A JP2001276414A (ja) | 2001-10-09 |
JP4443716B2 true JP4443716B2 (ja) | 2010-03-31 |
Family
ID=18607847
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000092523A Expired - Fee Related JP4443716B2 (ja) | 2000-03-29 | 2000-03-29 | ゲーム装置、および、情報記憶媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4443716B2 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3686920B2 (ja) * | 2002-05-21 | 2005-08-24 | コナミ株式会社 | 3次元画像処理プログラム、3次元画像処理方法及びビデオゲーム装置 |
JP3881363B1 (ja) * | 2005-09-22 | 2007-02-14 | 株式会社コナミデジタルエンタテインメント | ゲーム装置、ゲーム装置の制御方法及びプログラム |
CN104866506B (zh) * | 2014-02-25 | 2019-07-09 | 腾讯科技(深圳)有限公司 | 一种播放动画的方法及装置 |
CN104316111B (zh) * | 2014-11-14 | 2017-01-25 | 锡林浩特国家气候观象台 | 一种基于小气候监测系统监测天然牧草的方法 |
CN106362398B (zh) * | 2016-10-14 | 2020-02-07 | 网易(杭州)网络有限公司 | 摄像机镜头位置的确定方法及装置 |
US11373356B2 (en) * | 2018-03-28 | 2022-06-28 | Robert Bosch Gmbh | Method and system for efficient rendering of 3D particle systems for weather effects |
-
2000
- 2000-03-29 JP JP2000092523A patent/JP4443716B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2001276414A (ja) | 2001-10-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7338373B2 (en) | Method and apparatus for generating sounds in a video game | |
US7104891B2 (en) | Game machine and game program for displaying a first object casting a shadow formed by light from a light source on a second object on a virtual game space | |
US7868889B2 (en) | Method of causing object to take motion using motion data | |
US6738061B2 (en) | Method, apparatus, storage medium, program, and program product for generating image data of virtual three-dimensional space | |
JP4037889B2 (ja) | 画像生成装置、画像生成方法、ならびに、プログラム | |
US20090278850A1 (en) | Image Creating Device, Image Creating Method, Information Recording Medium, and Program | |
JP4443716B2 (ja) | ゲーム装置、および、情報記憶媒体 | |
US6483520B1 (en) | Image creating method and apparatus, recording medium for recording image creating program, and video game machine | |
EP1288866B1 (en) | Image generation method | |
JP4303395B2 (ja) | ゲーム装置および情報記憶媒体 | |
JP4258841B2 (ja) | 画像表示プログラムおよび情報処理装置 | |
JP4425589B2 (ja) | 画像生成プログラム、画像生成方法及び画像生成装置 | |
JP4802254B2 (ja) | ゲーム装置及び情報記憶媒体 | |
KR20020013891A (ko) | 영상들을 생성하는 방법 및 장치 | |
JP4229316B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP4462704B2 (ja) | ゲーム装置および情報記憶媒体 | |
JP4688405B2 (ja) | プログラム、情報記憶媒体及びゲーム装置 | |
JP4390351B2 (ja) | ゲーム装置、及び情報記憶媒体 | |
JP4391633B2 (ja) | 画像生成システム及び情報記憶媒体 | |
JP4063368B2 (ja) | 3次元ゲーム装置及び情報記憶媒体 | |
JPH07222865A (ja) | 電子遊戯装置 | |
JP3183636B2 (ja) | 3次元ゲーム装置及び情報記憶媒体 | |
JP4589517B2 (ja) | 情報記憶媒体及び画像生成装置 | |
JP2002251626A (ja) | 画像の生成方法及びそれに用いるプログラム | |
JP5073520B2 (ja) | プログラム及びコンピュータ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070226 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20070226 |
|
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: 20090707 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090901 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091006 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091124 |
|
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: 20100112 |
|
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: 20100113 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4443716 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: 20130122 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130122 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130122 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140122 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 |