JPH03212775A - アンチエイリアス多角形の描図方法及び装置 - Google Patents

アンチエイリアス多角形の描図方法及び装置

Info

Publication number
JPH03212775A
JPH03212775A JP2311223A JP31122390A JPH03212775A JP H03212775 A JPH03212775 A JP H03212775A JP 2311223 A JP2311223 A JP 2311223A JP 31122390 A JP31122390 A JP 31122390A JP H03212775 A JPH03212775 A JP H03212775A
Authority
JP
Japan
Prior art keywords
pixel
polygon
image array
graphics processor
program
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
JP2311223A
Other languages
English (en)
Inventor
Brian M Kelleher
ブライアン マイケル ケラハー
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.)
Digital Equipment Corp
Original Assignee
Digital Equipment Corp
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 Digital Equipment Corp filed Critical Digital Equipment Corp
Publication of JPH03212775A publication Critical patent/JPH03212775A/ja
Pending legal-status Critical Current

Links

Classifications

    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/00—Two-dimensional [2D] image generation
    • G06T11/40—Filling planar surfaces by adding surface attributes, e.g. adding colours or textures
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/00—Three-dimensional [3D] image rendering
    • G06T15/50—Lighting effects
    • G06T15/503—Blending, e.g. for anti-aliasing

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Image Generation (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、全体としてラスク型グラフィックディスプレ
イサブシステム上に描かれた多角形におけるエイリアシ
ングとして知られる階段波効果を低減させるための装置
と方法に関する。ラスク多角形の辺縁をなめらかにする
ことによって階段波効果を低減することはアンチエイリ
アシングとして知られている。殊に、本発明は、多角形
をピクセルあたりに何回もサンプリングするようなアン
チエイリアシング装置と方法に関する。
〔従来の技術〕
ラスフグラフインクディスプレイサブシステム上で多角
形を走査変換する作業は、2次元ラスク格子上の多角形
内部に位置するピクセルの座標を判断することにある。
多角形を構成する線分の内側のピクセルを十分に観察す
ると多角形を近似する階段状のパターンが結果される。
多角形に対するエイリアスを回避する既知の手法は、時
間を消費すると共に、計算集約的であって、ハードウェ
ア形式で実行する場合には広範で追加的なハードウェア
による支援が必要となろう。
かかるアルゴリズムは、ラスク型グラフィックディスプ
レイサブシステムが十分に高性能のサブシステムの場合
には、十分にそれらの所期の機能を果すであろう。然し
なから、低コストのワークステーションにおいては、価
格と競合するために、ラスフグラフイックディスプレイ
処理速度について種々の妥協が必要になる。かかるワー
クステーションにおいて命令の組が少ないコンピュータ
(RI S C”)中央処理装置(CP U)を使用す
ると、プロセッサ性能において必要とされる妥協の度合
いが最小限になるが、伝統的なアンチエイリアスアルゴ
リズムを使用すれば、これらのワークステージジンにお
けるグラフインク応答は緩慢になるであろう。それ故、
今日、伝統的な技法よりも高速で計算集約的でない多角
形のアンチエイリアス装置と方法が必要とされる。
〔発明の要約〕
本発明によるエイリアスを除去した多角形を描くための
装置は、ホストデータプロセッサを備える。同ホストプ
ロセッサには1本のバスによってメモリが接続される。
ディスプレイは多角形を表示するための複数のピクセル
を備える。グラフィックプロセッサとディスプレイ間に
はフレームバッファが接続される。上記グラフィックプ
ロセッサは、イメージ配列をサンプリングするためのプ
ログラムを内蔵している。上記イメージ配列は、複数の
ピクセルか、同ピクセルのうちの一つ内部の複数の位置
の何れかを備えるようにプログラムによって選択的に再
構成できる。
本発明によるエイリアスを除去した多角形を描く方法は
、イメージ配列をサンプリングするためのプログラムを
内蔵するグラフインクプロセンサを設けることを含む。
イメージ配列は、プログラムによって選択的に構成され
、複数のピクセルか、同ピクセルのうちの一つの内部の
複数の位置の何れかを備えるようになっている。上記イ
メージ配列は構成された通りにサンプリングされる。こ
れらのステップによってエイリアスが除去された多角形
がつくりだされる。
〔実施例〕
さて図面、殊に第1図について述べると、エイリアシン
グを有する三角形10が示されている。
上記三角形10では、その内部に上部左手隅14を有す
るピクセル12が明示されている。図の如く、明示され
たピクセル12は線分16.18.20により画成され
る三角形に近似的にしか対応していない。ラスク型グラ
フィックディスプレイサブシステム上で三角形10の如
き多角形を走査変換する作業は、2次元ラスク格子22
の三角形10内部に位置するピクセル12の座標を決定
することである。線分16−20内のとクセル12を十
分に明示すると、三角形に近似する階段波パターン24
が生ずることになろう。
第2図は三角形10をエイリアスされた形で描ぐための
装置30のブロック線図である。CPU32はバス36
により、浮動小数点プロセッサ(FPU)34に接続さ
れる。CPU32は32ビツトシステムバス38により
、グラフィックサダシステム45内のランダムアクセス
メモリ(RAM)40、キャッシュ42、およびインタ
ーフェース44に接続されている。インターフェース4
4はバス46によりグラフィックプロセッサ48に接続
されている。グラフィックプロセッサ48は12のビッ
トグラフィックバス50によってフレームバッファ52
に接続されている。フレームバッファ52は、バス56
によりビデオデジタル/アナログ変換器(DAC)54
へ接続されている。
DAC54は、ライン60によりビデオディスプレイ5
8に接続されている。
局部的な参照引き数は、グラフィックプロセッサ48が
第3図に示すようにビクセル72の矩形配列70中のフ
レームバッファ52を更新すべきことを指示する。以下
のアルゴリズムの記述は、例として4x4の配列を使用
しているが、実際はこれと異なっていても差支えない。
多数のグラフィックプロセッサ48を一緒に使用して、
フレームバッファメモリ52に対して高い帯域幅を実現
するようにすることができる。グラフィックプロセッサ
48の各々は、フレームバッファ52内の何れの4 x
 4 領域にもアクセスすることができる。
任意の位置に配置された時、上部左隅74は原点を表わ
し、配列内の各ビクセル72は、(x、y)偏差によっ
て表わされる。配列内のビクセル72の位置はサイトと
称される。各サイトはそれに対応するビクセル72に関
する情報を含む。
第3図に示す配列70の2次元的表現は、配列70内の
サイト72とフレームバッファ52内のビクセルの間に
直観的な1対lの写像が存在するためにアルゴリズムの
形を理解するためのガイドとして有効である。これは別
に、配列70は第4図中の76で示すように、線形状に
表現することもできよう。線形状の表現は、グラフィッ
クプロセッサ48のチップがそのレジスタを実際に線形
にレイアウトする際にアルゴリズムのハードウェア構成
を記述するためにより有効であることが判る。
グラフィックプロセッサ48における基礎的幾何形状の
基本は幾何学的半空間の評価である。第5A、5Bおよ
び50図に示すように、一つの面内の任意の線80は同
面を2つの半空間82と84に分割する。上記半空間を
評価することによって1本の線80の何れの側に点が位
置するかが判断される。1本の線の右側に対する点は全
て一方の半空間内にある一方、左側に対する点は全て他
方の半空間内にある。
グラフィックプロセッサ48は以下の3つの幾何学的基
本形状、即ち、三角形、凸形の四辺形、および線をサポ
ートする。これらの基本形状を選んだのは、それが幾何
学的に単純で、それ以上の複雑な形状は上記基本形状で
構成できるためである。凸形の多角形の如きより?j!
雑な形状はそれ以上の一般性を与えるが、グラフィック
サブシステムの複雑さがはなはだしく増加するという代
償を払わなければならない。任意の凸形多角形は、それ
らを記述するために必要とされるデータ量が無限である
ために、一つのグラフィックチップに対するアトミック
処理のサイズもまた無限になる。
グラフインクサブシステムによってはCPUに割込みを
かけて多角形を走査変換中に新たな辺縁を追加するもの
がある。この手法は複雑なだけでなく、マルチプロセッ
サ環境においては受は入れることはできない。プロセッ
サの使用を効率化するには、1つのアトミック処理のサ
イズは小さくなければならない。複雑な多角形はCPU
32によって容易かつ効率的に複数の三角形又は四辺形
でモザイク状に配列することができる。事実、陰影をな
めらかにするには、3つの点が一つの面を形成し、4つ
以上の点は制約を超えているために、1つの多角形を数
個の三角形に分解するとより優れた結果が得られるのが
普通である。
半空間幾何学の基本的数学は単純で、そのVLSIの製
作はすこぶる規則的かつ効率的に行うことが可能である
が、それ自体では半空間は2D又は3D(次元)図形に
対する有効な基本形状を何ら提供するものではない。然
しなから、第5D図に示すような三角形92の内部90
を考えてみよう。
上記三角形の内部は3つの半空間82の交差したちの以
外の何者でもない。三角形92は頂点94を共有する3
つの辺縁80でモデル化される。グラフィックプロセッ
サ48は、1つの辺縁80の何れの側にピクセル72が
位置することができるかを判断することができる。同プ
ロセッサ48は一つの辺縁80に関連して1つのピクセ
ル72を′+′又は′−′とじてマーキングすることが
できる。′+′はピクセル72が辺縁80に関して三角
形92の内側にある一方、 −′はそれが外側にあるこ
とを意味する。ピクセル72が三角形全体92に関して
内側にあることを判断するための、3つの辺縁80に関
して内側にあることの簡単なテストが成分半空間評価の
符号ビットの論理積として実行される。この半空間幾何
学法は4つの半空間の重なりにすぎない凸形四辺形につ
いても等しく十分にあてはまることは明らかである。
さて、基本的な構成ブロックが確立された。即ち、フレ
ームバッファメモリ52の参照単位としての配列70と
、何れのとクセルア2が幾何学的図形内に含まれるかを
判断するための半空間評価と、内側ピクセル72におけ
る対象の属性を判断するための平面評価とである。サポ
ートされた形の基本モデルは半空間幾何学法の形で確立
されたが、配列メモリ52を参照してのこれらの幾何学
的モデルの具現化はこれまでまだ行われていなかった。
幾何学的図形をタイル張りするための複数の配列基準の
発生は経路追跡と称され、使用される半空間表現によっ
て容易に実現される。グラフィックプロセッサ48のア
ルゴリズムは、それぞれの配列基準における半空間幾何
学形状をテストして、何れの方向に幾何学図形が延びる
かを判断することにより、次の配列基準がどこでなけれ
ばならないかを表示する。この配列の移動は幾何学的図
形全体がタイル張りされ終るまで続けられる。
第6図は三角形100をタイル張りするために基本配列
70がどのように使用されるかを示す。配列70は三角
形100の頂点102に位置決めさ゛れた後、線104
に沿って下左方向へ移動され、線106と交差するまで
何度も繰返し右方向へ走査される。これらの処理は線1
08に達し、配列70により走査されるまで繰返される
。
半空間評価器に基本的形状として与えられる幾何学的形
状の構成は幾何学的にも概念的にも魅力的である。半空
間表現はピクセル座標でサンプリングされる数学モデル
で、フレームバッファ52に対する表現を離散的なもの
にする。概念上は、ピクセル周波数でサンプリングされ
たこの数学的表現は共通のコンピュータデータベースの
作成にとって重置でニレガントな方法を提供する。以下
の説明は、この着想上の優雅さが実施の簡易化に資する
ことによって比較的低コストで高い平行性を提供するこ
とを示す。
半空間を求めるために使用される基礎数学は次の一般的
な線形等式に基づいている。
yzmx十す 但し、mは線の勾配であり、bはyの切片である。
上記等式は線の一方側のvAy>mx+bのXとyの値
について、他方側のy<mx十すのXとyの値について
あてはまる。(x 1.  y 1)と(x2゜x2)
を通過する特定の線については、線方程弐の定数は以下
の通りとなる。
、m=dy/dx b=3’ 1−dy/dx  x 1 但し、dy=y2−yl、およびdx=x2−xiであ
る。
これらの値は未知数mとbについて次の連立方程式を解
くことによって求めることができる。
yl=mxl+b y2=mx2+b かくして、(xLyl)と(x 2.  y 2)の2
点によってパラメータ化される半空間を求めるには、以
下の一次方程式を解く必要がある。
V=dV/dx X+yl−dy/dx XI    
   (1)先の議論の数学は実数体系で提示したもの
である。然しなから、ラスタフレームバッファをアドレ
ッシングするには、Xとyの実数値を離散化する必要が
ある。この離散化は第7A図に示すようにサンプリング
として知られている。簡単なラスフグラフインクの目標
は離散的なピクセル72アドレスで半空間式をサンプリ
ングしてピクセル72あたり1つのサンプリング点を表
わすことである。このようにすると、グラフィンクプロ
セッサ48アレイ70内の各ピクセル72はそれが幾何
学図形の内側にあるか、それとも外側にあるかを判断す
ることができる。
これとは別に、一定のアンチエイリアシングアルゴリズ
ムは、第7B図に示すようにスーパーサンプリングする
ことによって幾何学図形内のピクセル72の割合ヲ判断
する。1つのビクセル72から多数のサンプル120を
取り平均化すると、もしそのサンプル数が十分に大きな
ものである場合にはすこぶる良好なアンチエイリアリン
グ効果を得ることができる。サンプリング周波数は前述
の数学から独立しているために、相異なるアルゴリズム
で同一の線方程式を異なる周波数でサンプリングするこ
とができる。
端点をビクセル中心122にあてるとエイリアスなし画
像としては不十分な結果が生みだされる。
また、エイリアスを有する画像はサブピクセルの位置決
めにより改善されるものがあろう。但し、その改良効果
は映像の品質が低いために、それ程劇的なものではない
。端点を現在のフレームバッファのメモリコストとビデ
オ帯域幅とが可能にするよりも高度な解像度で位置決め
できるようにすることは非常に重要である。それ故、グ
ラフィックプロセッサ48は、多角形の頂点と線の端点
については固定小数点表記法を使用している。第8図に
示すように、各とクセルア2は、(o、o)が上部左隅
124にあるような8x8格子に分解される。グラフィ
ックプロセッサ48に対して与えられる座標はピクセル
72座標に対して付加されるサブピクセル120の位置
として見ることができる。座標(x、y)はサブピクセ
ル座標値(xHod 8、ymod8)を有するビクセ
ル(Xdiv 8.  ydiv 8)に配置される。
データはサブピクセル120のフォーマットか基本ビク
セル72の座標フォーマットの何れかの形態でグラフィ
ックプロセッサ48に与えることができる。もしビクセ
ル72の座標フォーマットが使用されるばあいには、チ
ップに入るや否や、グラフィックプロセッサ48は内部
で即座に3ビツトだけ左へデータをシフトさせることに
なろう。
このための数学式は非常に簡単である。次の等式(1)
に戻ろう。
V=Lh/dx X+yl−dy/dx Xiこの等式
は、ビクセル座標系に対して何ら厳格な束縛は有しない
ことに注意されたい。外面的には、等式が表出される座
標系は意味を有さない。即ち、上記数学式は依然として
有効である。かくして、dx、dy、xi、およびyl
は8倍だけスケールアップされることによってサブピク
セル120の座標値が得られる。先の場合には、我々は
各ビクセル72が1単位に相当する座標系内でサンプリ
ングしていたために、(0,1,2,3・・・・・・)
というXとyの値にのみしか関心がなかった。今度は、
各ビクセル7.2においてサンプリングするために、我
々は(0,8,16,24・・・・・・)という値でサ
ンプリングすることになろう。我々の新たな座標系は8
倍大きくなったために、ピクセル72は8単位離れ、こ
の間隔はピクセルあたり1サンプルを与えることになろ
う。アドレスのサブピクセル部分が(0,0)である場
合には、サンプリングは1ピクセルの上部左隅124で
行われることに注意されたい。
半空間を求める上記技法が与えられた場合、次のステッ
プはこの数学式をグラフィックプロセッサ48を介して
フレームバッファに適用することである。第9図に示す
ように、グラフィックプロセッサ48は4 x 4 領
域130を平行して更新できることを想起されたい。か
くして、スクリーン上の所与の4x゛4SM域130の
何れについても、16の座標値の各々においてy=dy
/dx X+yl−dy/dxの線形等式を平行して求
めることによって、1回の評価回数で16のサイト72
の各々について内側にあるかどうかが判断されることに
なろう。4x4よりも大きな領域について半空間を求め
るためには、配列130をその領域にわたって引きずっ
て領域を完全にタイル張りする必要がある。もしその評
価時間がVRAMアクセスタイムよりも小さいか、それ
に等しくすることができれば、更新はアルゴリズムの速
度ではなくメモリアクセスによって制約される。
1 ラスク装置は本質上離散値でサンプリングするために、
1つの半空間はフレームバッファ52内の各ピクセル7
2における線形方程式を求めることによって求めること
ができる。実際には、所望結果に近似したピクセルのみ
が求められる。概念上は簡単であるが、半空間の評価を
VLS Iによって実行することが安価かつ効率的に実
行できるということは容易には明らかでない。以下の記
述は、線形方程式を離散値で平行して求める場合の非常
に簡単かつ効率的な手法を述べたものである論理上の出
発点は以下の線形方程式である。
y=mx+b (x 2.  y 2)と(x 2.  y 2)間の
線分について、その定数は、 n = d y / d x b=yl−dy/dx  XI、となる但し、tiy=
y2−yl、a x = x 2− x lである。
従って、y =dy/dx X+yl−dy/dx X
iy −dy/dx X −(yl−dy/dx XI
) = 0除算は数値上高価で精度の損失をもたらすか
ら、両辺をdxにより乗する。即ち、dxy−dyx−
dxyl+dyxl=0上記等式の左辺は線上の(x、
y)については0であり、線の一方側は正で、他方側は
負である。dx4配列内の各サイトにおける等式の符号
を求めるだけで、グラフィックプロセッサ48は、各ピ
クセル72における辺の内外性を判断することができる
。然しながら、VLSI製造上求め6れる単純さは、d
xyとdyxの計算がまだ余りも難しく、それぞれのサ
イトにおいて2個の乗算と1個の加算を伴うことになる
ために、従来よりまだ達成されていなかった。これはダ
イの寸法と実行時間の双方において禁止的に高くする。
簡単な置換を数回実行することにより、上記乗算はピク
セルあたりの段階から半空間あたりの段階へ移行させる
ことによってピクセル評価段階には符号を比較する一回
の加算を残すだけとすることが可能である。
さて、(originx、 originy )を領域
130の原点を表わすものとしよう。同様にして、(o
ffsetx。
offsety)をその原点からの偏差であるとするこ
とによってx =originx +offsetx、
およびy=originy+offsetyとなるよう
にする。
Xとyを置換すると、 dx (originy + offsety) −d
y (originx + offsetx)−dxy
l +dyxl = O dxoriginy + dxof fsety −d
yoriginx −dyof fsetxdyyl 
+ dyxl = 0 上記等式を再編成して最終的な等式を得ると、dxof
fsety−dyoffsetx=dxoriginy
+dyoriginx+ dxyl −dyxl dxoffsety−dyoffsetx=     
   (2)−dxoriginy+dyorigin
x+       (3)dxyl −dyxl   
         (4)妥当性の持続時間と共に異な
る等式の評価が発生する時に注意されたい。
等式によっては半空間全体について一度で計算されるも
のもあれば、配列130の1段階毎に1度に計算される
ものもある。(即ち、配列130が移動した時、同等式
は求めなおす必要がある。)何れの等式もサイトあたり
1回では求められない。
かくして高次の平行性がすこぶる低コストで実現するこ
とができる。dx、dy、xi、ytの値は一定の幾何
学的半空間の定義については一定であることは明らかで
、(4)が半空間あたり1度求められ、配列130内の
位置や配列130の移動によって影響を受けないことを
示す。
offsetxとoffsetyは正の整数(018,
16,24)であってチップの原点からのXとyの偏差
を表わし、これら値はチップ内に組込まれる。上記値が
(0,1,2,3)ではなくて(0,8,16,24)
であるのは、格子がサブピクセル位置決めの形をとり、
サンプリングピクセルあたり1回行われるためである。
か(して、(2)もまた線全体について一回計算される
。更に、その求め方は、その値が規則的な間隔をおいて
いるために、dxとdyを逐次的に加算するように単純
化することができる。等式(2)は配列内の位置に依存
する値のみを含む。
配列130の位置によって影響を受ける唯一の表現は(
3)であり、dxoriginy−dyoriginx
である。このため、配列130内のサイト72あたり2
個の乗算と1個の加算に対して、配列の一段階あたり2
個の乗算と1個の加算のみが残されることになる。
本文節は先の文節からのアルゴリズムを実行するための
簡単なVLS 1回路を記述する。次の線分方程式 %式% (2) (3) (4) は、配列130内の各サイト72について異なる唯一つ
の開環式(2)のみを有する。この項はoffsetx
とoffsetyについて許される値の16の置換全体
について計算されなければならないから、その計算は一
見最もきつい計算であるように思われる。幸いなことに
、離散的格子130の規則性によって非常に効率的に実
施することが可能である。テーブル■と■は(2)の開
環式、dxoffsetyとdyoffsetxに対し
て必要とされる値の規則性を示す。
テーブル■ dx offsety dx 8dx+8dx 8dx+3dx+8dx テーブル■ dy offsetx ■ Bdy 8dy + 86y 8dy + Bdy +8dy これらのテーブルの生成は簡単である。アレイ70内の
各値(第10図)は単にdx又はdyの8倍にすぎず、
3だけ右シフトとして実行され、アレイ内の先の値に加
算される。ひとたび、これらの値が得られると、(2)
は16個のサイト72の各々において、−回の減算・d
x offsety−dy offsetxによって計
算される。上記サイトはすこぶる効率的な収縮配列構造
により連続的に満たされる。この減算結果は、第10図
に示すように、16個のサイト140の各々に記憶され
なければならない。
線形等式におけるその他の項は、配列内の偏差から独立
している。(3)+ (4)の和は半空間定数と称され
る。半空間等式からの(2)が図の如くサイト140の
各々に記憶されると仮定した時、サイト値と半空間定数
の和の符号は線80に対するピクセル72の偏りを示す
ことになろう。
(第5A−5D図)半空間定数はサイト偏差座標とは独
立であるから、同じ値がサイトの各々に加算される。か
くして、VLS I構造150(第11図)はすこぶる
単純である。−本のnビットバス152が各サイト14
0における値を横切って走り、サイト140に記憶され
る値に加算される。符号ビットが唯一関心のあるビット
であるから、加算器の代わりに振幅コンパレータ154
を使用するだけで十分である。かくして、各サイト14
0は振幅コンパレータ154とレジスタ156を備える
ことによってサイト140の値を保持する。コンパレー
タ154はどの半空間内に各ピクセル72が存在するか
を判断する。第11図は、配列内の各サイト140につ
いてVLS Iセルのブロック線図を示す。上記レジス
タは、半空間が初期化された時にバス152からロード
される。
配列70が移動する毎に、レジスタ156の内容はバス
152上の半空間定数と比較される。160における回
路の出力は比較結果である。
第11図は、VLS I構造を構成し、配列70内の1
6個のサイト140の各々で半空間の平行評価を実行す
るサイトセル160の集合170を示す。この構造は半
空間評価器又は半空間タワーと称される。バス152の
配線の列は一つの値(3)+ (4)を表わし、サイト
140に記憶される値の各々に加算される。各サイト1
40は、第11図に示すようにコンパレータとレジスタ
を含む。各サイト140から到来する線は、どの半空間
にサイトのピクセル72が位置するかを示すプール値で
ある。
半空間評価器に対して回路140が与えられているとす
ると、第12図に示すような四辺形評価器は自明である
。同じ回路は、四辺形の各辺縁について1回ずつ、計4
回使用される。4つの半空間評価器における相当するサ
イトのプール結果は、論理積がとられ、各ピクセル72
の内外性が判断される。もし1ピクセル72が4つの辺
の全てについて四辺形内にあれば、それは四辺形内部に
あることになる。さもなければ、外側にあることになる
。同様にして、線評価器は、4つの半空間評価器を使用
して先に提示された線モデルを実現する。3角形モデル
には評価器のうち3つしか必要でないため、第4番目の
ものを無効とする。第12図は、個々の半空間タワー1
70の相互作用を示す。タワー170を横切って走るプ
ールワイヤ160は、ワイヤード論理積の演算がなされ
て最終結果がつくりだされる。
各サイトのプールワイヤ160とフレームバフフッ52
内のピクセルの間に一対一の対応関係を実現するために
、ワイヤ160は直接、グラフィックプロセッサ48上
のパッドへ向かい、グラフィックプロセッサ48は今度
は個々のメモリチップに対してワイヤイネーブルとなる
。16のピクセiしは16個の異なるメモリチップ内に
あるため、ワイヤはピクセルを個別的に制御することに
なる。
′1′はメモリチップをライトイネーブルとする一方、
′O′はそれをイープル不能とする。
コンピュータグラフインク分野が成長するにつれて、視
覚上の迫真性に対する要求が強まってい名。レイトレー
シング、テクスチュアマッピング、アンチエイリアシン
グ、トランスペアレンジ−およびその他の多くの技法が
効果的に使用されてリアルな映像がつくりだされている
。これらの技法は圧倒的にソフトウェア志向的であるか
、又はすこぶる高価な専用ハードウェアを使用してきた
。
グラフィックプロセッサ48における幾何学的単純さと
豊かなフレームバンファ更新技術は、先端的な描画技法
のうちのい(つかをハードウェア内へ移行させるに十分
な機会を提供する。
連続的な幾何学的表現から離散的なピクセル表現へ幾何
学的形状を変換することに伴うサンプリングの場合、辺
縁部に刻み目がついたり詳部が失われたりするといった
欠陥が生ずる。上記問題点はエイリアシングと称され、
幾何学図形のサンプリング不足によって引き起こされる
ものである。
標準的なラスフグラフイックでは、線と多角形は離散的
な格子位置やピクセルでしかサンプリングされない。エ
イリアシングは、特に、サンプリング周波数が低い低解
像装置上に出現する。解像度が増すにつれて、エイリア
シングを発見する人間の目の能力は低下する。ディスプ
レイの解像度に係わりなく、離散的な格子位置における
サンプリングがエイリアシングを除去することは決して
ないであろう。然しなから、そのことによって我々のエ
イリアシングを検出する能力は低下するであろう。この
段落はグラフィックプロセッサ48により使用されるア
ンチエイリアシング手法を説明する。以下の解説は三角
形のみを取扱うものであるが、同手法はサポートされた
幾何学的基本形状の全てについても効果がある。
グラフィックプロセッサ48は、エイリアシング効果を
駆逐するためにスーパーサンプリングとして知られる技
法を使用する。スーパーサンプリングとはディスプレイ
ハードウェアがサポートするよりも高解像度でサンプリ
ングしてピクセル解像度にまで平均化することを意味す
る。フレームバッファ52のメモリは貴重な商品である
。から、シーン全体をスーパーサンプリングした後に平
均化することは誤りであろう。ディスプレイ解像度の1
6倍でサンプリングするにはフレームバッファメモリ5
2の16倍が必要となるであろう。より費用効果的な方
法は、lピクセル72中に16個のサンプルをとり(第
13図)、一方、多角形をラスター化して、16サンプ
ルを平均化した後、フレームバッファに書込むことであ
る。正規(エイリアス化)モードでは、グラフィックプ
ロセッサ48はチップ内の16のサイトを使用して16
個のビクセル72をサンプリングする。アンチエイリア
スモードで三角形や線を描く場合には、グラフィックプ
ロセッサ48は16サイトを使用して、1個のピクセル
72内の16個の位置120でサンプリングする。メモ
リ帯域幅全部は実現できないのでその性能はアンチエイ
リアシングには十分でないことに注意されたい。
これは既に提示したアルゴリズムとすこぶる容易に適合
する。アンチエイリアシング用アルゴリズムは、我々が
以前に提示した同じ辺等式を使用する。即ち、 dx offsety−dy offsetx= −d
x originy+dy orignx+dx yl
−dy xidx offsety−dy offse
tx −−dx originy+dy origin
x+dxyl−dyxl 座標はビクセル解像度から8だけスケールアップされる
ため、この等式を(012,4,6)のoffsetx
とoffsetyの値で計算すると、一つのビクセル7
2内に16の等間隔のサンプルが得られることになろう
。上記ビクセル72におけるカラー値は、多角形内部の
サンプル点におけるカラー値の和を採用したサンプル総
数(16)によって除したものである。サンプル総数は
2の累乗であるから、除算は演算シフトに帰する。かく
して、アンチエイリアスビクセル値の計算公式は以下の
通りになる。
6 上記のアンチエイリアス処理は三角形が1個の場合には
効果があるが、1辺を共有する2つの3角形の場合につ
いて考えてみよう。最初の三角形はアンチエイリアス処
理され、フレームバッファ52内へ配置され、その後、
第2の三角形がアンチエイリアス処理されてフレームバ
・7フア52内へ配置される。両方の三角形内にあった
辺に沿うビクセルは第2の三角形の値のみを有すること
になろう。然しなから、第1の三角形からのカラー値は
残存なし、第2の三角形からのカラー値と混合されなけ
ればならない。しかし、第2の三角形を描く場合、その
カラー混合を適当に処理するにはまだ十分な情報が存在
しない。第14図は、2個の三角形180と182が隣
接し、ビクセル72が′+′とマーキングした共通の辺
184に沿って存在する様子を示す。
遮蔽されるビクセルの割合を表示する別のビクセル情報
を維持する必要がある。これは一般にα又は遮蔽チャネ
ルと呼ばれてきた。グラフィックプロセッサ48は8ビ
ツトのαチャネルを維持することになろう。1ピクセル
におけるαチャネル中の0はビクセルが空であることを
示す。αチャネル中の255はビクセルが完全に遮蔽さ
れたことを示す。多角形の境界上のビクセルはOと25
5の間の何れかの値をとり、それらが一部遮蔽されたこ
とを示すのが普通であろう。1つの三角形における1ピ
クセルのα値は、採用されたサブピクセルサンプルの総
数により除せられた三角形内部のサブピクセルサンプル
数によって判断される。これは0と1の範囲内の数であ
って、その後O〜255の範囲にスケーリングされる。
αの実際の計算値はちょうど三角形内部のサンプル数に
16を乗じたもので、その値は255でクランピングさ
れる。上記値をクランプしなければならないのは、もし
16個のサンプルが全て三角形内部にあると、工6を乗
じても固定小数点数系で1が2重に表示されるために2
56が得られることになるためである。
アンチエイリアス三角形は前後にソートしてその順序に
描かれる必要がある。その基本的典型例はブロックが一
杯になるまで1ピクセルを増加することであり、他の三
角形は全てそのビクセルに隠れてフレームバッファ52
には加えられないということを意味する。かくして、X
ソートと共に、αチャネルは隠れた表面を解像する。フ
レームバッファ52を増加する場合、次の公式が使用さ
れる。
t haw= l tb 十MIN(1−αtb+  
αjri  )ltr=α、1.1−αrb+MIN(
1−αfb+  αt1、)但し、 αfb=フレームバンファ内の現在のα値1tb=フレ
ームバツフア内の現在の強度値αtri=(三角形内部
のサブビクセルサンプル数にもとづく)新たな三角形か
らの α値 i、□=新たな三角形からの強度値 αnew =フレームバッファ内へ入力されるα値i□
、=フレームバッファ内へ入力される強度イd蔓 上記公式は、0〜lの範囲内の正規化されたα値を使用
する。
この方法はルーカスフィルムで使用されるAバッファア
ンチエイリアス隠面アルゴリズム程確実ではないが、大
きな規模用途で十分効果があり、ハードウェア内で実施
することがずっと容易である。グラフィックプロセッサ
48のアルゴリズムは簡単で、メモリ要求条件はずっと
少なく、ルーカスフィルムAバッファにより必要とされ
るメモリは、フレームバッファの大きさと共にシーンの
複雑さにより制約を受ける。グラフィックプロセッサ4
8のメモリ要求条件は、フレームバッファ52のサイズ
によってのみ制約される。Aバッファに対するその制約
は、1ピクセルのどの部分が以前遮蔽されたかをAバッ
ファが認識できず、Zでオーバーラツプする多角形どう
しの間の隠面問題を解決できないことである。これらは
、アンチエイリアス多角形から得ることのできる多数の
用途にとっては程良く小さな制約であると考えられる。
【図面の簡単な説明】
第1図は本発明の理解に有効なエイリアス多角形図、 第2図は本発明によりアンチエイリアスな多角形を描く
ためのシステムの概略ブロック線図、第3図は第2図の
システムに使用されるような2次元ピクセルアレイ図、 第4図は、第3図の2次元アレイがどのように線形アレ
イに変換されるかを示す線図、第5A〜5D図はどのよ
うにして多角形が第2図のシステム内に表現されるかを
示す図、第6図は本発明の方法の一部を示す線図、第7
A図と第7B図は、本発明の方法のもう一つの部分を示
す2次元ピクセルアレイ図、第8〜9図は、更に、本発
明の方法の追加的部分を示す2次元ピクセルアレイ図、 第10図は、第4図のものと同様な線図で、本発明の方
法を理解するために有効な一定の数学的表現を備えたも
の、 第11図は第2図のシステムの一部の詳細ブロック線図
、 第12図は第2図のシステムのそれ以上の部分を示すも
う一つの詳細ブロック線図、 第13図は本発明の方法を理解するに有効な2次元ピク
セルサブアレイ図、 第14図は本発明の方法の一部の動作を示す2次元ピク
セルアレイ図。 10・・・・・・三角形、14・・・・・・上部左手隅
、12・・・・・・ビクセル、16.18.20・・・
・・・線分、22・・・・・・2次元ラスク格子、24
・・・・・・階段波パターン、36・・・・・・バス、
34・・・・・・浮動小数点プロセッサ、32・・・・
・・CPU、4B・旧・・グラフィックプロセッサ、5
0・・・・・・120ビツトグラフイツクバス、52・
・・・・・フレームバッファ、54・・・・・・ビデオ
デジタルアナログ変換器。 手 続 補 正 書(方式) %式% 1、事件の表示 平成2年特許願第311223号 3、補正をする者 事件との関係 出 願人 4、代 理 人 5、補正命令の日付 平成3年2月12日

Claims (1)

  1. 【特許請求の範囲】 1、ホストデータプロセッサと、同プロセッサに対して
    1本のバスで接続されるメモリと、同バスに接続される
    グラフィックプロセッサと、複数のピクセルを備え多角
    形を表示するディスプレイと、上記グラフィックプロセ
    ッサとディスプレイ間に接続されるフレームバッファと
    、から成り、上記グラフィックプロセッサが一つのイメ
    ージ配列をサンプリングするプログラムを内蔵し、上記
    イメージアレイが上記プログラムにより選択的に再構成
    でき、複数のピクセル又は同ピクセルの一つ内に複数の
    ロケーションの何れかを備えるアンチエイリアス多角形
    の描図方法。 2、イメージ配列をサンプリングするためのプログラム
    を内蔵するグラフィックプロセッサを有するアンチエイ
    リアス多角形の描図装置において、上記イメージアレイ
    が上記プログラムによりサンプリングすべく選択的に再
    構成可能であって、複数のピクセル又は同ピクセルの一
    つ内に複数のロケーションの何れかを備える前記装置。 3、イメージ配列をサンプリングするためのプログラム
    を内蔵するグラフィックプロセッサを設け、上記イメー
    ジ配列を上記プログラムにより選択的に構成して複数の
    ピクセル又は同ピクセルの一つ内に複数のロケーション
    を構成し、上記の如く構成されたイメージ配列をサンプ
    リングして多角形をアンチエイリアス処理するアンチエ
    イリアス多角形の描図方法。
JP2311223A 1989-11-17 1990-11-16 アンチエイリアス多角形の描図方法及び装置 Pending JPH03212775A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US43835689A 1989-11-17 1989-11-17
US438356 1989-11-17

Publications (1)

Publication Number Publication Date
JPH03212775A true JPH03212775A (ja) 1991-09-18

Family

ID=23740329

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2311223A Pending JPH03212775A (ja) 1989-11-17 1990-11-16 アンチエイリアス多角形の描図方法及び装置

Country Status (5)

Country Link
US (1) US5287438A (ja)
EP (1) EP0430501B1 (ja)
JP (1) JPH03212775A (ja)
CA (1) CA2030022A1 (ja)
DE (1) DE69032932T2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05274443A (ja) * 1991-09-25 1993-10-22 Internatl Business Mach Corp <Ibm> コンピュータ・ディスプレイ・システム及び方法
JP2004510270A (ja) * 2000-09-28 2004-04-02 インテル・コーポレーション フルシーン・アンチエイリアシング・スーパーサンプリング実施のための方法および装置
JP2010140101A (ja) * 2008-12-09 2010-06-24 Fujitsu Ltd 描画装置

Families Citing this family (90)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69122557T2 (de) * 1990-06-29 1997-04-24 Philips Electronics Nv Bilderzeugung
JP3462566B2 (ja) 1994-04-08 2003-11-05 株式会社ソニー・コンピュータエンタテインメント 画像生成装置
JPH07282270A (ja) * 1994-04-08 1995-10-27 Sony Corp 画像生成方法および装置
EP0693737A3 (en) * 1994-07-21 1997-01-08 Ibm Method and apparatus for managing tasks in a multiprocessor system
JP2637920B2 (ja) * 1994-08-11 1997-08-06 インターナショナル・ビジネス・マシーンズ・コーポレイション コンピュータ・グラフィック・システム及びフレーム・バッファ使用方法
US6201528B1 (en) 1994-11-16 2001-03-13 International Business Machines Corporation Anti-aliased inking for pen computers
US5649173A (en) * 1995-03-06 1997-07-15 Seiko Epson Corporation Hardware architecture for image generation and manipulation
US5870097A (en) 1995-08-04 1999-02-09 Microsoft Corporation Method and system for improving shadowing in a graphics rendering system
US5852443A (en) * 1995-08-04 1998-12-22 Microsoft Corporation Method and system for memory decomposition in a graphics rendering system
US5977977A (en) * 1995-08-04 1999-11-02 Microsoft Corporation Method and system for multi-pass rendering
US5864342A (en) * 1995-08-04 1999-01-26 Microsoft Corporation Method and system for rendering graphical objects to image chunks
US5886701A (en) * 1995-08-04 1999-03-23 Microsoft Corporation Graphics rendering device and method for operating same
US5808617A (en) * 1995-08-04 1998-09-15 Microsoft Corporation Method and system for depth complexity reduction in a graphics rendering system
US5990904A (en) * 1995-08-04 1999-11-23 Microsoft Corporation Method and system for merging pixel fragments in a graphics rendering system
US5949428A (en) * 1995-08-04 1999-09-07 Microsoft Corporation Method and apparatus for resolving pixel data in a graphics rendering system
JP2803630B2 (ja) * 1996-04-22 1998-09-24 日本電気株式会社 図形処理方法および装置
WO1998055965A1 (en) * 1997-06-04 1998-12-10 Oak Technology, Inc. Apparatus and method for optimizing memory usage while processing graphics images
US6057855A (en) * 1997-07-02 2000-05-02 Hewlett-Packard Company Method and apparatus for providing polygon pixel sub-sample information using incremental means
US7142224B2 (en) * 1997-07-10 2006-11-28 Yamaha Corporation Polygon drawing apparatus and method, and storage medium for implementing the same method
US6097397A (en) * 1997-11-20 2000-08-01 Real 3D, Inc. Anisotropic texture mapping using silhouette/footprint analysis in a computer image generation system
US6292192B1 (en) * 1998-01-09 2001-09-18 Silicon Graphics, Inc. System and method for the direct rendering of curve bounded objects
US6496186B1 (en) * 1998-02-17 2002-12-17 Sun Microsystems, Inc. Graphics system having a super-sampled sample buffer with generation of output pixels using selective adjustment of filtering for reduced artifacts
EP1055201B1 (en) * 1998-02-17 2003-07-09 Sun Microsystems, Inc. Graphics system with variable resolution super-sampling
US6496187B1 (en) * 1998-02-17 2002-12-17 Sun Microsystems, Inc. Graphics system configured to perform parallel sample to pixel calculation
US6483504B1 (en) * 1998-02-17 2002-11-19 Sun Microsystems, Inc. Graphics system having a super sampled-sample buffer with efficient storage of sample position information
US6459428B1 (en) * 1998-02-17 2002-10-01 Sun Microsystems, Inc. Programmable sample filtering for image rendering
US6489956B1 (en) * 1998-02-17 2002-12-03 Sun Microsystems, Inc. Graphics system having a super-sampled sample buffer with generation of output pixels using selective adjustment of filtering for implementation of display effects
US6317525B1 (en) * 1998-02-20 2001-11-13 Ati Technologies, Inc. Method and apparatus for full scene anti-aliasing
JP3639108B2 (ja) * 1998-03-31 2005-04-20 株式会社ソニー・コンピュータエンタテインメント 描画装置および描画方法、並びに提供媒体
US6606093B1 (en) 1998-05-19 2003-08-12 Microsoft Corporation Method and apparatus for antialiasing by gamma corrected area calculation
US6501483B1 (en) * 1998-05-29 2002-12-31 Ati Technologies, Inc. Method and apparatus for antialiasing using a non-uniform pixel sampling pattern
WO1999064990A2 (en) 1998-06-12 1999-12-16 Intergraph Corporation System for reducing aliasing on a display device
US6577316B2 (en) 1998-07-17 2003-06-10 3Dlabs, Inc., Ltd Wide instruction word graphics processor
WO2000004482A2 (en) 1998-07-17 2000-01-27 Intergraph Corporation Multi-processor graphics accelerator
US6459453B1 (en) 1998-07-17 2002-10-01 3Dlabs Inc. Ltd. System for displaying a television signal on a computer monitor
WO2000004494A1 (en) 1998-07-17 2000-01-27 Intergraph Corporation Graphics processing system with multiple strip breakers
US6181355B1 (en) 1998-07-17 2001-01-30 3Dlabs Inc. Ltd. Graphics processing with transcendental function generator
WO2000004496A1 (en) 1998-07-17 2000-01-27 Intergraph Corporation Graphics processor with texture memory allocation system
US6480913B1 (en) 1998-07-17 2002-11-12 3Dlabs Inc. Led. Data sequencer with MUX select input for converting input data stream and to specific output data stream using two exclusive-or logic gates and counter
US6188410B1 (en) 1998-07-17 2001-02-13 3Dlabs Inc. Ltd. System for processing vertices from a graphics request stream
WO2000004527A1 (en) * 1998-07-17 2000-01-27 Intergraph Corporation Apparatus and method of directing graphical data to a display device
US6417861B1 (en) * 1999-02-17 2002-07-09 Sun Microsystems, Inc. Graphics system with programmable sample positions
US6674440B1 (en) 1999-04-05 2004-01-06 3Dlabs, Inc., Inc. Ltd. Graphics processor for stereoscopically displaying a graphical image
US6781585B2 (en) 2000-01-11 2004-08-24 Sun Microsystems, Inc. Graphics system having a super-sampled sample buffer and having single sample per pixel support
US7119809B1 (en) 2000-05-15 2006-10-10 S3 Graphics Co., Ltd. Parallel architecture for graphics primitive decomposition
US7061507B1 (en) * 2000-11-12 2006-06-13 Bitboys, Inc. Antialiasing method and apparatus for video applications
US6819332B2 (en) * 2001-02-27 2004-11-16 3Dlabs Inc. Ltd. Antialias mask generation
US7184066B2 (en) 2001-05-09 2007-02-27 Clairvoyante, Inc Methods and systems for sub-pixel rendering with adaptive filtering
US6819320B2 (en) 2002-03-04 2004-11-16 Sun Microsystems, Inc. Reading or writing a non-super sampled image into a super sampled buffer
US20030169255A1 (en) * 2002-03-11 2003-09-11 Lavelle Michael G. Two-sided lighting in a single pass
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
US8775997B2 (en) * 2003-09-15 2014-07-08 Nvidia Corporation System and method for testing and configuring semiconductor functional circuits
US8775112B2 (en) * 2003-09-15 2014-07-08 Nvidia Corporation System and method for increasing die yield
US8732644B1 (en) 2003-09-15 2014-05-20 Nvidia Corporation Micro electro mechanical switch system and method for testing and configuring semiconductor functional circuits
US7003758B2 (en) * 2003-10-07 2006-02-21 Brion Technologies, Inc. System and method for lithography simulation
US8711161B1 (en) 2003-12-18 2014-04-29 Nvidia Corporation Functional component compensation reconfiguration system and method
EP1580694A1 (en) * 2004-03-22 2005-09-28 STMicroelectronics S.r.l. Image rendering with adaptive filtering for anti-aliasing
US7307628B1 (en) * 2004-08-06 2007-12-11 Nvidia Corporation Diamond culling of small primitives
US8723231B1 (en) * 2004-09-15 2014-05-13 Nvidia Corporation Semiconductor die micro electro-mechanical switch management system and method
US8711156B1 (en) 2004-09-30 2014-04-29 Nvidia Corporation Method and system for remapping processing elements in a pipeline of a graphics processing unit
US8427496B1 (en) 2005-05-13 2013-04-23 Nvidia Corporation Method and system for implementing compression across a graphics bus interconnect
US8698811B1 (en) 2005-12-15 2014-04-15 Nvidia Corporation Nested boustrophedonic patterns for rasterization
US8390645B1 (en) 2005-12-19 2013-03-05 Nvidia Corporation Method and system for rendering connecting antialiased line segments
US9117309B1 (en) 2005-12-19 2015-08-25 Nvidia Corporation Method and system for rendering polygons with a bounding box in a graphics processor unit
US8928676B2 (en) * 2006-06-23 2015-01-06 Nvidia Corporation Method for parallel fine rasterization in a raster stage of a graphics pipeline
US8237738B1 (en) 2006-11-02 2012-08-07 Nvidia Corporation Smooth rasterization of polygonal graphics primitives
US8427487B1 (en) 2006-11-02 2013-04-23 Nvidia Corporation Multiple tile output using interface compression in a raster stage
US8482567B1 (en) * 2006-11-03 2013-07-09 Nvidia Corporation Line rasterization techniques
US8724483B2 (en) * 2007-10-22 2014-05-13 Nvidia Corporation Loopback configuration for bi-directional interfaces
US8780123B2 (en) * 2007-12-17 2014-07-15 Nvidia Corporation Interrupt handling techniques in the rasterizer of a GPU
US9064333B2 (en) * 2007-12-17 2015-06-23 Nvidia Corporation Interrupt handling techniques in the rasterizer of a GPU
US8681861B2 (en) * 2008-05-01 2014-03-25 Nvidia Corporation Multistandard hardware video encoder
US8923385B2 (en) * 2008-05-01 2014-12-30 Nvidia Corporation Rewind-enabled hardware encoder
US20110063304A1 (en) * 2009-09-16 2011-03-17 Nvidia Corporation Co-processing synchronizing techniques on heterogeneous graphics processing units
CN101667123B (zh) * 2009-09-24 2013-05-08 中兴通讯股份有限公司 一种不规则窗口实现方法及装置
US9530189B2 (en) 2009-12-31 2016-12-27 Nvidia Corporation Alternate reduction ratios and threshold mechanisms for framebuffer compression
US9331869B2 (en) 2010-03-04 2016-05-03 Nvidia Corporation Input/output request packet handling techniques by a device specific kernel mode driver
JP5273087B2 (ja) * 2010-04-14 2013-08-28 株式会社Jvcケンウッド 映像処理装置および映像処理方法
US9183651B2 (en) * 2010-10-06 2015-11-10 Microsoft Technology Licensing, Llc Target independent rasterization
US9171350B2 (en) 2010-10-28 2015-10-27 Nvidia Corporation Adaptive resolution DGPU rendering to provide constant framerate with free IGPU scale up
US8860742B2 (en) * 2011-05-02 2014-10-14 Nvidia Corporation Coverage caching
US9591309B2 (en) 2012-12-31 2017-03-07 Nvidia Corporation Progressive lossy memory compression
US9607407B2 (en) 2012-12-31 2017-03-28 Nvidia Corporation Variable-width differential memory compression
GB2511817A (en) 2013-03-14 2014-09-17 Imagination Tech Ltd Rendering in computer graphics systems
US9418437B2 (en) 2013-03-15 2016-08-16 Nvidia Corporation Stencil then cover path rendering with shared edges
US9401034B2 (en) 2013-04-30 2016-07-26 Microsoft Technology Licensing, Llc Tessellation of two-dimensional curves using a graphics pipeline
US9710894B2 (en) 2013-06-04 2017-07-18 Nvidia Corporation System and method for enhanced multi-sample anti-aliasing
US9832388B2 (en) 2014-08-04 2017-11-28 Nvidia Corporation Deinterleaving interleaved high dynamic range image by using YUV interpolation
US11295506B2 (en) * 2015-09-16 2022-04-05 Tmrw Foundation Ip S. À R.L. Chip with game engine and ray trace engine
CN112102435B (zh) * 2020-09-24 2023-08-01 安徽文香科技股份有限公司 一种几何图形绘制的方法、装置、设备及存储介质

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4371872A (en) * 1979-07-23 1983-02-01 The Singer Company Fractional clock edge smoother for a real-time simulation of a polygon face object system
US4590465A (en) * 1982-02-18 1986-05-20 Henry Fuchs Graphics display system using logic-enhanced pixel memory cells
US4528642A (en) * 1982-04-12 1985-07-09 Tektronix, Inc. Completing a fill pattern inside a redrawn panel outline
US4783649A (en) * 1982-08-13 1988-11-08 University Of North Carolina VLSI graphics display image buffer using logic enhanced pixel memory cells
US4755810A (en) * 1985-04-05 1988-07-05 Tektronix, Inc. Frame buffer memory
US4780711A (en) * 1985-04-12 1988-10-25 International Business Machines Corporation Anti-aliasing of raster images using assumed boundary lines
US4811245A (en) * 1985-12-19 1989-03-07 General Electric Company Method of edge smoothing for a computer image generation system
FR2594980A1 (fr) * 1986-02-21 1987-08-28 Gen Electric Processeur de visualisation pour un systeme de visualisation graphique
US4991122A (en) * 1987-10-07 1991-02-05 General Parametrics Corporation Weighted mapping of color value information onto a display screen
US4918626A (en) * 1987-12-09 1990-04-17 Evans & Sutherland Computer Corp. Computer graphics priority system with antialiasing
US4908780A (en) * 1988-10-14 1990-03-13 Sun Microsystems, Inc. Anti-aliasing raster operations utilizing sub-pixel crossing information to control pixel shading

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05274443A (ja) * 1991-09-25 1993-10-22 Internatl Business Mach Corp <Ibm> コンピュータ・ディスプレイ・システム及び方法
JP2004510270A (ja) * 2000-09-28 2004-04-02 インテル・コーポレーション フルシーン・アンチエイリアシング・スーパーサンプリング実施のための方法および装置
JP2010140101A (ja) * 2008-12-09 2010-06-24 Fujitsu Ltd 描画装置

Also Published As

Publication number Publication date
CA2030022A1 (en) 1991-05-18
EP0430501A3 (en) 1993-03-24
EP0430501A2 (en) 1991-06-05
DE69032932T2 (de) 1999-09-16
DE69032932D1 (de) 1999-03-18
EP0430501B1 (en) 1999-02-03
US5287438A (en) 1994-02-15

Similar Documents

Publication Publication Date Title
EP0430501B1 (en) System and method for drawing antialiased polygons
Deering et al. The triangle processor and normal vector shader: a VLSI system for high performance graphics
US7006110B2 (en) Determining a coverage mask for a pixel
KR101349171B1 (ko) 3차원 그래픽 가속기 및 그것의 픽셀 분배 방법
US5230039A (en) Texture range controls for improved texture mapping
EP0464907B1 (en) Generating an image
JP5232358B2 (ja) アウトラインフォントのレンダリング
US5307450A (en) Z-subdivision for improved texture mapping
US6650327B1 (en) Display system having floating point rasterization and floating point framebuffering
JP3344597B2 (ja) グラフィック画像をテッセレーション化する方法および装置
AU2004265970B2 (en) System and method for applying accurate three-dimensional volume textures to arbitrary triangulated surfaces
US6292192B1 (en) System and method for the direct rendering of curve bounded objects
US20110285742A1 (en) System and method for path rendering with multiple stencil samples per color sample
US8125480B2 (en) Flat texture volume rendering
US6573893B1 (en) Voxel transfer circuit for accelerated volume rendering of a graphics image
US7884825B2 (en) Drawing method, image generating device, and electronic information apparatus
EP1958162A1 (en) Vector graphics anti-aliasing
US7616200B1 (en) System for reducing aliasing on a display device
US6542154B1 (en) Architectural extensions to 3D texturing units for accelerated volume rendering
US20030160789A1 (en) Multiple scan line sample filtering
US6982719B2 (en) Switching sample buffer context in response to sample requests for real-time sample filtering and video generation
US6489966B1 (en) Graphic processing device
JP4311877B2 (ja) 副標本化テクスチャ端縁部のアンチエイリアシング
US20070257936A1 (en) Image generator
US6756978B1 (en) Apparatus and method for sharing antialiasing memory across multiple displays