JP2007140842A - プログラム、情報記憶媒体、及び画像生成システム - Google Patents

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

Info

Publication number
JP2007140842A
JP2007140842A JP2005333037A JP2005333037A JP2007140842A JP 2007140842 A JP2007140842 A JP 2007140842A JP 2005333037 A JP2005333037 A JP 2005333037A JP 2005333037 A JP2005333037 A JP 2005333037A JP 2007140842 A JP2007140842 A JP 2007140842A
Authority
JP
Japan
Prior art keywords
effect
color
post
area
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
JP2005333037A
Other languages
English (en)
Other versions
JP4804120B2 (ja
Inventor
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 JP2005333037A priority Critical patent/JP4804120B2/ja
Publication of JP2007140842A publication Critical patent/JP2007140842A/ja
Application granted granted Critical
Publication of JP4804120B2 publication Critical patent/JP4804120B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Image Generation (AREA)

Abstract

【課題】画像表現のバリエーションを増やして現実感を更に高めるとともに、軽い処理負荷でかかる画像表現を実現することができるプログラム、情報記憶媒体及び画像生成システムの提供。
【解決手段】視界画像生成部122と、視界画像に対して色を調整するポストエフェクト処理を行うポストエフェクト処理部124としてコンピュータを機能させるプログラムであって、ポストエフェクト処理部が、スクリーンに対してポストエフェクト領域を設定し、ポストエフェクト領域の一部又は全体において第1のエフェクト色をグラデーション変化させるための第1の色調整情報と、視界画像の奥行き値に応じて第1のエフェクト色を変化させるための第2の色調整情報とを設定し、第1の色調整情報と第2の色調整情報とに基づいて、視界画像のポストエフェクト領域に対応する領域に第1のエフェクト色を反映させて視界画像の色を調整するポストエフェクト処理を行う。
【選択図】図9

Description

本発明は、プログラム、情報記憶媒体、及び画像生成システムに関する。
従来より、キャラクタなどのオブジェクトが配置設定されるオブジェクト空間内(仮想的な3次元空間)において仮想カメラ(所与の視点)から見える画像を生成する画像生成システム(ゲームシステム)が知られており、いわゆる仮想現実を体験できるものとして人気が高い。
このような画像生成システムでは、オブジェクト空間に配置されたオブジェクトにエフェクト色を反映させて、霧(フォグ)、もや、煙、ホコリなどが掛かった場面を表示する場合がある。この場合には、プレーヤの仮想現実感を向上させるために、仮想カメラ(視点)からの距離に応じてエフェクト色の濃度を変化させ、現実世界のフォグ特性等を表現することが望ましい。このようなエフェクト色の濃度の制御を行う技術としては、特開2003−323630号公報に開示される従来技術がある。
しかしながら、従来の画像生成システムでは、エフェクト色の濃度の変化は仮想カメラからの距離に応じたα値(フォグの乗り具合)で制御するのみであり、フォグ効果による画像表現には限界があった。
特開2003−323630号公報
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、仮想カメラからの距離に応じたエフェクト色の濃度の変化特性に他の変化特性を加味してオブジェクトにエフェクト色を反映させることにより、画像表現のバリエーションを増やして現実感を更に高めるとともに、軽い処理負荷でかかる画像表現を実現することができるプログラム、情報記憶媒体及び画像生成システムを提供することにある。
(1)本発明は、オブジェクト空間に設定されたオブジェクトをスクリーンに投影して仮想カメラから見た視界画像を生成する視界画像生成部と、
前記視界画像に対して色を調整するポストエフェクト処理を行うポストエフェクト処理部とを含み、
前記ポストエフェクト処理部が、
前記スクリーンに対してポストエフェクト領域を設定し、
前記ポストエフェクト領域の一部又は全体において第1のエフェクト色をグラデーション変化させるための第1の色調整情報と、前記視界画像の奥行き値に応じて第1のエフェクト色を変化させるための第2の色調整情報とを設定し、
前記第1の色調整情報と前記第2の色調整情報とに基づいて、前記視界画像の前記ポストエフェクト領域に対応する領域に前記第1のエフェクト色を反映させて前記視界画像の色を調整するポストエフェクト処理を行うことを特徴とする画像生成システムに関係する。
また本発明は、上記各部としてコンピュータを機能させるプログラムに関係する。また本発明は、コンピュータ読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるプログラムを記憶(記録)した情報記憶媒体に関係する。
本発明において、視界画像とは、フレームバッファに出力された段階の画像データとしてもよいし、フレームバッファに出力される前段階としてワークバッファ等の中間バッファに出力された中間段階の画像データとしてもよい。
また、ポストエフェクト処理とは、フレームバッファに出力された視界画像の画像データにエフェクト色を反映させるようにしてもよいし、ワークバッファに出力された視界画像の画像データにエフェクト色を反映させた画像データを、フレームバッファに出力するようにしてもよい。
また、視界画像に対して色を調整するポストエフェクト処理とは、視界画像に対して直接的に色を調整することの他、他の色調整処理等を加えた後の視界画像に対して色を調整することを含む。また、視界画像に第1のエフェクト色を反映させるとは、視界画像に直接的に第1のエフェクト色を反映させることの他、他の色調整処理等を加えた後の視界画像に第1のエフェクト色を反映させることを含む。
また、視界画像の奥行き値とは、Zバッファに格納された視界画像のZ値や、該Z値を変換した所定の距離情報とすることができる。
本発明によれば、奥行き値に応じたエフェクト色の変化特性に、所定の領域でグラデーション変化するエフェクト色の変化特性を加味した変化特性により、視界画像に第1のエフェクト色を反映させることができる。例えば、視界画像の地平線や水平線付近の領域をポストエフェクト領域として設定すれば、地平線や水平線から離れるにつれ空の色がグラデーション変化するようにすることができる。
従って、奥行き値が最遠景として一定に設定される空などの領域では、視界画像の奥行き値に応じた色調整情報だけではエフェクト色の反映に変化を持たせることができなかったが、本発明によれば、例えば、地平線や水平線付近での空の色の変化等を表現することができる。
しかも、スクリーンに対して設定されたポストエフェクト領域に、より手前側のオブジェクトが存在する場合には、視界画像の奥行き値に応じた第2の色調整情報によって第1のエフェクト色が調整される。従って、ポストエフェクト領域において第1のエフェクト色をグラデーション変化させても不自然に見えることはない。
更に、従来の画像生成システムでは、地平線や水平線付近での空の色の変化等を表現する際には、空に対応する領域に天球(スフィア)等を設定し、該天球の法線ベクトルの向きと仮想カメラの視線方向に基づいて、空の色の変化を調整するための演算を行う等していた。しかし、本発明によれば、かかる手法を採用しなくとも、軽い処理負荷で地平線や水平線付近での空の色の変化等をリアルに表現することができる。
(2)また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、
(1)の発明において、
前記ポストエフェクト処理部が、
第1のα値を前記第1の色調整情報として設定するとともに、第2のα値を第2の色調整情報として設定し、
前記第1のα値と前記第2のα値との乗算結果に基づいてαブレンディングを行うことにより、前記視界画像に対して前記ポストエフェクト処理を行うようにしてもよい。
本発明によれば、第1のエフェクト色をグラデーション変化させる第1のα値と、視界画像の奥行き値に応じた第2のα値との乗算結果に基づいてαブレンディングを行うことにより、奥行き値に応じたエフェクト色の変化特性に、所定の領域でグラデーション変化するエフェクト色の変化特性を加味した変化特性により、視界画像に第1のエフェクト色を反映させることができる。
(3)また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、
(1)、(2)の発明のいずれかにおいて、
前記ポストエフェクト処理部が、
前記仮想カメラの制御情報に基づいて、前記ポストエフェクト領域を設定するようにしてもよい。
本発明においては、仮想カメラの位置、向き、画角に関する制御情報や、それらの情報に基づいて求められる情報に基づいて、ポストエフェクト領域を設定することができる。また、ポストエフェクト領域を設定するとは、ポストエフェクト領域の基準位置を設定するようにしてもよいし、ポストエフェクト領域の範囲を設定するようにしてもよい。
本発明によれば、仮想カメラの位置、向き、画角の変化により、ポストエフェクト処理の対象とすべき領域のスクリーン上の位置が変化した場合に、仮想カメラの位置、向き、画角の変化に合わせてポストエフェクト領域を設定することができる。
例えば、仮想カメラの位置が高くなれば、或いは仮想カメラの向きが上向きになれば、スクリーンに投影される地平線や水平線は相対的にスクリーンの下方に位置することになる。そこで、仮想カメラの位置、向き、画角の変化に合わせてポストエフェクト領域を設定することにより、仮想カメラの位置、向き、画角が変化しても、例えば地平線や水平線付近をポストエフェクト処理の対象領域とすることができる。
(4)また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、
(1)〜(3)の発明のいずれかにおいて、
前記ポストエフェクト処理部が、
オブジェクト空間の所定の基準面からの高さ情報に基づいて該高さ情報に対応するスクリーン座標系における座標情報を取得し、取得した座標情報に基づいて前記ポストエフェクト領域を設定するようにしてもよい。
本発明においては、例えばCPU等の演算手段が演算した座標情報を、ポストエフェクト処理部が取得するようにしてもよいし、ポストエフェクト処理部が座標情報を演算することにより座標情報を取得するようにしてもよい。
また、オブジェクト空間の所定の基準面からの高さ情報とは、該オブジェクト空間のオブジェクト配置や仮想カメラの移動範囲等に応じて、任意に定めることができる。
本発明によれば、例えば、オブジェクト空間における所定の高さ情報に対応するスクリーン座標系における座標情報を、ポストエフェクト領域を設定する際の基準とすることができる。従って、仮想カメラの位置、向き、画角の変化により、ポストエフェクト処理の対象とすべき領域のスクリーン上の位置が変化した場合に、仮想カメラの位置、向き、画角の変化に合わせてポストエフェクト領域を設定することができる。
(5)また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、
(1)〜(4)の発明のいずれかにおいて、
前記ポストエフェクト処理部が、
前記第1の色調整情報を、前記ポストエフェクト領域の一部であるグラデーション調整領域の一端から他端に向けてグラデーション変化するように設定するようにしてもよい。
本発明によれば、グラデーション調整領域の一端から他端に向けて第1のエフェクト色がグラデーション変化するように、第1のエフェクト色を視界画像に反映させることができる。
(6)また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、
(5)の発明において、
前記ポストエフェクト処理部が、
前記第1の色調整情報を設定する処理として、一端側の頂点と他端側の頂点とで異なるα値が設定された第1のポリゴンを描画する処理を行うようにしてもよい。
本発明において、第1のポリゴンは、例えば、スクリーンの横幅に対応する一定サイズの矩形のポリゴンとしてもよい。ここで、スクリーンの横幅に対応するとは、スクリーンの横幅と横幅が等しいポリゴンとしてもよいし、スクリーンの横幅よりも横幅が多少広い或いは狭いポリゴンとしてもよい。
本発明によれば、ポリゴンの頂点に対して設定したα値により、グラデーション調整領域において第1のエフェクト色の濃度をグラデーション変化させることができる。例えば、矩形のポリゴンの右上、左上の頂点に設定されるα値を0.0(透明)とし、右下、左下の頂点に設定されるα値を1.0(不透明)とすれば、第1のポリゴンの上端から下端に向けてα値が線形補間され、第1のエフェクト色の濃度が次第に濃くなるようにすることができる。
(7)また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、
(5)、(6)の発明のいずれかにおいて、
前記ポストエフェクト処理部が、
前記第1の色調整情報を、前記ポストエフェクト領域の前記グラデーション調整領域以外の領域では前記グラデーション調整領域の他端に設定される色調整情報に設定するようにしてもよい。
本発明によれば、ポストエフェクト領域において、グラデーション調整領域とそれ以外の領域とで第1の色調整情報(第1のα値)の変化特性を連続させることができる。従って、グラデーション調整領域とそれ以外の領域とで、設定される色調整情報(例えばα値)が急激に変化して不自然な画像が生成されることを防止することができる。
また、視界画像の奥行き値が手前側である領域では、視界画像の奥行き値に応じた第2の色調整情報(例えば第2のα値)によって、ポストエフェクト領域に対して最終的に設定される色調整情報(例えばα値)が0もしくは0に近い値にされることになる。従って、グラデーション調整領域以外の領域に対して第1の色調整情報(例えば第1のα値)を固定して設定しても、奥行き値が手前側である領域においては第1のエフェクト色の濃度を0もしくは非常に薄くなるようにすることができる。
(8)また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、
(7)の発明において、
前記ポストエフェクト処理部が、
前記ポストエフェクト領域を設定する処理として、全ての頂点に対して前記グラデーション調整領域の他端での色調整情報が設定され、前記ポストエフェクト領域の前記グラデーション調整領域以外の領域に対応する第2のポリゴンを描画する処理を行うようにしてもよい。
本発明において、第2のポリゴンとは、スクリーンの横幅と横幅が等しいポリゴンとしてもよいし、スクリーンの横幅よりも横幅が多少広い或いは狭いポリゴンとしてもよい。また、第2のポリゴンは、グラデーション調整領域の設定位置や設定範囲に応じて、サイズが変化するようにしてもよい。
本発明によれば、ポリゴンの頂点に対して設定したα値により、ポストエフェクト領域のグラデーション調整領域以外の領域でのα値を、グラデーション調整領域の他端でのα値に固定して設定することができる。
(9)また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、
(1)〜(8)の発明のいずれかにおいて、
前記ポストエフェクト処理部が、
前記視界画像の奥行き値に応じて第2のエフェクト色を変化させるための第3の色調整情報を設定し、
前記第3の色調整情報に基づいて、前記視界画像の全領域に前記第2のエフェクト色を反映させて前記視界画像の色を調整するポストエフェクト処理を更に行うようにしてもよい。
本発明によれば、第1のエフェクト色に加え、第1のエフェクト色とは異なる第2のエフェクト色を、奥行き値に応じて視界画像の全領域に反映することができる。従って、ポストエフェクト調整領域における第1のエフェクト色を、第2のエフェクト色に溶け込ませるようにした微妙な画像表現を行うことができる。
(10)また本発明に係る画像生成システムは、
オブジェクト空間に設定されたオブジェクトをスクリーンに投影した視界画像に対して色を調整するポストエフェクト処理を行うポストエフェクト処理部を含み、
前記ポストエフェクト処理部が、
前記視界画像中の地平線及び水平線の少なくとも一方を含む領域をポストエフェクト領域として設定し、
前記ポストエフェクト領域において、前記地平線及び水平線の少なくとも一方からその上方に離れるにつれて第1のエフェクト色が薄くなるように第1のエフェクト色をグラデーション変化させるとともに、前記視界画像の奥行き値に応じて第1のエフェクト色を変化させて、前記視界画像に前記第1のエフェクト色を反映させるポストエフェクト処理を行うようにしてもよい。
また本発明は、上記ポストエフェクト処理部としてコンピュータを機能させるプログラムに関係する。また本発明は、コンピュータ読み取り可能な情報記憶媒体であって、上記ポストエフェクト処理部としてコンピュータを機能させるプログラムを記憶(記録)した情報記憶媒体に関係する。
本発明によれば、奥行き値に応じたエフェクト色の変化特性に、所定の領域でグラデーション変化するエフェクト色の変化特性を加味した変化特性により、視界画像に第1のエフェクト色を反映させることができる。そして、視界画像の地平線や水平線付近の領域をポストエフェクト領域として設定することにより、地平線や水平線からその上方に離れるにつれ空の色がグラデーション変化するようにすることができる。
以下、本実施形態について図面を用いて説明する。
なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
1.構成
図1に、本実施形態の画像生成システム(ゲームシステム)の機能ブロック図の一例を示す。なお同図において本実施形態は、少なくとも処理部100を含めばよく(或いは処理部100と記憶部170を含めばよく)、それ以外の各部(機能ブロック)については任意の構成要素とすることができる。
操作部160は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、ステアリング、シフトレバー、アクセルペダル、ブレーキペダル、マイク、センサー、或いは筺体などのハードウェアにより実現できる。
記憶部170は、処理部100や通信部196などのワーク領域となるもので、その機能はRAMなどのハードウェアにより実現できる。
情報記憶媒体180(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、光ディスク(CD、DVD)、光磁気ディスク(MO)、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ(ROM)などのハードウェアにより実現できる。処理部100は、この情報記憶媒体180に格納されるプログラム(データ)に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体180には、本実施形態の各部(各手段)としてコンピュータを機能させるためのプログラム(各部をコンピュータに実現させるためのプログラム)が記憶(記録、格納)される。
表示部190は、本実施形態により生成された画像を出力するものであり、その機能は、CRT、LCD、或いはHMD(ヘッドマウントディスプレイ)などのハードウェアにより実現できる。
音出力部192は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどのハードウェアにより実現できる。
携帯型情報記憶装置194は、プレーヤの個人データやゲームのセーブデータなどが記憶されるものであり、この携帯型情報記憶装置194としては、メモリカードや携帯型ゲーム装置などを考えることができる。
通信部196は、外部(例えばホスト装置や他の画像生成システム)との間で通信を行うための各種の制御を行うものであり、その機能は、各種プロセッサ又は通信用ASICなどのハードウェアや、プログラムなどにより実現できる。
なお本実施形態の各部としてコンピュータを機能させるためのプログラム(データ)は、ホスト装置(サーバー)が有する情報記憶媒体からネットワーク及び通信部196を介して情報記憶媒体180(記憶部170)に配信するようにしてもよい。このようなホスト装置(サーバー)の情報記憶媒体の使用も本発明の範囲内に含まれる。
処理部100(プロセッサ)は、操作部160からの操作データやプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの各種の処理を行う。この場合、処理部100は、記憶部170内の主記憶部172をワーク領域として使用して、各種の処理を行う。この処理部100の機能は、各種プロセッサ(CPU、DSP等)又はASIC(ゲートアレイ等)などのハードウェアや、プログラム(ゲームプログラム)により実現できる。
処理部100は、移動・動作処理部110、オブジェクト空間設定部112、仮想カメラ制御部114、描画部120、音生成部130を含む。なお、処理部100は、これらの各部(機能ブロック)を全て含む必要はなく、その一部を省略してもよい。
移動・動作処理部110は、オブジェクト(移動体)の移動情報(位置、回転角度)や動作情報(オブジェクトの各パーツの位置、回転角度)を求める処理を行う。即ち、操作部160によりプレーヤが入力した操作データやゲームプログラムなどに基づいて、オブジェクトを移動させたり動作(モーション、アニメーション)させたりする処理を行う。
オブジェクト空間設定部112は、移動体(キャラクタ、車、戦車、ロボット)、柱、壁、建物、マップ(地形)などの各種オブジェクト(ポリゴン、自由曲面又はサブディビジョンサーフェスなどのプリミティブ面で構成されるオブジェクト)をオブジェクト空間内に配置設定するための処理を行う。より具体的には、ワールド座標系でのオブジェクトの位置や回転角度(方向)を決定し、その位置(X、Y、Z)にその回転角度(X、Y、Z軸回りでの回転)でオブジェクトを配置する。
仮想カメラ制御部114は、オブジェクト空間内に設定される仮想カメラを制御する処理を行う。即ち、仮想カメラの位置(X、Y、Z)又は回転(X、Y、Z軸回りでの回転)などの仮想カメラ情報を求め、仮想カメラを制御する(視点位置や視線方向を制御する)。
例えば、仮想カメラにより移動オブジェクトを後方から撮影する場合には、移動オブジェクトの位置又は回転の変化に仮想カメラが追従するように、仮想カメラの位置又は回転(仮想カメラの方向)を制御することが望ましい。この場合には、移動・動作処理部110で得られた移動オブジェクトの位置、方向又は速度などの情報に基づいて、仮想カメラを制御することになる。或いは、仮想カメラを、予め決められた移動経路で移動させながら予め決められた角度で回転させるようにしてもよい。この場合には、仮想カメラの位置(移動経路)や回転角度を特定するための仮想カメラデータに基づいて仮想カメラを制御する。
描画部120は、処理部100で行われる種々の処理(ゲーム処理)の結果に基づいて描画処理を行い、これにより画像を生成し、表示部190に出力する。いわゆる3次元ゲーム画像を生成する場合には、まずオブジェクトの各頂点の頂点データ(頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等)を含む頂点リストが入力され、入力された頂点リストに含まれる頂点データに基づいて、頂点処理(頂点シェーディング)が行われる。なお頂点シェーディングを行う際に、必要に応じてポリゴンを再分割するための頂点生成処理(テッセレーション、曲面分割、ポリゴン分割)を行うこともできる。頂点シェーディングでは、頂点シェーダプログラム(広義には、第1のシェーダプログラム)に従って、頂点の移動処理や、座標変換(ワールド座標変換、カメラ座標変換)、クリッピング処理、あるいは透視変換等のジオメトリ処理が行われ、その処理結果に基づいて、オブジェクトを構成する頂点群について与えられた頂点データを変更(更新、調整)する。そして、頂点シェーディング後の頂点データに基づいてラスタライズ(走査変換)が行われ、表示画像を構成するピクセル(表示画面を構成するフラグメント)を描画するピクセルシェーディング(広義には、ピクセル処理、フラグメント処理)が行われる。ピクセルシェーディングでは、ピクセルシェーダプログラム(第2のシェーダプログラム)に従って、テクスチャの読出し(テクスチャマッピング)、色データの設定/変更、半透明合成、アンチエイリアス等の各種処理を行って、最終的な表示画像のピクセルの描画色を決定し、透視変換されたオブジェクトの描画色を描画バッファ172に出力(描画)する。すなわち、ピクセルシェーディングでは、表示画像のピクセル単位で画像情報(色、法線、輝度、α値等)を設定あるいは変更するパーピクセル処理を行う。これにより、オブジェクト空間内において仮想カメラ(所与の視点)から見える画像(フレーム画像)が生成される。なお、仮想カメラ(視点)が複数存在する場合には、それぞれの仮想カメラから見える画像を分割画像として1画面に表示できるようにフレーム画像を生成することができる。
なお描画バッファ172、表示バッファ173は、フレームバッファ、ワークバッファなどのピクセル単位で画像情報を記憶できるバッファ(画像バッファ)であり、例えば画像生成システムのVRAM上に確保される。また本実施形態では、描画バッファ172(バックバッファ)、表示バッファ173(フロントバッファ)のダブルバッファ構成にしてもよいし、シングルバッファ構成やトリプルバッファ構成にしてもよい。或いは4個以上のバッファを用いるようにしてもよい。
また、描画部120は、テクスチャマッピング処理や隠面消去処理やαブレンディング処理を行うことができる。
ここでテクスチャマッピング処理は、テクスチャ記憶部174に記憶されるテクスチャ(テクセル値)をオブジェクトにマッピングする処理である。具体的には、オブジェクト(プリミティブ面)の頂点に設定(付与)されるテクスチャ座標等を用いてテクスチャ記憶部174からテクスチャ(色、α値などの表面プロパティ)を読み出す。そして、2次元の画像又はパターンであるテクスチャをオブジェクトにマッピングする。この場合に、ピクセルとテクセルとを対応づける処理やバイリニア補間(テクセル補間)などを行う。
また隠面消去処理は、例えば、各ピクセルのZ値(奥行き情報)が格納されているZバッファ176(奥行きバッファ)を用いるZバッファ法(奥行き比較法、Zテスト)により実現される。即ちオブジェクトのプリミティブ面の各ピクセルを描画する際に、Zバッファ176に格納されているZ値を参照する。そして参照されたZバッファ176のZ値と、プリミティブ面の描画対象ピクセルでのZ値とを比較し、プリミティブ面のZ値が、仮想カメラから見て手前側となるZ値(例えば大きなZ値)である場合には、そのピクセルの描画処理を行うと共にZバッファ176のZ値を新たなZ値に更新する。
またαブレンディング処理は、α値(A値)に基づいて行う処理であり、通常αブレンディング、加算αブレンディング或いは減算αブレンディングなどがある。例えば通常αブレンディングの場合には下式の処理を行う。
=(1−α)×R+α×R
=(1−α)×G+α×G
=(1−α)×B+α×B
一方、加算αブレンディングの場合には下式の処理を行う。
=R+α×R
=G+α×G
=B+α×B
また、減算αブレンディングの場合には下式の処理を行う。
=R−α×R
=G−α×G
=B−α×B
ここで、R、G、Bは、描画バッファ172(フレームバッファ)に既に描画されている画像(視界画像)のRGB成分であり、R、G、Bは、描画バッファ172に描画すべき画像のRGB成分である。また、R、G、Bは、αブレンディングにより得られる画像のRGB成分である。なおα値は、各ピクセル(テクセル、ドット)に関連づけて記憶できる情報であり、例えば色情報以外のプラスアルファの情報である。α値は、半透明度(透明度、不透明度と等価)情報、マスク情報、或いはバンプ情報などとして使用できる。本実施の形態では、R、G、Bにエフェクト色のR、G、B成分を設定して上記のようなαブレンディング処理を行うことで、視界画像にエフェクト(霧、雲、湯気、もや、ほこり、ちり、煙、竜巻又は露等)が掛かった画像を生成できる。
特に、本実施の形態では、描画部120は、視界画像生成部122、ポストエフェクト処理部124を含む。視界画像生成部122は、オブジェクトをスクリーンに投影して視界画像を生成する。即ち、透視変換後(ジオメトリ処理後)のオブジェクト(1又は複数プリミティブ面)を描画バッファ172に出力する。また、ポストエフェクト処理部124は、色調整情報としてのα値に基づいて、視界画像に対して色を調整するポストエフェクト処理を行う。
より詳細には、ポストエフェクト処理部124は、仮想カメラの制御情報等に基づいて、スクリーンに対してポストエフェクト領域を設定する処理と、設定したポストエフェクト領域の一部又は全体において第1のエフェクト色をグラデーション変化させるための第1のα値と、視界画像の奥行き値に応じて第1のエフェクト色を変化させるための第2のα値とを設定する処理と、第1のα値と第2のα値とに基づいて、視界画像に第1のエフェクト色を反映させて視界画像のポストエフェクト領域に対応する領域の色を調整する処理とを行う。
具体的には、ポストエフェクト処理部124は、オブジェクト空間の所定の基準面からの高さ情報に基づいて該高さ情報に対応するスクリーン座標系における座標情報を取得し、取得した座標情報に基づいてポストエフェクト領域の一部をグラデーション調整領域として設定する処理を行う。
また、ポストエフェクト処理部124は、グラデーション調整領域に第1のα値を設定する処理として、一端側の頂点と他端側の頂点とで異なるα値が設定され、スクリーンの横幅に対応する一定サイズの第1のポリゴンを描画する処理を行う。また、ポストエフェクト領域のグラデーション調整領域以外の領域に第1のα値を設定する処理として、全ての頂点に対して第1のポリゴンの他端でのα値が設定され、グラデーション調整領域以外の領域に対応する可変サイズの第2のポリゴンを描画する処理を行う。
また、ポストエフェクト処理部124は、ポストエフェクト領域に第2のα値を設定する処理として、テクスチャマッピング処理を利用して、Zバッファ176に格納された視界画像の各画素のZ値や該Z値を変換した距離情報などの奥行き値に基づいて、該奥行き値に応じたα値とエフェクト色のR、G、B成分とを設定する処理を行う。例えば、LUT記憶部179に記憶されるインデックスカラー・テクスチャマッピング用のLUT(ルックアップテーブル)を用いてテクスチャマッピングを行うことにより、視界画像の各画素の奥行き値に応じた第2のα値とエフェクト色のR、G、B成分とを設定することができる。
この場合、LUT記憶部179が、インデックス番号とα値及びエフェクト色とを対応付けるインデックスカラー・テクスチャマッピング用のルックアップテーブルを記憶し、ポストエフェクト処理部124が、視界画像の奥行き値をルックアップテーブルのインデックス番号として扱い、該ルックアップテーブルを用いて第1のポリゴン及び第2のポリゴンに対してインデックスカラー・テクスチャマッピングを行って、視界画像の各画素の奥行き値に応じた第2のα値と第1のエフェクト色とを設定する。
ここで、インデックスカラー・テクスチャマッピング用のルックアップテーブルが256色として設定されている場合には、ポストエフェクト処理部124が、Zバッファの視界画像のZ値を0〜255までの256段階の距離情報に変換して、これをインデックス番号として扱うようにしてもよい。
また、ポストエフェクト処理部124は、第3のα値を設定する処理として、第2のα値を設定する処理と同様に、視界画像の奥行き値をルックアップテーブルのインデックス番号として扱い、該ルックアップテーブルを用いてスクリーンサイズ又は分割スクリーンサイズの第3のポリゴンに対してインデックスカラー・テクスチャマッピングを行って、視界画像の各画素の奥行き値に応じた第3のα値と第2のエフェクト色とを設定する。
そして、ポストエフェクト処理部124は、第1のα値と第2のα値との乗算結果に基づいて、視界画像の色と第1のポリゴン及び第2のポリゴンの色とをαブレンディングすることにより、視界画像に第1のエフェクト色を反映させる処理を行う。すなわち、第1のα値をα、第2のα値をαとすると、α=α×αのようにして求めたα値を用いて、上述した通常αブレンディング、加算αブレンディング或いは減算αブレンディングの式の処理を行う。更に、第3のα値に基づいて、視界画像の色と第3のポリゴンの色とをαブレンディングすることにより、視界画像に第2のエフェクト色を反映させる処理を行う。
音生成部130は、処理部100で行われる種々の処理の結果に基づいて音処理を行い、BGM、効果音、又は音声などのゲーム音を生成し、音出力部192に出力する。
なお、本実施形態の画像生成システムは、1人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、このようなシングルプレーヤモードのみならず、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。
また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、1つの端末を用いて生成してもよいし、ネットワーク(伝送ライン、通信回線)などで接続された複数の端末(ゲーム機、携帯電話)を用いて生成してもよい。
2.本実施形態の手法
次に本実施形態の手法について図面を用いて説明する。なお、以下では、本実施の形態のポストエフェクト処理の手法をフォグの表現に適用した場合を主に例にとり説明するが、本実施形態の手法は、フォグ以外の画像表現に適用することも可能である。
2.1 距離に応じたフォグ濃度の変化
オブジェクト空間を仮想カメラから見た画像を生成する場合に、よりリアルなフォグエフェクトを表現するためには、仮想カメラ(視点)からの距離に応じてフォグ濃度を変化させることが望ましい。即ち、仮想カメラからの距離が遠くなるほどフォグ濃度を濃くすることにより、現実世界のフォグエフェクトを表現することができる。
そこで本実施形態では、仮想カメラからの距離パラメータであるZ値(ZバッファのZ値)に基づいて、α値とエフェクト色のR、G、B成分を設定する手法を採用している。具体的には図2のA1に示すように、まず視界画像(描画バッファ上に描画された画像)のZ値ZPを奥行き距離情報D(仮想カメラからの距離情報、視界画像のZ値を変換することで得られる第2のZ値)に変換する。本実施の形態では、視界画像のZ値ZPを、仮想カメラから見て奥側に対応する0から、手前側に対応する255までの256段階の奥行き距離情報Dに変換する。そして、A2に示すように、奥行き距離情報Dをエフェクト色ECPとα値αPとに変換する。
そして図2のA3に示すように、視界画像の色ICP(RGB、YUV等)と、エフェクト色ECPとを、αPに基づいてαブレンディングする。これにより、仮想カメラからの距離に応じてフォグ濃度が変化するフォグエフェクトが施されたフォグ処理後画像を生成することができる。
なお、ZバッファのZ値を奥行き距離情報Dに変換する際には、奥側に対応するZ値と手前側に対応するZ値との間で、奥行き距離情報Dの最小値及び最大値を任意に設定することができる。
2.2 インデックスカラー・テクスチャマッピングによる距離に応じたフォグ濃度の変化
そして本実施形態では、図2のA2に示す、奥行き距離情報Dをエフェクト色ECPとα値αPとに変換する処理を、インデックスカラー・テクスチャマッピングを有効利用して実現している。
通常のインデックスカラー・テクスチャーマッピングでは、テクスチャ記憶部の使用記憶容量を節約するために、図3のB1に示すように、実際の色情報(RGB)ではなくインデックス番号が、テクスチャの各テクセルに関連づけて記憶される。また、図3のB2に示すように、インデックスカラー・テクスチャマッピング用のLUT(カラーパレット)には、インデックス番号により指定される色情報が記憶される。そして、オブジェクトに対してテクスチャマッピングを行う際には、テクスチャの各テクセルのインデックス番号に基づいてLUTを参照し、対応する色情報をLUTから読み出し、読み出された色情報を描画バッファ(フレームバッファ等)に描画する。
このようなインデックスカラーモードのテクスチャマッピングでは、LUTを用いない通常モードのテクスチャマッピングに比べて、使用できる色数は少なくなる(例えば256色)。しかしながら、テクスチャ記憶部に実際の色情報(例えば24ビットの色情報)を記憶する必要が無くなるため、テクスチャ記憶部の使用記憶容量を大幅に節約できる。
そこで、本実施形態では、このようなインデックスカラー・テクスチャマッピングを通常とは異なる形態で利用し、奥行き距離情報Dを、α値とエフェクト色のR、G、B成分とに変換している。このため、図4に示すように、ルックアップテーブルLUT2に、インデックス番号により指定されるα値(0.0〜1.0)とエフェクト色のR、G、B成分(図4のLUT2では黄色単色)とを格納しておく。
図5は、本実施の形態のルックアップテーブルLUT2に格納されているLUT2のインデックス番号(奥行き距離情報D)とα値との関係をグラフ化したものである。図5のグラフでは、横軸がインデックス番号(奥行き距離情報D)を表し、255が手前側、0が最遠景(奥側)と対応する。また、縦軸がα値を表し、256段階の値が0.0〜1.0で表されている。図5に示すように、ルックアップテーブルLUT2では、最遠景の奥行き距離情報Dに対応するインデックス番号0には、奥側の奥行き値用のα値としてエフェクト色を濃く反映させるα=1.0(255)が対応付けられ、手前側の奥行き距離情報Dに対応するインデックス番号255には、手前側の奥行き値用のα値としてエフェクト色を反映させないα=0.0(0)が対応付けられている。そして、奥行き距離情報Dが手前側から奥側となるにつれ、フォグ濃度の変化特性に従ってエフェクト色の濃度が濃くなるようにα値が格納されている。
そして、図4のB3に示すように、256段階の奥行き距離情報DをルックアップテーブルLUT2のインデックス番号として扱い(奥行き距離情報Dをインデックス番号とみなし)、LUT2を用いて、図4のB4に示すように仮想オブジェクト(例えば表示画面サイズ、スクリーンサイズのスプライト、ポリゴン)に対してインデックスカラー・テクスチャマッピングを行う。これにより、視界画像の各画素の奥行き値に応じたα値と、エフェクト色のR、G、B成分とを得ることができる。そして、B5に示すように、視界画像の色とエフェクト色とを、奥行き値に応じたα値に基づいてαブレンディングし、視界画像の全領域にエフェクト色を反映させた画像を生成する。
例えば、図6のような視界画像の奥行き距離情報DをLUT2のインデックス番号として扱い、図5のLUT2を用いて、スクリーンサイズのポリゴン(第3のポリゴン)に対してインデックスカラー・テクスチャマッピングを行う。すると、図7のように、視界画像の各画素の奥行き距離情報Dに応じたα値(第3のα値)と黄色のエフェクト色(第2のエフェクト色)とを設定することができる。そして、上記インデックスカラー・テクスチャマッピングを行ったスクリーンサイズのポリゴン(第3のポリゴン)を、頂点データのα値を全てα=1.0として、視界画像が描画されている描画バッファ172にαブレンディング描画する。すると、図8のように、視界画像の全領域に視界画像の奥行き距離情報Dに応じて黄色のエフェクト色(第2のエフェクト色)が反映され、現実世界のフォグ濃度の変化特性に従ったフォグ効果が反映された画像を生成することができる。
なお、上記例では、スクリーンサイズのポリゴンに対してテクスチャマッピングを行っているが、スクリーンを分割したサイズのポリゴンに対してテクスチャマッピングを行うようにしてもよい。
2.3 グラデーション領域におけるポストエフェクト処理
以上のように、本実施の形態の画像生成システムでは、フォグ濃度の変化を仮想カメラからの距離に応じたα値(フォグの乗り具合)で制御しているが、かかる手法によるフォグ効果による画像表現には限界がある。例えば、図8の画像では、空に対応する領域Fでは、奥行き距離情報Dが最遠景として一定に設定されているため、エフェクト色の濃度(第3のα値)が一様に設定され、エフェクト色(第2のエフェクト色)の反映に変化を持たせることができない。
そこで、本実施の形態では、上述した視界画像の全領域にエフェクト色(第2のエフェクト色)を反映させるポストエフェクト処理に加え、視界画像の一部の領域であって横幅がスクリーンの横幅に対応する領域をグラデーション調整領域として設定し、グラデーション調整領域に、該領域において第1のエフェクト色をグラデーション変化させるための第1のα値と、視界画像の奥行き値に応じて第1のエフェクト色を変化させるための第2のα値とを設定する。そして、第1のα値と第2のα値との乗算結果に基づいて、視界画像のグラデーション調整領域に対応する領域に第1のエフェクト色を反映させて視界画像の色を調整するポストエフェクト処理を行う。
例えば、図9に示すように、グラデーション調整領域Gを、図6の視界画像の地平線L付近に対応するスクリーン上の領域に設定する。本実施の形態では、図6の視界画像の地平線L付近に対応する領域に、スクリーンの横幅に対応した一定サイズの矩形の第1のポリゴンを描画する。この第1のポリゴンは、右上、左上の頂点に対してα値が0.0(透明)として設定され、右下、左下の頂点に対してα値が1.0(不透明)として設定されている。従って、第1のポリゴンの各ピクセルには、その上端のα値0.0と下端のα値1.0とが線形補間された第1のα値が設定される。即ち、第1のポリゴンの上端から下端に向けてグラデーション変化する第1のα値が設定される。
更に、グラデーション調整領域Gの下端からスクリーンの下端までの領域Rには、全ての頂点に対してグラデーション調整領域Gの下端でのα値1.0が設定された矩形の第2のポリゴンを描画する。従って、第2のポリゴンの各ピクセルには、1.0に固定された第1のα値が設定される。このように、本実施の形態では、グラデーション調整領域Gの上端からスクリーンの下端まで、第1のα値の変化特性を連続させている。なお、本実施の形態では、スクリーンの上端から第1のポリゴンの上端までの領域にはポリゴンを設定しない(描画しない)が、全ての頂点に対してα値0.0が設定されたポリゴンを設定してもよい。
そして、上述した視界画像の全領域にエフェクト色(第2のエフェクト色)を反映させるポストエフェクト処理と同様に、図6の視界画像の奥行き距離情報DをルックアップテーブルLUTのインデックス番号として扱い、第2のエフェクト色用のLUT2とは別に用意された第1のエフェクト色用のルックアップテーブルLUT1を用いて、第1のポリゴン及び第2のポリゴンに対してインデックスカラー・テクスチャマッピングを行う。ここで用いられるLUT1は、インデックス番号により指定されるR、G、B成分がオレンジ色単色とされている。また、インデックス番号により指定される第2のα値の変化特性は、図10に示すように、図5で示したα値の変化特性よりも傾きが緩やかで、最大値は0.7となっている。即ち、最遠景での第1のエフェクト色の濃度は、最遠景での第2のエフェクト色の濃度ほど濃くならないように第2のα値が設定される。
すると、第1のポリゴン及び第2のポリゴンの各ピクセルには、第1のポリゴン及び第2のポリゴンの頂点に対して設定されたα値に基づき設定される第1のα値と、インデックスカラー・テクスチャマッピングにより設定される視界画像の各画素の奥行き距離情報Dに応じた第2のα値との乗算結果のα値が設定される。従って、図11のように、第2のα値が最大(0.7)に設定される最遠景に対応する領域Fにおいては、第1のポリゴンの上端では第1のα値×第2のα値=0.0×0.7=0.0となり第1のエフェクト色は反映されない。しかし、第1のポリゴンの下端では第1のα値×第2のα値=1.0×0.7=0.7となり第1のエフェクト色が濃く反映される。即ち、最遠景に対応する領域Fにおいては、スクリーンの下方に向かうにつれ第1のエフェクト色であるオレンジ色が濃くなるように、第1のα値と第2のα値との乗算結果であるα値が設定される。
一方、最遠景よりも手前側に対応する領域Nにおいては、視界画像の各画素の奥行き距離情報Dに応じた第2のα値によって、乗算の結果、第1のα値がキャンセルされる。図11の例では、第1のポリゴンが設定されるグラデーション調整領域Gにおいて、最遠景よりも手前側に山オブジェクトMが配置されているが、山オブジェクトMに対応する領域では、手前側用の第2のα値として小さな値のα値(例えば0.01)が設定されるので、第1のポリゴンに設定された第1のα値が小さな値(例えば0.07)とされる。また、第2のポリゴンが設定される領域Rにおいては、より手前側の地形オブジェクトLが配置されているので、同様に第2のポリゴンに設定された第1のα値が0もしくは0に近い値とされる。このように、本実施の形態では、奥側のオブジェクトにはグラデーション変化する第1のエフェクト色を反映させつつも、手前側のオブジェクトには第1のエフェクト色を反映させないようにα値を設定することができる。
そして、第2のエフェクト色を反映させた視界画像が描画されている描画バッファ172に、第1のポリゴン及び第2のポリゴンをαブレンディング描画する。すると、図12のように、視界画像の全領域に奥行き距離情報Dに応じた第2のエフェクト色(黄色)が反映され、かつ、グラデーション調整領域Gにおいてグラデーション変化する第1のエフェクト色(オレンジ色)が反映された画像を生成することができる。
2.4 グラデーション調整領域の制御
また、本実施の形態の画像生成システムでは、仮想カメラの位置、向き、画角が変化するが、仮想カメラの位置、向き、画角が変化すると、スクリーンに投影されるオブジェクトの位置も変化し、グラデーション調整領域とすべき領域のスクリーン上の位置が変化する。例えば、仮想カメラの位置が、図6の視界画像が生成される位置から上方に変化した場合には、生成される視界画像における地平線Lの位置は相対的にスクリーンの下方に移動する。また、仮想カメラの向きが上方に変化した場合や、画角を狭めた場合や広げた場合も同様である。
そこで、本実施の形態では、仮想カメラの制御情報に基づいて、グラデーション調整領域Gを設定する。従って、仮想カメラの位置、向き、画角の変化により、グラデーション調整領域Gとすべき領域のスクリーン上の位置が変化した場合でも、仮想カメラの位置、向き、画角の変化に合わせてグラデーション調整領域Gを設定することができる。
図13は、オブジェクト空間OBに対する仮想カメラCMとスクリーンSCの対応関係を示す概念図である。本実施の形態では、オブジェクト空間の所定の基準面からの高さ情報OHに基づいて、該高さ情報OHに対応するスクリーン座標系における座標情報SHを取得し、取得した座標情報SHに基づいてグラデーション調整領域Gを設定する。より具体的には、ワールド座標系の高さ情報OHをスクリーン座標系にマトリクス変換することにより座標情報SHを求め、座標情報SHに基づき、第1のポリゴンを描画する。
ここで、高さ情報OHは、オブジェクト空間OBのオブジェクト配置や仮想カメラCMの移動範囲等に応じて、任意に定めることができる。本実施の形態では、図6の地平線Lの位置に座標情報SHが対応するように高さ情報OHを定めている。従って、仮想カメラの位置、向き、画角の変化に応じて地平線Lのスクリーン上の位置を擬似的に求めることができ、仮想カメラの位置、向き、画角が変化しても、地平線L付近の領域にグラデーション調整領域Gを設定することができる。
なお、本実施の形態では、座標情報SHに対応するスクリーンのピクセル位置を上端として、そこから縦幅を30ピクセルとし、横幅がスクリーンの横幅と等しい一定サイズの第1のポリゴンを描画する。そして、縦幅を第1のポリゴンの下端からスクリーンの下端までとし、横幅がスクリーンの横幅と等しい可変サイズの第2のポリゴンを描画する。
また、仮想カメラの位置、向き、画角が大きく変化して、例えば第1のポリゴンの下端が地平線Lよりも上方に位置してしまったとしても、第1のポリゴンの下方には、グラデーション調整領域Gでの第1のエフェクト色の変化特性を連続させる第2のポリゴンが描画される。従って、仮に座標情報SHと地平線Lのスクリーン上の位置がずれてしまう場合があっても、第1のエフェクト色がある線を境に全く反映されなくなるという不自然な画像が生成されることを防止することができる。
3.本実施の形態の処理
次に、本実施の形態の処理を、図14のフローチャートを用いて説明する。
まず、ステップS1において、視界画像(透視変換後のオブジェクト)をフレームバッファに出力する。
ステップS2において、視界画像のZバッファ値を256段階の奥行き距離情報Dに変換してワークバッファに格納する。
ステップS3において、ワークバッファの奥行き距離情報Dを256色のインデックステクスチャとして設定し、第2のエフェクト色用のLUT2をインデックスカラー・テクスチャチャマッピング用のLUTとして設定する。
ステップS4において、LUT2を用いてインデックスカラー・テクスチャマッピングを行った第3のポリゴンを、頂点データのα値を全てα=1.0としてフレームバッファにαブレンディング描画する。
ステップS5において、第1のポリゴンの描画位置を求める。
ステップS6において、ワークバッファの奥行き距離情報Dを256色のインデックステクスチャとして設定し、第1のエフェクト色用のLUT1をインデックスカラー・テクスチャチャマッピング用のLUTとして設定する。
ステップS7において、LUT1を用いてインデックスカラー・テクスチャマッピングを行った第1のポリゴンを、頂点データのα値を上端がα=0.0、下端がα=1.0として、求められた描画位置でフレームバッファにαブレンディング描画するとともに、インデックスカラー・テクスチャマッピングを行った第2のポリゴンを、頂点データのα値を全てα=1.0として、第1のポリゴンの描画位置から定まる位置でフレームバッファにαブレンディング描画する。
4.ハードウェア構成
次に、本実施形態を実現できるハードウェアの構成の一例について図15を用いて説明する。
メインプロセッサ900は、CD982(情報記憶媒体)に格納されたプログラム、通信インターフェース990を介して転送されたプログラム、或いはROM950(情報記憶媒体の1つ)に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などの種々の処理を実行する。
コプロセッサ902は、メインプロセッサ900の処理を補助するものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算(ベクトル演算)を高速に実行する。例えば、オブジェクトを移動・動作(モーション)させるための物理シミュレーションに、マトリクス演算などの処理が必要な場合には、メインプロセッサ900上で動作するプログラムが、その処理をコプロセッサ902に指示(依頼)する。
ジオメトリプロセッサ904は、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算(ベクトル演算)を高速に実行する。例えば、座標変換、透視変換、光源計算などの処理を行う場合には、メインプロセッサ900で動作するプログラムが、その処理をジオメトリプロセッサ904に指示する。
データ伸張プロセッサ906は、圧縮された画像データや音データを伸張するデコード処理を行ったり、メインプロセッサ900のデコード処理をアクセレートする処理を行う。これにより、オープニング画面、インターミッション画面、エンディング画面、或いはゲーム画面などにおいて、MPEG方式等で圧縮された動画像を表示できるようになる。なお、デコード処理の対象となる画像データや音データは、ROM950、CD982に格納されたり、或いは通信インターフェース990を介して外部から転送される。
描画プロセッサ910は、ポリゴンや曲面などのプリミティブ(プリミティブ面)で構成されるオブジェクトの描画(レンダリング)処理を高速に実行するものである。オブジェクトの描画の際には、メインプロセッサ900は、DMAコントローラ970の機能を利用して、オブジェクトデータを描画プロセッサ910に渡すと共に、必要であればテクスチャ記憶部924にテクスチャを転送する。すると、描画プロセッサ910は、これらのオブジェクトデータやテクスチャに基づいて、Zバッファなどを利用した陰面消去を行いながら、オブジェクトをフレームバッファ922に高速に描画する。また、描画プロセッサ910は、αブレンディング(半透明処理)、デプスキューイング、ミップマッピング、フォグ処理、バイリニア・フィルタリング、トライリニア・フィルタリング、アンチエリアシング、シェーディング処理なども行うことができる。また、頂点シェーダやピクセルシェーダなどのプログラマブルシェーダも描画プロセッサ910に実装されており、本実施形態の手法を実現するシェーダプログラムに従って、頂点データの作成・変更(更新)やピクセル(あるいはフラグメント)の描画色の決定を行う。そして、1フレーム分の画像がフレームバッファ922に書き込まれると、その画像はディスプレイ912に表示される。
サウンドプロセッサ930は、多チャンネルのADPCM音源などを内蔵し、BGM、効果音、音声などの高品位のゲーム音を生成する。生成されたゲーム音は、スピーカ932から出力される。
ゲームコントローラ942(レバー、ボタン、筺体、パッド型コントローラ又はガン型コントローラ等)からの操作データや、メモリカード944からのセーブデータ、個人データは、シリアルインターフェース940を介してデータ転送される。
ROM950にはシステムプログラムなどが格納される。なお、業務用ゲームシステムの場合には、ROM950が情報記憶媒体として機能し、ROM950に各種プログラムが格納されることになる。なお、ROM950の代わりにハードディスクを利用するようにしてもよい。
RAM960は、各種プロセッサの作業領域として用いられる。
DMAコントローラ970は、プロセッサ、メモリ(RAM、VRAM、ROM等)間でのDMA転送を制御するものである。
CDドライブ980は、プログラム、画像データ、或いは音データなどが格納されるCD982(情報記憶媒体)を駆動し、これらのプログラム、データへのアクセスを可能にする。
通信インターフェース990は、ネットワークを介して外部との間でデータ転送を行うためのインターフェースである。この場合に、通信インターフェース990に接続されるネットワークとしては、通信回線(アナログ電話回線、ISDN)、高速シリアルバスなどを考えることができる。そして、通信回線を利用することでインターネットを介したデータ転送が可能になる。また、高速シリアルバスを利用することで、他の画像生成システムとの間でのデータ転送が可能になる。
なお、本実施形態の各部(各手段)は、その全てを、ハードウェアのみにより実現してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムのみにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。
そして、本実施形態の各部をハードウェアとプログラムの両方により実現する場合には、情報記憶媒体には、ハードウェア(コンピュータ)を本実施形態の各部として機能させるためのプログラムが格納されることになる。より具体的には、上記プログラムが、ハードウェアである各プロセッサ902、904、906、910、930等に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ902、904、906、910、930等は、その指示と渡されたデータとに基づいて、本発明の各部を実現することになる。
5.変形例
また本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。例えば、明細書中の記載において広義な用語(仮想オブジェクト)として引用された用語(スプライト、ポリゴン等)は、明細書中の他の記載においても広義な用語に置き換えることができる。
また、上記実施の形態では、ポリゴンの頂点に設定されたα値に基づき設定される第1のα値により第1のエフェクト色をグラデーション変化させる例を挙げて説明したが、これに限らず、第1のエフェクト色がグラデーション変化するグラデーションテクスチャを用意しておき、これを第1のポリゴンにテクスチャマッピングするようにしてもよい。この場合には、グラデーションテクスチャのα値、又はポリゴンの頂点に設定されたα値、又はグラデーションテクスチャのα値とポリゴンの頂点に設定されたα値の乗算結果としてのα値に基づいて、エフェクト色としてのテクスチャの色と視界画像の色とをαブレンディングすることができる。
なお、グラデーションテクスチャを用いる場合には、奥行き値に応じた第2のα値を反映させるために、マルチテクスチャマッピングの手法を用いて、グラデーションテクスチャとインデックステクスチャをマルチテクスチャマッピングするようにすればよい。
また、ゲーム状況(ゲーム上の仮想時間情報、実時間情報、入力情報やプログラムに基づき発生したゲームイベントの種類、ゲーム上に設定される気候等)に応じて、エフェクト色の種類や変化特性、グラデーション領域Gの範囲、グラデーション領域Gを設定するための高さ情報OHを変化させてもよい。ここで、エフェクト色の種類や変化特性を変化させる場合には、例えば、第1のエフェクト色用のLUT1と第2のエフェクト色用のLUT2に設定されるR、G、B成分やα値の変化特性を変化させたり、ルックアップテーブルLUTを複数用意しておき、用いるLUTを変更すればよい。また、グラデーション領域Gの範囲を変化させる場合には、例えば、第1のポリゴンの縦幅を変更設定して描画すればよい。かかる構成を採用すれば、ゲーム状況に応じて、朝から夕方までの時間的変化や、天候の変化等を表現することができる。また、仮想カメラの制御情報に応じて、エフェクト色の種類や変化特性、グラデーション領域Gの範囲を変化させるようにしてもよい。
また、α値のブレンディング手法も、本実施形態で説明した手法に限定されず、種々の変形実施が可能である。
また、本発明は種々のゲーム(格闘ゲーム、競争ゲーム、シューティングゲーム、ロボット対戦ゲーム、スポーツゲーム、ロールプレイングゲーム等)にも適用することができる。また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード等の種々の画像生成システム(ゲームシステム)に適用することができる。
また、本発明のうち従属請求項に係る発明においては、従属先の請求項の構成要件の一部を省略する構成とすることもできる。また、本発明の1の独立請求項に係る発明の要部を、他の独立請求項に従属させることもできる。
本実施形態の画像生成システムの機能ブロック図の例。 Z値に応じたα値に基づいてエフェクト色を反映させる手法の説明図。 インデックスカラー・テクスチャマッピングについての説明図。 インデックスカラー・テクスチャマッピングについての説明図。 本実施形態のLUTの説明図。 本実施形態の手法で生成された視界画像の例。 本実施形態の手法で生成された中間画像の例。 本実施形態の手法で生成されたポストエフェクト処理後の視界画像の例。 本実施形態の手法で生成された中間画像の例。 本実施形態のLUTの説明図。 本実施形態の手法で生成された中間画像の例。 本実施形態の手法で生成されたポストエフェクト処理後の視界画像の例。 本実施形態の画像生成の手法の説明図。 本実施形態の処理の詳細例。 ハードウェア構成例。
符号の説明
ICP 視界画像の色
ZP 視界画像のZ値
FCP フォグの色
αP フォグのα値
LUT ルックアップテーブル
D 奥行き距離情報
100 処理部
120 描画部
122 視界画像生成部
124 ポストエフェクト処理部
170 記憶部
172 描画バッファ
174 テクスチャ記憶部
176 Zバッファ
179 LUT記憶部
190 表示部

Claims (12)

  1. 画像を生成するためのプログラムであって、
    オブジェクト空間に設定されたオブジェクトをスクリーンに投影して仮想カメラから見た視界画像を生成する視界画像生成部と、
    前記視界画像に対して色を調整するポストエフェクト処理を行うポストエフェクト処理部としてコンピュータを機能させ、
    前記ポストエフェクト処理部が、
    前記スクリーンに対してポストエフェクト領域を設定し、
    前記ポストエフェクト領域の一部又は全体において第1のエフェクト色をグラデーション変化させるための第1の色調整情報と、前記視界画像の奥行き値に応じて第1のエフェクト色を変化させるための第2の色調整情報とを設定し、
    前記第1の色調整情報と前記第2の色調整情報とに基づいて、前記視界画像の前記ポストエフェクト領域に対応する領域に前記第1のエフェクト色を反映させて前記視界画像の色を調整するポストエフェクト処理を行うことを特徴とするプログラム。
  2. 請求項1において、
    前記ポストエフェクト処理部が、
    第1のα値を前記第1の色調整情報として設定するとともに、第2のα値を第2の色調整情報として設定し、
    前記第1のα値と前記第2のα値との乗算結果に基づいてαブレンディングを行うことにより、前記視界画像に対して前記ポストエフェクト処理を行うことを特徴とするプログラム。
  3. 請求項1、2のいずれかにおいて、
    前記ポストエフェクト処理部が、
    前記仮想カメラの制御情報に基づいて、前記ポストエフェクト領域を設定することを特徴とするプログラム。
  4. 請求項1〜3のいずれかにおいて、
    前記ポストエフェクト処理部が、
    オブジェクト空間の所定の基準面からの高さ情報に基づいて該高さ情報に対応するスクリーン座標系における座標情報を取得し、取得した座標情報に基づいて前記ポストエフェクト領域を設定することを特徴とするプログラム。
  5. 請求項1〜4のいずれかにおいて、
    前記ポストエフェクト処理部が、
    前記第1の色調整情報を、前記ポストエフェクト領域の一部であるグラデーション調整領域の一端から他端に向けてグラデーション変化するように設定することを特徴とするプログラム。
  6. 請求項5において、
    前記ポストエフェクト処理部が、
    前記第1の色調整情報を設定する処理として、一端側の頂点と他端側の頂点とで異なるα値が設定された第1のポリゴンを描画する処理を行うことを特徴とするプログラム。
  7. 請求項5、6のいずれかにおいて、
    前記ポストエフェクト処理部が、
    前記第1の色調整情報を、前記ポストエフェクト領域の前記グラデーション調整領域以外の領域では前記グラデーション調整領域の他端に設定される色調整情報に設定することを特徴とするプログラム。
  8. 請求項7において、
    前記ポストエフェクト処理部が、
    前記ポストエフェクト領域を設定する処理として、全ての頂点に対して前記グラデーション調整領域の他端での色調整情報が設定され、前記ポストエフェクト領域の前記グラデーション調整領域以外の領域に対応する第2のポリゴンを描画する処理を行うことを特徴とするプログラム。
  9. 請求項1〜8のいずれかにおいて、
    前記ポストエフェクト処理部が、
    前記視界画像の奥行き値に応じて第2のエフェクト色を変化させるための第3の色調整情報を設定し、
    前記第3の色調整情報に基づいて、前記視界画像の全領域に前記第2のエフェクト色を反映させて前記視界画像の色を調整するポストエフェクト処理を更に行うことを特徴とするプログラム。
  10. 画像を生成するためのプログラムであって、
    オブジェクト空間に設定されたオブジェクトをスクリーンに投影した視界画像に対して色を調整するポストエフェクト処理を行うポストエフェクト処理部としてコンピュータを機能させ、
    前記ポストエフェクト処理部が、
    前記視界画像中の地平線及び水平線の少なくとも一方を含む領域をポストエフェクト領域として設定し、
    前記ポストエフェクト領域において、前記地平線及び水平線の少なくとも一方からその上方に離れるにつれて第1のエフェクト色が薄くなるように第1のエフェクト色をグラデーション変化させるとともに、前記視界画像の奥行き値に応じて第1のエフェクト色を変化させて、前記視界画像に前記第1のエフェクト色を反映させるポストエフェクト処理を行うことを特徴とするプログラム。
  11. コンピュータ読み取り可能な情報記憶媒体であって、請求項1〜10のいずれかのプログラムを記憶したことを特徴とする情報記憶媒体。
  12. 画像生成システムであって、
    オブジェクト空間に設定されたオブジェクトをスクリーンに投影して仮想カメラから見た視界画像を生成する視界画像生成部と、
    前記視界画像に対して色を調整するポストエフェクト処理を行うポストエフェクト処理部とを含み、
    前記ポストエフェクト処理部が、
    前記スクリーンに対してポストエフェクト領域を設定し、
    前記ポストエフェクト領域の一部又は全体において第1のエフェクト色をグラデーション変化させるための第1の色調整情報と、前記視界画像の奥行き値に応じて第1のエフェクト色を変化させるための第2の色調整情報とを設定し、
    前記第1の色調整情報と前記第2の色調整情報とに基づいて、前記視界画像の前記ポストエフェクト領域に対応する領域に前記第1のエフェクト色を反映させて前記視界画像の色を調整するポストエフェクト処理を行うことを特徴とする画像生成システム。
JP2005333037A 2005-11-17 2005-11-17 プログラム、情報記憶媒体、及び画像生成システム Active JP4804120B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005333037A JP4804120B2 (ja) 2005-11-17 2005-11-17 プログラム、情報記憶媒体、及び画像生成システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005333037A JP4804120B2 (ja) 2005-11-17 2005-11-17 プログラム、情報記憶媒体、及び画像生成システム

Publications (2)

Publication Number Publication Date
JP2007140842A true JP2007140842A (ja) 2007-06-07
JP4804120B2 JP4804120B2 (ja) 2011-11-02

Family

ID=38203627

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005333037A Active JP4804120B2 (ja) 2005-11-17 2005-11-17 プログラム、情報記憶媒体、及び画像生成システム

Country Status (1)

Country Link
JP (1) JP4804120B2 (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011101904A1 (ja) * 2010-02-18 2011-08-25 三菱電機株式会社 グラデーション描画装置
WO2011128939A1 (ja) * 2010-04-15 2011-10-20 三菱電機株式会社 画像描画装置および画像描画方法
JP2011215737A (ja) * 2010-03-31 2011-10-27 Copcom Co Ltd 画像処理プログラム、記録媒体、及びコンピュータ装置
WO2013118190A1 (ja) * 2012-02-10 2013-08-15 三菱電機株式会社 グラデーション描画装置
WO2014156050A1 (en) * 2013-03-25 2014-10-02 Geo Technical Laboratory Co., Ltd. Three-dimensional image output device and background image generation device
JP2019021057A (ja) * 2017-07-18 2019-02-07 株式会社カプコン ゲームプログラム及びゲームシステム
JP2020154923A (ja) * 2019-03-22 2020-09-24 任天堂株式会社 画像処理プログラム、画像処理システム、画像処理装置、および画像処理方法
JP2021532470A (ja) * 2018-07-23 2021-11-25 マイクロソフト テクノロジー ライセンシング,エルエルシー 視覚的ノイズ低減のための深度レイ層

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002304641A (ja) * 2001-04-06 2002-10-18 Mitsubishi Electric Corp 都市景観表示装置
JP2004334661A (ja) * 2003-05-09 2004-11-25 Namco Ltd 画像生成システム、プログラム及び情報記憶媒体
JP2005267259A (ja) * 2004-03-18 2005-09-29 Seiko Epson Corp 画像修整装置、画像修整方法およびコンピュータプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002304641A (ja) * 2001-04-06 2002-10-18 Mitsubishi Electric Corp 都市景観表示装置
JP2004334661A (ja) * 2003-05-09 2004-11-25 Namco Ltd 画像生成システム、プログラム及び情報記憶媒体
JP2005267259A (ja) * 2004-03-18 2005-09-29 Seiko Epson Corp 画像修整装置、画像修整方法およびコンピュータプログラム

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011101904A1 (ja) * 2010-02-18 2011-08-25 三菱電機株式会社 グラデーション描画装置
JP2011215737A (ja) * 2010-03-31 2011-10-27 Copcom Co Ltd 画像処理プログラム、記録媒体、及びコンピュータ装置
WO2011128939A1 (ja) * 2010-04-15 2011-10-20 三菱電機株式会社 画像描画装置および画像描画方法
JP5383906B2 (ja) * 2010-04-15 2014-01-08 三菱電機株式会社 画像描画装置および画像描画方法
JPWO2013118190A1 (ja) * 2012-02-10 2015-05-11 三菱電機株式会社 グラデーション描画装置
WO2013118190A1 (ja) * 2012-02-10 2013-08-15 三菱電機株式会社 グラデーション描画装置
US9607430B2 (en) 2012-02-10 2017-03-28 Mitsubishi Electric Corporation Gradation drawing device
JP2014186568A (ja) * 2013-03-25 2014-10-02 Geo Technical Laboratory Co Ltd 3次元画像出力装置および背景画像生成装置
WO2014156050A1 (en) * 2013-03-25 2014-10-02 Geo Technical Laboratory Co., Ltd. Three-dimensional image output device and background image generation device
US9792707B2 (en) 2013-03-25 2017-10-17 Geo Technical Laboratory Co., Ltd Three-dimensional image output device and background image generation device
JP2019021057A (ja) * 2017-07-18 2019-02-07 株式会社カプコン ゲームプログラム及びゲームシステム
JP2021532470A (ja) * 2018-07-23 2021-11-25 マイクロソフト テクノロジー ライセンシング,エルエルシー 視覚的ノイズ低減のための深度レイ層
JP7422734B2 (ja) 2018-07-23 2024-01-26 マイクロソフト テクノロジー ライセンシング,エルエルシー 視覚的ノイズ低減のための深度レイ層
JP2020154923A (ja) * 2019-03-22 2020-09-24 任天堂株式会社 画像処理プログラム、画像処理システム、画像処理装置、および画像処理方法

Also Published As

Publication number Publication date
JP4804120B2 (ja) 2011-11-02

Similar Documents

Publication Publication Date Title
JP4804120B2 (ja) プログラム、情報記憶媒体、及び画像生成システム
JP2006318389A (ja) プログラム、情報記憶媒体、及び画像生成システム
US7479961B2 (en) Program, information storage medium, and image generation system
JP4804122B2 (ja) プログラム、テクスチャデータ構造、情報記憶媒体及び画像生成システム
JP4651527B2 (ja) プログラム、情報記憶媒体及び画像生成システム
JP4749198B2 (ja) プログラム、情報記憶媒体及び画像生成システム
JP2002063596A (ja) ゲームシステム、プログラム及び情報記憶媒体
JP2006252426A (ja) プログラム、情報記憶媒体及び画像生成システム
JP4827250B2 (ja) プログラム、情報記憶媒体及び画像生成システム
JP2004070670A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2001143099A (ja) 画像生成システム及び情報記憶媒体
JP4159082B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4913399B2 (ja) プログラム、情報記憶媒体及び画像生成システム
JP4861862B2 (ja) プログラム、情報記憶媒体、及び、画像生成システム
US7710419B2 (en) Program, information storage medium, and image generation system
JP4632855B2 (ja) プログラム、情報記憶媒体及び画像生成システム
JP4528008B2 (ja) プログラム、情報記憶媒体、及び画像生成システム
US7724255B2 (en) Program, information storage medium, and image generation system
JP4476040B2 (ja) プログラム、情報記憶媒体、及び画像生成システム
JP2010033302A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2006277488A (ja) プログラム、情報記憶媒体及び画像生成システム
JP4521811B2 (ja) プログラム、情報記憶媒体、及び画像生成システム
JP2010033295A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2010033253A (ja) プログラム、情報記憶媒体および画像生成システム
JP2008077406A (ja) 画像生成システム、プログラム及び情報記憶媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081030

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110314

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110323

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110519

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 4804120

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140819

Year of fee payment: 3

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

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