JP2002092630A - ゲームシステム、プログラム及び情報記憶媒体 - Google Patents

ゲームシステム、プログラム及び情報記憶媒体

Info

Publication number
JP2002092630A
JP2002092630A JP2001020477A JP2001020477A JP2002092630A JP 2002092630 A JP2002092630 A JP 2002092630A JP 2001020477 A JP2001020477 A JP 2001020477A JP 2001020477 A JP2001020477 A JP 2001020477A JP 2002092630 A JP2002092630 A JP 2002092630A
Authority
JP
Japan
Prior art keywords
value
image
depth value
bits
texture mapping
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2001020477A
Other languages
English (en)
Other versions
JP4656616B2 (ja
Inventor
Shigeru Kikko
繁 橘高
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 JP2001020477A priority Critical patent/JP4656616B2/ja
Publication of JP2002092630A publication Critical patent/JP2002092630A/ja
Application granted granted Critical
Publication of JP4656616B2 publication Critical patent/JP4656616B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)

Abstract

(57)【要約】 【課題】 奥行き値に応じて設定されたα値を用いたリ
アルな画像を、少ない処理負担で生成できるゲームシス
テム、プログラム及び情報記憶媒体の提供。 【解決手段】 元画像の各画素のZ値を、Z値の最上位
ビットよりも下位のビットI〜Jにより構成されるZ2
値に変換し、このZ2値に応じた値に各画素のα値を設
定する。そしてこのα値に基づいて画像を生成すること
で、被写体深度の画像表現やフォグ画像の表現を実現す
る。Z値のビットI〜J以外のビットの値に応じてZ2
値を所与の値にクランプする。Z値のビットM〜N、ビ
ットK〜L(K≧I≧L>M≧J≧N)をLUT1、L
UT2のインデックス番号に設定してテクスチャマッピ
ングを行い、Z値をZ3値、Z4値に変換する。そして
Z3値、Z4値に基づきZ2値を求める。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ゲームシステム、
プログラム及び情報記憶媒体に関する。
【0002】
【背景技術及び発明が解決しようとする課題】従来よ
り、仮想的な3次元空間であるオブジェクト空間内の所
与の視点から見える画像を生成するゲームシステムが知
られており、いわゆる仮想現実を体験できるものとして
人気が高い。レーシングゲームを楽しむことができるゲ
ームシステムを例にとれば、プレーヤは、車(オブジェ
クト)を操作してオブジェクト空間内で走行させ、他の
プレーヤやコンピュータが操作する車と競争することで
3次元ゲームを楽しむ。
【0003】さて、従来のゲームシステムにより生成さ
れる画像は、人間の視界画像のように視点からの距離に
応じてフォーカシングされた画像ではなかった。このた
め、画像内の全ての被写体にピントが合っているかのよ
うな表現になっていた。
【0004】しかしながら、至近距離から遠距離までの
全ての被写体にピントが合っている画像は、日常生活で
は見ることができない画像であるため、見た目に不自然
さがあった。
【0005】よりリアリティを追求するためには、視点
とオブジェクトとの距離や視線方向などに応じてピント
の度合いが調節された画像を生成することが望ましい。
しかしながら、ゲーム空間内の個々のオブジェクトにつ
いて視点との距離等を計算し、各オブジェクト毎にぼや
け具合を演算することで、ぼやけた画像を生成すると、
処理負荷が過大になる。
【0006】リアルタイムに変化する視点に対応した画
像を、制約されたハードウェア資源を用いて生成する必
要があるゲームシステムにおいては、如何にして少ない
処理負担で、現実世界の視界画像のようにフォーカシン
グされた画像を生成するかが重要な課題となる。
【0007】本発明は、以上のような課題に鑑みてなさ
れたものであり、その目的とするところは、よりリアル
な画像を少ない処理負担で生成できるゲームシステム及
び情報記憶媒体を提供することにある。
【0008】本発明の他の目的は、奥行き値に応じて設
定されたα値を用いたリアルな画像を、少ない処理負担
で生成できるゲームシステム及び情報記憶媒体を提供す
ることにある。
【0009】本発明の他の目的は、現実世界の視界画像
のようにフォーカシングされた画像を、少ない処理負担
で生成できるゲームシステム及び情報記憶媒体を提供す
ることにある。
【0010】
【課題を解決するための手段】上記課題を解決するため
に、本発明は、画像生成を行うゲームシステムであっ
て、元画像の各画素の奥行き値を、前記奥行き値の最上
位ビットよりも下位のビットI〜ビットJにより構成さ
れる第2の奥行き値に変換する手段と、前記第2の奥行
き値に応じた値に、各画素のα値を設定する手段と、設
定されたα値に基づいて画像を生成する手段とを含むこ
とを特徴とする。また本発明に係る情報記憶媒体は、コ
ンピュータにより使用可能な情報記憶媒体であって、上
記手段を実行するためのプログラムを含むことを特徴と
する。また本発明に係るプログラムは、コンピュータに
より使用可能なプログラム(搬送波に具現化されるプロ
グラムを含む)であって、上記手段を実行するための処
理ルーチンを含むことを特徴とする。
【0011】本発明によれば、元画像の各画素の奥行き
値が、奥行き値のビットI〜ビットJにより構成される
第2の奥行き値に変換される。そして、この第2の奥行
き値に応じた値に各画素のα値が設定され、このα値に
基づいて画像が生成される。従って、このα値を用いた
種々の画像表現(例えば被写界深度の画像表現、フォグ
画像の表現、デプスキューイングの画像表現等)が可能
になる。
【0012】そして本発明によれば、奥行き値の最上位
ビットよりも下位のビットI〜ビットJにより構成され
る第2の奥行き値に応じた値に、各画素のα値が設定さ
れる。従って、奥行き値の最上位ビットを含む上位のビ
ット列を第2の奥行き値として設定する手法に比べて、
α値の実効的な区分け数(奥行き値のしきい値の実効的
な段階数)を増やすこと可能となる。これにより、α値
を多段階のしきい値で精度良く制御できるようになり、
生成される画像の品質を高めることができる。
【0013】なお、α(アルファ)値は、各画素に関連
づけられて記憶される情報であり、例えば色情報以外の
情報である。また、第2の奥行き値に応じた値にα値を
設定する手法としては、インデックスカラー・テクスチ
ャマッピング用のルックアップテーブルを利用する手
法、仮想オブジェクトを順次描画することで仮想オブジ
ェクトの奥側や手前側の画素のα値を順次更新する手法
等の種々の手法を採用できる。
【0014】また本発明に係るゲームシステム、情報記
憶媒体及びプログラムは、元画像と該元画像に対応する
ぼかし画像とを、各画素に設定されるα値に基づいて合
成することを特徴とする。
【0015】本発明によれば、元画像の各画素の奥行き
値が、奥行き値のビットI〜ビットJにより構成される
第2の奥行き値に変換される。そして、この第2の奥行
き値に応じた値に各画素のα値が設定され、このα値に
基づいて元画像とぼかし画像とが合成される。従って、
奥行き値(第2の奥行き値)に応じて、ぼかし画像の合
成比率等を変化させることが可能になり、被写界深度な
どの表現が可能になる。
【0016】そして本発明によれば、α値の実効的な区
分け数を増やすことができるため、仮想カメラの焦点
(注視点)付近にあるオブジェクトのぼけ具合を、多段
階のしきい値で精度良く制御できるようになり、生成さ
れる画像の品質を高めることができる。
【0017】なお、元画像の合成対象となるぼかし画像
の合成手法としては、種々の手法を採用できる。またα
値を用いた合成処理はαブレンディングに限定されな
い。
【0018】また、本発明の手法により設定されたα値
を利用する画像表現は、このような被写体深度の画像表
現に限定されない。
【0019】例えば、本発明の手法により設定されたα
値に基づいて、元画像の色と所与の色とをα合成(αブ
レンディング等)すれば、視点から遠ざかる(或いは近
づく)につれて元画像の色が所与の色に近づいて行くフ
ォグ画像の表現が可能になる。
【0020】また、設定されたα値に基づいて、元画像
の輝度や彩度を変化させてもよい。
【0021】また、設定されたα値に基づいて、元画像
と所与の他の画像とをα合成してもよい。
【0022】或いは、設定されたα値に基づいて、元画
像と元画像の変換画像(ガンマ補正、ネガポジ反転、ポ
スタリゼーション、ソラリゼーション、2値化、モノト
ーンフィルタ又はセピアフィルタなどの変換を施した画
像)とをα合成してもよい。
【0023】また本発明に係るゲームシステム、情報記
憶媒体及びプログラムは、元画像をテクスチャとして設
定し、該テクスチャをテクセル補間方式で仮想オブジェ
クトにマッピングする際に仮想オブジェクトのテクスチ
ャ座標をシフトさせ、元画像のぼかし画像を生成するこ
とを特徴とする。
【0024】このようにすれば、テクスチャ座標をシフ
トさせながらテクセル補間方式で仮想オブジェクトに元
画像をマッピングするだけという簡素な処理で、元画像
のぼかし画像を生成できるようになる。
【0025】なお、テクセル補間方式とは、特には限定
はされないが、テクセルの画像情報を補間してピクセル
の画像情報を得る方式などであり、例えば、バイリニア
フィルタ方式やトライリニアフィルタ方式などを考える
ことができる。
【0026】また、仮想オブジェクトは、ポリゴンなど
のプリミティブ面であることが望ましいが、立体的なオ
ブジェクトであってもよい。また、仮想オブジェクトは
画面上に表示しないことが望ましいが、表示するように
してもよい。
【0027】また、テクセル補間方式のテクスチャマッ
ピングでぼかし画像を生成する場合には、テクスチャ座
標を1テクセルよりも小さい値だけシフトさせることが
望ましい。また、テクスチャ座標を第1のシフト方向へ
シフトさせてテクセル補間方式でテクスチャマッピング
を行った後に、テクスチャ座標を第2のシフト方向にシ
フトさせてテクセル補間方式でテクスチャマッピングを
行ってもよい。或いは、第1のシフト方向へのシフトと
第2のシフト方向へのシフトのセットを、複数回繰り返
してもよい。
【0028】また本発明に係るゲームシステム、情報記
憶媒体及びプログラムは、前記奥行き値のビットI〜ビ
ットJ以外のビットの値に応じて、前記第2の奥行き値
を所与の値にクランプすることを特徴とする。
【0029】このようにすれば、奥行き値のビットI〜
ビットJ以外のビットに1が立った場合等においても、
矛盾の無い画像を生成できる。なお、所与の値として
は、第2の奥行き値の最大値や最小値、或いは第2の奥
行き値の上位のビット列を1にした値など、種々の値を
考えることができる。
【0030】また本発明に係るゲームシステム、情報記
憶媒体及びプログラムは、前記奥行き値を、インデック
スカラー・テクスチャマッピング用のルックアップテー
ブルのインデックス番号として設定し、前記ルックアッ
プテーブルを用いて仮想オブジェクトに対してインデッ
クスカラー・テクスチャマッピングを行い、前記奥行き
値を前記第2の奥行き値に変換することを特徴とする。
【0031】このようにすれば、ルックアップテーブル
の変換特性を変更するだけという少ない処理負担で、第
2の奥行き値を所与の値にクランプするなどの多様な変
換処理を実現できるようになる。
【0032】なお、仮想オブジェクトは、ポリゴンなど
のプリミティブ面であることが望ましいが、立体的なオ
ブジェクトであってもよい。また、仮想オブジェクトは
画面上に表示しないことが望ましいが、表示するように
してもよい。
【0033】また本発明に係るゲームシステム、情報記
憶媒体及びプログラムは、前記奥行き値のビットM〜ビ
ットNを、インデックスカラー・テクスチャマッピング
用の第1のルックアップテーブルのインデックス番号と
して設定し、前記第1のルックアップテーブルを用いて
仮想オブジェクトに対してインデックスカラー・テクス
チャマッピングを行い、前記奥行き値を第3の奥行き値
に変換し、前記奥行き値のビットK〜ビットL(K≧I
≧L>M≧J≧N)を、インデックスカラー・テクスチ
ャマッピング用の第2のルックアップテーブルのインデ
ックス番号として設定し、前記第2のルックアップテー
ブルを用いて仮想オブジェクトに対してインデックスカ
ラー・テクスチャマッピングを行い、前記奥行き値を第
4の奥行き値に変換し、前記第3、第4の奥行き値に基
づいて前記第2の奥行き値を求めることを特徴とする。
【0034】このようにすれば、奥行き値の所定範囲の
ビット列(例えば0〜7、8〜15、16〜23、24
〜31ビット)しか取り出せないような制限がある場合
においても、奥行き値の任意のビットI〜Jから構成さ
れる第2の奥行き値を得ることができる。これにより、
α値の実効的な区分け数(奥行き値のしきい値の実効的
な段階数)を増やすこと可能となり、生成される画像の
品質を高めることができる。
【0035】また本発明は、画像生成を行うゲームシス
テムであって、所与の画像情報のビットM〜ビットN
を、インデックスカラー・テクスチャマッピング用の第
1のルックアップテーブルのインデックス番号として設
定し、前記第1のルックアップテーブルを用いて仮想オ
ブジェクトに対してインデックスカラー・テクスチャマ
ッピングを行い、前記画像情報を第3の画像情報に変換
する手段と、前記画像情報のビットK〜ビットLを、イ
ンデックスカラー・テクスチャマッピング用の第2のル
ックアップテーブルのインデックス番号として設定し、
前記第2のルックアップテーブルを用いて仮想オブジェ
クトに対してインデックスカラー・テクスチャマッピン
グを行い、前記画像情報を第4の画像情報に変換する手
段と、前記第3、第4の画像情報に基づいて、前記画像
情報のビットI〜ビットJ(K≧I≧L>M≧J≧N)
により構成される第2の画像情報を求める手段とを含む
ことを特徴とする。また本発明に係る情報記憶媒体は、
コンピュータにより使用可能な情報記憶媒体であって、
上記手段を実行するためのプログラムを含むことを特徴
とする。また本発明に係るプログラムは、コンピュータ
により使用可能なプログラム(搬送波に具現化されるプ
ログラムを含む)であって、上記手段を実行するための
処理ルーチンを含むことを特徴とする。
【0036】本発明によれば、画像情報の所定範囲のビ
ット列(例えば0〜7、8〜15、16〜23、24〜
31ビット)しか取り出せないような制限がある場合に
おいても、画像情報の任意のビットI〜Jから構成され
る第2の画像情報を得ることができる。
【0037】また本発明によれば、ゲームシステム(画
像生成システム)が元々有しているインデックスカラー
・テクスチャマッピングの機能を有効利用して、画像情
報を第2の画像情報に変換できる。従って、画像情報の
変換処理を、例えば新たなハードウェアを追加すること
なく、高速に実行できるようになり、全表示画面分の画
像情報の変換も容易となる。
【0038】なお、画像情報や第2の画像情報は、例え
ば、描画領域(フレームバッファ、別バッファ等)に描
画されている情報であり、色情報、α値又は奥行き値な
どを含む。
【0039】また本発明に係るゲームシステム、情報記
憶媒体及びプログラムは、前記仮想オブジェクトが、表
示画面サイズのポリゴンであることを特徴とする。
【0040】このようにすれば、全表示画面分の元画像
の奥行き値を例えば1回(或いは数回)のテクスチャマ
ッピングでα値に変換できるようになる。
【0041】また本発明に係るゲームシステム、情報記
憶媒体及びプログラムは、前記仮想オブジェクトが、表
示画面を分割したブロックのサイズのポリゴンであるこ
とを特徴とする。
【0042】このようにすれば、仮想オブジェクトを描
画する領域の大きさを小さくすることが可能になり、記
憶部の使用記憶容量を節約できる。
【0043】
【発明の実施の形態】以下、本発明の好適な実施形態に
ついて図面を用いて説明する。
【0044】1.構成 図1に、本実施形態のゲームシステム(画像生成システ
ム)のブロック図の一例を示す。なお同図において本実
施形態は、少なくとも処理部100を含めばよく、それ
以外のブロックについては、任意の構成要素とすること
ができる。
【0045】ここで処理部100は、システム全体の制
御、システム内の各ブロックへの命令の指示、ゲーム処
理、画像処理、音処理などの各種の処理を行うものであ
り、その機能は、各種プロセッサ(CPU、DSP
等)、或いはASIC(ゲートアレイ等)などのハード
ウェアや、所与のプログラム(ゲームプログラム)によ
り実現できる。
【0046】操作部160は、プレーヤが操作データを
入力するためのものであり、その機能は、レバー、ボタ
ン、筺体などのハードウェアにより実現できる。
【0047】記憶部170は、処理部100や通信部1
96などのワーク領域となるもので、その機能はRAM
などのハードウェアにより実現できる。
【0048】情報記憶媒体(コンピュータにより使用可
能な記憶媒体)180は、プログラムやデータなどの情
報を格納するものであり、その機能は、光ディスク(C
D、DVD)、光磁気ディスク(MO)、磁気ディス
ク、ハードディスク、磁気テープ、或いはメモリ(RO
M)などのハードウェアにより実現できる。処理部10
0は、この情報記憶媒体180に格納される情報に基づ
いて本発明(本実施形態)の種々の処理を行う。即ち情
報記憶媒体180には、本発明(本実施形態)の手段
(特に処理部100に含まれるブロック)を実行するた
めの情報(プログラム或いはデータ)が格納される。
【0049】なお、情報記憶媒体180に格納される情
報の一部又は全部は、システムへの電源投入時等に記憶
部170に転送されることになる。また情報記憶媒体1
80に記憶される情報は、本発明の処理を行うためのプ
ログラムコード、画像データ、音データ、表示物の形状
データ、テーブルデータ、リストデータ、本発明の処理
を指示するための情報、その指示に従って処理を行うた
めの情報等の少なくとも1つを含むものである。
【0050】表示部190は、本実施形態により生成さ
れた画像を出力するものであり、その機能は、CRT、
LCD、或いはHMD(ヘッドマウントディスプレイ)
などのハードウェアにより実現できる。
【0051】音出力部192は、本実施形態により生成
された音を出力するものであり、その機能は、スピーカ
などのハードウェアにより実現できる。
【0052】携帯型情報記憶装置194は、プレーヤの
個人データ(セーブデータ)などが記憶されるものであ
り、この携帯型情報記憶装置194としては、メモリカ
ードや携帯型ゲーム装置などを考えることができる。
【0053】通信部196は、外部(例えばホスト装置
や他のゲームシステム)との間で通信を行うための各種
の制御を行うものであり、その機能は、各種プロセッ
サ、或いは通信用ASICなどのハードウェアや、プロ
グラムなどにより実現できる。
【0054】なお本発明(本実施形態)の手段を実行す
るためのプログラム或いはデータは、ホスト装置(サー
バー)が有する情報記憶媒体からネットワーク及び通信
部196を介して情報記憶媒体180に配信するように
してもよい。このようなホスト装置(サーバー)の情報
記憶媒体の使用も本発明の範囲内に含まれる。
【0055】処理部100は、ゲーム処理部110、画
像生成部130、音生成部150を含む。
【0056】ここでゲーム処理部110は、コイン(代
価)の受け付け処理、各種モードの設定処理、ゲームの
進行処理、選択画面の設定処理、オブジェクト(1又は
複数のプリミティブ面)の位置や回転角度(X、Y又は
Z軸回り回転角度)を求める処理、オブジェクトを動作
させる処理(モーション処理)、視点の位置(仮想カメ
ラの位置)や視線角度(仮想カメラの回転角度)を求め
る処理、マップオブジェクトなどのオブジェクトをオブ
ジェクト空間へ配置するための処理、ヒットチェック処
理、ゲーム結果(成果、成績)を演算する処理、複数の
プレーヤが共通のゲーム空間でプレイするための処理、
或いはゲームオーバー処理などの種々のゲーム処理を、
操作部160からの操作データや、携帯型情報記憶装置
194からの個人データや、ゲームプログラムなどに基
づいて行う。
【0057】画像生成部130は、ゲーム処理部110
からの指示等にしたがって各種の画像処理を行い、例え
ばオブジェクト空間内で仮想カメラ(視点)から見える
画像を生成して、表示部190に出力する。また、音生
成部150は、ゲーム処理部110からの指示等にした
がって各種の音処理を行い、BGM、効果音、音声など
の音を生成し、音出力部192に出力する。
【0058】なお、ゲーム処理部110、画像生成部1
30、音生成部150の機能は、その全てをハードウェ
アにより実現してもよいし、その全てをプログラムによ
り実現してもよい。或いは、ハードウェアとプログラム
の両方により実現してもよい。
【0059】ゲーム処理部110は、移動・動作演算部
112を含む。
【0060】ここで移動・動作演算部112は、車など
のオブジェクトの移動情報(位置データ、回転角度デー
タ)や動作情報(オブジェクトの各パーツの位置デー
タ、回転角度データ)を演算するものであり、例えば、
操作部160によりプレーヤが入力した操作データやゲ
ームプログラムなどに基づいて、オブジェクトを移動さ
せたり動作させたりする処理を行う。
【0061】より具体的には、移動・動作演算部112
は、オブジェクトの位置や回転角度を例えば1フレーム
(1/60秒)毎に求める処理を行う。例えば(k−
1)フレームでのオブジェクトの位置をPMk-1、速度
をVMk-1、加速度をAMk-1、1フレームの時間を△t
とする。するとkフレームでのオブジェクトの位置PM
k、速度VMkは例えば下式(1)、(2)のように求め
られる。
【0062】 PMk=PMk-1+VMk-1×△t (1) VMk=VMk-1+AMk-1×△t (2) 画像生成部130は、ジオメトリ処理部132、インデ
ックス番号設定部134、描画部140を含む。
【0063】ここで、ジオメトリ処理部132は、座標
変換、クリッピング処理、透視変換、或いは光源計算な
どの種々のジオメトリ処理(3次元演算)を行う。そし
て、ジオメトリ処理後(透視変換後)のオブジェクトデ
ータ(オブジェクトの頂点座標などの形状データ、或い
は頂点テクスチャ座標、輝度データ等)は、記憶部17
0の主記憶領域172に保存される。
【0064】インデックス番号設定部134は、元画像
の画像情報(例えば透視変換後の画像の情報)を、LU
T(ルックアップテーブル)記憶部178に記憶される
インデックスカラー・テクスチャマッピング用のLUT
のインデックス番号として設定するための処理を行う。
ここで、画像情報としては、例えば、色情報(RGB、
YUV等)、α値(各画素に関連づけられて記憶される
情報であり色情報以外のプラスアルファの情報)、奥行
き値(Z値)等、種々の情報を考えることができる。
【0065】そして本実施形態では、元画像の各画素の
奥行き値がインデックス番号として設定されたルックア
ップテーブルを用いて、仮想オブジェクトに対してイン
デックスカラー・テクスチャマッピングを行うことで、
元画像の各画素の奥行き値に応じた値に各画素のα値を
設定する。これにより、いわゆる被写界深度の表現やフ
ォグ画像の表現などが可能になる。
【0066】なお、仮想カメラの焦点から遠い画素ほど
α値が大きくなるように(広義には、ぼかし画像の合成
比率が高くなるように)、LUT(ルックアップテーブ
ル)における各画素の奥行き値(インデックス番号)と
α値との対応関係を設定することが望ましい。また、L
UTにおける各画素の奥行き値とα値との対応関係を変
化させることで、被写界深度の範囲やぼかしエフェクト
の強弱を可変に制御してもよい。
【0067】描画部140は、ジオメトリ処理後のオブ
ジェクト(モデル)を、描画領域174(フレームバッ
ファ、別バッファ等のピクセル単位で画像情報を記憶で
きる領域)に描画するための処理を行うものであり、テ
クスチャマッピング部142、α合成部144、陰面消
去部146を含む。
【0068】ここでテクスチャマッピング部142は、
テクスチャ記憶部176に記憶されるテクスチャをオブ
ジェクトにマッピングするための処理(オブジェクトに
マッピングするテクスチャを指定する処理、テクスチャ
を転送する処理等)を行う。この場合、テクスチャマッ
ピング部142は、LUT記憶部178に記憶されるイ
ンデックスカラー・テクスチャマッピング用のLUT
(ルックアップテーブル)を用いたテクスチャマッピン
グを行うことができる。
【0069】そして本実施形態では、テクスチャマッピ
ング部142が、元画像の画像情報がインデックス番号
として設定されたLUTを用いて、仮想オブジェクト
(表示画面サイズのポリゴン、分割ブロックサイズのポ
リゴン等)に対してテクスチャマッピングを行う。これ
により、奥行き値(Z値)をNビット化する処理や、奥
行き値をα値に変換する処理や、種々の画像変換処理
(ガンマ補正、ネガポジ反転、ポスタリゼーション、ソ
ラリゼーション、2値化、モノトーンフィルタ、セピア
フィルタ)を少ない処理負担で実現できるようになる。
【0070】また本実施形態では、元画像とα合成(α
ブレンディング、α加算、α減算、半透明処理等)され
るぼかし画像(最もぼけた画像)の生成処理を、テクセ
ル補間方式(バイリニアフィルタ方式、トライリニアフ
ィルタ方式)のテクスチャマッピングを有効利用して実
現している。
【0071】即ち、テクスチャマッピング部142は、
テクスチャとして設定された元画像を、テクスチャ座標
を例えば1ピクセル(テクセル)よりも小さい値だけシ
フトさせながら(例えば元画像の描画位置に基づき得ら
れるテクスチャ座標からシフトさせながら)、テクセル
補間方式で仮想オブジェクト(ぼかし領域と同一形状の
オブジェクト)にマッピングする。このようにすれば、
テクスチャ座標をシフトさせるだけという簡素な処理
で、元画像の合成対象となるぼかし画像を生成できるよ
うになる。
【0072】α合成部144は、元画像とそのぼかし画
像とを、描画領域174(フレームバッファ等)の各画
素に対して設定されたα値(A値)に基づいて合成する
処理を行う。例えばα合成がαブレンディングである場
合には、下式のように元画像とぼかし画像とが合成され
る。
【0073】 RQ=(1−α)×R1+α×R2 (3) GQ=(1−α)×G1+α×G2 (4) BQ=(1−α)×B1+α×B2 (5) ここで、R1、G1、B1は、描画領域174に既に描画
されている元画像の色(輝度)のR、G、B成分であ
り、R2、G2、B2は、ぼかし画像の色のR、G、B成
分である。またRQ、GQ、BQは、αブレンディングに
より生成されるR、G、B成分である。
【0074】なお、元画像とα合成(αブレンディン
グ、α加算、α減算、半透明処理等)される画像はぼか
し画像に限定されない。例えば、元画像と他の画像とを
α合成してもよい。或いは、元画像と元画像の変換画像
(ガンマ補正、ネガポジ反転、ポスタリゼーション、ソ
ラリゼーション、2値化、モノトーンフィルタ或いはセ
ピアフィルタなどの変換を施した画像)とをα合成して
もよい。
【0075】陰面消去部146は、Z値(奥行き値)が
格納されるZバッファ179(Zプレーン)を用いて、
Zバッファ法のアルゴリズムにしたがった陰面消去を行
う。本実施形態では、このZバッファ179に書き込ま
れたZ値をα値に変換し、そのα値に基づいて元画像と
ぼかし画像の合成処理を行っている。
【0076】なお、本実施形態のゲームシステムは、1
人のプレーヤのみがプレイできるシングルプレーヤモー
ド専用のシステムにしてもよいし、このようなシングル
プレーヤモードのみならず、複数のプレーヤがプレイで
きるマルチプレーヤモードも備えるシステムにしてもよ
い。
【0077】また複数のプレーヤがプレイする場合に、
これらの複数のプレーヤに提供するゲーム画像やゲーム
音を、1つの端末を用いて生成してもよいし、ネットワ
ーク(伝送ライン、通信回線)などで接続された複数の
端末(ゲーム装置、携帯電話)を用いて生成してもよ
い。
【0078】2.本実施形態の特徴 2.1 インデックスカラー・テクスチャマッピングの
利用 さて、ゲームシステムにおいて画像を生成する際には、
モニタ(表示部)の非線形特性を補正するために、画像
に対してガンマ補正と呼ばれる変換を施すことが望まし
い。
【0079】そして、このようなガンマ補正を実現する
手法としては、以下に説明する第1、第2の手法があ
る。
【0080】第1の手法では、図2(A)に示すよう
に、メインメモリ802上にガンマ補正用のLUT(ル
ックアップテーブル)を用意しておく。そして、CPU
800(CPU上で動作するソフトウェア)は、VRA
M806内にあるフレームバッファ808から、元画像
の各画素の色情報(RGB)を読み出す。そして、読み
出された色情報に基づいてガンマ補正用LUTを参照
し、ガンマ補正後の色情報を得る。次に、得られたガン
マ補正後の色情報をフレームバッファの対応する画素に
書き戻す。そして、以上の処理を、元画像の全ての画素
に対して行う。
【0081】一方、第2の手法では、図2(B)に示す
ように、CPU810の制御下で動作する描画プロセッ
サ812の後段に、ハードウェアによりガンマ補正を実
現するガンマ補正回路814を設ける。そして、描画プ
ロセッサ812により生成された色情報に対して、ガン
マ補正回路814がガンマ補正を施し、モニタ816に
出力する。
【0082】しかしながら、図2(A)の第1の手法で
は、フレームバッファ808からの色情報の読み出し、
ガンマ補正用LUT804の参照、ガンマ補正用LUT
804からの色情報の読み出し、読み出した色情報のフ
レームバッファ808への書き戻しなどの全ての処理
を、CPU800上で動作するソフトウェアが行うこと
になる。従って、処理の高速化を図れず、表示画面の全
画素に対するガンマ補正を、1フレーム内で完了するの
は困難となる。また、CPU800の処理負荷が非常に
重くなり、他の処理に悪影響を及ぼすという問題も招
く。
【0083】一方、図2(B)の第2の手法では、専用
のハードウェアであるガンマ補正回路814が使用され
るため、高速なガンマ補正が可能になる。従って、表示
画面の全画素に対するガンマ補正を1フレーム内で完了
することも容易となる。また、CPU810の処理負荷
も少ないため、他の処理に悪影響が及ぶ問題も解決でき
る。
【0084】しかしながら、図2(B)の第2の手法で
は、専用のハードウェアであるガンマ補正回路814が
別途必要になってしまう。従って、ゲームシステムが大
規模化し、製品コストの増加の問題を招く。
【0085】特に、家庭用ゲームシステムにおいては、
製品の普及化を図るために、低コスト化が厳しく要求さ
れており、ほとんどの家庭用ゲームシステムでは、図2
(B)に示すようなガンマ補正回路がハードウェアとし
て設けられていない。従って、ガンマ補正を実現するた
めには、図2(A)のような第1の手法を採用せざるを
得ない。
【0086】ところが、前述のように第1の手法では、
1フレーム内で全表示画面分のガンマ補正を完了するの
は困難であり、他の処理にも悪影響を及ぼす。従って、
家庭用ゲームシステムにおいては、ガンマ補正の実施自
体を断念せざるを得なかった。
【0087】そこで、本出願の発明者は、インデックス
カラー・テクスチャマッピングにおいて使用されるルッ
クアップテーブルLUTの存在に着目した。
【0088】即ち、インデックスカラーテクスチャーマ
ッピングでは、テクスチャ記憶部の使用記憶容量を節約
するために、図3のA1に示すように、実際の色情報
(RGB)ではなくインデックス番号が、テクスチャの
各テクセルに関連づけて記憶される。また、図3のA2
に示すように、インデックスカラー・テクスチャマッピ
ング用のLUT(カラーパレット)には、インデックス
番号により指定される色情報が記憶される。そして、オ
ブジェクトに対してテクスチャマッピングを行う際に
は、テクスチャの各テクセルのインデックス番号に基づ
いてLUTを参照し、対応する色情報をLUTから読み
出し、読み出された色情報をフレームバッファに描画す
る。
【0089】このようなインデックスカラーモードのテ
クスチャマッピングでは、LUTを用いない通常モード
のテクスチャマッピングに比べて、使用できる色数は少
なくなる(例えば256色)。しかしながら、テクスチ
ャ記憶部に実際の色情報(例えば16ビットの色情報)
を記憶する必要が無くなるため、テクスチャ記憶部の使
用記憶容量を大幅に節約できる。
【0090】本実施形態は、このようなインデックスカ
ラー・テクスチャマッピングを通常とは異なる形態で利
用している点に特徴がある。
【0091】即ち、まず図4のB1に示すように、フレ
ームバッファ(広義には描画領域)に描画されている元
画像の各画素の画像情報(例えば色情報)を、ガンマ補
正用のルックアップテーブルLUTのインデックス番号
として設定する(インデックス番号とみなす)。そして
B2に示すように、元画像の画像情報がインデックス番
号として設定されたLUTを用いて、仮想オブジェクト
(例えば表示画面サイズのポリゴン)に対してインデッ
クスカラー・テクスチャマッピングを行い、元画像の画
像情報を変換する。そしてB3に示すように、変換後の
画像情報を、フレームバッファ(描画領域)などに描き
戻す。
【0092】以上のようにして本実施形態では、図5
(A)に示すような元画像から、図5(B)に示すよう
なガンマ補正が施された画像を得ることに成功してい
る。即ち図5(B)の画像では、図5(A)に比べて、
よりコントラストのはっきりした画像になっている。
【0093】例えば図2(A)の第1の手法では、元画
像の色情報の読み出し、ガンマ補正用LUTの参照、色
情報のフレームバッファへの書き戻しなどの全ての処理
をCPU上で動作するソフトウェアが行うことになるた
め、処理の高速化を図れないと共に、CPUの処理負荷
も過大になる。
【0094】これに対して本実施形態では、インデック
スカラー・テクスチャマッピングを有効利用してガンマ
補正を実現しており、このインデックスカラー・テクス
チャマッピングは、専用のハードウェアである描画プロ
セッサ(描画部)により高速に実行される。従って本実
施形態によれば、図2(A)の第1の手法に比べて高速
にガンマ補正を実行でき、全表示画面分のガンマ補正を
1フレーム(例えば1/60秒、1/30秒)内で完了
することも容易となる。
【0095】また、インデックスカラー・テクスチャマ
ッピングは、メインプロセッサ(CPU)とは独立に動
作する描画プロセッサにより実行できるため、メインプ
ロセッサ(CPU)の処理負荷の増加も最小限に抑える
ことができる。従って、ガンマ補正の実行が要因となっ
て他の処理に悪影響が及ぶ事態も防止できる。
【0096】また、従来のゲームシステムでは、描画プ
ロセッサの処理能力はそれほど高くなかった。従って、
フレームバッファへの元画像の描画と、表示画面サイズ
のポリゴンの描画を、1フレーム内で完了させることは
難しかった。
【0097】しかしながら、ゲームシステムにおいて、
描画プロセッサの処理能力の向上は、他の回路ブロック
の処理能力の向上に比べて著しく大きく、非常に高いフ
ィルレート(1秒間にレンダリングできるテクセル数)
を持つ描画プロセッサがゲームシステムに使用されるよ
うになってきた。従って、フレームバッファへの元画像
の描画と、表示画面サイズのポリゴンの描画を、1フレ
ーム内で完了させることも容易となり、インデックスカ
ラー・テクスチャマッピングを有効利用したガンマ補正
も無理なく実現できるようになってきた。
【0098】また図2(B)の第2の手法では、専用の
ハードウェアであるガンマ補正回路が別途必要になり、
ゲームシステムの高コスト化を招く。また、このような
ガンマ補正回路を元々有しない家庭用ゲームシステムな
どでは、図2(B)に示す第2の手法を実現することは
できず、図2(A)の手法を採用せざるを得なかった。
【0099】これに対して本実施形態では、インデック
スカラー・テクスチャマッピングを有効利用してガンマ
補正を実現しており、このインデックスカラー・テクス
チャマッピングは、描画プロセッサが元々持っているハ
ードウェアにより実行される。従って本実施形態によれ
ば、図2(B)のようなガンマ補正回路を新たに付加す
る必要がなく、ゲームシステムが高コスト化してしまう
事態を防止できる。また、ガンマ補正回路を元々有して
いない家庭用ゲームシステムにおいても、ハードウェア
による高速なガンマ補正を実現できるようになる。
【0100】なお、図4では表示画面サイズのポリゴン
にテクスチャマッピングしてガンマ補正(ビデオフィル
タ)を実現しているが、表示画面を分割したブロックの
サイズのポリゴンにテクスチャマッピングするようにし
てもよい。
【0101】即ち、図6のC1に示すように、フレーム
バッファ上の元画像(表示画面)を複数のブロックに分
割し、C2に示すように、各ブロックの画像を、LUT
を用いて分割ブロックサイズのポリゴンにテクスチャマ
ッピングする。そして、得られた分割ブロックサイズの
画像をフレームバッファ(描画領域)に描き戻す。
【0102】或いは、透視変換後(スクリーン座標系へ
の変換後)のオブジェクトの画像の全部又は一部を内包
し、透視変換後のオブジェクトの大きさに応じてその大
きさが変化するようなポリゴン(仮想オブジェクト)を
生成し、そのポリゴンにテクスチャマッピングする。
【0103】このようにすれば、例えばテクスチャマッ
ピングされたポリゴンを別バッファに一時的に描画する
ような場合に、VRAM上での別バッファの占有領域を
小さくできる。
【0104】即ち、図4のように表示画面サイズのポリ
ゴンにテクスチャマッピングすると、この表示画面サイ
ズのポリゴンを一時的に描画するために、表示画面サイ
ズの別バッファをVRAM上に確保しなければならず、
他の処理に支障を来すおそれがある。
【0105】図6のように、分割ブロックサイズのポリ
ゴンにテクスチャマッピングするようにすれば、VRA
M上には分割ブロックサイズの別バッファを用意すれば
済むため、別バッファの占有領域を小さくできる。従っ
て、限られたハードウェア資源を有効利用することが可
能になる。
【0106】2.2 マスク処理 さて、ガンマ補正では、1つの入力値(RIN、GIN
又はBIN)に対して1つの値(ROUT、GOUT又
はBOUT)が出力されるようなLUTが必要になる。
【0107】ところが、図3に示すインデックスカラー
・テクスチャマッピング用のLUTは、元々、ガンマ補
正用に設計されたものではないため、1つ入力値(イン
デックス番号)に対して、複数の値(例えばROUT、
GOUT、及びBOUT)が出力されてしまう。従っ
て、このLUTの不整合を解決しなければならないとい
う課題がある。
【0108】そこで本実施形態では、元画像の画像情報
(R、G、B、Z値又はα値等)をLUTのインデック
ス番号として設定する場合において、変換により得られ
た画像情報のうち必要な画像情報のみが描画領域(フレ
ームバッファ、別バッファ)に描画され、他の画像情報
が描画されないようにするためのマスク処理を行ってい
る。
【0109】より具体的には、図7のD1に示すよう
に、元画像のRプレーンの値をインデックス番号に設定
して、LUTを用いたテクスチャマッピングを行うと、
R(ROUT)、G(GOUT)、B(BOUT)とい
う3つプレーンの値が出力される。そして、この場合に
は、D2に示すように、出力されたRプレーンの値のみ
を描画領域に描画し、Gプレーン、Bプレーンの値につ
いてはマスクして描画領域に描画されないようにする。
【0110】また、図7のD3に示すように、元画像の
Gプレーンの値をインデックス番号に設定してテクスチ
ャマッピングを行った場合には、D4に示すように、出
力されたGプレーンの値のみを描画領域に描画し、Rプ
レーン、Bプレーンの値についてはマスクして描画領域
に描画されないようにする。
【0111】また、図7のD5に示すように、元画像の
Bプレーンの値をインデックス番号に設定してテクスチ
ャマッピングを行った場合には、出力されたBプレーン
の値のみを描画領域に描画し、Rプレーン、Gプレーン
の値についてはマスクして描画領域に描画されないよう
にする。
【0112】以上のようにすることで、元々はガンマ補
正用に設計されていないインデックスカラー・テクスチ
ャマッピング用のLUTを用いながらも、少ない処理負
荷で、元画像の画像変換処理を実行できるようになる。
【0113】2.3 Z値、α値への利用 以上では、インデックスカラー・テクスチャマッピング
用のLUTに基づき出力される色情報R、G、Bを利用
する場合について説明した。
【0114】しかしながら、インデックスカラー・テク
スチャマッピング用のLUTに基づき出力されるα値
(A値。画素に関連づけて設定される色情報以外の情
報)を利用するようにしてもよい。
【0115】例えば図8に示すように、Rプレーン(又
はG、B)の値をインデックス番号として設定して、L
UTを用いたテクスチャマッピングを行い、α(αOU
T)プレーンを生成する。そして、生成されたαプレー
ンを用いて、マスク処理などを行うようにする。
【0116】即ち、例えばR値が0〜127の時にはα
値(αOUT)が0になり、R値が128〜255の時
にはα値が255になるようにα値が設定されたLUT
を使用する。そして、α値が255よりも小さい画素に
ついてはマスク処理を行わず、α値が255の画素につ
いてはマスク処理を行うようにする。このようにすれ
ば、R値が128以上の画素に対してだけマスク処理が
行われるようになり、各画素のR値の大小に応じたマス
ク処理を行うことができるようになる。
【0117】なお、生成されたαプレーンの値をα合成
の係数(透明度、半透明度、不透明度)として使用して
もよい。
【0118】また、LUTのインデックス番号として設
定される画像情報は色情報に限定されない。即ち、描画
領域(VRAM)上にあり、LUTのインデックス番号
として設定できる画像情報であればよい。
【0119】例えば図9に示すように、Z値(奥行き
値)をLUTのインデックス番号として設定するように
してもよい。
【0120】そして、この場合には、Z値をインデック
ス番号に設定してインデックスカラー・テクスチャマッ
ピングを行うことで得られるαプレーンの値を、例えば
α合成の係数として使用するようにする。このようにす
ることで、Z値に応じた値のα値を設定できるようにな
り、ぼかし画像を用いた被写界深度などの表現が可能に
なる。
【0121】即ち図9に示すようなLUTを用いたテク
スチャマッピングを行うことで、図10のF1に示すよ
うに、元画像の各画素A、B、C、DのZ値ZA、Z
B、ZC、ZDに応じた値に各画素のα値αA、αB、
αC、αDを設定する。そして、例えば図10のF2に
示すようなαプレーンを生成する。より具体的には、仮
想カメラ10の焦点(注視点)から遠い画素(焦点との
Z値の差が大きい画素)ほど、例えば大きなα値を設定
する。これにより、仮想カメラ10の焦点から遠い画素
ほど、ぼかし画像の合成比率が高くなる。
【0122】そして、図10のF3に示すように、生成
されたαプレーン(各画素に設定されたα値)に基づい
て、元画像とぼかし画像のα合成(αブレンディング
等)を行う。なお、図11(A)に元画像の例を示し、
図11(B)に、そのぼかし画像の例を示す。
【0123】このように、Z値(奥行き値)に応じて設
定されたα値に基づき元画像(図11(A))とぼかし
画像(図11(B))のα合成を行うことで、例えば、
仮想カメラの焦点(ピントが合っている点として設定さ
れる点)から遠くなるほどぼけて見える画像を生成でき
るようになり、いわゆる被写界深度の表現が可能にな
る。これにより、画面内の全ての被写体にピントが合っ
ていた従来のゲーム画像とは異なり、現実世界の視界画
像のように視点からの距離に応じてフォーカシングされ
たリアルで自然なゲーム画像を生成できる。この結果、
プレーヤの仮想現実感を格段に向上できる。
【0124】例えば図12に、Z値に応じたα値の設定
の一例を示す。なお、図12では、α値は、その大きさ
が1.0以下になるように正規化されている。
【0125】そして図12では、Z値Z1〜Z4、Z
1’〜Z4’(しきい値)により領域AR0〜AR4、
AR1’〜AR4’の区分けが行われる。そして、これ
らの領域AR0〜AR4、AR1’〜AR4’に対し
て、α値α0〜α4、α1’〜α4’が設定される。
【0126】例えば、Z1〜Z2の間の領域AR1にあ
る画素については、そのα値がα1に設定され、Z2〜
Z3の間の領域AR2にある画素については、そのα値
がα2に設定される。また、Z1’〜Z2’の間の領域
AR1’にある画素については、そのα値がα1’に設
定され、Z2’〜Z3’の間の領域AR2’にある画素
については、そのα値がα2’に設定される。
【0127】そして、各領域に設定されるα値には例え
ば以下の関係式が成り立つ。
【0128】 α0<α1 <α2 <α3 <α4 (6) α0<α1’<α2’<α3’<α4’ (7) これらの式(6)、(7)から明らかなように、仮想カ
メラ10の焦点(注視点)から遠いほどα値が大きくな
っている。即ち、仮想カメラ10の焦点とのZ値の差が
大きい画素ほど、ぼかし画像の合成比率が高くなるよう
に、α値が設定されている。
【0129】このようにα値を設定することで、仮想カ
メラの焦点から遠くなるほどぼけて見える画像を生成で
き、いわゆる被写界深度の表現が可能になる。
【0130】しかも本実施形態では、LUTを用いた1
回のテクスチャマッピングで、各画素のZ値をα値に変
換できるため、処理負担が非常に軽いという利点があ
る。
【0131】即ち、LUTを用いないα値の設定手法の
例として、図13(A)、(B)、(C)に示す手法が
考えられる。
【0132】この手法では図13(A)に示すように、
まず、Z値がZ1に設定される仮想オブジェクトOB1
(ポリゴン)を、フレームバッファに描画することで、
仮想オブジェクトOB1を基準に奥側にある画素のα値
を更新する。即ち、Z値に基づく陰面消去手法を有効利
用して、OB1よりも奥側にある画素のα値を更新す
る。
【0133】次に、図13(B)に示すように、Z値が
Z2に設定される仮想オブジェクトOB2をフレームバ
ッファに描画することで、仮想オブジェクトOB2を基
準に奥側にある画素のα値を更新する。同様に、図13
(C)に示すように、Z値がZ3に設定される仮想オブ
ジェクトOB3をフレームバッファに描画することで、
仮想オブジェクトOB3を基準に奥側にある画素のα値
を更新する。
【0134】このような手法を採用すれば、領域AR1
にある画素のα値をα1に設定し、領域AR2にある画
素のα値をα2に設定し、領域AR3にある画素のα値
をα3に設定できるようになる。即ち、LUTを用いな
くても、各画素のZ値に応じた値に各画素のα値を設定
できる。
【0135】しかしながら、この手法では、Z値のしき
い値の段階数分だけ、仮想オブジェクトの描画処理が必
要になる。例えば図12の場合は8回の描画処理が必要
になる。従って、この手法には描画処理の負担が重くな
るという欠点がある。一方、描画処理の負担を軽減する
ためにZ値のしきい値の段階数を減らすと、今度は、Z
値のしきい値の境界が表示画面上で帯状に見えてしまう
事態が生じ、表示品質が低下する。
【0136】LUTを用いてZ値をα値に変換する本実
施形態の手法によれば、LUTを用いた1回のテクスチ
ャマッピングで、各画素のZ値をα値に一斉に変換でき
る。例えば、LUTのインデックス番号(エントリー)
のビット数が8ビットの場合には、LUTを用いた1回
のテクスチャマッピングで、256段階のZ値のしきい
値で区分けされるα値を得ることができる。従って、Z
値のしきい値の境界が表示画面上で帯状に見えてしまう
事態を防止でき、少ない処理負担で高品質な画像を生成
できる。
【0137】2.4 Z値の8ビット化 さて、ゲームシステムにおいては、陰面消去の精度を高
めるために、Z値のビット数は例えば24ビット、32
ビットというように非常に多い。
【0138】一方、インデックスカラー・テクスチャマ
ッピング用のLUTのインデックス番号のビット数(L
UTのエントリーのビット数)は、例えば8ビットとい
うようにZ値のビット数に比べて少ない。
【0139】従って、図9のようにインデックスカラー
・テクスチャマッピング用のLUTを用いてZ値をα値
に変換する場合には、その前処理として、Z値を、LU
Tのインデックス番号のビット数と同じビット数のZ値
(以下、Z2値と呼ぶ)に変換する処理が必要になる。
即ち、LUTのインデックス番号のビット数が8ビット
である場合には、Z値を8ビットのZ2値(第2の奥行
き値)に変換する処理が必要になる。
【0140】この場合に、矛盾の無いZ2値を得るため
には、Z値の最上位ビットを含む上位の8ビットをビッ
トセレクトしたものをZ2値とする必要がある。即ち図
14において、ビット23(最上位ビット)〜16の8
ビットをビットセレクトして、Z2値として設定する。
【0141】しかしながら、このようにZ値の上位ビッ
ト23〜16の8ビットをZ2値に設定し、このZ2値
をLUTを用いてα値に変換すると、α値の区分け数が
少なくなってしまうということが判明した。
【0142】例えば図15のように、Z値が4ビットで
あり、Z値の上位の2ビットをセレクトしてZ2値に設
定し、このZ2値をα値に変換した場合を考える。この
場合には、Z=0〜15の全範囲において4段階のしき
い値でα値が区分けされることになる。
【0143】しかしながら、図15のOB1のようにス
クリーンSC(透視変換面)の手前にあるオブジェクト
については、通常はニアクリップされてしまう。そし
て、例えば図15においてZ=10〜15の範囲にある
オブジェクトがニアクリップされるような場合には、Z
値の最上位ビットに1が立つことは希となる。また、O
B2のようにスクリーンSCの近くにあるオブジェクト
については、何れにせよ最もぼけた画像になるため、ぼ
け具合を精度良く制御する必要がない。従って、図15
のG1に示す部分における2段階の区分けは無駄にな
る。
【0144】そこで本実施形態では図14に示すよう
に、元画像の各画素のZ値(奥行き値)を、Z値の最上
位ビットよりも下位のビットI〜J(例えばビット19
〜12)により構成されるZ2値(第2の奥行き値)に
変換し、このZ2値を、インデックスカラー・テクスチ
ャマッピング用のLUTのインデックス番号として設定
してテクスチャマッピングを行い、各画素のα値を求め
る。そして、この求められた各画素のα値に基づいて、
元画像とぼかし画像をα合成する。
【0145】このようにすれば図16に示すように、仮
想カメラ10の焦点(注視点)付近にあるオブジェクト
(例えばOB3、OB4)についてだけ、多段階(図1
6では4段階)のしきい値で区分けされたα値により、
ぼけ具合を精度良く制御できるようになる。従って、生
成される画像の品質を高めることができる。
【0146】そして本実施形態では、Z値のビットI〜
J以外のビットの値に応じて、Z2値を所与の値にクラ
ンプするようにしている。より具体的には図16に示す
ように、Z値の上位のビットに例えば1が立った場合に
は、Z2値を最大値(広義には所与の値)にクランプす
る。このようにすれば、OB1やOB2のように、ぼけ
具合を精度良く制御する必要がないオブジェクトについ
ては、Z2値が最大値に設定され、最もぼけた画像に設
定される。従って、Z値を、そのビットI〜Jにより構
成されるZ2値に変換しても、矛盾の無い画像を生成で
きる。
【0147】2.5 LUTを利用したZ値の変換処理 さて本実施形態では、図14で説明したZ値をZ2値に
変換する処理(8ビット化処理)を、インデックスカラ
ー・テクスチャマッピング用のLUTを利用したテクス
チャマッピングにより実現している。即ち、Z値をLU
Tのインデックス番号として設定し、そのLUTを用い
て仮想オブジェクトに対してインデックスカラー・テク
スチャマッピングを行い、Z値をZ2値に変換する。
【0148】例えば図17に示すように24ビットのZ
値をLUTを用いて変換する場合を考える。この場合に
は図17のH1に示すように、Z値のビット15〜8
(ビットM〜N)をLUT1(第1のルックアップテー
ブル)のインデックス番号に設定し、LUT1を用いて
インデックスカラー・テクスチャマッピングを行い、Z
値をZ3値(第3の奥行き値)に変換する。
【0149】次に図17のH2に示すように、Z値のビ
ット23〜16(ビットK〜L)をLUT2(第2のル
ックアップテーブル)のインデックス番号に設定し、L
UT2を用いてインデックスカラー・テクスチャマッピ
ングを行い、Z値をZ4値(第4の奥行き値)に変換す
る。
【0150】そして図17のH4に示すようにZ3値と
Z4値とに基づいてZ2値を求め、H5に示すようにこ
のZ2値をLUT3(第3のルックアップテーブル)を
用いてα値に変換する。
【0151】より具体的には、LUT1の変換により得
られたZ3値を描画領域(フレームバッファ、別バッフ
ァ)に描画する。その後、LUT2の変換により得られ
たZ4値を描画領域に描画する。この際、Z3値の下位
の4ビット(有効ビット)をマスクして、これらのビッ
トにZ4値が上書きされないようにして、Z2値を求め
る。
【0152】図17の手法を採用することで、Z値の任
意の8ビット(広義には任意のビットI〜J)を取り出
すことが可能になる。
【0153】即ち、LUTのインデックス番号に設定す
るためにZ値の8ビットを取り出そうとした場合に、Z
値のビット23〜16、15〜8又は7〜0というよう
に所定範囲の8ビットしか取り出せない場合がある。
【0154】一方、Z値の中のどの8ビットを取り出す
かは、図14、図15で説明したように、ニアクリップ
の範囲や、仮想カメラの焦点(注視点)の位置などに応
じて決められる。
【0155】従って、Z値のビット23〜16、15〜
8又は7〜0というように所定範囲の8ビットしか取り
出せないと、仮想カメラの焦点付近で最も精度良くぼけ
具合を制御できるような適切なα値を得ることができな
い。
【0156】例えば、Z値のビット19〜12をZ2値
として取り出せば、α値の実効的な区分け数(Z値のし
きい値数)を256段階にできる場合を考える。このよ
うな場合に、Z値のビット23〜16や15〜8しか取
り出せないと、α値の実効的な区分け数が例えば16段
階になってしまい、画質が低下する。
【0157】これに対して、図17に示す手法を採用す
れば、上記のようにZ値の所定範囲の8ビットしか取り
出せないような場合にも、Z値の任意のビットI〜Jを
Z2値として取り出すことができるようになる。従っ
て、ニアクリップの範囲や、仮想カメラの焦点の位置な
どに応じて、α値を区分けするZ値のしきい値の設定を
最適なものにすることが可能になり、より高品質な画像
を生成できるようになる。
【0158】なお図18、図19、図20(A)に、L
UT1、LUT2、LUT3の具体例を示す。また図2
0(B)に、Z2値をα値に変換するLUT3の変換特
性曲線の例を示す。
【0159】図18に示すようにLUT1は、インデッ
クス番号として入力されたZ値のビット15〜8(ビッ
トM〜N)を4ビットだけ右にシフトする変換を行う。
例えば0x10(16進数表現)は0x01に変換さ
れ、0x20は0x02に変換される。
【0160】また図19に示すようにLUT2は、イン
デックス番号として入力されたZ値のビット23〜16
(ビットK〜L)を4ビットだけ左にシフトする変換を
行う。例えば0x01は0x10に変換され、0x02
は0x20に変換される。
【0161】そして図19のQ1に示すように、入力さ
れたZ値が0x0Fよりも大きい場合には、LUT2の
出力は0xF0にクランプされる。
【0162】Z値がクランプされた場合の例を図21に
示す。図21に示すように、ビット20(ビットI〜J
以外のビット)に1が立った場合には、LUT2の出力
が0xF0にクランプされる。これによりZ2値は0x
F1になる。
【0163】例えばLUT2の出力をクランプせずに、
Z値のビット19〜12をそのまま取り出してしまう
と、ビット20に1が立っているにもかかわらず、Z2
値は0x11になってしまい、被写界深度の設定が誤っ
た設定になってしまう問題が生じる。
【0164】LUT2の出力をクランプするようにすれ
ば、このような問題が生じるのを防止でき、被写界深度
の設定を適正なものにすることができる。
【0165】しかも、このようにLUT2の出力をクラ
ンプしても、図16から明らかなように、ニアクリップ
されるオブジェクトOB1やスクリーンSCの近くのオ
ブジェクトOB2のぼけ度合いが最大値に設定されるだ
けであるため、画像が不自然になることもない。
【0166】2.6 ぼかし画像の生成 さて、本実施形態では、テクスチャマッピングのバイリ
ニアフィルタ方式(テクセル補間方式)を有効利用し
て、元画像(図11(A))の合成対象となるぼかし画
像(図11(B))を生成している。
【0167】即ち、テクスチャマッピングにおいては画
素の位置とテクセルの位置がずれる場合がある。
【0168】この場合に、図22に示すように、ポイン
トサンプリング方式では、画素(サンプリング点)Pの
色CP(広義には画像情報)は、Pに最も距離が近いテ
クセルTAの色CAになる。
【0169】一方、バイリニアフィルタ方式では、Pの
色CPは、Pの周りのテクセルTA、TB、TC、TD
の色CA、CB、CC、CDを補間した色になる。
【0170】より具体的には、TA〜TDの座標とPの
座標とに基づき、X軸方向の座標比β:1−β(0≦β
≦1)と、Y軸方向の座標比γ:1−γ(0≦γ≦1)
を求める。
【0171】この場合に、Pの色CP(バイリニアフィ
ルタ方式での出力色)は、下式のようになる。
【0172】 CP=(1−β)×(1−γ)×CA+β×(1−γ)×CB +(1−β)×γ×CC+β×γ×CD (8) 本実施形態では、このようにバイリニアフィルタ方式で
は色が自動的に補間されることに着目して、ぼかし画像
を生成している。
【0173】より具体的には図23のR1に示すよう
に、例えばフレームバッファに描画されている元画像を
テクスチャとして設定する。そして、このテクスチャ
(元画像)を仮想オブジェクトにバイリニアフィルタ方
式でマッピングする際に、仮想オブジェクトの頂点に与
えるテクスチャ座標を、例えば(0.5、0.5)だけ
右下方向にシフト(ずらす、移動)させる。このように
することで、バイリニアフィルタ方式の補間機能により
自動的に、元画像の画素の色が周囲ににじんだようなぼ
かし画像を生成できるようになる。
【0174】なお、画面全体をぼかす場合には、テクス
チャ(元画像)をマッピングする仮想オブジェクトの形
状は、画面(ぼかし領域)と同一形状に設定される。即
ち、画面の頂点座標が(X、Y)=(0、0)、(64
0、0)、(640、480)、(0、480)であった
場合には、仮想オブジェクトの頂点座標も(X、Y)=
(0、0)、(640、0)、(640、480)、
(0、480)になる。
【0175】そして、この場合に、仮想オブジェクトの
頂点VX1、VX2、VX3、VX4に与えるテクスチ
ャ座標(U、V)を、各々、(0、0)、(640、
0)、(640、480)、(0、480)に設定すれ
ば、画面の画素の位置とテクスチャのテクセルの位置と
がずれずに一致する。従って、画像はぼけない。
【0176】これに対して、仮想オブジェクトの頂点V
X1、VX2、VX3、VX4に与えるテクスチャ座標
(U、V)を、各々、(0.5、0.5)、(640.
5、0.5)、(640.5、480.5)、(0.5、
480.5)に設定すれば、画面の画素の位置とテクス
チャのテクセルの位置とがずれるようになる。従って、
バイリニアフィルタ方式の補間機能により、色の補間が
行われ、画像がぼけて見えるようになる。
【0177】なお、画面の一部の領域をぼかす場合に
は、仮想オブジェクトの形状を、そのぼかし領域と同一
形状にすればよい。
【0178】また本実施形態では、図24のR3に示す
ように、元画像をテクスチャに設定し、例えば右下方向
(第1のシフト方向)に0.5テクセルだけシフトして
バイリニアフィルタ方式でテクスチャマッピングを行
い、第1のぼかし画像を生成する。次に、図24のR4
に示すように、この第1のぼかし画像をテクスチャに設
定し、例えば左上方向(第2のシフト方向)に0.5テ
クセルだけシフトしてバイリニアフィルタ方式でテクス
チャマッピングを行い、第2のぼかし画像を生成する。
或いは、以上の処理(右下方向のシフトと左上方向のシ
フト)を複数回繰り返す。このようにすることで、更に
自然でぼかし効果の強いぼかし画像を生成できるように
なる。
【0179】次に、バイリニアフィルタ方式の補間機能
によりぼかし画像が生成される原理について説明する。
【0180】例えば図25(A)に示すように、テクス
チャ座標を0.5テクセルだけ右下方向にシフトさせ
て、バイリニアフィルタ方式のテクスチャマッピングを
行ったとする。この場合には、上式(8)においてβ=
γ=1/2になるため、テクセルT44、T45、T5
4、T55の色をC44、C45、C54、C55とす
ると、画素P44の色CP44は下式のようになる。
【0181】 CP44=(C44+C45+C54+C55)/4 (9) 以上から明らかなように、図25(A)に示す変換によ
り、テクセルT44の色C44(変換前の元画像の画素
P44の元の色に相当)は、周りの画素P33、P3
4、P43、P44に対して1/4ずつしみ出すことに
なる。
【0182】そして、その後に図25(B)に示すよう
に、図25(A)で得られた画像をテクスチャとして、
テクスチャ座標を0.5テクセルだけ左上方向にシフト
させてバイリニアフィルタ方式でテクスチャマッピング
を行ったとする。この場合には、図25(A)の画素P
33、P34、P43、P44が、図25(B)のテク
セルT33、T34、T43、T44に対応するように
なる。そして、図25(A)でP33、P34、P4
3、P44(T33、T34、T43、T44)に対し
て1/4ずつしみ出した色C44が、更に1/4倍され
て周りの4つの画素に対してしみ出すことになる。即
ち、結局、元のT44の色C44が1/4×1/4=1
/16ずつ周りにしみ出すことになる。
【0183】従って、図25(A)、(B)の変換によ
り、画素P33、P34、P35には、各々、色C44
(フレームバッファに描かれた元画像の画素P44の元
の色に相当)が1/16、2/16、1/16ずつしみ
出すことになる。また、画素P43、P44、P45に
は、各々、色C44が2/16、4/16、2/16ず
つしみ出し、画素P53、P54、P55には、各々、
色C44が1/16、2/16、1/16ずつしみ出す
ことになる。
【0184】従って、図25(A)、(B)の変換によ
り、結局、図26(A)に示すような平面フィルタが元
画像に対して施されるようになる。この平面フィルタに
よれば、元画像の各画素の色がその周りに均一に広がる
ようになり、元画像の理想的なぼかし画像を生成でき
る。
【0185】また、図25(A)、(B)の変換のセッ
トを2回行えば、図26(B)に示すような平面フィル
タが元画像に対して施されるようになる。この平面フィ
ルタによれば、図26(A)よりも更に理想的なぼかし
画像を生成できる。
【0186】3.本実施形態の処理 次に、本実施形態の処理の詳細例について、図27、図
28のフローチャートを用いて説明する。
【0187】まず、元画像(透視変換後の画像)をフレ
ームバッファに描画する(ステップS1)。この際に、
Zバッファには各画素のZ値が書き込まれることにな
る。
【0188】次に、ZバッファのZ値のビット15〜8
を変換するLUT1(図18)、ビット23〜16を変
換するLUT2(図19)、8ビット化されたZ値をα
値(A値)に変換するLUT3(図20(A))を、V
RAMに転送する(ステップS2)。
【0189】次に、Z値のビット15〜8をLUT1の
インデックス番号に設定し、LUT1を用いて仮想ポリ
ゴンにテクスチャマッピングを行い、その仮想ポリゴン
を別バッファに描画する(ステップS3)。
【0190】次に、Z値のビット23〜16をLUT2
のインデックス番号に設定し、LUT2を用いて仮想ポ
リゴンにテクスチャマッピングを行い、その仮想ポリゴ
ンを別バッファに描画する(ステップS4)。この際、
図17で説明したように、8ビット化されたZ値の下位
の4ビット(データ有効ビット)については上書きされ
ないようにマスクしておく。
【0191】次に、ステップS4で得られた8ビットの
Z2値をLUT3のインデックス番号に設定し、LUT
3を用いて仮想ポリゴンにテクスチャマッピングを行
い、その仮想ポリゴンをフレームバッファ(αプレー
ン)に描画する(ステップS5)。
【0192】次に、ステップS1でワークバッファに描
画された元画像を、テクスチャ座標U、Vを(0.5、
0.5)だけシフトしてバイリニアフィルタ方式で仮想
ポリゴンにマッピングしながら、その仮想ポリゴンを別
バッファに描画する(ステップS6)。
【0193】次に、ステップS6で別バッファに描画さ
れた画像を、テクスチャ座標U、Vを(−0.5、−
0.5)だけシフトしてバイリニアフィルタ方式で仮想
ポリゴンにマッピングしながら、その仮想ポリゴンをフ
レームバッファに描画する(ステップS7)。この際、
ステップS5でフレームバッファに描画されたα値を用
いてαブレンディングを行い、元画像とぼかし画像のα
合成を行う。
【0194】以上のようにして、いわゆる被写界深度の
表現が可能になる。
【0195】4.ハードウェア構成 次に、本実施形態を実現できるハードウェアの構成の一
例について図29を用いて説明する。
【0196】メインプロセッサ900は、CD982
(情報記憶媒体)に格納されたプログラム、通信インタ
ーフェース990を介して転送されたプログラム、或い
はROM950(情報記憶媒体の1つ)に格納されたプ
ログラムなどに基づき動作し、ゲーム処理、画像処理、
音処理などの種々の処理を実行する。
【0197】コプロセッサ902は、メインプロセッサ
900の処理を補助するものであり、高速並列演算が可
能な積和算器や除算器を有し、マトリクス演算(ベクト
ル演算)を高速に実行する。例えば、オブジェクトを移
動させたり動作(モーション)させるための物理シミュ
レーションに、マトリクス演算などの処理が必要な場合
には、メインプロセッサ900上で動作するプログラム
が、その処理をコプロセッサ902に指示(依頼)す
る。
【0198】ジオメトリプロセッサ904は、座標変
換、透視変換、光源計算、曲面生成などのジオメトリ処
理を行うものであり、高速並列演算が可能な積和算器や
除算器を有し、マトリクス演算(ベクトル演算)を高速
に実行する。例えば、座標変換、透視変換、光源計算な
どの処理を行う場合には、メインプロセッサ900で動
作するプログラムが、その処理をジオメトリプロセッサ
904に指示する。
【0199】データ伸張プロセッサ906は、圧縮され
た画像データや音データを伸張するデコード処理を行っ
たり、メインプロセッサ900のデコード処理をアクセ
レートする処理を行う。これにより、オープニング画
面、インターミッション画面、エンディング画面、或い
はゲーム画面などにおいて、MPEG方式等で圧縮され
た動画像を表示できるようになる。なお、デコード処理
の対象となる画像データや音データは、ROM950、
CD982に格納されたり、或いは通信インターフェー
ス990を介して外部から転送される。
【0200】描画プロセッサ910は、ポリゴンや曲面
などのプリミティブ面で構成されるオブジェクトの描画
(レンダリング)処理を高速に実行するものである。オ
ブジェクトの描画の際には、メインプロセッサ900
は、DMAコントローラ970の機能を利用して、オブ
ジェクトデータを描画プロセッサ910に渡すと共に、
必要であればテクスチャ記憶部924にテクスチャを転
送する。すると、描画プロセッサ910は、これらのオ
ブジェクトデータやテクスチャに基づいて、Zバッファ
などを利用した陰面消去を行いながら、オブジェクトを
フレームバッファ922に高速に描画する。また、描画
プロセッサ910は、αブレンディング(半透明処
理)、デプスキューイング、ミップマッピング、フォグ
処理、バイリニア・フィルタリング、トライリニア・フ
ィルタリング、アンチエリアシング、シェーディング処
理なども行うことができる。そして、1フレーム分の画
像がフレームバッファ922に書き込まれると、その画
像はディスプレイ912に表示される。
【0201】サウンドプロセッサ930は、多チャンネ
ルのADPCM音源などを内蔵し、BGM、効果音、音
声などの高品位のゲーム音を生成する。生成されたゲー
ム音は、スピーカ932から出力される。
【0202】ゲームコントローラ942からの操作デー
タや、メモリカード944からのセーブデータ、個人デ
ータは、シリアルインターフェース940を介してデー
タ転送される。
【0203】ROM950にはシステムプログラムなど
が格納される。なお、業務用ゲームシステムの場合に
は、ROM950が情報記憶媒体として機能し、ROM
950に各種プログラムが格納されることになる。な
お、ROM950の代わりにハードディスクを利用する
ようにしてもよい。
【0204】RAM960は、各種プロセッサの作業領
域として用いられる。
【0205】DMAコントローラ970は、プロセッ
サ、メモリ(RAM、VRAM、ROM等)間でのDM
A転送を制御するものである。
【0206】CDドライブ980は、プログラム、画像
データ、或いは音データなどが格納されるCD982
(情報記憶媒体)を駆動し、これらのプログラム、デー
タへのアクセスを可能にする。
【0207】通信インターフェース990は、ネットワ
ークを介して外部との間でデータ転送を行うためのイン
ターフェースである。この場合に、通信インターフェー
ス990に接続されるネットワークとしては、通信回線
(アナログ電話回線、ISDN)、高速シリアルバスな
どを考えることができる。そして、通信回線を利用する
ことでインターネットを介したデータ転送が可能にな
る。また、高速シリアルバスを利用することで、他のゲ
ームシステムとの間でのデータ転送が可能になる。
【0208】なお、本発明の各手段は、その全てを、ハ
ードウェアのみにより実行してもよいし、情報記憶媒体
に格納されるプログラムや通信インターフェースを介し
て配信されるプログラムのみにより実行してもよい。或
いは、ハードウェアとプログラムの両方により実行して
もよい。
【0209】そして、本発明の各手段をハードウェアと
プログラムの両方により実行する場合には、情報記憶媒
体には、本発明の各手段をハードウェアを利用して実行
するためのプログラムが格納されることになる。より具
体的には、上記プログラムが、ハードウェアである各プ
ロセッサ902、904、906、910、930等に
処理を指示すると共に、必要であればデータを渡す。そ
して、各プロセッサ902、904、906、910、
930等は、その指示と渡されたデータとに基づいて、
本発明の各手段を実行することになる。
【0210】図30(A)に、本実施形態を業務用ゲー
ムシステムに適用した場合の例を示す。プレーヤは、デ
ィスプレイ1100上に映し出されたゲーム画像を見な
がら、レバー1102、ボタン1104等を操作してゲ
ームを楽しむ。内蔵されるシステムボード(サーキット
ボード)1106には、各種プロセッサ、各種メモリな
どが実装される。そして、本発明の各手段を実行するた
めの情報(プログラム又はデータ)は、システムボード
1106上の情報記憶媒体であるメモリ1108に格納
される。以下、この情報を格納情報と呼ぶ。
【0211】図30(B)に、本実施形態を家庭用のゲ
ームシステムに適用した場合の例を示す。プレーヤはデ
ィスプレイ1200に映し出されたゲーム画像を見なが
ら、ゲームコントローラ1202、1204を操作して
ゲームを楽しむ。この場合、上記格納情報は、本体シス
テムに着脱自在な情報記憶媒体であるCD1206、或
いはメモリカード1208、1209等に格納されてい
る。
【0212】図30(C)に、ホスト装置1300と、
このホスト装置1300とネットワーク1302(LA
Nのような小規模ネットワークや、インターネットのよ
うな広域ネットワーク)を介して接続される端末130
4-1〜1304-n(ゲーム装置、携帯型電話)とを含む
システムに本実施形態を適用した場合の例を示す。この
場合、上記格納情報は、例えばホスト装置1300が制
御可能な磁気ディスク装置、磁気テープ装置、メモリ等
の情報記憶媒体1306に格納されている。端末130
4-1〜1304-nが、スタンドアロンでゲーム画像、ゲ
ーム音を生成できるものである場合には、ホスト装置1
300からは、ゲーム画像、ゲーム音を生成するための
ゲームプログラム等が端末1304-1〜1304-nに配
送される。一方、スタンドアロンで生成できない場合に
は、ホスト装置1300がゲーム画像、ゲーム音を生成
し、これを端末1304-1〜1304-nに伝送し端末に
おいて出力することになる。
【0213】なお、図30(C)の構成の場合に、本発
明の各手段を、ホスト装置(サーバー)と端末とで分散
して実行するようにしてもよい。また、本発明の各手段
を実行するための上記格納情報を、ホスト装置(サーバ
ー)の情報記憶媒体と端末の情報記憶媒体に分散して格
納するようにしてもよい。
【0214】またネットワークに接続する端末は、家庭
用ゲームシステムであってもよいし業務用ゲームシステ
ムであってもよい。そして、業務用ゲームシステムをネ
ットワークに接続する場合には、業務用ゲームシステム
との間で情報のやり取りが可能であると共に家庭用ゲー
ムシステムとの間でも情報のやり取りが可能な携帯型情
報記憶装置(メモリカード、携帯型ゲーム装置)を用い
ることが望ましい。
【0215】なお本発明は、上記実施形態で説明したも
のに限らず、種々の変形実施が可能である。
【0216】例えば、本発明のうち従属請求項に係る発
明においては、従属先の請求項の構成要件の一部を省略
する構成とすることもできる。また、本発明の1の独立
請求項に係る発明の要部を、他の独立請求項に従属させ
ることもできる。
【0217】また、本実施形態では、設定されたα値に
基づいて、元画像とぼかし画像とをα合成して被写体深
度の画像表現を実現する場合について主に説明した。し
かしながら、本発明の手法で設定されたα値を用いる画
像表現はこれに限定されない。例えば、設定されたα値
に基づいて、元画像の色と所与の色(背景色、ターゲッ
ト色)とをα合成したり、元画像の輝度や彩度を変化さ
せたり、元画像と所与の他の画像とをα合成したり、元
画像と元画像の変換画像とをα合成してもよい。
【0218】また、奥行き値の第2の奥行き値への変換
は、図17で説明したようにインデックスカラー・テク
スチャマッピング用のルックアップテーブルを利用する
手法で実現することが特に望ましいが、他の手法により
実現してもよい。
【0219】また、第2の奥行き値に応じた値にα値を
設定する手法としては、図4、図9で説明したようなイ
ンデックスカラー・テクスチャマッピング用のルックア
ップテーブルを利用する手法、図13で説明したような
仮想オブジェクトを順次描画することで仮想オブジェク
トの奥側や手前側の画素のα値を順次更新する手法等の
種々の手法を採用できる。
【0220】また、図21では奥行き値の任意のビット
I〜Jを取り出す場合について主に説明した。しかしな
がら、図21の手法は、奥行き値以外の画像情報(例え
ば、色情報、α値等の描画領域に描画されている情報)
の任意のビットI〜Jを取り出す場合にも広く適用でき
る。
【0221】また、ルックアップテーブルの変換特性も
図18、図19、図20(A)、(B)に示した変換特
性に限定されず、種々の変形実施が可能である。
【0222】また、元画像の合成対象となるぼかし画像
は、図23、図24で説明した手法により生成すること
が特に望ましいが、これに限定されない。例えば元画像
と元画像をずらした画像を合成したり、当該フレームの
元画像と前のフレームの元画像とを合成したりしてぼか
し画像を生成してもよい。
【0223】また、テクセル補間方式を利用してぼかし
画像を生成する発明も、図23〜図26(B)で説明し
た手法に限定されない。例えば、画面全体をぼかすので
はなく、画面よりも小さいぼかし領域を設定して、その
領域にある元画像をぼかすようにしてもよい。
【0224】また、本実施形態では視点から近いほど奥
行き値が大きくなる場合を例にとり説明したが、視点か
ら遠いほど奥行き値が大きくなる場合にも本発明は適用
できる。
【0225】また、本発明は種々のゲーム(格闘ゲー
ム、シューティングゲーム、ロボット対戦ゲーム、スポ
ーツゲーム、競争ゲーム、ロールプレイングゲーム、音
楽演奏ゲーム、ダンスゲーム等)に適用できる。
【0226】また、本発明は、業務用ゲームシステム、
家庭用ゲームシステム、多数のプレーヤが参加する大型
アトラクションシステム、シミュレータ、マルチメディ
ア端末、ゲーム画像を生成するシステムボード等の種々
のゲームシステム(画像生成システム)に適用できる。
【図面の簡単な説明】
【図1】本実施形態のゲームシステムのブロック図の例
である。
【図2】図2(A)、(B)は、ガンマ補正を実現する
第1、第2の手法について説明するための図である。
【図3】インデックスカラー・テクスチャマッピングに
ついて説明するための図である。
【図4】インデックスカラー・テクスチャマッピング用
のLUTを有効利用して、元画像を変換する手法につい
て説明するための図である。
【図5】図5(A)、(B)は、本実施形態により生成
されるゲーム画像の例である。
【図6】元画像を複数のブロックに分割し、各ブロック
の画像を、LUTを用いて分割ブロックサイズのポリゴ
ンにテクスチャマッピングする手法について説明するた
めの図である。
【図7】LUTの変換により得られた画像情報のうち、
必要な画像情報のみが描画領域に描画され、他の画像情
報が描画されないようにマスク処理を行う手法について
説明するための図である。
【図8】LUTを利用したテクスチャマッピングを行
い、αプレーンを作成する手法について説明するための
図である。
【図9】Z値をLUTのインデックス番号に設定する手
法について説明するための図である。
【図10】Z値に応じたα値を設定し、設定されたα値
を用いて元画像とぼかし画像を合成する手法について説
明するための図である。
【図11】図11(A)、(B)は、元画像とそのぼか
し画像の例である。
【図12】Z値に応じたα値の設定手法について説明す
るための図である。
【図13】図13(A)、(B)、(C)は、仮想オブ
ジェクトを描画することで仮想オブジェクトの奥側の画
素のα値を更新する手法について説明するための図であ
る。
【図14】Z値をZ2値に変換し、そのZ2値をα値に
変換して元画像とぼかし画像を合成する手法について説
明するための図である。
【図15】Z値の最上位ビットを含む上位ビットでZ2
値を構成した場合の問題点について説明するための図で
ある。
【図16】Z値の最上位ビットよりも下位のビットI〜
JビットでZ2値を構成すると共にZ2値を所与の値に
クランプする手法について説明するための図である。
【図17】LUTを用いてZ値をZ2値に変換する手法
について説明するための図である。
【図18】Z値のビット15〜8を変換するLUT1の
具体例を示す図である。
【図19】Z値のビット23〜16を変換するLUT2
の具体例を示す図である。
【図20】図20(A)、(B)は、Z2値をα値に変
換するLUT3の具体例とその変換特性曲線の例を示す
図である。
【図21】クランプ処理について説明するための図であ
る。
【図22】バイリニアフィルタ方式のテクスチャマッピ
ングについて説明するための図である。
【図23】バイリニアフィルタ方式を有効利用してぼか
し画像を生成する手法について説明するための図であ
る。
【図24】バイリニアフィルタ方式を有効利用してぼか
し画像を生成する手法について説明するための図であ
る。
【図25】図25(A)、(B)は、バイリニアフィル
タ方式の補間機能によりぼかし画像が生成される原理に
ついて説明するための図である。
【図26】図26(A)、(B)も、バイリニアフィル
タ方式の補間機能によりぼかし画像が生成される原理に
ついて説明するための図である。
【図27】本実施形態の処理の詳細例について示すフロ
ーチャートである。
【図28】本実施形態の処理の詳細例について示すフロ
ーチャートである。
【図29】本実施形態を実現できるハードウェアの構成
の一例を示す図である。
【図30】図30(A)、(B)、(C)は、本実施形
態が適用される種々の形態のシステムの例を示す図であ
る。
【符号の説明】
10 仮想カメラ 100 処理部 110 ゲーム処理部 112 移動・動作演算部 130 画像生成部 132 ジオメトリ処理部 134 インデックス番号設定部 140 描画部 142 テクスチャマッピング部 144 α合成部 146 陰面消去部 150 音生成部 160 操作部 170 記憶部 172 主記憶領域 174 フレームバッファ 176 テクスチャ記憶部 178 LUT記憶部 179 Zバッファ 180 情報記憶媒体 190 表示部 192 音出力部 194 携帯型情報記憶装置 196 通信部

Claims (19)

    【特許請求の範囲】
  1. 【請求項1】 画像生成を行うゲームシステムであっ
    て、 元画像の各画素の奥行き値を、前記奥行き値の最上位ビ
    ットよりも下位のビットI〜ビットJにより構成される
    第2の奥行き値に変換する手段と、 前記第2の奥行き値に応じた値に、各画素のα値を設定
    する手段と、 設定されたα値に基づいて画像を生成する手段と、 を含むことを特徴とするゲームシステム。
  2. 【請求項2】 請求項1において、 元画像と該元画像に対応するぼかし画像とを、各画素に
    設定されるα値に基づいて合成することを特徴とするゲ
    ームシステム。
  3. 【請求項3】 請求項2において、 元画像をテクスチャとして設定し、該テクスチャをテク
    セル補間方式で仮想オブジェクトにマッピングする際に
    仮想オブジェクトのテクスチャ座標をシフトさせ、元画
    像のぼかし画像を生成することを特徴とするゲームシス
    テム。
  4. 【請求項4】 請求項1乃至3のいずれかにおいて、 前記奥行き値のビットI〜ビットJ以外のビットの値に
    応じて、前記第2の奥行き値を所与の値にクランプする
    ことを特徴とするゲームシステム。
  5. 【請求項5】 請求項1乃至4のいずれかにおいて、 前記奥行き値を、インデックスカラー・テクスチャマッ
    ピング用のルックアップテーブルのインデックス番号と
    して設定し、前記ルックアップテーブルを用いて仮想オ
    ブジェクトに対してインデックスカラー・テクスチャマ
    ッピングを行い、前記奥行き値を前記第2の奥行き値に
    変換することを特徴とするゲームシステム。
  6. 【請求項6】 請求項1乃至5のいずれかにおいて、 前記奥行き値のビットM〜ビットNを、インデックスカ
    ラー・テクスチャマッピング用の第1のルックアップテ
    ーブルのインデックス番号として設定し、前記第1のル
    ックアップテーブルを用いて仮想オブジェクトに対して
    インデックスカラー・テクスチャマッピングを行い、前
    記奥行き値を第3の奥行き値に変換し、 前記奥行き値のビットK〜ビットL(K≧I≧L>M≧
    J≧N)を、インデックスカラー・テクスチャマッピン
    グ用の第2のルックアップテーブルのインデックス番号
    として設定し、前記第2のルックアップテーブルを用い
    て仮想オブジェクトに対してインデックスカラー・テク
    スチャマッピングを行い、前記奥行き値を第4の奥行き
    値に変換し、 前記第3、第4の奥行き値に基づいて前記第2の奥行き
    値を求めることを特徴とするゲームシステム。
  7. 【請求項7】 画像生成を行うゲームシステムであっ
    て、 所与の画像情報のビットM〜ビットNを、インデックス
    カラー・テクスチャマッピング用の第1のルックアップ
    テーブルのインデックス番号として設定し、前記第1の
    ルックアップテーブルを用いて仮想オブジェクトに対し
    てインデックスカラー・テクスチャマッピングを行い、
    前記画像情報を第3の画像情報に変換する手段と、 前記画像情報のビットK〜ビットLを、インデックスカ
    ラー・テクスチャマッピング用の第2のルックアップテ
    ーブルのインデックス番号として設定し、前記第2のル
    ックアップテーブルを用いて仮想オブジェクトに対して
    インデックスカラー・テクスチャマッピングを行い、前
    記画像情報を第4の画像情報に変換する手段と、 前記第3、第4の画像情報に基づいて、前記画像情報の
    ビットI〜ビットJ(K≧I≧L>M≧J≧N)により
    構成される第2の画像情報を求める手段と、 を含むことを特徴とするゲームシステム。
  8. 【請求項8】 請求項5乃至7のいずれかにおいて、 前記仮想オブジェクトが、表示画面サイズのポリゴンで
    あることを特徴とするゲームシステム。
  9. 【請求項9】 請求項5乃至7のいずれかにおいて、 前記仮想オブジェクトが、表示画面を分割したブロック
    のサイズのポリゴンであることを特徴とするゲームシス
    テム。
  10. 【請求項10】 コンピュータが使用可能なプログラム
    であって、 元画像の各画素の奥行き値を、前記奥行き値の最上位ビ
    ットよりも下位のビットI〜ビットJにより構成される
    第2の奥行き値に変換する手段と、 前記第2の奥行き値に応じた値に、各画素のα値を設定
    する手段と、 設定されたα値に基づいて画像を生成する手段と、 をコンピュータに実現させることを特徴とするプログラ
    ム。
  11. 【請求項11】 請求項10において、 元画像と該元画像に対応するぼかし画像とを、各画素に
    設定されるα値に基づいて合成することを特徴とするプ
    ログラム。
  12. 【請求項12】 請求項11において、 元画像をテクスチャとして設定し、該テクスチャをテク
    セル補間方式で仮想オブジェクトにマッピングする際に
    仮想オブジェクトのテクスチャ座標をシフトさせ、元画
    像のぼかし画像を生成することを特徴とするプログラ
    ム。
  13. 【請求項13】 請求項10乃至12のいずれかにおい
    て、 前記奥行き値のビットI〜ビットJ以外のビットの値に
    応じて、前記第2の奥行き値を所与の値にクランプする
    ことを特徴とするプログラム。
  14. 【請求項14】 請求項10乃至13のいずれかにおい
    て、 前記奥行き値を、インデックスカラー・テクスチャマッ
    ピング用のルックアップテーブルのインデックス番号と
    して設定し、前記ルックアップテーブルを用いて仮想オ
    ブジェクトに対してインデックスカラー・テクスチャマ
    ッピングを行い、前記奥行き値を前記第2の奥行き値に
    変換することを特徴とするプログラム。
  15. 【請求項15】 請求項10乃至14のいずれかにおい
    て、 前記奥行き値のビットM〜ビットNを、インデックスカ
    ラー・テクスチャマッピング用の第1のルックアップテ
    ーブルのインデックス番号として設定し、前記第1のル
    ックアップテーブルを用いて仮想オブジェクトに対して
    インデックスカラー・テクスチャマッピングを行い、前
    記奥行き値を第3の奥行き値に変換し、 前記奥行き値のビットK〜ビットL(K≧I≧L>M≧
    J≧N)を、インデックスカラー・テクスチャマッピン
    グ用の第2のルックアップテーブルのインデックス番号
    として設定し、前記第2のルックアップテーブルを用い
    て仮想オブジェクトに対してインデックスカラー・テク
    スチャマッピングを行い、前記奥行き値を第4の奥行き
    値に変換し、 前記第3、第4の奥行き値に基づいて前記第2の奥行き
    値を求めることを特徴とするプログラム。
  16. 【請求項16】 コンピュータが使用可能なプログラム
    であって、 所与の画像情報のビットM〜ビットNを、インデックス
    カラー・テクスチャマッピング用の第1のルックアップ
    テーブルのインデックス番号として設定し、前記第1の
    ルックアップテーブルを用いて仮想オブジェクトに対し
    てインデックスカラー・テクスチャマッピングを行い、
    前記画像情報を第3の画像情報に変換する手段と、 前記画像情報のビットK〜ビットLを、インデックスカ
    ラー・テクスチャマッピング用の第2のルックアップテ
    ーブルのインデックス番号として設定し、前記第2のル
    ックアップテーブルを用いて仮想オブジェクトに対して
    インデックスカラー・テクスチャマッピングを行い、前
    記画像情報を第4の画像情報に変換する手段と、 前記第3、第4の画像情報に基づいて、前記画像情報の
    ビットI〜ビットJ(K≧I≧L>M≧J≧N)により
    構成される第2の画像情報を求める手段と、 をコンピュータに実現させることを特徴とするプログラ
    ム。
  17. 【請求項17】 請求項14乃至16のいずれかにおい
    て、 前記仮想オブジェクトが、表示画面サイズのポリゴンで
    あることを特徴とするプログラム。
  18. 【請求項18】 請求項14乃至16のいずれかにおい
    て、 前記仮想オブジェクトが、表示画面を分割したブロック
    のサイズのポリゴンであることを特徴とするプログラ
    ム。
  19. 【請求項19】 コンピュータが使用可能な情報記憶媒
    体であって、請求項10乃至18のいずれかのプログラ
    ムを含むことを特徴とする情報記憶媒体。
JP2001020477A 2000-01-28 2001-01-29 ゲームシステム、プログラム及び情報記憶媒体 Expired - Fee Related JP4656616B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001020477A JP4656616B2 (ja) 2000-01-28 2001-01-29 ゲームシステム、プログラム及び情報記憶媒体

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP2000020464 2000-01-28
JP2000-20464 2000-01-28
JP2000-214351 2000-07-14
JP2000214351 2000-07-14
JP2001020477A JP4656616B2 (ja) 2000-01-28 2001-01-29 ゲームシステム、プログラム及び情報記憶媒体

Publications (2)

Publication Number Publication Date
JP2002092630A true JP2002092630A (ja) 2002-03-29
JP4656616B2 JP4656616B2 (ja) 2011-03-23

Family

ID=27342173

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001020477A Expired - Fee Related JP4656616B2 (ja) 2000-01-28 2001-01-29 ゲームシステム、プログラム及び情報記憶媒体

Country Status (1)

Country Link
JP (1) JP4656616B2 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7081892B2 (en) 2002-04-09 2006-07-25 Sony Computer Entertainment America Inc. Image with depth of field using z-buffer image data and alpha blending
JP2006320002A (ja) * 2006-06-19 2006-11-24 Nippon Telegr & Teleph Corp <Ntt> 3次元映像情報の伝送方法
US7167600B2 (en) 2000-12-27 2007-01-23 Sony Computer Entertainment Inc. Drawing method for drawing image on two-dimensional screen
JP2008112391A (ja) * 2006-10-31 2008-05-15 Fujitsu Ltd フォグ効果処理方法、グラフィックス装置、グラフィックス用半導体集積回路装置及びフォグ効果処理プログラム
JP2010191916A (ja) * 2009-02-20 2010-09-02 Nintendo Co Ltd 描画処理装置、および、描画処理プログラム
JP2011036544A (ja) * 2009-08-17 2011-02-24 Sanyo Product Co Ltd 遊技機
US10308808B2 (en) 2014-12-25 2019-06-04 Shengyi Technology Co., Ltd. Organic silicone resin composition and pre-preg, laminate, copper-clad laminate, and aluminum substrate that use the composition

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08123980A (ja) * 1994-10-21 1996-05-17 Matsushita Electric Ind Co Ltd 三次元図形描画装置
WO1996028794A1 (fr) * 1995-03-10 1996-09-19 Hitachi, Ltd. Dispositif d'affichage graphique tridimensionnel
JPH1175054A (ja) * 1997-06-16 1999-03-16 Sony Computer Entertainment:Kk 画像合成方法及び装置、並びに情報処理システム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08123980A (ja) * 1994-10-21 1996-05-17 Matsushita Electric Ind Co Ltd 三次元図形描画装置
WO1996028794A1 (fr) * 1995-03-10 1996-09-19 Hitachi, Ltd. Dispositif d'affichage graphique tridimensionnel
JPH1175054A (ja) * 1997-06-16 1999-03-16 Sony Computer Entertainment:Kk 画像合成方法及び装置、並びに情報処理システム

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7167600B2 (en) 2000-12-27 2007-01-23 Sony Computer Entertainment Inc. Drawing method for drawing image on two-dimensional screen
US7081892B2 (en) 2002-04-09 2006-07-25 Sony Computer Entertainment America Inc. Image with depth of field using z-buffer image data and alpha blending
JP2006320002A (ja) * 2006-06-19 2006-11-24 Nippon Telegr & Teleph Corp <Ntt> 3次元映像情報の伝送方法
JP4481275B2 (ja) * 2006-06-19 2010-06-16 日本電信電話株式会社 3次元映像情報の伝送方法
JP2008112391A (ja) * 2006-10-31 2008-05-15 Fujitsu Ltd フォグ効果処理方法、グラフィックス装置、グラフィックス用半導体集積回路装置及びフォグ効果処理プログラム
JP2010191916A (ja) * 2009-02-20 2010-09-02 Nintendo Co Ltd 描画処理装置、および、描画処理プログラム
JP2011036544A (ja) * 2009-08-17 2011-02-24 Sanyo Product Co Ltd 遊技機
US10308808B2 (en) 2014-12-25 2019-06-04 Shengyi Technology Co., Ltd. Organic silicone resin composition and pre-preg, laminate, copper-clad laminate, and aluminum substrate that use the composition

Also Published As

Publication number Publication date
JP4656616B2 (ja) 2011-03-23

Similar Documents

Publication Publication Date Title
JP3262772B2 (ja) 画像生成システム及び情報記憶媒体
US7116334B2 (en) Game system and image creating method
JP2006318389A (ja) プログラム、情報記憶媒体、及び画像生成システム
WO2001055970A1 (fr) Systeme de jeux et procede de creation d&#39;images
JP4804120B2 (ja) プログラム、情報記憶媒体、及び画像生成システム
JP4187188B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP3449993B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2004334661A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4656616B2 (ja) ゲームシステム、プログラム及び情報記憶媒体
JP3280355B2 (ja) 画像生成システム及び情報記憶媒体
JP4223244B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2006011539A (ja) プログラム、情報記憶媒体、及び画像生成システム
JP2006252426A (ja) プログラム、情報記憶媒体及び画像生成システム
JP4656617B2 (ja) ゲームシステム、プログラム及び情報記憶媒体
JP2002163671A (ja) ゲームシステム、プログラム及び情報記憶媒体
JP3467259B2 (ja) ゲームシステム、プログラム及び情報記憶媒体
JP4159082B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4443083B2 (ja) 画像生成システム及び情報記憶媒体
JP4913898B2 (ja) ゲームシステム、プログラム及び情報記憶媒体
JP4704615B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4605914B2 (ja) ゲームシステム、プログラム及び情報記憶媒体
JP4056035B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4680670B2 (ja) プログラム、情報記憶媒体及び画像生成システム
JP2008077406A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2010033301A (ja) 画像生成システム、プログラム及び情報記憶媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071210

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100531

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100929

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101129

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20101215

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101220

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

Free format text: PAYMENT UNTIL: 20140107

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4656616

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140107

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees