JP3967719B2 - 画像処理装置、プログラム及び画像処理方法 - Google Patents

画像処理装置、プログラム及び画像処理方法 Download PDF

Info

Publication number
JP3967719B2
JP3967719B2 JP2004003498A JP2004003498A JP3967719B2 JP 3967719 B2 JP3967719 B2 JP 3967719B2 JP 2004003498 A JP2004003498 A JP 2004003498A JP 2004003498 A JP2004003498 A JP 2004003498A JP 3967719 B2 JP3967719 B2 JP 3967719B2
Authority
JP
Japan
Prior art keywords
oil
objects
virtual
dimensional space
image processing
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
JP2004003498A
Other languages
English (en)
Other versions
JP2005196592A (ja
Inventor
圭 長岡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Konami Digital Entertainment Co Ltd
Original Assignee
Konami Digital Entertainment Co Ltd
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 Konami Digital Entertainment Co Ltd filed Critical Konami Digital Entertainment Co Ltd
Priority to JP2004003498A priority Critical patent/JP3967719B2/ja
Publication of JP2005196592A publication Critical patent/JP2005196592A/ja
Application granted granted Critical
Publication of JP3967719B2 publication Critical patent/JP3967719B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)

Description

本発明は画像処理装置、プログラム及び画像処理方法に関し、特に仮想3次元空間に配置されたオブジェクトを表示する場合の画像処理の簡略化に関する。
コンピュータの記憶手段にオブジェクト及び視点が配置された3次元空間を仮想的に構築し、該仮想3次元空間を前記視点から見た様子をリアルタイムに表示する画像処理装置が知られている。こうした画像処理装置では、表示処理の対象となるオブジェクトの数が多くなると、リアルタイムに仮想3次元空間の様子を更新することが困難となる。例えば、水滴等をオブジェクトとし、多数の水滴オブジェクトが床オブジェクトに垂れる様子を画像表現しようとすると、水滴オブジェクトの数が多くなるにつれて画像表示のための処理量が増え、リアルタイムに画像表示を更新することが困難となる。
そこで、仮想3次元空間に配置されるオブジェクトを適宜消去(削除)して、表示処理の対象となるオブジェクトの数を減らすことが考えられる。しかしながら、表示中のオブジェクトを消去し、それまで表示されていたオブジェクトの画像を突然消失させてしまうと、表示画面が不自然なものとなってしまう。
本発明は上記課題に鑑みてなされたものであって、その目的は、画像表示の不自然さを抑制しつつ表示処理の対象となるオブジェクトの数を減らすことができる画像処理装置、プログラム及び画像処理方法を提供することにある。
上記課題を解決するために、本発明に係る画像処理装置は、仮想3次元空間を所与の視点から見た様子を示す画像を表示する画像処理装置において、第1オブジェクトが配置された前記仮想3次元空間において、複数の第2オブジェクトをそれぞれ、前記第1オブジェクトに重なる位置に配置する手段と、前記各第2オブジェクトが前記第1オブジェクトに重なる位置において、該第2オブジェクトの大きさを拡大させる手段と、前記各第2オブジェクトを消去する手段と、を含むことを特徴とする。
また、本発明に係るプログラムは、仮想3次元空間を所与の視点から見た様子を示す画像を表示する手段、第1オブジェクトが配置された前記仮想3次元空間において、複数の第2オブジェクトをそれぞれ、前記第1オブジェクトに重なる位置に配置する手段、前記各第2オブジェクトが前記第1オブジェクトに重なる位置において、該第2オブジェクトの大きさを拡大させる手段、及び前記各第2オブジェクトを消去する手段として、例えば家庭用ゲーム機、業務用ゲーム機、携帯用ゲーム機、携帯電話機、携帯情報端末、パーソナルコンピュータ、サーバコンピュータ等のコンピュータを機能させるためのプログラムである。
また、本発明に係る画像処理方法は、仮想3次元空間を所与の視点から見た様子を示す画像を表示する画像処理方法において、第1オブジェクトが配置された前記仮想3次元空間において、複数の第2オブジェクトをそれぞれ、前記第1オブジェクトに重なる位置に配置するステップと、前記各第2オブジェクトが前記第1オブジェクトに重なる位置において、該第2オブジェクトの大きさを拡大させるステップと、前記各第2オブジェクトを消去するステップと、を含むことを特徴とする。
本発明では、複数の第2オブジェクトがそれぞれ、第1のオブジェクトに重なる位置において配置される。そして、各第2オブジェクトは、その位置において拡大される。また、各第2オブジェクトは、例えば所定条件を満足した場合等に消去され、表示処理の対象から除外される。本発明によれば、複数の第2オブジェクトが第1オブジェクトに重なる位置に配置され、該位置でそれぞれ拡大されるので、第2オブジェクト同士が重なり易くなり、その結果、各第2オブジェクトを消去して表示処理の対象から除外しても、表示画像に不自然さが生じることを抑制できる。こうして、画像表示に不自然さが生じることを抑制しつつ表示処理の対象となるオブジェクトの数を減らすことができ、この結果、多数の第2オブジェクトが仮想3次元空間に発生する場合であっても、リアルタイムに画像表示を更新することが可能となる。
また、本発明の一態様では、前記各第2オブジェクトが前記第1オブジェクトに重なる位置に配置した時刻又は順序を記憶する手段をさらに含み、前記消去する手段は、前記記憶する手段により記憶される前記時刻又は順序に応じて前記各第2オブジェクトを消去する。こうすれば、例えば第1オブジェクトに重なる位置に配置される順に第2オブジェクトを消去することができ、さらに画像表示を自然なものとすることができる。
以下、本発明の一実施形態について図面に基づき詳細に説明する。
図1は、本発明の実施形態に係るゲーム装置の構成を示す図である。同図に示すゲーム装置10は、家庭用ゲーム機11に情報記憶媒体たるDVD−ROM25及びメモリカード28が装着され、さらにモニタ18及びスピーカ22が接続されることによって構成されている。モニタ18には家庭用テレビ受像器が用いられ、スピーカ22にはその内蔵スピーカが用いられる。また、ここではプログラムを家庭用ゲーム機11に供給するためにDVD−ROM25を用いるが、CD−ROMやROMカートリッジ等、他のあらゆる情報記憶媒体を用いるようにしてもよい。また、インターネット等のデータ通信網を介して遠隔地からプログラムを家庭用ゲーム機11に供給するようにしてもよい。
家庭用ゲーム機11は、マイクロプロセッサ14、画像処理部16、主記憶26、入出力処理部30、音声処理部20、コントローラ32及びDVD−ROM再生部24を含んで構成される公知のコンピュータゲームシステムである。マイクロプロセッサ14、画像処理部16、主記憶26及び入出力処理部30は、バス12によって相互データ通信可能に接続されており、入出力処理部30には、コントローラ32、音声処理部20、DVD−ROM再生部24及びメモリカード28が接続されている。コントローラ32以外の家庭用ゲーム機11の各構成要素は筐体内に収容されている。
マイクロプロセッサ14は、図示しないROMに格納されるオペレーティングシステム、DVD−ROM25から読み出されるプログラム、及びメモリカード28から読み出されるセーブデータに基づいて、家庭用ゲーム機11の各部を制御し、プレイヤにゲームを提供する。バス12はアドレス及びデータを家庭用ゲーム機11の各部でやり取りするためのものである。また、主記憶26は、例えばRAMを含んで構成されるものであり、DVD−ROM25から読み出されたプログラムやメモリカード28から読み出されたセーブデータが必要に応じて書き込まれる。また、主記憶26は、マイクロプロセッサ14の作業用としても用いられる。画像処理部16はVRAMを含んで構成されており、マイクロプロセッサ14から送られる画像データを受け取って、それに基づいてVRAM上にゲーム画面を描画するとともに、その内容をビデオ信号に変換して所定のタイミングでモニタ18に出力する。
入出力処理部30は、マイクロプロセッサ14がコントローラ32、音声処理部20、DVD−ROM再生部24及びメモリカード28にアクセスするためのインタフェースである。音声処理部20はサウンドバッファを含んで構成されており、DVD−ROM25から読み出され、該サウンドバッファに記憶されたゲーム音楽、ゲーム効果音、メッセージ等の各種音声データを再生してスピーカ22から出力する。DVD−ROM再生部24は、マイクロプロセッサ14からの指示に従ってDVD−ROM25に記録されたプログラムを読み取る。メモリカード28は、不揮発性メモリ(例えばEEPROM等)を含んでおり、家庭用ゲーム機11に対して脱着可能に構成される。このメモリカード28には、各種ゲームのセーブデータ等が記憶される。コントローラ32は、プレイヤが各種ゲーム操作の入力をするための汎用操作入力手段である。入出力処理部30は一定周期(例えば1/60秒毎)にコントローラ32の各操作部材の状態をスキャンし、そのスキャン結果を表す操作信号を、バス12を介してマイクロプロセッサ14に渡す。マイクロプロセッサ14は、その操作信号に基づいてプレイヤのゲーム操作の内容を判定する。
以上のような構成を有するゲーム装置10の主記憶26には、仮想的な3次元空間(3次元ゲーム空間)が構築される。この仮想3次元空間には、例えばプレイヤの操作対象となる操作対象オブジェクトや、操作対象オブジェクトに対立する敵オブジェクト等の動的オブジェクトが配置される。また、仮想3次元空間の風景等の静的オブジェクトも配置される。そして、この仮想3次元空間を所与の視点から見た様子がモニタ18に表示される。この視点は、例えば操作対象オブジェクトの後方上空に配置され、操作対象オブジェクトに従動するものである。本実施の形態に係るゲーム装置10では、コントローラの操作に従い、操作対象オブジェクトがロボットオブジェクト(敵オブジェクト)を退治しながら、仮想3次元空間を移動して各種ゲームイベントを攻略していく、例えばアクションゲームやロールプレイングゲーム等の3次元ゲームを提供する。
図2及び図3は、ゲーム装置10のモニタ18に表示されるゲーム画面の一例である。これらの図に示すように、ゲーム画面には仮想3次元空間を所与の視点から見た様子を表す視野画像が表示される。視野画像には、例えば操作対象オブジェクトやロボットオブジェクト等の動的オブジェクトや仮想3次元空間の風景などの静的オブジェクトを表す画像が含まれる。図2の例では、ロボットオブジェクトを表す画像が表示されている。ゲーム装置10によって提供されるゲームでは、ロボットオブジェクトが所定のダメージを受けると、ダメージを受けた部位が破損するようになっている。そして、例えば図3に示すように、破損した部位からは油しぶきが飛び散り、床等には飛び散った油しぶきによる油だまりができるようになっている。ゲーム装置10では、特に、この油しぶきが飛び散る様子や、床等に飛び散った油しぶきの様子を好適に表現できるようになっている。
まず、油しぶきが飛び散る様子を好適に表現する技術について説明する。
図4に示すように、ゲーム装置10では、油しぶきが飛び散る様子を表現するために、油しぶきオブジェクト54が仮想3次元空間50に配置される。油しぶきオブジェクト54は平板状オブジェクトであり、例えば図5に示すようなテクスチャ画像が貼付される。同図に示されるテクスチャ画像は、中心部に油しぶきを表す画像が描かれ、その周囲は透明属性が付与される。
油しぶきオブジェクト54は、ロボットオブジェクトが所定のダメージを受けた場合に、所定の発生位置OP(Xop,Yop,Zop)に配置される。発生位置OPは、ロボットオブジェクトの位置に基づいて、床オブジェクト52(第1オブジェクト)から離間した位置に決定される。例えば、ロボットオブジェクトの仮想3次元空間50における位置と、ダメージを受けた部位の種類とに基づいて決定されてよい。また例えば、ロボットオブジェクトのダメージを受けた部位の位置(仮想3次元空間50における位置)に基づいて決定されてよい。
また、油しぶきオブジェクト54には初速度Vopが設定される。初速度Vopは乱数に基づいて決定される。例えば、初速度VopのWx軸方向、Wy軸方向、Wz軸方向の各成分(Vopx,Vopy,Vopz)がそれぞれ乱数に基づいて決定される。なお、仮想3次元空間50には、該空間での位置を記述するため、座標軸Wx,Wy,Wzが設定されている。
油しぶきオブジェクト54は、発生位置OPから、例えば図4に示すような放物線(図中破線で示される)に沿って移動する。油しぶきオブジェクト54の軌道(放物線)は、例えば次に示すように、発生位置OPと初速度Vopとに基づいて決定される。すなわち、軌道上の位置(x,y,z)は、
x=Vopx・t+Xop
y=Vopy・t+Yop
z=Vopz・t−(g・t2)/2+Zop
によって表される。ここで、Vopx,Vopy,Vopzは、それぞれ初速度VopのX成分、Y成分、Z成分である。また、Xop,Yop,Zopは、それぞれ発生位置OPのX座標、Y座標、Z座標である。また、tは、油しぶきオブジェクト54の発生からの経過時間である。さらに、gは重力加速度(定数)である。
図6は、油しぶきオブジェクト54を上記放物線に沿って移動させる処理の一例を説明するための図である。同図(b)は、同図(a)の状態から所定時間が経過した状態を示している。油しぶきオブジェクト54は、同図に示すように、対応する頂点(A1とB1、A2とB2、A3とB3、A4とB4、A5とB5)の中点が軌道上に位置するように配置される。例えば、油しぶきオブジェクト54の頂点A1及びB1の位置は、上記式においてtに油しぶきオブジェクト54が配置されてからの経過時間を代入することによって求められる点を中点とするように算出される。
油しぶきオブジェクト54の頂点A2乃至A5は頂点A1に従動し、頂点B2乃至B5は頂点B1に従動するようになっている。同図に示すように、油しぶきオブジェクト54の各頂点については、進行方向に対して後方の頂点ほど遅れて移動するようになっている。例えば、頂点A2及びB2、A3及びB3、A4及びB4、A5及びB5の位置は、上記式においてtに油しぶきオブジェクト54が配置されてからの経過時間から所定の遅れ時間を減じた時間を代入することによって求められる点をそれぞれ中点とするように算出される。この遅れ時間は進行方向に対して後方の頂点ほど大きくなる。そして、この遅れ時間は、油しぶきオブジェクト54が移動するにつれて(時間が経過するにつれて)徐々に大きくなっていく。このため、油しぶきオブジェクト54が移動するにつれて、頂点A2乃至A5は頂点A1から離れていき、頂点B2乃至B5は頂点B1から離れていくようになっている。
このようにして、油しぶきオブジェクト54は床オブジェクト52に衝突するまで(衝突位置CPに達するまで)移動する。油しぶきオブジェクト54が床オブジェクト52に衝突した場合、油だまりオブジェクトが衝突位置CPに基づいて配置される。そして、油しぶきオブジェクト54の後端(図6における頂点A5等)が床オブジェクト52に接触した場合に、当該油しぶきオブジェクト54が消去される。油だまりオブジェクトの詳細については後述する。
ロボットオブジェクトが所定のダメージを受けた場合には、以上に説明した油しぶきオブジェクト54が床オブジェクト52に重なる位置に複数配置される。すなわち、ロボットオブジェクトのいずれかの部位が破損するごとに、所定数の油しぶきオブジェクト54が生成される。生成される油しぶきオブジェクト54の数は乱数に基づいて決定されるようにし、ロボットオブジェクトの部位が破損するごとに変わるようにしてもよい。
以上のようにして、ゲーム装置10では、ロボットオブジェクトのダメージを受けた部位から油しぶきが飛び散る様子を好適に表現するようになっている。
次に、床等に飛び散った油しぶきが油だまりを形成する様子を好適に表現する技術について説明する。ここでは、床に油だまりが形成される様子を表現する場合を例にとり説明する。
図7に示すように、ゲーム装置10では、床に飛び散った油しぶきの様子、すなわち床にできた油だまりの様子を表現するために、油だまりオブジェクト56が仮想3次元空間50に配置される。油だまりオブジェクト56は油が床に溜まる様子を表す平板状オブジェクトであり、例えば図8に示すようなテクスチャ画像が貼付される。同図に示されるテクスチャ画像は中心部に油だまりを表す画像が描かれ、その周囲に透明属性が付与される。
上述したように、油だまりオブジェクト56は、油しぶきオブジェクト54が床オブジェクト52に衝突した場合に、衝突位置CPに基づいて配置される。また、油だまりオブジェクト56は床オブジェクト52と平行するように配置される。複数の油だまりオブジェクト56を重なるように配置する場合には、床オブジェクト52からの距離を一定としてもよいし、床オブジェクト52からの距離を油だまりオブジェクト56ごとに変えるようにしてもよい。例えば、油だまりオブジェクト56を配置する場合において、すでに配置された油だまりオブジェクト56の少なくとも一部と重なる場合には、床オブジェクト52からの距離が、該すでに配置された油だまりオブジェクト56よりも大きくなるようにして配置するようにしてもよい。なお、床オブジェクト52は床を表す平板状オブジェクトであり、床の色や模様等を表すようなテクスチャ画像が貼付される。
図9は、油だまりオブジェクト56の配置について説明する図である。油だまりオブジェクト56に対し、図8(a)又は(b)のいずれのテクスチャ画像が貼付されるかは、床オブジェクト52の法線ベクトルと、油しぶきオブジェクト54が床オブジェクト52に衝突する際の速度ベクトルとのなす角(入射角θ)に基づいて決定される。例えば、入射角θが所定値未満である場合には、油だまりオブジェクト56に、図8(a)に示される、全方位に油が広がった様子が描かれたテクスチャ画像が貼付され、入射角θが所定値以上である場合には、図8(b)に示される、一方に偏って油が広がった様子が描かれたテクスチャ画像が貼付される油だまりオブジェクト56が配置される。すなわち、入射角θと所定値との比較結果に応じて、異なるテクスチャ画像が油だまりオブジェクト56に貼付されるようになっている。
図8(a)に示すテクスチャ画像を貼付する場合、例えば油だまりオブジェクト56の中心位置が衝突位置となるように該油だまりオブジェクト56を床オブジェクト52上に配置する。一方、図8(b)に示すテクスチャ画像を貼付する場合、例えば油しぶきオブジェクト54が床オブジェクト52に衝突する際の速度ベクトルを床オブジェクト52に射影してなるベクトルと、図8(b)において破線矢印で示される方向(油だまりの広がり方向)とが一致するように配置する。この場合、油だまりオブジェクト56の中心位置が衝突位置となるように配置してもよいし、油だまりオブジェクト56の他の所定位置が衝突位置となるように配置してもよい。
仮想3次元空間50に配置された油だまりオブジェクト56は、例えば図10に示すように、所定の大きさになるまで徐々に大きくなっていくように(拡大されるように)なっている。すなわち、油だまりオブジェクト56の頂点の少なくとも1つの位置が、油だまりオブジェクト56の面積を大きくするように更新されるようになっている。図8(a)に示すテクスチャ画像が貼付される油だまりオブジェクト56については、図10(a)に示すように、四方に拡大されるようになっている。すなわち、油だまりオブジェクト56の各頂点を、所定時間ごとに、該油だまりオブジェクト56を拡大するように、Wx軸方向及びWy軸方向にそれぞれ所定量移動させる。一方、図8(b)に示すテクスチャ画像が貼付される場合、油だまりオブジェクト56は、図10(b)に示すようにテクスチャ画像の向きに応じて拡大されるようになっている。この際、油だまりオブジェクト56の拡大率は、衝突時の速度ベクトルに基づいて決定すれば好適である。
仮想3次元空間50に配置された油だまりオブジェクト56は、所定時間が経過した後に消去される。すなわち、仮想3次元空間50に配置された油だまりオブジェクト56それぞれについて、配置されてからの経過時間を記憶し、該経過時間が所定時間に達した油だまりオブジェクト56を消去するようにしてもよい。或いは、仮想3次元空間50に配置された油だまりオブジェクト56の数が所定数に達したら、先に配置されたものから順に消去するようにしてもよい。この場合、仮想3次元空間50に配置された油だまりオブジェクト56それぞれについて順序情報(配置された順序を示す情報)を記憶し、かかる順序情報に基づいて油だまりオブジェクト56を消去すればよい。
以上のようにして、ゲーム装置10では、床に飛び散った油しぶきが油だまりを形成し、その油だまりが徐々に広がっていく様子を好適に表現するようになっている。また、ゲーム装置10では、仮想3次元空間50を所与の視点から見た様子を示す画像を表示する場合において、複数の油だまりオブジェクト56をそれぞれ、床オブジェクト52に重なる位置に配置し、各油だまりオブジェクト56が床オブジェクト52に重なる位置において、該油だまりオブジェクト56の大きさを平板状の床オブジェクト56の面内にて拡大させ、その後に各油だまりオブジェクト56を消去するようにしたので、油だまりオブジェクト56同士が重なり易くでき、油だまりオブジェクト56が次々に発生する場合であっても、表示画像に不自然さが生じることを抑制しつつ、表示処理を削減してリアルタイムの画像処理(1/60秒毎の表示更新処理)を維持することができる。すなわち、各油だまりオブジェクト56が床オブジェクト52上に重ねて配置され、それぞれ拡大されるので、床オブジェクト52上に配置された順に消去しても、消去したことが表示画像に表れにくくすることができる。
以下、ゲーム装置10による画像処理について、さらに詳細に説明する。
ゲーム装置10による画像処理では、主記憶26に、図11に示す油しぶきオブジェクト管理テーブルと、図12に示す油だまりオブジェクト管理テーブルが記憶される。油しぶきオブジェクト管理テーブルは仮想3次元空間50に配置される油しぶきオブジェクト54を管理するためのテーブルであり、図11に示すように、ID欄、発生位置欄、初速度欄、経過時間カウンタ欄、頂点位置欄を含んでいる。ID欄には、各油しぶきオブジェクト54を識別するための識別情報が記憶される。発生位置欄には、各油しぶきオブジェクト54の発生位置OP(初期位置)を示す情報が記憶される。なお、一カ所で複数の油しぶきオブジェクト54が発生する場合、それら油しぶきオブジェクト54に対応づけて1つの発生位置OPを示す情報を記憶すればよい。初速度欄には、各油しぶきオブジェクト54に設定される初速度Vopを示す情報が記憶される。例えば、初速度のWx軸、Wy軸、Wz軸の各成分(Vopx,Vopy,Vopz)を示す情報が記憶される。経過時間カウンタ欄には、各油しぶきオブジェクト54が仮想3次元空間に配置されてから経過した時間を示す数値情報が記憶される。本実施の形態では、経過時間を1/60秒単位で示す数値情報が記憶される。頂点位置欄には、各油しぶきオブジェクト54の頂点の位置座標を示す情報が記憶される。頂点位置欄には、油しぶきオブジェクト54の各頂点の位置座標を示す情報が記憶されるようにしてもよいし、油しぶきオブジェクト54の基準となる頂点の位置座標を示す情報が記憶されるようにしてもよい。なお、本実施形態のように、油しぶきオブジェクト54の発生位置OP及び初速度Vop、経過時間に基づいて、油しぶきオブジェクト54の各頂点の位置座標が算出される場合には、頂点位置欄を省略することができる。
油しぶきオブジェクト管理テーブルには、ロボットオブジェクトが所定のダメージを受けた場合に、所定数のレコードが追加される。そして、油しぶきオブジェクト54の後端が床オブジェクト52に接触する場合に、該油しぶきオブジェクト54に係るレコードが油しぶきオブジェクト管理テーブルから削除される。
油だまりオブジェクト管理テーブルは仮想3次元空間50に配置される油だまりオブジェクト56を管理するためのテーブルであり、図12に示すように、ID欄、基準位置欄、入射角欄、経過時間カウンタ欄、頂点位置欄を含んでいる。ID欄には、各油だまりオブジェクト56を識別するための識別情報が記憶される。基準位置欄には、各油だまりオブジェクト56の基準位置(初期位置)を示す情報が記憶される。例えば、各油だまりオブジェクト56に対応する油しぶきオブジェクト54が床オブジェクト52に衝突する際の衝突位置CPを示す情報が記憶される。入射角欄には、各油だまりオブジェクト56に対応する油しぶきオブジェクト54が床オブジェクト52に衝突する際の入射角を示す情報が記憶される。経過時間カウンタ欄には、各油だまりオブジェクト56が仮想3次元空間50に配置されてから経過した時間を示す数値情報が記憶される。本実施形態では、経過時間を1/60秒単位で示す数値情報が記憶される。上述したように、仮想3次元空間50に配置された油だまりオブジェクト56の数が所定数に達した場合に、先に配置された油だまりオブジェクト56から順に消去する場合、経過時間カウンタ欄には、上記順序情報を記憶させればよい。頂点位置欄には、各油だまりオブジェクト56の頂点の位置座標を示す情報が記憶される。なお、本実施の形態のように、油だまりオブジェクト56の基準位置及び入射角、経過時間に基づいて、油だまりオブジェクト56の各頂点の位置座標が算出される場合には、頂点位置欄を省略することができる。
油だまりオブジェクト管理テーブルには、油しぶきオブジェクト54が床オブジェクト52に衝突する場合にレコードが追加される。そして、経過時間が所定時間に達した油だまりオブジェクト56に係るレコードが削除される。
ここで、ゲーム装置10において実行される処理について説明する。図13はゲーム装置10において1/60秒ごとに実行される処理のうち、本発明に関連するものについて示すフロー図である。本処理は、DVD−ROM等のコンピュータにより読み取り可能な情報記憶媒体や通信ネットワークによってコンピュータに供給されるプログラムがゲーム装置10によって実行されることによって実現される。
同図に示すように、本処理では最初に、油しぶきオブジェクト54を生成するための処理(S101乃至S104)が実行される。油しぶきオブジェクト54を生成するための処理では、ゲーム装置10が、ロボットオブジェクトのいずれかの部位が所定のダメージを受けたか否かを判断する(S101)。例えば、ロボットオブジェクトの各部位と、操作対象オブジェクト(或いは操作対象オブジェクトが備える武器オブジェクトや、操作対象オブジェクトから発せられた弾丸オブジェクト等)とを対象に公知の衝突判定処理を行い、ロボットオブジェクトのいずれかの部位が所定のダメージを受けたか否かを判断する。
ロボットオブジェクトのいずれかの部位が所定のダメージを受けている場合、ゲーム装置10は、該ダメージを受けた部位に基づいて、油しぶきオブジェクト54の発生位置OPを算出する(S102)。例えば、ダメージを受けた際のロボットオブジェクトの位置及びダメージを受けた部位の種類に基づいて算出する。或いは、ダメージを受けた部位のオブジェクトの、ダメージを受けた際の位置に基づいて算出する。
次に、ゲーム装置10は、N個分の油しぶきオブジェクト54の初速度Vopをそれぞれ乱数に基づいて決定する(S103)。例えば、N個分の油しぶきオブジェクト54それぞれについて、初速度VopのWx軸、Wy軸、Wz軸の各成分(Vopx,Vopy,Vopz)をそれぞれ乱数に基づいて決定する。なお、ここでは、ロボットオブジェクトが所定のダメージを受けた場合に、N個の油しぶきオブジェクト54が生成されることとして説明するが、生成される油しぶきオブジェクト54の個数は毎回変わるようにしてもよい。例えば、このステップが実行される前に乱数に基づいて個数を決定し、このステップでは、該個数の油しぶきオブジェクト54の初速度Vopをそれぞれ乱数に基づいて決定するようにしてもよい。
そして、ゲーム装置10は、新たに生成するN個の油しぶきオブジェクト54に係るレコードを油しぶきオブジェクト管理テーブルに登録する(S104)。この場合、発生位置欄には、S102で算出した発生位置OPを示す情報を格納する。初速度欄には、S103で決定した初速度Vopを示す情報を格納する。経過時間カウンタ欄には0を格納する。頂点位置欄には、油しぶきオブジェクト54の頂点の初期位置を格納する。なお、油しぶきオブジェクト54の頂点の初期位置は、例えば次のように決定する。すなわち、S102で算出した発生位置OPと、S103で決定した初速度Vopとに基づいて、油しぶきオブジェクト54の軌道を算出する。そして、S102で算出した発生位置OPに基づいて、油しぶきオブジェクト54が該軌道に沿って配置されるように、油しぶきオブジェクト54の頂点の初期位置を決定する。
次に、ゲーム装置10は、すでに配置されている油しぶきオブジェクト54について、油しぶきオブジェクト管理テーブルの経過時間カウンタ欄に記憶される数値情報を1だけ増加させる(S105)。そして、ゲーム装置10は、すでに配置されている油しぶきオブジェクト54について、各頂点の位置を算出し、油しぶきオブジェクト管理テーブルの頂点位置欄を更新する(S106)。なお、油しぶきオブジェクト54の各頂点の位置は、例えば次のように決定する。すなわち、油しぶきオブジェクト管理テーブルの発生位置欄及び初速度欄に記憶される情報に基づいて、油しぶきオブジェクト54の軌道を取得する。そして、油しぶきオブジェクト管理テーブルの経過時間カウンタ欄に記憶される数値情報に基づいて該軌道上の位置を取得し、この取得した位置を中点とするように、油しぶきオブジェクト54の頂点A1及びB1の位置を決定する。また、油しぶきオブジェクト管理テーブルの経過時間カウンタ欄に記憶される数値情報から所定値(進行方向に対して後方の頂点ほど大きくなり、かつ、時間の経過とともに大きくなる)を減じたものに基づいて取得される該軌道上の位置をそれぞれ中点とするように、油しぶきオブジェクト54の頂点A2及びB2、A3及びB3、A4及びB4、A5及びB5の位置を決定する。
次に、ゲーム装置10は、床オブジェクト52に衝突する油しぶきオブジェクト54が存在するか否かを判断する(S107)。このステップでは、油しぶきオブジェクト管理テーブルの頂点位置欄に記憶される情報に基づいて、床オブジェクト52との衝突判定を行えばよい。
床オブジェクト52に衝突する油しぶきオブジェクト54が存在する場合には、油だまりオブジェクト56を生成するための処理(S108乃至S110)が実行される。油だまりオブジェクト56を生成するための処理では、ゲーム装置10は、油しぶきオブジェクト54と床オブジェクト52との衝突位置CPを取得する(S108)。また、ゲーム装置10は、油しぶきオブジェクト54が床オブジェクト52に衝突する際の入射角θを取得する(S109)。入射角θは、油しぶきオブジェクト管理テーブルに記録された発生位置、初速度、経過時間カウンタに基づいて算出することができる。
そして、ゲーム装置10は、油だまりオブジェクト管理テーブルに新たなレコードを追加する(S110)。この場合、基準位置欄にはS108で取得した衝突位置CPを示す情報を格納する。入射角欄にはS109で取得した入射角θを示す情報を格納する。経過時間カウンタ欄には0を格納する。そして、頂点位置欄には油だまりオブジェクト56の頂点の初期位置を格納する。具体的には、入射角θが所定角度未満の場合(図8(a)に示すテクスチャ画像が貼付される場合)、油だまりオブジェクト56の頂点の位置は、油だまりオブジェクト56の中心位置が衝突位置CPとなるように決定される。この場合、油だまりオブジェクト56は、床オブジェクト52に平行であれば、どのような姿勢としてもよい。また例えば、入射角θが所定角度以上の場合(図8(b)に示すテクスチャ画像が貼付される場合)、油しぶきオブジェクト54が床オブジェクト52に衝突した場合の速度ベクトルをWxWy平面に射影してなるベクトルと、油の広がり方向(図8(b)に破線矢印で示す方向)とが一致し、かつ、油だまりオブジェクト56の所定位置が衝突位置CPとなるように、油だまりオブジェクト56の頂点の位置は決定される。この場合、油だまりオブジェクト56は、床オブジェクト52に平行に配置される。
その後、ゲーム装置10は、床オブジェクト52に後端が衝突した油しぶきオブジェクト54があれば、該油しぶきオブジェクト54に係るレコードを油しぶきオブジェクト管理テーブルから削除する(S111)。
次に、ゲーム装置10は、すでに配置されている油だまりオブジェクト56について、油だまりオブジェクト管理テーブルの経過時間カウンタ欄に格納される数値情報を1だけ増加させる(S112)。そして、ゲーム装置10は、経過時間が所定時間以上になったレコードがあるか否かを確認し(S113)、経過時間が所定時間以上になったレコードがある場合には、該レコードに含まれる基準位置と、他のレコードに含まれる基準位置と、の距離を算出する(S114)。こうして、発生してからの経過時間が所定時間以上になった油だまりオブジェクト56と、他の油だまりオブジェクト56との距離を算出するようにしている。そして、こうして算出される距離が所定距離以内である、他の油だまりオブジェクト56が仮想3次元空間50に配置されているか否かを判断する(S115)。そして、そのような油だまりオブジェクト56が配置されていれば、S113で見つかったレコードを削除する(S116)。こうして、経過時間が所定時間以上になった油だまりオブジェクト56を、他の油だまりオブジェクト56と重なっている場合にだけ消去して、油だまりオブジェクト56が消去されたことを表示上、目立たないようにしている。
次に、ゲーム装置10は、すでに配置されている油だまりオブジェクト56について、各頂点の位置を算出し、油だまりオブジェクト管理テーブルの頂点位置欄を更新する(S117)。油だまりオブジェクト管理テーブルの入射角欄に記憶される入射角θが所定角度未満である場合(すなわち、図8(a)に示すテクスチャ画像を貼付される油だまりオブジェクト56の場合)には、油だまりオブジェクト56を四方に所定量ずつ大きくするように、油だまりオブジェクト56の頂点の位置を更新する。油だまりオブジェクト管理テーブルの入射角欄に記憶される入射角θが所定角度以上である場合(すなわち、図8(b)に示すテクスチャ画像を貼付される油だまりオブジェクト56の場合)には、油の広がり方向に応じて、油だまりオブジェクト56を大きくするように、油だまりオブジェクト56の少なくとも2つの頂点の位置を更新する。なお、このステップでは、油だまりオブジェクト56の頂点が初期位置からすでに所定の移動可能距離を移動している場合には、該頂点の更新を行わない。その後、ゲーム装置10は、仮想3次元空間50を所与の視点から見た様子を表す視野画像をVRAM上に描画する(S118)。
なお、本発明は以上説明した実施の形態に限定されるものではない。
例えば、以上では床に飛び散った油を好適に表現することについて説明したが、同様にして壁等に飛び散った油を好適に表現することも可能である。例えば、壁オブジェクトに平行して油だまりオブジェクト56を配置し、この油だまりオブジェクト56を所定時間ごとに下方向に伸ばすようにすればよい。こうすることによって、壁に飛び散った油が下に垂れる様子を好適に表現することができるようになる。また、ここでは第1オブジェクトとして床オブジェクト52を用いたが、どのようなオブジェクトでもよい。同様に、ここでは第2オブジェクトとして油だまりオブジェクト56を用いたが、水や血液等の体液等の液体や、その他の流動性のある物質を表すものであれば、どのようなオブジェクトを用いてもよい。
さらに、例えば、以上の説明ではプログラムを情報記憶媒体たるDVD−ROM25から家庭用ゲーム機11に供給するようにしたが、通信ネットワークを介してプログラムを家庭等に配信するようにしてもよい。図14は、通信ネットワークを用いたプログラム配信システムの全体構成を示す図である。同図に基づいて本発明に係るプログラム配信方法を説明する。同図に示すように、このプログラム配信システム100は、ゲームデータベース102、サーバ104、通信ネットワーク106、パソコン108、家庭用ゲーム機110、PDA(携帯情報端末)112を含んでいる。このうち、ゲームデータベース102とサーバ104とによりプログラム配信装置114が構成される。通信ネットワーク106は、例えばインターネットやケーブルテレビネットワークを含んで構成されている。このシステムでは、ゲームデータベース(情報記憶媒体)102に、DVD−ROM25の記憶内容と同様のプログラムが記憶されている。そして、パソコン108、家庭用ゲーム機110又はPDA112等を用いて需要者がゲーム配信要求をすることにより、それが通信ネットワーク106を介してサーバ104に伝えられる。そして、サーバ104はゲーム配信要求に応じてゲームデータベース102からプログラムを読み出し、それをパソコン108、家庭用ゲーム機110、PDA112等、ゲーム配信要求元に送信する。ここではゲーム配信要求に応じてゲーム配信するようにしたが、サーバ104から一方的に送信するようにしてもよい。また、必ずしも一度にゲームの実現に必要な全てのプログラムを配信(一括配信)する必要はなく、ゲームの局面に応じて必要な部分を配信(分割配信)するようにしてもよい。このように通信ネットワーク106を介してゲーム配信するようにすれば、プログラムを需要者は容易に入手することができるようになる。
本発明の一実施の形態に係るゲーム装置の構成を示す図である。 ゲーム画面の一例を示す図である。 ゲーム画面の一例を示す図である。 本発明の一実施の形態に係る油しぶきの表現を説明するための図である。 油しぶきを表すテクスチャ画像の一例を示す図である。 油しぶきオブジェクトの移動について説明するための図である。 本発明の一実施の形態に係る油だまりの表現を説明するための図である。 油だまりを表すテクスチャ画像の一例を示す図である。 油だまりオブジェクトの配置について説明するための図である。 油だまりオブジェクトの拡張について説明するための図である。 油しぶきオブジェクト管理テーブルの一例を示す図である。 油だまりオブジェクト管理テーブルの一例を示す図である。 本発明の一実施の形態に係るゲーム装置で実行される処理を示すフロー図である。 本発明の他の実施の形態に係るプログラム配信システムの全体構成を示す図である。
符号の説明
10 ゲーム装置、11,110 家庭用ゲーム機、12 バス、14 マイクロプロセッサ、16 画像処理部、18 モニタ、20 音声処理部、22 スピーカ、24 DVD−ROM再生部、25 DVD−ROM、26 主記憶、28 メモリカード、30 入出力処理部、32 コントローラ、50 仮想3次元空間、52 床オブジェクト、54 油しぶきオブジェクト、56 油だまりオブジェクト、100 プログラム配信システム、102 ゲームデータベース、104 サーバ、106 通信ネットワーク、108 パソコン、112 携帯情報端末(PDA)、114 プログラム配信装置。

Claims (4)

  1. 仮想3次元空間を所与の視点から見た様子を示す画像を表示する画像処理装置において、
    第1オブジェクトが配置された前記仮想3次元空間において、複数の第2オブジェクトをそれぞれ、前記第1オブジェクトに重なる位置に配置する手段と、
    前記各第2オブジェクトが前記第1オブジェクトに重なる位置において、該第2オブジェクトの大きさを拡大させる手段と、
    前記各第2オブジェクトを、該第2オブジェクトと他の前記第2オブジェクトとの距離が所定距離以下である場合に消去する手段と、
    を含むことを特徴とする画像処理装置。
  2. 請求項1に記載の画像処理装置において、
    前記各第2オブジェクトが前記第1オブジェクトに重なる位置に配置した時刻又は順序を記憶する手段をさらに含み、
    前記消去する手段は、前記記憶する手段により記憶される前記時刻又は順序に応じて前記各第2オブジェクトを消去する、
    ことを特徴とする画像処理装置。
  3. 仮想3次元空間を所与の視点から見た様子を示す画像を表示する手段、
    第1オブジェクトが配置された前記仮想3次元空間において、複数の第2オブジェクトをそれぞれ、前記第1オブジェクトに重なる位置に配置する手段、
    前記各第2オブジェクトが前記第1オブジェクトに重なる位置において、該第2オブジェクトの大きさを拡大させる手段、及び
    前記各第2オブジェクトを、該第2オブジェクトと他の前記第2オブジェクトとの距離が所定距離以下である場合に消去する手段
    としてコンピュータを機能させるためのプログラム。
  4. 仮想3次元空間を所与の視点から見た様子を示す画像をコンピュータに表示させる画像処理方法において、
    前記コンピュータに、
    配置する手段を用いて、第1オブジェクトが配置された前記仮想3次元空間において、複数の第2オブジェクトをそれぞれ、前記第1オブジェクトに重なる位置に配置させるステップと、
    拡大させる手段を用いて、前記各第2オブジェクトが前記第1オブジェクトに重なる位置において、該第2オブジェクトの大きさを拡大させるステップと、
    消去する手段を用いて、前記各第2オブジェクトを、該第2オブジェクトと他の前記第2オブジェクトとの距離が所定距離以下である場合に消去させるステップと、
    を含むことを特徴とする画像処理方法。
JP2004003498A 2004-01-08 2004-01-08 画像処理装置、プログラム及び画像処理方法 Expired - Lifetime JP3967719B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004003498A JP3967719B2 (ja) 2004-01-08 2004-01-08 画像処理装置、プログラム及び画像処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004003498A JP3967719B2 (ja) 2004-01-08 2004-01-08 画像処理装置、プログラム及び画像処理方法

Publications (2)

Publication Number Publication Date
JP2005196592A JP2005196592A (ja) 2005-07-21
JP3967719B2 true JP3967719B2 (ja) 2007-08-29

Family

ID=34818384

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004003498A Expired - Lifetime JP3967719B2 (ja) 2004-01-08 2004-01-08 画像処理装置、プログラム及び画像処理方法

Country Status (1)

Country Link
JP (1) JP3967719B2 (ja)

Also Published As

Publication number Publication date
JP2005196592A (ja) 2005-07-21

Similar Documents

Publication Publication Date Title
JP5706241B2 (ja) 画像生成プログラム、画像生成装置、画像生成システム及び画像生成方法
JP3786132B2 (ja) ゲーム画像処理プログラム及び記憶媒体
US8568229B2 (en) Apparatus and method for displaying player character showing special movement state in network game
KR101127774B1 (ko) 게임 장치, 게임 장치의 제어 방법 및 정보 기억 매체
JP4205747B2 (ja) 画像処理装置、画像処理装置の制御方法及びプログラム
JP2007260157A (ja) ゲーム装置、ゲーム装置の制御方法及びプログラム
JP5675260B2 (ja) 画像処理プログラム、画像処理装置、画像処理システム、及び、画像処理方法
JP5939733B2 (ja) 画像処理プログラム、画像処理装置、画像処理システム、及び、画像処理方法
JP2007195747A (ja) ゲーム装置、ゲーム装置の制御方法及びプログラム
JP5044549B2 (ja) 三次元ゲームの表示システム、表示方法及び表示プログラム
JP3881363B1 (ja) ゲーム装置、ゲーム装置の制御方法及びプログラム
CN101534916A (zh) 游戏装置、游戏装置的控制方法及信息存储介质
JP3880603B2 (ja) 画像処理装置、画像処理方法及びプログラム
JP3967719B2 (ja) 画像処理装置、プログラム及び画像処理方法
JP3967720B2 (ja) 画像処理装置、プログラム及び画像処理方法
JP2000268193A (ja) 画像作成装置、画像作成方法、画像作成プログラムが記録された可読記録媒体およびビデオゲーム装置
JP2009075739A (ja) プログラム、情報記憶媒体、および画像生成システム
JP4469709B2 (ja) 画像処理プログラムおよび画像処理装置
US20090251463A1 (en) Image processing device, image processing method and information storage medium
JP7482953B2 (ja) 情報処理プログラム、情報処理装置、情報処理方法、および情報処理システム
JP4791514B2 (ja) 画像処理装置、画像処理装置の制御方法及びプログラム
JP3924283B2 (ja) 画像処理装置、プログラム及び画像処理方法
JP4659071B2 (ja) 画像処理プログラム、画像処理装置、および画像制御方法
JP2008154777A (ja) ゲーム装置、ゲーム装置の制御方法及びプログラム
JP4538331B2 (ja) ゲーム装置、ゲーム装置の制御方法及びプログラム

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20050428

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20060427

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20060523

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060929

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061010

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061201

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070531

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 3967719

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20110608

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20110608

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120608

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20130608

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20130608

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20140608

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term