(57)【要約】【課題】小さな処理負荷で画像における明るさを適切に表現することができる画像生成システム、プログラム及び情報記憶媒体を提供すること。【解決手段】画像の明るさを調整するための画像生成システムである。この画像生成システムは、画像を構成する画素の色に基づいて画像の明るさを検出する明るさ検出部１２４と、画像の明るさに応じた調整倍率を設定する調整倍率設定部１２６と、調整倍率に基づいて、画像を構成する画素の色を調整する色調整部１２８とを含み、調整倍率設定部１２６が、画像の明るさが第１のしきい値より暗い場合に、画素の色を明るくするように調整倍率を設定し、画像の明るさが第２のしきい値より明るい場合に、画素の色を暗くするように調整倍率を設定する。【選択図】図３
2010033302.tif 000002
【特許請求の範囲】
【請求項１】
画像の明るさを調整するためのプログラムであって、
前記画像を構成する画素の色に基づいて画像の明るさを検出する明るさ検出部と、
前記画像の明るさに応じた調整倍率を設定する調整倍率設定部と、
前記調整倍率に基づいて、前記画像を構成する画素の色を調整する色調整部としてコンピュータを機能させ、
前記調整倍率設定部が、
前記画像の明るさが第１のしきい値より暗い場合に、前記画素の色を明るくするように調整倍率を設定し、前記画像の明るさが第２のしきい値より明るい場合に、前記画素の色を暗くするように調整倍率を設定することを特徴とするプログラム。
【請求項２】
請求項１において、
前記明るさ検出部が、
前記画像の所定領域を構成する複数の画素を抽出して、当該複数の画素の色を補間することによって、当該所定領域を構成する各画素の色を補間した色に基づいて、前記画像の明るさを検出することを特徴とするプログラム。
【請求項３】
請求項１または２において、
前記画像が、３次元オブジェクトが配置されたオブジェクト空間を所与の視点から見た画像であって、
前記明るさ検出部が、
前記画像における前記視点の注視点を含む画像領域を前記所定領域として特定することを特徴とするプログラム。
【請求項４】
請求項１〜３のいずれかにおいて、
第１の範囲で画素の色を決定する描画部と、
所定の縮小倍率に基づいて、前記第１の範囲で決定された画素の色を前記第１の範囲よりも狭い第２の範囲の色に変換する色変換部としてコンピュータを更に機能させ、
前記色調整部は、
前記調整倍率と前記所定の縮小倍率に応じた所定の拡大倍率とに基づいて、前記第２の範囲に変換された画素の色を調整することを特徴とするプログラム。
【請求項５】
コンピュータにより読み取り可能な情報記憶媒体であって、請求項１〜４のいずれかに記載されたプログラムを記憶することを特徴とする情報記憶媒体。
【請求項６】
画像の明るさを調整するための画像生成システムであって、
前記画像を構成する画素の色に基づいて画像の明るさを検出する明るさ検出部と、
前記画像の明るさに応じた調整倍率を設定する調整倍率設定部と、
前記調整倍率に基づいて、前記画像を構成する画素の色を調整する色調整部とを含み、
前記調整倍率設定部が、
前記画像の明るさが第１のしきい値より暗い場合に、前記画素の色を明るくするように調整倍率を設定し、前記画像の明るさが第２のしきい値より明るい場合に、前記画素の色を暗くするように調整倍率を設定することを特徴とする画像生成システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像生成システム、プログラム及び情報記憶媒体に関する。
【背景技術】
【０００２】
従来より、仮想的な３次元空間であるオブジェクト空間において仮想カメラ（所与の視点）から見える画像を生成する画像生成システム（ゲームシステム）が知られており、いわゆる仮想現実を体験できるものとして人気が高い。格闘ゲームを楽しむことができる画像生成システムを例に取れば、プレーヤは、操作部（ゲームコントローラ等）を用いて移動体（キャラクタ等）に関する操作（攻撃操作、防御操作、移動操作等）を行い、他のプレーヤ（コンピュータプレーヤも含まれる）の移動体と格闘するゲームを楽しむ。
【０００３】
ところで、上述した画像生成システムには、ディスプレイで表示できる明るさ（ローダイナミックレンジ（ＬＤＲ）の明るさ）よりも明るい明るさ（ハイダイナミックレンジ（ＨＤＲ）の明るさ）の情報を記録できるようにしておき、ＨＤＲの明るさ情報の中で最も明るい情報に合わせて、ＨＤＲの明るさ情報に基づいてＬＤＲの画像を生成するものがある。
【０００４】
そしてこのような画像生成システムには、ＨＤＲの明るさ情報をＬＤＲの画像に変換することにより画素の階調が失われないように、ＨＤＲに固有の明るさの画素とＨＤＲに固有の明るさではない画素とで異なる変換式を用いるものがある（特許文献１参照）。
【特許文献１】特開２００６−３４５５０９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来の手法では、フレーム毎に各画素の明るさ情報を判定しなければならないため処理負荷が大きく、移動体や仮想カメラの移動頻度が多くフレーム毎の画像の計算量が多い画像生成システムには適用しにくいという問題があった。
【０００６】
本出願は上記事情に鑑みてなされたものであり、その目的は、小さな処理負荷で画像における明るさを適切に表現することができる画像生成システム、プログラム及び情報記憶媒体を提供することにある。
【課題を解決するための手段】
【０００７】
（１）本発明は、
画像の明るさを調整するための画像生成システムであって、
前記画像を構成する画素の色に基づいて画像の明るさを検出する明るさ検出部と、
前記画像の明るさに応じた調整倍率を設定する調整倍率設定部と、
前記調整倍率に基づいて、前記画像を構成する画素の色を調整する色調整部とを含み、
前記調整倍率設定部が、
前記画像の明るさが第１のしきい値より暗い場合に、前記画素の色を明るくするように調整倍率を設定し、前記画像の明るさが第２のしきい値より明るい場合に、前記画素の色を暗くするように調整倍率を設定することを特徴とする画像生成システムに関するものである。また本発明は、上記各部としてコンピュータを機能させるプログラム及びそのようなプログラムを記憶するコンピュータに読み取り可能な情報記憶媒体に関するものである。
【０００８】
本発明によれば、画像が全体として暗い画像である場合には、画像が明るくなるような調整倍率を設定し、画像が全体として明るい画像である場合には、画像が暗くなるような調整倍率を設定することができるので、幅広い範囲の明るさの画像を生成しつつ、画素毎の調整処理を必要とせずに小さな処理負荷で適切な明るさの画像に調整することができる。
【０００９】
（２）また本発明の画像生成システム、プログラム及び情報記憶媒体では、
前記明るさ検出部が、
前記画像の所定領域を構成する複数の画素を抽出して、当該複数の画素の色を補間することによって、当該所定領域を構成する各画素の色を補間した色に基づいて、前記画像の明るさを検出するようにしてもよい。
【００１０】
このようにすれば、画像の明るさを検出する際の処理負荷を小さくすることができ、より小さな処理負荷で適切な明るさの画像を生成することができる。
【００１１】
（３）また本発明の画像生成システム、プログラム及び情報記憶媒体では、
前記画像が、３次元オブジェクトが配置されたオブジェクト空間を所与の視点から見た画像であって、
前記明るさ検出部が、
前記画像における前記視点の注視点を含む画像領域を前記所定領域として特定するようにしてもよい。
【００１２】
このようにすれば、画像の中心付近の明るさに応じて調整倍率を設定することができ、画像の見やすさを損なわずに処理負荷をより小さくすることができる。
【００１３】
（４）また本発明の画像生成システム、プログラム及び情報記憶媒体では、
第１の範囲で画素の色を決定する描画部と、
所定の縮小倍率に基づいて、前記第１の範囲で決定された画素の色を前記第１の範囲よりも狭い第２の範囲の色に変換する色変換部とを含み、
前記色調整部は、
前記調整倍率と前記所定の縮小倍率に応じた所定の拡大倍率とに基づいて、前記第２の範囲に変換された画素の色を調整するようにしてもよい。
【００１４】
このようにすれば、より幅広い範囲の明るさの画像を生成しつつ、画素毎の調整処理を必要とせずに小さな処理負荷で適切な明るさの画像に調整することができる。
【発明を実施するための最良の形態】
【００１５】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【００１６】
１．構成
図１に本実施形態の画像生成システム（ゲームシステム）の機能ブロック図の例を示す。なお本実施形態の画像生成システムは図１の構成要素（各部）の一部を省略した構成としてもよい。
【００１７】
操作部１６０は、プレーヤがプレーヤオブジェクト（移動体オブジェクトの一例、プレーヤが操作するプレーヤキャラクタなど）の操作データを入力するためのものであり、その機能は、レバー、ボタン、ステアリング、マイク、タッチパネル型ディスプレイ、或いは筺体などにより実現できる。記憶部１７０は、処理部１００や通信部１９６などのワーク領域となるもので、その機能はＲＡＭ（メインメモリ１７２）、ＶＲＡＭ（ビデオメモリ１７４）などにより実現できる。
【００１８】
情報記憶媒体１８０（コンピュータにより読み取り可能な媒体）は、プログラムやデータなどを格納するものであり、その機能は、光ディスク（ＣＤ、ＤＶＤ）、光磁気ディスク（ＭＯ）、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ（ＲＯＭ）などにより実現できる。処理部１００は、情報記憶媒体１８０に格納されるプログラム（データ）に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体１８０には、本実施形態の各部としてコンピュータを機能させるためのプログラム（各部の処理をコンピュータに実行させるためのプログラム）が記憶される。
【００１９】
表示部１９０は、本実施形態により生成された画像を出力するものであり、その機能は、ＣＲＴ、ＬＣＤ、タッチパネル型ディスプレイ、或いはＨＭＤ（ヘッドマウントディスプレイ）などにより実現できる。音出力部１９２は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
【００２０】
携帯型情報記憶装置１９４は、プレーヤの個人データやゲームのセーブデータなどが記憶されるものであり、この携帯型情報記憶装置１９４としては、メモリカードや携帯型ゲーム装置などがある。通信部１９６は外部（例えばホスト装置や他の画像生成システム）との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ＡＳＩＣなどのハードウェアや、プログラムなどにより実現できる。
【００２１】
なお本実施形態の各部としてコンピュータを機能させるためのプログラム（データ）は、ホスト装置（サーバー）が有する情報記憶媒体からネットワーク及び通信部１９６を介して情報記憶媒体１８０（あるいは記憶部１７０のメインメモリ１７２）に配信してもよい。このようなホスト装置（サーバー）の情報記憶媒体の使用も本発明の範囲内に含めることができる。
【００２２】
処理部１００（プロセッサ）は、操作部１６０からの操作データやプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの処理を行う。ここでゲーム処理としては、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、キャラクタやマップなどのオブジェクトを配置する処理、オブジェクトを表示する処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。この処理部１００は記憶部１７０内のメインメモリ１７２をワーク領域として各種処理を行う。処理部１００の機能は各種プロセッサ（ＣＰＵ（メインプロセッサ）、ＧＰＵ（描画プロセッサ）、ＤＳＰ等）、ＡＳＩＣ（ゲートアレイ等）などのハードウェアや、プログラムにより実現できる。
【００２３】
処理部１００は、オブジェクト空間設定部１１０、移動・動作処理部１１２、仮想カメラ制御部１１４、描画部１２０、色変換部１２２、明るさ検出部１２４、調整倍率設定部１２６、色調整部１２８、音生成部１３０を含む。なおこれらの一部を省略する構成としてもよい。
【００２４】
オブジェクト空間設定部１１０は、オブジェクトデータ記憶部１７２に記憶されているオブジェクトデータに基づいて、キャラクタ、車、建物、樹木、柱、壁、コース（道路）、マップ（地形）などの表示物を表す各種オブジェクト（ポリゴン、自由曲面又はサブディビジョンサーフェスなどのプリミティブで構成されるオブジェクト）や、光が進行する方向や強さや色を示す光源をオブジェクト空間に配置設定する処理を行う。即ちワールド座標系でのオブジェクトの位置や回転角度（向き、方向と同義）を決定し、決定された位置（Ｘ、Ｙ、Ｚ）に決定された回転角度（Ｘ、Ｙ、Ｚ軸回りでの回転角度）でオブジェクトを配置する。
【００２５】
移動・動作処理部１１２は、オブジェクト（キャラクタ、車、又は飛行機等）の移動・動作演算（移動・動作シミュレーション）を行う。すなわち操作部１６０によりプレーヤが入力した操作データや、プログラム（移動・動作アルゴリズム）や、各種データ（モーションデータ）などに基づいて、オブジェクトをオブジェクト空間内で移動させたり、オブジェクトを動作（モーション、アニメーション）させる処理を行う。具体的には、オブジェクトの移動情報（位置、回転角度、速度、或いは加速度）や動作情報（オブジェクトを構成する各パーツの位置、或いは回転角度）を、１フレーム（１／６０秒）毎に順次求めるシミュレーション処理を行う。なおフレームは、オブジェクトの移動・動作処理（シミュレーション処理）や画像生成処理を行う時間の単位である。
【００２６】
仮想カメラ制御部１１４は、オブジェクト空間内の所与（任意）の視点から見える画像を生成するための仮想カメラ（視点）の制御処理を行う。具体的には、仮想カメラの位置（Ｘ、Ｙ、Ｚ）又は回転角度（Ｘ、Ｙ、Ｚ軸回りでの回転角度）を制御する処理（視点位置、視線方向あるいは画角を制御する処理）を行う。
【００２７】
例えば仮想カメラによりオブジェクト（例えばキャラクタ、車）を後方から撮影する場合には、オブジェクトの位置又は回転の変化に仮想カメラが追従するように、仮想カメラの位置又は回転角度（仮想カメラの向き）を制御する。この場合には、移動・動作処理部１１２で得られたオブジェクトの位置、回転角度又は速度などの情報（所定の制御情報の一例）に基づいて、仮想カメラを制御できる。或いは、仮想カメラを、予め決められた回転角度で回転させたり、予め決められた移動経路で移動させたりする制御を行ってもよい。この場合には、仮想カメラの位置（移動経路）又は回転角度を特定するための仮想カメラデータ（所定の制御情報の一例）に基づいて仮想カメラを制御する。なお、仮想カメラ（視点）が複数存在する場合には、それぞれの仮想カメラについて上記の制御処理が行われる。
【００２８】
描画部１２０は、処理部１００で行われる種々の処理（ゲーム処理）の結果に基づいて描画処理を行い、これにより画像を生成し、表示部１９０に出力する。いわゆる３次元ゲーム画像を生成する場合には、まずオブジェクト（モデル）の各頂点の頂点データ（頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等）を含むオブジェクトデータ（モデルデータ）がオブジェクトデータ記憶部１７２Ｂから入力され、入力されたオブジェクトデータに含まれる頂点データに基づいて、頂点処理（頂点シェーダによるシェーディング）が行われる。なお頂点処理を行うに際して、必要に応じてポリゴンを再分割するための頂点生成処理（テッセレーション、曲面分割、ポリゴン分割）を行うようにしてもよい。頂点処理では、頂点処理プログラム（頂点シェーダプログラム、第１のシェーダプログラム）に従って、頂点の移動処理や、座標変換（ワールド座標変換、カメラ座標変換）、クリッピング処理、あるいは透視変換等のジオメトリ処理が行われ、その処理結果に基づいて、オブジェクトを構成する頂点群について与えられた頂点データを変更（更新、調整）する。そして、頂点処理後の頂点データに基づいてラスタライズ（走査変換）が行われ、ポリゴン（プリミティブ）の面とピクセル（画素）とが対応づけられる。そしてラスタライズに続いて、画像を構成するピクセル（表示画面を構成するフラグメント）を描画するピクセル処理（ピクセルシェーダによるシェーディング、フラグメント処理）が行われる。ピクセル処理では、ピクセル処理プログラム（ピクセルシェーダプログラム、第２のシェーダプログラム）に従って、テクスチャの読出し（テクスチャマッピング）、色データの設定／変更、半透明合成、アンチエイリアス等の各種処理を行って、画像を構成するピクセルの最終的な描画色を決定し、透視変換されたオブジェクトの描画色をレンダリングターゲット（ピクセル単位で画像情報を記憶できるバッファ。メインメモリ１７２のフレームバッファ１７２Ｂ、ビデオメモリ１７４のワークバッファ１７４Ｃやフレームバッファ１７４Ｄ）に出力（描画）する。すなわち、ピクセル処理では、画像情報（色（色値、輝度値）、法線、α値等）をピクセル単位で設定あるいは変更するパーピクセル処理を行う。これにより、オブジェクト空間内において仮想カメラ（所与の視点）から見える画像が生成される。なお、仮想カメラ（視点）が複数存在する場合には、それぞれの仮想カメラから見える画像を分割画像として１画面に表示できるように画像を生成することができる。
【００２９】
なお頂点処理やピクセル処理は、シェーディング言語によって記述されたシェーダプログラムによって、ポリゴン（プリミティブ）の描画処理をプログラム可能にするハードウェア、いわゆるプログラマブルシェーダ（頂点シェーダやピクセルシェーダ）により実現される。プログラマブルシェーダでは、頂点単位の処理やピクセル単位の処理がプログラム可能になることで描画処理内容の自由度が高く、従来のハードウェアによる固定的な描画処理に比べて表現力を大幅に向上させることができる。
【００３０】
そして描画部１２０は、オブジェクトを描画する際に、ジオメトリ処理、テクスチャマッピング、隠面消去処理、αブレンディング等を行う。
【００３１】
ジオメトリ処理では、オブジェクトに対して、座標変換、クリッピング処理、透視投影変換、或いは光源計算等の処理が行われる。そして、ジオメトリ処理後（透視投影変換後）のオブジェクトデータ（オブジェクトの頂点の位置座標、テクスチャ座標、色データ（輝度データ）、法線ベクトル、或いはα値等）は、メインメモリ１７２のオブジェクトデータ記憶部１７２Ａに保存される。
【００３２】
テクスチャマッピングは、ビデオメモリ１７４のデカールテクスチャ記憶部１７４Ａに記憶されるデカールテクスチャ（テクセル値）をオブジェクトにマッピングするための処理である。具体的には、オブジェクトの頂点に設定（付与）されるテクスチャ座標等を用いてビデオメモリ１７４のデカールテクスチャ記憶部１７４Ａからテクスチャ（色（ＲＧＢ）、α値などの表面プロパティ）を読み出す。そして、２次元の画像であるテクスチャをオブジェクトにマッピングする。この場合に、ピクセルとテクセルとを対応づける処理や、テクセルの補間としてバイリニア補間、トライリニア補間などを行う。
【００３３】
隠面消去処理としては、描画ピクセルのＺ値（奥行き情報）が格納されるＺバッファ１７４Ｂ（奥行きバッファ）を用いたＺバッファ法（奥行き比較法、Ｚテスト）による隠面消去処理を行うことができる。すなわちオブジェクトのプリミティブに対応する描画ピクセルを描画する際に、Ｚバッファ１７４Ｂに格納されるＺ値を参照する。そして参照されたＺバッファのＺ値と、プリミティブの描画ピクセルでのＺ値とを比較し、描画ピクセルでのＺ値が、仮想カメラから見て手前側となるＺ値（例えば小さなＺ値）である場合には、その描画ピクセルの描画処理を行うとともにＺバッファ１７４ＢのＺ値を新たなＺ値に更新する。
【００３４】
αブレンディングとしては、α値（Ａ値）に基づく半透明合成処理（通常αブレンディング、加算αブレンディング又は減算αブレンディング等）を行う。例えば通常αブレンディングの場合には下式（１）〜（３）の処理を行う。
【００３５】
ＲＱ＝（１−α）×Ｒ１＋α×Ｒ２    （１）
ＧＱ＝（１−α）×Ｇ１＋α×Ｇ２    （２）
ＢＱ＝（１−α）×Ｂ１＋α×Ｂ２    （３）
また、加算αブレンディングの場合には下式（４）〜（６）の処理を行う。なお単純加算の場合はα＝１として下式（４）〜（６）の処理を行う。
【００３６】
ＲＱ＝Ｒ１＋α×Ｒ２                （４）
ＧＱ＝Ｇ１＋α×Ｇ２                （５）
ＢＱ＝Ｂ１＋α×Ｂ２                （６）
また、減算αブレンディングの場合には下式（７）〜（９）の処理を行う。なお単純減算の場合はα＝１として下式（７）〜（９）の処理を行う。
【００３７】
ＲＱ＝Ｒ１−α×Ｒ２                （７）
ＧＱ＝Ｇ１−α×Ｇ２                （８）
ＢＱ＝Ｂ１−α×Ｂ２                （９）
ここで、Ｒ１、Ｇ１、Ｂ１は、フレームバッファ１７２Ｂあるいはフレームバッファ１７４Ｄに既に描画されている画像（原画像）のＲＧＢ成分であり、Ｒ２、Ｇ２、Ｂ２は、フレームバッファ１７２Ｂあるいはフレームバッファ１７４Ｄに描画すべき画像のＲＧＢ成分である。また、ＲＱ、ＧＱ、ＢＱは、αブレンディングにより得られる画像のＲＧＢ成分である。なお、α値は、各ピクセル（テクセル、ドット）に関連づけて記憶できる情報であり、例えば色情報以外のプラスアルファの情報である。α値は、マスク情報、半透明度（透明度、不透明度と等価）、バンプ情報などとして使用できる。
【００３８】
そして描画部１２０は、表示部１９０が表示することができる色調範囲（ＬＤＲ、色が取り得る第２の範囲の一例）よりも広い色調範囲（ＨＤＲ、色が取り得る第１の範囲の一例）でピクセルの色を記録することができるようになっている。本実施形態では、描画部１２０が記録できる色調範囲が、表示部１９０が表示できる色調範囲の１．２倍（第２の範囲に対する第１の範囲の比の一例）となっており、詳細には表示部１９０が表示することができる色調範囲が、ＲＧＢの各輝度値が２５６階調（１６７７万７２１６色）となっているのに対し、描画部１２０が記録することができる色調範囲は、ＲＧＢの各輝度値が３０７階調（２８９３万４４４３色）となっている。特に本実施形態では、描画部１２０は、表示部１９０が表示することができる色調範囲よりも明るい色の色調範囲（輝度が高い色調範囲）を記録することができるようになっている。
【００３９】
色変換部１２２は、所定の縮小倍率に基づいて、第１の範囲で決定された画素の色を第１の範囲よりも狭い第２の範囲の色に変換する。本実施形態では色変換部１２２は、描画部１２０が記録した各画素のＲＧＢそれぞれの輝度値に、第２の範囲に対する第１の範囲の比の逆数である１／１．２（所定の縮小倍率の一例）を乗算して端数を切り捨てることにより、３０７階調の輝度値を２５６階調の輝度値に変換する。すなわち色変換部１２２は、ＨＤＲの輝度値をＬＤＲの輝度値に変換して、ＬＤＲの画像として出力（描画、コピー）する。
【００４０】
明るさ検出部１２４は、画像を構成する画素の色に基づいて画像の明るさを検出する。本実施形態では明るさ検出部１２４は、メインメモリ１７２のフレームバッファ１７２Ｂや、ビデオメモリ１７４のフレームバッファ１７４Ｄに出力（描画、コピー）されたフレーム画像の所定領域を構成する複数の画素を抽出して、当該複数の画素の色を補間することによって、当該所定領域を構成する各画素の色を補間した色に基づいて、画像の明るさを検出する。特に本実施形態では明るさ検出部１２４は、フレーム画像における視点の注視点を含む画像領域を所定領域として特定する。具体的には明るさ検出部１２４は、フレーム画像における視点の注視点を中心とした画像領域や、スクリーン座標系の中心を中心とした画像領域を所定領域として特定する。
【００４１】
調整倍率設定部１２６は、画像の明るさに応じた調整倍率を設定する。本実施形態では調整倍率設定部１２６が、フレーム画像の明るさが第１のしきい値より暗い場合に、画素の色を明るくするように調整倍率を設定し、フレーム画像の明るさが第２のしきい値より明るい場合に、画素の色を暗くするように調整倍率を設定する。
【００４２】
色調整部１２８は、前回フレームのフレーム画像の明るさに応じて設定された調整倍率に基づいて、今回フレームのフレーム画像を構成する画素の色を調整する。本実施形態では色調整部１２８は、前回フレームのフレーム画像の明るさに応じて設定された調整倍率と、所定の縮小倍率の逆数である１．２倍（所定の縮小倍率に応じた所定の拡大倍率）とを、ＬＤＲ画像を構成する画素のＲＧＢそれぞれの輝度値に乗算する。
【００４３】
音生成部１３０は、処理部１００で行われる種々の処理の結果に基づいて音処理を行い、ＢＧＭ、効果音、又は音声などのゲーム音を生成し、音出力部１９２に出力する。
【００４４】
なお、本実施形態の画像生成システムは、１人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、１つの端末を用いて生成してもよいし、ネットワーク（伝送ライン、通信回線）などで接続された複数の端末（ゲーム機、携帯電話）を用いて分散処理により生成してもよい。
【００４５】
２．本実施形態の手法
次に本実施形態の手法について図面を用いて説明する。本実施形態では、今回（第Ｎ回）フレームの画像の明るさが第１のしきい値より暗い場合に、次回（第Ｎ＋１回）フレームの画素の色を明るくするように調整倍率を設定し、今回フレームの画像の明るさが第２のしきい値より明るい場合に、次回フレームの画素の色を暗くするように調整倍率を設定する手法を採用している。これにより本実施形態では、暗い画像から明るい画像まで幅広い範囲の明るさの画像を生成しつつ、一定範囲の明るさの画像が多く表示されるように色を調整し、画像の色調を豊かなものにしつつ視認性が高い画像表現を実現している。
【００４６】
２−１．明るさ検出
図２は、今回フレームにおいてフレームバッファに描画された画像の明るさを検出する手法を説明するための図である。本実施形態では図２に示すように、まずフレームバッファの１２８０＊７２０ピクセルの画像のうち、その中心を中心とする６４０＊６４０ピクセルの画像が抽出される。すなわち仮想カメラの注視点を含む所定範囲の画像が抽出される。
【００４７】
そして、図２のａ１に示すように、６４０＊６４０ピクセルの画像において１０行１０列で隣り合う１００個のピクセルの輝度値（画素の色の一例）が補間されて１個のピクセルの輝度値とされることにより、６４０＊６４０ピクセルの画像が６４＊６４ピクセルの画像に縮小される。本実施形態では、隣り合う１００個のピクセルのＲＧＢそれぞれの輝度値の平均値が算出され、それぞれの平均値が１個のピクセルのＲＧＢそれぞれの輝度値とされることにより、解像度が１００分の１の画像に縮小される。
【００４８】
すると、図２のａ２に示すように、６４＊６４ピクセルの画像において２行２列で隣り合う４個のピクセルの輝度値が補間されて１個のピクセルの輝度値とされることにより、６４＊６４ピクセルの画像が３２＊３２ピクセルの画像に縮小される。本実施形態では、隣り合う４個のピクセルのＲＧＢそれぞれの輝度値の平均値が算出され、それぞれの平均値が１個のピクセルのＲＧＢそれぞれの輝度値とされることにより、解像度が４分の１の画像に縮小される。そして図２のａ３、ａ４、ａ５に示すように、図２のａ２と同様の処理が繰り返し行われることにより画像が順次４分の１に縮小され、最終的には図２のａ６に示すように、１＊１ピクセルのＲＧＢそれぞれの輝度値が算出される。
【００４９】
そして図２のａ７に示すように、１＊１ピクセルのグレースケール値Ａが、ＲＧＢそれぞれの人の目による見え方を考慮した重み付けにより、Ａ＝０．３Ｒ＋０．６Ｇ＋０．１Ｂとして算出され、このグレースケール値Ａが今回フレームにおいてフレームバッファに描画された画像の明るさＡとして検出される。なお、１＊１ピクセルのグレースケール値Ａが、Ａ＝（Ｒ＋Ｇ＋Ｂ）／３として算出されるようにしてもよい。
【００５０】
このように本実施形態では、フレームバッファの画像の中心付近の画像から画像の明るさが検出されるので、明るさを検出する処理の対象とする画像の範囲を狭くしつつも観者が注目する範囲の画像が処理対象とされる。さらに本実施形態では、まずはフレームバッファの画像の解像度が１００分の１に縮小されてから順次４分の１に縮小されてフレームバッファの画像の明るさＡが検出される。従って本実施形態では、明るさを検出する処理の負荷を小さくしつつも、フレームバッファの画像の明るさＡとして適切な値が検出されるようにすることができる。
【００５１】
２−２．調整倍率の算出
図３は、今回フレームのフレームバッファの画像の明るさと、次回フレームの画素の色の調整倍率との関係を表すグラフを示す図である。図３に示すグラフでは、横軸に今回フレームのフレームバッファの画像の明るさＡが表されており、縦軸に次回フレームの画素の色の調整倍率Ｂが表されている。
【００５２】
図３に示すように本実施形態では、明るさＡが０≦Ａ＜０．２である場合、すなわち今回フレームのフレームバッファの画像の明るさが相対的に最も暗い範囲である場合には、画素の色を明るく変化させる調整倍率であって最も高い調整倍率である２．０が調整倍率Ｂとして設定される。また、明るさＡが０．２≦Ａ＜０．５（第１のしきい値の一例）である場合、すなわち今回フレームのフレームバッファの画像の明るさが相対的にやや暗い範囲である場合には、画素の色を明るく変化させる調整倍率が、Ｂ＝−１０Ａ／３＋８／３のようにして求められ、調整倍率Ｂとして設定される。例えば明るさＡが、０．２≦Ａ＜０．５の中間点である０．３５である場合には、Ｂ＝１．５となり、画素の色を明るく変化させる調整倍率が調整倍率Ｂとして設定される。
【００５３】
そして本実施形態では、明るさＡが０．５≦Ａ＜０．７である場合、すなわち今回フレームのフレームバッファの画像の明るさが相対的にやや明るい範囲である場合には、画素の色を変化させない調整倍率である１．０が調整倍率Ｂとして設定される。
【００５４】
一方、明るさＡが０．７（第２のしきい値の一例）≦Ａ＜１．０である場合、すなわち今回フレームのフレームバッファの画像の明るさが相対的に最も明るい範囲である場合には、画素の色を暗く変化させる調整倍率が、Ｂ＝−Ａ＋１．７のようにして求められ、調整倍率Ｂとして設定される。例えば明るさＡが、０．７≦Ａ＜１．０の中間点である０．８５である場合には、Ｂ＝０．８５となり、画素の色を暗く変化させる調整倍率が調整倍率Ｂとして設定される。
【００５５】
このように本実施形態では、今回フレームの画像の明るさが第１のしきい値より暗い場合に、その暗さに応じて次回フレームの画素の色を明るくするように調整倍率が設定され、今回フレームの画像の明るさが第１のしきい値と第２のしきい値の間である場合に、次回フレームの画素の色を変化させない調整倍率が設定され、今回フレームの画像の明るさが第２のしきい値より明るい場合に、その明るさに応じて次回フレームの画素の色を暗くするように調整倍率が設定される。
【００５６】
特に本実施形態では、今回フレームの画像の明るさが暗いほどあるいは明るいほど変化率が大きな（１．０から離れた）調整倍率が設定される。従って本実施形態では、図４（Ａ）に示すように、今回フレームの画像の明るさが暗いほど（Ａ＝０．１７）、大きな変化率（Ｂ＝２．０）で次回フレームの画像が明るくなるように調整され、次回フレームの画像の明るさが相対的にやや明るい範囲の明るさ（０．５≦Ａ＜０．７）に近づくにつれ（Ａ＝０．３５）、少ない変化率（Ｂ＝１．５）で次々回フレームの画像が明るくなるように調整される。また図４（Ｂ）に示すように、今回フレームの画像の明るさが明るいほど（Ａ＝０．９）、大きな変化率（Ｂ＝０．８）で次回フレームの画像が暗くなるように調整され、次回フレームの画像の明るさが相対的にやや明るい範囲の明るさ（０．５≦Ａ＜０．７）に近づくにつれ（Ａ＝０．７２）、少ない変化率（Ｂ＝０．９８）で次々回フレームの画像が暗くなるように調整される。
【００５７】
こうして本実施形態では、複数回のフレームに渡ってフレームバッファの画像が一定範囲の明るさの画像に調整されることにより、現実の人間の目が暗さに慣れる暗順応や明るさに慣れる明順応を、小さな処理負荷で擬似的に表現することができる。これにより本実施形態では、暗い画像から明るい画像まで幅広い範囲の明るさの画像を生成しつつ、一定範囲の明るさの画像が多く表示されるように色を調整し、画像の色調を豊かなものにしつつ視認性が高い画像表現を実現している。
【００５８】
２−３．画像変換
本実施形態では、シェーダプログラムに従って、画像を構成するピクセルの描画色が決定されるが、表示部１９０が表示することができるＬＤＲ（ＲＧＢの各輝度値が２５６階調、１６７７万７２１６色）よりも広いＨＤＲ（ＲＧＢの各輝度値が３０７階調、２８９３万４４４３色）の輝度値によってピクセルの描画色が決定される。特に本実施形態では、ＨＤＲの輝度値が取り得る最大の明るさがＬＤＲの輝度値が取り得る最大の明るさの１．２倍となるように、ＨＤＲの輝度値によってピクセルの描画色が決定される。すなわち本実施形態では、ＨＤＲの輝度値のうち０〜２５５まではＬＤＲの輝度値の０〜２５５までと同一の明るさを示し、ＨＤＲの輝度値のうち２５６〜３０７まではＬＤＲの輝度値よりも明るい明るさを示すようになっている。これにより本実施形態では、ＬＤＲの輝度値よりも明るい輝度値が、ＲＧＢのそれぞれで５１階調、１２１５万７２２７色で記録されるので、光源からの直接光や反射光などによる輝きが反映された領域の色調が適切に記録されるようにすることができる。
【００５９】
しかし本実施形態の表示部１９０が表示することができる輝度値はＬＤＲの輝度値なので、最終的な描画色がフレームバッファに出力（描画）される際には、ＨＤＲの輝度値がＬＤＲの輝度値に変換される必要がある。そこで本実施形態では、ＬＤＲの輝度値よりも明るい輝度値の階調が保存されるようにするため、全てのピクセルに対応するＨＤＲの輝度値に、ＬＤＲに対するＨＤＲの比（１．２）の逆数である１．２分の１（所定の縮小倍率の一例）が乗算されることにより、ＨＤＲの輝度値がＬＤＲの輝度値に変換される。具体的には本実施形態では、図５のＢ１に示すように、描画部１２０が、ピクセルの描画色をまずはワークバッファに描画するが、全ての頂点データに（１／１．２，１／１．２，１／１．２）のカラーベクトルが設定された画面サイズのスプライトにピクセルの描画色を描画することにより、ＨＤＲの輝度値をＬＤＲの輝度値に変換する。
【００６０】
しかし、全てのピクセルに対応するＨＤＲの輝度値に１．２分の１が乗算されることによりＨＤＲの輝度値がＬＤＲの輝度値に変換されると、図６に示すように、画像の明るさが全体として暗くなってしまう。すなわち明るさが０．０〜１．２の範囲で記録されたＨＤＲの輝度値が、明るさが０．０〜１．０の範囲のＬＤＲの輝度値に変換されることにより、ＨＤＲの輝度値で１．０の明るさ（白）であったものが、ＬＤＲの輝度値では１．２分の１が乗算され０．８３３の明るさ（グレー）になってしまう。
【００６１】
そこで本実施形態では、ワークバッファの画像の全てのピクセルの輝度値に、ＬＤＲに対するＨＤＲの比である１．２（所定の拡大倍率の一例）が乗算されることにより、ワークバッファの画像がＬＤＲの輝度値の範囲内（０．０〜１．０）でＨＤＲの輝度値の明るさに戻るように変換される。ここで本実施形態では、かかる変換が行われる際に、前回フレームのフレームバッファの画像の明るさＡに応じて設定された調整倍率Ｂも、ワークバッファの画像の全てのピクセルの輝度値に乗算される。具体的には本実施形態では、図５のＢ２に示すように、描画部１２０が、ワークバッファに描画した画像をフレームバッファにコピーするようにしておき、その際に全ての頂点データに（１．２Ｂ，１．２Ｂ，１．２Ｂ）のカラーベクトルが設定された画面サイズのスプライトにピクセルの描画色を描画することにより、ワークバッファの画像をフレームバッファの画像に変換する。
【００６２】
図７（Ａ）〜（Ｅ）は、今回フレームのワークバッファの画像が今回フレームのフレームバッファの画像に変換される際の輝度値の対応関係が、前回フレームのフレームバッファの画像の明るさＡに応じて変化する様子を示す図である。図７（Ａ）の例では、前回フレームのフレームバッファの画像の明るさＡが最も暗い範囲に属する０．２であったため、調整倍率Ｂが２．０に設定され、フレームバッファの画像に変換する際の変換倍率１．２Ｂは２．４となる。ここでワークバッファの画像の輝度値に２．４が乗算されると、ワークバッファの画像の輝度値のうち０．０〜０．４２（≒１／２．４）にある範囲の輝度値の階調は保存されるが、０．４２よりも明るい範囲の輝度値の階調は１．０に変換されてしまうため階調は保存されない。
【００６３】
しかし今回フレームのワークバッファの画像の明るさは、前回フレームのフレームバッファの画像の明るさから大きく変化していることは希であり、今回フレームのワークバッファの画像も、前回フレームのフレームバッファの画像のようにおよそＡ＝０．２となるような暗いものとなることが多い。すなわち、前回フレームのフレームバッファの画像が暗い場合には、今回フレームのワークバッファの画像には相対的に明るい輝度値が設定されたピクセルは少ないことが多いため、０．４２よりも明るい範囲の輝度値の階調が失われたとしても大きな影響は発生しない。対してワークバッファの画像のうち、多くのピクセルに設定されていると考えられる０．０〜０．４２にある範囲の輝度値は、図７（Ａ）に示すように、その階調が保存されたまま今回フレームのフレームバッファの画像において０．０〜１．０の範囲の輝度値に変換されることにより、ＨＤＲの輝度値に戻されるとともに、暗順応したかのように観者が見やすい範囲の明るさの画像に調整される。
【００６４】
また図７（Ｂ）の例では、前回フレームのフレームバッファの画像の明るさＡがやや暗い範囲に属する０．３５であったため、調整倍率Ｂが１．５に設定され、フレームバッファの画像に変換する際の変換倍率１．２Ｂは１．８となる。ここでワークバッファの画像の輝度値に１．８が乗算されると、ワークバッファの画像の輝度値のうち０．０〜０．５５（≒１／１．８）にある範囲の輝度値の階調は保存されるが、０．５５よりも明るい範囲の輝度値の階調は１．０に変換されてしまうため階調は保存されない。
【００６５】
しかし今回フレームのワークバッファの画像も、前回フレームのフレームバッファの画像のようにおよそＡ＝０．３５となるようなやや暗いものとなることが多い。すなわち、今回フレームのワークバッファの画像には相対的に明るい輝度値が設定されたピクセルは少ないことが多いため、０．５５よりも明るい範囲の輝度値の階調が失われたとしても大きな影響は発生しない。対してワークバッファの画像のうち、多くのピクセルに設定されていると考えられる０．０〜０．５５にある範囲の輝度値は、図７（Ｂ）に示すように、その階調が保存されたまま今回フレームのフレームバッファの画像において０．０〜１．０の範囲の輝度値に変換されることにより、ＨＤＲの輝度値に戻されるとともに、暗順応したかのように観者が見やすい範囲の明るさの画像に調整される。
【００６６】
また図７（Ｃ）の例では、前回フレームのフレームバッファの画像の明るさＡがやや明るい範囲に属する０．６であったため、調整倍率Ｂが１．０に設定され、フレームバッファの画像に変換する際の変換倍率１．２Ｂは１．２となる。ここでワークバッファの画像の輝度値に１．２が乗算されると、ワークバッファの画像の輝度値のうち０．０〜０．８３（≒１／１．２）にある範囲の輝度値の階調は保存されるが、０．８３よりも明るい範囲の輝度値の階調は１．０に変換されてしまうため階調は保存されない。
【００６７】
しかし今回フレームのワークバッファの画像も、前回フレームのフレームバッファの画像のようにおよそＡ＝０．６となるようなやや明るいものとなることが多いため、０．８３よりも明るい範囲の輝度値の階調が失われたとしても大きな影響は発生しない。対してワークバッファの画像のうち、多くのピクセルに設定されていると考えられる０．０〜０．８３にある範囲の輝度値は、図７（Ｃ）に示すように、その階調が保存されたまま今回フレームのフレームバッファの画像において０．０〜１．０の範囲の輝度値に変換されることにより、ＨＤＲの輝度値に戻される。
【００６８】
また図７（Ｄ）の例では、前回フレームのフレームバッファの画像の明るさＡがかなり明るい範囲に属する０．８５であったため、調整倍率Ｂが０．８５に設定され、フレームバッファの画像に変換する際の変換倍率１．２Ｂは１．０２となる。ここでワークバッファの画像の輝度値に１．０２が乗算されると、ワークバッファの画像の輝度値のうち０．０〜０．９８（≒１／１．０２）にある範囲、すなわちほぼ全範囲の輝度値の階調が保存されたまま、今回フレームのフレームバッファの画像において０．０〜１．０の範囲の輝度値に変換されることにより、ＨＤＲの輝度値に戻されるとともに、明順応したかのように観者が見やすい範囲の明るさの画像に調整される。従って図７（Ｄ）の例では、ワークバッファの画像の輝度値のうち、ＨＤＲの１．０〜１．２の輝度値が変換された０．８３〜１．０までの階調がほぼ保存されるので、例えば色が白い部分と光により輝いている部分との違いなど、ＨＤＲの輝度値が反映された階調を表現することができる。
【００６９】
また図７（Ｅ）の例では、前回フレームのフレームバッファの画像の明るさＡが最も明るい１．０であったため、調整倍率Ｂが０．７に設定され、フレームバッファの画像に変換する際の変換倍率１．２Ｂは０．８４となる。ここでワークバッファの画像の輝度値に０．８４が乗算されると、ワークバッファの画像の輝度値の階調は圧縮されるが、ＨＤＲの輝度値に戻されるとともに、明順応したかのように観者が見やすい範囲の明るさの画像に調整される。従って図７（Ｅ）の例では、ワークバッファの画像の輝度値のうち、ＨＤＲの１．０〜１．２の輝度値が変換された０．８３〜１．０までの階調が圧縮されつつも保存されるので、ＨＤＲの輝度値が反映された階調を表現することができる。
【００７０】
このように本実施形態では、ＬＤＲの範囲内でＬＤＲの輝度値をＨＤＲの輝度値に戻す際に、ＬＤＲに対するＨＤＲの比である所定の拡大倍率（１．２）が乗算されるだけでなく、前回フレームのフレームバッファの画像の明るさＡに応じた調整倍率Ｂも同時に乗算される。これにより本実施形態では、ＬＤＲの輝度値に単に所定の拡大倍率を乗算した場合には、輝度値がＬＤＲの範囲を超えることにより失われる階調を、前回フレームのフレームバッファの画像の明るさＡに応じて適切な範囲で表現することができる。
【００７１】
３．本実施形態の処理
次に、本実施形態の処理の流れについてフローチャートを用いて説明する。図８は、フレーム毎に行われる処理の概略を示すフローチャートである。図８に示すように本実施形態では、まず、頂点シェーダ処理、ピクセルシェーダ処理を含むシェーダ処理が行われ、ピクセルの輝度値がＨＤＲで決定されると（ステップＳ１０）、ＨＤＲの輝度値が変換、調整されてフレーム画像が生成される（ステップＳ１２）。すると、生成されたフレーム画像に基づいて、次回フレーム用の調整倍率が演算される（ステップＳ１４）。
【００７２】
図９は、図８のステップＳ１２の画像変換処理の詳細を示すフローチャートである。図９に示すように画像変換処理では、まず、シェーダ処理によって決定されたＨＤＲの輝度値に所定の縮小倍率が乗算されながらワークバッファに画像が描画されることにより、ＨＤＲの輝度値がＬＤＲの輝度値に変換される（ステップＳ２０）。すると、ワークバッファの画像のＬＤＲの輝度値に所定の拡大倍率１．２と調整倍率Ｂとが乗算されながら、ワークバッファの画像がフレームバッファにコピーされることにより、フレーム画像が生成される（ステップＳ２２）。
【００７３】
図１０は、図８のステップＳ１４の次回フレーム用の調整倍率演算処理の詳細を示すフローチャートである。図１０に示すように調整倍率演算処理では、まず、フレームバッファの画像のうち中心付近の画像が抽出され（ステップＳ３０）、抽出された画像が１００分の１の画像に縮小される（ステップＳ３２）。そして１００分の１に縮小された画像が更に４分の１の画像に縮小される（ステップＳ３４）。そして画像が１ピクセルになっていない場合には（ステップＳ３６でＮ）、更に４分の１の画像に縮小され（ステップＳ３４）、画像が１ピクセルになった場合には（ステップＳ３６でＹ）、その１ピクセルの輝度値をグレースケールに変換し、フレームバッファの画像の明るさＡを求める（ステップＳ３８）。
【００７４】
そしてＡ＜０．２である場合には（ステップＳ４０でＹ）、Ｂ＝２．０として調整倍率Ｂが設定され（ステップＳ４２）、０．２≦Ａ＜０．５である場合には（ステップＳ４４でＹ）、Ｂ＝−１０Ａ／３＋８／３のようにして求められた調整倍率Ｂが設定され（ステップＳ４６）、０．５≦Ａ＜０．７である場合には（ステップＳ４８Ｙ）、Ｂ＝１．０として調整倍率Ｂが設定され（ステップＳ５０）、０．７≦Ａ＜1．０である場合には（ステップＳ５０でＮ）、Ｂ＝−Ａ＋１．７のようにして求められた調整倍率Ｂが設定される（ステップＳ５２）。
【００７５】
４．ハードウェア構成例
本実施形態の画像生成システムを実現するハードウェアの構成の一例について図１１を用いて説明する。なお図１１では、主要な構成のみを図示しており、図１１に示されていないハードウェア（メモリコントローラやスピーカなど）を必要に応じて設けることができる。
【００７６】
メインプロセッサ１０は、光ディスク７２（ＣＤ、ＤＶＤ、ブルーレイディスク等の情報記憶媒体）に格納されたプログラム、通信インターフェース８０を介して転送されたプログラム、或いはハードディスク６０に格納されたプログラムなどに基づき動作し、内部バスｂ４を介してアクセス可能なメインメモリ４０を作業領域（ワーク領域）としてゲーム処理、画像処理、音処理などの種々の処理を実行する。
【００７７】
メインプロセッサ１０は、１基のプロセッサ１２と複数のベクトルプロセッサ１４で構成される。プロセッサ１２は、ＯＳの実行、ハードウェアリソースの管理、ゲーム処理、ベクトルプロセッサ１４の動作管理などの種々の処理を実行する。またベクトルプロセッサ１４は、ベクトル演算に特化したプロセッサであり、主にジオメトリ処理、画像データや音データのコーデック処理などの処理を実行する。
【００７８】
描画プロセッサ２０は、内部バスｂ１（第１の内部バス）を介してビデオメモリ３０にアクセス可能に形成されている。また描画プロセッサ２０は、描画プロセッサ２０とメインプロセッサ１０を接続する内部バスｂ２（第２の内部バス）と、メインプロセッサ１０内部のバスｂ３と、メインプロセッサ１０とメインメモリ４０を接続する内部バスｂ４を介してメインメモリ４０にアクセス可能に形成されている。すなわち描画プロセッサ２０はビデオメモリ３０と、メインメモリ４０とをレンダリングターゲットとして利用することができる。
【００７９】
描画プロセッサ２０は、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算（ベクトル演算）を高速に実行する。例えば、座標変換、透視変換、光源計算などの処理を行う場合には、メインプロセッサ１０で動作するプログラムが、その処理を描画プロセッサ２０に指示する。
【００８０】
また描画プロセッサ２０は、ジオメトリ処理後のオブジェクト（ポリゴンや曲面などのプリミティブ面で構成されるオブジェクト）の画像のレンダリング処理を高速に実行するものである。マルチパスレンダリング処理の際には、描画プロセッサ２０は、描画データ（頂点データや他のパラメータ）等に基づいて、Ｚバッファ３４などを利用した陰面消去を行いながら、画像をビデオメモリ３０又はメインメモリ４０の一方のメモリにレンダリングする。そしてビデオメモリ３０又はメインメモリ４０の一方のメモリに記憶された画像に基づき他方のメモリに新たな画像をレンダリングする処理を必要なレンダリングパスの回数だけ行う。描画プロセッサ２０は、上記マルチパスレンダリング処理として、グレアフィルタ処理、モーションブラー処理、被写界深度処理、フォグ処理等のフィルタ処理を行うことができる。
【００８１】
そして、最後のレンダリングパスで画像がビデオメモリ３０に設けられたフレームバッファ３２にレンダリングされると、その画像をディスプレイ５０に出力する。また最後のレンダリングパスで画像がメインメモリ４０にレンダリングされた場合には当該画像をフレームバッファ３２にコピー（書き込み）した上でディスプレイ５０に出力する。
【００８２】
ハードディスク６０にはシステムプログラム、セーブデータ、個人データなどが格納される。
【００８３】
光学ドライブ７０は、プログラム、画像データ、或いは音データなどが格納される光ディスク７２（情報記憶媒体）を駆動し、これらのプログラム、データへのアクセスを可能にする。
【００８４】
通信インターフェース８０は、ネットワークを介して外部との間でデータ転送を行うためのインターフェースである。この場合に、通信インターフェース１７０に接続されるネットワークとしては、通信回線（アナログ電話回線、ＩＳＤＮ）、高速シリアルバスなどを考えることができる。そして、通信回線を利用することでインターネットを介したデータ転送が可能になる。また、高速シリアルバスを利用することで、他の画像生成システムとの間でのデータ転送が可能になる。
【００８５】
上述したように本実施形態の画像生成システム（コンピュータ）は、内部バスｂ１（第１の内部バス）を介してビデオメモリ３０にアクセス可能であるとともに、内部バスｂ２（第２の内部バス）を介してメインメモリ４０にアクセス可能である描画プロセッサ２０を含んで構成されており、描画プロセッサ２０は、光ディスク７２（情報記憶媒体の一例）あるいはハードディスク６０（情報記憶媒体の一例）に格納されているシェーダプログラムに従って種々のシェーダ処理を実行する。
【００８６】
なお、本実施形態の各部（各手段）は、その全てを、ハードウェアのみにより実現してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムのみにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。
【００８７】
そして、本実施形態の各部をハードウェアとプログラムの両方により実現する場合には、情報記憶媒体には、ハードウェア（コンピュータ）を本実施形態の各部として機能させるためのプログラムが格納されることになる。より具体的には、上記プログラムが、ハードウェアである各プロセッサ１０、２０等に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ１０、２０等は、その指示と渡されたデータとに基づいて、本発明の各部を実現することになる。
【００８８】
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。例えば、明細書又は図面中の記載において広義や同義な用語として引用された用語は、明細書又は図面中の他の記載においても広義や同義な用語に置き換えることができる。またグレアフィルタの手法は、本実施形態で説明したものに限定されず、これらと均等な手法も本発明の範囲に含まれる。
【００８９】
また本発明は種々のゲーム（格闘ゲーム、シューティングゲーム、ロボット対戦ゲーム、スポーツゲーム、競争ゲーム、ロールプレイングゲーム、音楽演奏ゲーム、ダンスゲーム等）に適用できる。また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード、携帯電話等の種々の画像生成システムに適用できる。
【００９０】
また上記実施形態では、図５に示したように、ワークバッファの画像の全てのピクセルの輝度値に、ＬＤＲに対するＨＤＲの比である１．２と、前回フレームのフレームバッファの画像の明るさＡに応じて設定された調整倍率Ｂとが、同時に乗算される例を挙げて説明したが、図１２に示すように、ワークバッファの画像の全てのピクセルの輝度値に、ＬＤＲに対するＨＤＲの比である１．２が乗算されてから、その結果に対して前回フレームのフレームバッファの画像の明るさＡに応じて設定された調整倍率Ｂが乗算されるようにしてもよい。
【図面の簡単な説明】
【００９１】
【図１】本実施形態の画像生成システムの機能ブロック図。
【図２】本実施形態の画像の明るさを検出する手法の説明図。
【図３】本実施形態の画像の調整倍率を決定する手法の説明図。
【図４】本実施形態の画像調整手法の説明図。
【図５】本実施形態の画像調整手法の説明図。
【図６】本実施形態の画像変換手法の説明図。
【図７Ａ】本実施形態の画像調整手法の説明図。
【図７Ｂ】本実施形態の画像調整手法の説明図。
【図７Ｃ】本実施形態の画像調整手法の説明図。
【図７Ｄ】本実施形態の画像調整手法の説明図。
【図８】本実施形態の処理の流れを示すフローチャート。
【図９】本実施形態の処理の流れを示すフローチャート。
【図１０】本実施形態の処理の流れを示すフローチャート。
【図１１】本実施形態の画像生成システムのハードウェア構成例。
【図１２】変形実施形態の画像調整手法の説明図。
【符号の説明】
【００９２】
１００  処理部、１１０  オブジェクト空間設定部、１１２  移動・動作処理部、
１１４  仮想カメラ制御部、１２０  描画部、１２２  色変換部、
１２４  明るさ検出部、１２６  調整倍率設定部、１２８  色調整部、
１３０  音生成部、１６０  操作部、１７０  記憶部、１７２  メインメモリ、
１７２Ａ  オブジェクトデータ記憶部、１７２Ｂ  フレームバッファ、
１７４  ビデオメモリ、１７４Ａ  デカールテクスチャ記憶部、１７４Ｂ  Ｚバッファ、
１７４Ｃ  ワークバッファ、１７４Ｄ  フレームバッファ、
１８０  情報記憶媒体、１９０  表示部、１９２  音出力部、
１９４  携帯型情報記憶装置、１９６  通信部
【図１】
2010033302.tif 000003
【図２】
2010033302.tif 000004
【図３】
2010033302.tif 000005
【図４】
2010033302.tif 000006
【図５】
2010033302.tif 000007
【図６】
2010033302.tif 000008
【図７Ａ】
2010033302.tif 000009
【図７Ｂ】
2010033302.tif 000010
【図７Ｃ】
2010033302.tif 000011
【図７Ｄ】
2010033302.tif 000012
【図８】
2010033302.tif 000013
【図９】
2010033302.tif 000014
【図１０】
2010033302.tif 000015
【図１１】
2010033302.tif 000016
【図１２】
2010033302.tif 000017