(57)【特許請求の範囲】
【請求項１】
画像生成のためのプログラムであって、
各ぼかし濃度テーブルが、描画対象範囲内の各位置における各ぼかし濃度値を記憶し、同じ大きさの前記描画対象範囲を有する複数のぼかし濃度テーブルが格納される記憶部と、
前記複数のぼかし濃度テーブルの中から、元画像の処理対象ピクセルの奥行き値に応じたぼかし濃度テーブルを選択するテーブル選択部と、
処理対象ピクセルを濃度分布中心とする前記描画対象範囲内の各位置のピクセルに対して、選択された前記ぼかし濃度テーブルから読み出されたぼかし濃度値と元画像の処理対象ピクセルのピクセル値とにより得られるぼかしピクセル値を描画することで、元画像のぼかし画像を生成するぼかし画像生成部として、
コンピュータを機能させることを特徴とするプログラム。
【請求項２】
請求項１において、
前記ぼかし濃度テーブルは、
描画対象範囲内の各位置Ｐｍｎ（ｍ、ｎ、Ｍ、Ｎは、１≦ｍ≦Ｍ、１≦ｎ≦Ｎを満たす自然数）における各ぼかし濃度値Ａｍｎを記憶し、
前記ぼかし画像生成部は、
処理対象ピクセルを濃度分布中心とする描画対象範囲内の各位置Ｐｍｎのピクセルに対して、ぼかし濃度値Ａｍｎと処理対象ピクセルのピクセル値とにより得られるぼかしピクセル値を描画する処理を、元画像の全ての処理対象ピクセルに対して行うことで、元画像のぼかし画像を生成することを特徴とするプログラム。
【請求項３】
請求項１又は２において、
奥行き値を格納するＺバッファを用いて隠面消去を行いながらオブジェクトを描画することで、第１の描画バッファに元画像を生成する元画像生成部として、
コンピュータを機能させ、
前記テーブル選択部は、
前記Ｚバッファに格納された元画像の処理対象ピクセルの奥行き値に応じたぼかし濃度テーブルを選択し、
前記ぼかし画像生成部は、
選択された前記ぼかし濃度テーブルからのぼかし濃度値と前記第１の描画バッファに格納された元画像のピクセル値とにより得られるぼかしピクセル値を、第２の描画バッファに描画することで、前記第２の描画バッファに元画像のぼかし画像を生成することを特徴とするプログラム。
【請求項４】
請求項１乃至３のいずれかにおいて、
前記テーブル選択部は、
前記複数のぼかし濃度テーブルの中から、処理対象ピクセルの奥行き値に応じたぼかし濃度テーブルであって同じ大きさの前記描画対象範囲を有する第１、第２のぼかし濃度テーブルを選択し、
前記ぼかし画像生成部は、
選択された前記第１、第２のぼかし濃度テーブルから読み出された第１、第２のぼかし濃度値を補間し、補間後のぼかし濃度値と元画像の処理対象ピクセルのピクセル値とにより得られるぼかしピクセル値を描画することを特徴とするプログラム。
【請求項５】
画像生成のためのプログラムであって、
描画対象範囲内の各位置における各ぼかし閾値を記憶するぼかし閾値判断テーブルが格納される記憶部と、
元画像の処理対象ピクセルの奥行き値に応じたぼかし値、ぼかし濃度値を取得する取得部と、
処理対象ピクセルを分布中心とする前記描画対象範囲内の各位置のピクセルについて、取得されたぼかし値と前記ぼかし閾値判断テーブルに記憶されるぼかし閾値とを比較し、ぼかし値とぼかし閾値との比較によりぼかし処理の対象と判断されたピクセルに対して、取得されたぼかし濃度値と元画像の処理対象ピクセルのピクセル値とにより得られるぼかしピクセル値を描画することで、元画像のぼかし画像を生成するぼかし画像生成部として、
コンピュータを機能させることを特徴とするプログラム。
【請求項６】
請求項５において、
前記ぼかし閾値判断テーブルは、
描画対象範囲内の各位置Ｐｍｎ（ｍ、ｎ、Ｍ、Ｎは、１≦ｍ≦Ｍ、１≦ｎ≦Ｎを満たす自然数）における各ぼかし閾値ＢＴｍｎを記憶し、
前記ぼかし画像生成部は、
処理対象ピクセルを分布中心とする描画対象範囲内の各位置Ｐｍｎのピクセルのうち、ぼかし値とぼかし閾値ＢＴｍｎとの比較によりぼかし処理の対象と判断されたピクセルに対して、取得されたぼかし濃度値と処理対象ピクセルのピクセル値とにより得られるぼかしピクセル値を描画する処理を、元画像の全ての処理対象ピクセルに対して行うことで、元画像のぼかし画像を生成することを特徴とするプログラム。
【請求項７】
請求項５又は６において、
奥行き値を格納するＺバッファを用いて隠面消去を行いながらオブジェクトを描画することで、第１の描画バッファに元画像を生成する元画像生成部として、
コンピュータを機能させ、
前記取得部は、
前記Ｚバッファに格納された元画像の奥行き値に応じたぼかし値、ぼかし濃度値を取得し、
前記ぼかし画像生成部は、
取得されたぼかし濃度値と前記第１の描画バッファに格納された元画像のピクセル値とにより得られるぼかしピクセル値を、第２の描画バッファに描画することで、前記第２の描画バッファに元画像のぼかし画像を生成することを特徴とするプログラム。
【請求項８】
コンピュータ読み取り可能な情報記憶媒体であって、請求項１乃至７のいずれかに記載のプログラムを記憶したことを特徴とする情報記憶媒体。
【請求項９】
画像を生成する画像生成システムであって、
各ぼかし濃度テーブルが、描画対象範囲内の各位置における各ぼかし濃度値を記憶し、同じ大きさの前記描画対象範囲を有する複数のぼかし濃度テーブルが格納される記憶部と、
前記複数のぼかし濃度テーブルの中から、元画像の処理対象ピクセルの奥行き値に応じたぼかし濃度テーブルを選択するテーブル選択部と、
処理対象ピクセルを濃度分布中心とする前記描画対象範囲内の各位置のピクセルに対して、選択された前記ぼかし濃度テーブルから読み出されたぼかし濃度値と元画像の処理対象ピクセルのピクセル値とにより得られるぼかしピクセル値を描画することで、元画像のぼかし画像を生成するぼかし画像生成部と、
を含むことを特徴とする画像生成システム。
【請求項１０】
請求項９において、
前記テーブル選択部は、
前記複数のぼかし濃度テーブルの中から、処理対象ピクセルの奥行き値に応じたぼかし濃度テーブルであって同じ大きさの前記描画対象範囲を有する第１、第２のぼかし濃度テーブルを選択し、
前記ぼかし画像生成部は、
選択された前記第１、第２のぼかし濃度テーブルから読み出された第１、第２のぼかし濃度値を補間し、補間後のぼかし濃度値と元画像の処理対象ピクセルのピクセル値とにより得られるぼかしピクセル値を描画することを特徴とする画像生成システム。
【請求項１１】
画像を生成する画像生成システムであって、
描画対象範囲内の各位置における各ぼかし閾値を記憶するぼかし閾値判断テーブルが格納される記憶部と、
元画像の処理対象ピクセルの奥行き値に応じたぼかし値、ぼかし濃度値を取得する取得部と、
処理対象ピクセルを分布中心とする前記描画対象範囲内の各位置のピクセルについて、取得されたぼかし値と前記ぼかし閾値判断テーブルに記憶されるぼかし閾値とを比較し、ぼかし値とぼかし閾値との比較によりぼかし処理の対象と判断されたピクセルに対して、取得されたぼかし濃度値と元画像の処理対象ピクセルのピクセル値とにより得られるぼかしピクセル値を描画することで、元画像のぼかし画像を生成するぼかし画像生成部と、
を含むことを特徴とする画像生成システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム、情報記憶媒体及び画像生成システムに関する。
【背景技術】
【０００２】
従来より、キャラクタ、車などのオブジェクトが配置設定されるオブジェクト空間内（仮想的な３次元空間）において仮想カメラ（所与の視点）から見える画像を生成する画像生成システム（ゲーム装置）が知られており、いわゆる仮想現実を体験できるものとして人気が高い。レースゲームを楽しむことができる画像生成システムを例にとれば、プレーヤは、ゲームコントローラなどの操作部を用いて自車を操作し、他のプレーヤが操作する他車と競争することでゲームを楽しむ。
【０００３】
このような画像生成システムでは、プレーヤの仮想現実感を向上するために、よりリアルな画像を生成することが望まれている。このため、焦点からずれた部分がぼけて見える被写界深度についても、リアルに画像表現できることが望ましい。
【特許文献１】特開平２００１−１７５８８４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、少ない処理負荷で被写界深度の画像表現を実現できるプログラム、情報記憶媒体及び画像生成システムを提供することにある。
【課題を解決するための手段】
【０００５】
本発明は、画像を生成する画像生成システムであって、各ぼかし濃度テーブルが、描画対象範囲内の各位置における各ぼかし濃度値を記憶する複数のぼかし濃度テーブルが格納される記憶部と、前記複数のぼかし濃度テーブルの中から、元画像の処理対象ピクセルの奥行き値に応じたぼかし濃度テーブルを選択するテーブル選択部と、処理対象ピクセルとその周囲のピクセルのうち、前記描画対象範囲内の各位置のピクセルに対して、選択された前記ぼかし濃度テーブルから読み出されたぼかし濃度値と元画像の処理対象ピクセルのピクセル値とにより得られるぼかしピクセル値を描画することで、元画像のぼかし画像を生成するぼかし画像生成部とを含む画像生成システムに関係する。また本発明は、上記各部としてコンピュータを機能させるプログラム、又は該プログラムを記憶したコンピュータ読み取り可能な情報記憶媒体に関係する。
【０００６】
本発明によれば、複数のぼかし濃度テーブルの中から、元画像の奥行き値に応じたぼかし濃度テーブルが選択される。そして描画対象範囲内のピクセルに対して、選択されたぼかし濃度テーブルからのぼかし濃度値と元画像のピクセル値とにより得られるぼかしピクセル値が描画されて、ぼかし画像が生成される。このようにすれば、ぼかし範囲の大きさを計算する処理を省略できるため、ぼかし処理の負荷を軽減できる。従って、少ない処理負荷で被写界深度の画像表現を実現できる。
【０００７】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記ぼかし濃度テーブルは、描画対象範囲内の各位置Ｐｍｎ（ｍ、ｎ、Ｍ、Ｎは、１≦ｍ≦Ｍ、１≦ｎ≦Ｎを満たす自然数）における各ぼかし濃度値Ａｍｎを記憶し、前記ぼかし画像生成部は、処理対象ピクセルを濃度分布中心とする描画対象範囲内の各位置Ｐｍｎのピクセルに対して、ぼかし濃度値Ａｍｎと処理対象ピクセルのピクセル値とにより得られるぼかしピクセル値を描画する処理を、元画像の全ての処理対象ピクセルに対して行うことで、元画像のぼかし画像を生成してもよい。
【０００８】
このようにすれば、元画像の全ての処理対象ピクセルに対して、ぼかし濃度テーブルを用いたぼかしピクセル値の描画処理が行われて、元画像のぼかし画像が生成されるようになる。
【０００９】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、奥行き値を格納するＺバッファを用いて隠面消去を行いながらオブジェクトを描画することで、第１の描画バッファに元画像を生成する元画像生成部を含み（該元画像生成部としてコンピュータを機能させ）、前記テーブル選択部は、前記Ｚバッファに格納された元画像の処理対象ピクセルの奥行き値に応じたぼかし濃度テーブルを選択し、前記ぼかし画像生成部は、選択された前記ぼかし濃度テーブルからのぼかし濃度値と前記第１の描画バッファに格納された元画像のピクセル値とにより得られるぼかしピクセル値を、第２の描画バッファに描画することで、前記第２の描画バッファに元画像のぼかし画像を生成してもよい。
【００１０】
このようにすれば、第１の描画バッファの元画像のピクセル値や、Ｚバッファの奥行き値を利用して、簡素な処理で元画像のぼかし画像を生成できるようになる。
【００１１】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記テーブル選択部は、前記複数のぼかし濃度テーブルの中から、処理対象ピクセルの奥行き値に応じた第１、第２のぼかし濃度テーブルを選択し、前記ぼかし画像生成部は、選択された前記第１、第２のぼかし濃度テーブルから読み出された第１、第２のぼかし濃度値を補間し、補間後のぼかし濃度値と元画像の処理対象ピクセルのピクセル値とにより得られるぼかしピクセル値を描画してもよい。
【００１２】
このようにすれば、少ない数のぼかし濃度テーブルで多様なぼかし表現が可能になる。
【００１３】
また本発明は、画像を生成する画像生成システムであって、描画対象範囲内の各位置における各ぼかし閾値を記憶するぼかし閾値判断テーブルが格納される記憶部と、元画像の処理対象ピクセルの奥行き値に応じたぼかし値、ぼかし濃度値を取得する取得部と、処理対象ピクセルとその周囲のピクセルのうち、前記描画対象範囲内の各位置のピクセルについて、取得されたぼかし値と前記ぼかし閾値判断テーブルに記憶されるぼかし閾値とを比較し、ぼかし値とぼかし閾値との比較によりぼかし処理の対象と判断されたピクセルに対して、取得されたぼかし濃度値と元画像の処理対象ピクセルのピクセル値とにより得られるぼかしピクセル値を描画することで、元画像のぼかし画像を生成するぼかし画像生成部とを含む画像生成システムに関係する。また本発明は、上記各部としてコンピュータを機能させるプログラム、又は該プログラムを記憶したコンピュータ読み取り可能な情報記憶媒体に関係する。
【００１４】
本発明によれば、元画像の奥行き値に応じたぼかし値、ぼかし濃度値が取得される。そして描画対象範囲内のピクセルについて、ぼかし値とぼかし閾値判断テーブルのぼかし閾値が比較される。そして、ぼかし値とぼかし閾値との比較によりぼかし処理の対象と判断されたピクセルに対して、ぼかし濃度値と元画像のピクセル値とにより得られるぼかしピクセル値が描画されて、ぼかし画像が生成される。このようにすれば、ぼかし範囲の大きさを計算する処理を省略できるため、ぼかし処理の負荷を軽減できる。従って、少ない処理負荷で被写界深度の画像表現を実現できる。
【００１５】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記ぼかし閾値判断テーブルは、描画対象範囲内の各位置Ｐｍｎ（ｍ、ｎ、Ｍ、Ｎは、１≦ｍ≦Ｍ、１≦ｎ≦Ｎを満たす自然数）における各ぼかし閾値ＢＴｍｎを記憶し、前記ぼかし画像生成部は、処理対象ピクセルを分布中心とする描画対象範囲内の各位置Ｐｍｎのピクセルのうち、ぼかし値とぼかし閾値ＢＴｍｎとの比較によりぼかし処理の対象と判断されたピクセルに対して、取得されたぼかし濃度値と処理対象ピクセルのピクセル値とにより得られるぼかしピクセル値を描画する処理を、元画像の全ての処理対象ピクセルに対して行うことで、元画像のぼかし画像を生成してもよい。
【００１６】
このようにすれば、元画像の全ての処理対象ピクセルに対して、ぼかし閾値判断テーブルを用いたぼかしピクセル値の描画処理が行われて、元画像のぼかし画像が生成されるようになる。
【００１７】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、奥行き値を格納するＺバッファを用いて隠面消去を行いながらオブジェクトを描画することで、第１の描画バッファに元画像を生成する元画像生成部を含み（該元画像生成部としてコンピュータを機能させ）、前記取得部は、前記Ｚバッファに格納された元画像の奥行き値に応じたぼかし値、ぼかし濃度値を取得し、前記ぼかし画像生成部は、取得されたぼかし濃度値と前記第１の描画バッファに格納された元画像のピクセル値とにより得られるぼかしピクセル値を、第２の描画バッファに描画することで、前記第２の描画バッファに元画像のぼかし画像を生成してもよい。
【００１８】
このようにすれば、第１の描画バッファの元画像のピクセル値や、Ｚバッファの奥行き値を利用して、簡素な処理で元画像のぼかし画像を生成できるようになる。
【発明を実施するための最良の形態】
【００１９】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【００２０】
１．構成
図１に本実施形態の画像生成システム（ゲームシステム）の機能ブロック図の例を示す。なお本実施形態の画像生成システムは図１の構成要素（各部）の一部を省略した構成としてもよい。
【００２１】
操作部１６０は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、ステアリング、アクセル、ブレーキ、或いはタッチパネル型ディスプレイなどにより実現できる。記憶部１７０は、処理部１００や通信部１９６などのワーク領域となるもので、その機能はＲＡＭ（ＶＲＡＭ）などにより実現できる。
【００２２】
情報記憶媒体１８０（コンピュータにより読み取り可能な媒体）は、プログラムやデータなどを格納するものであり、その機能は、光ディスク（ＣＤ、ＤＶＤ）、ハードディスク、或いはメモリ（ＲＯＭ等）などにより実現できる。処理部１００は、情報記憶媒体１８０に格納されるプログラム（データ）に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体１８０には、本実施形態の各部としてコンピュータ（操作部、処理部、記憶部、出力部を備える装置）を機能させるためのプログラム（各部の処理をコンピュータに実行させるためのプログラム）が記憶される。
【００２３】
表示部１９０は、本実施形態により生成された画像を出力するものであり、その機能は、ＣＲＴ、ＬＣＤ、タッチパネル型ディスプレイ、或いはＨＭＤ（ヘッドマウントディスプレイ）などにより実現できる。音出力部１９２は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
【００２４】
携帯型情報記憶装置１９４は、プレーヤの個人データやゲームのセーブデータなどが記憶されるものであり、この携帯型情報記憶装置１９４としては、メモリカードや携帯型ゲーム装置などがある。通信部１９６は外部（例えばホスト装置や他の画像生成システム）との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ＡＳＩＣなどのハードウェアや、プログラムなどにより実現できる。
【００２５】
なお本実施形態の各部としてコンピュータを機能させるためのプログラム（データ）は、ホスト装置（サーバー）が有する情報記憶媒体からネットワーク及び通信部１９６を介して情報記憶媒体１８０（あるいは記憶部１７０）に配信してもよい。このようなホスト装置（サーバー）による情報記憶媒体の使用も本発明の範囲内に含めることができる。
【００２６】
処理部１００（プロセッサ）は、操作部１６０からの操作データやプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの処理を行う。処理部１００は記憶部１７０（主記憶部１７２）をワーク領域として各種処理を行う。この処理部１００の機能は、各種プロセッサ（ＣＰＵ、ＤＳＰ等）、ＡＳＩＣ（ゲートアレイ等）などのハードウェアや、プログラムにより実現できる。
【００２７】
処理部１００は、ゲーム演算部１０８、オブジェクト空間設定部１１０、移動体演算部１１２、仮想カメラ制御部１１４、テーブル選択部１１６、取得部１１８、画像生成部１２０、音生成部１３０を含む。なおこれらの一部を省略する構成としてもよい。
【００２８】
ゲーム演算部１０８はゲーム演算処理を行う。ここでゲーム演算としては、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、移動体やマップなどのオブジェクトを配置する処理、オブジェクトを表示する処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。
【００２９】
オブジェクト空間設定部１１０は、移動体（車、人、ロボット等）、コース（道路）、マップ（地形）、建物、樹木、壁などの表示物を表す各種オブジェクト（ポリゴン、自由曲面又はサブディビジョンサーフェイスなどのプリミティブ面で構成されるオブジェクト）をオブジェクト空間に配置設定する処理を行う。即ちワールド座標系でのオブジェクトの位置や回転角度（向き、方向と同義）を決定し、その位置（Ｘ、Ｙ、Ｚ）にその回転角度（Ｘ、Ｙ、Ｚ軸回りでの回転角度）でオブジェクトを配置する。具体的には、記憶部１７０のモデルデータ記憶部１７６には、移動体オブジェクト（キャラクタ）等のモデルデータが記憶されている。そしてオブジェクト空間設定部１１０は、このモデルデータを用いてオブジェクト空間へのオブジェクトの設定（配置）処理を行う。
【００３０】
移動体演算部（移動・動作処理部）１１２は、移動体を移動させるための演算を行う。また移動体を動作させるための演算も行う。即ち操作部１６０によりプレーヤが入力した操作データや、プログラム（移動・動作アルゴリズム）や、各種データ（モーションデータ）などに基づいて、移動体（オブジェクト、モデルオブジェクト）をオブジェクト空間内で移動させたり、移動体を動作（モーション、アニメーション）させる処理を行う。具体的には、移動体の移動情報（位置、回転角度、速度、或いは加速度）や動作情報（パーツオブジェクトの位置、或いは回転角度）を、１フレーム（１／６０秒）毎に順次求めるシミュレーション処理を行う。なおフレームは、移動体の移動・動作処理（シミュレーション処理）や画像生成処理を行う時間の単位である。
【００３１】
仮想カメラ制御部１１４は、オブジェクト空間内の所与（任意）の視点から見える画像を生成するための仮想カメラ（視点）の制御処理を行う。具体的には、仮想カメラの位置（Ｘ、Ｙ、Ｚ）又は回転角度（Ｘ、Ｙ、Ｚ軸回りでの回転角度）を制御する処理（視点位置、視線方向あるいは画角を制御する処理）を行う。
【００３２】
例えば仮想カメラにより車、キャラクタなどの移動体を後方から撮影する場合には、移動体の位置又は回転の変化に仮想カメラが追従するように、仮想カメラの位置又は回転角度（仮想カメラの向き）を制御する。この場合には、移動体演算部１１２で得られた移動体の位置、回転角度又は速度などの情報に基づいて、仮想カメラを制御できる。或いは、仮想カメラを、予め決められた回転角度で回転させたり、予め決められた移動経路で移動させる制御を行ってもよい。この場合には、仮想カメラの位置（移動経路）又は回転角度を特定するための仮想カメラデータに基づいて仮想カメラを制御する。
【００３３】
なお本実施形態の移動体は、画面に表示されるオブジェクトであってもよいし、画面に表示されない仮想的なオブジェクトであってもよい。例えば１人称視点等の場合には、仮想カメラの位置を移動体位置と見なすことができる。
【００３４】
テーブル選択部１１６はぼかし濃度テーブルの選択を行う。具体的には本実施形態では、複数のぼかし濃度テーブル１７７-1、１７７-2、１７７-3・・・が記憶部１７０に格納（記憶）される。そして複数のぼかし濃度テーブル１７７-1、１７７-2、１７７-3・・・の各ぼかし濃度テーブルは、描画対象範囲（ぼかしピクセル値の描画の対象となる範囲。最大ぼかし範囲）内の各位置（ぼかし濃度値を設定する各ピクセル）における各ぼかし濃度値（ぼかし具合を表す濃度。ぼかしピクセル値を求める際に元画像のピクセル値に乗算される係数）を記憶する。そしてテーブル選択部１１６は、複数のぼかし濃度テーブル１７７-1、１７７-2、１７７-3・・・の中から、元画像の処理対象ピクセルの奥行き値（Ｚバッファ１７５に格納された処理対象ピクセルの奥行き値）に応じたぼかし濃度テーブルを選択する。具体的には、例えば元画像の奥行き値（奥行き距離）と仮想焦点の奥行き値（仮想焦点距離）との差分値（ずれ分）に基づいて、ぼかし濃度テーブルを選択する。
【００３５】
なお仮想焦点の奥行き値が一定である場合等には、元画像の奥行き値そのものに基づいてぼかし濃度テーブルを選択してもよい。
【００３６】
取得部１１８はぼかし値、ぼかし濃度値の取得処理を行う。具体的には、元画像の処理対象ピクセルの奥行き値に応じたぼかし値、ぼかし濃度値を取得する。
【００３７】
更に具体的には本実施形態では、ぼかし値、ぼかし濃度値を記憶する少なくとも１つの参照テーブル１７８が記憶部１７０に格納される。また、描画対象範囲内の各位置（ぼかし濃度値を設定する各ピクセル）における各ぼかし閾値（ぼかし値の比較処理のための閾値）を記憶するぼかし閾値判断テーブル１７９が記憶部１７０に格納される。そして取得部１１８は、元画像の処理対象ピクセルの奥行き値に応じたぼかし値、ぼかし濃度値を、参照テーブル１７８から読み出す。具体的には、例えば元画像の奥行き値と仮想焦点の奥行き値（仮想焦点距離）との差分値（ずれ分）に基づいて、ぼかし値（ぼかしの度合いを表すパラメータ。ぼかし特性パラメータ）、ぼかし濃度値を取得する。
【００３８】
なお本実施形態では、奥行き値（差分値）とぼかし値及びぼかし濃度値とを対応付ける１つの参照テーブルを設けてもよいし、奥行き値（差分値）とぼかし値を対応付ける参照テーブルと、奥行き値又はぼかし値とぼかし濃度値を対応付ける参照テーブルを設けてもよい。また、ぼかし値、ぼかし濃度値を、参照テーブルを用いず、例えば関数による演算処理等により取得してもよい。
【００３９】
画像生成部１２０は、処理部１００で行われる種々の処理（ゲーム処理）の結果に基づいて描画処理を行い、これにより画像を生成し、表示部１９０に出力する。いわゆる３次元ゲーム画像を生成する場合には、まずモデル（オブジェクト）の各頂点の頂点データ（頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等）を含むモデルデータが入力され、入力されたモデルデータに含まれる頂点データに基づいて、頂点処理（頂点シェーダによるシェーディング）が行われる。なお頂点処理を行うに際して、必要に応じてポリゴンを再分割するための頂点生成処理（テッセレーション、曲面分割、ポリゴン分割）を行うようにしてもよい。
【００４０】
画像生成部１２０は、オブジェクトを描画する際にジオメトリ処理、隠面消去処理、αブレンディング、テクスチャマッピング処理等を行う。
【００４１】
ジオメトリ処理では、オブジェクトに対して、座標変換、クリッピング処理、透視投影変換、或いは光源計算等の処理が行われる。そして、ジオメトリ処理後（透視投影変換後）のモデルデータ（オブジェクトの頂点の位置座標、テクスチャ座標、色データ、法線ベクトル、或いはα値等）は、記憶部１７０に保存される。
【００４２】
隠面消去処理としては、描画ピクセルのＺ値（奥行き情報）が格納されるＺバッファ１７５（奥行きバッファ）を用いたＺバッファ法（奥行き比較法、Ｚテスト）による隠面消去処理がある。すなわちオブジェクトのプリミティブに対応する描画ピクセルを描画する際に、Ｚバッファ１７５（描画バッファのＺプレーン）に格納されるＺ値を参照する。そして参照されたＺバッファ１７５のＺ値と、プリミティブの描画ピクセルでのＺ値とを比較し、描画ピクセルでのＺ値が、仮想カメラから見て手前側となるＺ値（例えば小さなＺ値）である場合には、その描画ピクセルの描画処理を行うとともにＺバッファ１７５のＺ値を新たなＺ値に更新する。
【００４３】
αブレンディング（α合成）は、α値（Ａ値）に基づいて行う処理であり、通常αブレンディング、加算αブレンディング或いは減算αブレンディングなどがある。なおα値は、各ピクセル（テクセル、ドット）に関連づけて記憶できる情報であり、例えば色情報以外のプラスアルファの情報である。α値は、半透明度（透明度、不透明度と等価）情報、マスク情報、或いはバンプ情報などとして使用できる。
【００４４】
テクスチャマッピング（テクスチャフェッチ、テクスチャサンプリング）処理は、テクスチャ記憶部に記憶されるテクスチャ（テクセル値）をオブジェクトにマッピングする処理である。具体的には、オブジェクト（プリミティブ面）の頂点等に設定（付与）されるテクスチャ座標等を用いてテクスチャ記憶部からテクスチャ（色、α値などの表面プロパティ）を読み出す。そして、２次元の画像又はパターンであるテクスチャをオブジェクトにマッピングする。この場合に、ピクセルとテクセルとを対応づける処理やバイリニア補間（テクセル補間）などを行う。
【００４５】
そして本実施形態では画像生成部１２０がぼかし画像生成部１２２を含む。ぼかし画像生成部１２２は、処理対象ピクセルとその周囲のピクセルのうち、描画対象範囲内の各位置のピクセル（各位置に対応するピクセル）に対して、ぼかしピクセル値（ＲＧＢ色成分等）を描画することで、元画像のぼかし画像（被写界深度画像）を生成する。ここで、ぼかしピクセル値は、テーブル選択部１１６により選択されたぼかし濃度テーブルから読み出されたぼかし濃度値と、元画像の処理対象ピクセルのピクセル値とにより求められる。具体的には、ぼかしピクセル値は、元画像のピクセル値に対してぼかし濃度値を乗算することで求めることができる。
【００４６】
また、ぼかし画像生成部１２２は、処理対象ピクセルとその周囲のピクセルのうち、描画対象範囲内の各位置のピクセル（各位置に対応するピクセル）について、取得部１１８で取得されたぼかし値と、ぼかし閾値判断テーブル１７９からのぼかし閾値とを比較する。そしてぼかし値とぼかし閾値との比較によりぼかし処理の対象と判断されたピクセルに対して、ぼかしピクセル値（ＲＧＢ色成分等）を描画することで、元画像のぼかし画像（被写界深度画像）を生成する。例えばぼかし閾値がぼかし値以上になるピクセルに対して、ぼかしピクセル値を描画する。なお、ぼかし値やぼかし閾値の設定の仕方によっては、ぼかし閾値がぼかし値以下になるピクセルに対して、ぼかしピクセル値を描画するようにしてもよい。また、ぼかしピクセル値は、取得部１１８で取得されたぼかし濃度値と、元画像のピクセル値とにより求められる。具体的には、ぼかしピクセル値は、元画像のピクセル値に対して、参照テーブル１７８からのぼかし濃度値を乗算することで求めることができる。
【００４７】
画像生成部１２０が含む元画像生成部１２４は元画像を生成する。具体的には、奥行き値を格納するＺバッファ１７５を用いて隠面消去を行いながらオブジェクト（ジオメトリ処理後のオブジェクト）を描画することで、描画バッファ１７４（第１の描画バッファ）に元画像を生成する。
【００４８】
音生成部１３０は、処理部１００で行われる種々の処理の結果に基づいて音処理を行い、ＢＧＭ、効果音、又は音声などのゲーム音を生成し、音出力部１９２に出力する。
【００４９】
なお、本実施形態の画像生成システムは、１人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、１つの端末を用いて生成してもよいし、ネットワーク（伝送ライン、通信回線）などで接続された複数の端末（ゲーム機、携帯電話）を用いて分散処理により生成してもよい。
【００５０】
２．本実施形態の手法
２．１  ぼかし濃度テーブルを用いたぼかし画像の生成
被写界深度のぼかし画像を生成する比較例の手法として、奥行き値やぼかし特性パラメータ（ぼかし値）から各ピクセルのぼかし範囲の大きさを計算し、計算された大きさのぼかし範囲に対してぼかし処理を行う手法が考えられる。
【００５１】
しかしながら、この比較例の手法によると、奥行き値やぼかし特性パラメータに基づきぼかし範囲を求める処理が必要になるため、処理負荷が増加する。特に、この比較例の手法では、画面を構成する全てのピクセルについて、ぼかし範囲の大きさを求める処理が必要になるため、処理負荷は非常に重くなる。
【００５２】
そこで本実施形態では、図２（Ａ）に示すようなぼかし濃度テーブルＢＴＢを予め用意しておき、このぼかし濃度テーブルＢＴＢを用いてぼかし画像を生成する。
【００５３】
図２（Ａ）のぼかし濃度テーブルＢＴＢは、描画対象範囲ＤＲ内の各位置Ｐｍｎ（ｍ、ｎ、Ｍ、Ｎは、１≦ｍ≦Ｍ、１≦ｎ≦Ｎを満たす自然数）における各ぼかし濃度値Ａｍｎを記憶する。例えば、描画対象範囲ＤＲ内の位置Ｐ１１のぼかし濃度値Ａ１１、位置Ｐ２２のぼかし濃度値Ａ２２・・・位置Ｐ５５のぼかし濃度値Ａ５５を記憶する。この位置Ｐｍｎは、ぼかし濃度テーブルＢＴＢを用いてぼかしピクセル値を求める処理を行った場合の、描画対象範囲ＤＲ内の各ピクセルの位置に相当する。
【００５４】
そして本実施形態では、図２（Ｂ）に示すように複数のぼかし濃度テーブルＢＴＢ１、ＢＴＢ２、ＢＴＢ３を用意する。例えば図２（Ｂ）のぼかし濃度テーブルＢＴＢ１では、位置Ｐ３３でのぼかし濃度値Ａ３３が１になっており、それ以外のぼかし濃度値は０になっている。また、ぼかし濃度テーブルＢＴＢ２では、位置Ｐ２２、Ｐ２３、Ｐ２４・・・Ｐ４４でのぼかし濃度値Ａ２２、Ａ２３、Ａ２４・・・Ａ４４が１／９になっており、それ以外のぼかし濃度値は０になっている。また、ぼかし濃度テーブルＢＴＢ３では、全てのぼかし濃度値が１／２５になっている。図２（Ｂ）では、描画対象範囲ＤＲ内の全てのぼかし濃度値を加算した値が１になるよう、ぼかし濃度値が設定されている。
【００５５】
なお本実施形態のぼかし濃度テーブルは図２（Ａ）（Ｂ）に限定されず、種々の変形実施が可能である。例えば図２（Ａ）（Ｂ）では、描画対象範囲ＤＲの大きさが５×５ピクセルである場合（Ｍ＝Ｎ＝５）の例を示しているが、描画対象範囲ＤＲの大きさはこれに限定されず、５×５ピクセル以上であってもよいし、５×５ピクセル以下であってもよい。
【００５６】
そして本実施形態で、図２（Ｂ）のような複数のぼかし濃度テーブルＴＢ１、ＴＢ２、ＴＢ３の中から、元画像の処理対象ピクセルの奥行き値に応じたぼかし濃度テーブルを選択する。例えば図３（Ａ）では、ＺＦは、被写界深度表現のための仮想カメラＶＣの仮想的な焦点の奥行き値（焦点距離）である。そして奥行き値Ｚ１’〜Ｚ１の範囲は、ぼかし濃度テーブルＴＢ１に割り当てられる。また奥行き値Ｚ１〜Ｚ２、Ｚ２’〜Ｚ１’の範囲は、ぼかし濃度テーブルＴＢ２に割り当てられ、奥行き値Ｚ２〜、Ｚ２’〜の範囲は、ぼかし濃度テーブルＴＢ３に割り当てられる。
【００５７】
なお図３（Ｂ）のような参照テーブルＲＴＡを用意し、この参照テーブルＲＴＡを用いて、奥行き値とぼかし濃度テーブルを対応付けてもよい。また元画像の奥行き値Ｚ（ＺバッファのＺ値）に基づいて、ぼかし濃度テーブルを選択してもよいし、元画像の奥行き値Ｚと仮想焦点の奥行き値ＺＦとの差分値（ずれ分）に基づいて、ぼかし濃度テーブルを選択してもよい。この場合には、被写界深度のパラメータとして仮想焦点の奥行き値ＺＦ（焦点距離）を設定し、設定されたＺＦに基づいてぼかし濃度テーブルＴＢ１、ＴＢ２、ＴＢ３や参照テーブルＲＴＡを作成すればよい。
【００５８】
そして本実施形態では、このようにして選択されたぼかし濃度テーブルを用いて、描画対象範囲のピクセルに対してぼかしピクセル値を書き込んでいる。
【００５９】
例えば図４ではＰＸｉが処理対象ピクセルになっている。この場合は、処理対象ピクセルＰＸｉとその周囲のピクセルのうち、描画対象範囲ＤＲ内の各位置Ｐｍｎのピクセルに対して、ぼかしピクセル値を描画する。即ち処理対象ピクセルＰＸｉを濃度分布中心とする描画対象範囲ＤＲ内の各位置Ｐｍｎのピクセルに対して、ぼかし濃度値Ａｍｎと処理対象ピクセルＰＸｉのピクセル値ＰＶｉとにより得られるぼかしピクセル値を描画する処理を行う。具体的には、ぼかし濃度値Ａｍｎとピクセル値ＰＶｉを乗算し、得られたぼかしピクセル値Ａｍｎ×ＰＶｉを、位置Ｐｍｎのピクセルに対して描画する。例えば位置Ｐ１１のピクセルに対してぼかしピクセル値Ａ１１×ＰＶｉを描画し、位置Ｐ１２のピクセルに対してぼかしピクセル値Ａ１２×ＰＶｉを描画するというように、描画対象範囲ＤＲ内の全てのピクセルに対してぼかしピクセル値Ａｍｎ×ＰＶｉを描画する。
【００６０】
また図５ではＰＸｉの隣のＰＸｉ＋１が処理対象ピクセルになっている。この場合は、処理対象ピクセルＰＸｉ＋１とその周囲のピクセルのうち、描画対象範囲ＤＲ内の各位置Ｐｍｎのピクセルに対して、ぼかしピクセル値を描画する処理を行う。即ち処理対象ピクセルＰＸｉ＋１を濃度分布中心とする描画対象範囲ＤＲ内の各位置Ｐｍｎのピクセルに対して、ぼかしピクセル値Ａｍｎ×ＰＶｉ＋１を描画する。例えば位置Ｐ１１のピクセルに対してぼかしピクセル値Ａ１１×ＰＶｉ＋１を描画し、位置Ｐ１２のピクセルに対してぼかしピクセル値Ａ１２×ＰＶｉ＋２を描画するというように、描画対象範囲ＤＲ内の全てのピクセルに対してぼかしピクセル値Ａｍｎ×ＰＶｉ＋１を描画する。
【００６１】
そしてこのようにぼかしピクセル値を描画する処理を、元画像の全ての処理対象ピクセル（１画面分のピクセル）に対して行う。即ち図４ではピクセルＰｉの周りの描画対象範囲ＤＲについて、ぼかしピクセル値の描画処理を行い、図５ではＰｉの隣のピクセルＰｉ＋１の周りの描画対象範囲ＤＲについて、ぼかしピクセル値の描画処理を行っている。このようにして、元画像の画面の左上のピクセルから右下のピクセルまで、描画対象範囲ＤＲについてのぼかしピクセル値の描画処理を行うことで、元画像のぼかし画像（被写界深度画像）が生成される。
【００６２】
例えば、ぼかし範囲の大きさを計算してぼかし処理を行う比較例の手法では、図２（Ｂ）のぼかし濃度テーブルＢＴＢ１の「１」の範囲、ＢＴＢ２の「１／９」の範囲、ＢＴＢ３の「１／２５」の範囲であるぼかし範囲を、奥行き値やぼかし特性パラメータに基づいて計算する必要がある。このため、ぼかし範囲を計算する処理負荷が過大になる。
【００６３】
これに対して本実施形態の第１の手法によれば、図２（Ｂ）のようなぼかし濃度テーブルを用いてぼかしピクセル値を描画しているため、ぼかし範囲の大きさを計算する処理を省略できる。従って、比較例の手法に比べてぼかし処理の負荷を格段に軽減できる。
【００６４】
また本実施形態の第１の手法によれば、ぼかし濃度テーブルの内容を変更するだけで、ぼかし範囲の大きさやぼかし濃度値の設定等を変化させることができる。従って、比較例の手法のような複雑な計算をしなくても、ぼかし範囲やぼかし具合を様々な設定にすることができ、多様なぼかし表現を実現できるという利点がある。
【００６５】
また本実施形態では、Ｚバッファ１７５を用いて隠面消去を行いながらオブジェクトを描画することで、描画バッファ１７４の第１の描画バッファに元画像を生成する。そしてＺバッファ１７５に格納された元画像の奥行き値に応じたぼかし濃度テーブルを選択する。そして選択されたぼかし濃度テーブルからのぼかし濃度値と、第１の描画バッファに格納された元画像のピクセル値とにより得られるぼかしピクセル値を、描画バッファ１７４の第２の描画バッファに描画する。これにより、第２の描画バッファに元画像のぼかし画像を生成できる。
【００６６】
このように第１、第２の描画バッファを使用して元画像、ぼかし画像を生成すれば、元画像の奥行き値やピクセル値を有効利用しながら、簡素な処理で、元画像のぼかし画像を生成できるようになる。
【００６７】
なおＺバッファ１７５は第１の描画バッファと別バッファにしてもよいし、第１の描画バッファのＺプレーンをＺバッファ１７５として用いてもよい。
【００６８】
２．２  ぼかし濃度テーブルの補間
本実施形態では、複数のぼかし濃度テーブルについての補間処理を行って、ぼかし画像を生成してもよい。具体的にはテーブル選択部１１６が、複数のぼかし濃度テーブルの中から、処理対象ピクセルの奥行き値に応じた第１、第２のぼかし濃度テーブルを選択する。そしてぼかし画像生成部１２２は、選択された第１、第２のぼかし濃度テーブルについての補間処理を行い、ぼかしピクセル値を描画する。具体的には、選択された第１、第２のぼかし濃度テーブルから読み出された第１、第２のぼかし濃度値を補間し、補間後のぼかし濃度値と元画像の処理対象ピクセルのピクセル値（色成分）とにより得られるぼかしピクセル値を、第２の描画バッファに描画する。
【００６９】
例えば図６（Ａ）では、元画像の奥行き値Ｚは、奥行き値Ｚ１とＺ２の間にある。そして奥行き値Ｚ１にはぼかし濃度テーブルＢＴＢ１（第１のぼかし濃度テーブル）が割り当てられ、奥行き値Ｚ２にはぼかし濃度テーブルＢＴＢ２（第２のぼかし濃度テーブル）が割り当てられている。この場合には、奥行き値Ｚに対応するぼかし濃度テーブルとして、ぼかし濃度テーブルＢＴＢ１とＢＴＢ２を補間したぼかし濃度テーブルＢＴＢ１２を使用する。具体的には、奥行き値Ｚ、Ｚ１、Ｚ２に基づいて、補間率ａ＝（Ｚ２−Ｚ）／（Ｚ２−Ｚ１）を求める。そして補間率ａに基づいてぼかし濃度テーブルＢＴＢ１、ＢＴＢ２を補間し、ぼかし濃度テーブルＢＴＢ１２＝ＢＴＢ１×ａ＋ＢＴＢ２×（１−ａ）を求め、このぼかし濃度テーブルＢＴＢ１２を用いてぼかしピクセル値を描画する。
【００７０】
また図６（Ｂ）では、元画像の奥行き値Ｚは、奥行き値Ｚ１’とＺ２’の間にある。そして奥行き値Ｚ１’にはぼかし濃度テーブルＢＴＢ１（第１のぼかし濃度テーブル）が割り当てられ、奥行き値Ｚ２’にはぼかし濃度テーブルＢＴＢ２（第２のぼかし濃度テーブル）が割り当てられている。そして奥行き値Ｚ、Ｚ１’、Ｚ２’に基づいて、補間率ａ＝（Ｚ２’−Ｚ）／（Ｚ２’−Ｚ１’）を求める。そして補間率ａに基づいてぼかし濃度テーブルＢＴＢ１、ＢＴＢ２を補間し、ぼかし濃度テーブルＢＴＢ１２＝ＢＴＢ１×ａ＋ＢＴＢ２×（１−ａ）を求め、このぼかし濃度テーブルＢＴＢ１２を用いてぼかしピクセル値を描画する。
【００７１】
このようにすれば、ぼかし濃度テーブルＢＴＢ１、ＢＴＢ２から読み出された第１、第２のぼかし濃度値を補間し、補間後のぼかし濃度値と元画像のピクセル値とにより得られるぼかしピクセル値を描画できるようになる。
【００７２】
そしてこの手法によれば、用意するぼかし濃度テーブルの数をそれほど多くすることなく、より多様なぼかし表現が可能になる。従って、ぼかし濃度テーブルの使用記憶容量を節約しながら、生成される画像の品質を向上できる。
【００７３】
２．３  ぼかし閾値判断テーブルを用いたぼかし画像の生成
次に本実施形態の第２の手法について説明する。この第２の手法では、図７（Ａ）に示すようなぼかし閾値判断テーブルＤＴＢを予め用意しておき、このぼかし閾値判断テーブルを用いてぼかし画像を生成する。
【００７４】
図７（Ａ）のぼかし閾値判断テーブルＤＴＢは、描画対象範囲ＤＲ内の各位置Ｐｍｎ（ｍ、ｎ、Ｍ、Ｎは、１≦ｍ≦Ｍ、１≦ｎ≦Ｎを満たす自然数）における各ぼかし閾値ＢＴｍｎを記憶する。例えば、描画対象範囲ＤＲ内の位置Ｐ１１のぼかし閾値ＢＴ１１、位置Ｐ２２のぼかし閾値ＢＴ２２・・・位置Ｐ７７のぼかし閾値ＢＴ７７を記憶する。この位置Ｐｍｎは、ぼかし閾値判断テーブルＤＴＢを用いてぼかしピクセル値を求める処理を行った場合の、描画対象範囲ＤＲ内の各ピクセルの位置に相当する。
【００７５】
例えば図７（Ｂ）にぼかし閾値判断テーブルＤＴＢの一例を示す。図７（Ｂ）のぼかし閾値判断テーブルＤＴＢでは、位置Ｐ４４でのぼかし閾値ＢＴ４４は１になっている。また位置Ｐ３３、Ｐ３４、Ｐ３５、Ｐ４３、Ｐ４５、Ｐ５３、Ｐ５４、Ｐ５５でのぼかし閾値ＢＴ３３、ＢＴ３４、ＢＴ３５、ＢＴ４３、ＢＴ４５、ＢＴ５３、ＢＴ５４、ＢＴ５５は２／３になっている。また位置Ｐ２２、Ｐ２３、Ｐ２４、Ｐ２５、Ｐ２６、Ｐ３２、Ｐ３６・・・Ｐ６６でのぼかし閾値ＢＴ２２、ＢＴ２３、ＢＴ２４、ＢＴ２５、ＢＴ２６、ＢＴ３２、ＢＴ３６・・・ＢＴ６６は１／３になっている。
【００７６】
なお本実施形態のぼかし閾値判断テーブルは図７（Ａ）（Ｂ）に限定されず、種々の変形実施が可能である。例えば図７（Ａ）（Ｂ）では、描画対象範囲ＤＲの大きさが７×７ピクセルである場合（Ｍ＝Ｎ＝７）を示しているが、描画対象範囲ＤＲの大きさはこれに限定されず、７×７ピクセル以上であってもよいし、７×７ピクセル以下であってもよい。また図７（Ａ）（Ｂ）のぼかし閾値判断テーブルでのぼかし閾値の分布は、図８（Ａ）のような四角錐の分布になっているが、図８（Ｂ）のような円錐の分布であってもよい。
【００７７】
また本実施形態では図９（Ａ）に示すようなぼかし値、ぼかし濃度値を記憶する参照テーブルＲＴＢを用意する。この参照テーブルＲＴＢでは、元画像の奥行き値（元画像の奥行き値と仮想焦点の奥行き値の差分値）と、ぼかし値、ぼかし濃度値が対応付けられている。具体的には図９（Ａ）では、奥行き値Ｚ１’〜Ｚ１の範囲には、ぼかし値Ｂ１、ぼかし濃度値Ｃ１が割り当てられる。また奥行き値Ｚ１〜Ｚ２、Ｚ２’〜Ｚ１’の範囲には、ぼかし値Ｂ２、ぼかし濃度値Ｃ２が割り当てられ、奥行き値Ｚ２〜、Ｚ２’〜の範囲には、ぼかし値Ｂ３、ぼかし濃度値Ｃ３が割り当てられる。例えば図９（Ｂ）に示すように、ぼかし値Ｂ１＝１、Ｂ２＝２／３、Ｂ３＝１／３に設定され、ぼかし濃度値Ｃ１＝１、Ｃ２＝１／９、Ｃ３＝１／２５に設定される。
【００７８】
そして本実施形態では、元画像の処理対象ピクセルの奥行き値に応じたぼかし値、ぼかし濃度値を取得する。具体的には図９（Ａ）（Ｂ）に示す参照テーブルＲＴＢからぼかし値、ぼかし濃度値を読み出すことで、これらのぼかし値、ぼかし濃度値を取得する。
【００７９】
なお、元画像の奥行き値Ｚ（ＺバッファのＺ値）に基づいて、ぼかし値、ぼかし濃度値を取得してもよいし、元画像の奥行き値Ｚと仮想焦点の奥行き値ＺＦとの差分値（ずれ分）に基づいて、ぼかし値、ぼかし濃度値を取得してもよい。この場合には、被写界深度のパラメータとして仮想焦点の奥行き値ＺＦ（焦点距離）を設定し、設定されたＺＦに基づいて図９（Ａ）（Ｂ）に示すような参照テーブルＲＴＢを作成すればよい。
【００８０】
そして本実施形態では、図７（Ａ）（Ｂ）のぼかし閾値判断テーブルＲＴＢと、図９（Ａ）（Ｂ）の参照テーブルＲＴＢ等により取得されたぼかし値、ぼかし濃度値を用いて、描画対象範囲のピクセルに対してぼかしピクセル値を書き込んでいる。
【００８１】
具体的には図１０ではＰＸｉが処理対象ピクセルになっている。また元画像の処理対象ピクセルＰＸｉの奥行き値は、図９（Ｂ）のＺ１〜Ｚ２又はＺ２’〜Ｚ１’の範囲にあり、参照テーブルＲＴＢからは、処理対象ピクセルＰＸｉのぼかし値としてＢ＝２／３が取得され、ぼかし濃度値としてＡ＝１／９が取得されている。この場合は、処理対象ピクセルＰＸｉとその周囲のピクセルのうち、描画対象範囲ＤＲ内の各位置Ｐｍｎのピクセルについて、取得されたぼかし値Ｂ＝２／３と、図７（Ｂ）のぼかし閾値判断テーブルＤＴＢに記憶されるぼかし閾値ＢＴｍｎとを比較し、例えば、ぼかし閾値ＢＴｍｎがぼかし値Ｂ＝２／３以上であるピクセルに対して、ぼかしピクセル値を描画する。即ち、処理対象ピクセルＰＸｉを分布中心とする描画対象範囲ＤＲ内の各位置Ｐｍｎのピクセルのうち、ぼかし閾値ＢＴｍｎが、取得された処理対象ピクセルＰＸｉのぼかし値Ｂ＝２／３以上であるピクセルに対して、ぼかしピクセル値を描画する。例えば、取得された処理対象ピクセルＰＸｉのぼかし濃度値Ａ＝１／９とピクセル値ＰＶｉを乗算し、得られたぼかしピクセル値（１／９）×ＰＶｉを、Ｐ３３、Ｐ３４、Ｐ３５、Ｐ４３、Ｐ４４、Ｐ４５、Ｐ５３、Ｐ５４、Ｐ５５の位置のピクセルに対して描画する。
【００８２】
また図１１ではＰＸｉ＋１が処理対象ピクセルになっている。また元画像の処理対象ピクセルＰＸｉ＋１の奥行き値は、図９（Ｂ）のＺ２〜又はＺ２’〜の範囲にあり、参照テーブルＲＴＢからは、処理対象ピクセルＰＸｉ＋１のぼかし値としてＢ＝１／３が取得され、ぼかし濃度値としてＡ＝１／２５が取得されている。この場合は、処理対象ピクセルＰＸｉ＋１とその周囲のピクセルのうち、描画対象範囲ＤＲ内の各位置Ｐｍｎのピクセルについて、取得されたぼかし値Ｂ＝１／３と、図７（Ｂ）のぼかし閾値判断テーブルＤＴＢに記憶されるぼかし閾値ＢＴｍｎとを比較し、ぼかし閾値ＢＴｍｎがぼかし値Ｂ＝１／３以上であるピクセルに対して、ぼかしピクセル値を描画する。例えば、取得された処理対象ピクセルＰＸｉ＋１のぼかし濃度値Ａ＝１／２５とピクセル値ＰＶｉ＋１を乗算し、得られたぼかしピクセル値（１／２５）×ＰＶｉ＋１を、Ｐ２２、Ｐ２３、Ｐ２４、Ｐ２５、Ｐ２６、Ｐ３２、Ｐ３３・・・Ｐ６６の位置のピクセルに対して描画する。
【００８３】
そしてこのようにぼかしピクセル値を描画する処理を、元画像の全ての処理対象ピクセル（１画面分のピクセル）に対して行う。即ち図１０ではピクセルＰｉの周りの描画対象範囲ＤＲについて、ぼかしピクセル値の描画処理を行い、図１１ではＰｉの隣のピクセルＰｉ＋１の周りの描画対象範囲ＤＲについて、ぼかしピクセル値の描画処理を行っている。このようにして、元画像の画面の左上のピクセルから右下のピクセルまで、描画対象範囲ＤＲについてのぼかしピクセル値の描画処理を行うことで、元画像のぼかし画像（被写界深度画像）が生成される。
【００８４】
本実施形態の第２の手法によれば、図７（Ａ）（Ｂ）のようなぼかし閾値判断テーブルを用いてぼかしピクセル値を描画しているため、ぼかし範囲の大きさを計算する処理を省略できる。従って、比較例の手法に比べてぼかし処理の負荷を格段に軽減できる。
【００８５】
また本実施形態の第２の手法によれば、ぼかし閾値判断テーブルや参照テーブルの内容を変更するだけで、ぼかし範囲の大きさ、ぼかし濃度値の設定等を変化させることができる。従って、比較例の手法のような複雑な計算をしなくても、ぼかし範囲やぼかし具合を様々な設定にすることができ、多様なぼかし表現を実現できるという利点がある。
【００８６】
また本実施形態では、Ｚバッファ１７５を用いて隠面消去を行いながらオブジェクトを描画することで、描画バッファ１７４の第１の描画バッファに元画像を生成する。そしてＺバッファ１７５に格納された元画像の奥行き値に応じたぼかし値、ぼかし濃度値を取得する。そして取得されたぼかし濃度値と、第１の描画バッファに格納された元画像のピクセル値とにより得られるぼかしピクセル値を、描画バッファ１７４の第２の描画バッファに描画する。これにより、第２の描画バッファに元画像のぼかし画像を生成できる。
【００８７】
このように第１、第２の描画バッファを使用して元画像、ぼかし画像を生成すれば、元画像の奥行き値やピクセル値を有効利用しながら、簡素な処理で、元画像のぼかし画像を生成できるようになる。
【００８８】
２．４  詳細な処理例
次に本実施形態の詳細な処理例を図１２、図１３のフローチャートを用いて説明する。
【００８９】
図１２は本実施形態の第１の手法のフローチャートである。まず図３（Ａ）で説明した仮想焦点の奥行き値ＺＦを設定する（ステップＳ１）。そして奥行き値ＺとＺＦとの差分値に応じて変化するぼかし濃度テーブルＢＴＢ１〜ＢＴＢＪの参照テーブルＲＴＡ（図３（Ｂ）参照）を、ＺＦに基づき求めて、用意する（ステップＳ２）。そしてＬＹ＝０、ＬＸ＝０に設定する（ステップＳ３、Ｓ４）。
【００９０】
次に、元画像が描画される第１の描画バッファの（ＬＸ、ＬＹ）のピクセル値（ＲＧＢ色成分）と、Ｚバッファの奥行き値Ｚを読み出す（ステップＳ５）。そしてＺとＺＦの差分値を参照テーブルＲＴＡに適用し、対応するぼかし濃度テーブルＢＴＢｊを選択する（ステップＳ６）。
【００９１】
次に、Ｖ＝−ＳｉｚｅＶ、Ｕ＝−ＳｉｚｅＵに設定する（ステップＳ７、Ｓ８）。ここで、ＳｉｚｅＶ＝（画面の縦方向の最大ぼかし範囲−１）／２であり、ＳｉｚｅＵ＝（画面の横方向の最大ぼかし範囲−１）／２である。
【００９２】
次に、ぼかし濃度テーブルＢＴＢｊから（Ｕ、Ｖ）の位置のぼかし濃度値Ａを読み出す（ステップＳ９）。そして第２の描画バッファの（ＬＸ＋Ｕ、ＬＹ＋Ｖ）の位置に、ぼかし濃度値Ａと元画像のピクセル値により得られるぼかしピクセル値（ＲＧＢ色成分）を描画する（ステップＳ１０）。
【００９３】
次に、Ｕを１だけインクリメントする（ステップＳ１１）。そしてＵ＞ＳｉｚｅＵか否かを判断し（ステップＳ１２）、Ｕ≦ＳｉｚｅＵである場合にはステップＳ９に戻る。また、Ｖを１だけインクリメントする（ステップＳ１３）。そしてＶ＞ＳｉｚｅＶか否かを判断し（ステップＳ１４）、Ｖ≦ＳｉｚｅＶである場合にはステップＳ８に戻る。
【００９４】
次に、ＬＸを１だけインクリメントする（ステップＳ１５）。そしてＬＸ＝ＳｉｚｅＸか否かを判断し（ステップＳ１６）、ＬＸ＝ＳｉｚｅＸではない場合にはステップＳ５に戻る。またＬＹを１だけインクリメントする（ステップＳ１７）。そしてＬＹ＝ＳｉｚｅＹか否かを判断し（ステップＳ１８）、ＬＹ＝ＳｉｚｅＹではない場合にはステップＳ４に戻る。なおＳｉｚｅＸは画面の横サイズであり、ＳｉｚｅＹは画面の縦サイズである。
【００９５】
図１３は本実施形態の第２の手法のフローチャートである。まず仮想焦点の奥行き値ＺＦを設定する（ステップＳ２１）。そして奥行き値ＺとＺＦとの差分値に応じて変化するぼかし値Ｂと、Ｂに対するぼかし濃度値Ａの参照テーブルＲＴＢ（図９（Ａ）（Ｂ）参照）を、ＺＦに基づき用意する（ステップＳ２２）。 そしてＬＹ＝０、ＬＸ＝０に設定する（ステップＳ２３、Ｓ２４）。
【００９６】
次に、元画像が描画される第１の描画バッファの（ＬＸ，ＬＹ）のピクセル値（ＲＧＢ色成分）と、Ｚバッファの奥行き値Ｚを読み出す（ステップＳ２５）。そしてＺとＺＦの差分値を参照テーブルＲＴＢに適用し、対応するぼかし値Ｂとぼかし濃度値Ａを読み出す（ステップＳ２６）。
【００９７】
次に、Ｖ＝−ＳｉｚｅＶ、Ｕ＝−ＳｉｚｅＵに設定する（ステップＳ２７、Ｓ２８）。そしてぼかし閾値判断テーブルＤＴＢの（Ｕ、Ｖ）の位置のぼかし閾値ＢＴを読み出す（ステップＳ２９）。
【００９８】
次に、ぼかし閾値ＢＴとぼかし値Ｂを比較し、ＢＴ≧Ｂか否かを判断する（ステップＳ３０）。そしてＢＴ≧Ｂである場合には、描画ぼかし濃度値をα＝Ａに設定する（ステップＳ３１）。一方、ＢＴ＜Ｂである場合には、描画ぼかし濃度値をα＝０に設定する（ステップＳ３２）。
【００９９】
次に、第２の描画バッファの（ＬＸ＋Ｕ、ＬＹ＋Ｖ）の位置に、描画ぼかし濃度値αと元画像のピクセル値により得られるぼかしピクセル値（ＲＧＢ色成分）を描画する（ステップＳ３３）。
【０１００】
次に、Ｕを１だけインクリメントする（ステップＳ３４）。そしてＵ＞ＳｉｚｅＵか否かを判断し（ステップＳ３５）、Ｕ≦ＳｉｚｅＵである場合にはステップＳ２９に戻る。また、Ｖを１だけインクリメントする（ステップＳ３６）。そしてＶ＞ＳｉｚｅＶか否かを判断し（ステップＳ３７）、Ｖ≦ＳｉｚｅＶである場合にはステップＳ２８に戻る。
【０１０１】
次に、ＬＸを１だけインクリメントする（ステップＳ３８）。そしてＬＸ＝ＳｉｚｅＸか否かを判断し（ステップＳ３９）、ＬＸ＝ＳｉｚｅＸではない場合にはステップＳ２５に戻る。またＬＹを１だけインクリメントする（ステップＳ４０）。そしてＬＹ＝ＳｉｚｅＹか否かを判断し（ステップＳ４１）、ＬＹ＝ＳｉｚｅＹではない場合にはステップＳ２４に戻る。
【０１０２】
３．ハードウェア構成
図１４に本実施形態を実現できるハードウェア構成の例を示す。メインプロセッサ９００は、ＤＶＤ９８２（情報記憶媒体。ＣＤでもよい。）に格納されたプログラム、通信インターフェース９９０を介してダウンロードされたプログラム、或いはＲＯＭ９５０に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などを実行する。コプロセッサ９０２は、メインプロセッサ９００の処理を補助するものであり、マトリクス演算（ベクトル演算）を高速に実行する。例えばオブジェクトを移動させたり動作（モーション）させる物理シミュレーションに、マトリクス演算処理が必要な場合には、メインプロセッサ９００上で動作するプログラムが、その処理をコプロセッサ９０２に指示（依頼）する。
【０１０３】
ジオメトリプロセッサ９０４は、メインプロセッサ９００上で動作するプログラムからの指示に基づいて、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、マトリクス演算を高速に実行する。データ伸張プロセッサ９０６は、圧縮された画像データや音データのデコード処理を行ったり、メインプロセッサ９００のデコード処理をアクセレートする。これにより、オープニング画面やゲーム画面において、ＭＰＥＧ方式等で圧縮された動画像を表示できる。
【０１０４】
描画プロセッサ９１０は、ポリゴンや曲面などのプリミティブ面で構成されるオブジェクトの描画（レンダリング）処理を実行する。オブジェクトの描画の際には、メインプロセッサ９００は、ＤＭＡコントローラ９７０を利用して、描画データを描画プロセッサ９１０に渡すと共に、必要であればテクスチャ記憶部９２４にテクスチャを転送する。すると描画プロセッサ９１０は、描画データやテクスチャに基づいて、Ｚバッファなどを利用した隠面消去を行いながら、オブジェクトをフレームバッファ９２２に描画する。また描画プロセッサ９１０は、αブレンディング（半透明処理）、デプスキューイング、ミップマッピング、フォグ処理、バイリニア・フィルタリング、トライリニア・フィルタリング、アンチエイリアシング、シェーディング処理なども行う。頂点シェーダやピクセルシェーダなどのプログラマブルシェーダが実装されている場合には、シェーダプログラムに従って、頂点データの作成・変更（更新）やピクセル（あるいはフラグメント）の描画色の決定を行う。１フレーム分の画像がフレームバッファ９２２に書き込まれるとその画像はディスプレイ９１２に表示される。
【０１０５】
サウンドプロセッサ９３０は、多チャンネルのＡＤＰＣＭ音源などを内蔵し、ＢＧＭ、効果音、音声などのゲーム音を生成し、スピーカ９３２を介して出力する。ゲームコントローラ９４２やメモリカード９４４からのデータはシリアルインターフェース９４０を介して入力される。
【０１０６】
ＲＯＭ９５０にはシステムプログラムなどが格納される。業務用ゲームシステムの場合にはＲＯＭ９５０が情報記憶媒体として機能し、ＲＯＭ９５０に各種プログラムが格納される。なおＲＯＭ９５０の代わりにハードディスクを利用してもよい。ＲＡＭ９６０は各種プロセッサの作業領域となる。ＤＭＡコントローラ９７０は、プロセッサ、メモリ間でのＤＭＡ転送を制御する。ＤＶＤドライブ９８０（ＣＤドライブでもよい。）は、プログラム、画像データ、或いは音データなどが格納されるＤＶＤ９８２（ＣＤでもよい。）にアクセスする。通信インターフェース９９０はネットワーク（通信回線、高速シリアルバス）を介して外部との間でデータ転送を行う。
【０１０７】
なお本実施形態の各部（各手段）の処理は、その全てをハードウェアのみにより実現してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。
【０１０８】
そして本実施形態の各部の処理をハードウェアとプログラムの両方により実現する場合には、情報記憶媒体には、ハードウェア（コンピュータ）を本実施形態の各部として機能させるためのプログラムが格納される。より具体的には、上記プログラムが、ハードウェアである各プロセッサ９０２、９０４、９０６、９１０、９３０に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ９０２、９０４、９０６、９１０、９３０は、その指示と渡されたデータとに基づいて本発明の各部の処理を実現する。
【０１０９】
なお、上記のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語と共に記載された用語は、明細書または図面のいかなる箇所においても、その異なる用語に置き換えることができる。
【０１１０】
また、テーブルの選択手法、ぼかしピクセル値の描画手法、ぼかし値やぼかし濃度値の取得手法も本実施形態で説明したものに限定されず、これらと均等な手法も本発明の範囲に含まれる。
【０１１１】
また本発明は種々のゲームに適用できる。また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレイヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード、携帯電話等の種々の画像生成システムに適用できる。
【図面の簡単な説明】
【０１１２】
【図１】本実施形態の画像生成システムの機能ブロック図の例。
【図２】図２（Ａ）（Ｂ）はぼかし濃度テーブルの説明図。
【図３】図３（Ａ）（Ｂ）はぼかし濃度テーブルの選択手法の説明図。
【図４】本実施形態の第１の手法の描画処理の説明図。
【図５】本実施形態の第１の手法の描画処理の説明図。
【図６】図６（Ａ）（Ｂ）は本実施形態の補間手法の説明図。
【図７】図７（Ａ）（Ｂ）はぼかし閾値判断テーブルの説明図。
【図８】図８（Ａ）（Ｂ）はぼかし閾値判断テーブルの他の例。
【図９】図９（Ａ）（Ｂ）はぼかし値、ぼかし濃度値の取得手法の説明図。
【図１０】本実施形態の第２の手法の描画処理の説明図。
【図１１】本実施形態の第２の手法の描画処理の説明図。
【図１２】本実施形態の第１の手法の処理の詳細例。
【図１３】本実施形態の第２の手法の処理の詳細例。
【図１４】ハードウェア構成例。
【符号の説明】
【０１１３】
１００  処理部、１０８  ゲーム演算部、１１０  オブジェクト空間設定部、
１１２  移動体演算部、１１４  仮想カメラ制御部、１１６  テーブル選択部、
１１８  取得部、１２０  画像生成部、１２２  ぼかし画像生成部、
１２４  元画像生成部、１６０  操作部、１７０  記憶部、
１７２  主記憶部、１７４  描画バッファ、１７５  Ｚバッファ、
１７６  モデルデータ記憶部、１７７-1、１７７-2、１７７-3  ぼかし濃度テーブル、
１７８  参照テーブル、１７９  ぼかし閾値判断テーブル、
１８０  情報記憶媒体、１９０  表示部、１９２  音出力部、
１９４  携帯型情報記憶装置、１９６  通信部
【図１】
0004749198.tif 000002
【図２】
0004749198.tif 000003
【図３】
0004749198.tif 000004
【図４】
0004749198.tif 000005
【図５】
0004749198.tif 000006
【図６】
0004749198.tif 000007
【図７】
0004749198.tif 000008
【図８】
0004749198.tif 000009
【図９】
0004749198.tif 000010
【図１０】
0004749198.tif 000011
【図１１】
0004749198.tif 000012
【図１２】
0004749198.tif 000013
【図１３】
0004749198.tif 000014
【図１４】
0004749198.tif 000015