JP2007164557A - プログラム、情報記録媒体および画像生成システム - Google Patents

プログラム、情報記録媒体および画像生成システム Download PDF

Info

Publication number
JP2007164557A
JP2007164557A JP2005361327A JP2005361327A JP2007164557A JP 2007164557 A JP2007164557 A JP 2007164557A JP 2005361327 A JP2005361327 A JP 2005361327A JP 2005361327 A JP2005361327 A JP 2005361327A JP 2007164557 A JP2007164557 A JP 2007164557A
Authority
JP
Japan
Prior art keywords
virtual camera
vector
normal vector
data
image
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.)
Granted
Application number
JP2005361327A
Other languages
English (en)
Other versions
JP4717622B2 (ja
Inventor
Hiroshi Tonai
寛 藤内
Yoshiki Domae
嘉樹 堂前
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.)
Bandai Namco Entertainment Inc
Original Assignee
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 Bandai Games Inc filed Critical Namco Bandai Games Inc
Priority to JP2005361327A priority Critical patent/JP4717622B2/ja
Publication of JP2007164557A publication Critical patent/JP2007164557A/ja
Application granted granted Critical
Publication of JP4717622B2 publication Critical patent/JP4717622B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Abstract

【課題】画像を生成する際の処理負担を低減させることができるとともに、仮想カメラの位置に応じてオブジェクトを的確に描画して画像を生成する。
【解決手段】画像生成システムは、注視点が設定されるキャラクタなどの注視対象のオブジェクトと仮想カメラとの間に設定される可能性のあるオブジェクトに対しては、本来のオブジェクトを描画するための第1オブジェクトを設定するための第1オブジェクトデータの他に、第1オブジェクトに対応する第2オブジェクトを設定する第2オブジェクトデータを用いて各オブジェクトをオブジェクト空間に設定するようになっている。
【選択図】図5

Description

本発明は、プログラム、情報記録媒体および画像生成システムに関する。
近年、仮想的な3次元空間(以下、「オブジェクト空間」という。)に配置設定されたキャラクタなどのオブジェクトを、仮想カメラ(所与の視点)から見た画像として生成する画像生成システムが実用化されている。このような画像生成システムは、仮想現実を体験させることができるものとして様々なシステムにて用いられるようになっており、特に、ゲームシステムにおいては、娯楽性および興趣性を向上させるためものとして重要視されている。
従来、このような画像生成システムは、例えばゲームにおける主人公のキャラクタなど、注視点が設定されるオブジェクト(以下、注視対象のオブジェクトともいう。)を、生成する画像内に的確に描画させるために、仮想カメラと注視対象のオブジェクトとの間に配置される障害物(遮蔽物)などのオブジェクトに対して、描画形成の可否も含めて種々の画像処理を行うようになっている。
特に、最近では、このような画像生成システムとしては、仮想カメラの位置とメインキャラクタなどの注視対象との間に配置される障害物のオブジェクトに対して、ゲームの臨場感を維持しつつ注視対象の描画を的確に行うものが知られている。
具体的には、この画像生成システムは、障害物などのオブジェクトがメインキャラクタの注視対象と重なって仮想カメラから観察されるか否かを判定する判定処理を行い、当該仮想カメラの位置と注視対象との間にオブジェクトが重なっている状態であると判定したときに当該オブジェクトに対して所定の透過処理を行うようになっている(例えば、特許文献1)。
特許第3141737号公報
しかしながら、上述の画像生成システムにあっては、仮想カメラの位置と注視対象との間にオブジェクトが重なって当該仮想カメラから観察されるか否かを判定する判定処理をオブジェクト毎に必ず行わなければならず、画像を生成する際の処理が増加することになる。また、このような画像生成システムは、描画するオブジェクトが多い場合には、その処理が膨大となるため、画像処理能力を抑えた画像システムにおいては、円滑に、かつ、的確に画像形成を行うことが困難である。
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、画像を生成する際の処理負担を低減させることができるとともに、仮想カメラの位置に応じてオブジェクトを的確に描画して画像を生成する画像生成システムを提供することにある。
(1)本発明は、オブジェクト空間において仮想カメラから見える画像を生成するための画像生成システムであって、第1オブジェクトと、該第1オブジェクトに対応するとともに、透過可能に描画するための所定の透明度を有する第2オブジェクトとを、前記オブジェクト空間に設定するオブジェクト空間設定部と、前記オブジェクト空間に設定された仮想カメラから見えるオブジェクトを描画する際に、前記仮想カメラの視線ベクトルとオブジェクトを構成する面の法線ベクトルとのなす角度に応じて、オブジェクトを構成する面について描画対象としての適否を判定する描画対象判定部と、前記描画対象と判定された面のみを描画して画像を生成する画像生成部と、を含み、前記第1オブジェクトを構成する面の法線ベクトルと前記第2オブジェクトを構成する面の法線ベクトルとは、一方の法線ベクトルと仮想カメラの視線ベクトルとのなす角度が第1の角度範囲に属する場合に、他方の法線ベクトルと視線ベクトルとのなす角度が第2の角度範囲に属する関係を有し、前記描画対象判定部が、前記仮想カメラの視線ベクトルに対する法線ベクトルの角度が前記第1の角度範囲内である面を描画対象とし、前記仮想カメラの視線ベクトルに対する法線ベクトルの角度が前記第2の角度範囲内である面を描画対象としない処理を行う画像生成システムに関係する。
また、本発明は、上記各部としてコンピュータを機能させるプログラム及びそのようなプログラムを記憶するコンピュータに読み取り可能な情報記憶媒体についても適用可能である。
本発明によれば、第1オブジェクトと第2オブジェクトとが同時に描画対象と判定されることが無いので、オブジェクト空間上の仮想カメラの位置に応じて、不透明なオブジェクトまたは半透明なオブジェクトの何れか一方のオブジェクトを描画することになる。
したがって、本発明によれば、オブジェクト空間上において、仮想カメラと注視対象となるオブジェクトの間に注視対象を仮想カメラから視認不能にさせる遮蔽物が存在する場合に、遮蔽物に関して、第1オブジェクトと、これに対応する第2オブジェクトとを設定することによって、仮想カメラと注視対象となるオブジェクトの間の遮蔽物を特定する処理や当該遮蔽物を半透明化して描画する処理など、注視対象のオブジェクトを視認させるための専用の処理を行うことなく、各オブジェクトにおける描画対象の判定のみを行うことによって、注視対象となるオブジェクトが他のオブジェクトに遮蔽されても注視対象を視認しうる画像を生成することができる。
この結果、本発明によれば、上述の専用の処理を不要することによって画像を生成する際の処理負担を低減させることができるとともに、仮想カメラの位置に応じて注視対象となるオブジェクトを視認可能に的確に描画した画像を得ることができる。
(2)また本発明の画像生成システムでは、オブジェクトに対してテクスチャマッピングを行うテクスチャマッピング部を含み、前記テクスチャマッピング部が、前記第2オブジェクを描画する際に、前記第1オブジェクトにマッピングされるテクスチャと同一の色または模様の少なくとも何れか一方のテクスチャを第2オブジェクトにマッピングするようにしてもよい。また本発明のプログラム及び情報記憶媒体では、上記テクスチャマッピング部としてコンピュータを機能させるようにしてもよい。
このようにすれば、第2オブジェクトが描画対象となる場合に、第1オブジェクトと同一の色または模様のテクスチャがマッピングされるので、描画対象とならない第1オブジェクトの存在を間接的に認識させることでオブジェクト空間内での位置を把握しやすくなる。
(3)また本発明の画像生成システム、プログラム及び情報記録媒体では、前記第2オブジェクトのサイズが前記第1オブジェクのサイズより小さく設定されていてもよい。
このようにすれば、第2オブジェクトの描画面積が小さくなるため、仮想カメラの位置や向きの変化する範囲が制限されている場合などでは、第2オブジェクトを少ないデータ処理量によって描画することができるため利便性が高い。
(4)また本発明の画像生成システム、プログラム及び情報記録媒体では、前記オブジェクト空間設定部が、前記仮想カメラにおける注視点が設定される第3オブジェクトのサイズが変化する場合に、前記第3オブジェクトのサイズに応じて、前記オブジェクト空間におけるオブジェクトのサイズを替えて前記第2オブジェクトを設定するようにしてもよい。
このようにすれば、注視点が設定される第3オブジェクトのサイズが変化した場合に、スクリーンに投影された第2オブジェクトのサイズがスクリーンのサイズに満たなくなって見苦しい画像が生成されてしまうという不都合を解消することができる。
(5)また本発明の画像生成システム、プログラム及び情報記録媒体では、前記オブジェクト空間設定部が、前記第1オブジェクトが、法線ベクトルの異なる複数の面から構成されており、該第1オブジェクトを構成する各面の法線ベクトルが前記視線ベクトルに対して第1の角度範囲に属する場合に、該視線ベクトルと前記第2の角度範囲に属する法線ベクトルを有する単一の面にて構成されている第2オブジェクトを前記オブジェクト空間に設定するようにしてもよい。
通常、複数の面によって構成されるオブジェクトを裏側から観察するような場合に、複雑な形状を描画する必要がないことも多い。特に遮蔽物を透視させることを目的とする場合には、遮蔽物の存在のみが把握できれば十分である。
したがって、第1オブジェクトが法線方向の異なる複数の面から構成されている場合に、第2オブジェクトを、当該視線ベクトルと第2の角度範囲に属する法線ベクトルを有する単一の面にて構成しておけば、複雑な形状を有するオブジェクトを描画する場合であっても、少ないデータ処理量によって描画を済ませることができるとともに、仮想カメラが第2オブジェクト側に設定された場合には、描画判定処理の対象となる法線ベクトルの数が少なくなるので、描画対象の判定処理の負担が軽減される。
次に、本発明に好適な実施の形態について、図面に基づいて説明する。
なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また、本実施形態にて説明される構成の全てが、本発明の必須の構成要件であるとは限らない。
1.構成
まず、図1を用いて本実施形態における画像生成システム(ゲームシステム)の構成について説明する。
なお、図1は、本実施形態の画像生成システムの機能ブロック図の一例である。また、本実施形態の画像生成システムは、図1の構成要素(各部)の一部を省略した構成としてもよい。
操作部160は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、ステアリング、マイク、タッチパネル型ディスプレイ、或いは筺体などにより実現できる。
記憶部170は、処理部100や通信部196などのワーク領域となるもので、その機能はRAM、VRAMなどにより実現できる。そして、本実施形態の記憶部170は、最終的な表示画像等が記憶されるフレームバッファ172と、オブジェクト毎に、当該オブジェクトの各頂点データが記憶されるオブジェクトデータ記憶部173と、各オブジェクトデータ用のテクスチャが記憶されるテクスチャ記憶部174と、オブジェクトの画像の生成処理時にZ値が記憶されるZバッファ176と、を含む。なお、これらの一部を省略する構成としてもよい。
本実施形態のオブジェクトデータ記憶部173には、ローカル座標系において予め設定され、頂点の位置座標、テクスチャ座標、色データ、法線ベクトル(法線データ)およびα値などの各頂点データを含むオブジェクトデータまたは処理部100によって所定の演算により算出された各頂点データを含むオブジェクトデータが記憶される。
特に、本実施形態のオブジェクトデータ記憶部173には、注視点が設定されるキャラクタなどの注視対象のオブジェクトと仮想カメラとの間に設定される可能性のあるオブジェクトに対しては、すなわち、仮想カメラの視線方向を基準に当該オブジェクトの奥に配置される他のオブジェクト(注視点が設定されるキャラクタなどのオブジェクト)を描画する可能性のあるオブジェクトに対しては、通常のオブジェクト(以下、「第1オブジェクト」ともいう。)を描画するためのオブジェクトデータ(以下、「第1オブジェクトデータ」という。)と、当該第1オブジェクトデータに対応するオブジェクト(以下、「第2オブジェクト」ともいう。)を描画するためのオブジェクトデータであって、第1オブジェクトの各法線ベクトルの方向と描画する際のオブジェクトの透明度を示すα値とが異なるオブジェクトデータ(以下、「第2オブジェクトデータ」という。)と、が記憶される。
すなわち、本実施形態のオブジェクトデータ記憶部173には、遮蔽物などの所定のオブジェクトの表面として認識される第1オブジェクトを描画する第1オブジェクトデータの他に、所定のオブジェクトの裏面として認識される第2オブジェクトを描画する第2オブジェクトデータが記憶される。そして、この第2オブジェクトデータは、第1オブジェクトデータの各頂点データと対応する頂点データを有し、法線ベクトルのオブジェクト空間上の方向が対応する第1オブジェクトデータの法線ベクトルと所定角度範囲以上異なり、かつ、所定の透明度にて(好ましくは半透明にて)のオブジェクトを描画するためのデータから構成される。
また、この第2オブジェクトデータは、オブジェクトの大きさまたは座標位置など第1オブジェクトとは異なるオブジェクトを構成するデータであってもよいし、第1オブジェクトデータに対して座標データなどが相対的に規定される各頂点データから構成されていてよい。ただし、第2オブジェクトデータの各頂点データは、仮想カメラから見られる画像として描画される際の当該仮想カメラにおける画角に対して十分な大きさを有すること、および、その座標データは、第1オブジェクトデータにおける対応する頂点データの座標位置から所定の範囲内に、すなわち、同一のオブジェクトとして認識可能な範囲に設定されていることが必要である。
なお、第2オブジェクトデータに規定される法線ベクトルは、第1オブジェクトデータに対応する頂点データにおける法線ベクトルとオブジェクト空間上の方向が反対であること、すなわち、その角度が180度異なることが好ましいが、第1オブジェクトと第2オブジェクトが、表面のオブジェクトおよび裏面のオブジェクトとして認識可能な角度範囲であればよい。
テクスチャ記憶部174には、第1オブジェクトデータおよび第2オブジェクトデータそれぞれに対応するテクスチャが記憶される。特に、このテクスチャ記憶部174には、第2オブジェクトデータ用のテクスチャとして、第1オブジェクトと同様の色、同様の模様など第2オブジェクトデータによって第2ブジェクトが描画された場合であっても、第1オブジェクトデータによって描画されるオブジェクトと対応関係のあるオブジェクトであることを認識可能なテクスチャが記憶される。
ただし、第2オブジェクトにテクスチャをマッピングしない場合には、当該第2オブジェクトのためのテクスチャを用意せずとも第2オブジェクトのオブジェクトデータに頂点の色を設定しておくこともできる。
情報記憶媒体180(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、光ディスク(CD、DVD)、光磁気ディスク(MO)、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ(ROM)などにより実現できる。処理部100は、情報記憶媒体180に格納されるプログラム(データ)に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体180には、本実施形態の各部としてコンピュータを機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)が記憶される。
表示部190は、本実施形態により生成された画像を出力するものであり、その機能は、CRT、LCD、タッチパネル型ディスプレイ、或いはHMD(ヘッドマウントディスプレイ)などにより実現できる。音出力部192は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
携帯型情報記憶装置194は、プレーヤの個人データやゲームのセーブデータなどが記憶されるものであり、この携帯型情報記憶装置194としては、メモリカードや携帯型ゲーム装置などがある。通信部196は外部(例えばホスト装置や他の画像生成システム)との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ASICなどのハードウェアや、プログラムなどにより実現できる。
なお、本実施形態の各部としてコンピュータを機能させるためのプログラム(データ)は、ホスト装置(サーバー)が有する情報記憶媒体からネットワーク及び通信部196を介して情報記憶媒体180(記憶部170)に配信してもよい。このようなホスト装置(サーバー)の情報記憶媒体の使用も本発明の範囲内に含めることができる。
処理部100(プロセッサ)は、操作部160からの操作データやプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの処理を行う。ここでゲーム処理としては、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、キャラクタやマップなどのオブジェクトを配置する処理、オブジェクトを表示する処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。この処理部100は、記憶部170をワーク領域として各種処理を行う。処理部100の機能は各種プロセッサ(CPU、DSP等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。
処理部100は、オブジェクト空間設定部110、移動・動作処理部112、仮想カメラ制御部114、画像生成処理部120、を含む。なおこれらの一部を省略する構成としてもよい。
オブジェクト空間設定部110は、キャラクタ、建物、球場、車、樹木、柱、壁、マップ(地形)などの表示物を表す各種オブジェクト(ポリゴン、自由曲面又はサブディビジョンサーフェスなどのプリミティブ面で構成されるオブジェクト)をオブジェクト空間に配置設定する処理を行う。即ちワールド座標系でのオブジェクト(モデルオブジェクト)の位置や回転角度(向き、方向と同義)を決定し、その位置(X、Y、Z)にその回転角度(X、Y、Z軸回りでの回転角度)でオブジェクトを配置する。
特に、本実施形態のオブジェクト空間設定部110は、オブジェクトデータ記憶部173に記憶されたオブジェクトデータに基づいて各オブジェクトをオブジェクト空間に設定する。具体的には、このオブジェクト空間設定部110は、オブジェクト空間内において固定的に設定されるオブジェクトについては、オブジェクトデータ記憶部173に記憶されているオブジェクトデータに基づいて設定し、当該オブジェクト空間内において移動するオブジェクトについては、オブジェクトデータ記憶部173に記憶されているオブジェクトデータに基づいて移動・動作処理部112にて処理された位置に設定する。
移動・動作処理部112は、オブジェクト(キャラクタ、ボール、車、又は飛行機等)の移動・動作演算(移動・動作シミュレーション)を行う。即ち操作部160によりプレーヤが入力した操作データや、プログラム(移動・動作アルゴリズム)や、各種データ(モーションデータ)などに基づいて、オブジェクト(移動オブジェクト)をオブジェクト空間内で移動させたり、オブジェクトを動作(モーション、アニメーション)させる処理を行う。具体的には、オブジェクトの移動情報(位置、回転角度、速度、或いは加速度)や動作情報(各パーツオブジェクトの位置、或いは回転角度)を、1フレーム(1/60秒)毎に順次求めるシミュレーション処理を行う。なお、フレームは、オブジェクトの移動・動作処理(シミュレーション処理)や画像生成処理を行う時間の単位である。
仮想カメラ制御部114は、オブジェクト空間内の所与(任意)の視点から見える画像を生成するための仮想カメラ(視点)の制御処理を行う。具体的には、仮想カメラの位置(X、Y、Z)又は回転角度(X、Y、Z軸回りでの回転角度)を制御する処理(視点位置や視線方向を制御する処理)を行う。
例えば、仮想カメラによりオブジェクト(例えばキャラクタ、ボール、車)を後方から撮影する場合には、オブジェクトの位置又は回転の変化に仮想カメラが追従するように、仮想カメラの位置又は回転角度(仮想カメラの向き)を制御する。この場合には、移動・動作処理部112で得られたオブジェクトの位置、回転角度又は速度などの情報に基づいて、仮想カメラを制御できる。或いは、仮想カメラを、予め決められた回転角度で回転させたり、予め決められた移動経路で移動させる制御を行ってもよい。この場合には、仮想カメラの位置(移動経路)又は回転角度を特定するための仮想カメラデータに基づいて仮想カメラを制御する。なお、仮想カメラ(視点)が複数存在する場合には、それぞれの仮想カメラについて上記の制御処理が行われる。
画像生成部120は、処理部100で行われる種々の処理(ゲーム処理)の結果に基づいて描画処理を行い、これにより、画像を生成し、表示部190に出力する。いわゆる3次元ゲーム画像を生成する場合には、まず、オブジェクトの各頂点データ(頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等)が入力され、入力された頂点データに基づいて、頂点処理が行われる。なお、頂点処理を行う際に、必要に応じてポリゴンを再分割するための頂点生成処理(テッセレーション、曲面分割、ポリゴン分割)を行うことができることができる。頂点処理では、頂点の移動処理や、座標変換(ワールド座標変換、カメラ座標変換)、クリッピング処理、或いは透視変換処理等のジオメトリ処理が行われ、その処理結果に基づいて、オブジェクトを構成する頂点群について与えられた頂点データを変更(更新、調整)する。そして、頂点処理後の頂点データに基づいてラスタライズ(走査変換)が行われ、表示画像を構成するピクセル(表示画面を構成するフラグメント)を描画するピクセル処理(フラグメント処理)が行われる。ピクセル処理では、テクスチャの読出し(テクスチャマッピング)、色データの設定/変更、半透明合成、アンチエイリアス等の各種処理を行って、最終的な表示画像のピクセルの描画色を決定し、透視変換されたオブジェクトの描画色をフレームバッファ172(ピクセル単位で画像情報を記憶できるバッファ。描画バッファ、表示バッファ、バックバッファ、フロントバッファ、ワークバッファ、VRAM)に出力(描画)する。すなわち、ピクセルシェーディングでは、表示画像のピクセル単位で画像情報(色、法線、輝度、α値等)を設定あるいは変更するパークピクセル処理を行う。これにより、オブジェクト空間内において仮想カメラ(所与の視点)から観察される画像(フレーム画像)が生成される。なお、視点が複数存在する場合には、それぞれの視点から観察される画像を分割画像として1画面に表示できるようにフレーム画像を生成することができる。
特に、本実施形態の画像生成部120は、仮想カメラの視線方向を基準としてオブジェクトデータ記憶部173に記憶された各オブジェクトデータ毎に(具体的には、頂点データ毎に)オブジェクトを描画する際に用いるデータであるか否かの判定処理を行う描画対象判定部121と、オブジェクトを描画する際にαブレンディング処理(半透明描画処理)を行うαブレンディング部122と、描画する各オブジェクトに対してテクスチャをマッピングするテクスチャマッピング部124と、を含む。
なお、これらの一部を省略する構成としてもよく、描画対象判定部121は、画像生成部120以外に設けられていてもよい。
通常、画像を生成する際には、仮想カメラの視線方向に対して観察不能なオブジェクトの頂点データについては、当該生成される画像には描画されず、当該仮想カメラの視線方向に対して観察可能な頂点データのみに基づいてオブジェクトを描画すれば画像を生成することができる。このため、本実施形態の描画対象判定部121は、各頂点データの法線ベクトルに基づいて仮想カメラの視線方向に対して当該オブジェクトの頂点が観察可能か否か、すなわち、描画対象となるか否かを判定する判定処理を行う。
具体的には、描画対象判定部121は、各頂点データ毎に、仮想カメラからメインキャラクタなどの注視対象に設定される注視点に向けたベクトル(以下、「視線ベクトル」ともいう。)と当該各オブジェクトデータに含まれる各頂点データの法線ベクトルとの内積を演算し、算出された値が所定の条件を示せば(例えば、視線ベクトルと法線ベクトルにて形成される角度が所定の角度範囲に属すれば)、当該演算に用いた法線ベクトルの頂点データを、オブジェクトを描画する際に用いるオブジェクトデータとして判定する。
すなわち、オブジェクトを描画する際には、仮想カメラから見える当該オブジェクトの面についてのみ描画することから、この描画対象判定部121は、視線ベクトルと法線ベクトルによって形成される角度が180度±90度の範囲になる場合に描画対象として判定する必要がある。したがって、本実施形態の描画対象判定部121は、視線ベクトルを「V1」、法線ベクトルを「V2」とし、視線ベクトルと法線ベクトルにて形成される角度を「θ」とすると、下式の内積演算によって当該角度パラメータcosθを算出し、角度θが180度±90度の範囲になる場合に描画対象として判定する。
cosθ=V1・V2/|V1||V2| (1)
ただし、視線ベクトルおよび法線ベクトルが単位ベクトルであることから、|V1|=|V2|=1となる。
なお、本実施形態の描画対象判定部121は、各頂点データ毎に、すなわち、オブジェクトデータ毎に当該判定処理を行うので、注視点が設定されるキャラクタなどの注視対象のオブジェクトと仮想カメラとの間に設定される可能性のあるオブジェクト、具体的には、仮想カメラに基づいて当該オブジェクトの奥に配置される他のオブジェクト(注視点が設定されるキャラクタなどのオブジェクト)を描画する可能性があるオブジェクトにおいては、第1オブジェクトデータおよび第2オブジェクトデータのそれぞれの頂点データに対しても判定処理を行うようになっている。
また、αブレンディング部122は、α値(A値)に基づくαブレンディング処理(通常αブレンディング、α加算ブレンディング又はα減算ブレンディング等)も行うことができるようになっている。
このαブレンディング部122は、α値(A値)に基づくαブレンディング処理(通常αブレンディング、α加算ブレンディング又はα減算ブレンディング等)を行う。例えば通常αブレンディングの場合には下式の処理を行う。
RQ=(1−α)×R1+α×R2 (2)
GQ=(1−α)×G1+α×G2 (3)
BQ=(1−α)×B1+α×B2 (4)
一方、加算αブレンディングの場合には下式の処理を行う。
RQ=R1+α×R2 (5)
GQ=G1+α×G2 (6)
BQ=B1+α×B2 (7)
ただし、R1、G1、B1は、フレームバッファ172に既に描画されている画像(画像)のRGB成分であり、R2、G2、B2は、フレームバッファ172に描画すべき画像のRGB成分である。また、RQ、GQ、BQは、αブレンディングにより得られる画像のRGB成分である。
なお、α値は、各ピクセル(テクセル、ドット)に関連づけて記憶できる情報であり、例えば色情報以外のプラスアルファの情報である。α値は、マスク情報、半透明度(透明度、不透明度と等価)、バンプ情報などとして使用できる。
本実施形態のαブレンディング部122は、第2オブジェクトデータに基づいてオブジェクトを描画する場合には、仮想カメラの視線方向を基準に当該オブジェクトの奥にある注視点が設定されるキャラクタその他のオブジェクトを描画するため、当該第2オブジェクトデータに含まれる頂点データのα値に基づいて、当該オブジェクトを半透明にして描画するようになっている。
テクスチャマッピング部124は、テクスチャ記憶部174に記憶されるテクスチャ(テクセル値)を各オブジェクトにマッピングするための処理を行う。具体的には、このテクスチャマッピング部124は、オブジェクト(プリミティブ面)の頂点に設定(付与)されるテクスチャ座標等を用いてテクスチャ記憶部174からテクスチャ(色、α値などの表面プロパティ)を読み出し、2次元の画像又はパターンであるテクスチャをオブジェクトにマッピングする。この場合に、ピクセルとテクセルとを対応づける処理やテクセル補間としてバイリニア補間などを行う。
特に、本実施形態のテクスチャマッピング部124は、第2オブジェクトデータによってオブジェクトを描画する場合であっても、第1オブジェクトと同様の色、模様など第1オブジェクトと同一のオブジェクトとして認識可能なテクスチャに基づいてマッピングを行う。
また本実施形態の画像生成システムでは、画像生成部120が隠面消去を行うことができるようになっている。隠面消去を利用する場合には、例えば、Z値が格納されるZバッファ176を用いて隠面消去を行いつつ、描画対象判定部124において描画するデータとして判定されたオブジェクトデータに基づいてオブジェクト(プリミティブ面)をフレームバッファ172に描画し、画像を生成する。そして、画像のZ値は、この描画処理の際に行われるZバッファ法(奥行き比較法)により、Zバッファ176上に生成(格納)される。なお、Z値(奥行き値)は、カメラ座標系のZ座標軸のZ値そのものであってもよいし、このZ値と数学的でかつ均等なパラメータであってもよい。
音生成部130は、処理部100で行われる種々の処理の結果に基づいて音処理を行い、BGM、効果音、又は音声などのゲーム音を生成し、音出力部192に出力する。
なお、本実施形態の画像生成システムは、1人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、1つの端末を用いて生成してもよいし、ネットワーク(伝送ライン、通信回線)などで接続された複数の端末(ゲーム機、携帯電話)を用いて分散処理により生成してもよい。
2.本実施形態の手法
次に、図2〜図5を用いて本実施形態の手法について説明する。なお、図2〜図5は、本実施形態の手法を説明するための図である。特に、図2は、第1オブジェクトおよび第2オブジェクトが設定されたオブジェクト空間における仮想カメラと注視対象の関係を示す図であり、図3は、仮想カメラにおいて描画される壁の一部(ドア)の法線ベクトルの向きを示す図である。また、図4は、注視点が設定されるオブジェクトのサイズと第2オブジェクトのサイズの関係を示す図であり、図5は、法線ベクトルの異なるプリミティブ面を有する第1オブジェクトと第2オブジェクトの関係を示す一例である。
本実施形態では、注視対象となるオブジェクト(第3オブジェクト、注視対象オブジェクト)は、オブジェクト空間内の予め設定された移動領域内(オブジェクトの移動領域内)を移動する移動体オブジェクトであって、当該注視対象のオブジェクトの移動に伴って変化する仮想カメラの位置、向きに基づいてオブジェクト空間内に設定された各オブジェクトを描画して画像を生成する。
すなわち、仮想カメラは、注視対象となるオブジェクトの移動に伴って移動制御されるようになっており、注視対象のオブジェクトにおけるオブジェクト空間上の位置、向きと仮想カメラの位置、向き(視線ベクトルの向き:視線方向)とによっては、オブジェクトの移動領域外から観察される画像を生成する場合も生ずる。
したがって、このように仮想カメラがオブジェクトの移動領域外に設定される場合であって、注視対象のオブジェクトと仮想カメラの間に、例えば、移動領域と移動領域外の境界に、固定的に設定されるオブジェクトが存在する場合には、当該注視対象のオブジェクトを視認可能に描画させるためには、注視対象のオブジェクトと仮想カメラの間に設定されるオブジェクトを透過(好ましくは半透明にて)させるなど工夫する必要がある。
具体的には、仮想カメラが注視対象のオブジェクトの移動領域内に設定される際には、移動領域と移動領域外の境界に固定的に設定される壁のオブジェクトが存在する場合であっても、図2(A)に示すように、注視対象のオブジェクトと仮想カメラと間に当該壁のオブジェクトが設定されないため、仮想カメラから見える壁のオブジェクトを描画する際に支障は生じない。その一方、仮想カメラが注視対象のオブジェクトの移動領域外に設定され、移動領域と移動領域外の境界に固定的に設定される壁のオブジェクトが存在する場合には、図2(B)に示すように、当該壁オブジェクトに注視対象のオブジェクトが遮蔽されてしまい、注視対象のオブジェクトを観察することができない。
そこで、本実施形態では、注視点が設定されるキャラクタなどの注視対象のオブジェクトと仮想カメラとの間に設定される可能性のあるオブジェクトに対しては、本来表現したいオブジェクトを描画するための第1オブジェクト(不透明オブジェクト)を設定する他に、第1オブジェクトと同位置あるいは近傍の位置に設定される第2オブジェクト(半透明オブジェクト)をオブジェクト空間に設定する手法を採用している。
具体的には、第1オブジェクトデータに基づいて、例えば、オブジェクトの形状および色と当該オブジェクトのオブジェクト空間上の座標位置および向きなど本来のオブジェクトを描画するための第1オブジェクトをオブジェクト空間に設定するようになっている。また本実施形態の手法では、第1オブジェクトデータの各頂点データに対応するとともに、オブジェクトを透過的に描画するための各頂点データを有する第2オブジェクトデータに基づいて、第2オブジェクトをオブジェクト空間に設定するようになっている。
特に、第1オブジェクトを構成するプリミティブ面の法線ベクトルと第2オブジェクトを構成するプリミティブ面の法線ベクトルは、一方の法線ベクトルと仮想カメラの視線ベクトルとのなす角度が第1の角度範囲に属する場合に、他方の法線ベクトルと視線ベクトルとのなす角度が第2の角度範囲に属する関係を有するようになっている。
例えば、図2(A)及び図2(B)に示すように、壁のオブジェクト対しては、注視対象のオブジェクトと仮想カメラとの間に設定される可能性があるため、仮想カメラの位置によって注視対象のオブジェクトと当該仮想カメラとの間にこの壁のオブジェクトが設定される場合には、当該壁オブジェクトの奥に注視対象のオブジェクトなど他のオブジェクトを描画することができるように、所定の透明度(α値)を有する第2オブジェクトを設定するようになっている。
また本実施形態の手法では、図3(A)及び図3(B)に示すように、図2に示す壁の一部(ドア)のオブジェクトに対して、移動領域内の方向に向けて設定された法線ベクトルS1を有するプリミティブ面からなる不透明な壁のオブジェクトである第1オブジェクトと、移動領域外の方向に向けて設定された法線ベクトルS2を有するプリミティブ面からなる半透明な壁のオブジェクトである第2オブジェクトを設定するようになっている。そして、この法線ベクトルS1と法線ベクトルS2は、一方の法線ベクトルと仮想カメラの視線ベクトルとのなす角度が第1の角度範囲に属する場合に、他方の法線ベクトルと視線ベクトルとのなす角度が第2の角度範囲に属する関係を有するように、所定の角度範囲以上(好ましくは、180度)異なる方向にて設定されるようになっている。
なお、図3(A)及び図3(B)に示す法線ベクトルS1およびS2は、図2(A)及び図2(B)において設定される仮想カメラにおいて描画される壁の一部(ドア)の不透明のオブジェクトおよび半透明なオブジェクトの法線ベクトルの向きを示している。ただし、図3(A)及び図3(B)において、法線ベクトルS1、S2は頂点データ毎のものを示しているわけでなく、説明の便宜上、第1オブジェクトおよび第2オブジェクトを構成する面の法線ベクトルを示している。
一方、本実施形態の手法では、このように設定された各オブジェクトを描画する際には、視線ベクトルと各頂点データにおける法線ベクトルとの内積演算を行うことによって、仮想カメラの視線ベクトルに対して描画対象の適否、すなわち、観察可能か否かを判定し、描画対象となったオブジェクトの面を描画して画像を生成するようになっている。すなわち本実施形態の手法では、プリミティブ面(あるいはポリゴン)の法線の向きによって表面及び裏面を判定して表面のみを描画する技術、いわゆるバックフェイスカリングを利用している。バックフェイスカリングは本来描画処理を高速化するために、描画処理の対象データを減らすことを目的として利用されてきた技術である。
そして本実施形態の手法では、図2において設定される壁のオブジェクトに対して、上述のように、第1オブジェクトの法線ベクトルと第2オブジェクトの法線ベクトルとは、一方の法線ベクトルと仮想カメラの視線ベクトルとのなす角度が第1の角度範囲に属する場合に、他方の法線ベクトルと視線ベクトルとのなす角度が第2の角度範囲に属する関係を有しているので、本実施形態の画像生成システムは、この判定処理により、何れか一方のオブジェクトを構成するプリミティブ面のみを、描画対象のプリミティブ面として判定するようになっている。
具体的には、仮想カメラが注視対象のオブジェクトの移動領域内に設定される場合には、すなわち、本来観察される方向からオブジェクトを描画する場合には、第1オブジェクト(第1オブジェクトを構成するプリミティブ面)を描画するようになっており、本来の壁の大きさ、色および形にて画像を描画するようになっている。
一方、仮想カメラが注視対象のオブジェクトの移動領域外に設定され、移動領域と移動領域外の境界に固定的に設定される壁のオブジェクトが存在する場合には、すなわち、本来観察されないオブジェクトの裏側に仮想カメラが移動し、当該裏側の方向から当該オブジェクトを描画する場合には、第2オブジェクト(第2オブジェクトを構成するプリミティブ面)を描画するようになっており、半透明な壁のオブジェクトを描画する。
例えば、図2(A)に示す仮想カメラの位置、向きに基づいてオブジェクトを描画する場合には、不透明な壁の第1オブジェクトを描画し、図2(B)に示す仮想カメラの位置、向きに基づいてオブジェクトを描画する場合には、半透明な壁の第2オブジェクトを描画するようになっている。
このように、本実施形態の手法では、オブジェクト空間上において、仮想カメラと注視対象となるオブジェクトの間に設定され、注視対象が仮想カメラから視認不能にさせる遮蔽物などのオブジェクトに対して第1オブジェクトのみならず第2オブジェクトを設定する。
したがって、本実施形態の手法によれば、仮想カメラと注視対象となるオブジェクトの間の遮蔽物を特定する処理や当該遮蔽物を半透明化して描画する処理など注視対象のオブジェクトを視認させるための専用の処理を行うことなく、各オブジェクトにおける描画対象の判定のみを行うことによって、注視対象となるオブジェクトが他のオブジェクトに遮蔽されても注視対象を視認しうる画像を生成することができるようになっている。
この結果、上述の専用の処理を不要することによって画像を生成する際の処理負担を低減させることができるとともに、仮想カメラの位置に適した各オブジェクトを的確に描画して画像を生成することができるようになっている。
また、本実施形態の第2オブジェクトは、例えば、図3(B)に示すように、第1オブジェクのサイズより小さいサイズにてオブジェクト空間上に設定されている。オブジェクト空間上において、仮想カメラと注視対象となるオブジェクトの間に設定された場合であって、仮想カメラが当該オブジェクトに近い場合または当該仮想カメラがオブジェクト空間の高さ方向に変化しない場合などでは、クリッピング処理その他の処理によって、スクリーンに投影される第2オブジェクトの描画範囲が狭いので、第2オブジェクトを少ないデータによって描画することができるからである。
さらに、メインキャラクタなどの注視点が設定されるオブジェクト(第3オブジェクト)に対しては、そのサイズが可変に設定されており、所定のイベントに基づいて、そのサイズが所定の可変範囲にて変更される場合もある。すなわち、第2オブジェクトが当該注視点のオブジェクトに合わせて大きくさせて描画させる場合もある。この場合には、図4(A)及び図4(B)に示すように、注視点が設定されるオブジェクトのサイズに基づいて、オブジェクト空間における第2オブジェクトのサイズを替えて当該第2オブジェクトを設定するようになっている。すなわち、当該注視点が設定されるオブジェクトの最大変化量に合わせて、オブジェクト空間における第2オブジェクトのサイズを替えて当該第2オブジェクトを設定するようになっている。
これにより、第2オブジェクトが第1オブジェクトより小さいサイズによって設定されている場合であっても、スクリーンに投影された第2オブジェクトのサイズがスクリーンより小さくなって的確に描画することができないという不都合を解消することができるようになっている。ただし、本実施形態の画像生成システムは、サイズの違う第2オブジェクトのオブジェクトデータを読み込んでオブジェクト空間に設定してもよいし、既にオブジェクト空間に設定されている第2オブジェクトのサイズを所定の係数でスケーリングしてもよい。
なお、本実施形態の手法では、図5に示すように、第1オブジェクトが、法線の異なる複数のプリミティブ面から構成されるデータである場合に、第2オブジェクトを少なくとも何れか一のプリミティブ面の法線を示す法線ベクトルS1a、S1bに対して所定の角度範囲以上異なる単一の法線ベクトルS2から構成されるプリミティブ面のオブジェクトデータにて構成していてもよい。
通常、複数のプリミティブ面によって構成されるオブジェクトの裏側から、仮想カメラにて当該オブジェクトを観察した場合に、当該複雑な形状を描画する必要がないことも多いからである。これにより、この画像生成システムは、複雑な形状として認識されるオブジェクトに対しても、少ないデータによって仮想カメラの視線方向に応じて透明度が変化するオブジェクトを描画することができるとともに、仮想カメラが第2オブジェクト側に設定された場合には、描画判定処理の対象となる法線ベクトルの数が少なくなるので、当該描画判定処理の負担が軽減される。
また、第1オブジェクトおよび第2オブジェクトにて設定されるオブジェクトは、上述の壁のオブジェクトなどのオブジェクト空間上に固定されるオブジェクトと異なり、当該オブジェクト空間上を移動するオブジェクト(移動体オブジェクト)であってもよい。この場合には、第1オブジェクトおよび第2オブジェクトは、移動・動作処理部112によってそれぞれのオブジェクト空間上における位置が算出されるようになっている。
また、本実施形態では、少なくとも注視点が設定されるキャラクタなどの注視対象のオブジェクトと仮想カメラとの間に設定される可能性のあるオブジェクトに対してのみ、第1オブジェクトと第2オブジェクトが設定されていればよく、メインキャラクタなどの注視点が固定的に設定されるキャラクタが存在しても、または、存在しなくても、本発明を適用することが可能である。
また、本実施形態では、一のオブジェクトに対して第1オブジェクトおよび第2オブジェクトの2のオブジェクトを設定する場合について説明したが、勿論、一のオブジェクトに対して3以上のオブジェクトを設定することも可能である。
3.本実施形態の処理
次に、図6を用いて本実施形態の画像生成システムにおけるオブジェクトを描画する際の詳細な処理例について説明する。なお、図6は、本実施形態の画像生成システムにおけるオブジェクトを描画する際の動作を示すフローチャートである。
以下の処理については、壁オブジェクトなどのオブジェクト空間上に固定されるオブジェクトを用いて説明する。
まず、オブジェクトデータやテクスチャデータなど、画像生成に使用するオブジェクトに関する各種のデータを読み出してRAMあるいはVRAMに転送する(ステップS1)。特に、注視点が設定されるキャラクタなどの注視対象のオブジェクトと仮想カメラとの間に設定される可能性のあるオブジェクトについては、第1オブジェクトデータおよび第2オブジェクトデータと、それぞれに対応するテクスチャと、をRAMあるいはVRAMに転送する。
次いで、各オブジェクトをオブジェクト空間に設定する(ステップS2)。特に、視点が設定されるキャラクタなどの注視対象のオブジェクトと仮想カメラとの間に設定される可能性のあるオブジェクトについては、第1オブジェクトデータおよび第2オブジェクトデータに基づいて、第1オブジェクトおよび第2オブジェクトをそれぞれオブジェクト空間に設定する。
次いで、操作部などからの指示データに基づいて、画像を生成する際の基準となる仮想カメラの位置が決定されると、当該仮想カメラの視線方向を基準に各オブジェクト毎に視線ベクトルと法線ベクトルの内積を演算するとともに、当該視線ベクトルと法線ベクトルとによって構成される角度が第1の角度範囲内か第2の角度範囲内かを判定し、描画対象となるオブジェクトの面を判定する(ステップS3)。
具体的には、視線ベクトルと法線ベクトルとによって構成される角度が所定の第1の角度範囲内の場合には、描画対象の面と判定し、視線ベクトルと法線ベクトルとによって構成される角度が第2の角度範囲内の場合には、描画対象でない面と判定する。特に、注視点が設定されるキャラクタなどの注視対象のオブジェクトと仮想カメラとの間に設定される可能性のあるオブジェクトについては、結果的に、第1オブジェクトおよび第2オブジェクトの何れか一方のオブジェクトの面を、選択的に描画対象の面と判定する。
次いで、ステップS2の処理において描画対象と判定された面(オブジェクトのプリミティブ)を、テクスチャマッピング処理を行いつつ、描画して画像を生成する(ステップS4)。特に、第2オブジェクトデータによってオブジェクトを描画する際には、第1オブジェクトと同一の色または模様のテクスチャに基づいてテクスチャマッピングを行いつつ、当該オブジェクトの面を描画する。
4.ハードウェア構成
次に、図7を用いて本実施形態を実現できるハードウェア構成について説明する。なお、図7は、本実施形態を実現できるハードウェア構成を示す一例である。
メインプロセッサ900は、CD982(情報記憶媒体。CDでもよい。)に格納されたプログラム、通信インターフェース990を介してダウンロードされたプログラム、或いはROM950に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などを実行する。
コプロセッサ902は、メインプロセッサ900の処理を補助するものであり、マトリクス演算(ベクトル演算)を高速に実行する。例えば、オブジェクトを移動させたり動作(モーション)させる物理シミュレーションに、マトリクス演算処理が必要な場合には、メインプロセッサ900上で動作するプログラムが、その処理をコプロセッサ902に指示(依頼)する。
ジオメトリプロセッサ904は、メインプロセッサ900上で動作するプログラムからの指示に基づいて、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、マトリクス演算を高速に実行する。データ伸張プロセッサ906は、圧縮された画像データや音データのデコード処理を行ったり、メインプロセッサ900のデコード処理をアクセレートする。これにより、オープニング画面やゲーム画面において、MPEG方式等で圧縮された動画像を表示できる。
描画プロセッサ910は、ポリゴンや曲面などのプリミティブ面で構成されるオブジェクトの描画(レンダリング)処理を実行する。オブジェクトの描画の際には、メインプロセッサ900は、DMAコントローラ970を利用して、描画データを描画プロセッサ910に渡すと共に、必要であればテクスチャ記憶部924にテクスチャを転送する。すると描画プロセッサ910は、描画データやテクスチャに基づいて、Zバッファなどを利用した隠面消去を行いながら、オブジェクトをフレームバッファ922に描画する。
また、この描画プロセッサ910は、αブレンディング(半透明処理)、デプスキューイング、ミップマッピング、フォグ処理、バイリニア・フィルタリング、トライリニア・フィルタリング、アンチエリアシング、シェーディング処理なども行う。1フレーム分の画像がフレームバッファ922に書き込まれるとその画像はディスプレイ912に表示される。
サウンドプロセッサ930は、多チャンネルのADPCM音源などを内蔵し、BGM、効果音、音声などのゲーム音を生成し、スピーカ932を介して出力する。ゲームコントローラ942やメモリカード944からのデータはシリアルインターフェース940を介して入力される。
ROM950には、システムプログラムなどが格納される。業務用ゲームシステムの場合にはROM950が情報記憶媒体として機能し、ROM950に各種プログラムが格納される。なおROM950の代わりにハードディスクを利用してもよい。
RAM960は、各種プロセッサの作業領域となる。DMAコントローラ970は、プロセッサ、メモリ間でのDMA転送を制御する。CDドライブ980は、プログラム、画像データ、或いは音データなどが格納されるCD982にアクセスする。通信インターフェース990はネットワーク(通信回線、高速シリアルバス)を介して外部との間でデータ転送を行う。
なお、本実施形態の各部(各手段)の処理は、その全てをハードウェアのみにより実現してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。
そして、本実施形態の各部の処理をハードウェアとプログラムの両方により実現する場合には、情報記憶媒体には、ハードウェア(コンピュータ)を本実施形態の各部として機能させるためのプログラムが格納される。より具体的には、上記プログラムが、ハードウェアである各プロセッサ902、904、906、910、930に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ902、904、906、910、930は、その指示と渡されたデータとに基づいて本発明の各部の処理を実現する。
また、本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。例えば、明細書又は図面中の記載において広義や同義な用語(プリミティブ面等)として引用された用語(ポリゴン等)は、明細書又は図面中の他の記載においても広義や同義な用語に置き換えることができる。
また、判定処理および描画処理は、本実施形態で説明したものに限定されず、これらと均等な手法も本発明の範囲に含むことができる。
また、本発明は種々のゲームに適用できる。また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード、携帯電話等の種々の画像生成システムに適用できる。
本実施形態の画像生成システムの機能ブロック図の例。 本実施形態の手法を説明するための図であり、第1オブジェクト第2オブジェクトが設定されたオブジェクト空間における仮想カメラと注視対象の関係を示す図。 本実施形態の手法を説明するための図であり、仮想カメラにおいて描画される壁の一部(ドア)の法線ベクトルの向き示す図。 本実施形態の手法を説明するための図であり、注視点が設定されるオブジェクトのサイズと第2オブジェクトのサイズの関係を示す図。 本実施形態の手法を説明するための図であり、第1オブジェクトが法線ベクトルの異なるプリミティブ面に対する第2オブジェクトの例を示す図。 本実施形態の処理の詳細例。 ハードウェアの構成例。
符号の説明
100 処理部、110 オブジェクト空間設定部、112 移動・動作処理部、
114 仮想カメラ制御部、120 画像生成部、121 描画対象判定部、
122 αブレンディング部、123 テクスチャマッピング部、130 音生成部、
160 操作部、170 記憶部、172 フレームバッファ、
173 オブジェクトデータ記憶部、174 テクスチャ記憶部、
176 Zバッファ176、180 情報記憶媒体、190 表示部、
192 音出力部、194 携帯型情報記憶装置、196 通信部

Claims (7)

  1. オブジェクト空間において仮想カメラから見える画像を生成するためのプログラムであって、
    第1オブジェクトと、該第1オブジェクトに対応するとともに、透過可能に描画するための所定の透明度を有する第2オブジェクトとを、前記オブジェクト空間に設定するオブジェクト空間設定部と、
    前記オブジェクト空間に設定された仮想カメラから見えるオブジェクトを描画する際に、前記仮想カメラの視線ベクトルとオブジェクトを構成する面の法線ベクトルとのなす角度に応じて、オブジェクトを構成する面について描画対象としての適否を判定する描画対象判定部と、
    前記描画対象と判定された面のみを描画して画像を生成する画像生成部として、コンピュータを機能させ、
    前記第1オブジェクトを構成する面の法線ベクトルと前記第2オブジェクトを構成する面の法線ベクトルとは、一方の法線ベクトルと仮想カメラの視線ベクトルとのなす角度が第1の角度範囲に属する場合に、他方の法線ベクトルと視線ベクトルとのなす角度が第2の角度範囲に属する関係を有し、
    前記描画対象判定部が、
    前記仮想カメラの視線ベクトルに対する法線ベクトルの角度が前記第1の角度範囲内である面を描画対象とし、前記仮想カメラの視線ベクトルに対する法線ベクトルの角度が前記第2の角度範囲内である面を描画対象としない処理を行うことを特徴とするプログラム。
  2. 請求項1において、
    オブジェクトに対してテクスチャマッピングを行うテクスチャマッピング部として前記コンピュータを機能させ、
    前記テクスチャマッピング部が、
    前記第2オブジェクを描画する際に、前記第1オブジェクトにマッピングされるテクスチャと同一の色または模様の少なくとも何れか一方のテクスチャを第2オブジェクトにマッピングすることを特徴とするプログラム。
  3. 請求項1または2において、
    前記第2オブジェクトのサイズが前記第1オブジェクのサイズより小さく設定されていることを特徴とするプログラム。
  4. 請求項3において、
    前記オブジェクト空間設定部が、
    前記仮想カメラにおける注視点が設定される第3オブジェクトのサイズが変化する場合に、前記第3オブジェクトのサイズに応じて、前記オブジェクト空間におけるオブジェクトのサイズを替えて前記第2オブジェクトを設定することを特徴とするプログラム。
  5. 請求項4において、
    前記オブジェクト空間設定部が、
    前記第1オブジェクトが、法線ベクトルの異なる複数の面から構成されており、該第1オブジェクトを構成する各面の法線ベクトルが前記視線ベクトルに対して第1の角度範囲に属する場合に、該視線ベクトルと前記第2の角度範囲に属する法線ベクトルを有する単一の面にて構成されている第2オブジェクトを前記オブジェクト空間に設定することを特徴とするプログラム。
  6. コンピュータに読み取り可能な情報記憶媒体であって、請求項1〜5のいずれかに記載のプログラムを記憶したことを特徴とする情報記憶媒体。
  7. オブジェクト空間において仮想カメラから見える画像を生成するための画像生成システムであって、
    第1オブジェクトと、該第1オブジェクトに対応するとともに、透過可能に描画するための所定の透明度を有する第2オブジェクトとを、前記オブジェクト空間に設定するオブジェクト空間設定部と、
    前記オブジェクト空間に設定された仮想カメラから見えるオブジェクトを描画する際に、前記仮想カメラの視線ベクトルとオブジェクトを構成する面の法線ベクトルとのなす角度に応じて、オブジェクトを構成する面について描画対象としての適否を判定する描画対象判定部と、
    前記描画対象と判定された面のみを描画して画像を生成する画像生成部と、
    を含み、
    前記第1オブジェクトを構成する面の法線ベクトルと前記第2オブジェクトを構成する面の法線ベクトルとは、一方の法線ベクトルと仮想カメラの視線ベクトルとのなす角度が第1の角度範囲に属する場合に、他方の法線ベクトルと視線ベクトルとのなす角度が第2の角度範囲に属する関係を有し、
    前記描画対象判定部が、
    前記仮想カメラの視線ベクトルに対する法線ベクトルの角度が前記第1の角度範囲内である面を描画対象とし、前記仮想カメラの視線ベクトルに対する法線ベクトルの角度が前記第2の角度範囲内である面を描画対象としない処理を行うことを特徴とする画像生成システム。
JP2005361327A 2005-12-15 2005-12-15 プログラム、情報記録媒体および画像生成システム Active JP4717622B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005361327A JP4717622B2 (ja) 2005-12-15 2005-12-15 プログラム、情報記録媒体および画像生成システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005361327A JP4717622B2 (ja) 2005-12-15 2005-12-15 プログラム、情報記録媒体および画像生成システム

Publications (2)

Publication Number Publication Date
JP2007164557A true JP2007164557A (ja) 2007-06-28
JP4717622B2 JP4717622B2 (ja) 2011-07-06

Family

ID=38247361

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005361327A Active JP4717622B2 (ja) 2005-12-15 2005-12-15 プログラム、情報記録媒体および画像生成システム

Country Status (1)

Country Link
JP (1) JP4717622B2 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011510396A (ja) * 2008-01-23 2011-03-31 インテル コーポレイション グラフィック・パフォーマンス改善のための方法、装置およびコンピュータ・プログラム・プロダクト
WO2011115143A1 (en) * 2010-03-16 2011-09-22 Canon Kabushiki Kaisha Geometric feature extracting device, geometric feature extracting method, storage medium, three-dimensional measurement apparatus, and object recognition apparatus
JP2012110550A (ja) * 2010-11-26 2012-06-14 Copcom Co Ltd ゲームプログラム及びゲーム装置
WO2013058740A1 (en) * 2011-10-18 2013-04-25 Intel Corporation Surface based graphics processing
JP2016093362A (ja) * 2014-11-14 2016-05-26 株式会社コロプラ ゲーム空間内における仮想カメラの制御プログラム及びゲームシステム。
WO2016129603A1 (ja) * 2015-02-10 2016-08-18 株式会社カプコン ゲーム装置、制御方法およびコンピュータが読み取り可能な記録媒体
JP7097125B1 (ja) 2021-12-22 2022-07-07 株式会社セルシス 映像生成方法及び画像生成プログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10214337A (ja) * 1997-01-28 1998-08-11 Namco Ltd 画像生成装置
JP2000331195A (ja) * 1999-05-19 2000-11-30 Nec Corp 3次元表示方法、3次元表示装置および3次元表示プログラムを記録した記録媒体
JP3141737B2 (ja) * 1995-08-10 2001-03-05 株式会社セガ 仮想画像生成装置及びその方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3141737B2 (ja) * 1995-08-10 2001-03-05 株式会社セガ 仮想画像生成装置及びその方法
JPH10214337A (ja) * 1997-01-28 1998-08-11 Namco Ltd 画像生成装置
JP2000331195A (ja) * 1999-05-19 2000-11-30 Nec Corp 3次元表示方法、3次元表示装置および3次元表示プログラムを記録した記録媒体

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11222462B2 (en) 2008-01-23 2022-01-11 Intel Corporation Method, apparatus, and computer program product for improved graphics performance
JP2012252725A (ja) * 2008-01-23 2012-12-20 Intel Corp グラフィック・パフォーマンス改善のための方法、装置およびコンピュータ・プログラム・プロダクト
US11361498B2 (en) 2008-01-23 2022-06-14 Intel Corporation Method, apparatus, and computer program product for improved graphics performance
JP2011510396A (ja) * 2008-01-23 2011-03-31 インテル コーポレイション グラフィック・パフォーマンス改善のための方法、装置およびコンピュータ・プログラム・プロダクト
US10373370B2 (en) 2008-01-23 2019-08-06 Intel Corporation Method, apparatus, and computer program product for improved graphics performance
US9947130B2 (en) 2008-01-23 2018-04-17 Intel Corporation Method, apparatus, and computer program product for improved graphics performance
US8792726B2 (en) 2010-03-16 2014-07-29 Canon Kabushiki Kaisha Geometric feature extracting device, geometric feature extracting method, storage medium, three-dimensional measurement apparatus, and object recognition apparatus
WO2011115143A1 (en) * 2010-03-16 2011-09-22 Canon Kabushiki Kaisha Geometric feature extracting device, geometric feature extracting method, storage medium, three-dimensional measurement apparatus, and object recognition apparatus
JP2011192214A (ja) * 2010-03-16 2011-09-29 Canon Inc 幾何特徴抽出装置、幾何特徴抽出方法、及びプログラム、三次元計測装置、物体認識装置
JP2012110550A (ja) * 2010-11-26 2012-06-14 Copcom Co Ltd ゲームプログラム及びゲーム装置
WO2013058740A1 (en) * 2011-10-18 2013-04-25 Intel Corporation Surface based graphics processing
JP2016093362A (ja) * 2014-11-14 2016-05-26 株式会社コロプラ ゲーム空間内における仮想カメラの制御プログラム及びゲームシステム。
JP2016146864A (ja) * 2015-02-10 2016-08-18 株式会社カプコン ゲームプログラムおよびゲーム装置
WO2016129603A1 (ja) * 2015-02-10 2016-08-18 株式会社カプコン ゲーム装置、制御方法およびコンピュータが読み取り可能な記録媒体
JP7097125B1 (ja) 2021-12-22 2022-07-07 株式会社セルシス 映像生成方法及び画像生成プログラム
JP2023093276A (ja) * 2021-12-22 2023-07-04 株式会社セルシス 映像生成方法及び画像生成プログラム

Also Published As

Publication number Publication date
JP4717622B2 (ja) 2011-07-06

Similar Documents

Publication Publication Date Title
JP4717622B2 (ja) プログラム、情報記録媒体および画像生成システム
US7479961B2 (en) Program, information storage medium, and image generation system
JP4728721B2 (ja) プログラム、情報記憶媒体及び画像生成システム
JP4804122B2 (ja) プログラム、テクスチャデータ構造、情報記憶媒体及び画像生成システム
JP4305903B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2007140842A (ja) プログラム、情報記憶媒体、及び画像生成システム
JP3748451B1 (ja) プログラム、情報記憶媒体、及び画像生成システム
JP4749198B2 (ja) プログラム、情報記憶媒体及び画像生成システム
JP4754384B2 (ja) プログラム、情報記録媒体および画像生成システム
JP4743770B2 (ja) 画像生成システム、プログラム、及び情報記憶媒体
JP2006323512A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2009169471A (ja) プログラム、情報記憶媒体、及び画像生成システム
JP4528008B2 (ja) プログラム、情報記憶媒体、及び画像生成システム
JP4488346B2 (ja) プログラム、情報記憶媒体、及び画像生成システム
JP4913399B2 (ja) プログラム、情報記憶媒体及び画像生成システム
JP4229317B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2011215724A (ja) プログラム、情報記憶媒体及び画像生成システム
JP4754385B2 (ja) プログラム、情報記録媒体および画像生成システム
JP4592087B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4476040B2 (ja) プログラム、情報記憶媒体、及び画像生成システム
JP2010231364A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2010033253A (ja) プログラム、情報記憶媒体および画像生成システム
JP4521811B2 (ja) プログラム、情報記憶媒体、及び画像生成システム
JP2006252291A (ja) プログラム、情報記憶媒体及び画像生成システム
JP4680670B2 (ja) プログラム、情報記憶媒体及び画像生成システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081002

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101208

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110207

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 4717622

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140408

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

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