JP2001143100A - 三次元ビデオグラフィックスシステムにおける深度ぼかし効果提供方法および装置 - Google Patents

三次元ビデオグラフィックスシステムにおける深度ぼかし効果提供方法および装置

Info

Publication number
JP2001143100A
JP2001143100A JP2000264177A JP2000264177A JP2001143100A JP 2001143100 A JP2001143100 A JP 2001143100A JP 2000264177 A JP2000264177 A JP 2000264177A JP 2000264177 A JP2000264177 A JP 2000264177A JP 2001143100 A JP2001143100 A JP 2001143100A
Authority
JP
Japan
Prior art keywords
depth
pixel
color values
sample
averaging
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.)
Pending
Application number
JP2000264177A
Other languages
English (en)
Inventor
Yoshitaka Yasumoto
吉孝 安本
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.)
Nintendo Co Ltd
Original Assignee
Nintendo Co 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 Nintendo Co Ltd filed Critical Nintendo Co Ltd
Publication of JP2001143100A publication Critical patent/JP2001143100A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/40Hidden part removal
    • G06T15/405Hidden part removal using Z-buffer

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)
  • Processing Or Creating Images (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Image Processing (AREA)

Abstract

(57)【要約】 【課題】 より簡単で効率的な画像ぼかし技術を提供す
る。 【解決手段】 三次元グラフックスシステム内におい
て、深度に基づく画像ぼかしを行う効率的な方法によれ
ば、アーティストやプログラマは、1以上の深度閾値を
指定することができる。特定の深度閾値から遠くにある
深度を有する画素は、その深度閾値に近い深度を有する
画素よりもぼかされる。効率的な合計/平均化方法を用
いることによって、可変数の複数の隣接する画素カラー
(画素数は画素深度に基づいて選択される)を混合し
て、深度に基づくぼかしを行うことができる。拡張され
た方法では、対象画素より遠くにある画素のみが混合さ
れる。この方法を用いれば、視点から離れた表示面はぼ
やけて見え、視点に近い面よりもはっきり見えなくな
る。この結果得られる映像効果によって、たとえばドラ
イブゲームやキャラクタが道を進んでいくゲームなど、
多くの応用例において、より現実的な画像を効率的に生
み出すことができる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、三次元コンピュー
タグラフィックスに関し、より特定的には、深度に基づ
く効率的なぼかしを意図的に導入した三次元物体の自動
表示方法および装置に関する。
【0002】
【従来の技術】コンピュータグラフィックス画像は、明
瞭で非常に透明度の高い品質を持つ傾向がある。ときに
は、あまりにも明瞭な三次元画像は望ましくないことも
あり、かえって非現実的で間違った外観を生み出してし
まう。たとえば、現実世界においては、物体の見える色
は、観察者から物体までの距離によって変化する。光
は、空気中を進行するにつれて、その色の一部を失う。
光が進行すればするほど、より多くの色が失われる。こ
の効果は、特に、霧や霞が大気中にある場合に顕著であ
る。
【0003】コンピュータグラフィックスシステムのな
かには、現実的な形で物体を遠くに消えていくように見
せるZ深度「フォグ(fog)」効果を提供するものも
ある。このフォグ効果は、典型的には、表面色にフォグ
色を混合することによって行われる。混合量は、視点か
ら表面までの距離によって決まる。Z深度フォグが起動
されると、Z深度100メートルの地点にある物体は、
50メートル地点にある物体よりも、「大気」によって
より霞んで見えるようになる。通常、フォグの色や、フ
ォグが物体を完全に見えなくしてしまう距離を特定する
ことができる。一例として、「三次元コンピュータ動画
の原理」、オローク(O’Rourke)著、ノートン
&カンパニー刊、1998年、134〜139ページ
(「大気効果」)を参照。
【0004】また、コンピュータグラフィックスシステ
ムのなかには、マッピングされたテキスチャ画像の詳細
レベルを、距離に基づいて事前に補間することによって
制御する技術(いわゆる「ミップマッピング」)を提供
するものもある。例えば、ランス・ウィリアムズ(wi
lliams,Lance)著「ピラミッド型パラメト
リックス」、コンピュータグラフィックス誌、Vol.
17、No.3、1〜11頁(1983年7月)を参
照。
【0005】
【発明が解決しようとする課題】上述のような高度な技
術がよく知られているが、より改良することが可能であ
る。たとえば、生成された画像のある部分の詳細レベル
を深度に基づいて選択的に下げることによって、より簡
単で効率的な技術を提供することが望ましい。効率化
は、安価な三次元グラフィックスシステム、たとえば、
対話型三次元家庭用ビデオゲームシステムにおいて、特
に重要である。映像効果を生み出すより効率的な技術に
よって、少ないシステム資源に対する負担は軽減される
ので、速度などの性能を大幅に犠牲にすることなく、映
像体験全体をより高めるためにこのような技術を用いる
ことができる。
【0006】
【課題を解決するための手段および発明の効果】本発明
は、三次元コンピュータグラフィックスシステムにおい
て深度に基づいて画像をぼかす効率的な技術を提供する
ことによって、この問題を解決する。本発明の一実施態
様によれば、アーティストやプログラマーは、1つ以上
の深度閾値を特定して、異なる詳細レベルを規定するこ
とができる。深度閾値からより離れた深度を有する画素
は、よりぼかされる。深度閾値により近い深度を有する
画素は、ぼかし具合をより少なくするか、またはまった
くぼかさない。
【0007】効果的な合計/平均化方法を用いて、画素
カラーを混合して、深度に基づくぼかしを提供すること
ができる。このような方法を用いれば、視点から離れた
表示面はぼやけて見え、視点に近い面よりもはっきり見
えなくなる。この結果得られる映像効果は、多くの応用
例において非常に効果的であり、たとえば、ドライブゲ
ームやキャラクタが道を進んでいくゲームなどにおいて
効果的である。本願が提供するこのような特徴や利点
は、以下の好ましい実施例の詳細な説明を図面に関連し
て参照することによって、よりよく、またより完全に理
解されるであろう。
【0008】
【発明の実施の形態】図1は、本発明に係る深度に基づ
くぼかし技術を示す。典型的な三次元グラフィックスシ
ステムにおいて、Z(深度)軸は、三次元空間内の視点
10と最大距離との間で規定される。通常、表示面は、
このZ軸に沿ったいずれかの場所において規定すること
が可能である。Zバッファメモリが、画素(=ピクセ
ル)深度および/または副画素(=サブピクセル)深度
を画素毎(副画素毎)に追跡する。
【0009】本発明によれば、少なくとも1つの深度閾
値がZ軸上に沿って規定される。表示される各画素を調
べて、深度閾値に対する各画素の深度(Z値)の大きさ
を決定する。深度閾値よりも視点10に近い面を表す画
素は、あまりぼかさない(またはまったくぼかさな
い)。深度閾値よりも視点10から遠い面を表す画素
は、よりぼかす。
【0010】たとえば、深度「閾値1」より小さい(近
い)Z(深度)値を有する面11a上に規定される画素
または副画素12は、故意にぼかしを入れずに表示画素
14に(たとえば一対一で)マッピングされる。Z軸上
において、深度「閾値1」より大きい(遠い)Z(深
度)値を有する面11b上に規定される画素または副画
素16には、1以上の追加画素または副画素(18,2
0)が混合され、ぼかされた表示画素22が生じる。図
1に示す例においては、3つの異なる深度閾値(閾値
1、閾値2、閾値3)が規定されている。
【0011】・Z=0からZ=閾値1の間の深度を有す
る、面11a上に規定された画素または副画素12に
は、何も混合されない(すなわち、故意にぼかさな
い)。 ・Z=閾値1からZ=閾値2の間の深度を有する、面1
1b上に規定された画素または副画素16には、隣り合
う画素または副画素からなる小さな隣接領域が混合され
(すなわち、画素16と2つの隣接する画素18および
20とが平均化される)、弱いぼかしが行われる。
【0012】・Z=閾値2からZ=閾値3の間の深度を
有する、面11c上に規定された画素または副画素24
には、隣り合う画素または副画素からなるやや広い隣接
領域が混合され(すなわち、画素または副画素24と4
つの隣接する画素または副画素26,28,30および
32とが平均化される)、より強いぼかしが行われる。 ・Z>閾値3の深度を有する、面11d上に規定された
画素または副画素36には、隣り合う画素または副画素
からなるさらに広い隣接領域が混合され(すなわち、画
素または副画素36と6つの隣接する画素または副画素
38,40,42,44,46および48とが平均化さ
れる)、さらにより強いぼかしが行われる。
【0013】1からNの互いに異なる深度閾値の数は、
いくつであってもよい。特定の深度閾値に対して平均化
される、隣り合う画素または副画素からなる隣接領域の
サイズをアーティストが選択することによって、所望の
ぼかし量が得られる。ラインバッファを単位として作業
を行うのが便利なので、本例においては、x軸方向にお
いてのみぼかしが行われるものとしている。しかしなが
ら、y方向のみ、または、x軸およびy軸両方向のぼか
しも可能である。
【0014】図2は、本発明に係る画素または副画素の
平均化処理の一例を示す。この処理例においては、複数
の画素または副画素が、視点からそれら画素(副画素)
が存在する面までの距離(Z)の関数として選択され
る。この複数の画素(副画素)は、以下のように平均化
される。まず、画素(副画素)のカラー値(たとえば、
RGB)を合計して合計値を得る。そして、合計値を画
素数で除算して、単純平均を求めてもよい。所望であれ
ば、加重平均を用いてもよい。
【0015】(実施例)図3は、一例として、本発明に
係る、深度に基づく画像ぼかし表示を行う三次元ビデオ
グラフィックシステム1005を示す。システム100
5は、たとえばゲームコントローラ1007および/ま
たは他の手入力装置からの対話型リアルタイム入力に応
答し、表示装置1009(たとえば、家庭用カラーテレ
ビ、ビデオモニタ、または他のディスプレイ)に映像表
示を行う。システム1005は、外部記憶媒体1011
(たとえば、交換可能なビデオゲームカートリッジ、C
D−ROM、または他の光ディスク)に記憶されたビデ
オゲームプログラムなどのコンピュータプログラムの制
御によって動作する。
【0016】本例においては、システム1005は、プ
ロセッサ1010、三次元グラフィックスコプロセッサ
1020およびメモリ1030を含む。プロセッサ10
10は、三次元グラフィックスコマンドをグラフィック
スコプロセッサ1020に与える。グラフィックスコプ
ロセッサ1020は、三次元グラフィックスコマンドに
従って、三次元世界の二次元表示をインタラクティブに
生成する。たとえば、グラフィックコプロセッサ102
0は、ハードウェアに基づいた三次元グラフィックスパ
イプラインを含む。このパイプラインは、三次元空間に
おいて規定されたポリゴンなどのグラフィックス基本型
を操作して、任意に選ばれた視点に基づく視野面に投影
された三次元空間の二次元画像を表す画素を生成する。
本例において、ユーザは、ゲームコントローラ1007
を用いて、リアルタイムでインタラクティブに視点を変
更することができる。
【0017】グラフィックスコプロセッサ1020は、
生成した表示画素を、メモリ装置1030内のフレーム
バッファ1040に記憶する。フレームバッファ104
0は、カラーフレームバッファ1042と、深度(Z)
バッファ1044とを備える。本例において、カラーフ
レームバッファ1042は、赤、緑、青(RGB)のカ
ラー値の二次元アレイを記憶する。記憶されたRGBカ
ラー値と表示装置1009上に表示される画素との間に
は一対一関係があってもよい。また、フレームバッファ
1042は、副画素のサンプル値を記憶してもよい。Z
バッファ1044は、カラーフレームバッファに記憶さ
れている各画素または副画素についての深度値(たとえ
ば、視点に対するz方向の距離)を記憶する。よく知ら
れているように、Zバッファ1044は、グラフィック
パイプラインが画像を「構築」するにつれて、さまざま
な目的に用いられる(たとえば、見えない面の除去な
ど)。好ましい実施例において、Zバッファ1044の
内容は、色を選択的に混合して、深度に基づくぼかしを
行う役割も果たす。
【0018】図4は、本発明が実施されるであろうイン
タラクティブ三次元コンピュータグラフィックスシステ
ム1005全体のより詳細な模式図である。システム1
005は、魅力的なステレオ音声を伴うインタラクティ
ブ三次元ビデオゲームを行うために用いることができ
る。光ディスク1011などの適切な記憶媒体を光ディ
スク再生装置1134に挿入することによって、いろい
ろなゲームを行うことができる。ゲームを行う者は、手
動コントローラ1007などの入力装置を操作すること
によって、システム1005とリアルタイムに対話する
ことができる。このコントローラ1007は、ジョイス
ティック、ボタン、スイッチ、キーボード、キーパッド
など、さまざまな操作器が含まれる。
【0019】本例において、メインプロセッサ1010
が、手動コントローラ1007(および/または他の入
力装置)からの入力を受ける。メインプロセッサ101
0は、インタラクティブにこのようなユーザ入力に応答
し、たとえば外部記憶装置1011から提供される、ビ
デオゲームや他のグラフィックスプログラムを実行す
る。たとえば、メインプロセッサ1010は、衝突検出
や動画処理のほかにも、様々なリアルタイムでインタラ
クティブな制御機能を行うことが可能である。
【0020】メインプロセッサ1010は、三次元グラ
フィックスコマンドや音声コマンドを生成し、これらを
グラフィックスおよび音声コプロセッサ1020に送信
する。グラフィックスおよび音声コプロセッサ1020
は、これらのコマンドを処理して、魅力的な画像を表示
装置1009に表示し、ステレオ音声をステレオスピー
カ1137R、1137L、または適切な音声生成装置
において生成する。
【0021】システム1005は、TVエンコーダ11
40を含む。TVエンコーダは、画像信号をコプロセッ
サ1020から受信し、標準的な表示装置1009(た
とえば、コンピュータモニタや家庭用カラーテレビ受像
機)での表示に適するように合成ビデオ信号に変換す
る。また、システム1005は、オーディオコーデック
(圧縮器/伸長器)1138を含む。
【0022】オーディオコーデック1138は、デジタ
ル化された音声信号を圧縮/伸長する(さらに、デジタ
ルアナログ音声信号形式の変換も行ってもよい)。オー
ディオコーデック1138は、バッファ1141を介し
て音声入力を受信し、コプロセッサ1020に送信する
(コプロセッサ1020における処理には、コプロセッ
サが生成する他の音声信号、および/または、光ディス
ク装置1134のストリーミング音声出力を介して受信
した他の音声信号とのミキシングなどがある)。
【0023】コプロセッサ1020は、音声関連情報
を、音声タスク専用のメモリ1144に記憶させる。コ
プロセッサ1020は、処理後の音声出力信号をオーデ
ィオコーデック1138に与えて、圧縮および(たとえ
ば、バッファ増幅器1142Lおよび1142Rを介し
て)アナログ信号への変換を行い、スピーカ1137L
および1137Rによって再生できるようにする。
【0024】コプロセッサ1020は、システム100
5内の様々な周辺機器と通信することができる。たとえ
ば、光ディスク装置1134との通信には、パラレルデ
ジタルバス1146が用いられてもよい。様々な周辺機
器との通信には、シリアル周辺バス1148が用いられ
てもよい。この周辺機器の例としては、ROMおよび/
またはリアルタイムクロック1150、モデム115
2、フラッシュメモリ1154などが挙げられる。拡張
メモリ1158(たとえば、メモリカード)との通信に
は、さらに外部のシリアルバス1156が用いられても
よい。
【0025】図5は、コプロセッサ1020内の構成要
素例のブロック図である。コプロセッサ1020は、1
つの集積回路であって、三次元グラフィックスプロセッ
サ1107と、プロセッサインターフェース1108
と、メモリインターフェース1110と、オーディオデ
ィジタル信号プロセッサ(DSP)1162と、オーデ
ィオメモリインターフェース(I/F)1164と、オ
ーディオインターフェースおよびミキサ1166と、周
辺制御器1168と、表示制御器1128とを含む。
【0026】三次元グラフィックスプロセッサ1107
は、グラフィックス処理タスクを行い、オーディオディ
ジタル信号プロセッサ1162は、オーディオ処理タス
クを行う。表示制御器1128は、メモリ1030から
画像情報をアクセスして取り出し、表示装置1009に
表示するためにTVエンコーダ1140に与える。オー
ディオインターフェースおよびミキサ1166は、オー
ディオコーデック1138のインターフェースとなり、
発信源の異なる音声(たとえば、ディスク1011から
のストリーミングオーディオ入力、オーディオDSP1
162の出力、オーディオコーデック1138を介して
受信した外部オーディオ入力など)を混合することも可
能である。
【0027】プロセッサインターフェース1108は、
メインプロセッサ1010およびコプロセッサ1020
間のデータや制御に関するインターフェースとなる。メ
モリインターフェース1110は、コプロセッサ102
0およびメモリ1030間のデータや制御に関するイン
ターフェースとなる。本例において、メインプロセッサ
1010は、プロセッサインターフェース1108とコ
プロセッサ1020の一部であるメモリインターフェー
ス1110とを介して、メインメモリ1108にアクセ
スする。
【0028】周辺制御器1168は、コプロセッサ10
20および上述の様々な周辺機器(たとえば、光ディス
ク装置1134、コントローラ1007、ROMおよび
/またはリアルタイムクロック1150、モデム115
2、フラッシュメモリ1154、およびメモリカード1
158)間のデータや制御に関するインターフェースと
なる。オーディオメモリインターフェース1164は、
オーディオメモリ1144とのインターフェースを提供
する。
【0029】図6は、三次元グラフィックスプロセッサ
1107と、それに関連するコプロセッサ1020内の
構成要素のより詳細な図である。三次元グラフィックス
プロセッサ1107は、コマンドプロセッサ1114
と、三次元グラフィックスパイプライン1116とを含
む。メインプロセッサ1010は、グラフィックスデー
タのストリームをコマンドプロセッサ1114とやり取
りする。コマンドプロセッサ1114は、このような表
示コマンドを受信し、(メモリ1030から処理に必要
な追加のデータを取得して)解析を行い、三次元処理お
よび描画のために頂点コマンドのストリームをグラフィ
ックスパイプライン1116に与える。
【0030】グラフィックスパイプライン1116は、
これらのコマンドに基づいた三次元画像を生成する。処
理後の画像情報は、メインメモリ1030に転送され、
表示制御器128によってアクセスできるようにしても
よい。表示制御器128は、表示装置1009にパイプ
ライン1116のフレームバッファ出力を表示する。メ
モリアービトレーション回路130は、グラフィックス
パイプライン1116と、コマンドプロセッサ1114
と、表示部128とにおけるメモリアクセスを仲裁す
る。
【0031】図6に示すように、グラフィックスパイプ
ライン1116は、変換部1118と、セットアップ/
ラスタライザ1120と、テクスチャ部1122と、テ
クスチャ環境部1124と、画素エンジン1126とを
含んでもよい。グラフィックスパイプライン1116に
おいて、変換部1118は、様々な三次元変換動作を行
い、さらに、照明効果やテクスチャ効果を行ってもよ
い。変換部1118の行う処理は、たとえば、頂点毎に
入力される形状の物質空間から画面空間への変換、入力
されるテクスチャ座標の変換、射影テクスチャ座標の計
算、ポリゴンクリッピング、頂点毎の照明度計算、バン
プマッピングテクスチャ座標の生成などがある。
【0032】セットアップ/ラスタライザ1120は、
セットアップ部を含む。セットアップ部は、変換部11
18から頂点データを受信し、三角形のセットアップ情
報を複数のラスタライザに送信する。ラスタライザは、
エッジのラスタ化、テクスチャ座標のラスタ化、カラー
のラスタ化を行う。テクスチャ部1122は、テクスチ
ャリングに関連して様々なタスクを行う。このタスクに
は、マルチテクスチャ処理、キャッシュ後のテクスチャ
伸長処理、テクスチャフィルタリング、浮き出しバンプ
マッピング、射影テクスチャを用いた陰影付け、および
アルファトランスペアレンシーおよび深度を用いたBL
ITなどがある。テクスチャ部1122は、フィルタリ
ングされたテクスチャ値をテクスチャ環境部1124に
出力する。テクスチャ環境部1124は、ポリゴンカラ
ーとテクスチャカラーとを混合し、テクスチャフォグや
その他の環境関連機能を行う。画素エンジン1126
は、zバッファリングや混合を行い、データを集積回路
上のフレームバッファメモリに記憶する。
【0033】グラフィックスパイプライン1116は、
フレームバッファおよび/またはテクスチャ情報を局所
的に記憶する1以上のDRAMメモリ(図示せず)を搭
載してもよい。集積回路上のフレームバッファは、メイ
ンメモリ1030に定期的に書き込まれ、表示部112
8がアクセスできるようにする。グラフィックスパイプ
ライン1116のフレームバッファ出力(最終的にはメ
インメモリ1030に記憶される)は、表示部1128
によってフレーム毎に読み出される。表示部1128
は、表示装置1009における表示のために、ディジタ
ルRGB画素値を提供する。
【0034】上述のビデオゲームシステム構成要素のあ
るものは、上述の家庭用ビデオゲームコンソール構成以
外のものとして実現することも可能である。一般的に、
家庭用ビデオゲームソフトウェアは、特定のシステム上
で実行されるように書かれている。このビデオゲームソ
フトウェアは、異なるシステムのハードウェアやソフト
ウェア構成を考慮するように、その異なるシステムに
「移植される」(変換される)ことも、ときには可能で
ある。このような「移植」は、ビデオゲームのソースコ
ードにアクセスする必要があることが多い。この他に、
構成の異なるシステムにおいてゲームソフトウェアを実
行させるための方法としては、第2のシステムが第1の
システムを模倣するようにさせる方法がある。第2のシ
ステムが第1のシステムのハードウェアおよびソフトウ
ェア資源をうまく模倣または模擬することができれば、
第2のシステムはビデオゲームソフトウェアのバイナリ
で実行可能な画像をうまく実行することができ、ゲーム
ソフトウェアのソースコードにアクセスする必要はなく
なる。
【0035】家庭用ビデオゲームにおいて、エミュレー
タは、ゲームプログラム用のシステム、すなわちゲーム
プログラムを実行することができるように設計されてい
るシステムとは異なるシステムである。一例として、エ
ミュレータシステムは、ゲームソフトウェア用のシステ
ムのものとは異なる、ハードウェアおよび/またはソフ
トウェア構成(プラットフォーム)を提供する。エミュ
レータシステムは、ゲームソフトウェア用のシステムの
ソフトウェアおよび/またはハードウェア構成要素を模
倣する、ソフトウェアおよび/またはハードウェア構成
要素を含む。たとえば、エミュレータシステムは、当該
ゲームソフトウェア用システムのハードウェアおよび/
またはファームウェアを模擬するソフトウェア模倣プロ
グラムを実行する、パーソナルコンピュータなどの汎用
ディジタルコンピュータを備えてもよい。
【0036】エミュレータソフトウェアは、コンソール
を用いた図3〜6に示すような家庭用ビデオゲームシス
テム用のゲームを、パーソナルコンピュータやその他の
汎用ディジタルコンピュータ上で実行できるように開発
されてもよい。このような汎用ディジタルコンピュータ
(たとえば、IBMやマッキントッシュのパーソナルコ
ンピュータやその互換機)は、DirectXや他の標
準三次元グラフィックスコマンドアプリケーションプロ
グラムインターフェース(API)に対応する三次元グ
ラフィックスパイプラインを提供する三次元グラフィッ
クスカードを搭載しているものがある。また、サウンド
コマンドの標準的な集合に基づいて高品質のサウンドを
提供するステレオサウンドカードを搭載しているものも
ある。
【0037】エミュレータソフトウェアを実行するこの
ようなマルチメディアハードウェア搭載パーソナルコン
ピュータは、専用家庭用ビデオゲームコンソールハード
ウェア構成におけるグラフィックス性能やサウンド性能
に近づくのに十分な性能を有することもある。エミュレ
ータソフトウェアは、パーソナルコンピュータプラット
フォーム上のハードウェア資源を制御して、家庭用ビデ
オゲームコンソールプラットフォーム―このプラットフ
ォームのためにゲームプログラマはゲームソフトウェア
を書いた―が行う処理、三次元グラフィックス、サウン
ド、周辺機器、および他の機能を模擬する。
【0038】図7は、エミュレーション処理全体の一例
を示す。本エミュレーション処理の例は、ホストプラッ
トフォーム1201と、エミュレータ要素1303と、
ROMまたは光ディスク1305などの記憶媒体や他の
記憶装置上のバイナリ画像を実行可能なゲームソフトウ
ェアとを用いる。ホスト1201は、たとえばパーソナ
ルコンピュータや他の型のゲームコンソールのような汎
用または専用ディジタルコンピューティング装置であっ
てもよい。エミュレータ1303は、ホストプラットフ
ォーム1201で実行され、記憶媒体1305からのコ
マンド、データおよび他の情報をホスト1201が処理
可能な形式にリアルタイムで変換する。たとえば、エミ
ュレータ1303は、図3〜6に示すような家庭用ビデ
オゲームプラットフォーム用のプログラム命令を取り出
し、このプログラム命令をホスト1201が実行または
処理できるような形式に変換する。
【0039】一例として、ゲームプログラムがZ−8
0、MIPS、IBM PowerPCを用いたプラッ
トフォームまたは他の特定の処理装置上で実行されるよ
うに書かれたものであって、かつホスト1201が異な
る(たとえば、インテル社)の処理装置を用いたパーソ
ナルコンピュータである場合、エミュレータ1303
は、記憶媒体1305から1または一連のプログラム命
令を取り出し、1またはそれ以上のインテル社のプログ
ラム命令に変換する。
【0040】同様に、エミュレータ1303は、図3に
示すグラフィックスおよびオーディオコプロセッサによ
って処理されるためのグラフィックスコマンドやオーデ
ィオコマンドを取り出し、ホスト1201で利用可能な
グラフィックスハードウェアおよび/またはソフトウェ
アならびにオーディオ処理資源が処理できるような形式
に変換する。一例として、エミュレータ1303は、こ
のようなコマンドを、ホスト1201の特定のグラフィ
ックスおよび/またはサウンドカードが(たとえば、標
準のDirectXやサウンドアプリケーションプログ
ラムインターフェース(API)を用いて)処理できる
ようなコマンドに変換してもよい。
【0041】上述のようなビデオゲームシステムの機能
の一部または全部を提供するために用いられるエミュレ
ータ1303は、エミュレータを用いて実行されるゲー
ム用の様々な選択肢や画面モードの選択を簡略化または
自動化するグラフィックユーザインターフェース(GU
I)を備えていてもよい。一例として、このようなエミ
ュレータ1303は、当該ビデオゲームソフトウェアが
元来想定していたホストプラットフォームと比べて高い
機能性をさらに有していてもよい。
【0042】図8は、エミュレータ1303と共に用い
るのに適したパーソナルコンピュータであるの場合のホ
スト1201を示す。パーソナルコンピュータシステム
1201は、処理部1203と、システムメモリ120
5とを含む。システムバス1207は、システムメモリ
1205などの様々なシステム要素と、処理部1203
とを接続する。システムバス1207は、メモリバスま
たはメモリコントローラ、周辺バス、ローカルバスな
ど、数種のバス構造―各々のバス構造には様々なバスア
ーキテクチャのうちのいずれかが用いられる―のいずれ
であってもよい。
【0043】システムメモリ1205は、読み出し専用
メモリ(ROM)1252と、ランダムアクセスメモリ
(RAM)1254とを含む。ROM1252には、ベ
ーシック入出力システム(BIOS)1256が記憶さ
れており、これには、立ち上げ時などにパーソナルコン
ピュータシステム1201内の要素間の情報伝達を助け
る基本ルーチンが含まれている。パーソナルコンピュー
タシステム1201は、様々なドライブおよびコンピュ
ータが読み出し可能な関連媒体をさらに含む。ハードデ
ィスクドライブ1209は、(典型的には固定の)磁気
ハードドライブ1211に対して、読み出しや書き込み
を行う。磁気ディスクドライブ1213は、着脱可能な
「フロッピー(登録商標)」や他の磁気ディスク121
5に対して、読み出しや書き込みを行う。光ディスクド
ライブ1217は、CD−ROMや他の光学媒体などの
着脱可能な光ディスク1219に対して読み出しを行
い、構成によっては書き込みも行う。
【0044】ハードディスクドライブ1209、磁気デ
ィスクドライブ1213、および光ディスクドライブ1
217は、それぞれ、ハードディスクドライブインター
フェース1221、磁気ディスクドライブインターフェ
ース1223、および光ドライブインターフェース12
25によって、システムバス1207に接続されてい
る。これらドライブおよびコンピュータが読み出し可能
な関連媒体は、コンピュータが読み出し可能な命令、デ
ータ構造、プログラムモジュール、ゲームプログラム、
およびパーソナルコンピュータシステム1201のため
の他のデータを不揮発的に記憶する。また、他の構成に
おいては、コンピュータがアクセス可能なデータを保存
することができる、コンピュータが読み出し可能な他の
媒体(たとえば、磁気カセット、フラッシュメモリカー
ド、ディジタルビデオディスク、ベルヌーイ(bern
oulli)カートリッジ、ランダムアクセスメモリ
(RAM)、読み出し専用メモリ(ROM)など)も用
いてもよい。
【0045】エミュレータ1303を含む多くのプログ
ラムモジュールが、システムメモリ1205のハードデ
ィスク1211、着脱可能な磁気ディスク1215、光
ディスク1219および/またはROM1252および
/またはRAM1254に記憶されてもよい。このよう
なプログラムモジュールは、グラフィックスおよびサウ
ンドアプリケーションプログラムインターフェース(A
PI)、1以上のアプリケーションプログラム、他のプ
ログラムモジュール、プログラムデータ、およびゲーム
データを提供するオペレーティングシステムを含んでも
よい。
【0046】ユーザは、キーボード1227やポインテ
ィングデバイス1229などの入力装置を用いて、パー
ソナルコンピュータシステム1201に対して、コマン
ドや情報を入力する。他の入力装置としては、マイクロ
フォン、ジョイスティック、ゲームコントローラ、衛星
放送用アンテナ、スキャナなどがある。このような入力
装置は、システムバス1207に接続しているシリアル
ポートインターフェース1231を介して、処理装置1
203に接続される場合が多いが、たとえばパラレルポ
ート、ゲームポート、ユニバーサルシリアルバス(US
B)などの他のインターフェースによって接続されても
よい。また、システムバス1207には、モニタ123
3や他の型の表示装置が、ビデオアダプタ1235など
のインターフェースを介して接続されている。
【0047】パーソナルコンピュータ1201は、イン
ターネットなどのワイドエリアネットワーク1152と
通信を行うためのモデム1154などの手段をさらに含
んでもよい。モデム1154は、内蔵でも外付けでもよ
く、シリアルポートインターフェース1231を介して
システムバス1207に接続される。パーソナルコンピ
ュータ1201は、ネットワークインターフェース11
56をさらに備えていてもよく、これによって遠隔計算
装置1150(たとえば、他のパーソナルコンピュー
タ)とローカルエリアネットワーク1158を介して通
信することができる(このような通信は、ワイドエリア
ネットワーク1152、または他の通信路―例えばダイ
アルアップ方式や他の通信手段―などを介して行われて
もよい)。パーソナルコンピュータシステム1201
は、典型的には、プリンタなどの標準周辺機器のような
他の周辺出力装置を含む。
【0048】たとえば、ビデオアダプタ1235は、三
次元グラフィックスパイプラインチップセットを含んで
もよい。このチップセットは、マイクロソフト社のDi
rectXのような標準三次元グラフィックスアプリケ
ーションプログラマインターフェースに基づいて出され
た三次元グラフィックスコマンドに応答して、三次元グ
ラフィックス描画を高速に行う。さらに、一連のステレ
オスピーカ1237が、システムバス1207に接続さ
れており、この接続は、バス1207によって与えられ
るサウンドコマンドに基づく高品質ステレオサウンド生
成に対応したハードウェアおよび内蔵ソフトウェアを提
供する、従来の「サウンドカード」などのサウンド生成
インターフェースによって行われる。このようなハード
ウェアの性能により、ホスト1201は、記憶媒体13
05に記憶されたビデオゲームを行うのに充分な速度の
グラフィックスおよびサウンド性能を提供することがで
きる。
【0049】(深度ぼかし処理のより詳細な例)図3〜
8を参照して、本発明による深度に基づくぼかしは、ハ
ードウェアおよび/またはソフトウェアとして行われる
のが利点である。たとえば、充分な時間がある場合、プ
ロセッサ1010は、グラフィックスコプロセッサ10
20がフレームバッファ1040への画像描写を行って
からその画像が表示されるまでの間にフレームバッファ
1040にアクセスすることによって、カラーフレーム
バッファ1042(図3参照)に記憶された画像をぼか
すための画素配置処理を実行することができる。また
は、この機能を行うためのハードウェアおよび/または
ソフトウェアが、グラフィックコプロセッサ1020に
内蔵されるようにすることもできる。
【0050】一実施例においては、カラーフレームバッ
ファ1042およびzバッファ1044の内容は、メモ
リ1030から、コプロセッサ1020内の高速(たと
えば、キャッシュ)メモリにロードされる。(グラフィ
ックパイプライン内における混合回路やzバッファ計算
回路のような既存のハードウェアサポートを利用する)
コプロセッサ内のソフトウェアおよび/またはハードウ
ェアは、画素配置処理/フィルタリング処理を行って、
深度ぼかしを行う。このような深度に基づくぼかしは、
たとえば、アンチエイリアスフィルタリング処理の一部
であってもよく、この場合、画素カラーオブジェクトを
いったん保持することなしに直接、表示装置1009に
提供する。
【0051】フレームバッファ1040が特定の方向に
毎回1行読み出されて処理される場合には、前の行のZ
値を保持するためにラインバッファを用いることが可能
である。コプロセッサ1020がこのような画素配置処
理を完了すれば、コプロセッサは、修正されたカラーフ
レームバッファ1042をメモリ1030に書き戻して
もよいし、書き戻さなくてもよい。平均化された値は、
表示装置1009における画像を生成するために、コプ
ロセッサ内のビデオ生成回路に与えられる。
【0052】深度に基づく効率的なぼかし処理の一例
は、プロセッサ1010により、図9に示すデータ構造
を用いて行うことが可能である。このデータ構造は、距
離アレイ100と、赤カラーアレイ102と、緑カラー
アレイ104と、青カラーアレイ106とを含む。本例
において、指標i(110)は、距離アレイ100と、
カラーアレイ102、104、106とを指し示すため
に用いられる。
【0053】距離アレイ100は、近い順に並べられた
様々な距離閾値(閾値1、閾値2、閾値3、…)を含
む。カラーアレイ102、104、106は、それぞ
れ、距離閾値と同じ数のアレイ要素を含む。特に効果的
な好ましい実施例における処理方法では、距離アレイ1
00内の各距離閾値に対する画素値を平均化して、平均
値をカラーアレイ102、104、106に記憶させる
平均化器120を含む(図10、ブロック120参
照)。この処理方法は、特定のカラーアレイ要素を選択
して、画素の深度と距離アレイ内の深度閾値との比較に
基づいた表示を行う選択器122をさらに含む(図1
0、ブロック122参照)。
【0054】図11は、(たとえば、プロセッサ101
0によって)行われる、深度に基づくぼかし処理のため
のステップのより詳細なフローチャートの例を示す。本
例において、距離アレイ100と、カラーアレイ10
2、104、106とは、まず初期化される(たとえ
ば、距離アレイの各要素を所定の距離閾値に設定し、カ
ラーアレイ102、104、106の各要素を0に設定
する)。そして、次に処理すべき画素のカラー(たとえ
ば、R、G、B)値と深度(Z)値とが検索される(ブ
ロック152)。本例において、画素深度値Zは、マッ
ハバンド発生の防止のため、ディザフィルタを用いて平
滑化され、ディザリングされた画素Z値tzが生じる
(ブロック152)。
【0055】平均化器120は、たとえば、ブロック1
54によって制御されたループによって実施される。ル
ープは、第1の距離「閾値1」に対応する範囲に対して
画素範囲平均化を行い、生じた平均画素カラーをループ
指標i(110)によって選択されたカラーアレイ10
2、104、106の第1の組に記憶する(ブロック1
56)。本例において、ブロック156の平均化処理
は、ループ指標i(110)を用いて、平均化すべき画
素の数も選択し、平均化すべき画素値を(x方向のぼか
しのみを与える)ラインバッファから検索する。したが
って、本例において、1回目のループの繰り返しでは、
i=1に設定され、したがって、カラーアレイ102、
104、106の第1の要素sR〔1〕、sG〔1〕、
sB〔1〕に書き込まれる値は、平均化されていない画
素カラー値R〔x,y〕、G〔x,y〕、B〔x,y〕
とそれぞれ同一である。
【0056】次の繰り返しにおいて、ループは、さらに
広い範囲の、次の距離閾値「閾値2」に対応する隣接し
た画素に対する画素領域平均化をさらに行い、生じた平
均画素カラーを、ループ指標iによって選択されたカラ
ーアレイ102、104、106の次の組に記憶する
(ブロック156)。本例においては、この第2の繰り返
しの際には、3つの画素が平均化される。ループは、異
なる距離閾値の数(「MAX」)だけ繰り返されてもよ
く、多くの平均画素値がカラーアレイ102、104、
106に記憶されるようになってもよい。本例において
は、i=MAXにおける平均化器120は、320画素
×240画素の表示に対し、最大で(x−3,y)から
(x+3,y)の領域の平均値化を行う。
【0057】平均化処理102が距離アレイ100内の
様々な各距離閾値に対する平均画素値を生じると、選択
器112は、画素深度値Zをカラーアレイ102、10
4、106に記憶された様々な深度閾値と比較して、ど
の画素値を選択するか決定する。本例において、選択器
122は、ブロック158によって制御されるループ―
このループも〔x,y〕ループ指標i(110)を用い
る―によって実施される。ループ指標i(110)は、
この指標が示す距離アレイ値である距離〔i〕がディザ
リングされた画素深度値tZを超えるまで、連続的に増
分される(ブロック160)。その時点でループ指標iが
示すカラーアレイ値sR〔i〕、sG〔i〕、sB
〔i〕が、当該画素の新たなカラー値として選択される
(ブロック162)。ここで、ディザリングは、距離
〔i〕に対して、その値にゆらぎを作り出すためにオフ
セット値を加算する処理である。このオフセット値は、
乱数あるいは画面上の位置などのパラメータによって決
定される。
【0058】以上の処理は、表示される画像内の各画素
について行われる(ブロック164)。画像の各行に対応
する平均画素カラー値は、各行が処理される毎にフレー
ムバッファ1042に書き戻されてもよい。以下は、コ
ンピュータソースコードの実施例である。
【0059】 Dist[] ={閾値0,閾値1,閾値2…} sR[] ={0, 0, 0, …}; sG[] ={0, 0, 0, …}; sB[] ={0, 0, 0, …}; for (各画素){ /*平均化器*/ for (i = 1 to MAX) /*(x,y)周辺のRGB 要素 を合計 平均領域はアーティストにより決まる*/ sR[i] = sum ((x,y)周辺のR 値) / i; sG[i] = sum ((x,y)周辺のG 値) / i; sB[i] = sum ((x,y)周辺のB 値) / i; } /*選択器*/ tZ = dither_filter(Z[x][y]); /*フィルタがない場合,マッハバンド が発生する可能性がある*/ for (i = 1, …, MAX-1){ if (tZ< Dist[i]){ break; } } R[x][y] = sR[i]; G[x][y] = sG[i]; B[x][y] = sB[i]; }
【0060】図11の深度ぼかし処理は、平滑な陰影と
いうディザ効果を打ち消してしまうこともある。たとえ
ば、グーロー(Gouraud)陰影は、ポリゴン表面
の表面法線を意図的に調節し、通常の平滑な接平面に近
づけることによって、ポリゴンが接する点においてポリ
ゴンによって近似化された表面が平滑に見えるようにす
る。グーローアルゴリズムは、調節された表面法線に基
づいて交差面における色を計算し、平滑な交差面に付け
られるであろう陰影に視覚的に近似するような陰影を与
える。この平滑な陰影効果を打ち消してしまわないよう
にするため、平均化器120は、選択された平均化対象
の領域内にある、当該画素よりも遠くにある(すなわ
ち、より大きな深度値Zを有する)ような画素のみを平
均化する。
【0061】図12は、2つの表示面11bおよび11
cが互いに隣接している場合を模式的に示す。表示面1
1bは、表示面11cよりも視点10に近いところにあ
る。本例において、対象画素よりも深度が遠くにある画
素のみに対して平均化処理が行われる。対象画素よりも
深度が近くにある画素については、平均化処理が行われ
ない。
【0062】図13は、この付加拡張機能を含む変形例
である平均化器120’のフローチャートである。本例
において、ループ制御ブロック154は、図11の例と
同一である。しかしながら、新たな変数n(ブロック2
04によって初期化される)が、現在の画素値に対して
いくつの画素が平均化されるのかを監視するために導入
される。ブロック208、210、および212は、平
均化(前述と同様、ループカウンタi(110)によっ
て指示された特定の深度閾値である深度〔i〕にして決
定される)のために利用可能な領域内の各画素について
行われる。当該領域における各画素の深度(z)は、対
象画素のディザリングされた深度値tZと比較される
(ブロック208)。
【0063】比較された画素深度zがtZより小さい場
合(平均化を行うかどうかを検討中の画素値が、対象画
素よりも視点10に近いことを示す)、この画素は平均
化に含めない(決定ブロック208の「N」出口)。逆
に、比較された画素深度zがtZより大きい場合(平均
化を行うかどうかを検討中の画素値が、対象画素よりも
視点10から遠いことを示す)、nは増分されて(ブロ
ック210)、その画素カラー値(画素R、画素G、画
素B)はsR〔1〕、sG〔1〕、sB〔1〕に足しこ
まれる(ブロック208の「Y」出口およびブロック2
12)。
【0064】この検査は、平均化のために利用可能な領
域にある各画素について繰り返し行われる(ブロック2
14)。当該領域のすべての画素についてこのような処
理が行われると、ブロック212によって計算された合
計がn(すなわち、カラーアレイ要素に足しこまれた画
素数)で除算されて正規化され、平均が求められる(ブ
ロック216)。その後、選択器122が、図11に示
すような画素深度と深度閾値との比較に基づいて、カラ
ーアレイ要素を選択してもよい。上述したように、画素
配置処理フィルタは、いろいろな方法で実施可能であ
る。以下は、コンピュータソースコードの例である。
【0065】 /*平均化器*/ tZ = dither_filter(Z[x][y]); /*フィルタがない場合,マッハバンドが発生す る可能性がある*/ for (i = 1, …, MAX-1){ n = 0; for (平均化領域の各画素){ if (画素がtZより遠い場合){ n ++; sR[i] += 画素 R; sG[i] += 画素 G; sB[i] += 画素 B; } } sR[i]/=n; sG[i]/=n; sB[i]/=n; }
【0066】本発明は、現在最も現実的で好ましい実施
例と思われるものに関連して説明されてきたが、本発明
は、開示された実施例に限定されるものではなく、様々
な変形例や均等な構成を含むことを想定していると解釈
される。
【図面の簡単な説明】
【図1】本出願に係る深度に基づくぼかしを示す図であ
る。
【図2】画素深度に基づくxぼかしを提供する、x方向
の画素カラー平均化の例を示す図である。
【図3】本発明を関連付けて動作可能な家庭用ビデオゲ
ームシステムの実施例であって(図4〜図8も同様)、
本発明に係る、深度に基づく画像ぼかし表示を行う三次
元ビデオグラフィックシステム1005を示す図であ
る。
【図4】本発明が実施されるであろうインタラクティブ
三次元コンピュータグラフィックスシステム1005全
体のより詳細な模式図である。
【図5】コプロセッサ1020内の構成要素例のブロッ
ク図である。
【図6】三次元グラフィックスプロセッサ1107と、
それに関連するコプロセッサ1020内の構成要素のよ
り詳細な図である。
【図7】エミュレーション処理全体の一例を示す図であ
る。
【図8】エミュレータ1303と共に用いるのに適した
パーソナルコンピュータであるの場合のホスト1201
を示す図である。
【図9】深度に基づく効率的なぼかし処理を行うための
データ構造の例である。
【図10】深度に基づくぼかしを提供するために行われ
るステップのフローチャートの例である。
【図11】深度に基づくぼかしを提供するために行われ
るステップのより詳細なフローチャートの例である。
【図12】対象画素から離れている画素を平均化対象に
含む場合のさらなる拡張例である。
【図13】図11を拡張させた場合のステップのフロー
チャートの例である。
【符号の説明】
120…平均化器 122…選択器 1009…テレビ 1010…プロセッサ 1020…三次元グラフィックスコプロセッサ 1030…メモリ 1042…カラーフレームバッファ 1044…深度フレームバッファ

Claims (25)

    【特許請求の範囲】
  1. 【請求項1】 画像を表すサンプルカラー値および関連
    するサンプル深度値を与える三次元グラフィックスシス
    テムにおいて、深度に基づいて前記画像の部分を意図的
    にぼかす方法であって、 (a)サンプル深度値を少なくとも1つの深度閾値と比
    較するステップと、 (b)前記比較に基づいて、平均化する複数のサンプル
    カラー値の数を決定するステップと、 (c)前記決定された数の複数のサンプルカラー値を平
    均化するステップと、 (d)前記平均化されたカラー値に基づいて表示を生成
    するステップとを含む、前記方法。
  2. 【請求項2】 前記平均化ステップは、隣接するサンプ
    ルカラー値を平均化する、請求項1に記載の方法。
  3. 【請求項3】 前記平均化ステップは、所定の軸に沿っ
    て互いに隣接するサンプルカラー値を平均化する、請求
    項1に記載の方法。
  4. 【請求項4】 前記所定の軸は、x軸である、請求項3
    に記載の方法。
  5. 【請求項5】 前記方法は、前記複数の関連するサンプ
    ルカラー値をラインバッファにロードするステップをさ
    らに含み、 前記平均化ステップは、前記ラインバッファからの前記
    関連するサンプルカラー値を平均化する、請求項1に記
    載の方法。
  6. 【請求項6】 前記方法は、前記深度値をディザリング
    するステップをさらに含み、前記比較ステップは、前記
    ディザリングされた深度値を前記少なくとも1つの所定
    の深度閾値と比較する、請求項1に記載の方法。
  7. 【請求項7】 前記ステップ(a)および(b)は、前
    記画像内の各画素毎に行われる、請求項1に記載の方
    法。
  8. 【請求項8】 前記ステップ(a)〜(c)は、前記比
    較ステップにおいて前記深度値が前記深度閾値を超える
    まで、画素毎に継続して行われる、請求項1に記載の方
    法。
  9. 【請求項9】 前記方法は、関連する深度を有する特定
    のサンプル位置毎に行われ、 前記平均化ステップは、前記特定のサンプル位置に関連
    した深度に近いサンプルカラー値を前記平均から除外す
    る、請求項1に記載の方法。
  10. 【請求項10】 三次元グラフィックスシステムであっ
    て、 画像を表すサンプルカラー値および関連するサンプル深
    度値を与えるフレームバッファメモリと、 サンプル深度値を前記メモリから読み出して、前記サン
    プル深度値を少なくとも1つの深度閾値と比較する比較
    装置と、 前記比較に基づいて、平均化する複数のサンプルカラー
    値の数を決定する決定装置と、 前記メモリから前記決定された数の複数のサンプルカラ
    ー値にアクセスして、前記決定された数の複数のサンプ
    ルカラー値を平均化する平均化装置と、 前記平均化されたカラー値に基づいて表示を生成する表
    示装置とを含む、システム。
  11. 【請求項11】 前記平均化装置は、隣接するサンプル
    カラー値を平均化する、請求項10に記載のシステム。
  12. 【請求項12】 前記平均化装置は、所定の軸に沿って
    互いに隣接するサンプルカラー値を平均化する、請求項
    10に記載のシステム。
  13. 【請求項13】 前記所定の軸は、x軸である、請求項
    12に記載のシステム。
  14. 【請求項14】 前記システムは、前記複数の関連する
    サンプルカラー値を記憶するラインバッファをさらに含
    み、 前記平均化装置は、前記ラインバッファからの前記関連
    するサンプルカラー値を平均化する、請求項10に記載
    のシステム。
  15. 【請求項15】 前記システムは、前記深度値をディザ
    リングするディザリング論理をさらに含み、前記比較装
    置は、前記ディザリングされた深度値を前記少なくとも
    1つの所定の深度閾値と比較する、請求項10に記載の
    システム。
  16. 【請求項16】 前記システムは、前記画像内の各画素
    毎に平均値を生じさせる、請求項10に記載のシステ
    ム。
  17. 【請求項17】 前記システムは、前記比較装置におい
    て前記深度値が前記深度閾値を超えるまで、画素毎に継
    続して前記サンプル値の平均化を行う、請求項10に記
    載のシステム。
  18. 【請求項18】 前記平均化装置は、特定のサンプル位
    置に関連した深度に近いサンプルカラー値を、前記平均
    から除外する、請求項10に記載のシステム。
  19. 【請求項19】 画像の部分を深度に基づいてぼかす方
    法であって、 (a)深度値を画素位置に関連して決定するステップ
    と、 (b)前記画素位置に関連する色と、前記深度値に基づ
    いて選択された数の別の画素位置の色とを平均化するス
    テップと、 (c)前記画素位置において、平均化された色を表示す
    るステップとを備える、前記方法。
  20. 【請求項20】 前記平均化ステップは、前記深度値に
    近い画素位置を除外する、請求項19に記載の方法。
  21. 【請求項21】 前記平均化ステップは、所定の方向の
    前記画素位置に隣接する画素位置の色を平均化する、請
    求項19に記載の方法。
  22. 【請求項22】 前記平均化ステップが選択した前記数
    は、0から3の範囲にある、請求項19に記載の方法。
  23. 【請求項23】 前記平均化ステップは、前記決定され
    た深度値を少なくとも1つの所定の閾値と比較するステ
    ップを含む、請求項19に記載の方法。
  24. 【請求項24】 前記数は、前記深度値と、前記少なく
    とも1つの所定の閾値との関係に基づいて選択される、
    請求項23に記載の方法。
  25. 【請求項25】 三次元グラフィックスシステムを模倣
    するエミュレータであって、 画像を表すサンプルカラー値および関連するサンプル深
    度値を与えるフレームバッファメモリと、 サンプル深度値を前記メモリから読み出して、前記サン
    プル深度値を少なくとも1つの深度閾値と比較する比較
    装置と、 前記比較に基づいて、平均化される複数のサンプルカラ
    ー値の数を決定する決定装置と、 前記メモリから前記決定された数の複数のサンプルカラ
    ー値にアクセスして、前記決定された数の複数のサンプ
    ルカラー値を平均化する平均化装置と、 前記平均化されたカラー値に基づいて表示を生成する表
    示装置とを含む、エミュレータ。
JP2000264177A 1999-08-31 2000-08-31 三次元ビデオグラフィックスシステムにおける深度ぼかし効果提供方法および装置 Pending JP2001143100A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US38684499A 1999-08-31 1999-08-31
US09/386844 1999-08-31

Publications (1)

Publication Number Publication Date
JP2001143100A true JP2001143100A (ja) 2001-05-25

Family

ID=23527300

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000264177A Pending JP2001143100A (ja) 1999-08-31 2000-08-31 三次元ビデオグラフィックスシステムにおける深度ぼかし効果提供方法および装置

Country Status (8)

Country Link
EP (1) EP1081654A3 (ja)
JP (1) JP2001143100A (ja)
CN (1) CN1286454A (ja)
AU (1) AU5503900A (ja)
BR (1) BR0003933A (ja)
CA (1) CA2316611A1 (ja)
MX (1) MXPA00008514A (ja)
TW (1) TW469414B (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008084543A1 (ja) * 2007-01-11 2008-07-17 Mitsubishi Electric Corporation アンチエイリアス装置
JP2010016795A (ja) * 2008-07-04 2010-01-21 Twinhead Internatl Corp ポップノイズ低減機能を有するオーディオ出力装置
JP2013530618A (ja) * 2010-05-11 2013-07-25 トムソン ライセンシング 3次元ビデオの快適ノイズ及びフィルム粒子処理

Families Citing this family (6)

* 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
JP3710131B2 (ja) * 2002-05-29 2005-10-26 シャープ株式会社 画像処理装置および画像処理方法、並びに画像表示装置、携帯電子機器
JP3748554B2 (ja) * 2003-02-05 2006-02-22 コナミ株式会社 画像生成装置、画像生成方法、及びプログラム
US7425984B2 (en) * 2003-04-04 2008-09-16 Stmicroelectronics, Inc. Compound camera and methods for implementing auto-focus, depth-of-field and high-resolution functions
WO2010036098A1 (en) * 2008-09-25 2010-04-01 Tele Atlas B.V. Method of and arrangement for blurring an image
KR20230014943A (ko) * 2021-07-22 2023-01-31 삼성전자주식회사 전자 장치 및 전자 장치의 동작 방법

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63259778A (ja) * 1987-04-17 1988-10-26 Hitachi Ltd 画像デ−タの表示方法
GB9422089D0 (en) * 1994-11-02 1994-12-21 Philips Electronics Uk Ltd Blurring for computer graphics
JP4291892B2 (ja) * 1996-12-06 2009-07-08 株式会社セガ 画像処理装置およびその方法
JP2002503855A (ja) * 1998-02-17 2002-02-05 サン・マイクロシステムズ・インコーポレーテッド 可変解像度スーパーサンプリングによるグラフィックス・システム

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008084543A1 (ja) * 2007-01-11 2008-07-17 Mitsubishi Electric Corporation アンチエイリアス装置
JPWO2008084543A1 (ja) * 2007-01-11 2010-04-30 三菱電機株式会社 アンチエイリアス装置
JP2010016795A (ja) * 2008-07-04 2010-01-21 Twinhead Internatl Corp ポップノイズ低減機能を有するオーディオ出力装置
JP2013530618A (ja) * 2010-05-11 2013-07-25 トムソン ライセンシング 3次元ビデオの快適ノイズ及びフィルム粒子処理
US8761541B2 (en) 2010-05-11 2014-06-24 Thomson Nlicensing Comfort noise and film grain processing for 3 dimensional video

Also Published As

Publication number Publication date
EP1081654A3 (en) 2003-01-22
BR0003933A (pt) 2001-04-03
CN1286454A (zh) 2001-03-07
EP1081654A2 (en) 2001-03-07
AU5503900A (en) 2001-03-08
TW469414B (en) 2001-12-21
CA2316611A1 (en) 2001-02-28
MXPA00008514A (es) 2005-04-28

Similar Documents

Publication Publication Date Title
US6580430B1 (en) Method and apparatus for providing improved fog effects in a graphics system
US7034828B1 (en) Recirculating shade tree blender for a graphics system
US6618048B1 (en) 3D graphics rendering system for performing Z value clamping in near-Z range to maximize scene resolution of visually important Z components
US6664958B1 (en) Z-texturing
US7876332B1 (en) Shader that conditionally updates a framebuffer in a computer graphics system
US6747642B1 (en) Method and apparatus for providing non-photorealistic cartoon outlining within a 3D videographics system
JP4672072B2 (ja) 三次元ビデオグラフィックスシステムにおける非写実的な漫画的な輪郭線提供方法およびその装置
US7061502B1 (en) Method and apparatus for providing logical combination of N alpha operations within a graphics system
JP2002074390A (ja) 低価格のグラフィックスシステムにおけるシャドウマッピング
US8547395B1 (en) Writing coverage information to a framebuffer in a computer graphics system
US7817165B1 (en) Selecting real sample locations for ownership of virtual sample locations in a computer graphics system
US7479961B2 (en) Program, information storage medium, and image generation system
JP2004005452A (ja) 画像処理装置、画像処理方法、半導体デバイス、コンピュータプログラム、記録媒体
JP2001143100A (ja) 三次元ビデオグラフィックスシステムにおける深度ぼかし効果提供方法および装置
JP2007272356A (ja) プログラム、情報記憶媒体及び画像生成システム
US7164421B2 (en) Image generation system, program, and information storage medium
US7710419B2 (en) Program, information storage medium, and image generation system
JP2008077304A (ja) プログラム、情報記憶媒体及び画像生成システム
JP4488346B2 (ja) プログラム、情報記憶媒体、及び画像生成システム
EP1094421A2 (en) Method and apparatus for providing non-photorealistic cartoon outlining within a 3D videographics system
JP2005141647A (ja) プログラム、情報記憶媒体、及び画像生成システム
EP1182617A2 (en) Graphics system with reconfigurable embedded frame buffer and copy out conversions between embedded frame buffer and main memory
JP4476040B2 (ja) プログラム、情報記憶媒体、及び画像生成システム
JP3469225B2 (ja) 3次元モデルに照明効果を施す方法、描画装置および記録媒体
JP2003022453A (ja) 描画処理方法及び装置、描画処理プログラムを記録した記録媒体、描画処理プログラム