JPH0863608A - コンピュータ・グラフィック・システム及びフレーム・バッファ使用方法 - Google Patents

コンピュータ・グラフィック・システム及びフレーム・バッファ使用方法

Info

Publication number
JPH0863608A
JPH0863608A JP6189188A JP18918894A JPH0863608A JP H0863608 A JPH0863608 A JP H0863608A JP 6189188 A JP6189188 A JP 6189188A JP 18918894 A JP18918894 A JP 18918894A JP H0863608 A JPH0863608 A JP H0863608A
Authority
JP
Japan
Prior art keywords
display
storage
contents
sub
storage locations
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP6189188A
Other languages
English (en)
Other versions
JP2637920B2 (ja
Inventor
Katsura Kawase
桂 川瀬
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP6189188A priority Critical patent/JP2637920B2/ja
Priority to US08/506,704 priority patent/US5757375A/en
Publication of JPH0863608A publication Critical patent/JPH0863608A/ja
Application granted granted Critical
Publication of JP2637920B2 publication Critical patent/JP2637920B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/393Arrangements for updating the contents of the bit-mapped memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Image Generation (AREA)
  • Image Processing (AREA)

Abstract

(57)【要約】 【目的】スーパーサンプリングとダブル・バッファリン
グの双方を行う場合に必要とするフレーム・バッファの
量を減らす。 【構成】 1のピクセルごとに、1組の複数のサブピク
セル用記憶位置と、2つの表示用記憶位置と、2ビット
の制御ビットを設けたフレーム・バッファを使用する。
1の表示用記憶位置には1組の複数のサブピクセル用記
憶位置の内容のフィルタリング結果を格納し、他の表示
用記憶位置の内容はディスプレイに表示される。このフ
ィルタリング結果と表示用記憶位置の内容とが同一かど
うかを制御ビットにセットすることにより、どちらの表
示用記憶位置が1組の複数のサブピクセル用記憶位置の
内容を反映しているかがわかり、ダブル・バッファリン
グを行っても必要なフレーム・バッファは倍にはならな
い。この2つの表示記憶位置を切り替えることによりダ
ブル・バッファリングを行う。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、三次元グラフィックス
・システムに関し、さらに詳しくは、三次元グラフィッ
クス・システムにおいてスーパーサンプリングとダブル
・バッファリングの両方をコストパフォーマンスよく行
う装置及び方法に関する。
【0002】
【従来の技術】
[スーパーサンプリング]ラスタ・グラフィックスでは、
図5のように表示されるべき色を格納したピクセルが格
子状に離散的に並んでいる。ピクセルの数はそれが表示
されるディスプレイの表示解像度に依存するが、ピクセ
ル数が多くなっても離散的であるためエイリアシング
(例えば画面上で斜線がギザギザに表示されること、al
iasing)を生ずる。
【0003】このエイリアシングを回避する(以下、ア
ンチエイリアシングという)には、1ピクセルの中をさ
らに細かいサブピクセル単位で色を計算し、そのサブプ
クセルの平均を行ったもの(又は何等かのフィルタリン
グ(filtering)を施したもの)を、その1のピクセル
の色とする方法がある。これが、スーパーサンプリング
である。
【0004】例えば図6には、1ピクセルが4つのサブ
ピクセルから構成されている例である。この場合、スー
パーサンプリングを行わない場合に比べ、同一表示解像
度の場合の4倍のフレーム・バッファが必要である。
【0005】スーパーサンプリングは、ポリゴン描画を
行う際にもアンチエイリアシングを行うことができるの
で極めて有効である。また処理が単純であるため、ハー
ドウエア化しやすい。しかし、フレーム・バッファを多
く使うことになるため高価である。
【0006】[ダブル・バッファリング]表示中のフレー
ム・バッファに描画を行うと極めて見ずらい画面にな
り、錯視を起こす。これを回避する方法としては、フレ
ーム・バッファを2単位有して、切り換えを行う方法が
ある。すなわち、1つを表示中に、他方に描画を行い、
描画が終わると表示を行っていたバッファと描画を行っ
ていたバッファを切り換える。これをダブル・バッファ
リングという。
【0007】図7により動作を説明する。まず第1段階
で、バッファ0からデータが読み出され、ディスプレイ
に表示される。この間描画プロセッサによりバッファ1
に描画を行う。この描画が終了すると第2段階に進み、
描画の終了したバッファ1からデータを読み出し、ディ
スプレイに表示する。この間バッファ0はデータの書き
込みがなされる。この繰り返しにより、スムーズな表示
を行う。なお、この切り換えは通常帰線区間に同期して
行われる。
【0008】このダブル・バッファリングは、アニメー
ションやコンピュータ・エイデット・デザイン(CA
D)等では必須のものとなってきている。しかし、この
手法を用いるとフレーム・バッファは2倍必要となり、
高価である。
【0009】[スーパーサンプリングとダブル・バッフ
ァリングの併用]上述のように、スーパーサンプリング
とダブル・バッファリングを併用すると、表示画像が極
めて良質のものとなることは明らかである。しかし、ス
ーパーサンプリングは、そのサブピクセルの数にもよる
が、例えば1ピクセルごとに4サブピクセルとすると4
倍のフレーム・バッファを必要とし、ダブルバッファリ
ングすると、その2倍であるから、通常の8倍のフレー
ム・バッファを必要とすることになる。当然、スーパー
サンプリングのサブピクセルの数を増やせば、それだけ
フレーム・バッファの量は増加する。よって、高価なフ
レーム・バッファを多量に必要とし、全体として極めて
高価なものとなってしまう。
【0010】
【発明が解決しようとする課題】そこで、本発明の目的
は、スーパーサンプリングとダブル・バッファリングの
併用を安価に成し遂げることである。
【0011】また、他の目的は、既存のグラフィックス
APIへの影響を最小にしつつ、スーパーサンプリング
及びダブル・バッファリングをコストパフォーマンスよ
く行うことができるようにすることである。
【0012】さらに、他の目的は、スーパーサンプリン
グ及びダブル・バッファリングの両方を簡単な構成にて
安価に行うことである。
【0013】
【課題を解決するための手段】以上述べた目的を達成す
ることのできる本発明は、1のピクセルごとに、1組の
複数のサブピクセル用記憶位置と、少なくとも2つの表
示用記憶位置と、1組の複数のサブピクセル用記憶位置
の内容と各表示用記憶位置の内容との関係を示す制御ビ
ット用記憶位置とを有するフレーム・バッファを有し、
1の表示用記憶位置の内容は1組の複数のサブピクセル
用記憶位置の内容のフィルタリング結果であり、他の表
示用記憶位置の内容は現在の表示内容であり、制御ビッ
ト用記憶位置の内容はフィルタリング結果と1の表示用
記憶位置の内容が同一であることを示しているコンピュ
ータ・グラフィック・システムである。これにより、フ
レーム・バッファを多量に用いることなく、スーパーサ
ンプリング及びダブル・バッファリングの双方を同時に
行うことができる。
【0014】また上述のシステムは、1組の複数のサブ
ピクセル用記憶位置の内容を生成し、制御ビットをセッ
トする描画手段と、フィルタリング結果を生成して、1
の表示用記憶位置に書き込むフィルタ手段とをさらに有
する。このような簡単な構成にて、上述したフレーム・
バッファを有効に使用することができる。
【0015】上述の描画手段は、制御ビットに応答して
1組の複数のサブピクセル用記憶位置の先の内容又は1
の表示用記憶位置の先の内容を読み出し、命じられた処
理を施して1組の複数のサブピクセル用記憶位置に書き
込むことにより、1組の複数のサブピクセル用記憶位置
の内容を生成する。このような処理を行うことにより、
グラフィックスAPIへの影響を最小限にし、且つフレ
ーム・バッファを少なくすることができる。
【0016】さらに上述の描画手段は、フィルタリング
の結果と各表示用記憶位置の内容が同一である場合には
各表示用記憶位置に対する制御ビットを設定し、異なる
場合には解除する。このような制御ビットの設定によ
り、1組の複数のサブピクセル用記憶位置と各表示用記
憶位置との関係が明瞭になる。
【0017】また、本発明の他の態様としては、1のピ
クセルごとに、1組の複数のサブピクセル用記憶位置
と、少なくとも2つの表示用記憶位置と、1組の複数の
サブピクセル用記憶位置の内容と各表示用記憶位置の内
容との関係を示す制御ビット用記憶位置とを有するフレ
ーム・バッファを有するコンピュータ・グラフィックス
・システムにおいて、(a)1組の複数のサブピクセル
用記憶位置の内容のフィルタリング結果を1の表示用記
憶位置に書き込むステップと、(b)ステップ(a)の
間、他の表示用記憶位置の内容を読み出して表示するス
テップと、(c)フィルタリング結果と1の表示用記憶
位置の内容が同一であることを示すように制御ビットを
セットするステップとを含む、フレーム・バッファ使用
方法がある。これにより、フレーム・バッファを効率的
に用いることにより安価なシステムを構築することがで
きる。
【0018】また上述のステップ(a)は、(a1)所
定の処理を施したデータを1組の複数のサブピクセル用
記憶位置に書き込むステップと、(a2)データのフィ
ルタリングを行って、その結果を1の表示用記憶位置に
書き込むステップとを含む。表示用記憶位置をスイッチ
することにより、ダブル・バッファリングにより通常2
倍となるフレーム・バッファの量を減らすことができ
る。
【0019】上述の所定の処理を施したデータは、制御
ビットに応答して1組の複数のサブピクセル用記憶位置
の先の内容又は1の表示用記憶位置の先の内容に、命じ
られた処理を施すことにより生成される。命じられた処
理とは置換や混合であり、必要に応じて変更される。通
常は置換の方が多いが、透明なものを透かしてみる等の
場合には混合といった処理も行われる。
【0020】さらに本発明の他の態様は、1のピクセル
ごとに、1組の複数のサブピクセル用記憶位置と、少な
くとも2つの表示用記憶位置と、1組の複数のサブピク
セル用記憶位置の内容と各表示用記憶位置の内容との関
係を示す制御ビット用記憶位置とを有するフレーム・バ
ッファと、1組の複数のサブピクセル用記憶位置の内容
を生成し、制御ビットをセットする描画手段と、1組の
複数のサブピクセル用記憶位置の内容のフィルタリング
を行って、その結果を1の表示用記憶位置に書き込むフ
ィルタ手段と、他の表示用記憶位置の内容を読み出しC
RTに表示させる制御手段とを有するコンピュータ・グ
ラフィック・システムがある。ここで、描画手段は以下
の実施例では描画ロジックとして示されており、同様に
フィルタ手段はフィルタリング・ユニット、制御手段は
コントローラに対応している。
【0021】上述の描画手段は、制御ビットに応答して
1組の複数のサブピクセル用記憶位置の先の内容又は1
の表示用記憶位置の先の内容を読み出し、命じられた処
理を施して1組の複数のサブピクセル用記憶位置に書き
込むことにより、1組の複数のサブピクセル用記憶位置
の内容を生成する。
【0022】また上述の描画手段は、フィルタリングの
結果と各表示用記憶位置の内容が同一である場合には各
表示用記憶位置に対する制御ビットを設定し、異なる場
合には解除する。
【0023】
【実施例】図1に本願発明の用いられるシステムの全体
を示す。ワークステーション1は、メインCPU、メイ
ン・メモリ、キーボード、プリンタ等の入出力装置、及
びFDDやHDDといった記憶装置を含む。このワーク
ステーション1のバスに接続されているのが、グラフィ
ック・サブシステム3であり、このサブシステム3の出
力がCRT9にて表示される。グラフィック・サブシス
テム3は、ジオメトリ計算部5とラスタ計算部7により
構成される。
【0024】このラスタ計算部7をさらに詳しく書く
と、図2のようになる。このラスタ計算部7は、ラスタ
ライザ11、フレーム・バッファ描画部13、フレーム
・バッファ15及びコントローラ17を含む。コントロ
ーラ17はCRT9に接続されている。
【0025】図1及び図2の動作を説明する。ワークス
テーション1のCPUは、CRT9に何等かの表示を行
いたい場合には、グラフィック・サブシステム3に描画
を命令する。例えば、CPUがある位置(全体座標)に
おけるある色のある物体を描くことを命令した場合、ジ
オメトリ計算部5はポリゴン分割をし、ポリゴンの頂点
におけるスクリーン上の座標を求め、その座標における
色情報を計算する。この結果を用いてラスタ計算部7内
のラスタライザ11が、そのポリゴン内部の各ピクセル
ごとにスクリーン上の座標及び色情報を計算する。この
スクリーン上の座標と色をフレーム・バッファ描画部1
3がフレーム・バッファ15に書き込み、コントローラ
17がフレーム・バッファ15の内容を読み出してCR
T9に出力する。
【0026】上述の物体は線や点の場合もあるので、ジ
オメトリ計算部5の出力は、ポリゴンごとでなく、線や
点ごとに出力されることもある。また、フレーム・バッ
ファ描画部13は単にフレーム・バッファ15に書き込
むだけの場合もあるが、一般的にはフレーム・バッファ
15の内容をラスタライザ11の出力をふまえて変更す
る。書き込みも、フレーム・バッファ15の内容をラス
タライザ11の出力で置換するというように考えられ
る。ワークステーション1のCPUによってそのような
変更を指示される場合もある。よって、フレーム・バッ
ファ描画部13とフレーム・バッファ15の接続は双方
向となっている。
【0027】図3に図2のフレーム・バッファ描画部1
3とフレーム・バッファ15の詳細を示す。図2のフレ
ーム・バッファ描画部13は、描画ロジック21とフィ
ルタ・ユニット23を含む。描画ロジック21は、フレ
ーム・バッファ15の内容を読み出すためのバス25
と、描画ロジック21により計算された内容をフレーム
・バッファに書き込むためのバス29とにより、フレー
ム・バッファ15と接続されている。また、描画ロジッ
ク21とフィルタ・ユニット23は、バス27により接
続され、フィルタ・ユニット23とフレーム・バッファ
5とは、バス31により接続されている。
【0028】描画ロジック21は、図2のラスタライザ
11からの出力である、スクリーン上のある座標と色情
報、そして置換、混合等の動作の命令を受け取る。そし
て、スクリーン上のある座標に対応するフレーム・バッ
ファ15内のアドレスを求め、フレーム・バッファ15
からその内容を読み出す。この読み出した内容とラスタ
ライザ11からの色情報とで命令された動作を行い、も
とのアドレスに生成された色情報を書き込む。また、フ
ィルタ・ユニット23にもこの色情報を出力し、フィル
タリング(通常は平均化)を行う。このフィルタリング
された色情報もフレーム・バッファ15に書き込み、図
2のコントローラ17にて読み出し、CRTに表示す
る。
【0029】図4にフレーム・バッファ15内の1ピク
セル分の構成を示す。これは、1ピクセルにつき4つの
サブピクセルがある場合の例である。Samp0からS
amp3までが、サブピクセル0から3までの内容を保
持する。また、これらのサブピクセルのある時点でのフ
ィルタリングされた内容が、表示バッファdisp0,
disp1に書き込まれる。また、Samp0からSa
mp3のフィルタリングの結果とdisp0の内容又は
disp1の内容との関係を示す制御ビットctlがあ
る。
【0030】この制御ビットは2ビットで構成されてお
り、その意味は次のとおりである。制御ビットが00な
らば、disp0=disp1=filtering(subpixe
l)。制御ビットが01ならば、disp0=filtering
(subpixel)で且つdisp1≠filtering(subpixel)。
制御ビットが10ならば、disp0≠filtering(subp
ixel)で且つdisp1=filtering(subpixel)。制御ビ
ット11でならば、disp0≠filtering(subpixel)
で且つdisp1≠filtering(subpixel)。filtering(s
ubpixel)は、ここではSamp0からSamp3までを
フィルタリングした結果である。
【0031】この制御ビットは、これは図3の描画ロジ
ック21が置換などの操作を行って、新たなサブピクセ
ルの内容を生成し書き込むときに同時にセットされる。
【0032】以下、この描画ロジック21、フィルタリ
ング・ユニット23とフレーム・バッファ15の動作を
詳細に述べる。
【0033】[disp0へ書き込む場合] 1.制御ビットctlの上位ビットが0のピクセルに対
する処理 (1)描画ロジック21が、フレーム・バッファ15か
らSamp0を読み出し、所定の処理を行った後(置
換、混合等)にSamp0に書き戻す。同時にフィルタ
リング・ユニット23にも結果を出力する。 (2)描画ロジック21が、フレーム・バッファ15か
らSamp1を読み出し、所定の処理を行った後(置
換、混合等)にSamp1に書き戻す。同時にフィルタ
リング・ユニット23にも結果を出力する。 (3)描画ロジック21が、フレーム・バッファ15か
らSamp2を読み出し、所定の処理を行った後(置
換、混合等)にSamp2に書き戻す。同時にフィルタ
リング・ユニット23にも結果を出力する。 (4)描画ロジック21が、フレーム・バッファ15か
らSamp3を読み出し、所定の処理を行った後(置
換、混合等)にSamp3に書き戻す。同時にフィルタ
リング・ユニット23にも結果を出力する。 (5)フィルタリング・ユニット23内で描画ロジック
21からの新たなSamp0からSamp3をフィルタ
リング処理(通常は平均化処理)を行い、disp0に
書き出す。
【0034】Samp0等のアドレスは、図2のラスタ
ライザ11からのピクセルのスクリーン上の座標から、
描画ロジックが計算する。disp0のアドレスは描画
ロジック21が計算し、フィルタリング・ユニット23
にそのアドレスに出力させるようにする。
【0035】2.制御ビットctlの上位ビットが1の
ピクセルに対する処理 この場合、disp0≠filtering(subpixel)であるか
ら、Samp0等を読み出して処理を行うのは無意味で
ある。よって、disp0=Samp0=Samp1=
Samp2=Samp3として扱う。 (1)描画ロジック21が、フレーム・バッファ15か
らdisp0を読み出し、所定の処理を行った後(置
換、混合等)にSamp0に書き戻す。同時にフィルタ
リング・ユニット23にも結果を出力する。 (2)描画ロジック21が、フレーム・バッファ15か
らdisp0を読み出し、所定の処理を行った後(置
換、混合等)にSamp1に書き戻す。同時にフィルタ
リング・ユニット23にも結果を出力する。 (3)描画ロジック21が、フレーム・バッファ15か
らdisp0を読み出し、所定の処理を行った後(置
換、混合等)にSamp2に書き戻す。同時にフィルタ
リング・ユニット23にも結果を出力する。 (4)描画ロジック21が、フレーム・バッファ15か
らdisp0を読み出し、所定の処理を行った後(置
換、混合等)にSamp3に書き戻す。同時にフィルタ
リング・ユニット23にも結果を出力する。 (5)フィルタリング・ユニット23内で描画ロジック
21からの新たなSamp0からSamp3をフィルタ
リング処理(通常は平均化処理)を行い、disp0に
書き出す。 (6)描画ロジック21が、制御ビットを01にする。
【0036】[disp1へ書き込む場合] 1.制御ビットctlの下位ビットが0のピクセルに対
する処理 (1)描画ロジック21が、フレーム・バッファ15か
らSamp0を読み出し、所定の処理を行った後(置
換、混合等)にSamp0に書き戻す。同時にフィルタ
リング・ユニット23にも結果を出力する。 (2)フレーム・バッファ15のSamp1からSam
p3まで同様の処理を行う。 (3)フィルタリング・ユニット23内で描画ロジック
21からの新たなSamp0からSamp3をフィルタ
リング処理(通常は平均化処理)を行い、disp1に
書き出す。
【0037】2.制御ビットctlの下位ビットが1の
ピクセルに対する処理 この場合、disp1≠filtering(subpixel)であるか
ら、Samp0等を読み出して処理を行うのは無意味で
ある。よって、disp1=Samp0=Samp1=
Samp2=Samp3として扱う。 (1)描画ロジック21が、フレーム・バッファ15か
らdisp1を読み出し、所定の処理を行った後(置
換、混合等)にSamp0に書き戻す。同時にフィルタ
リング・ユニット23にも結果を出力する。 (2)フレーム・バッファ15のSamp1からSam
p3まで同様の処理を行う。 (3)フィルタリング・ユニット23内で描画ロジック
21からの新たなSamp0からSamp3をフィルタ
リング処理(通常は平均化処理)を行い、disp1に
書き出す。 (4)描画ロジック21が、制御ビットを10にする。
【0038】以上、スーパーサンプリングを行うことを
前提に説明してきたが、場合によってはスーパーサンプ
リングを行わない場合もある。このような場合には以下
のような処理を行う。 [disp0へ書き込む場合] (1)描画ロジック21がフレーム・バッファ15から
disp0を読み出し、所定の処理を行った後にdis
p0に書き戻す。 (2)描画ロジック21が制御ビットの上位1ビットを
1にする。 [disp1へ書き込む場合] (1)描画ロジック21がフレーム・バッファ15から
disp1を読み出し、所定の処理を行った後にdis
p0に書き戻す。 (2)描画ロジック21が制御ビットの下位1ビットを
1にする。
【0039】このようにすると、スーパーサンプリング
をサポートするグラフィックスAPI(例えば、gra
PHIGS)でも、サポートしないグラフィックスAP
I(例えば、X)でも対応することができる。
【0040】スーパーサンプリングをサポートする場合
において、本発明では制御ビットが1(disp0及び
disp1のどちらに対しても)の場合には誤差が生ず
る(スーパーサンプリングをサポートしないAPIによ
り描画したことにより不一致となったピクセルへの書き
込みは誤差とならない。)。しかし、この誤差も以下の
理由、及び上述の課題を解決することができたというコ
スト対効果の面から許容されるものである。
【0041】その理由とは、以下のとおりである。
(1)誤差が生ずるのは、スーパーサンプリングをサポ
ートするAPIにより描画中に描画先をdisp0から
disp1(又はその逆)に切り替えたときであるが、
このときは通常描画を始める前に画面の消去を行うこと
が多く、この場合には誤差は生じないので、実質的に誤
差が招ずるケースは少ない。(2)誤差が生じても、ス
ーパーサンプリングをしない場合に比べて画質が落ちる
ことはない。(3)同じバッファの数の場合、誤差なし
でサブピクセルを完全に二重に持つより、誤差があって
もサンプル点を増やした方がよい場合もある。
【0042】よって、誤差は許容されるものと解する。
【0043】このようなフレーム・バッファの構成に
し、描画ロジックとフィルタリング・ユニットを動作さ
せることにより、サブピクセルを倍も持つことなくスー
パーサンプリング及びダブル・バッファリングを行うこ
とができるが、本発明は本実施例に限定されるものでな
い。例えば、描画ロジック21とフィルタリング・ユニ
ット23を別々にしているが、描画ロジック1つで両方
の機能を果たすようにしてもよい。また、制御ビットの
内容と意味の対応関係は、本実施例に限定されるもので
なく、上位ビットと下位ビットの意味、また1と0の意
味をそれぞれ交換してもよい。さらに、本実施例では主
にサブピクセルを4つとした場合について主に述べた
が、4つに限定されるものではなく、2以上の整数であ
ればよい。但し、2のべき乗が好ましい。また、表示用
バッファは2つとしていたが、少なくとも2つであれば
ダブル・バッファリングできる。ただし、3つ以上表示
用バッファがあって、ある時点の表示情報を記憶してい
ても有用な場合もあるが、フレ−ム・バッファが増加す
るという欠点もある(従来の方法よりは少ない)。
【0044】
【発明の効果】本発明の効果は、スーパーサンプリング
とダブル・バッファリングの双方を行う安価なシステム
を提供できたことである。ここで具体的数字を見てみる
と、サブピクセルの数が4つの場合、本発明によると通
常の6倍+制御ビットであるが、従来のようにすると通
常の8倍となる。また、サブピクセルの数が8つの場
合、本発明によると通常の10倍+制御ビットで、従来
のようにすると通常の16倍である。サブピクセルを1
6個にすると、本発明の場合で18倍+制御ビット、従
来のようにすると32倍である。このようにフレーム・
バッファの相当のビット数節約することができ、より安
価になった。但し、この「通常」は、スーパーサンプリ
ングもダブル・バッファリングも共に行わない場合のこ
とである。
【0045】また、このような節約を制御ビットと表示
バッファを設けることにより可能としたので、簡単な構
成にて行うことができた。
【0046】また、既存のグラフィックスAPIへの影
響を最小にしつつ、スーパーサンプリング及びダブル・
バッファリングをコストパフォーマンスよく行うことも
できた。
【図面の簡単な説明】
【図1】本発明の全体構成のブロック図である。
【図2】図1のラスタ計算部のブロック図である。
【図3】図2のフレーム・バッファ描画部とフレーム・
バッファのブロック図である。
【図4】フレーム・バッファの1ピクセルの構成を示す
図である。
【図5】画面の状態を示す図である。
【図6】スーパーサンプリングを説明した図である。
【図7】ダブル・バッファリングを説明した図である。
【符号の説明】
1 ワークステーション 3 グラフィック・サブシステム 5 ジオメトリ計算部 7 ラスタ計算部 9 CRT 11 ラスタライザ 13 フレーム・バッファ描画部 15 フレーム・バッファ 17 コントローラ 21 描画ロジック 23 フィルタ・ユニット
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 G09G 5/36 510 V 9377−5H 520 C 9377−5H G06F 15/68 410

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】スーパーサンプリング及びダブル・バッフ
    ァリングの双方を同時に可能とするコンピュータ・グラ
    フィックス・システムであって、 1のピクセルごとに、1組の複数のサブピクセル用記憶
    位置と、少なくとも2つの表示用記憶位置と、前記1組
    の複数のサブピクセル用記憶位置の内容と各前記表示用
    記憶位置の内容との関係を示す制御ビット用記憶位置と
    を有するフレーム・バッファを有し、 1の前記表示用記憶位置の内容は前記1組の複数のサブ
    ピクセル用記憶位置の内容のフィルタリング結果であ
    り、他の前記表示用記憶位置の内容は現在の表示内容で
    あり、前記制御ビット用記憶位置の内容は前記フィルタ
    リング結果と前記1の表示用記憶位置の内容が同一であ
    ることを示しているコンピュータ・グラフィック・シス
    テム。
  2. 【請求項2】前記1組の複数のサブピクセル用記憶位置
    の内容を生成し、前記制御ビットをセットする描画手段
    と、 前記フィルタリング結果を生成して、前記1の表示用記
    憶位置に書き込むフィルタ手段とをさらに有する請求項
    1記載のコンピュータ・グラフィック・システム。
  3. 【請求項3】前記描画手段が、 前記制御ビットに応答して前記1組の複数のサブピクセ
    ル用記憶位置の先の内容又は1の前記表示用記憶位置の
    先の内容を読み出し、命じられた処理を施して前記1組
    の複数のサブピクセル用記憶位置に書き込むことによ
    り、前記1組の複数のサブピクセル用記憶位置の内容を
    生成する請求項2記載のコンピュータ・グラフィックス
    ・システム。
  4. 【請求項4】前記描画手段は、前記フィルタリングの結
    果と各前記表示用記憶位置の内容が同一である場合には
    各前記表示用記憶位置に対する制御ビットを設定し、異
    なる場合には解除する請求項2記載のコンピュータ・グ
    ラフィック・システム。
  5. 【請求項5】1のピクセルごとに、1組の複数のサブピ
    クセル用記憶位置と、少なくとも2つの表示用記憶位置
    と、前記1組の複数のサブピクセル用記憶位置の内容と
    各前記表示用記憶位置の内容との関係を示す制御ビット
    用記憶位置とを有するフレーム・バッファを有するコン
    ピュータ・グラフィックス・システムにおいて、 スーパーサンプリング及びダブル・バッファリングの双
    方を同時に可能とするフレーム・バッファ使用方法であ
    って、(a)前記1組の複数のサブピクセル用記憶位置
    の内容のフィルタリング結果を1の前記表示用記憶位置
    に書き込むステップと、(b)ステップ(a)の間、他
    の前記表示用記憶位置の内容を読み出して表示するステ
    ップと、(c)前記フィルタリング結果と前記1の表示
    用記憶位置の内容が同一であることを示すように前記制
    御ビットをセットするステップとを含む方法。
  6. 【請求項6】前記ステップ(a)が、(a1)所定の処
    理を施したデータを前記1組の複数のサブピクセル用記
    憶位置に書き込むステップと、(a2)前記データのフ
    ィルタリングを行って、その結果を前記1の表示用記憶
    位置に書き込むステップとを含む請求項5記載の方法。
  7. 【請求項7】前記所定の処理を施したデータが、 前記制御ビットに応答して前記1組の複数のサブピクセ
    ル用記憶位置の先の内容又は前記1の表示用記憶位置の
    先の内容に、命じられた処理を施すことにより生成され
    る請求項6記載の方法。
  8. 【請求項8】スーパーサンプリング及びダブル・バッフ
    ァリングの双方を同時に可能とするコンピュータ・グラ
    フィックス・システムであって、 1のピクセルごとに、1組の複数のサブピクセル用記憶
    位置と、少なくとも2つの表示用記憶位置と、前記1組
    の複数のサブピクセル用記憶位置の内容と各前記表示用
    記憶位置の内容との関係を示す制御ビット用記憶位置と
    を有するフレーム・バッファと、 前記1組の複数のサブピクセル用記憶位置の内容を生成
    し、前記制御ビットをセットする描画手段と、 前記1組の複数のサブピクセル用記憶位置の内容のフィ
    ルタリングを行って、その結果を1の前記表示用記憶位
    置に書き込むフィルタ手段と、 他の前記表示用記憶位置の内容を読み出しCRTに表示
    させる制御手段とを有するコンピュータ・グラフィック
    ・システム。
  9. 【請求項9】前記描画手段が、 前記制御ビットに応答して前記1組の複数のサブピクセ
    ル用記憶位置の先の内容又は前記1の表示用記憶位置の
    先の内容を読み出し、命じられた処理を施して前記1組
    の複数のサブピクセル用記憶位置に書き込むことによ
    り、前記1組の複数のサブピクセル用記憶位置の内容を
    生成する請求項8記載のコンピュータ・グラフィックス
    ・システム。
  10. 【請求項10】前記描画手段は、前記フィルタリングの
    結果と各前記表示用記憶位置の内容が同一である場合に
    は各前記表示用記憶位置に対する制御ビットを設定し、
    異なる場合には解除する請求項8又は9いずれか記載の
    コンピュータ・グラフィック・システム。
JP6189188A 1994-08-11 1994-08-11 コンピュータ・グラフィック・システム及びフレーム・バッファ使用方法 Expired - Lifetime JP2637920B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP6189188A JP2637920B2 (ja) 1994-08-11 1994-08-11 コンピュータ・グラフィック・システム及びフレーム・バッファ使用方法
US08/506,704 US5757375A (en) 1994-08-11 1995-07-25 Computer graphics system and method employing frame buffer having subpixel field, display fields and a control field for relating display fields to the subpixel field

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6189188A JP2637920B2 (ja) 1994-08-11 1994-08-11 コンピュータ・グラフィック・システム及びフレーム・バッファ使用方法

Publications (2)

Publication Number Publication Date
JPH0863608A true JPH0863608A (ja) 1996-03-08
JP2637920B2 JP2637920B2 (ja) 1997-08-06

Family

ID=16236987

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6189188A Expired - Lifetime JP2637920B2 (ja) 1994-08-11 1994-08-11 コンピュータ・グラフィック・システム及びフレーム・バッファ使用方法

Country Status (2)

Country Link
US (1) US5757375A (ja)
JP (1) JP2637920B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999041706A1 (en) * 1998-02-17 1999-08-19 Sun Microsystems, Inc. Graphics system with variable resolution super-sampling
EP1207497A2 (en) * 1998-02-17 2002-05-22 Sun Microsystems, Inc. Graphics system with variable resolution super-sampling

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6288722B1 (en) * 1996-10-17 2001-09-11 International Business Machines Corporation Frame buffer reconfiguration during graphics processing based upon image attributes
JPH10326352A (ja) * 1997-05-27 1998-12-08 Mitsubishi Electric Corp 多角形塗り潰し方法及び記録媒体
DE19740033A1 (de) * 1997-09-11 1999-03-18 Valeo Borg Instr Verw Gmbh Anzeigevorrichtung mit und ohne Antialiasing
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
US6717578B1 (en) * 1998-02-17 2004-04-06 Sun Microsystems, Inc. Graphics system with a variable-resolution sample buffer
US6459428B1 (en) * 1998-02-17 2002-10-01 Sun Microsystems, Inc. Programmable sample filtering for image rendering
US6624823B2 (en) 1998-02-17 2003-09-23 Sun Microsystems, Inc. Graphics system configured to determine triangle orientation by octant identification and slope comparison
US6850236B2 (en) 1998-02-17 2005-02-01 Sun Microsystems, Inc. Dynamically adjusting a sample-to-pixel filter in response to user input and/or sensor input
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
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
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
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
WO2000004482A2 (en) 1998-07-17 2000-01-27 Intergraph Corporation Multi-processor graphics accelerator
US6157393A (en) * 1998-07-17 2000-12-05 Intergraph Corporation Apparatus and method of directing graphical data to a display device
US7518616B1 (en) 1998-07-17 2009-04-14 3Dlabs, Inc. Ltd. Graphics processor with texture memory allocation system
US6577316B2 (en) 1998-07-17 2003-06-10 3Dlabs, Inc., Ltd Wide instruction word graphics processor
US6188410B1 (en) 1998-07-17 2001-02-13 3Dlabs Inc. Ltd. System for processing vertices from a graphics request stream
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
WO2000033256A1 (en) * 1998-11-30 2000-06-08 Quantum3D, Inc. Pixel offset antialiasing
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
US6429877B1 (en) 1999-07-30 2002-08-06 Hewlett-Packard Company System and method for reducing the effects of aliasing in a computer graphics system
US6384839B1 (en) 1999-09-21 2002-05-07 Agfa Monotype Corporation Method and apparatus for rendering sub-pixel anti-aliased graphics on stripe topology color displays
US6980326B2 (en) * 1999-12-15 2005-12-27 Canon Kabushiki Kaisha Image processing method and apparatus for color correction of an image
US6664955B1 (en) * 2000-03-15 2003-12-16 Sun Microsystems, Inc. Graphics system configured to interpolate pixel values
EP1321866A4 (en) * 2000-09-18 2007-01-10 Hitachi Ltd METHOD FOR DESCRIBING SOLID-PARTICULAR FORMS AND DEVICE THEREFOR AND SYSTEM FOR SUPPORTING THE DESIGN OF SOLID-PARTICULAR FORMS THEREWITH
US6795078B2 (en) * 2002-01-31 2004-09-21 Sun Microsystems, Inc. Parallel read with source-clear operation
US6999087B2 (en) * 2002-03-12 2006-02-14 Sun Microsystems, Inc. Dynamically adjusting sample density in a graphics system
US6885384B2 (en) * 2002-03-12 2005-04-26 Sun Microsystems, Inc. Method of creating a larger 2-D sample location pattern from a smaller one by means of X, Y address permutation
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
DE102012014174A1 (de) * 2012-07-16 2014-01-16 Rational Aktiengesellschaft Verfahren zur Anzeige von Parametern eines Garprozesses und Anzeigevorrichtung für ein Gargerät

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5237650A (en) * 1989-07-26 1993-08-17 Sun Microsystems, Inc. Method and apparatus for spatial anti-aliased depth cueing
EP0430501B1 (en) * 1989-11-17 1999-02-03 Digital Equipment Corporation System and method for drawing antialiased polygons
JPH04140892A (ja) * 1990-02-05 1992-05-14 Internatl Business Mach Corp <Ibm> 制御データをエンコードする装置及び方法
US5123085A (en) * 1990-03-19 1992-06-16 Sun Microsystems, Inc. Method and apparatus for rendering anti-aliased polygons
US5327159A (en) * 1990-06-27 1994-07-05 Texas Instruments Incorporated Packed bus selection of multiple pixel depths in palette devices, systems and methods
US5343558A (en) * 1991-02-19 1994-08-30 Silicon Graphics, Inc. Method for scan converting shaded triangular polygons
US5519823A (en) * 1991-03-15 1996-05-21 Hewlett-Packard Company Apparatus for rendering antialiased vectors
CA2067418C (en) * 1991-07-22 1998-05-19 Sung M. Choi Frame buffer organization and control for real-time image decompression
US5274760A (en) * 1991-12-24 1993-12-28 International Business Machines Corporation Extendable multiple image-buffer for graphics systems
EP0623231B1 (en) * 1992-01-21 1997-06-18 Compaq Computer Corporation Circuitry and method for drawing lines in a video graphics system
WO1993014468A1 (en) * 1992-01-21 1993-07-22 Compaq Computer Corporation Video graphics controller with improved calculation capabilities
US5257103A (en) * 1992-02-05 1993-10-26 Nview Corporation Method and apparatus for deinterlacing video inputs
US5473342A (en) * 1993-10-19 1995-12-05 Chrontel, Inc. Method and apparatus for on-the-fly multiple display mode switching in high-resolution bitmapped graphics system
KR100200818B1 (ko) * 1993-11-30 1999-06-15 윤종용 분할된 룩업테이블을 이용한 효과적인 앤티에일리어싱 방법
US5594854A (en) * 1995-03-24 1997-01-14 3Dlabs Inc. Ltd. Graphics subsystem with coarse subpixel correction

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999041706A1 (en) * 1998-02-17 1999-08-19 Sun Microsystems, Inc. Graphics system with variable resolution super-sampling
EP1207497A2 (en) * 1998-02-17 2002-05-22 Sun Microsystems, Inc. Graphics system with variable resolution super-sampling
EP1205882A3 (en) * 1998-02-17 2004-10-27 Sun Microsystems, Inc. Graphics system with variable resolution super-sampling
EP1207497A3 (en) * 1998-02-17 2004-10-27 Sun Microsystems, Inc. Graphics system with variable resolution super-sampling
EP1205881A3 (en) * 1998-02-17 2004-10-27 Sun Microsystems, Inc. Graphics system with variable resolution super-sampling

Also Published As

Publication number Publication date
US5757375A (en) 1998-05-26
JP2637920B2 (ja) 1997-08-06

Similar Documents

Publication Publication Date Title
JP2637920B2 (ja) コンピュータ・グラフィック・システム及びフレーム・バッファ使用方法
US10885607B2 (en) Storage for foveated rendering
US6587112B1 (en) Window copy-swap using multi-buffer hardware support
JP4234217B2 (ja) サイズ変更ビットブロック転送処理の一部として透過イネーブルビットの埋込みを行うシステム、装置および方法
US6924808B2 (en) Area pattern processing of pixels
WO2003046836A1 (en) Image processing apparatus and constituent parts thereof, rendering method
US20060007247A1 (en) Graphics resampling system and method for use thereof
CA2130050C (en) Method and apparatus for constructing a frame buffer with a fast copy means
US7898549B1 (en) Faster clears for three-dimensional modeling applications
US6952217B1 (en) Graphics processing unit self-programming
JP4707782B2 (ja) 画像処理装置およびその方法
US10789913B2 (en) Arbitrary block rendering and display frame reconstruction
JPH1074263A (ja) コンピュータ・グラフィックス・システム
JP2005077522A (ja) 画像処理装置および画像処理方法
US6795081B2 (en) Sample cache for supersample filtering
JP2003066943A (ja) 画像処理装置及びプログラム
US7145570B2 (en) Magnified texture-mapped pixel performance in a single-pixel pipeline
JP2005346605A (ja) アンチエイリアス描画方法およびこれを用いた描画装置
JPH1069548A (ja) コンピュータ・グラフィックス・システム
US8379050B2 (en) Rendering apparatus, method and medium
JP2007200251A (ja) 画像データ処理装置
US6624820B2 (en) Graphic processing method for determining representative texture data for a plurality of pixels and apparatus for same
JP3556517B2 (ja) 3次元画像処理装置
US6847372B2 (en) Magnified texture-mapped pixel performance in a single-pixel pipeline
JP3524529B2 (ja) コンピュータに実行させるための描画処理プログラム、コンピュータに実行させるための描画処理プログラムを記録した記録媒体、プログラム実行装置、描画装置及び方法

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20080425

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20080425

Year of fee payment: 11

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

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

Free format text: PAYMENT UNTIL: 20080425

Year of fee payment: 11

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

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

Free format text: PAYMENT UNTIL: 20080425

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20080425

Year of fee payment: 11

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

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

Free format text: PAYMENT UNTIL: 20090425

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20090425

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20100425

Year of fee payment: 13

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

Free format text: PAYMENT UNTIL: 20110425

Year of fee payment: 14

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

Free format text: PAYMENT UNTIL: 20120425

Year of fee payment: 15

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

Free format text: PAYMENT UNTIL: 20120425

Year of fee payment: 15

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

Free format text: PAYMENT UNTIL: 20130425

Year of fee payment: 16

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

Free format text: PAYMENT UNTIL: 20130425

Year of fee payment: 16

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

Free format text: PAYMENT UNTIL: 20140425

Year of fee payment: 17

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term