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

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

Info

Publication number
JP2004334661A
JP2004334661A JP2003131575A JP2003131575A JP2004334661A JP 2004334661 A JP2004334661 A JP 2004334661A JP 2003131575 A JP2003131575 A JP 2003131575A JP 2003131575 A JP2003131575 A JP 2003131575A JP 2004334661 A JP2004334661 A JP 2004334661A
Authority
JP
Japan
Prior art keywords
texture
value
original image
data
unit
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.)
Withdrawn
Application number
JP2003131575A
Other languages
English (en)
Inventor
Naoya Sasaki
直哉 佐々木
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.)
Namco Ltd
Original Assignee
Namco 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 Namco Ltd filed Critical Namco Ltd
Priority to JP2003131575A priority Critical patent/JP2004334661A/ja
Publication of JP2004334661A publication Critical patent/JP2004334661A/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

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

Abstract

【課題】少ない処理負荷で種々の変換処理を表現できる画像生成システム、プログラム及び情報記憶媒体を提供すること。
【解決手段】元画像のピクセルデータ(色、α値、Z値、輝度等)を間接テクスチャ記憶部177に設定し、変換用データを通常テクスチャ記憶部178に設定する。間接テクスチャ記憶部177から読み出された元画像のピクセルデータをテクスチャ座標に設定して、通常テクスチャ記憶部178から変換用データを読み出し、読み出された変換用データを描画対象ピクセルに描画することで、元画像のピクセルデータを変換する。元画像のZ値を変換することで得られた第1のα値と、αむら設定用α値とを合成して、第2のα値を生成し、元画像の各ピクセルの色とフォグ色とを第2のα値に基づき合成する。Z値や輝度をα値に変換し、得られたα値に基づき被写界深度画像やハレーション画像を生成する。
【選択図】 図4

Description

【0001】
【発明の属する技術分野】
本発明は、画像生成システム、プログラム及び情報記憶媒体に関する。
【0002】
【従来技術】
従来より、仮想的な3次元空間であるオブジェクト空間内において仮想カメラ(所与の視点)から見える画像を生成する画像生成システム(ゲームシステム)が知られており、いわゆる仮想現実を体験できるものとして人気が高い。このよう画像生成システムではテクスチャマッピングと呼ばれる手法を用いてリアルな画像を生成している。
【0003】
【特許文献1】
特開2001−224847号公報
【0004】
【発明が解決しようとする課題】
しかしながら、これまでのテクスチャマッピングは、テクスチャ座標(U、V)でアドレス指定されたテクスチャ記憶部のテクセルデータを、描画対象ピクセルに描画(マッピング)することで実現されていた。このため例えば被写界深度、フォグむら(fog nonuniformity)表現、ガンマ補正等の変換処理(画像エフェクト処理)を実現しようとすると、処理負荷が重くなったり、処理が繁雑化したり、処理速度が遅くなるなどの課題があった。
【0005】
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、少ない処理負荷で種々の変換処理を表現できる画像生成システム、プログラム及び情報記憶媒体を提供することにある。
【0006】
【課題を解決するための手段】
本発明は、画像生成を行う画像生成システムであって、間接テクスチャのテクセルデータを記憶する間接テクスチャ記憶部と、通常テクスチャのテクセルデータを記憶する通常テクスチャ記憶部と、描画対象ピクセルのテクスチャ座標で指定される間接テクスチャのテクセルデータを、前記間接テクスチャ記憶部から読み出し、読み出されたテクセルデータにより特定されるテクスチャ座標に基づいて、前記通常テクスチャ記憶部から通常テクスチャのテクセルデータを読み出し、読み出されたテクセルデータに基づいて、描画対象ピクセルの描画処理を行うテクスチャマッピング部と、元画像のピクセルデータを、間接テクスチャのテクセルデータとして前記間接テクスチャ記憶部に設定する間接テクスチャ設定部と、ピクセルデータを変換するための変換用データを、通常テクスチャのテクセルデータとして前記通常テクスチャ記憶部に設定する通常テクスチャ設定部とを含み、前記テクスチャマッピング部が、前記間接テクスチャ記憶部から読み出された元画像のピクセルデータにより特定されるテクスチャ座標に基づいて、前記通常テクスチャ記憶部から前記変換用データを読み出し、読み出された変換用データに基づいて描画対象ピクセルの描画処理を行うことで、元画像のピクセルデータの変換処理を行う画像生成システムに関係する。また本発明は、上記各部としてコンピュータを機能させるプログラムに関係する。また本発明は、コンピュータ読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるプログラムを記憶(記録)した情報記憶媒体に関係する。
【0007】
本発明では、元画像のピクセルデータがテクセルデータに設定された間接テクスチャと、変換用データがテクセルデータに設定された通常テクスチャとに基づいて、間接テクスチャマッピングが行われ、元画像のピクセルデータの変換処理が実現される。従って間接テクスチャマッピングを行うだけで、全表示画面分或いは分割表示画面分のピクセルデータを一度に変換することが可能となり、少ない処理負荷で効果的な変換処理(画像エフェクト処理)を実現できる。
【0008】
なお本発明では、間接テクスチャ記憶部から読み出されたテクセルデータを、直接に通常テクスチャ記憶部のテクスチャ座標に設定してもよいし、テクセルデータとテクスチャ座標とに基づく演算処理(加算、減算、乗算又は除算等)により得られたデータを、通常テクスチャ記憶部のテクスチャ座標に設定してもよい。また通常テクスチャ記憶部から読み出されたテクセルデータを、そのまま描画対象ピクセルに描画してもよいし、読み出されたピクセルデータに演算処理を施したものを描画対象ピクセルに描画してもよい。
【0009】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記間接テクスチャ設定部が、元画像のZ値を、間接テクスチャのテクセルデータとして前記間接テクスチャ記憶部に設定し、前記通常テクスチャ設定部が、Z値をα値に変換するための変換用データを、通常テクスチャのテクセルデータとして前記通常テクスチャ記憶部に設定し、前記テクスチャマッピング部が、間接テクスチャマッピングによる前記変換処理により、元画像のZ値をα値に変換するようにしてもよい。
【0010】
このようにすれば、間接テクスチャマッピングを有効利用して、元画像のZ値(Zプレーン)をα値(αプレーン)に変換できるようになる。そしてこの変換により得られたα値を用いて、種々のエフェクト画像を生成することが可能となる。なおZ値とα値との間の変換特性は、通常テクスチャを用いて任意の特性に設定できる。また通常テクスチャを動的に変化させることで、得られるα値の値を動的に変化させてもよい。
【0011】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、元画像のZ値を前記変換処理により変換することで得られた第1のα値と、各ピクセルのα値が仮想プレーン内で不均一に設定されるαむら設定用α値とを合成して、第2のα値を生成するα値合成部と、元画像の各ピクセルの色と所与の色とを、前記第2のα値に基づいて合成する色合成部を含んでもよい(これらの各部としてコンピュータを機能させる、或いはこれらの各部としてコンピュータを機能させるプログラムを記憶してもよい)。
【0012】
本発明によれば、元画像のZ値(奥行き値)に応じて設定された第1のα値と、αむら設定用α値が合成され、得られた第2のα値に基づいて、元画像の色と所与の色(例えばフォグの色)が合成される。このようにすることで、元画像のZ値とαむら(むら模様)の両方が加味された画像エフェクトを、元画像に対して施すことができる。これにより、リアルなフォグむら画像等を生成できる。
【0013】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記α値合成部が、仮想プレーン内でのむら模様が異なる複数のαむら設定用α値を合成して、前記第1のα値の合成対象となるαむら設定用α値を生成するようにしてもよい。
【0014】
この場合、複数のαむら設定用α値に対応する複数の仮想プレーンに対して、仮想カメラからの仮想距離を設定し、この仮想距離に基づいて、複数のαむら設定用α値の合成に使用するα値を制御したり、複数のαむら設定用α値の仮想プレーン内でのむら模様を制御してもよい。
【0015】
また、α値合成部が、複数のαむら設定用α値に対応する複数の仮想プレーンのうち最も手前側の仮想プレーンについての仮想カメラからの仮想距離が、所与の距離よりも小さくなった場合に、最も手前側の仮想プレーンに対応するαむら設定用α値の合成率を低くし、複数の仮想プレーンのうち最も奥側の仮想プレーンについての仮想カメラからの仮想距離が、所与の距離よりも大きくなった場合に、最も奥側の仮想プレーンに対応するαむら設定用α値の合成率を低くするようにしてもよい。
【0016】
なお、最も手前側の仮想プレーンに対応するαむら設定用α値の合成率を低くした後に(零にした後に)、最も奥側の仮想プレーンの更に奥側に、新たな仮想プレーンを発生させてもよい。また、最も奥側の仮想プレーンに対応するαむら設定用α値の合成率を低くした後に(零にした後に)、最も手前側の仮想プレーンの更に手前側に、新たな仮想プレーンを発生させてもよい。
【0017】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、α値合成部が、仮想カメラ情報及び時間情報の少なくとも一方に応じて、αむら設定用α値の仮想プレーン内でのむら模様を変化させるようにしてもよい。
【0018】
このようにすれば、仮想カメラの動きや時間経過に応じて、むら模様が多様に変化するようになり、更にリアルな画像を生成できる。
【0019】
なおこの場合に、複数のαむら設定用α値の仮想プレーン内でのむら模様を変化させてもよいし、複数のαむら設定用α値を合成することで得られるαむら設定用α値(第1のα値の合成対象になるαむら設定用α値)のむら模様を変化させてもよい。
【0020】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記α値合成部が、αむら設定用α値に対応する仮想プレーンについての仮想カメラからの仮想距離が小さくなるほど、αむら設定用α値のむら模様を拡大するようにしてもよい。
【0021】
なお、α値合成部が、スクリーンに平行な第1の方向に仮想カメラが移動した場合に、αむら設定用α値のむら模様を、第1の方向とは逆方向の第2の方向に移動させるようにしてもよい。この場合に、αむら設定用α値のむら模様の移動距離を、仮想カメラからの仮想距離に応じて変化させてもよい。
【0022】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、元画像の各ピクセルの色と、元画像に基づき生成されたぼかし画像の各ピクセルの色とを、元画像のZ値を前記変換処理により変換することで得られたα値に基づいて合成する色合成部を含んでもよい(これらの各部としてコンピュータを機能させる、或いはこれらの各部としてコンピュータを機能させるプログラムを記憶してもよい)。
【0023】
このようにすれば、元画像の各ピクセルのZ値(奥行き値)に応じた値に設定されたα値に基づいて、元画像とぼかし画像とが合成される。従って、Z値に応じて、ぼかし画像の合成比率等を変化させることが可能になり、被写界深度などの表現が可能になる。
【0024】
なお、Z値(奥行き値)は、仮想カメラ(視点)から近いほど大きい値にしてもよいし、仮想カメラから遠いほど大きい値にしてもよい。また、元画像の合成対象となるぼかし画像の合成手法としては種々の手法を採用できる。またα値を用いた合成処理はαブレンディングに限定されない。
【0025】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記間接テクスチャ設定部が、元画像の色を、間接テクスチャのテクセルデータとして前記間接テクスチャ記憶部に設定し、前記通常テクスチャ設定部が、元画像の色を変換するための変換用データを、通常テクスチャのテクセルデータとして前記通常テクスチャ記憶部に設定し、前記テクスチャマッピング部が、間接テクスチャマッピングによる前記変換処理により、元画像の色を変換するようにしてもよい。
【0026】
このようにすれば種々の色データ変換処理を実現できる。
【0027】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、変換用データを用いた元画像の色の変換が、ガンマ補正、ネガポジ反転、ポスタリゼーション、ソラリゼーション、2値化の変換の少なくとも1つであってもよい。
【0028】
なお本発明における色データ変換処理は上記した変換処理に限定されない。
【0029】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記間接テクスチャ設定部が、元画像の輝度を、間接テクスチャのテクセルデータとして前記間接テクスチャ記憶部に設定し、前記通常テクスチャ設定部が、元画像の輝度をα値に変換するための変換用データを、通常テクスチャのテクセルデータとして前記通常テクスチャ記憶部に設定し、前記テクスチャマッピング部が、間接テクスチャマッピングによる前記変換処理により、元画像の輝度をα値に変換するようにしてもよい。
【0030】
このようにすれば、間接テクスチャマッピングを有効利用して、元画像の輝度(輝度プレーン)を少ない処理負荷でα値(αプレーン)に変換できるようになる。そしてこの変換により得られたα値を用いて、種々のエフェクト画像を生成することが可能となる。なお輝度とα値との間の変換特性は、通常テクスチャを用いて任意の特性に設定できる。また通常テクスチャを動的に変化させることで、得られるα値の値を動的に変化させてもよい。
【0031】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、元画像の各ピクセルの色と、元画像に基づき生成されたぼかし画像の各ピクセルの色とを、元画像の輝度を前記変換処理により変換することで得られたα値に基づいて合成する色合成部を含んでもよい(これらの各部としてコンピュータを機能させる、或いはこれらの各部としてコンピュータを機能させるプログラムを記憶してもよい)。
【0032】
このようにすれば、元画像の各ピクセルの輝度に応じた値に設定されたα値に基づいて、元画像とぼかし画像を合成できる。従って、輝度に応じて、ぼかし画像の合成比率等を変化させることが可能になり、ハレーション画像の表現などが可能になる。
【0033】
【発明の実施の形態】
以下、本実施形態について説明する。
【0034】
なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【0035】
1.構成
図1に本実施形態の画像生成システム(ゲームシステム)の機能ブロック図の例を示す。なお、本実施形態の画像生成システムは、図1の構成要素(各部)を全て含む必要はなく、その一部(例えば操作部160、携帯型情報記憶装置194又は通信部196等)を省略した構成としてもよい。
【0036】
操作部160は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、ステアリング、シフトレバー、アクセルペダル、ブレーキペダル、マイク、センサー、タッチパネル型ディスプレイ、或いは筺体などのハードウェアにより実現できる。
【0037】
記憶部170は、処理部100や通信部196などのワーク領域となるもので、その機能はRAMなどのハードウェアにより実現できる。
【0038】
情報記憶媒体180(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、光ディスク(CD、DVD)、光磁気ディスク(MO)、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ(ROM)などのハードウェアにより実現できる。処理部100は、この情報記憶媒体180に格納されるプログラム(データ)に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体180には、本実施形態の各部としてコンピュータを機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)が記憶(記録、格納)される。
【0039】
表示部190は、本実施形態により生成された画像を出力するものであり、その機能は、CRT、LCD、タッチパネル型ディスプレイ、或いはHMD(ヘッドマウントディスプレイ)などのハードウェアにより実現できる。
【0040】
音出力部192は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどのハードウェアにより実現できる。
【0041】
携帯型情報記憶装置194は、プレーヤの個人データやゲームのセーブデータなどが記憶されるものであり、この携帯型情報記憶装置194としては、メモリカードや携帯型ゲーム装置などがある。
【0042】
通信部196は、外部(例えばホスト装置や他の画像生成システム)との間で通信を行うための各種の制御を行うものであり、その機能は、各種プロセッサ又は通信用ASICなどのハードウェアや、プログラムなどにより実現できる。
【0043】
なお本実施形態の各部としてコンピュータを機能させるためのプログラム(データ)は、ホスト装置(サーバー)が有する情報記憶媒体からネットワーク及び通信部196を介して情報記憶媒体180(記憶部170)に配信するようにしてもよい。このようなホスト装置(サーバー)の情報記憶媒体の使用も本発明の範囲内に含めることができる。
【0044】
処理部100(プロセッサ)は、操作部160からの操作データやプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの各種の処理を行う。ここで処理部100が行うゲーム処理としては、ゲーム開始条件(コースやマップやキャラクタや参加プレーヤ人数の選択等)が満たされた場合にゲームを開始させる処理、ゲームを進行させる処理、キャラクタやマップなどのオブジェクトを配置する処理、オブジェクトを表示する処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了させる処理などがある。また処理部100は記憶部170をワーク領域として各種処理を行う。この処理部100の機能は、各種プロセッサ(CPU、DSP等)やASIC(ゲートアレイ等)などのハードウェアや、プログラム(ゲームプログラム)により実現できる。
【0045】
処理部100は、オブジェクト空間設定部110、移動・動作処理部112、仮想カメラ制御部114、画像生成部120、音生成部130を含む。なおこれらの一部を省略してもよい。
【0046】
オブジェクト空間設定部110は、キャラクタ、樹木、車、柱、壁、建物、マップ(地形)などの表示物を表す各種オブジェクト(ポリゴン、自由曲面又はサブディビジョンサーフェスなどのプリミティブ面で構成されるオブジェクト)をオブジェクト空間に配置設定する処理を行う。即ちワールド座標系でのオブジェクトの位置や回転角度(向き、方向と同義)を決定し、その位置(X、Y、Z)にその回転角度(X、Y、Z軸回りでの回転角度)でオブジェクトを配置する。
【0047】
移動・動作処理部112は、移動オブジェクト(車、飛行機、又はキャラクタ等)の移動・動作演算(移動・動作シミュレーション)を行う。即ち、操作部160によりプレーヤが入力した操作データ、プログラム(移動・動作アルゴリズム)、或いは各種データ(モーションデータ)などに基づいて、移動オブジェクトをオブジェクト空間内で移動させたり、移動オブジェクトを動作(モーション、アニメーション)させる処理を行う。より具体的には、移動オブジェクトの移動情報(位置、回転角度、速度、或いは加速度)や動作情報(各パーツオブジェクトの位置、或いは回転角度)を、1フレーム(1/60秒)毎に順次求めるシミュレーション処理を行う。ここでフレームは、移動オブジェクトの移動・動作処理(シミュレーション処理)や画像生成処理を行う時間の単位である。
【0048】
仮想カメラ制御部114は、オブジェクト空間内の所与(任意)の視点での画像を生成するための仮想カメラを制御する処理を行う。即ち、仮想カメラの位置(X、Y、Z)又は回転角度(X、Y、Z軸回りでの回転角度)を制御する処理(視点位置や視線方向を制御する処理)を行う。
【0049】
例えば、仮想カメラにより移動オブジェクトを後方から撮影する場合には、移動オブジェクトの位置又は回転の変化に仮想カメラが追従するように、仮想カメラの位置又は回転角度(仮想カメラの向き)を制御する。この場合には、移動・動作処理部112で得られた移動オブジェクトの位置、回転角度又は速度などの情報に基づいて、仮想カメラを制御できる。或いは、仮想カメラを、予め決められた移動経路で移動させながら予め決められた回転角度で回転させるようにしてもよい。この場合には、仮想カメラの位置(移動経路)や回転角度を特定するための仮想カメラデータに基づいて仮想カメラを制御する。
【0050】
画像生成部120は、処理部100で行われる種々の処理(ゲーム処理)の結果に基づいて描画処理を行い、これにより画像を生成し、表示部190に出力する。即ちいわゆる3次元ゲーム画像を生成する場合には、まず、座標変換(ワールド座標変換、カメラ座標変換)、クリッピング処理、透視変換、或いは光源処理等のジオメトリ処理が行われ、その処理結果に基づいて、描画データ(プリミティブ面の頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等)が作成される。そして、この描画データ(プリミティブ面データ)に基づいて、透視変換後(ジオメトリ処理後)のオブジェクト(1又は複数プリミティブ面)を、描画バッファ172(フレームバッファ、ワークバッファ等のピクセル単位で画像情報を記憶できるバッファ)に描画する。これにより、オブジェクト空間内において仮想カメラ(所与の視点)から見える画像が生成される。
【0051】
画像生成部120は、隠面消去部122、テクスチャマッピング部123、間接テクスチャ設定部124、通常テクスチャ設定部125、α値合成部126、色合成部127を含む。なおこれらの一部を省略する構成としてもよい。
【0052】
隠面消去部122は、Z値(奥行き情報)が格納されるZバッファ174(奥行きバッファ)等を用いて、Zバッファ法(奥行き比較法)により隠面消去処理を行う。
【0053】
テクスチャマッピング部123は、テクスチャ記憶部176に記憶されるテクスチャ(テクセルデータ)をオブジェクト(ポリゴン、或いは表示画面サイズ又は分割表示画面サイズの仮想ポリゴン)にマッピングする処理を行う。具体的には、テクスチャ座標で指定されるテクセルデータをテクスチャ記憶部176(テクスチャバッファ、テクスチャ用記憶領域)から読み出す。そして読み出したテクセルデータを描画対象ピクセルに描画する。この場合にテクスチャマッピング部123は、バイリニア補間などのテクセル補間を行いながらマッピング処理を行うことができる。
【0054】
そして本実施形態では、テクスチャマッピング部123が間接テクスチャマッピング(インダイレクトテクスチャマッピング)を行うことができる。
【0055】
より具体的にはテクスチャマッピング部123は、描画対象ピクセルのテクスチャ座標で指定される間接テクスチャ(インダイレクトテクスチャ)のテクセルデータを、間接テクスチャ記憶部177(間接テクスチャ用のテクスチャバッファ、記憶領域)から読み出す。この場合、描画対象ピクセルのテクスチャ座標は、例えばポリゴン(仮想ポリゴン)の頂点テクスチャ座標を補間(線形補間)することで得ることができる。そしてテクスチャマッピング部123は、間接テクスチャ記憶部177から読み出したテクセルデータによりテクスチャ座標を特定し(テクセルデータをテクスチャ座標に設定し)、このテクスチャ座標に基づいて、通常テクスチャ記憶部178(通常テクスチャ用のテクスチャバッファ、記憶領域)から通常テクスチャ(レギュラーテクスチャ)のテクセルデータを読み出す。そして読み出されたテクセルデータに基づいて、描画対象ピクセルの描画処理(マッピング)を行う。このようにすることで間接テクスチャマッピングが実現される。
【0056】
間接テクスチャ設定部124は、間接テクスチャ記憶部177に間接テクスチャを設定する処理(書き込む処理)を行う。より具体的には、例えば元画像(original image)のピクセルデータ(色、α値、Z値、又は輝度などのピクセルと関連づけて記憶できるデータ)を、間接テクスチャのテクセルデータ(テクセルに関連づけて記憶できるデータ)として、間接テクスチャ記憶部177に設定する。
【0057】
通常テクスチャ設定部125は、通常テクスチャ記憶部178に通常テクスチャを設定する処理(書き込む処理)を行う。より具体的には、例えばピクセルデータを同種又は異種のピクセルデータに変換するための変換用データ(変換テーブルデータ、関数データ、勾配データ)を、通常テクスチャのテクセルデータとして、通常テクスチャ記憶部178に設定する。
【0058】
そしてテクスチャマッピング部123は、間接テクスチャ設定部124により設定された間接テクスチャ(ピクセルデータ)と、通常テクスチャ設定部125により設定された通常テクスチャ(変換用データ)とに基づいて、間接テクスチャマッピングを行うことで、元画像(原画像)のピクセルデータの変換処理(同種又は異種のピクセルデータに変換する処理)を実現している。より具体的には、テクスチャマッピング部123は、間接テクスチャ記憶部177から読み出された元画像のピクセルデータに基づき、テクスチャ座標を特定し(テクスチャ座標を設定し)、このテクスチャ座標に基づいて通常テクスチャ記憶部178からピクセルデータの変換用データを読み出す。そして読み出された変換用データに基づき、描画対象ピクセルの描画処理を行うことで、元画像のピクセルデータの変換処理を実現する。
【0059】
α値合成部126はα値の合成処理を行う。より具体的には、第1のα値とαむら設定用α値とを合成(α値の乗算、加算、除算又は減算等)して、第2のα値を生成する。
【0060】
ここで、第1のα値では、例えば、元画像の各ピクセルのZ値に応じた値に、各ピクセルのα値が設定されている。また、αむら設定用α値では、仮想プレーン内(ピクセル間、画面内)において各ピクセルのα値が不均一(nonuniform)に設定されている。
【0061】
また元画像は、例えば、Z値を格納するZバッファ174(フレームバッファのZプレーン)を用いて隠面消去を行いながらオブジェクトを描画バッファ172に描画することで生成される画像である。そして、元画像のZ値は、この描画処理の際に行われるZバッファ法(奥行き比較法)により、Zバッファ174(Zプレーン)に生成(格納)される。
【0062】
なお本実施形態のZ値(奥行き値)は、カメラ座標系のZ座標軸のZ値そのものであってもよいし、このZ値と数学的な均等なパラメータであってもよい。例えば、カメラ座標系のZ値の逆数に相当するパラメータや、カメラ座標系のZ値に所与の変換処理を施すことで得られるパラメータであってもよい。
【0063】
色合成部127は色の合成処理を行う。例えば元画像の色と所与の色(例えばフォグ色、元画像のぼかし画像の色等)とを、α値(第2のα値)に基づいて合成する処理を行う。この場合の合成処理としては、αブレンディング(狭義のαブレンディング)、加算αブレンディング、又は減算αブレンディングなどを考えることができる。このような合成処理を行うことで、元画像にフォグ(霧、雲、湯気、もや、ほこり、ちり、煙、竜巻又は露等)が掛かった画像や、被写界深度が表現された画像を生成できる。
【0064】
合成処理がαブレンディングである場合を例にとれば、色合成部127は下式に従ったα合成処理を行う。
【0065】
=(1−α)×R+α×R (1)
=(1−α)×G+α×G (2)
=(1−α)×B+α×B (3)
合成処理が加算αブレンディングである場合を例にとれば、色合成部127は下式に従ったα合成処理を行う。
【0066】
=R+α×R (4)
=G+α×G (5)
=B+α×B (6)
ここで、R、G、Bは、元画像(描画バッファ172に既に描画されている画像)の色(輝度)のR、G、B成分であり、R、G、Bは、合成対象となる色(フォグの色、ぼかし画像の色)のR、G、B成分である。また、R、G、Bは、α合成により得られる画像(完成画像)の色のR、G、B成分である。
【0067】
なお、α値(A値)は、各ピクセル(テクセル、ドット)に関連づけて記憶できるデータであり、例えば色データ以外のプラスアルファのデータである。α値は、マスクデータ、半透明度(透明度、不透明度と等価)、又はバンプデータ等として使用できる。
【0068】
音生成部130は、処理部100で行われる種々の処理の結果に基づいて音処理を行い、BGM、効果音、又は音声などのゲーム音を生成し、音出力部192に出力する。
【0069】
なお、本実施形態の画像生成システムは、1人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、このようなシングルプレーヤモードのみならず、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。
【0070】
また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、1つの端末を用いて生成してもよいし、ネットワーク(伝送ライン、通信回線)などで接続された複数の端末(ゲーム機、携帯電話)を用いて生成してもよい。
【0071】
2.本実施形態の手法
次に本実施形態の手法について図面を用いて説明する。
【0072】
2.1 間接テクスチャマッピングを利用したピクセルデータの変換処理
本実施形態では間接(インダイレクト)テクスチャマッピングを利用して、ピクセルデータの変換処理を実現している。
【0073】
図2(A)に間接テクスチャマッピングの原理図を示す。間接テクスチャマッピングでは、テクスチャ座標(U、V)に基づいて、そのテクスチャ座標で指定(アドレス指定)されるテクセルデータが、間接テクスチャ記憶部177(間接テクスチャ用記憶領域、間接テクスチャ用ルックアップテーブル)から読み出される。そして、このテクセルデータ(色等)がテクスチャ座標(U’、V’)に設定され、そのテクスチャ座標(U’、V’)で指定されるテクセルデータが通常テクスチャ記憶部178(通常テクスチャ用記憶領域、通常テクスチャ用ルックアップテーブル)から読み出される。即ち、即ちテクスチャ座標(U、V)により直接指定されたテクセルデータではなく、テクスチャ座標(U、V)により間接指定されたテクセルデータが読み出される。
【0074】
なお図2(B)に示すように、テクスチャ座標と、間接テクスチャ記憶部177から読み出されたテクセルデータとに基づく演算処理(加算、減算、乗算又は除算等)を、演算部129により行い、演算処理により得られたテクスチャ座標に基づいて、通常テクスチャ記憶部178からテクセルデータを読み出すようにしてもよい。
【0075】
この間接テクスチャマッピングによれば、いわゆるテクスチャワープによる歪み画像の生成や、テクスチャタイルマップや、バンプマッピングを、簡素な処理で実現できるという利点がある。本実施形態では、この間接テクスチャマッピングを通常とは異なる形態で利用している。
【0076】
即ち一般的な間接テクスチャマッピングでは、テクスチャワープ用のテーブルデータ等が、間接テクスチャとして間接テクスチャ記憶部177に設定され、元画像のピクセルデータが、通常テクスチャとして通常テクスチャ記憶部178に設定される。そしてテクスチャワープ用のテーブルデータの設定の仕方で、元画像の歪み具合が変化する。
【0077】
これに対して本実施形態では図3に示すように、元画像のピクセルデータ(色、α値、Z値、輝度等)を間接テクスチャ記憶部177に設定(記憶)し、ピクセルデータの変換用データ(ピクセルデータを同種又は異種のピクセルデータに変換するためのデータ)を通常テクスチャ記憶部178に設定(記憶)している。そして間接テクスチャ記憶部177から読み出された元画像のピクセルデータをテクスチャ座標として、通常テクスチャ記憶部178から変換用データを読み出す。そして、読み出された変換用データを描画対象ピクセルに描画することで、元画像のピクセルデータを変換する。例えば元画像の色、α値、Z値、又は輝度を、各々、変換処理が施された同種の色、α値、Z値、又は輝度に変換する。或いは、元画像の色を、色とは異種のα値、Z値、又は輝度に変換したり、α値を、α値とは異種の色、Z値、又は輝度に変換する。或いはZ値を、Z値とは異種の色、α値、又は輝度に変換したり、輝度を、輝度とは異種の色、α値、又はZ値に変換する。このようにすることで、表示画面分又は分割表示画面分のピクセルデータを、間接テクスチャマッピング処理により一度に変換できるため、処理負荷の軽減化、処理の簡素化、処理速度の向上等を図れる。なお元画像のピクセルデータは、ピクセルに関連づけて記憶できるデータ(プレーン)であればよく、例えば法線ベクトルデータなどであってもよい。
【0078】
例えば図4(A)に示すように一般的なテクスチャマッピング(直接テクスチャマッピング)では、描画対象ピクセルPXiのテクスチャ座標Ui、Vi(頂点VX1〜VX4のテクスチャ座標を補間することで得られるテクスチャ座標)により指定されるテクセルデータを、テクスチャ記憶部500から読み出して、ピクセルPXiに描画する。
【0079】
これに対して間接テクスチャマッピングでは図4(B)に示すように、描画対象ピクセルPXiのテクスチャ座標Ui、Viで指定されるテクセルデータを、間接テクスチャ記憶部177から読み出す(参照する)。そして、読み出されたテクセルデータをテクスチャ座標Ui’(Vi’或いはUi’及びVi’でもよい)に設定して、通常テクスチャ記憶部178から通常テクスチャのテクセルデータを読み出す(参照する)。そして読み出されたテクセルデータを描画対象ピクセルPXiに描画する(書き込む)。
【0080】
この場合に本実施形態では、テクスチャ座標Ui、Viで指定されるテクセルTXiには、元画像のピクセルデータがテクセルデータとして記憶されている。そして通常テクスチャ記憶部178の読み出しアドレスとなるテクスチャ座標Ui’は、テクセルTXiに記憶されているピクセルデータの値に応じて変化する。従って、通常テクスチャ記憶部178のテクセルTXi’から読み出されて、ピクセルPXiに書き込まれる変換用データも、テクセルTXiに記憶されている元画像のピクセルデータの値に応じて変化する。
【0081】
例えば間接テクスチャ記憶部177のテクセルTXiに記憶されている元画像のピクセルデータと、テクセルTXjに記憶されている元画像のピクセルデータとが異なっていれば、テクスチャ座標Ui’、Uj’も異なるようになり、通常テクスチャ記憶部178において異なるテクセルTXi’、TXj’が指定されるようになる。従って、テクセルTXi’、TXj’に記憶されている異なった値を持つ変換用データが、ピクセルPXi、PXjに描画されるようになり、ピクセルデータの変換処理を実現できる。即ち図4(C)、(D)に示すように、ピクセルデータPDと変換後のピクセルデータCPDとの間の種々の変換特性(関数)を実現できる。
【0082】
このように本実施形態では間接テクスチャマッピングを利用することで、元画像の1プレーン(M×Nピクセル)分のピクセルデータPDを、1プレーン分のピクセルデータCPDに一度で変換できるため、高速な変換処理を実現できる。またピクセルデータPD、CPD間の変換特性は、通常テクスチャ記憶部178に記憶される変換用データ(変換特性データ)により任意に設定できる。従って通常テクスチャ記憶部178の変換用データを書き換えることで、PD、CPD間の様々な変換特性を容易に実現できるという利点がある。
【0083】
なお、変換用データを時間経過などに伴い動的(リアルタイム)に変化させることで、ピクセルデータPD、CPD間の変換特性を動的(リアルタイム)に変化させてもよい。またテクスチャが描画(マッピング)される描画ピクセル領域のサイズと、間接テクスチャのテクセルデータが読み出されるテクセル領域のサイズは同一でなくてもよく、例えば間接テクスチャ領域のサイズを小さくしてもよい。
【0084】
次に、間接テクスチャマッピングを利用して実現できる様々な画像エフェクト処理(画像変換処理)について説明する。
【0085】
2.2 フォグむら画像のエフェクト処理
ゲームにおいては、霧、もや、煙、ホコリなどのフォグ(fog)が掛かったゲーム画像を生成する場合がある。そして、プレーヤの仮想現実感の向上のためには、フォグのむら(nonuniformity,unevenness)についてもリアルに表現できることが望まれる。
【0086】
そして、よりリアルなフォグ効果を表現するためには、仮想カメラ(視点)からの距離に応じてフォグ濃度を変化させることが望ましい。即ち、仮想カメラからの距離が遠くなるほどフォグ濃度を濃くする。
【0087】
そして、このようにフォグ濃度を変化させるためには、フォグ濃度を制御するパラメータであるα値を、仮想カメラからの距離に応じて変化させることが望ましい。即ち、仮想カメラからの距離が遠くなるほどフォグ濃度が濃くなるようにα値を制御する。
【0088】
そこで本実施形態では、仮想カメラからの距離パラメータであるZ値(奥行き距離)をα値に変換する。具体的には図5のA1に示すように、元画像(フレームバッファ上に描画された画像)のZ値ZPを第1のα値αP1に変換する。
【0089】
そして図5のA2に示すように、元画像の色ICP(RGB、YUV等)と、フォグの色(白、灰色等)CPとを、αP1に基づいて合成(αブレンディング等)する。これにより、元画像にフォグ効果が施されたフォグ画像を生成できる。
【0090】
そして本実施形態では図5のA1に示すZ値からα値への変換を、前述した間接テクスチャマッピングを有効利用して実現している。
【0091】
即ち図3において、元画像のZ値を間接テクスチャのテクセルデータとして間接テクスチャ記憶部177に設定する。またZ値をα値に変換するための変換用データを、通常テクスチャのテクセルデータとして通常テクスチャ記憶部178に設定する。そして図4(B)で説明した間接テクスチャマッピングによる変換処理により、元画像のZ値を、Z値に応じてその値が変化するα値に変換する。このようにすることで、表示画面分又は分割表示画面分のZ値(Zプレーン)を、間接テクスチャマッピングを利用して1回の処理で、表示画面分又は分割表示画面分のα値(αプレーン)に変換できる。
【0092】
さて、図5の手法によれば、Z値(仮想カメラからの距離)に応じて濃淡が変化するフォグ効果を元画像に対して施すことが可能になる。
【0093】
しかしながら、図5の手法では、濃淡(濃度)にむらがあるフォグ(不均一なフォグ)を表現できないという課題がある。
【0094】
この場合、例えば、図5の色CP(フォグ色のスプライト)に、白、灰色、黒などの色の濃淡をつける手法を考えることもできる。
【0095】
しかしながら、この手法では、生成されるフォグは、灰色や黒のフォグになるだけで、濃淡にむらがあるフォグにはならない。
【0096】
そこで本実施形態では、α値にむらをつける手法、即ちα値を仮想プレーン内(ピクセル間、画面内)で不均一にする手法を採用している。
【0097】
即ち、まず本実施形態では図6のC1に示すように、図5の手法と同様に元画像のZ値(Zプレーン)ZPを変換し、ZPに応じて各ピクセルのα値が設定される第1のα値(第1のαプレーン)αP1を得る。この場合、ZPからαP1への変換は、図3〜図4(D)で説明した間接テクスチャマッピングを利用した変換処理で実現する。
【0098】
また本実施形態では図6のC2に示すように、仮想プレーン内でα値が不均一に設定されたαむら設定用α値(αむら設定用αプレーン)αUPを用意する。そして図6のC3に示すように、αP1とαUPを合成して、第2のα値(第2のαプレーン)αP2を得る。このようにすることで、Z値とαむら(むら模様)の両方が加味されたα値(フォグ濃度値)を得ることができる。なお、α値の合成処理としては、各ピクセルのαP1、αUPを乗算する処理を考えることができる。但し、α値の加算、減算又は除算等、乗算以外の合成処理を採用してもよい。
【0099】
次に本実施形態では図6のC4に示すように、得られたαP2に基づいて、元画像の色ICPと色CP(フォグの色)とを合成し、フォグ画像(完成画像)を生成する。ここで、色の合成としては、狭義のαブレンディング(上式(1)(2)(3))又は加算αブレンディング(上式(4)(5)(6))などを採用できる。
【0100】
以上のようにすることで、Z値(距離)に応じて濃度が変化すると共にその濃度にむらがあるフォグを、元画像に対して施すことが可能になる。
【0101】
図7に本実施形態で用いられる元画像の例を示す。この元画像は、キャラクタや背景などのオブジェクトを、ジオメトリ処理を行いながらフレームバッファ(描画バッファ)に描画することで得られる画像である。
【0102】
図8にフォグのむら模様(αむら設定用α値αUPを表すグレースケール画像)の例を示す。図8において、白い部分ほどα値が低くなっており、フォグ濃度が薄くなっている。一方、黒い部分ほどα値が高くなっており、フォグ濃度が濃くなっている。このように、図8では、α値(フォグ濃度)が仮想プレーン(画面)内で不均一になっている。
【0103】
図9は、通常テクスチャ記憶部178に記憶される通常(勾配)テクスチャの例である。この図9の通常テクスチャは元画像のα値をZ値に変換するための変換用データとして利用される。
【0104】
図10の左隅部分の画像は、元画像のZ値に応じて設定されるαP1に対して図9のむら模様(むら模様テクスチャ)を掛け合わせる(乗算する)ことで得られる画像の例である。また図11は、本実施形態により生成される最終的なフォグむら画像の例である。
【0105】
図11に示すように本実施形態によれば、視点(仮想カメラ)からの距離が遠くなるほど、フォグの濃度が濃くなっている。また、フォグの濃度にむらがあるため、あたかも本物のフォグがオブジェクト(キャラクタ)に掛かっているように見え、これまでにないリアルな画像の生成に成功している。
【0106】
さて、αむら設定用α値の仮想プレーンが1枚だけであると、ある奥行きにだけフォグむらが存在するかのように見えてしまい、今ひとつリアルなフォグを表現できない。
【0107】
そこで本実施形態では、図12に示すように、仮想カメラVCからの仮想距離d0、d1、d2が異なる複数の仮想プレーンPL0、PL1、PL2(2枚でもよいし、4枚以上でもよい)を仮想配置する。例えば図12では、仮想距離がd0であるPL0は、仮想カメラVCから見て最も手前側に仮想配置され、仮想距離がd2であるPL2は、VCから見て最も奥側に仮想配置されている。
【0108】
そして本実施形態では、これらの複数の仮想プレーンPL0、PL1、PL2に対応して、仮想プレーン内でのむら模様(nonuniformity pattern)が異なる複数のαむら設定用α値(αプレーン)αUP0〜αUP2を用意する。そして、これらの複数のαむら設定用α値αUP0〜αUP2を、仮想距離d0〜d2などに基づき得られるα値α0〜α2(合成率)を用いて合成することで、αむら設定用α値αUPを生成する。具体的には、仮想プレーンPL0〜PL2に対応するスプライトSP0〜SP2(広義には仮想オブジェクト)を配置し、これらのスプライトSP0〜SP2にαむら設定用α値αUP0〜αUP2のテクスチャをマッピングして、ワークバッファ上で複数回重ね描きする。これにより、むら模様が2層以上重なって見える画像を生成できるようになる。
【0109】
また本実施形態では図13(A)に示すように、仮想カメラVCが移動(前進)し、最も手前側の仮想プレーンPL0の仮想距離d0が所与の距離以下になると、PL0に対応するαむら設定用α値αUP0の合成率(ブレンド率)を低くし、徐々に消して行く。そして、仮想プレーンPL2の奥側に新たな仮想プレーンPLNを発生し、PLNに対応するαむら設定用α値αUPNの合成率を徐々に高くする。
【0110】
一方、図13(B)に示すように、仮想カメラVCが移動(後退)し、最も奥側の仮想プレーンPL2の仮想距離d2が所与の距離以上になると、PL2に対応するαUP2の合成率を低くし、徐々に消して行く。そして、PL0の手前側に新たな仮想プレーンPLNを発生し、PLNに対応するαUPNの合成率を徐々に高くする。
【0111】
図13(A)、(B)に示すような処理を行うことで、有限の枚数のαUP0〜αUP2の仮想プレーンを用いながらも、無限の枚数の仮想プレーンを用いた場合と同様の効果を得ることができる。
【0112】
また本実施形態では、仮想カメラ情報(仮想カメラの位置又は方向等)や時間情報(時間やフレームの経過を表す情報)に基づいて、αむら設定用α値の仮想プレーン内でのむら模様を変化させている。
【0113】
具体的には図14(A)に示すように、仮想カメラVCと仮想プレーンPL(PL0〜PL2)との仮想距離d(d0〜d2)が小さくなるほど、PLに対応するαUPのむら模様を拡大する。逆に、仮想距離dが遠くなるほど、αUPのむら模様を縮小する。
【0114】
このようにすれば、例えば図12において、仮想カメラVCからの仮想距離d0が近い仮想プレーンPL0のαUP0では、そのむら模様が大きくなり、仮想距離d2が遠い仮想プレーンPL2のαUP2では、そのむら模様が小さくなる。従って、むら模様に奥行き感や立体感を持たせることができ、よりリアルな画像を生成できる。
【0115】
また本実施形態では図14(B)に示すように、スクリーン(スクリーン座標系のXY平面)に平行な第1の方向(例えば上下左右のうちの左方向)に仮想カメラVCが移動した場合に、それとは逆の第2の方向(例えば右方向)に、αUP(αUP0〜αUP2)のむら模様を適正距離だけ移動させる。
【0116】
この場合に本実施形態では、むら模様の移動距離を、仮想プレーンPL(PL0〜PL2)の仮想距離d(d0〜d2)に応じて変化させている。具体的には図12において、短い仮想距離d0の仮想プレーンPL0のαUP0では、仮想カメラVCの移動に対するむら模様の移動距離を大きくし、遠い仮想距離d2の仮想プレーンPL2のαUP2では、仮想カメラVCの移動に対するむら模様の移動距離を小さくする。このようにすることで、平面の仮想プレーンを用いているのにもかかわらず、あたかも立体的なフォグが目の前にあるかのように見える画像を生成できる。
【0117】
図15に、フォグむらのエフェクト処理の具体例のフローチャートを示す。
【0118】
まず、当該フレームにおいて表示すべき背景、キャラクタなどのオブジェクトをフレームバッファ(広義には描画バッファ)に描画して、図7に示すような元画像を生成する(ステップS1)。そしてフォグむら処理を行うか否かを判断し(ステップS2)、行わない場合にはステップS12に移行する。
【0119】
フォグむら処理を行う場合には、フレームバッファと同サイズのテクスチャバッファ1(1テクセルのビット数が24ビットのバッファ)を確保する(ステップS3)。同様にフレームバッファの1/4サイズのテクスチャバッファ2(8ビット)と、フレームバッファの1/16サイズのテクスチャバッファ3(8ビット)を確保する(ステップS4、S5)。なお、このようにテクスチャバッファのサイズをフレームバッファのサイズよりも小さくするのは、メモリを節約すると共に処理時間を短縮化するためである。従ってメモリの容量や処理負荷に余裕がある場合には、フレームバッファと同サイズのテクスチャバッファを確保するようにしてもよい。
【0120】
次に、フレームバッファの元画像(図7)の色成分(RGBプレーン)をテクスチャバッファ1にコピーする(ステップS6)。またフレームバッファ(Zバッファ)のZ値成分(Zプレーン)を、1/4にサイズダウンしながらテクスチャバッファ2(間接テクスチャ記憶部)にコピーする(ステップS7)。
【0121】
次にテクスチャバッファ2(間接テクスチャ記憶部)に設定(記憶)された間接テクスチャ(元画像のZ値)と、予め用意された図9に示す通常(勾配)テクスチャとに基づき、図3〜図4(D)で説明した間接テクスチャマッピングを行い、Z値の深度に応じたα値αP1を得る(ステップS8)。具体的には、Z値が、仮想カメラ(視点)から見て手前側を表す値であるほどαP1が0(透明)に近づき、Z値が、仮想カメラから見て奥側を表す値であるほどαP1が1.0(不透明)に近づくように、元画像のZ値をα値αP1に変換する。これにより図6のC1に示す変換が行われる。
【0122】
次に、得られたαP1と、図8のむら模様(αむら設定用α値αUP)とを掛け合わせて(乗算して)、フレームバッファの1/16のサイズでレンダリングする(ステップS9)。これにより図6のC3に示す合成処理が行われ、図10の左隅部分に示されるような画像が生成される。
【0123】
次にステップS9でレンダリングされたむら模様(むら模様テクスチャ)のRGBプレーンのうちの1プレーンを、α値αP2としてテクスチャバッファ3にコピーする(ステップS10)。そしてテクスチャバッファ1の元画像の色と、フォグ色(広義には所与の色)とを、テクスチャバッファ3にコピーされたα値αP2で合成し、合成された色(RGB)をフレームバッファに描画して表示する(ステップS11)。これにより図11に示すようなフォグむらが表現された画像が生成されて、表示されるようになる。そして最後にゲームオーバー(フレーム更新)か否かを判断し、ゲームオーバーではない場合にはステップS1に戻り、次のフレームの処理に移行する。
【0124】
2.3 被写界深度のエフェクト処理
さて、従来の画像生成システムにより生成される画像は、人間の視界画像のように視点からの距離に応じてフォーカシングされた画像ではなかった。このため、画像内の全ての被写体にピントが合っているかのような表現になっていた。
【0125】
しかしながら、至近距離から遠距離までの全ての被写体にピントが合っている画像は、日常生活では見ることができない画像であるため、見た目に不自然さがあった。
【0126】
よりリアリティを追求するためには、視点とオブジェクトとの距離や視線方向などに応じてピントの度合いが調節された画像を生成することが望ましい。しかしながら、ゲーム空間内の個々のオブジェクトについて視点との距離等を計算し、各オブジェクト毎にぼやけ具合を演算することで、いわゆる被写界深度が表現された画像を生成すると、処理負荷が過大になる。
【0127】
そこで本実施形態では、図3〜図4(D)で説明した間接テクスチャマッピングを利用して、被写界深度が表現された画像の生成を行っている。
【0128】
即ち本実施形態では、仮想カメラからの距離パラメータであるZ値(奥行き距離)を、間接テクスチャマッピングを利用してα値に変換する。具体的には図3において、元画像のZ値を間接テクスチャ記憶部177に設定し、Z値をα値に変換するための変換用データを通常テクスチャ記憶部178に設定する。そして図4(B)で説明した間接テクスチャマッピングによる変換処理により、元画像のZ値を、Z値に応じてその値が変化するα値に変換する。即ちZ値が仮想カメラから見て手前側の値であるほどα値が0.0(透明)に近づき、Z値が仮想カメラから見て奥側の値であるほどα値が1.0(不透明)に近づくように、Z値をα値に変換する。
【0129】
このように間接テクスチャマッピングを利用した変換処理を行うことで、図16のF1に示すように、元画像の各ピクセルA、B、C、DのZ値ZA、ZB、ZC、ZDに応じた値に、各ピクセルのα値αA、αB、αC、αDを設定し、F2に示すようなαプレーンを生成する。より具体的には、仮想カメラ10の焦点(注視点)から遠いピクセル(焦点とのZ値の差が大きいピクセル)ほど、例えば大きなα値を設定する。これにより、仮想カメラ10の焦点から遠いピクセルほど、ぼかし画像の合成比率が高くなる。
【0130】
そして、図16のF3に示すように、生成されたαプレーン(各ピクセルに設定されたα値)に基づいて、図7に示す元画像と、元画像のぼかし画像とのα合成(上述の式(1)(2)(3)のαブレンディング等)を行う。
【0131】
このように、Z値(奥行き値)に応じて設定されたα値に基づき、元画像の各ピクセルの色と、ぼかし画像の各ピクセルの色とのα合成を行うことで、仮想カメラの焦点(ピントが合っている点として設定される点)から遠くなるほど、ぼけて見える画像を生成できるようになり、いわゆる被写界深度を表現できる。これにより、画面内の全ての被写体にピントが合っていた従来のゲーム画像とは異なり、現実世界の視界画像のように視点からの距離に応じてフォーカシングされたリアルで自然なゲーム画像を生成できる。
【0132】
図17に、被写界深度のエフェクト処理の具体例のフローチャートを示す。
【0133】
まず、当該フレームにおいて表示すべき背景、キャラクタなどのオブジェクトをフレームバッファに描画して、図7に示すような元画像を生成する(ステップS21)。そして被写界深度(ピンぼけ)処理を行うか否かを判断し(ステップS22)、行わない場合にはステップS34に移行する。
【0134】
被写界深度処理を行う場合には、フレームバッファと同サイズのテクスチャバッファ1(24ビット)を確保する(ステップS23)。同様にフレームバッファの1/16サイズのテクスチャバッファ2(24ビット)と、フレームバッファと同サイズのテクスチャバッファ3(8ビット)を確保する(ステップS24、S25)。
【0135】
次に、フレームバッファの元画像(図7)の色成分(RGBプレーン)をテクスチャバッファ1にコピーする(ステップS26)。またフレームバッファ(Zバッファ)のZ値成分(Zプレーン)を、1/4にサイズダウンしながらテクスチャバッファ3(間接テクスチャ記憶部)にコピーする(ステップS27)。またテクスチャバッファ1のテクスチャ(色成分)を1/4にサイズダウンしながらフレームバッファに描画する(ステップS28)。更にフレームバッファの色成分(RGB)を1/4にサイズダウンしながらテクスチャバッファ2にコピーする(ステップS29)。
【0136】
次にテクスチャバッファ3(間接テクスチャ記憶部)に設定された間接テクスチャ(元画像のZ値)と、予め用意された図9に示す通常(勾配)テクスチャとに基づき、図3〜図4(D)で説明した間接テクスチャマッピングを行い、Z値の深度に応じたα値αP1を得る(ステップS30)。即ち図16のF1、F2に示す変換を行って、図18に示すようなαP1のプレーンを得る。この図18のαP1のプレーンは、そのZ値が仮想カメラから見て手前側の値になるオブジェクト(例えばキャラクタ)ほど、αP1が0(透明)に近づき、そのZ値が仮想カメラから見て奥側の値になるオブジェクト(例えばビル)ほど、αP1が1.0(不透明)に近づくプレーンとなっている。
【0137】
次に、テクスチャバッファ2のテクスチャ(色成分)をバイリニア補間(広義にはテクセル補間)で16倍にサイズアップして、元画像のぼかし画像を生成する(ステップS31)。そして図16のF3で説明したように、テクスチャバッファ1の元画像(色)とぼかし画像(色)とを、図18のαP1でαブレンディング(広義にはα合成)して、合成画像をフレームバッファに描画して表示する(ステップS32)。これにより、図19に示すような被写界深度が表現された画像が表示されるようになる。そして最後にゲームオーバー(フレーム更新)か否かを判断し、ゲームオーバーではない場合にはステップS21に戻り、次のフレームの処理に移行する。
【0138】
なおステップS30で使用される通常テクスチャ(ramp texture)を時間経過などに応じて変化させることで、リアルタイムに被写界深度が変化したりピント位置が変化する画像を生成できる。
【0139】
2.4 ガンマ補正等の画像エフェクト
以上では、Z値をα値に変換するというように、間接テクスチャマッピングを利用して元画像のピクセルデータ(Z値)を異種のピクセルデータ(α値)に変換する例について説明した。しかしながら、間接テクスチャマッピングを利用して、元画像の色、α値、Z値、又は輝度などのピクセルデータを、各々、同種のピクセルデータである色、α値、Z値、又は輝度などに変換してもよい。
【0140】
より具体的には図3において、元画像の色(広義にはピクセルデータ)を、間接テクスチャ記憶部177に設定する。また元画像の色を変換するための変換用データを、通常テクスチャ記憶部178に設定する。そして間接テクスチャマッピングを利用した変換処理により、元画像の色を変換する。
【0141】
この場合の変換用データを用いた色の変換としては、ガンマ補正、ネガポジ反転、ポスタリゼーション、ソラリゼーション、或いは2値化などがある。図20(A)、(B)、図21(A)、(B)、(C)に、各々、ガンマ補正、ネガポジ反転、ポスタリゼーション、ソラリゼーション、2値化についての変換特性(ピクセルデータPDと変換後のピクセルデータCPDの関係を表す特性)を示す。
【0142】
図20(A)のガンマ補正は、モニタ(表示部)の非線形特性を補正するための変換処理である。図20(B)のネガポジ反転は、元画像の輝度(濃度)を反転させるものであり、例えばCPD=255−PDの関係式で表されるエフェクト処理である。
【0143】
図21(A)のポスタリゼーションは、多階調の画像をいくつかの階調に制限して表示するためのものであり、例えばCPD={INT(PD/VAL)}×VALの関係式で表されるエフェクト処理である。なおINT(R)はRの小数点を切り捨てて整数化する関数であり、VALは任意の値である。
【0144】
図21(B)のソラリゼーションは、ある点において入力値(PD)と出力値(CPD)の曲線関数の傾きが反転するエフェクト処理である。図21(C)の2値化は、画像のハイコントラスト効果を実現するエフェクト処理である。
【0145】
なお間接テクスチャマッピングを利用した本実施形態の変換処理によれば、図20(A)〜図21(C)に示すような画像エフェクト以外にも、例えばモノトーンフィルタやセピアフィルタなどの様々な画像エフェクトを実現できる。また例えば図20(A)〜図21(C)に示すような色の変換のみならず、α値、Z値、又は輝度などのピクセルデータを同種のピクセルデータに変換する処理を、間接テクスチャマッピングを利用して実現してもよい。
【0146】
図22に、ガンマ補正のエフェクト処理の具体例のフローチャートを示す。
【0147】
まず、当該フレームにおいて表示すべき背景、キャラクタなどのオブジェクトをフレームバッファに描画して、元画像を生成する(ステップS41)。そしてガンマ補正処理を行うか否かを判断し(ステップS42)、行わない場合にはステップS49に移行する。
【0148】
ガンマ補正処理を行う場合には、フレームバッファと同サイズのテクスチャバッファ1(24ビット)を確保する(ステップS43)。そしてフレームバッファの元画像の色成分(RGBプレーン)をテクスチャバッファ1(間接テクスチャ記憶部)にコピーする(ステップS44)。
【0149】
次にテクスチャバッファ1(間接テクスチャ記憶部)に設定された間接テクスチャのR(赤)成分と、図23の上段に示す通常(勾配)テクスチャとに基づき、図3〜図4(D)で説明した間接テクスチャマッピングを行い、元画像のR成分に応じたガンマ補正後のR成分を得る(ステップS45)。即ち図20(A)に示すような変換特性の変換処理を行う。
【0150】
次にテクスチャバッファ1に設定された間接テクスチャのG(緑)成分と、図23の中段に示す通常テクスチャとに基づき、間接テクスチャマッピングを行い、元画像のG成分に応じたガンマ補正後のG成分を得る(ステップS46)。同様に、テクスチャバッファ1に設定された間接テクスチャのB(青)成分と、図23の下段に示す通常テクスチャとに基づき、間接テクスチャマッピングを行い、元画像のB成分に応じたガンマ補正後のB成分を得る(ステップS47)。
【0151】
次にガンマ補正後のR、G、B成分をフレームバッファに描画して、表示する(ステップS48)。こにより、元画像にガンマ補正が施された画像が表示されるようになる。そして最後にゲームオーバー(フレーム更新)か否かを判断し、ゲームオーバーではない場合にはステップS41に戻り、次のフレームの処理に移行する。
【0152】
なお、R、G、B成分の間でガンマ補正のカーブが同じである場合には、図23の通常テクスチャとして同じ勾配(ramp)のテクスチャを用いることも可能である。
【0153】
2.5 ハレーションのエフェクト処理
本実施形態では、強い光が当たった部分(輝度の明るい部分)の回りを白くぼかして見せるハレーション(halation)の画像エフェクトについても、間接テクスチャマッピングを利用した変換処理により実現している。
【0154】
即ち本実施形態では、元画像の各ピクセルの輝度(RGBをYUVに変換した時のY成分)を、間接テクスチャマッピングを利用してα値に変換する。具体的には図3において、元画像の輝度を間接テクスチャ記憶部177に設定し、輝度をα値に変換するための変換用データを通常テクスチャ記憶部178に設定する。そして図4(B)で説明した間接テクスチャマッピングによる変換処理により、元画像の輝度を、輝度に応じてその値が変化するα値に変換する。即ち輝度が暗いほどα値が0.0(透明)に近づき、輝度が明るいほどα値が1.0(不透明)に近づくように、輝度をα値に変換する。
【0155】
このように間接テクスチャマッピングを利用した変換処理を行うことで、図24のG1に示すように、元画像の各ピクセルA、B、C、Dの輝度BRA、BRB、BRC、BRDに応じた値に、各ピクセルのα値αA、αB、αC、αDを設定し、G2に示すようなαプレーンを生成する。より具体的には、輝度が明るいピクセルほど、例えばα値を1.0に近づける。これにより、輝度が明るいピクセルほど、ぼかし画像の合成比率が高くなる。
【0156】
そして、図24のG3に示すように、生成されたαプレーン(各ピクセルに設定されたα値)に基づいて、図7に示す元画像と、元画像のぼかし画像とのα合成(上述の式(4)(5)(6)の加算αブレンディング等)を行う。なお加算αブレンディングを行うことにより、いわゆる「白飛び」を表現できる。
【0157】
このように、輝度に応じて設定されたα値に基づき元画像とぼかし画像のα合成を行うことで、例えば雲などの輝度が明るい部分(白い部分)の回りがぼやけた画像になるハレーション画像を生成できるようになり、現実のカメラで撮ったかのように見えるリアルな画像を生成できる。
【0158】
図25に、ハレーションのエフェクト処理の具体例のフローチャートを示す。
【0159】
まず、当該フレームにおいて表示すべき背景、キャラクタなどのオブジェクトをフレームバッファに描画して、図7に示すような元画像を生成する(ステップS51)。そしてハレーション処理を行うか否かを判断し(ステップS52)、行わない場合にはステップS63に移行する。
【0160】
ハレーション処理を行う場合には、フレームバッファと同サイズのテクスチャバッファ1(24ビット)を確保する(ステップS53)。同様にフレームバッファの1/64サイズのテクスチャバッファ2(24ビット)と、フレームバッファと同サイズのテクスチャバッファ3(8ビット)を確保する(ステップS54、S55)。
【0161】
次に、フレームバッファの元画像(図7)の色成分(RGBプレーン)をテクスチャバッファ1にコピーする(ステップS56)。またフレームバッファの元画像の輝度成分(Yプレーン)を、1/4にサイズダウンしながらテクスチャバッファ3(間接テクスチャ記憶部)にコピーする(ステップS57)。これにより図27の左隅部分に示す画像がテクスチャバッファ3にコピーされる。なお元画像の輝度成分としては、元画像のRGBをYUVに変換した時のY成分を採用できる。
【0162】
次にテクスチャバッファ3(間接テクスチャ記憶部)に設定された間接テクスチャ(元画像の輝度)と、予め用意された図26に示す通常(勾配)テクスチャとに基づき、図3〜図4(D)で説明した間接テクスチャマッピングを行い、元画像の輝度に応じたα値αP1を得る(ステップS58)。即ち図24のG1、G2に示す変換を行って、G3に示すαP1のプレーンを得る。このαP1のプレーンは、輝度が暗いオブジェクト(例えばキャラクタ)ほど、αP1が0(透明)に近づき、輝度が明るいオブジェクト(例えば雲)ほど、αP1が1(不透明)に近づくプレーンとなっている。
【0163】
次に、テクスチャバッファ1のテクスチャ(色成分)を1/64にサイズダウンしながら、αP1と掛け合わせて(αP1と乗算して)、フレームバッファに描画する(ステップS59)。そしてフレームバッファに描画された1/64サイズの画像の色成分をテクスチャバッファ2にコピーする(ステップS60)。またテクスチャバッファ1のテクスチャ(色成分)をフレームバッファに描画する(ステップS61)。
【0164】
次に、テクスチャバッファ2のテクスチャ(色成分)をバイリニア補間(テクセル補間)で64倍にサイズアップして、輝度の明るい部分が白くぼやけた画像を生成し、フレームバッファに加算αブレンディング(広義にはα合成)で描画して表示する(ステップS62)。これにより、図28に示すようなハレーションが表現された画像が表示されるようになる。即ち図28と図7の画像を比較すれば明らかなように、図28では雲などの白部分の画像の輪郭がぼやけた画像になり、ハレーションが表現される。そして最後にゲームオーバー(フレーム更新)か否かを判断し、ゲームオーバーではない場合にはステップS51に戻り、次のフレームの処理に移行する。
【0165】
なおステップ58で使用される通常テクスチャ(ramp texture)を時間経過などに応じて変化させることで、リアルタイムでピント位置が変化する画像を生成できる。
【0166】
3.ハードウェア構成
図29に本実施形態を実現できるハードウェア構成の例を示す。
【0167】
メインプロセッサ900は、CD982(情報記憶媒体)に格納されたプログラム、通信インターフェース990を介して転送されたプログラム、或いはROM950に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などを実行する。
【0168】
コプロセッサ902は、メインプロセッサ900の処理を補助するものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算(ベクトル演算)を高速に実行する。例えば、オブジェクトを移動させたり動作(モーション)させるための物理シミュレーションに、マトリクス演算などの処理が必要な場合には、メインプロセッサ900上で動作するプログラムが、その処理をコプロセッサ902に指示(依頼)する。
【0169】
ジオメトリプロセッサ904は、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算(ベクトル演算)を高速に実行する。例えば、座標変換、透視変換、光源計算などの処理を行う場合には、メインプロセッサ900で動作するプログラムが、その処理をジオメトリプロセッサ904に指示する。
【0170】
データ伸張プロセッサ906は、圧縮された画像データや音データのデコード(伸長)処理を行ったり、メインプロセッサ900のデコード処理をアクセレートする。これにより、オープニング画面、インターミッション画面、エンディング画面、或いはゲーム画面などにおいて、MPEG方式等で圧縮された動画像を表示できる。
【0171】
描画プロセッサ910は、ポリゴンや曲面などのプリミティブ面で構成されるオブジェクトの描画(レンダリング)処理を高速に実行する。オブジェクトの描画の際には、メインプロセッサ900は、DMAコントローラ970を利用して、描画データを描画プロセッサ910に渡すと共に、必要であればテクスチャ記憶部924にテクスチャを転送する。すると描画プロセッサ910は、描画データやテクスチャに基づいて、Zバッファなどを利用した隠面消去を行いながら、オブジェクトをフレームバッファ922に描画する。また描画プロセッサ910は、αブレンディング(半透明処理)、デプスキューイング、ミップマッピング、フォグ処理、バイリニア・フィルタリング、トライリニア・フィルタリング、アンチエリアシング、シェーディング処理なども行う。そして1フレーム分の画像がフレームバッファ922に書き込まれると、その画像はディスプレイ912に表示される。
【0172】
サウンドプロセッサ930は、多チャンネルのADPCM音源などを内蔵し、BGM、効果音、音声などのゲーム音を生成し、スピーカ932を介して出力する。ゲームコントローラ942からの操作データや、メモリカード944からのセーブデータ、個人データは、シリアルインターフェース940を介して入力される。
【0173】
ROM950にはシステムプログラムなどが格納される。業務用ゲームシステムの場合にはROM950が情報記憶媒体として機能し、ROM950に各種プログラムが格納されることになる。なおROM950の代わりにハードディスクを利用してもよい。RAM960は各種プロセッサの作業領域となる。DMAコントローラ970は、プロセッサ、メモリ(RAM、VRAM、ROM等)間でのDMA転送を制御する。CDドライブ980は、プログラム、画像データ、或いは音データなどが格納されるCD982にアクセスする処理を行う。
【0174】
通信インターフェース990は、ネットワークを介して外部との間でデータ転送を行う。通信インターフェース990に接続されるネットワークとしては、通信回線(アナログ電話回線、ISDN)、高速シリアルバスなどがある。
【0175】
なお本実施形態の各部(各手段)の処理は、その全てをハードウェアのみにより実現してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムのみにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。
【0176】
そして本実施形態の各部の処理をハードウェアとプログラムの両方により実現する場合には、情報記憶媒体には、ハードウェア(コンピュータ)を本実施形態の各部として機能させるためのプログラムが格納される。より具体的には、上記プログラムが、ハードウェアである各プロセッサ902、904、906、910、930等に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ902、904、906、910、930等は、その指示と渡されたデータとに基づいて本発明の各部の処理を実現する。
【0177】
図30(A)に業務用ゲームシステムへの本実施形態の適用例を示す。プレーヤは、ディスプレイ1100上に映し出されたゲーム画像を見ながら、操作部1102を操作してゲームを楽しむ。内蔵されるシステムボード1106にはプロセッサ、メモリなどが実装される。本実施形態の各部の処理を実現するためのプログラム(データ)は、システムボード1106上の情報記憶媒体であるメモリ1108に格納される。以下、このプログラムを格納プログラムと呼ぶ。
【0178】
図30(B)に家庭用ゲームシステムへの本実施形態の適用例を示す。この場合、上記格納プログラム(格納情報)は、本体システムに着脱自在な情報記憶媒体であるCD1206、或いはメモリカード1208、1209に格納される。
【0179】
図30(C)に、ホスト装置1300と、このホスト装置1300とネットワーク1302を介して接続される端末1304−1〜1304−n(ゲーム機、携帯電話)とを含むシステムへの本実施形態の適用例を示す。この場合、上記格納プログラムは、ホスト装置1300の情報記憶媒体1306(ハードディスク、磁気テープ装置等)に格納される。また本実施形態の各部の処理をホスト装置と端末の分散処理で実現してもよい。
【0180】
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。
【0181】
例えば、明細書又は図面中の記載において広義や同義な用語(描画バッファ、所与の色、テクセル補間、ピクセルデータ、α合成等)として引用された用語(フレームバッファ、フォグ色・ぼかし画像の色、バイリニア補間、色・α値・Z値・輝度、αブレンディング・加算αブレンディング等)は、明細書又は図面中の他の記載においても広義や同義な用語に置き換えることができる。
【0182】
また、本発明のうち従属請求項に係る発明においては、従属先の請求項の構成要件の一部を省略する構成とすることもできる。また、本発明の1の独立請求項に係る発明の要部を、他の独立請求項に従属させることもできる。
【0183】
また元画像のピクセルデータの変換処理も、本実施形態で説明したものに限定されず、これらと均等な種々の変換処理も本発明の範囲に含まれる。
【0184】
また、本発明は種々のゲーム(格闘ゲーム、競争ゲーム、シューティングゲーム、ロボット対戦ゲーム、スポーツゲーム、ロールプレイングゲーム等)に適用できる。
【0185】
また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード等の種々の画像生成システム(ゲームシステム)に適用できる。
【図面の簡単な説明】
【図1】本実施形態の画像生成システムの機能ブロック図の例である。
【図2】図2(A)(B)は間接テクスチャマッピングの説明図である。
【図3】間接テクスチャマッピングを利用したピクセルデータの変換処理の説明図である。
【図4】図4(A)〜(D)は、間接テクスチャマッピングを利用したピクセルデータの変換処理の説明図である。
【図5】元画像のZ値を変換することで得られたα値で元画像の色とフォグ色を合成する手法の説明図である。
【図6】フォグむら画像の生成手法の説明図である。
【図7】元画像の例である。
【図8】フォグのむら模様の例である。
【図9】フォグむら用の通常テクスチャ(変換用データ)の例である。
【図10】Z値に応じたα値に対してむら模様を掛け合わせることで得られる画像の例である。
【図11】本実施形態により生成されたフォグむら画像の例である。
【図12】仮想プレーン内でのむら模様が異なる複数のαむら設定用α値を合成する手法の説明図である。
【図13】図13(A)、(B)も、仮想プレーン内でのむら模様が異なる複数のαむら設定用α値を合成する手法の説明図である。
【図14】図14(A)、(B)は、仮想カメラ情報に基づいてむら模様を変化させる手法の説明図である。
【図15】フォグむらのエフェクト処理の具体例のフローチャートである。
【図16】Z値に応じて設定されたα値を用いて元画像とぼかし画像を合成し、被写界深度画像を生成する手法の説明図である。
【図17】被写界深度のエフェクト処理の具体例のフローチャートである。
【図18】変換により得られるαプレーンの例である。
【図19】本実施形態により生成された被写界深度画像の例である。
【図20】図20(A)(B)は、ガンマ補正、ネガポジ反転の変換特性の例である。
【図21】図21(A)(B)(C)は、ポスタリゼーション、ソラリゼーション、2値化の変換特性の例である。
【図22】ガンマ補正のエフェクト処理の具体例のフローチャートである。
【図23】ガンマ補正用の通常テクスチャ(変換用データ)の例である。
【図24】輝度に応じて設定されたα値を用いて元画像とぼかし画像を合成し、ハレーション画像を生成する手法の説明図である。
【図25】ハレーションのエフェクト処理の具体例のフローチャートである。
【図26】ハレーション用の通常テクスチャ(変換用データ)の例である。
【図27】元画像の輝度成分の例である。
【図28】本実施形態により生成されたハレーション画像の例である。
【図29】ハードウェア構成例である。
【図30】図30(A)(B)(C)は種々の形態のシステム例である。
【符号の説明】
100 処理部、110 オブジェクト空間設定部、
112 移動・動作処理部、114 仮想カメラ制御部、
120 画像生成部、122 隠面消去部、
123 テクスチャマッピング部、124 間接テクスチャ設定部、
125 通常テクスチャ設定部、126 α値合成部、127 色合成部、
130 音生成部、160 操作部、170 記憶部、
172 描画バッファ、174 Zバッファ、176 テクスチャ記憶部、
177 間接テクスチャ設定部、178 通常テクスチャ設定部、
180 情報記憶媒体、190 表示部、
192 音出力部、194 携帯型情報記憶装置、196 通信部

Claims (23)

  1. 画像生成を行う画像生成システムであって、
    間接テクスチャのテクセルデータを記憶する間接テクスチャ記憶部と、
    通常テクスチャのテクセルデータを記憶する通常テクスチャ記憶部と、
    描画対象ピクセルのテクスチャ座標で指定される間接テクスチャのテクセルデータを、前記間接テクスチャ記憶部から読み出し、読み出されたテクセルデータにより特定されるテクスチャ座標に基づいて、前記通常テクスチャ記憶部から通常テクスチャのテクセルデータを読み出し、読み出されたテクセルデータに基づいて、描画対象ピクセルの描画処理を行うテクスチャマッピング部と、
    元画像のピクセルデータを、間接テクスチャのテクセルデータとして前記間接テクスチャ記憶部に設定する間接テクスチャ設定部と、
    ピクセルデータを変換するための変換用データを、通常テクスチャのテクセルデータとして前記通常テクスチャ記憶部に設定する通常テクスチャ設定部とを含み、
    前記テクスチャマッピング部が、
    前記間接テクスチャ記憶部から読み出された元画像のピクセルデータにより特定されるテクスチャ座標に基づいて、前記通常テクスチャ記憶部から前記変換用データを読み出し、読み出された変換用データに基づいて描画対象ピクセルの描画処理を行うことで、元画像のピクセルデータの変換処理を行うことを特徴とする画像生成システム。
  2. 請求項1において、
    前記間接テクスチャ設定部が、
    元画像のZ値を、間接テクスチャのテクセルデータとして前記間接テクスチャ記憶部に設定し、
    前記通常テクスチャ設定部が、
    Z値をα値に変換するための変換用データを、通常テクスチャのテクセルデータとして前記通常テクスチャ記憶部に設定し、
    前記テクスチャマッピング部が、
    間接テクスチャマッピングによる前記変換処理により、元画像のZ値をα値に変換することを特徴とする画像生成システム。
  3. 請求項2において、
    元画像のZ値を前記変換処理により変換することで得られた第1のα値と、各ピクセルのα値が仮想プレーン内で不均一に設定されるαむら設定用α値とを合成して、第2のα値を生成するα値合成部と、
    元画像の各ピクセルの色と所与の色とを、前記第2のα値に基づいて合成する色合成部を含むことを特徴とする画像生成システム。
  4. 請求項3において、
    前記α値合成部が、
    仮想プレーン内でのむら模様が異なる複数のαむら設定用α値を合成して、前記第1のα値の合成対象となるαむら設定用α値を生成することを特徴とする画像生成システム。
  5. 請求項3又は4において、
    前記α値合成部が、
    仮想カメラ情報及び時間情報の少なくとも一方に応じて、αむら設定用α値の仮想プレーン内でのむら模様を変化させることを特徴とする画像生成システム。
  6. 請求項5において、
    前記α値合成部が、
    αむら設定用α値に対応する仮想プレーンについての仮想カメラからの仮想距離が小さくなるほど、αむら設定用α値のむら模様を拡大することを特徴とする画像生成システム。
  7. 請求項2乃至6のいずれかにおいて、
    元画像の各ピクセルの色と、元画像に基づき生成されたぼかし画像の各ピクセルの色とを、元画像のZ値を前記変換処理により変換することで得られたα値に基づいて合成する色合成部を含むことを特徴とする画像生成システム。
  8. 請求項1乃至7のいずれかにおいて、
    前記間接テクスチャ設定部が、
    元画像の色を、間接テクスチャのテクセルデータとして前記間接テクスチャ記憶部に設定し、
    前記通常テクスチャ設定部が、
    元画像の色を変換するための変換用データを、通常テクスチャのテクセルデータとして前記通常テクスチャ記憶部に設定し、
    前記テクスチャマッピング部が、
    間接テクスチャマッピングによる前記変換処理により、元画像の色を変換することを特徴とする画像生成システム。
  9. 請求項8において、
    変換用データを用いた元画像の色の変換が、ガンマ補正、ネガポジ反転、ポスタリゼーション、ソラリゼーション、2値化の変換の少なくとも1つであることを特徴とする画像生成システム。
  10. 請求項1乃至9のいずれかにおいて、
    前記間接テクスチャ設定部が、
    元画像の輝度を、間接テクスチャのテクセルデータとして前記間接テクスチャ記憶部に設定し、
    前記通常テクスチャ設定部が、
    元画像の輝度をα値に変換するための変換用データを、通常テクスチャのテクセルデータとして前記通常テクスチャ記憶部に設定し、
    前記テクスチャマッピング部が、
    間接テクスチャマッピングによる前記変換処理により、元画像の輝度をα値に変換することを特徴とする画像生成システム。
  11. 請求項10において、
    元画像の各ピクセルの色と、元画像に基づき生成されたぼかし画像の各ピクセルの色とを、元画像の輝度を前記変換処理により変換することで得られたα値に基づいて合成する色合成部を含むことを特徴とする画像生成システム。
  12. 画像を生成するためのプログラムであって、
    間接テクスチャのテクセルデータを記憶する間接テクスチャ記憶部と、
    通常テクスチャのテクセルデータを記憶する通常テクスチャ記憶部と、
    描画対象ピクセルのテクスチャ座標で指定される間接テクスチャのテクセルデータを、前記間接テクスチャ記憶部から読み出し、読み出されたテクセルデータにより特定されるテクスチャ座標に基づいて、前記通常テクスチャ記憶部から通常テクスチャのテクセルデータを読み出し、読み出されたテクセルデータに基づいて、描画対象ピクセルの描画処理を行うテクスチャマッピング部と、
    元画像のピクセルデータを、間接テクスチャのテクセルデータとして前記間接テクスチャ記憶部に設定する間接テクスチャ設定部と、
    ピクセルデータを変換するための変換用データを、通常テクスチャのテクセルデータとして前記通常テクスチャ記憶部に設定する通常テクスチャ設定部として、
    コンピュータを機能させ、
    前記テクスチャマッピング部が、
    前記間接テクスチャ記憶部から読み出された元画像のピクセルデータにより特定されるテクスチャ座標に基づいて、前記通常テクスチャ記憶部から前記変換用データを読み出し、読み出された変換用データに基づいて描画対象ピクセルの描画処理を行うことで、元画像のピクセルデータの変換処理を行うことを特徴とするプログラム。
  13. 請求項12において、
    前記間接テクスチャ設定部が、
    元画像のZ値を、間接テクスチャのテクセルデータとして前記間接テクスチャ記憶部に設定し、
    前記通常テクスチャ設定部が、
    Z値をα値に変換するための変換用データを、通常テクスチャのテクセルデータとして前記通常テクスチャ記憶部に設定し、
    前記テクスチャマッピング部が、
    間接テクスチャマッピングによる前記変換処理により、元画像のZ値をα値に変換することを特徴とするプログラム。
  14. 請求項13において、
    元画像のZ値を前記変換処理により変換することで得られた第1のα値と、各ピクセルのα値が仮想プレーン内で不均一に設定されるαむら設定用α値とを合成して、第2のα値を生成するα値合成部と、
    元画像の各ピクセルの色と所与の色とを、前記第2のα値に基づいて合成する色合成部として、
    コンピュータを機能させることを特徴とするプログラム。
  15. 請求項14において、
    前記α値合成部が、
    仮想プレーン内でのむら模様が異なる複数のαむら設定用α値を合成して、前記第1のα値の合成対象となるαむら設定用α値を生成することを特徴とするプログラム。
  16. 請求項14又は15において、
    前記α値合成部が、
    仮想カメラ情報及び時間情報の少なくとも一方に応じて、αむら設定用α値の仮想プレーン内でのむら模様を変化させることを特徴とするプログラム。
  17. 請求項16において、
    前記α値合成部が、
    αむら設定用α値に対応する仮想プレーンについての仮想カメラからの仮想距離が小さくなるほど、αむら設定用α値のむら模様を拡大することを特徴とするプログラム。
  18. 請求項13乃至17のいずれかにおいて、
    元画像の各ピクセルの色と、元画像に基づき生成されたぼかし画像の各ピクセルの色とを、元画像のZ値を前記変換処理により変換することで得られたα値に基づいて合成する色合成部として、
    コンピュータを機能させることを特徴とするプログラム。
  19. 請求項12乃至18のいずれかにおいて、
    前記間接テクスチャ設定部が、
    元画像の色を、間接テクスチャのテクセルデータとして前記間接テクスチャ記憶部に設定し、
    前記通常テクスチャ設定部が、
    元画像の色を変換するための変換用データを、通常テクスチャのテクセルデータとして前記通常テクスチャ記憶部に設定し、
    前記テクスチャマッピング部が、
    間接テクスチャマッピングによる前記変換処理により、元画像の色を変換することを特徴とするプログラム。
  20. 請求項19において、
    変換用データを用いた元画像の色の変換が、ガンマ補正、ネガポジ反転、ポスタリゼーション、ソラリゼーション、2値化の変換の少なくとも1つであることを特徴とするプログラム。
  21. 請求項12乃至20のいずれかにおいて、
    前記間接テクスチャ設定部が、
    元画像の輝度を、間接テクスチャのテクセルデータとして前記間接テクスチャ記憶部に設定し、
    前記通常テクスチャ設定部が、
    元画像の輝度をα値に変換するための変換用データを、通常テクスチャのテクセルデータとして前記通常テクスチャ記憶部に設定し、
    前記テクスチャマッピング部が、
    間接テクスチャマッピングによる前記変換処理により、元画像の輝度をα値に変換することを特徴とするプログラム。
  22. 請求項21において、
    元画像の各ピクセルの色と、元画像に基づき生成されたぼかし画像の各ピクセルの色とを、元画像の輝度を前記変換処理により変換することで得られたα値に基づいて合成する色合成部として機能させることを特徴とするプログラム。
  23. コンピュータ読み取り可能な情報記憶媒体であって、請求項12乃至22のいずれかのプログラムを記憶したことを特徴とする情報記憶媒体。
JP2003131575A 2003-05-09 2003-05-09 画像生成システム、プログラム及び情報記憶媒体 Withdrawn JP2004334661A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003131575A JP2004334661A (ja) 2003-05-09 2003-05-09 画像生成システム、プログラム及び情報記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003131575A JP2004334661A (ja) 2003-05-09 2003-05-09 画像生成システム、プログラム及び情報記憶媒体

Publications (1)

Publication Number Publication Date
JP2004334661A true JP2004334661A (ja) 2004-11-25

Family

ID=33506709

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003131575A Withdrawn JP2004334661A (ja) 2003-05-09 2003-05-09 画像生成システム、プログラム及び情報記憶媒体

Country Status (1)

Country Link
JP (1) JP2004334661A (ja)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007140842A (ja) * 2005-11-17 2007-06-07 Namco Bandai Games Inc プログラム、情報記憶媒体、及び画像生成システム
JP2007272356A (ja) * 2006-03-30 2007-10-18 Namco Bandai Games Inc プログラム、情報記憶媒体及び画像生成システム
JP2008242619A (ja) * 2007-03-26 2008-10-09 Samii Kk 画像生成装置および画像生成プログラム
JP2008257127A (ja) * 2007-04-09 2008-10-23 Toppan Printing Co Ltd 画像表示装置及び画像表示方法
JP2009500878A (ja) * 2005-04-11 2009-01-08 ヒューマンアイズ テクノロジーズ リミテッド 奥行錯覚デジタル撮像
JP2009015263A (ja) * 2007-07-09 2009-01-22 Nintendo Co Ltd 画像処理プログラムおよび画像処理装置
JP2009145941A (ja) * 2007-12-11 2009-07-02 Konami Digital Entertainment Co Ltd 画像処理装置、画像処理装置の制御方法及びプログラム
JP2010224733A (ja) * 2009-03-23 2010-10-07 Yamaha Corp レンダリング装置およびプログラム
JP2015172924A (ja) * 2014-02-18 2015-10-01 パナソニックIpマネジメント株式会社 画像処理装置及び画像処理方法
CN112316434A (zh) * 2020-11-16 2021-02-05 腾讯科技(深圳)有限公司 地形贴图的加载方法、装置、移动终端及存储介质
WO2022085479A1 (ja) * 2020-10-23 2022-04-28 ソニーセミコンダクタソリューションズ株式会社 情報処理装置、情報処理方法、及び、プログラム
JP2022524889A (ja) * 2019-09-11 2022-05-10 ▲騰▼▲訊▼科技(深▲セン▼)有限公司 画像レンダリング方法、装置、機器及びコンピュータプログラム

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009500878A (ja) * 2005-04-11 2009-01-08 ヒューマンアイズ テクノロジーズ リミテッド 奥行錯覚デジタル撮像
JP2007140842A (ja) * 2005-11-17 2007-06-07 Namco Bandai Games Inc プログラム、情報記憶媒体、及び画像生成システム
JP2007272356A (ja) * 2006-03-30 2007-10-18 Namco Bandai Games Inc プログラム、情報記憶媒体及び画像生成システム
JP2008242619A (ja) * 2007-03-26 2008-10-09 Samii Kk 画像生成装置および画像生成プログラム
JP2008257127A (ja) * 2007-04-09 2008-10-23 Toppan Printing Co Ltd 画像表示装置及び画像表示方法
US8421795B2 (en) 2007-07-09 2013-04-16 Nintendo Co., Ltd. Storage medium having image processing program stored thereon and image processing apparatus
JP2009015263A (ja) * 2007-07-09 2009-01-22 Nintendo Co Ltd 画像処理プログラムおよび画像処理装置
JP2009145941A (ja) * 2007-12-11 2009-07-02 Konami Digital Entertainment Co Ltd 画像処理装置、画像処理装置の制御方法及びプログラム
JP2010224733A (ja) * 2009-03-23 2010-10-07 Yamaha Corp レンダリング装置およびプログラム
JP2015172924A (ja) * 2014-02-18 2015-10-01 パナソニックIpマネジメント株式会社 画像処理装置及び画像処理方法
JP2022524889A (ja) * 2019-09-11 2022-05-10 ▲騰▼▲訊▼科技(深▲セン▼)有限公司 画像レンダリング方法、装置、機器及びコンピュータプログラム
JP7270760B2 (ja) 2019-09-11 2023-05-10 ▲騰▼▲訊▼科技(深▲セン▼)有限公司 画像レンダリング方法、装置、機器及びコンピュータプログラム
US11833424B2 (en) 2019-09-11 2023-12-05 Tencent Technology (Shenzhen) Company Limited Image rendering method and apparatus, device and storage medium
WO2022085479A1 (ja) * 2020-10-23 2022-04-28 ソニーセミコンダクタソリューションズ株式会社 情報処理装置、情報処理方法、及び、プログラム
CN112316434A (zh) * 2020-11-16 2021-02-05 腾讯科技(深圳)有限公司 地形贴图的加载方法、装置、移动终端及存储介质

Similar Documents

Publication Publication Date Title
JP2006318389A (ja) プログラム、情報記憶媒体、及び画像生成システム
JP4804120B2 (ja) プログラム、情報記憶媒体、及び画像生成システム
JP2004334661A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4187188B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4305903B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
WO2001055970A1 (fr) Systeme de jeux et procede de creation d'images
JP4223244B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP3449993B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2006252426A (ja) プログラム、情報記憶媒体及び画像生成システム
JP4159082B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2007272356A (ja) プログラム、情報記憶媒体及び画像生成システム
JP2006011539A (ja) プログラム、情報記憶媒体、及び画像生成システム
JP2001143099A (ja) 画像生成システム及び情報記憶媒体
JP3467259B2 (ja) ゲームシステム、プログラム及び情報記憶媒体
JP4656616B2 (ja) ゲームシステム、プログラム及び情報記憶媒体
JP4656617B2 (ja) ゲームシステム、プログラム及び情報記憶媒体
JP2007087425A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4704615B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4056035B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4913898B2 (ja) ゲームシステム、プログラム及び情報記憶媒体
GB2432499A (en) Image generation of objects distant from and near to a virtual camera
JP4476040B2 (ja) プログラム、情報記憶媒体、及び画像生成システム
JP2010033302A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2008077406A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2006277488A (ja) プログラム、情報記憶媒体及び画像生成システム

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20060801