JP2002042159A - コンピュータ・グラフィック・システムにおけるアンチエイリアシング方法 - Google Patents
コンピュータ・グラフィック・システムにおけるアンチエイリアシング方法Info
- Publication number
- JP2002042159A JP2002042159A JP2001182695A JP2001182695A JP2002042159A JP 2002042159 A JP2002042159 A JP 2002042159A JP 2001182695 A JP2001182695 A JP 2001182695A JP 2001182695 A JP2001182695 A JP 2001182695A JP 2002042159 A JP2002042159 A JP 2002042159A
- Authority
- JP
- Japan
- Prior art keywords
- buffer
- image
- texture
- image buffer
- supersampled
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 26
- 239000000872 buffer Substances 0.000 claims abstract description 199
- 238000013507 mapping Methods 0.000 claims abstract description 54
- 238000005070 sampling Methods 0.000 abstract description 8
- 230000015654 memory Effects 0.000 description 34
- 238000009877 rendering Methods 0.000 description 32
- 230000008569 process Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 238000001914 filtration Methods 0.000 description 4
- 239000012634 fragment Substances 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000008520 organization Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000009940 knitting Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/50—Lighting effects
- G06T15/503—Blending, e.g. for anti-aliasing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/12—Indexing scheme for image data processing or generation, in general involving antialiasing
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Image Generation (AREA)
Abstract
サブシステム18、およびフレームバッファ24を含む
コンピュータ・グラフィックス・システムにおいてシー
ン・アンチエイリアシングを実行するための方法および
装置を提供する。 【解決手段】 この方法は、スーパーサンプル画像バッ
ファ104およびシングル・サンプル画像バッファ(1
02、112)を定めるステップと、テクスチャマッピ
ング・サブシステム18を使用してスーパーサンプル画
像をシングル・サンプル画像バッファ(102、11
2)にダウンサンプリングするステップと、を含む。シ
ングル・サンプル画像バッファ(102、112)にお
けるダウンサンプリングされた画像は、好ましくはフレ
ームバッファ24に割り当てられる。ダウンサンプリン
グ操作は、好ましくはダブルバッファの入れ替えのとき
に実行される。
Description
グラフィックス・システムに関連し、より具体的にはテ
クスチャマッピングのコンピュータ・グラフィックス・
システムにおけるフルシーン・アンチエイリアスのため
の方法および装置に関する。
ムは、2次元の表示スクリーン上にオブジェクトのグラ
フィカル表現を表示するために使用される。典型的なコ
ンピュータ・グラフィックス・システムでは、表示スク
リーン上に表現されるべきオブジェクトは、複数のグラ
フィック・プリミティブに分解される。プリミティブ
は、グラフィック画像の基本構成要素であり、点、線、
ベクトル、および三角形などのポリゴンを含む。典型的
に、スクリーン上で表現されている1つまたは複数のオ
ブジェクトのビュー(view)を表現するグラフィックス
・プリミティブを2次元の表示スクリーン上にレンダリ
ングまたは描画するのに、ハードウェア/ソフトウェア
方式が実施される。
のオブジェクトを定めるプリミティブ(primitive)
は、ホストコンピュータから提供される。このホストコ
ンピュータは、プリミティブ・データによって各プリミ
ティブを定める。例えば、プリミティブが三角形の場
合、ホストコンピュータは、その頂点のX、Y、Z座標
および各頂点のR、G、B色の値によってプリミティブ
を定める。レンダリング・ハードウェアは、プリミティ
ブ・データを補間して、各プリミティブを表現する表示
スクリーンのピクセルおよび各ピクセルごとのR、G、
B値を演算する。
クス表示を構成するピクセルの離散的性質が原因となっ
てコンピュータ・グラフィックス・システムで発生する
効果である。エイリアシングの例は、ポリゴンのグラフ
ィック表示において、実際には滑らかなエッジ(辺;ed
ge)にすべきギザギザのエッジである。ギザギザのエッ
ジは、各ピクセルがポリゴンの内にあるのか外にあるの
かが判断されるレンダリング処理の結果生じる。
・アンチエイリアシング(scene anti-aliasing)およ
びポリゴン・アンチエイリアシング(polygon anti-ali
asing)を含む。本来のシーン・アンチエイリアシング
は、レンダリングされている各ピクセルのスーパーサン
プリング(supersampling)を含む。フィルタがスーパ
ーサンプリングされる領域に適用されて、エイリアシン
グ生成物(aliasing artifact)を除去し、ギザギザの
エッジを効果的に滑らかにする。レンダリングされてい
る全体の画像がアンチエイリアシングされる。ポリゴン
・アンチエイリアシングは、アンチエイリアシング・フ
ィルタをポリゴンのエッジに適用してそれらのエッジを
滑らかにする。非ポリゴンのプリミティブ(non-poligo
nal primitive)は、別のプリミティブの特定のフィル
タリング技術が利用されないかぎりアンチエイリアシン
グされない。
ータ・グラフィックス・システムにおいて表面細部を改
善するのに使用される。テクスチャマッピングは、3次
元のオブジェクトの表面上にテクスチャと呼ばれる元画
像をマッピングし、その後、テクスチャされた3次元オ
ブジェクトを2次元の表示スクリーンにマッピングする
ことを含む。テクスチャマッピングは、テクスチャの1
つまたは複数の点要素(テクセル;texel)を、テクスチ
ャがマッピングされるオブジェクトの表示部分の各点要
素(ピクセル)に適用することを含む。テクスチャマッ
ピング・ハードウェアは、オブジェクトを表現する表示
スクリーン上のピクセルにテクスチャマップのテクセル
がどのように対応するかを示す情報を与えられる。テク
スチャマップにおける各テクセルは、2次元テクスチャ
マップにおける場所を識別するSおよびTの座標によっ
て定められる。3次元テクスチャマップの場合、各テク
セルは、S、T、およびRの座標によって定められる。
各ピクセルについて、各ピクセルにマッピングされる対
応テクセル(1つまたは複数)は、テクスチャマップか
らアクセスされ、そのピクセルについて生成される最終
的なR、G、B値に組み込まれて、表示スクリーン上に
テクスチャ・オブジェクトを表現する。
クセルは、テクスチャマップの1個のテクセルと一対一
の対応でマッピングされないことがある。表示スクリー
ン上でのオブジェクトのサイズおよびテクスチャマップ
のサイズに依存して、1個のピクセルは、複数のテクセ
ルにマッピングされたり、または1個のテクセルが複数
のピクセルにマッピングされたりする。テクスチャマッ
ピングを容易にするために、一連のMIPマップを各テ
クスチャのために作成してよい。一連のMIPマップ
は、テクスチャマップに直接対応するベースマップおよ
び一連のフィルタリングマップを含み、連続する各マッ
プは、テクスチャマップのそれぞれの次元におけるサイ
ズが2分の1だけ減少する。レンダリングされているオ
ブジェクトに関する一連のテクスチャMIPマップは、
テクスチャマッピング・ハードウェアによってアクセス
可能なローカルメモリに記憶される。
一連のMIPマップのどれからでもテクスチャデータに
アクセスすることができる。任意の特定のピクセルにつ
いてのテクセルデータを提供するためにどのマップをア
クセスするかの判断は、ピクセルにマッピングするテク
セルの数に基づく。テクスチャマップにおける1個のテ
クセルと一対一に対応してピクセルがマッピングされる
場合、ベースマップがアクセスされる。しかしながら、
ピクセルが4個、16個、または64個のテクセルにマ
ッピングされる場合、一連のマップがテクスチャマップ
における4個、16個、および64個のテクセルの平均
を表すテクセルデータを記憶しているので、一連のマッ
プのうちの様々なレベルのマップがアクセスされる。
意の1つのテクセルに直接マッピングされないことがあ
る。また、1個のピクセルが1個のマップにおける2個
またはそれ以上のテクセルの間にマッピングされたり、
または2つのマップの間でマッピングされることもあ
る。この場合、テクセルデータを正確に生成するために
補間が利用される。ピクセルに対応するテクセルデータ
は、1個のマップにおける4個のテクセルのエントリの
加重平均であるか、または2つの最も近いマップにおけ
る8個のテクセルの加重平均であってよい。
のコンピュータ・グラフィックス・システムにおいてア
ンチエイリアシングを提供することが好ましい。アンチ
エイリアシングの機能は、最小の付加的ハードウェアで
提供されるべきであり、可能な範囲において既存の機能
を使用すべきである。
れば、ラスタライザ、テクスチャマッピング・サブシス
テム、およびフレームバッファを含むコンピュータ・グ
ラフィックス・システムにおいて、シーン・アンチエイ
リアシングを実行するための方法が提供される。この方
法は、スーパーサンプル画像バッファおよびシングル・
サンプル画像バッファを定めるステップと、スーパーサ
ンプル画像バッファにスーパーサンプリングされた画像
をレンダリングするラスタライザを使用するステップ
と、およびテクスチャマッピング・サブシステムを使用
してスーパーサンプリングされた画像をシングル・サン
プル画像バッファにダウンサンプリングするステップ
と、を含み、シングル・サンプル画像バッファにおける
ダウンサンプリングされた画像は、アンチエイリアシン
グされる。
およびシングル画像バッファは、フレームバッファに割
り当てられる。画像バッファは、擬似線形フレームバッ
ファ・マッピングによって割り当てられてよい。
は、レンダリングのための第1のバッファおよび表示の
ための第2のバッファを含むダブルバッファ構成を利用
するのが好ましい。スーパーサンプリングされた画像を
シングル・サンプル画像バッファにダウンサンプリング
するステップは、好ましくはダブルバッファの入れ替え
時に実行される。
(bilinear interpolation)などの4対1のダウンサン
プリング操作を含む。1つの実施形態では、ダウンサン
プリング操作は、各ピクセルごとに1つの操作である。
別の実施形態では、ダウンサンプリング操作は、中間画
像を提供する第1のダウンサンプリング操作および最終
的にダウンサンプリングされた画像を提供するための、
該中間画像の第2のダウンサンプリング操作を含む。
ザ、テクスチャマッピング・サブシステム、およびフレ
ームバッファを含むコンピュータ・グラフィックス・シ
ステムにおいて、シーン・アンチエイリアシングを実行
するための装置が提供される。この装置は、スーパーサ
ンプル画像バッファおよびシングル・サンプル画像バッ
ファを定める手段と、スーパーサンプル画像バッファに
スーパーサンプリングされた画像をレンダリングするラ
スタライザを使用する手段と、およびテクスチャマッピ
ング・サブシステムを使用してスーパーサンプリングさ
れた画像をシングル・サンプル画像バッファにダウンサ
ンプリングする手段と、を備え、シングル・サンプル画
像バッファにおけるダウンサンプリングされた画像がア
ンチエイリアシングされる。
ータ・グラフィックス・システムにおいて、シーン・ア
ンチエイリアシングを実行するための装置が提供され
る。この装置は、スーパーサンプリングされた画像を記
憶するためのスーパーサンプル画像バッファおよびダウ
ンサンプリングされた画像を記憶するためのシングル・
サンプル画像バッファを含むフレームバッファと、画像
を定める情報に応答してスーパーサンプル画像バッファ
にスーパーサンプリングされた画像をレンダリングする
ためのラスタライザと、並びにスーパーサンプリングさ
れた画像をシングル・サンプル画像バッファにダウンサ
ンプリングするためのテクスチャマッピング・サブシス
テムと、を備える。シングル・サンプル画像バッファに
おけるダウンサンプリングされた画像は、アンチエイリ
アシングされた画像を構成する。
システムの1つの実施形態の簡単なブロック図を図1に
示す。図示するようにシステム10は、ホストインター
フェース12、ゼオメトリ・アクセラレータ14、ラス
タライザ16、テクスチャマッピング・サブシステム1
8、フラグメント・プロセッサ20、メモリコントロー
ラ22、フレームバッファ24の形でのメモリ、および
表示生成器26を含む。システム10は、モニタ30の
ピクセルを制御するためにピクセルデータを出力する。
ンピュータ(図示せず)と通信し、レンダリングされる
べきプリミティブを表すデータをホストコンピュータか
ら受信する。プリミティブは、例えば三角形の頂点など
のプリミティブの一部についての、X、Y、Zベクトル
座標データ、R、G、Bカラーデータ、およびS、Tテ
クスチャ座標によって特定される。
ミティブを定めるX、Y、Z座標を対応するスクリーン
空間座標に変換し、オブジェクトのR、G、Bカラー値
およびテクスチャのS、T値をスクリーン空間座標につ
いて求め、プリミティブの四辺形を三角形に分解し、各
三角形を定めるために三角形平面の式を演算する。
ラレータ14によって生成されたレンダリング・パラメ
ータを補間して、各三角形の各ピクセルごとにXおよび
Y座標およびカラー値を求める。ラスタライザ16は、
X、Yピクセル座標を補間し、プリミティブを表現する
各X、Yスクリーン表示のピクセルに対応するSおよび
T座標を補間する。ラスタ化処理では、三角形のエッジ
が求められ、それから各エッジに沿ったピクセルが、例
えば頂点情報の間の補間によって求められる。次に、エ
ッジの情報を補間することにより、エッジとエッジとの
間にわたる線のそれぞれに沿ったピクセルが求められ
る。アンチエイリアシングが有効な場合、ラスタライザ
16は、スーパーサンプリングされた画像(supersampl
ed image)を以下に記すようにレンダリングする。
グ・サブシステム18は、ピクセルに対応するフレーム
バッファ24内の1つまたは複数のテクスチャMIPマ
ップ部分にアクセスし、そのピクセルについて合成テク
スチャデータ(resultant texture data)を演算する。
合成テクスチャデータは、複数のピクセルの加重平均値
を含んでよい。下に示すように、テクスチャマッピング
・サブシステム18は、アンチエイリアシング処理の一
部として、スーパーサンプリングされた画像のダウンサ
ンプリング(downsampling;縮小サンプリング)も実行
する。
ライザ16からの出力データに対してピクセルごとの操
作を実行する。フラグメント・プロセッサ20は、ウイ
ンドウ・クリッピング、カラー・キーイング、テクスチ
ャの適用、およびフォッグの適用などの操作を実行す
る。
ファ24を制御する。図1の実施形態では、フレームバ
ッファ24は、画像データおよびテクスチャマッピング
・データを記憶するために使用される。
2を通じてフレームバッファ24における最終的な画像
データにアクセスする。表示生成器26は、モニタ30
に表示される各ピクセルごとにカラー値を生成する。
システムにおけるポリゴンのエイリアシングの模式図で
ある。三角形36は、ラスタライザ16(図1)によっ
てレンダリングされる。三角形36の各辺に沿ったピク
セルは、頂点情報間での補間によって求められる。三角
形36のエッジ38は、ピクセル空間の連続的な列にお
けるピクセル40、42、44、46、その他によって
定められる。ピクセルの配置が本質的に離散的であるの
で、エッジ38に最も近いピクセルは、エッジ38から
様々な距離に位置しており、結果として、三角形36の
グラフィック表示においてギザギザのエッジを生成す
る。この効果をエイリアシングと呼ぶ。エイリアシング
効果は、回路および複雑性の増加がほとんどない以下に
示すアンチエイリアシング技術によって低減される。
の簡単なブロック図を図3に示す。ピクセルデータは、
ラスタライザ16からラスタライザ・インターフェース
50によって受信され、タイラー(tiler)52に供給
される。タイラー52の出力は、キャッシュメモリ6
0、62、64、66、および補間命令FIFO70に
供給される。キャッシュメモリ60、62、64、およ
び66の出力は、補間器80に供給され、メモリコント
ローラ22に供給される。ルックアップテーブル(LU
T)リターンFIFO82は、補間器80とタイラー5
2との間で連結される。タイラー52は、テクスチャマ
ップをフレームバッファ24に割り当てるためにメモリ
・マッピング・ユニットを含む。
の第1の機能は、オブジェクト表面にテクスチャをマッ
ピングすることであり、ここで、オブジェクトがピクセ
ルの配列により表現される。先に述べたように、テクス
チャは、ピクセルに直接マッピングされなくてもよく、
通常、補間を必要とする。具体的には、ピクセルは、1
個のテクスチャマップにおける2つかまたはそれ以上の
テクセルの間に割り当てられることができる。この場
合、ピクセルに対応するテクスチャデータは、1個のテ
クスチャマップにおける4個のテクセルの加重平均にな
る。さらに、ピクセルは、2つのテクスチャマップ間で
割り当てられてもよい。この場合、テクスチャマッピン
グ・サブシステム18は、2つの最も近いMIPマップ
間で補間して、ピクセルについて合成テクスチャデータ
を求めることができる。したがって、1個のピクセルの
合成テクスチャデータは、8個のテクセル(すなわち、
2つの最も近いテクスチャマップのそれぞれにおける4
個の最も近いテクセル)の加重平均でよい。別の態様で
は、1個のピクセルのテクスチャデータは、16個のテ
クセルの加重平均として計算されてもよい。テクスチャ
マッピングに含まれる補間は、テクスチャを有する各オ
ブジェクトの各ピクセルごとに実行される。
型的に線形メモリ割当て方式を用いる。線形メモリ割当
てシステムは、メモリをブロックに分割し、それから、
多くの連続するブロックを所与の使用のために割り当て
る。コンピュータ・グラフィックス・システムでは、線
形メモリ割当て方式は、特定の使用のためにメモリを確
保するのとは異なり、メモリの柔軟な利用を可能にする
ので有用である。しかしながら、純粋な線形メモリ割当
て方式は、最適なレンダリング性能を提供しない。
して知られる線形メモリ割り当て方式の変形は、線形の
完全に構成可能なフレームバッファというPC要件と、
長方形ページの利点とを折衷したものである。この方法
は、フレームバッファをワードの線形配列として扱うの
ではなく、フレームバッファをブロックの線形配列とし
て扱う。各ブロックは、メモリの小さな2次元配列であ
り、これは、2次元の区域でレンダリングを行うときに
最適化されたアクセスを提供するよう設計される。ブロ
ックの範囲は、1つのグループとして割り当てられ、よ
り大きな2次元領域を提供するようブロックのストライ
ド(block stride)を与えられる。ブロック・ストライ
ドは、画像領域またはテクスチャマップのXの大きさを
ブロック単位で設定する。
4は、4つのインターリーブに分割された(各インター
リーブにおいて2個のSDRAMチップ)8個のSDR
AMメモリチップを含む。4個の別個のメモリコントロ
ーラ(各インターリーブに対応して1つ)が提供され、
それにより、各インターリーブ内のSDRAMチップ
は、同時にアクセスされることができる。各SDRAM
チップは、4個の別個のメモリバンクを含み、これで、
メモリの異なるページが、再ページングという犠牲を招
くことなく連続的なリードサイクルでアクセスされるこ
とができる。この例では、各SDRAMチップにおける
バンクは、ページあたり512バイトの4096ページ
を含む。
ファ・マッピングは、ブロックの線形配列としてフレー
ムバッファ24を取り扱う。各ブロックは、2次元の区
域(two-dimensional locality)でレンダリングすると
きに最適化されたアクセスを提供するよう選択されたメ
モリの2次元配列である。先に述べたメモリの構成で
は、ブロックサイズは2048バイトであり、高さ32
ピクセル、幅64バイトに構成される。各ブロックは、
SDRAMチップにおける2つのバンク部分に直接マッ
ピングされる。2つのメモリバンクにおけるページを完
全に使い果たすために計4個のブロックが必要とされ
る。4つの全てのメモリバンクにおけるページを使い果
たすために8個のブロックが必要とされる。
は、(例えば画像を表すピクセルデータの配列、または
テクスチャを表すテクセルデータの配列などの)データ
配列をブロック座標にマッピングし、その後で、フレー
ムバッファ24におけるブロック座標を特定の行、バン
ク、およびページにメモリマッピングすることを含む。
メモリにマッピングされるデータ配列は、メモリにおけ
るブロック配列の最初の番号であるブロック番号オフセ
ット(BNO)と、ブロック一行分における連続ブロッ
クの数であるブロック・ストライド(BS)とによって
特徴づけられることができる。例えば、4のブロック・
ストライドを有し、合わせて16個のブロックを含む配
列は、4×4のブロック配列を表す。このブロック配列
は、後述するようにメモリにマッピングされる。メモリ
におけるブロック配列の位置は、ブロック番号オフセッ
トによって表される。
ファのためのメモリバンクおよびページにデータのブロ
ックをマッピングする例を図4に示す。各ブロックは、
高さ32ピクセル、64バイト幅のサイズを有する。各
ブロックは、2つのメモリバンクの間で分割される。し
たがって、ブロック0−3のそれぞれは、バンク0とバ
ンク1との間で分割され、ブロック4−7のそれぞれ
は、バンク2とバンク3との間で分割される。ブロック
0−7は、バンク0−3におけるピクセルの32列の1
つのページを使い果たす。
の編成の例を図5に示す。フレームバッファ24は、テ
クスチャ・バッファ100a、100b、その他などを
含み、これは、先に述べたようなテクスチャMIPマッ
プを含む。さらに、フレームバッファ24は、前方シン
グル・サンプル画像バッファ102、スーパーサンプル
画像バッファ104、スーパーサンプル深度バッファ
(supersample depth buffer)106、および後方シン
グル・サンプル画像バッファ112を含む。図5に示す
バッファのそれぞれは、先に述べたような擬似線形フレ
ームバッファ・マッピングを使用して割り当てられるこ
とができる。
を表し、ここでレンダリングおよび画像表示が同時に実
行される。特に、ラスタライザ16は、画像データを一
方のバッファ(フロントまたはバック)にレンダリング
し、表示生成器26は、モニタ30上の表示のために他
方のバッファから画像データを読み取る。レンダリング
および表示処理が完了するとき、レンダリングおよび表
示バッファは、入れ替えられ、それによりレンダリング
のために以前使用されたバッファは、表示のために利用
可能になり、表示のために以前使用されたバッファが新
しい画像をレンダリングするために利用可能になる。ダ
ブルバッファの入れ替えは、1つのバッファからもう1
つのバッファへのデータの転送を含み、すなわち各バッ
ファに関する属性ビットの変化を伴う。これは、各バッ
ファが現在、レンダリング・バッファであるか、または
表示バッファであるかを示す。
ンプル画像バッファ102および後方シングル・サンプ
ル画像バッファ112は、サイズにおいてレンダリング
されている画像にそれぞれ対応する。例として、画像は
1280×1024ピクセルの大きさを有する。スーパ
ーサンプル画像バッファ104は、先に述べたようにス
ーパーサンプリングを可能とするためにシングル・サン
プル画像バッファより大きい。1つの実施形態では、ス
ーパーサンプル画像バッファ104は、シングル・サン
プル画像バッファの4倍の大きさである(すなわち、そ
れぞれの次元において2倍)。したがって、画像が12
80×1024ピクセルの大きさを有している場合、ス
ーパーサンプル画像バッファは、2560×2048ピ
クセルの大きさを有する。スーパーサンプル深度バッフ
ァ106は、スーパーサンプル画像バッファ104に対
応し、スーパーサンプリングされた画像における各ピク
セルに対応する深さの値を含む。図5に示し前述したバ
ッファは、好ましくは先に述べた擬似線形フレームバッ
ファ・マッピングを使用して割り当てられる。
2およびスーパーサンプル画像バッファ104の例を図
6に示す。図6の例では、シングル・サンプル画像バッ
ファ102は、1280×1024ピクセルの大きさを
有し、スーパーサンプル画像バッファ104は2560
×2048ピクセルの大きさを有する。表示されるべき
画像のサイズに応じて画像バッファ102が様々な大き
さを有してよいことを理解されたい。さらに、スーパー
サンプル画像バッファ104は、様々な大きさを有する
が、典型的にはシングル・サンプル画像バッファ102
の各次元の2倍である。したがって、スーパーサンプル
画像バッファ104は、シングル・サンプル画像バッフ
ァ102の4倍である。別の例では、スーパーサンプル
画像バッファは、シングル・サンプル画像バッファの1
6倍である。
のシーン・アンチエイリアシングのための処理例を図7
に示す。ステップ200では、アンチエイリアシングが
コンピュータ・グラフィックス・システムにおいて有効
(enable)かどうかに関して判断がなされる。アンチエ
イリアシングの有効または無効(disable)は、ホストコ
ンピュータによって制御される。アンチエイリアシング
が有効でないとき、システムは、ステップ202におい
て通常のレンダリングを進める。通常のレンダリング
は、レンダリングされている画像とサイズにおいて等し
い画像バッファおよび深度バッファの割当てを含む。ラ
スタライザ16は、グラフィックス・システムの通常の
操作に従って画像を画像バッファにレンダリングする。
有効であると判断された場合、スーパーサンプル画像バ
ッファがステップ204においてフレームバッファ24
に割り当てられる。先に述べたように、スーパーサンプ
ル画像バッファは、4倍かまたはレンダリングされてい
る画像の大きさの別の倍数に選択される。さらに、スー
パーサンプル画像バッファに対応するスーパーサンプル
深度バッファがステップ204で割り当てられる。
(図1)は、スーパーサンプリングされる画像をステッ
プ204で割り当てられたスーパーサンプル画像バッフ
ァにレンダリングする。したがって、図6の例では、ラ
スタライザ16は、2560×2048ピクセルの大き
さを有するスーパーサンプリングされた画像をレンダリ
ングする。具体的には、ラスタライザ16は、テクスチ
ャマッピングが有効かどうかに応じてテクスチャされた
カラー値またはテクスチャされていないカラー値をスー
パーサンプル画像バッファにレンダリングする。スーパ
ーサンプル画像バッファ104は、スーパーサンプリン
グされた画像のレンダリングのために使用される。レン
ダリングのステップ206は、通常より大きな画像空間
が利用されることを除いて通常のレンダリングと同様で
ある。ラスタライザ16は、ステップ206におけるス
ーパーサンプル深度バッファ106に深度値もレンダリ
ングする。
ッファの入れ替えの準備が出来ているかどうかに関して
判断がなされる。先に述べたように、ダブルバッファの
入れ替えは、現在のレンダリングバッファへの画像のレ
ンダリングおよび現在の表示バッファからの画像の表示
が完了するときに実行される。システムがステップ20
8でダブルバッファの入れ替えの準備が出来ていると判
断されると、テクスチャマッピング・サブシステム18
は、スーパーサンプル画像バッファにおけるスーパーサ
ンプリングされた画像をダウンサンプリングして、ダウ
ンサンプリングされた(すなわち見られる)画像を提供
し、ステップ210で、対応するシングル・サンプル画
像バッファにダウンサンプリングされた画像を書き込
む。例えば、テクスチャマッピング・サブシステム18
は、スーパーサンプル画像バッファ104(図5)にお
けるスーパーサンプリングされた画像を前方シングル・
サンプル画像バッファ102へダウンサンプリングす
る。
説明する。図6の例におけるスーパーサンプル画像バッ
ファがシングル・サンプル画像バッファの4倍である場
合、スーパーサンプル画像バッファにおける4個のピク
セルは、シングル・サンプル画像バッファにおける1個
のピクセルに対応する。スーパーサンプル画像バッファ
における4個のピクセルのグループのそれぞれは、補間
によってシングル・サンプル画像バッファにおける1個
のピクセルにダウンサンプリングされる。したがって、
例えばスーパーサンプル画像バッファ104におけるピ
クセル250、252、254、256は、シングル・
サンプル画像バッファ102における1個のピクセル2
60にダウンサンプリングされる。補間は、スーパーサ
ンプル画像バッファにおいて対応する4個のピクセルの
加重平均かまたは加重されない平均でよい。補間処理
は、スーパーサンプル画像バッファにおける4個のピク
セルの各セットについて繰り返されて、シングル・サン
プル画像バッファにおけるダウンサンプリングされた画
像を提供する。ボックス・フィルタリング補間処理が典
型的に利用される。他のフィルタリング操作が本発明の
範囲内で利用されてもよい。
・サブシステム18は、テクスチャマップに含まれるテ
クセルを補間して画像ピクセルに対応するテクスチャ値
を求めることによって、テクスチャマッピング操作を実
行する。テクスチャマッピング・サブシステム18が利
用されて、スーパーサンプリング画像をテクスチャとし
て取り扱い、画像領域に対応するよう定められるポリゴ
ンについてテクスチャマッピングを実行することによっ
て、スーパーサンプリングされた画像のダウンサンプリ
ングを実行する。したがって、テクスチャマッピング・
サブシステム18は、スーパーサンプリングされた画像
をテクスチャマップとして取り扱い、スーパーサンプリ
ングされた画像におけるピクセルを補間してダウンサン
プリングされた画像を提供する。この様にテクスチャマ
ッピング・サブシステム18は、フルシーン・アンチエ
イリアシング処理におけるスーパーサンプリング画像の
ダウンサンプリングを実行するために利用される。
ングル・サンプル画像バッファは、ステップ212で入
れ替えられ、ダウンサンプリングされた画像が表示生成
器26によって表示される。上に述べたように、前方お
よび後方画像バッファは、ある画像バッファから別の画
像バッファに情報を書き込むことによって入れ替えられ
るか、または単にバッファに関連する制御情報における
属性ビットを変えることによって入れ替えられることが
できる。処理は、ステップ212に続いて、新しい画像
のレンダリングおよびダウンサンプリングを繰り返す。
作は、1個のピクセルに対する4個のピクセルのダウン
サンプリング操作を含む。異なるダウンサンプリング操
作が本発明の範囲内で利用されてよいことを理解された
い。例えば、ダウンサンプリング操作は、例えば8また
は16などのような任意の所望の数のピクセルを含む。
ダウンサンプリング操作は、単一の補間操作を含むか、
または2つまたはそれ以上の一連の補間操作を含んでも
よい。それぞれの場合においてダウンサンプリング操作
は、テクスチャマッピング・サブシステム18によって
実行される。
形、修正が本分野の当業者にとって容易であり、本発明
は、その様な範囲を含むことを意図されている。上記の
説明は、単なる例でしかなく、それに制限されることを
意図していない。
システム18およびフレームバッファ24を含むコンピ
ュータ・グラフィックス・システムにおいてシーン・ア
ンチエイリアシングを実行する方法であって、スーパー
サンプル画像バッファ104およびシングル・サンプル
画像バッファ102、112を定めるステップと、ラス
タライザ16を使用してスーパーサンプリングされた画
像をスーパーサンプル画像バッファ104にレンダリン
グするステップと、テクスチャマッピング・サブシステ
ム18を使用してスーパーサンプリングされた画像をシ
ングル・サンプル画像バッファ102、112にダウン
サンプリングするステップと、を含み、シングル・サン
プル画像バッファ102、112におけるダウンサンプ
リングされた画像がアンチエイリアスされているシーン
・アンチエイリアシングの実行方法。
およびシングル・サンプル画像バッファを定めるステッ
プは、前記スーパーサンプル画像バッファおよび前記シ
ングル・サンプル画像バッファをフレームバッファに割
り当てるステップを含む(1)に記載の方法。
・システムは、レンダリングのための第1のバッファお
よび表示のための第2のバッファを含むダブルバッファ
構成を利用し、前記第1および第2のバッファは、レン
ダリングおよび表示の完了に続いて入れ替えられ、前記
スーパーサンプリングされた画像をシングル・サンプル
画像バッファにダウンサンプリングするステップは、ダ
ブルバッファの入れ替えの時に実行される、(2)に記
載の方法。
レンダリングするステップは、該スーパーサンプリング
された画像をデータのブロックに分割するステップと、
該データのブロックを該スーパーサンプル画像バッファ
の連続的なブロックに記憶するステップと、を含む
(1)に記載の方法。
ピング・サブシステム18およびフレームバッファ24
を含むコンピュータ・グラフィック・システムであっ
て、スーパーサンプル画像バッファ104およびシング
ル・サンプル画像バッファ102、112を定める手段
と、ラスタライザ16を使用してスーパーサンプリング
された画像をスーパーサンプル画像バッファ104にレ
ンダリングする手段と、テクスチャマッピング・サブシ
ステム18を使用してスーパーサンプリングされた画像
をシングル・サンプル画像バッファ102、112にダ
ウンサンプリングする手段と、を含み、シングル・サン
プル画像バッファ102、112におけるダウンサンプ
リングされた画像がアンチエイリアスされているコンピ
ュータ・グラフィックス・システム。
およびシングル・サンプル画像バッファを定める手段
は、前記スーパーサンプル画像バッファおよび前記シン
グル・サンプル画像バッファをフレームバッファに割り
当てる手段を含む(5)に記載のコンピュータ・グラフ
ィックス・システム。
・システムは、レンダリングのための第1のバッファお
よび表示のための第2のバッファを含むダブルバッファ
構成を利用し、前記第1および第2のバッファがレンダ
リングおよび表示の完了に続いて入れ替えられる手段を
含み、前記スーパーサンプリング画像をシングル・サン
プル画像バッファにダウンサンプリングする手段が、ダ
ブルバッファの入れ替えの時に実行される手段を含む
(6)に記載の方法。
ステムにおけるシーン・アンチエイリアシングのための
装置であって、スーパーサンプリング画像を記憶するス
ーパーサンプル画像バッファ104およびダウンサンプ
リングされた画像を記憶するシングル・サンプル画像バ
ッファ102、112を含むフレームバッファ24と、
画像を定める情報に応答して、スーパーサンプル画像バ
ッファ104にスーパーサンプリングされた画像をレン
ダリングするラスタライザ16と、スーパーサンプリン
グされた画像をシングル・サンプル画像バッファ10
2、112にダウンサンプリングするテクスチャマッピ
ング・サブシステム18と、を含み、シングル・サンプ
ル画像バッファにおけるダウンサンプリング画像がアン
チエイリアシングされている画像を構成するシーン・ア
ンチエイリアシングのための装置。
ングのための第1のバッファおよび表示のための第2の
バッファを含むダブルバッファ構成を有し、前記第1お
よび第2のバッファは、レンダリングおよび表示の完了
に続いて入れ替えられ、前記装置は、ダブルバッファの
入れ替えの時に、スーパーサンプリングされた画像のシ
ングル・サンプル画像バッファへのダウンサンプリング
を実行する手段を含む(8)に記載の装置。
ッピング・サブシステム18およびフレームバッファ2
4を含むコンピュータ・グラフィック・システムにおい
てシーン・アンチエイリアシングを実行する方法であっ
て、スーパーサンプル画像バッファ104、前方シング
ル・サンプル画像バッファ102、および後方シングル
・サンプル画像バッファ112を前記フレームバッファ
24に定め、ラスタライザ16を使用してスーパーサン
プリングされた画像をスーパーサンプル画像バッファ1
04にレンダリングし、テクスチャマッピング・サブシ
ステム18を使用して、前方シングル・サンプル画像バ
ッファ102および後方シングル・サンプル画像バッフ
ァ112のうちの1つにスーパーサンプリングされた画
像をダウンサンプリングし、ダウンサンプリングされた
画像を表示のために利用することができるよう前方シン
グル・サンプル画像バッファと後方シングル・サンプル
画像バッファとを入れ替える方法。
つの実施形態のブロック図。
けるるポリゴンのエイリアシングの模式図。
実施形態のブロック図。
ピングされたデータのブロックの模式図。
サンプル画像バッファにダウンサンプリングする模式
図。
アシング処理のフローチャート。
Claims (1)
- 【請求項1】ラスタライザ、テクスチャマッピング・サ
ブシステムおよびフレームバッファを含むコンピュータ
・グラフィックス・システムにおいてシーン・アンチエ
イリアシングを実行する方法であって、 スーパーサンプル画像バッファおよびシングル・サンプ
ル画像バッファを定めるステップと、 スーパーサンプリングされた画像を前記スーパーサンプ
ル画像バッファにレンダリングするために前記ラスタラ
イザを使用するステップと、 前記スーパーサンプリングされた画像を前記シングル・
サンプル画像バッファにダウンサンプリングするために
前記テクスチャマッピング・サブシステムを使用するス
テップと、を含み、該シングル・サンプル画像バッファ
おけるダウンサンプリングされた画像がアンチエイリア
シングされているシーン・アンチエイリアシングの実行
方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/611503 | 2000-07-07 | ||
US09/611,503 US6661424B1 (en) | 2000-07-07 | 2000-07-07 | Anti-aliasing in a computer graphics system using a texture mapping subsystem to down-sample super-sampled images |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002042159A true JP2002042159A (ja) | 2002-02-08 |
JP2002042159A5 JP2002042159A5 (ja) | 2005-09-08 |
Family
ID=24449261
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001182695A Pending JP2002042159A (ja) | 2000-07-07 | 2001-06-18 | コンピュータ・グラフィック・システムにおけるアンチエイリアシング方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US6661424B1 (ja) |
JP (1) | JP2002042159A (ja) |
GB (1) | GB2365301B (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008515058A (ja) * | 2004-09-23 | 2008-05-08 | クゥアルコム・インコーポレイテッド | 組込式デバイスにおける柔軟なアンチエイリアス処理 |
JP2008522274A (ja) * | 2004-11-29 | 2008-06-26 | アーム・ノルウェー・アー・エス | コンピュータグラフィックスの処理 |
JP2011216114A (ja) * | 2004-03-31 | 2011-10-27 | Microsoft Corp | 高性能コンテンツ変更アーキテクチャおよび技法 |
JP2014153893A (ja) * | 2013-02-07 | 2014-08-25 | Sony Computer Entertainment Inc | 描画処理装置および描画処理方法 |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3838086B2 (ja) * | 2001-12-12 | 2006-10-25 | ソニー株式会社 | 画像処理装置およびその方法 |
US20030164842A1 (en) * | 2002-03-04 | 2003-09-04 | Oberoi Ranjit S. | Slice blend extension for accumulation buffering |
US6975322B2 (en) * | 2002-03-12 | 2005-12-13 | Sun Microsystems, Inc. | Dynamically adjusting a number of rendering passes in a graphics system |
US6999087B2 (en) * | 2002-03-12 | 2006-02-14 | Sun Microsystems, Inc. | Dynamically adjusting sample density in a graphics system |
GB0220138D0 (en) * | 2002-08-30 | 2002-10-09 | Kaydara Inc | Matte extraction using fragment processors |
US20040174379A1 (en) * | 2003-03-03 | 2004-09-09 | Collodi David J. | Method and system for real-time anti-aliasing |
US7015920B2 (en) * | 2003-04-30 | 2006-03-21 | International Business Machines Corporation | Method and system for providing useable images on a high resolution display when a 2D graphics window is utilized with a 3D graphics window |
US7486840B2 (en) * | 2004-05-28 | 2009-02-03 | Lockheed Martin Corporation | Map image object connectivity |
US7280897B2 (en) * | 2004-05-28 | 2007-10-09 | Lockheed Martin Corporation | Intervisibility determination |
US7492965B2 (en) * | 2004-05-28 | 2009-02-17 | Lockheed Martin Corporation | Multiple map image projecting and fusing |
KR101110624B1 (ko) * | 2004-12-15 | 2012-02-16 | 삼성전자주식회사 | 그래픽 처리 기능을 갖는 메모리 컨트롤러 |
WO2007024259A2 (en) * | 2005-02-17 | 2007-03-01 | Authentec, Inc. | Finger sensor apparatus using image resampling and associated methods |
US8081181B2 (en) * | 2007-06-20 | 2011-12-20 | Microsoft Corporation | Prefix sum pass to linearize A-buffer storage |
US20100013854A1 (en) * | 2008-07-18 | 2010-01-21 | Microsoft Corporation | Gpu bezier path rasterization |
DE102012014174A1 (de) * | 2012-07-16 | 2014-01-16 | Rational Aktiengesellschaft | Verfahren zur Anzeige von Parametern eines Garprozesses und Anzeigevorrichtung für ein Gargerät |
US20140104306A1 (en) * | 2012-10-15 | 2014-04-17 | Research In Motion Limited | Methods and systems for capturing high resolution content from applications |
US20160098820A1 (en) * | 2014-10-03 | 2016-04-07 | Raghu Kopalle | System for robust denoising of images |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5222205A (en) | 1990-03-16 | 1993-06-22 | Hewlett-Packard Company | Method for generating addresses to textured graphics primitives stored in rip maps |
US5548709A (en) * | 1994-03-07 | 1996-08-20 | Silicon Graphics, Inc. | Apparatus and method for integrating texture memory and interpolation logic in a computer system |
US5835096A (en) * | 1995-03-24 | 1998-11-10 | 3D Labs | Rendering system using 3D texture-processing hardware for accelerated 2D rendering |
US5977977A (en) * | 1995-08-04 | 1999-11-02 | Microsoft Corporation | Method and system for multi-pass rendering |
US6591020B1 (en) | 1998-12-23 | 2003-07-08 | Xerox Corporation | Antialiazed high-resolution frame buffer architecture |
US6417861B1 (en) * | 1999-02-17 | 2002-07-09 | Sun Microsystems, Inc. | Graphics system with programmable sample positions |
US6567098B1 (en) * | 2000-06-22 | 2003-05-20 | International Business Machines Corporation | Method and apparatus in a data processing system for full scene anti-aliasing |
-
2000
- 2000-07-07 US US09/611,503 patent/US6661424B1/en not_active Expired - Lifetime
-
2001
- 2001-06-18 JP JP2001182695A patent/JP2002042159A/ja active Pending
- 2001-06-19 GB GB0114931A patent/GB2365301B/en not_active Expired - Fee Related
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011216114A (ja) * | 2004-03-31 | 2011-10-27 | Microsoft Corp | 高性能コンテンツ変更アーキテクチャおよび技法 |
JP2008515058A (ja) * | 2004-09-23 | 2008-05-08 | クゥアルコム・インコーポレイテッド | 組込式デバイスにおける柔軟なアンチエイリアス処理 |
JP2008522274A (ja) * | 2004-11-29 | 2008-06-26 | アーム・ノルウェー・アー・エス | コンピュータグラフィックスの処理 |
JP2011227933A (ja) * | 2004-11-29 | 2011-11-10 | Arm Norway As | コンピュータグラフィックスの処理 |
US8199146B2 (en) | 2004-11-29 | 2012-06-12 | Arm Norway As | Processing of computer graphics |
JP2014153893A (ja) * | 2013-02-07 | 2014-08-25 | Sony Computer Entertainment Inc | 描画処理装置および描画処理方法 |
US9652886B2 (en) | 2013-02-07 | 2017-05-16 | Sony Corporation | Rendering processing device and rendering processing method using interpolation rendering result |
Also Published As
Publication number | Publication date |
---|---|
GB2365301B (en) | 2004-10-13 |
GB2365301A (en) | 2002-02-13 |
US6661424B1 (en) | 2003-12-09 |
GB0114931D0 (en) | 2001-08-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6661424B1 (en) | Anti-aliasing in a computer graphics system using a texture mapping subsystem to down-sample super-sampled images | |
EP1110182B1 (en) | Trilinear texture filtering with optimized memory access | |
US6906720B2 (en) | Multipurpose memory system for use in a graphics system | |
US5949428A (en) | Method and apparatus for resolving pixel data in a graphics rendering system | |
US5852443A (en) | Method and system for memory decomposition in a graphics rendering system | |
EP0850462B1 (en) | Method and system for rendering graphical objects to image chunks and combining image layers into a display image | |
US6947057B2 (en) | Rendering lines with sample weighting | |
US10354365B2 (en) | Hybrid anti-aliasing | |
US6421053B1 (en) | Block rendering method for a graphics subsystem | |
WO2005101320A1 (ja) | 画像生成装置および画像生成方法 | |
WO2000011602A9 (en) | Method and apparatus for generating texture | |
US20030169265A1 (en) | Memory interleaving technique for texture mapping in a graphics system | |
WO2000013088A1 (en) | Efficient method for storing texture maps in multi-bank memory | |
KR19980702804A (ko) | 영상 생성 및 조작을 위한 하드웨어 아키텍처 | |
US6724396B1 (en) | Graphics data storage in a linearly allocated multi-banked memory | |
JP2002537612A (ja) | サンプルをサンプル・バッファの中へレンダリングし、記憶されたサンプルに応答して、異なったレートでピクセルを生成するグラフィックス・システム | |
JP2002537615A (ja) | スーパサンプリング・サンプル・バッファを有し、アーチファクトを縮小するため選択的フィルタリング調節を使用して出力ピクセルを生成するグラフィックス・システム。 | |
KR20060116916A (ko) | 텍스쳐 캐쉬 및 이를 구비한 3차원 그래픽 시스템, 그리고그것의 제어 방법 | |
JP2002537613A (ja) | スーパサンプリング・サンプル・バッファを有し、表示効果を実現するため選択的フィルタ調節を使用して出力ピクセルを生成するグラフィックス・システム | |
Weyrich et al. | A hardware architecture for surface splatting | |
US20030160789A1 (en) | Multiple scan line sample filtering | |
EP0890925A2 (en) | Computer system including a three-dimensional graphics accelerator which includes improved texture mapping capabilities | |
EP1058912A1 (en) | Subsampled texture edge antialiasing | |
US7385604B1 (en) | Fragment scattering | |
US20030160794A1 (en) | Arbitration scheme for efficient parallel processing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050323 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050323 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080129 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20080428 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20080502 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20081007 |