JPH09134452A - コンピュータ・グラフィックス・ディスプレイ・システムにおける奥行きバッファ値の高速補間方法及びグラフィックス・システム - Google Patents

コンピュータ・グラフィックス・ディスプレイ・システムにおける奥行きバッファ値の高速補間方法及びグラフィックス・システム

Info

Publication number
JPH09134452A
JPH09134452A JP8262797A JP26279796A JPH09134452A JP H09134452 A JPH09134452 A JP H09134452A JP 8262797 A JP8262797 A JP 8262797A JP 26279796 A JP26279796 A JP 26279796A JP H09134452 A JPH09134452 A JP H09134452A
Authority
JP
Japan
Prior art keywords
value
depth
depth buffer
sum
graphics system
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
JP8262797A
Other languages
English (en)
Inventor
C Fossam Gordon
ゴードン・シー・フォッサム
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
Publication of JPH09134452A publication Critical patent/JPH09134452A/ja
Pending legal-status Critical Current

Links

Classifications

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

Landscapes

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

Abstract

(57)【要約】 【課題】 奥行きバッファ値の高速補間を実行する方法
及びグラフィックス・システムを提供する。 【解決手段】 前記グラフィックス・システムは、グラ
フィックス・データをピクセル・データに変換するメモ
リ/グラフィックス・コントローラを備え、前記メモリ
/グラフィックス・コントローラは、符号ビット、指数
及び仮数を有する浮動少数点の形式によりそのホスト・
プロセッサから初期奥行きバッファ値を受け取る手段
と、前記仮数からアキュムレータ値を発生する手段と、
前記ホスト・プロセッサからデルタ奥行き値を受け取る
手段と、前記アキュムレータ値を前記デルタ奥行き値に
整数加算してその和を発生させる手段と、前記和、前記
初期奥行き値の符号ビット及び指数からディスプレイ・
ピクセル用の浮動少数点の奥行きバッファ値を発生する
手段とを含む。

Description

【発明の詳細な説明】
【0001】
【発明が属する技術分野】本発明は、グラフィックス・
ディスプレイ・システムに関し、特に3次元イメージの
奥行きバッファ補間を実行するコンピュータ・グラフィ
ックス・ディスプレイ・システムに関する。
【0002】
【従来の技術】多くのコンピュータ、特にパーソナル・
コンピュータ、マイクロコンピュータ又はワークステー
ションの範疇に属するものは、コンピュータ・グラフィ
ックス機能を備えている。コンピュータ・グラフィック
スは、リアル又はイメージ、アニメーション又は静止
画、更には2次元(2-D)又は3次元(3-D)によるコンピュ
ータ発生のディスプレイ・イメージを生成する。
【0003】伝統的なグラフィックス・システムでは、
デカルト座標として、又はポリゴン(多角形)のような
幾何学的な物体を定義するベクトルとして記憶される。
このようなデータは、グラフィックス・プロセッサによ
り、ワールド座標系(WCS)として知られている基準系に
おけるスケール、変換及び回転の幾何的な変換を介して
操作されてもよい。物理装置は、スクリーン座標系(SC
S)として知られているそれ自信の座標系を用いる。イメ
ージを表示する準備を完了するために、WCSにおけるイ
メージ・データをこれに対応したSCSにおける装置固有
のスクリーン座標に変更する視点変換を行う。ワールド
画像の窓即ち一部分が選択されてビューポートとして知
られているディスプレイの領域に示される。このワール
ドにおけるデータのうちのいくつかはこの窓の外になる
こともあるので、クリップ処理が必要となる。クリップ
処理は窓の外のデータ・ポイントを除去する。3次元画
像において、視点変換は視点基準ポイント(即ち、物体
を見ようとする位置)及び透視図(即ち物体の3次元座
標からスクリーンの2次元座標への変換)も考慮に入れ
ることを必要とする。
【0004】更に、イメージ変換では、ビューポートを
介して示されるワールドにおける物体の相対的な距離及
び奥行きも考慮している。変換情報はユーザにより定義
された限界の外側のデータ(即ち、表示された最も遠い
又は近い距離外の物体)を切り取ったものとなる。従っ
て、特に奥行き値の使用は3次元、科学的な可視化、コ
ンピュータ・アニメーション、及びディジタル・ビデオ
・アプリケーションに有用である。
【0005】この技術分野では、3次元ディスプレイを
得るためにこれまで多くの手法が用いられ、また「隠れ
面」及び「シェーディング」問題を解決するための種々
の技術を用いているけれども、価値のある1手法は、し
ばしばZバッファと呼ばれる奥行きバッファを用いるも
のであった。この奥行きバッファはイメージを形成する
複数のポイント間の奥行き関係を定義する奥行き値を保
持しているので、そのイメージの第1の部分にあって、
そのイメージの他の複数部分のポイントにおいて背後ポ
イントは効果的に除去される。従って、Zバッファの処
理は、2次元ディスプレイにマッピングされた、3次元
イメージにおける隠れ縁及び隠れポリゴンの表示を阻止
する方法である。
【0006】標準的な3次元グラフィックスは複雑化し
た物体を構築するためにスクリーン上に多数のポリゴン
を描画する。ポリゴンの頂点は関連付けされた座標値
(x、y)、色(r、g、b)及び奥行き(z)を有する。ハイエンド
のグラフィック・アダプタはこれらポリゴンの丁度この
頂点データを取り、かつ色及び奥行きの線形補間により
内部を正しく描画するように進行させることができる。
これらのグラフィック・アダプタは、高いパフォーマン
スが得られる一方、殆どのグラフィックス・システムに
とって極めて高価である。ローエンドのグラフィック・
アダプタは、直接、ポリゴンを描画することはできない
ので、改善したポリゴンのソフトウェア補間を用いてロ
ーエンドのグラフィック・アダプタにより、その時点で
処理できる標準的なピクセル・データを発生させる。こ
の処理はラスタライゼーションと呼ばれている。残念な
がら、3次元、科学的な可視化及びリアル・タイムのア
ニメーションのような改善した大抵のグラフィック・ア
ダプタは、このようなラスタライゼーション・システム
上で動きが余りに遅くて許容できるパフォーマンスが得
られない。
【0007】複雑さが中程度のアダプタは、ラスタライ
ゼーション処理の速度を高めるために、種々の機構を用
いているとはいえ、独立してポリゴンの内部を完全に描
画するには十分ではない。中程度のアダプタは1走査線
にわたる色の補間を処理することができ、かつ(奥行き
テストの結果として)いずれのピクセルを更新すべき
か、またそうではないのかを表示するマスクに対応する
ことができる。しかし、この形式の中程度のアダプタ
は、奥行きバッファ値の補間を行っていないので、奥行
き補間はソフトウェアが行わなければならず、これがア
プリケーションの速度を低下させる。このような中程度
のアダプタ及びローエンドのアダプタは深さバッファ値
の補間を行っていない理由は、それほど高価ではないこ
れらグラフィック・アダプタに補間に必要とする完全な
浮動少数点の加算機能を設けるには高価過ぎるというこ
とにある。従って、イメージ・ポリゴンがこれに関連し
た奥行き値を有するときは、ユーザ・アプリケーション
が補間を行って、全てのピクセルを個別的に発生するよ
うに強制されるので、アプリケーションを遅くする結果
となる。
【0008】
【発明が解決しようとする課題】フル浮動少数点のオペ
レーションを用いることなく、ハードウエアにおいて奥
行きバッファ値の高速補間を実行する方法を提供するこ
とが望ましいことが分かる。このような方法は、ローエ
ンド及び中程度のアダプタに複雑化されていない、かつ
簡単なハードウェアを使用可能にさせるものとなる。ピ
クセルへの変換が、もっと遅いソフトウェアに代わっ
て、ハードウエアにより行われるので、このハードウエ
アは、グラフィック・アダプタに複数のポリゴンの全ス
パンを送出する奥行きバッファ可能メモリ・コントロー
ラ上で実施するのに適しており、かつピクセルへの変換
がはるかに遅いソフトウェアに代わって、ハードウェア
により行われるので、3次元アプリケーションのために
ローエンド及び中程度のアダプタを遥かに有用なものに
する。
【0009】
【課題を解決するための手段】ホスト・データ処理シス
テム内に、奥行きバッファ値の高速補間を実行するグラ
フィックス・システムが設けられ、前記ホスト・データ
処理システムは、奥行きデータを含むグラフィックス・
データを有したグラフィックス・アプリケーションを実
行するホスト・プロセッサと、各ピクセルについての奥
行き値を含むディスプレイ・ピクセル・データを受け取
り、かつ前記ディスプレイ・ピクセル・データを出力信
号に変換して出力ディスプレイ装置を駆動するグラフィ
ック・アダプタとを含む。前記グラフィックス・システ
ムはグラフィックス・データをピクセル・データに変換
するメモリ/グラフィックス・コントローラを備え、前
記メモリ/グラフィックス・コントローラは、符号ビッ
ト、指数及び仮数を有する浮動少数点の形式によ前記ホ
スト・プロセッサからの初期奥行きバッファ値を受け取
る手段と、前記仮数からアキュムレータ値を発生する手
段と、前記ホスト・プロセッサからデルタ奥行き値を受
け取る手段と、前記アキュムレータ値を前記デルタ奥行
き値に整数加算して和を発生させる手段と、前記和、前
記初期奥行きバッファ値の符号ビット及び指数からディ
スプレイ・ピクセルに対する浮動少数点の奥行きバッフ
ァ値を発生して前記グラフィック・アダプタに出力する
手段とを含む。本発明の以上の目的及び付加的な目的、
構成及び効果は以下に詳細に記載された説明により明ら
かとなる。
【0010】本発明の新しい構成と思われる特徴は特許
請求の範囲に記載されている。しかし、本発明自体と共
に、好ましい使用モード、その更なる目的及び効果は、
実施例の下記詳細な説明を添付図面に関連させて読み、
参照することにより、最もよく理解される。
【0011】
【発明の実施の形態】図を参照すると、特に図1を参照
すると、本発明により、奥行きバッファ値の高速補間を
行って2次元ディスプレイ・スクリーン上に改善したグ
ラフィック情報、特に3次元のグラフィックス・ディス
プレイを提供するデータ処理システムが示されている。
10により概要的に示すホスト・データ処理システム
は、例えばディスク・ドライブ又はCD-ROMドライブに含
まれる適当なデータ・ベース11から頂点データ(グラ
フィックス・データ)を受け取り、これが2次元的に表
示をする陰極線管(CRT)ラスタ・ディスプレイ13のス
クリーン上に3次元イメージ形式として表示されるべき
総合イメージを定義している。ホスト・データ処理シス
テム10は、例えば、ホスト・プロセッサ又は中央処理
装置(CPU)12、メモリ・コントローラ14、及びグラ
フィック・アダプタ19を含むことができ、それぞれは
接続された装置間で命令及びデータを転送するシステム
・バス18に接続されている。
【0012】ホスト・プロセッサ又は中央処理装置(CP
U)12はデータ・ベース11におけるイメージ・データ
から複数のイメージを導き出すグラフィックス・アプリ
ケーション・プログラムを実行する。メモリ・コントロ
ーラ14は、グラフィックス・アプリケーションにより
データ・ベース11に対するアクセスを制御すると共
に、ディスプレイ・ピクセル・データを発生して表示さ
れるべき総合イメージを構築する各ポイントの位置、色
及び輝度を説明する特殊化したグラフィックス処理機能
を有する。メモリ・コントローラ14は、レジスタ3
0、40、50と、加算器60と、奥行きバッファ値を
記憶して総合イメージを形成するピクセル・アレーの奥
行き関係を定義する(メモリ・コントローラ14もステ
ンシル・データ及びトランスペアレンシー(透明性)デ
ータを記憶してもよい)奥行きバッファ16とを含む。
メモリ・コントローラ14は、グラフィックス・コント
ローラ20、ビデオ・ランダム・アクセス・メモリ(VRA
M)22及びパレット(Palette)DAC24を含むグラフィッ
ク・アダプタ19に発生したディスプレイ・ピクセル・
データを転送してピクセルを処理し、2次元のCRTラ
スタ・ディスプレイ13上に表示させる。グラフィック
ス・コントローラ20は、ピクセル・データを受け取
り、またディスプレイ・ピクセル・データ、アドレス指
定情報及び制御信号を転送してビデオ・ランダム・アク
セス・メモリ(VRAM)22を更新する。VRAM22は直列デ
ータ・バスを介してパレットDAC(RAMDAC)24に直列ピ
クセル・データを供給する。パレットDAC24は受け取
ったディスプレイ・ピクセル・データを処理してアナロ
グ信号(RGB信号)に変換し、このアナログ信号(RGB信
号)は接続されているCRTラスタ・ディスプレイ13を
駆動して可視的なイメージとして提供される。
【0013】ホスト・データ処理システム10はスクリ
ーン上に多数のポリゴンを描画することにより、3次元
のグラフィック・イメージを表示して複雑な物体を構築
させる。各ポリゴン用の頂点データは座標値(x,y)、色
(r,g,b)、及び各頂点に関連する奥行き(デプス)値
(z)を有する。頂点データはデータ・ベース11から
メモリ・コントローラ14に転送される。
【0014】通常、ホスト・データ処理システム10
は、イメージの幾何学的配置を表すデータを、そのイメ
ージ用の適当な尺度、そのイメージの回転的な動き、又
はそのイメージの異なる領域の拡大を与えるデータに
「視点変換すること」を含む多数の機能を実行する。更
に、ホスト・データ処理システム10は、表示すべき総
合イメージのうちの選択領域を得るための「ボリューム
・クリッピング」処理、しばしば「ウィンドウイング(w
indowing)」と呼ばれる処理を備えている。本発明で
は、メモリ・コントローラ14は基準視点(即ち、物体
を見ようとする位置)、及び投影(即ち、物体の3次元
座標からスクリーンの2次元座標への変換)を考慮に入
れる視点変換を実行する。更に、イメージ変換では、ウ
ィンドウにおける物体の相対距離又は奥行きも考慮に入
れる。この変換はユーザにより定義された限界の外側
(即ち、表示される最も遠い/最も近い距離)のデータ
をクリップし、より近い奥行き値を有する物体により隠
された物体の部分をレンダリングすることはない。
【0015】イメージをレンダリングする際に用いられ
る奥行きデータは奥行きバッファ16に記憶され、また
色データ及び輝度データはメモリ・コントローラのフレ
ーム・バッファに直接記憶される。一方、所望の色及び
輝度をアドレスするために用いるフレーム・バッファ内
の色インデックス・データは、色ルックアップ・テーブ
ルに格納される。奥行きバッファ16は、奥行き値を保
持してそのイメージを形成する点間の奥行き関係を定義
する。VRAM22内のフレーム・バッファを特定のポリゴ
ンのピクセルにより満たすためにピクセル・データがグ
ラフィックス・コントローラ20に転送されると、メモ
リ・コントローラ14は、そのポリゴンにおける各ピク
セルの奥行き値とフレーム・バッファに前にロードした
同一のx、yを有するピクセルの奥行き値との間でピクセ
ル毎に基づく比較を行う。フレーム・バッファにロード
されたポリゴン・ピクセルがより近い奥行き値を有する
ときは、ロードされているポリゴンからのピクセルを表
すデータにより、対応する重なり合ったピクセルを重ね
書きする。これは、各ピクセルのZ奥行きがピクセルを
表示すべきか否かを制御するように、ピクセル毎に基づ
いて行われる。即ち、空間的により深い(見る者の視点
からより遠い)複数のポリゴン及び複数の縁は、見る者
により近く、かつより深いポリゴンに対する見る者の視
線及び視点に存在する他のポリゴンにより、覆い隠すこ
とが可能とされる。
【0016】頂点データからピクセル・データを生成す
ると、表示されるポリゴンの特定のスパンに沿ったピク
セルの奥行き値は、スパンに沿ったピクセルを形成する
ように頂点データにより補間される必要がある。一つの
スパンは、表示しているポリゴンの一端(即ち頂点)か
らその反対側の縁への水平走査線の1区間である。スパ
ン・ピクセル用の奥行き値の計算は、補間により行われ
る。これは、ポリゴンの縁と交差するあるラスタ走査線
の各端におけるピクセルのZ座標を計算することにより
行われる。次に、ラスタ走査線に沿った個別的な各ピク
セルのZ奥行きは、ラスタ走査線とそのポリゴンの縁と
の間の交差において、そのピクセルのZ奥行き間の線形
補間により計算される。
【0017】ここで、図2を参照すると、本発明の好ま
しい実施例により、あるポリゴンの1スパンに沿った奥
行きバッファ値について高速の補間を行い、グラフィッ
ク・アダプタ19に対してディスプレイ・ピクセル・デ
ータを正しくレンダリングさせるメモリ・コントローラ
14の更に詳細な図が示されている。メモリ・コントロ
ーラ14はアキュムレータ・レジスタ30、デルタ・レ
ジスタ40、出力レジスタ50及び加算器60を含む。
レンダリングされるべきスパンの縁に沿った第1のピク
セル用の初期奥行きバッファ値70は、奥行き値から抽
出される。二進の浮動少数点算術演算に関するANSI-IEE
E基準754-1985により表される単一精度浮動少数点数に
従って奥行きバッファ値を表すことは、一般に行われて
いることである。この基準によれば、単一精度浮動少数
点数による奥行きバッファ値70は、単一ビット72、
8ビット指数74、及び仮数の奥行きデータ76を表す
32ビットの端数を有する。
【0018】奥行き補間は、従来技術が教えているよう
に、ピクセル毎の線形差を示す完全浮動少数点の奥行き
バッファ・デルタ値により前記完全浮動少数点の奥行き
バッファ値を処理することにより行われていた。ハイエ
ンドのグラフィック・アダプタは、高価な浮動少数点レ
ジスタ及び浮動小数点加算器を用いることにより、ハー
ドウエアによる奥行き補間を行う。ローエンドのグラフ
ィック・アダプタは、ソフトウェアにより、強制的に完
全浮動小数点奥行きバッファ値を用いて奥行き補間を行
うので、グラフィックス・パフォーマンスが影響を受け
ている。本発明は、奥行きバッファを編成する方法及び
補間デルタ情報を提供するので、変形浮動少数点の加算
を行うことができる。この変形オペレーションは完全浮
動少数点の加算によりも遥かに簡単であり、かつ速い。
これは、ピクセルの変換が遥かに高価なハードウエア又
は遅いソフトウェアに代わって、より安価なハードウエ
アにより達成可能にする。この方法は、本発明の奥行き
バッファ可能メモリ・コントローラに基づいて実施さ
れ、グラフィック・アダプタに送出されるべきポリゴン
の全スパンを急速かつ安価に発生させることができる。
その結果、本発明のグラフィックス可能メモリ・コント
ローラは、2次元グラフィック・アダプタにより3次元
アプリケーションを表示するハイ・パフォーマンス、ロ
ー・コスト機能を提供する。
【0019】本発明の第1の特徴によれば、許容し得る
奥行き値の範囲は、1.0〜2.0の範囲(実際には、2.0以
下のごく小さなε)に制限される。従って、アプリケー
ションが種々の範囲、例えば0.0〜100.0又は-1.0〜1.0
にある奥行き値を用いることができる一方、メモリ・コ
ントローラ14は、奥行きバッファにおける奥行き値を
ロードする前に、浮動少数点の奥行きバッファ値を1.0
〜2.0の範囲に再マッピングする。この奥行きバッファ
範囲の選択により得られる利点は、この範囲における全
ての数のIEEE浮動少数点による表示が同一の指数値を共
有していることである。従って、この指数はチェックさ
れる必要はなく、また以下で説明され、また理解される
ように、奥行き補間中に変更される必要性はない。この
ような本発明の特徴は、奥行き補間を実行するために必
要なハードウエアを実質的に簡単化させる。
【0020】従って、本発明の第1の特徴により、32ビ
ットの初期奥行きバッファ値70は1.0と2.0との間の範
囲に制限される必要がある。符号ビット72は常に0で
あり、これはIEEE浮動少数点の形式により正の数を表し
ている。更に、IEEE浮動少数点の形式により、指数バイ
アスの値は32ビット数に対して127であり、従って8ビ
ットの指数74は「超過127」表記により0を表すとき
は「01111111」に設定される必要がある。初期奥行きバッ
ファ値70の残りの23ビットは仮数(奥行きデータ7
6)、又は初期奥行きバッファ値70の端数を形成す
る。IEEE基準は、1.000...02と1.111...12との間の値
により正規化した仮数を仮定しており、先頭ビット(値
1を表している)は常に存在するので、IEEE基準はその
表示を省略している。従って、奥行きデータ32の値にも
かかわらず、奥行きバッファ値は常に1.0と2.0と(実際
は、1.0と2.0-2−23と)の間に存在することが理解さ
れる。
【0021】図2を参照すると、奥行きデータ76の2
3ビットがアキュムレータ・レジスタ30の上位23ビ
ット(奥行きデータ32)にロードされる。32ビットのア
キュムレータ・レジスタ30の残りの下位9ビット34
が0にリセットされる。更に、全32ビットの初期奥行き
バッファ値70も出力レジスタ50にロードされる。本
発明の他の特徴によれば、デルタ・レジスタ40には、
本発明のメモリ・コントローラに用いるカスタム・メー
ド・フォーマットを有する補間中の現在スパン用のデル
タ値がロードされる。ポリゴンのスパンを描画するとき
は、ピクセル用の奥行き値、及びポリゴンのスパンは、
各スパンにおいて線形に変化する。このピクセル当りの
変化は、奥行き計算用のデルタ値と呼ばれる。このデル
タ値は表示アプリケーションにより予め計算されてメモ
リ・コントローラに供給される。このデルタ値は、-1.0
から0.999999までの範囲に及び得る端数の2の補数表示
が32ビット数である。デルタ値42(デルタ・データ)
はこのデルタ値の32ビット仮数であり(IEEEフォーマッ
トによる)、符号ビット及び指数はこのデルタ値に意図
的に除外されている。付加的な9ビットは丸めによる誤
差を最小化するように更に精度を高めている。符号ビッ
トが含まれていないので、デルタ値は2つの可能値(正
又は負)を有するが、これらの値のうちの一つのみが正
しいデルタ値となり得る。例えば、「C00000016」は
0.75又は-0.25を表すことができる。デルタ値は予め定
めた1.0〜2.0の範囲外の奥行き値を取ることができない
ことを保証しており、以下で説明しているように、加算
器60におけるオーバーフロー/アンダーフロー条件が
無視されるので、ハードウエアは自動的にデルタ・デー
タ値42の正しい値を選択する。
【0022】第1の補間を実行してスパンに沿って次の
ピクセル用の奥行きバッファ値を計算するために、図3
に示すように、アキュムレータ値が奥行き値に加算され
る。32ビットのアキュムレータ値32、34は固定点32
ビットの加算器60により32ビットのデルタ・データ値
42に加算される。この加算による32ビットの和はアキ
ュムレータ・レジスタ30に戻される。当該技術分野に
習熟する者により理解されるように、アキュムレータ値
及びデルタ値用の変更値は、これらの値の整数表示を提
供するものであり、完全な2つの浮動少数点の奥行きバ
ッファとデルタ値との間において加算オペレーションを
実行するために必要とされるよりも補間加算を極めて急
速、かつはるかに簡単に実行できるようにする。2つの
数は2の補数形式により加算され、加算器60からのキ
ャリー出力のビットは無視されるので、正しいデルタ・
データ42がアキュムレータ値32、34に加算されて
依然として1.0〜2.0の所要範囲内で新しいアキュムレー
タ値を発生させる。
【0023】図4に示すように、ピクセル・データの奥
行き補間は、浮動少数点表示によるピクセル奥行き値を
奥行きバッファに記憶することにより完了する。これ
は、32ビットのアキュムレータ値32、34の上位23
ビットを含む奥行きデータ32を出力レジスタ30の下
位23ビットにコピーすることにより達成され、これに
よって出力レジスタ50に前にロードされた初期奥行き
バッファ値70の初期の奥行きデータ76に重ね書きさ
れる。9ビットの端数34は仮数精度から単純に削除さ
れる。その後、補間中のスパンにおける次のピクセル用
の32ビット浮動少数点の奥行き値として、符号ビット7
2、指数74、及び出力奥行きデータ52を含む出力レ
ジスタ50の全32ビットを奥行きバッファ16に記憶す
ることができる。各奥行き値の指数及び符号は、全ての
奥行き値に対して常に同一なので、補間された奥行き値
の指数及び符号は、奥行き補間中にチェックされる必要
は全くなく、かつ変更される必要も全くない。
【0024】次いで、理解されるように、スパンに沿っ
た次のピクセルは、前述の処理を用いて補間される。デ
ルタ・データ値42は全スパンにわたって同一のままで
あり、従ってデルタ・レジスタ40は再ロードされな
い。これに加えて、アキュムレータ・レジスタ30は、
前のピクセルに対する補間加算により記憶されたアキュ
ムレータ値32、34を残す。従って、次の補間ステッ
プは、加算器60においてアキュムレータ値32、34
をデルタ・データ42に加算することにより実行され、
その和はアキュムレータ・レジスタ30に戻される。
【0025】その後、アキュムレータ・レジスタ30の
第1の23ビットからなる奥行きデータ32は、出力レ
ジスタ50の下位23ビットにおける出力奥行きデータ
52上に無視するようにコピーされる。次いで、32ビッ
トの出力レジスタ50の全ての内容は、スパンに沿った
次のピクセル用の32ビット浮動少数点の奥行きバッファ
値として、奥行きバッファ16に記憶される。アキュム
レータ値32、34をデルタ・データ42に加算してア
キュムレータ・レジスタ30の上位23ビットにより出
力レジスタ50の23ビットを無視するステップ、次い
で出力レジスタ50の内容を次のピクセルの奥行きバッ
ファ値として奥行きバッファ16に出力するステップ
は、補間中のピクセルの全スパンにわたり反復される。
スパンの奥行き補間を完了したときは、新しいスパンの
奥行き補間がそのスパン用の初期奥行きバッファ値70
を出力レジスタ50にロードし、かつこのアキュムレー
タ・レジスタ30の上位23ビットにおけるその初期奥
行きバッファ値の下位23ビットを記憶することによ
り、開始され、全奥行き補間処理が反復される。
【0026】ここで図5を参照すると、本発明の好まし
い実施例に従って奥行きバッファ値の高速補間の方法の
フローチャートが示されている。メモリ・コントローラ
14においてポリゴン・スパンの奥行き補間を開始する
と、ステップ100から処理が開始する。ステップ11
0において、スパンにおける第1のピクセル用の初期奥
行きバッファ値を頂点のデータ・ベース11から受け取
り、浮動少数点の形式により出力レジスタにロードす
る。メモリ・コントローラ14は、全ての奥行きバッフ
ァ値が1.0から2.0までの範囲にあること、又は代わって
供給された奥行き値の範囲を前記範囲に再マッピングし
たことを要求した。
【0027】ステップ120において、更にアキュムレ
ータ・レジスタの上位23有意ビットは、初期奥行きバ
ッファ値から下位23ビットをコピーすることによりロ
ードされ、符号及び指数がアキュムレータ・レジスタの
上位23ビットにそのまま残る必要があるので、初期ピ
クセルの奥行き値を完全に識別する。ステップ130に
おいて、32ビットのアキュムレータ・レジスタにおける
残りの下位9有意ビットは同じように0にセットされ
る、又はアキュムレータ・レジスタが初期化されるとき
は、全てのビットをリセットすることにより、このステ
ップを省略してもよい。
【0028】デルタ値はアプリケーション・プログラム
によりメモリ・コントローラに報告される。ステップ1
40において、このデルタ値を-1.0〜+0.999999の範囲
に再度マッピングして、符号ビットを含むことなく、32
ビットの2の補数による端数を発生し、次にこのデルタ
値をデルタ・レジスタにロードする。
【0029】このデルタ値150において、アキュムレ
ータ・レジスタに記憶されているアキュムレータ値が32
ビット整数の加算器によりデルタ・レジスタのデルタ値
に加算される。次いでこの加算の和をアキュムレータ・
レジスタに記憶して前のアキュムレータ値を無視する。
ステップ160において、アキュムレータ値の23上位
有意ビットを出力レジスタの23下位有意ビットに記憶
して初期奥行きバッファ値の奥行きデータを無視する。
初期奥行きバッファ値から先にロードした未変更符号ビ
ット及び指数と、アキュムレータ値の上位有意ビットと
からなる出力レジスタの32ビット内容は、このスパンに
おける次のピクセル用の出力ピクセル・データとなる。
ステップ170において、この出力ピクセル・データを
次の出力ピクセル用の奥行きバッファ値として、奥行き
バッファに記憶する。
【0030】判断ブロック180において、スパンの終
端に到達して、そのスパンにおける全てのピクセルにつ
いての奥行き補間を実行したか否かの判断をする。イエ
スであれば、ブロック190において処理を終了する。
そのスパンの終端に到達していなかったときは、処理が
ステップ150に戻り、前のピクセルに対するアキュム
レータ値を奥行き値に加算し、その和を次のピクセルに
対する新しいアキュムレータ値として記憶する。ステッ
プ160において、この新しいアキュムレータ値の23
上位有意ビットを出力レジスタの23下位有意ビットに
記憶してこのピクセルに対する奥行きバッファ値を形成
する。ステップ170において、奥行きバッファにこの
奥行きバッファ値を記憶する。次いで、ステップ180
に進んで、スパンの終端に到達したか否かを判断する。
この処理は、ポリゴンの全スパンにわたる全てのピクセ
ルを補間し、そのスパンに対する奥行き値を満たすま
で、反復される。その後、ステップ190において、こ
の処理は終了する。
【0031】完全浮動少数点によるオペレーションを用
いることなく、奥行きバッファ値の高速補間を実行する
方法を得るのが望ましいのが分かる。このような方法
は、あまり複雑でない安価なハードウエアをローエンド
及び中程度のアダプタに使用できるようにするものであ
る。このハードウエアは、グラフィック・アダプタにポ
リゴンの全てのスパンを送出する奥行きバッファ可能メ
モリ・コントローラに実施するのに適当となり、かつピ
クセルに対する変換がより遅いソフトウェアに代わっ
て、ハードウエアにより行われるので、3次元アプリケ
ーションにとってより有用なローエンド及び中程度のア
ダプタを作成することになる。
【0032】要するに、本発明の1特徴によれば、許容
し得る奥行き値の範囲を1.0〜2.0の範囲(実際には、2.
0以下のごく小さなε)に限定された。従って、この指
数は奥行き補間中にチェックされることは全くなく、ま
た変更されることも全くなく、以下で説明され、また理
解されるように、本発明のこのような特徴は奥行き補間
を実行するために必要なハードウエアを実質的に簡単化
させる。本発明の他の特徴は、整数加算器を用いて変形
浮動少数点の加算を実行できるように、奥行き値及び補
間デルタ情報を編成する方法を提供する。この変更オペ
レーションは整数加算器により実行されるので、完全浮
動少数点の加算よりはるかに簡単かつ高速である。これ
は、はるかに高価なハードウエア又は遅いソフトウェア
に代わって、より安価なハードウエアによりピクセルを
変換できるようにする。本発明は、本発明の奥行きバッ
ファ可能メモリ・コントローラにより実現され、グラフ
ィック・アダプタに送出されるべき全てのスパンのポリ
ゴンを迅速かつ安価に発生することができる。その結
果、本発明のグラフィックス可能メモリ・コントローラ
はハイパフォーマンス、ローコスト能力を提供する。従
って、本発明の奥行き補間は、3次元、科学的な可視
化、コンピュータ・アニメーション及びディジタル・ビ
デオ・アプリケーションに特に価値がある。
【0033】まとめとして次の項を開示する。
【0034】(1)グラフィックス・システムにおける
奥行きバッファ値を高速に補間する方法において、符号
ビット、指数及び仮数を有する浮動少数点の形式により
初期奥行きバッファ値を受け取るステップと、前記仮数
からアキュムレータ値を発生するステップと、デルタ奥
行き値を受け取るステップと、前記デルタ奥行き値に前
記アキュムレータ値を整数加算してその和を発生させる
ステップと、前記和と初期奥行き値の符号ビット及び指
数とからディスプレイ・ピクセル用の奥行きバッファ値
を発生するステップとを含むグラフィックス・システム
における奥行きバッファ値を高速に補間する方法。 (2)更に、前記デルタ奥行き値を前記和に加算して新
しい和を生成するステップと、前記新しい和と前記奥行
きバッファ値の符号ビット及び指数とから次のディスプ
レイ・ピクセル用の奥行きバッファ値を発生するステッ
プとを含む、前記(1)に記載のグラフィックス・シス
テムにおける奥行きバッファ値を高速に補間する方法。 (3)前記デルタ奥行き値の最上位ビットより大きい前
記和におけるキャリー・ビットは、前記ディスプレイ・
ピクセル用の奥行きバッファ値を発生させる前に前記和
から引き算される、前記(1)に記載のグラフィックス
・システムにおける奥行きバッファ値を高速に補間する
方法。 (4)前記デルタ奥行き値は浮動少数点のデルタ奥行き
値から計算される、前記(1)に記載のグラフィックス
・システムにおける奥行きバッファ値を高速に補間する
方法。 (5)前記アキュムレータ値は前記仮数及び付加的な複
数ビットから生成される、前記(1)に記載のグラフィ
ックス・システムにおける奥行きバッファ値を高速に補
間する方法。 (6) 前記アキュムレータ値は1以上の上位ビット及び
1以上の下位ビットを有し、かつ前記仮数からアキュム
レータ値を発生するステップは、前記アキュムレータ値
の上位ビットとしての前記仮数を前記アキュムレータ値
の前記下位ビットとしての下位1以上の0と連結させる
ステップを含む、前記(1)に記載のグラフィックス・
システムにおける奥行きバッファ値を高速に補間する方
法。 (7)前記奥行きバッファ値を発生するステップは、前
記奥行きバッファ値の符号ビット及び指数を前記和と連
結して浮動少数点の奥行きバッファ値を形成する、前記
(1)に記載のグラフィックス・システムにおける奥行
きバッファ値を高速に補間する方法。 (8) 前記和は1以上の下位ビットを有し、かつ前記
下位ビットは、浮動少数点の奥行きバッファ値が前記初
期奥行きバッファ値におけるビット数に等しい多数のビ
ットを有するように前記和から引き算される、前記
(7)に記載のグラフィックス・システムにおける奥行
きバッファ値を高速に補間する方法。 (9) 奥行きバッファ値は、2のべきである第1の数
と次に大きな2のべきとの間にのみ存在し得る、前記
(1)に記載のグラフィックス・システムにおける奥行
きバッファ値を高速に補間する方法。 (10)前記初期奥行きバッファ、前記アキュムレータ
値及び前記デルタ奥行き値はそれぞれ32ビットである、
前記(1)に記載のグラフィックス・システムにおける
奥行きバッファ値を高速に補間する方法。 (11)奥行きバッファ値を高速に補間するグラフィッ
クス・システムにおいて、符号ビット、指数及び仮数を
有する浮動少数点の形式により初期奥行きバッファ値を
受け取る手段と、前記仮数からアキュムレータ値を発生
する手段と、デルタ奥行き値を受け取る手段と、前記ア
キュムレータ値を前記デルタ奥行き値に整数加算して和
を生成する手段と、前記和、前記初期奥行き値の符号ビ
ット及び指数からディスプレイ・ピクセル用の奥行きバ
ッファ値を発生する手段とを含む、奥行きバッファ値を
高速に補間するグラフィックス・システム。 (12)更に、前記手段は前記デルタ奥行き値を前記和
に加算して新しい和を生成し、かつ前記新しい和と前記
初期奥行き値の前記符号ビット及び指数とから新しいデ
ィスプレイ・ピクセル用の奥行きバッファ値を生成す
る、前記(11)に記載の奥行きバッファ値を高速に補
間するグラフィックス・システム。 (13)更に、前記ディスプレイ・ピクセル用の前記デ
ルタ奥行き値を発生する前に、前記和から前記デルタ奥
行き値の最上位ビットより大きな和におけるキャリー・
ビットを引き算する手段を含む、前記(11)に記載の
奥行きバッファ値を高速に補間するグラフィックス・シ
ステム。 (14)更に、前記仮数及び付加的なビットから前記ア
キュムレータ値を発生する手段を含む、前記(11)に
記載の奥行きバッファ値を高速に補間するグラフィック
ス・システム。 (15)前記アキュムレータ値は1以上の上位ビット及
び1以上の下位ビットを有し、かつ前記仮数からアキュ
ムレータ値を発生する前記手段は、更に、前記アキュム
レータ値の前記上位ビットとしての前記仮数を前記アキ
ュムレータ値の下位ビットとしての1以上の下位0と連
結する手段を含む、前記(11)に記載の奥行きバッフ
ァ値を高速に補間するグラフィックス・システム。 (16)前記奥行きバッファ値を発生する前記手段は、
前記初期奥行き値の符号ビット及び指数を前記和と連結
して浮動少数点の奥行きバッファ値を形成する、前記
(11)に記載の奥行きバッファ値を高速に補間するグ
ラフィックス・システム。 (17)前記和は1以上の下位有意ビットを有し、かつ
前記最下位ビットは、浮動少数点の奥行きバッファ値が
前記初期奥行きバッファ値におけるビット数に等しい多
数のビットを有するように、前記手段により前記和から
引き算されて奥行きバッファ値を発生する、前記(1
6)に記載の奥行きバッファ値を高速に補間するグラフ
ィックス・システム。 (18)奥行きバッファ値は、2のべきである第1の数
と次に大きな2のべきとの間にのみ存在し得る、前記
(11)に記載の奥行きバッファ値を高速に補間するグ
ラフィックス・システム。 (19)前記初期奥行きバッファ値、前記アキュムレー
タ値及び前記デルタ奥行き値はそれぞれ32ビットであ
る、前記(11)に記載の奥行きバッファ値を高速に補
間するグラフィックス・システム。 (20)前記受け取る両手段は複数のレジスタである、
前記(11)に記載の奥行きバッファ値を高速に補間す
るグラフィックス・システム。 (21)前記加算する手段は32ビットの加算器である、
前記(11)に記載の奥行きバッファ値を高速に補間す
るグラフィックス・システム。 (22)奥行きバッファ値を高速に補間するグラフィッ
クス・システムにおいて、奥行きデータを含むグラフィ
ックス・データを有するグラフィックス・アプリケーシ
ョンを実行するホスト・プロセッサと、グラフィックス
・データをピクセル・データに変換するコントローラで
あって、前記ホスト・プロセッサから符号ビット、指数
及び仮数を有する浮動少数点の形式により初期奥行きバ
ッファ値を受け取る手段、前記仮数からアキュムレータ
値を発生する手段、前記ホスト・プロセッサからデルタ
奥行き値を受け取る手段、前記アキュムレータ値を前記
デルタ奥行き値に整数加算して和を生成する手段並びに
前記和、前記初期奥行き値の符号ビット及び指数からデ
ィスプレイ・ピクセル用の浮動少数点の奥行きバッファ
値を発生する手段を含む前記コントローラと、前記コン
トローラから各ピクセル用の奥行きバッファ値を含むデ
ィスプレイ・ピクセル・データを受け取り、かつこのデ
ィスプレイ・ピクセル・データを変換して出力ディスプ
レイ装置を駆動する信号を出力するグラフィック・アダ
プタとを含む、奥行きバッファ値を高速に補間するグラ
フィックス・システム。 (23)更に、前記手段は前記デルタ奥行き値を前記和
に加算して新しい和を生成し、かつ前記新しい和と前記
初期奥行き値の前記符号ビット及び指数とから次のディ
スプレイ・ピクセル用の奥行きバッファ値を発生する、
前記(22)に記載の奥行きバッファ値を高速に補間す
るグラフィックス・システム。 (24)更に、前記ディスプレイ・ピクセル用の前記デ
ルタ奥行き値を発生する前に、前記和から、前記デルタ
奥行き値の最上位ビットより大きな和におけるキャリー
・ビットを引き算する手段を含む、前記(22)に記載
の奥行きバッファ値を高速に補間するグラフィックス・
システム。 (25)更に、前記仮数及び付加的な複数ビットから前
記アキュムレータ値を発生する手段を含む、前記(2
2)に記載の奥行きバッファ値を高速に補間するグラフ
ィックス・システム。 (26)前記アキュムレータ値は1以上の上位ビット、
及び1以上の下位ビットを有し、更に、前記仮数からア
キュムレータ値を発生する前記手段は、前記アキュムレ
ータ値の前記上位ビットとしての前記仮数を前記アキュ
ムレータ値の下位ビットとしての1以上の下位0と連結
する手段を含む、前記(22)に記載の奥行きバッファ
値を高速に補間するグラフィックス・システム。 (27)前記奥行きバッファ値を発生する前記手段は、
前記初期奥行き値の符号ビット及び指数を前記和と連結
して浮動少数点の奥行きバッファ値を形成する、前記
(22)に記載の奥行きバッファ値を高速に補間するグ
ラフィックス・システム。 (28)前記和は1以上の下位有意ビットを有し、かつ
前記下位ビットは、浮動少数点の奥行きバッファ値が前
記初期奥行きバッファ値におけるビット数に等しい多数
のビットを有するように、奥行きバッファ値を発生する
前記手段により前記和から引き算される、前記(27)
に記載の奥行きバッファ値を高速に補間するグラフィッ
クス・システム。 (29)奥行きバッファ値は、2のべきである第1の数
と次に大きな2のべきとの間にのみ存在し得る、前記
(22)に記載のグラフィックス・システムにおける奥
行きバッファ値を高速に補間するグラフィックス・シス
テム。 (30)前記初期奥行きバッファ、前記アキュムレータ
値及び前記デルタ奥行き値はそれぞれ32ビットである、
前記(22)に記載のグラフィックス・システムにおけ
る奥行きバッファ値を高速に補間するグラフィックス・
システム。 (31)前記受け取る両手段は複数のレジスタである、
前記(22)に記載の奥行きバッファ値を高速に補間す
るグラフィックス・システム。 (32)前記加算する手段は32ビットの加算器である、
前記(22)に記載の奥行きバッファ値を高速に補間す
るグラフィックス・システム。
【図面の簡単な説明】
【図1】本発明により、奥行きバッファ値の高速補間を
実行して2次元ディスプレイ・スクリーン上に改善した
グラフィックス情報、特に3次元のグラフィックス・デ
ィスプレイを提供するデータ処理システムを示す図であ
る。
【図2】本発明の好ましい実施例により、ポリゴンのス
パンに沿って奥行きバッファ値の高速補間を行ってグラ
フィック・アダプタにディスプレイ・ピクセル・データ
を正しく描画する本発明のメモリ・コントローラを更に
詳細に示す図である。
【図3】本発明の好ましい実施例により、アキュムレー
タ値にデルタ値を加算して第1の補間を行ってスパンに
沿う次のピクセル用の奥行きバッファ値を計算する図で
ある。
【図4】本発明の好ましい実施例により、ピクセル奥行
き値を奥行きバッファに浮動少数点表示によりストアし
てピクセル・データの奥行き補間を完了することを示す
図である。
【図5】本発明の好ましい実施例により奥行きバッファ
値を高速補間する方法を示すフローチャートである。
【符号の説明】
10 ホスト・データ処理システム 12 中央処理装置(CPU) 14 メモリ・コントローラ 16 奥行きバッファ 18 システム・バス 19 グラフィック・アダプタ 20 グラフィックス・コントローラ 22 ビデオ・ランダム・アクセス・メモリ(VRA
M) 24 パレットDAC 30 アキュムレータ・レジスタ 40 デルタ・レジスタ 50 出力レジスタ 60 加算器

Claims (32)

    【特許請求の範囲】
  1. 【請求項1】グラフィックス・システムにおける奥行き
    バッファ値を高速に補間する方法において、 符号ビット、指数及び仮数を有する浮動少数点の形式に
    より初期奥行きバッファ値を受け取るステップと、 前記仮数からアキュムレータ値を発生するステップと、 デルタ奥行き値を受け取るステップと、 前記デルタ奥行き値に前記アキュムレータ値を整数加算
    してその和を発生させるステップと、 前記和と初期奥行き値の符号ビット及び指数とからディ
    スプレイ・ピクセル用の奥行きバッファ値を発生するス
    テップとを含むグラフィックス・システムにおける奥行
    きバッファ値を高速に補間する方法。
  2. 【請求項2】更に、前記デルタ奥行き値を前記和に加算
    して新しい和を生成するステップと、 前記新しい和と前記奥行きバッファ値の符号ビット及び
    指数とから次のディスプレイ・ピクセル用の奥行きバッ
    ファ値を発生するステップとを含む、請求項1記載のグ
    ラフィックス・システムにおける奥行きバッファ値を高
    速に補間する方法。
  3. 【請求項3】前記デルタ奥行き値の最上位ビットより大
    きい前記和におけるキャリー・ビットは、前記ディスプ
    レイ・ピクセル用の奥行きバッファ値を発生させる前に
    前記和から引き算される、請求項1記載のグラフィック
    ス・システムにおける奥行きバッファ値を高速に補間す
    る方法。
  4. 【請求項4】前記デルタ奥行き値は浮動少数点のデルタ
    奥行き値から計算される、請求項1記載のグラフィック
    ス・システムにおける奥行きバッファ値を高速に補間す
    る方法。
  5. 【請求項5】前記アキュムレータ値は前記仮数及び付加
    的な複数ビットから生成される、請求項1記載のグラフ
    ィックス・システムにおける奥行きバッファ値を高速に
    補間する方法。
  6. 【請求項6】前記アキュムレータ値は1以上の上位ビッ
    ト及び1以上の下位ビットを有し、かつ前記仮数からア
    キュムレータ値を発生するステップは、前記アキュムレ
    ータ値の上位ビットとしての前記仮数を前記アキュムレ
    ータ値の前記下位ビットとしての下位1以上の0と連結
    させるステップを含む、請求項1記載のグラフィックス
    ・システムにおける奥行きバッファ値を高速に補間する
    方法。
  7. 【請求項7】前記奥行きバッファ値を発生するステップ
    は、前記奥行きバッファ値の符号ビット及び指数を前記
    和と連結して浮動少数点の奥行きバッファ値を形成す
    る、請求項1記載のグラフィックス・システムにおける
    奥行きバッファ値を高速に補間する方法。
  8. 【請求項8】前記和は1以上の下位ビットを有し、かつ
    前記下位ビットは、浮動少数点の奥行きバッファ値が前
    記初期奥行きバッファ値におけるビット数に等しい多数
    のビットを有するように前記和から引き算される、請求
    項7記載のグラフィックス・システムにおける奥行きバ
    ッファ値を高速に補間する方法。
  9. 【請求項9】奥行きバッファ値は、2のべきである第1
    の数と次に大きな2のべきとの間にのみ存在し得る、請
    求項1記載のグラフィックス・システムにおける奥行き
    バッファ値を高速に補間する方法。
  10. 【請求項10】前記初期奥行きバッファ、前記アキュム
    レータ値及び前記デルタ奥行き値はそれぞれ32ビットで
    ある、請求項1記載のグラフィックス・システムにおけ
    る奥行きバッファ値を高速に補間する方法。
  11. 【請求項11】奥行きバッファ値を高速に補間するグラ
    フィックス・システムにおいて、 符号ビット、指数及び仮数を有する浮動少数点の形式に
    より初期奥行きバッファ値を受け取る手段と、 前記仮数からアキュムレータ値を発生する手段と、 デルタ奥行き値を受け取る手段と、 前記アキュムレータ値を前記デルタ奥行き値に整数加算
    して和を生成する手段と、 前記和、前記初期奥行き値の符号ビット及び指数からデ
    ィスプレイ・ピクセル用の奥行きバッファ値を発生する
    手段とを含む、奥行きバッファ値を高速に補間するグラ
    フィックス・システム。
  12. 【請求項12】更に、前記手段は前記デルタ奥行き値を
    前記和に加算して新しい和を生成し、かつ前記新しい和
    と前記初期奥行き値の前記符号ビット及び指数とから新
    しいディスプレイ・ピクセル用の奥行きバッファ値を生
    成する、請求項11記載の奥行きバッファ値を高速に補
    間するグラフィックス・システム。
  13. 【請求項13】更に、前記ディスプレイ・ピクセル用の
    前記デルタ奥行き値を発生する前に、前記和から前記デ
    ルタ奥行き値の最上位ビットより大きな和におけるキャ
    リー・ビットを引き算する手段を含む、請求項11記載
    の奥行きバッファ値を高速に補間するグラフィックス・
    システム。
  14. 【請求項14】更に、前記仮数及び付加的なビットから
    前記アキュムレータ値を発生する手段を含む、請求項1
    1記載の奥行きバッファ値を高速に補間するグラフィッ
    クス・システム。
  15. 【請求項15】前記アキュムレータ値は1以上の上位ビ
    ット及び1以上の下位ビットを有し、かつ前記仮数から
    アキュムレータ値を発生する前記手段は、更に、前記ア
    キュムレータ値の前記上位ビットとしての前記仮数を前
    記アキュムレータ値の下位ビットとしての1以上の下位
    0と連結する手段を含む、請求項11記載の奥行きバッ
    ファ値を高速に補間するグラフィックス・システム。
  16. 【請求項16】前記奥行きバッファ値を発生する前記手
    段は、前記初期奥行き値の符号ビット及び指数を前記和
    と連結して浮動少数点の奥行きバッファ値を形成する、
    請求項11記載の奥行きバッファ値を高速に補間するグ
    ラフィックス・システム。
  17. 【請求項17】前記和は1以上の下位有意ビットを有
    し、かつ前記最下位ビットは、浮動少数点の奥行きバッ
    ファ値が前記初期奥行きバッファ値におけるビット数に
    等しい多数のビットを有するように、前記手段により前
    記和から引き算されて奥行きバッファ値を発生する、請
    求項16記載の奥行きバッファ値を高速に補間するグラ
    フィックス・システム。
  18. 【請求項18】奥行きバッファ値は、2のべきである第
    1の数と次に大きな2のべきとの間にのみ存在し得る、
    請求項11記載の奥行きバッファ値を高速に補間するグ
    ラフィックス・システム。
  19. 【請求項19】前記初期奥行きバッファ値、前記アキュ
    ムレータ値及び前記デルタ奥行き値はそれぞれ32ビット
    である、請求項11記載の奥行きバッファ値を高速に補
    間するグラフィックス・システム。
  20. 【請求項20】前記受け取る両手段は複数のレジスタで
    ある、請求項11記載の奥行きバッファ値を高速に補間
    するグラフィックス・システム。
  21. 【請求項21】前記加算する手段は32ビットの加算器で
    ある、請求項11記載の奥行きバッファ値を高速に補間
    するグラフィックス・システム。
  22. 【請求項22】奥行きバッファ値を高速に補間するグラ
    フィックス・システムにおいて、 奥行きデータを含むグラフィックス・データを有するグ
    ラフィックス・アプリケーションを実行するホスト・プ
    ロセッサと、 グラフィックス・データをピクセル・データに変換する
    コントローラであって、前記ホスト・プロセッサから符
    号ビット、指数及び仮数を有する浮動少数点の形式によ
    り初期奥行きバッファ値を受け取る手段、前記仮数から
    アキュムレータ値を発生する手段、前記ホスト・プロセ
    ッサからデルタ奥行き値を受け取る手段、前記アキュム
    レータ値を前記デルタ奥行き値に整数加算して和を生成
    する手段並びに前記和、前記初期奥行き値の符号ビット
    及び指数からディスプレイ・ピクセル用の浮動少数点の
    奥行きバッファ値を発生する手段を含む前記コントロー
    ラと、 前記コントローラから各ピクセル用の奥行きバッファ値
    を含むディスプレイ・ピクセル・データを受け取り、か
    つこのディスプレイ・ピクセル・データを変換して出力
    ディスプレイ装置を駆動する信号を出力するグラフィッ
    ク・アダプタとを含む、奥行きバッファ値を高速に補間
    するグラフィックス・システム。
  23. 【請求項23】更に、前記手段は前記デルタ奥行き値を
    前記和に加算して新しい和を生成し、かつ前記新しい和
    と前記初期奥行き値の前記符号ビット及び指数とから次
    のディスプレイ・ピクセル用の奥行きバッファ値を発生
    する、請求項22記載の奥行きバッファ値を高速に補間
    するグラフィックス・システム。
  24. 【請求項24】更に、前記ディスプレイ・ピクセル用の
    前記デルタ奥行き値を発生する前に、前記和から、前記
    デルタ奥行き値の最上位ビットより大きな和におけるキ
    ャリー・ビットを引き算する手段を含む、請求項22記
    載の奥行きバッファ値を高速に補間するグラフィックス
    ・システム。
  25. 【請求項25】更に、前記仮数及び付加的な複数ビット
    から前記アキュムレータ値を発生する手段を含む、請求
    項22記載の奥行きバッファ値を高速に補間するグラフ
    ィックス・システム。
  26. 【請求項26】前記アキュムレータ値は1以上の上位ビ
    ット、及び1以上の下位ビットを有し、更に、前記仮数
    からアキュムレータ値を発生する前記手段は、前記アキ
    ュムレータ値の前記上位ビットとしての前記仮数を前記
    アキュムレータ値の下位ビットとしての1以上の下位0
    と連結する手段を含む、請求項22記載の奥行きバッフ
    ァ値を高速に補間するグラフィックス・システム。
  27. 【請求項27】前記奥行きバッファ値を発生する前記手
    段は、前記初期奥行き値の符号ビット及び指数を前記和
    と連結して浮動少数点の奥行きバッファ値を形成する、
    請求項22記載の奥行きバッファ値を高速に補間するグ
    ラフィックス・システム。
  28. 【請求項28】前記和は1以上の下位有意ビットを有
    し、かつ前記下位ビットは、浮動少数点の奥行きバッフ
    ァ値が前記初期奥行きバッファ値におけるビット数に等
    しい多数のビットを有するように、奥行きバッファ値を
    発生する前記手段により前記和から引き算される、請求
    項27記載の奥行きバッファ値を高速に補間するグラフ
    ィックス・システム。
  29. 【請求項29】奥行きバッファ値は、2のべきである第
    1の数と次に大きな2のべきとの間にのみ存在し得る、
    請求項22記載のグラフィックス・システムにおける奥
    行きバッファ値を高速に補間するグラフィックス・シス
    テム。
  30. 【請求項30】前記初期奥行きバッファ、前記アキュム
    レータ値及び前記デルタ奥行き値はそれぞれ32ビットで
    ある、請求項22記載のグラフィックス・システムにお
    ける奥行きバッファ値を高速に補間するグラフィックス
    ・システム。
  31. 【請求項31】前記受け取る両手段は複数のレジスタで
    ある、請求項22記載の奥行きバッファ値を高速に補間
    するグラフィックス・システム。
  32. 【請求項32】前記加算する手段は32ビットの加算器で
    ある、請求項22記載の奥行きバッファ値を高速に補間
    するグラフィックス・システム。
JP8262797A 1995-10-06 1996-10-03 コンピュータ・グラフィックス・ディスプレイ・システムにおける奥行きバッファ値の高速補間方法及びグラフィックス・システム Pending JPH09134452A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/540359 1995-10-06
US08/540,359 US5748863A (en) 1995-10-06 1995-10-06 Method and system for fast interpolation of depth buffer values in a computer graphics display system

Publications (1)

Publication Number Publication Date
JPH09134452A true JPH09134452A (ja) 1997-05-20

Family

ID=24155114

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8262797A Pending JPH09134452A (ja) 1995-10-06 1996-10-03 コンピュータ・グラフィックス・ディスプレイ・システムにおける奥行きバッファ値の高速補間方法及びグラフィックス・システム

Country Status (2)

Country Link
US (1) US5748863A (ja)
JP (1) JPH09134452A (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9518530D0 (en) * 1995-09-11 1995-11-08 Informatix Inc Image processing
US6115047A (en) * 1996-07-01 2000-09-05 Sun Microsystems, Inc. Method and apparatus for implementing efficient floating point Z-buffering
US5973705A (en) * 1997-04-24 1999-10-26 International Business Machines Corporation Geometry pipeline implemented on a SIMD machine
US6088701A (en) * 1997-11-14 2000-07-11 3Dfx Interactive, Incorporated Command data transport to a graphics processing device from a CPU performing write reordering operations
US6285779B1 (en) 1999-08-02 2001-09-04 Trident Microsystems Floating-point complementary depth buffer
GB0003311D0 (en) * 2000-02-15 2000-04-05 Koninkl Philips Electronics Nv Autostereoscopic display driver
US9972124B2 (en) * 2014-06-27 2018-05-15 Samsung Electronics Co., Ltd. Elimination of minimal use threads via quad merging
KR102230200B1 (ko) * 2014-07-04 2021-03-19 삼성전자주식회사 객체에 대한 바운딩 박스의 좌표 값을 표현하는 방법 및 장치
US10489877B2 (en) 2017-04-24 2019-11-26 Intel Corporation Compute optimization mechanism

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4107773A (en) * 1974-05-13 1978-08-15 Texas Instruments Incorporated Advanced array transform processor with fixed/floating point formats
US4609917A (en) * 1983-01-17 1986-09-02 Lexidata Corporation Three-dimensional display system
US4970499A (en) * 1988-07-21 1990-11-13 Raster Technologies, Inc. Apparatus and method for performing depth buffering in a three dimensional display
US5214753A (en) * 1989-07-31 1993-05-25 Shographics, Inc. Video system with parallel attribute interpolations
JP2621568B2 (ja) * 1990-01-11 1997-06-18 ダイキン工業株式会社 図形描画方法およびその装置
US5493644A (en) * 1991-07-11 1996-02-20 Hewlett-Packard Company Polygon span interpolator with main memory Z buffer
US5377313A (en) * 1992-01-29 1994-12-27 International Business Machines Corporation Computer graphics display method and system with shadow generation

Also Published As

Publication number Publication date
US5748863A (en) 1998-05-05

Similar Documents

Publication Publication Date Title
US6914610B2 (en) Graphics primitive size estimation and subdivision for use with a texture accumulation buffer
US6453065B1 (en) Floating-point complementary depth buffer
US6469700B1 (en) Per pixel MIP mapping and trilinear filtering using scanline gradients for selecting appropriate texture maps
EP0740272A2 (en) Method and apparatus for fast rendering of three-dimensional objects
JPH06203178A (ja) 画像データ処理方法及び装置
JPH06215151A (ja) 画像データ処理方法及び装置
AU2524700A (en) Method and apparatus for antialiased imaging of graphical objects
JPH0916806A (ja) 立体画像処理装置
JPH05307610A (ja) テクスチャマッピング方法およびその装置
US20040085310A1 (en) System and method of extracting 3-D data generated for 2-D display applications for use in 3-D volumetric displays
WO1994027240A1 (en) Computer graphics system having high performance multiple layer z-buffer
US6219062B1 (en) Three-dimensional graphic display device
US5973701A (en) Dynamic switching of texture mip-maps based on pixel depth value
US5651106A (en) Method and apparatus for vertex sorting in a computer graphics system
US7310103B2 (en) Pipelined 2D viewport clip circuit
JPH09134452A (ja) コンピュータ・グラフィックス・ディスプレイ・システムにおける奥行きバッファ値の高速補間方法及びグラフィックス・システム
US6859209B2 (en) Graphics data accumulation for improved multi-layer texture performance
US20030160799A1 (en) Reconfigurable hardware filter for texture mapping and image processing
US6867778B2 (en) End point value correction when traversing an edge using a quantized slope value
US5657436A (en) Preprocessing apparatus and method for line scan conversion in a computer graphics system
US5710879A (en) Method and apparatus for fast quadrilateral generation in a computer graphics system
US6927775B2 (en) Parallel box filtering through reuse of existing circular filter
US6460063B1 (en) Division circuit and graphic display processing apparatus
US6847372B2 (en) Magnified texture-mapped pixel performance in a single-pixel pipeline
JPH11328438A (ja) 高効率浮動小数点zバッファリングの方法および装置