JPH0869538A - アウトコードを用いてクリップチェックを実行する方法および装置 - Google Patents

アウトコードを用いてクリップチェックを実行する方法および装置

Info

Publication number
JPH0869538A
JPH0869538A JP7127402A JP12740295A JPH0869538A JP H0869538 A JPH0869538 A JP H0869538A JP 7127402 A JP7127402 A JP 7127402A JP 12740295 A JP12740295 A JP 12740295A JP H0869538 A JPH0869538 A JP H0869538A
Authority
JP
Japan
Prior art keywords
point
outcode
integer
coordinate
clipping window
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
JP7127402A
Other languages
English (en)
Inventor
Walter E Donovan
ウォルター・イー・ドノヴァン
Hook Timothy J Van
ティモシー・ジェイ・ヴァン・フック
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.)
Sun Microsystems Inc
Original Assignee
Sun Microsystems Inc
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 Sun Microsystems Inc filed Critical Sun Microsystems Inc
Publication of JPH0869538A publication Critical patent/JPH0869538A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/30Clipping

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】
【産業上の利用分野】本発明は、グラフィック情報を表
示するための装置及び方法に関するものである。より詳
しくは、本発明は、多次元オブジェクトを2次元スクリ
ーン上に表示する前にクリッピングが必要であるかどう
かを判断するための装置及びそのような判断を行う方法
に関する。
【0002】
【従来の技術】過去数年間にわたって、2次元及び3次
元オブジェクトを2次元表示画面(ディスプレ・スクリ
ーン)(例えば、陰極線管(ブラウン管)(CRT)、
液晶表示装置(LCD)等)上に生成し、表示するため
の様々なコンピュータ・グラフィックスシステムが開発
されている。これらのコンピュータ生成オブジェクト
は、ユーザがオブジェクトを視覚化したり、例えば、あ
る設計の航空機の翼に作用する空気力学的な力や新しい
建築構造物の構造的な完全性等のような様々な条件を分
析するのを支援するための有形のオブジェクトまたは概
念的なオブジェクトを表すことができる。これらの場
合、またその他の場合においても、プロトタイプを構築
して試験を行うより、これらのオブジェクトで実験する
方が簡単かつ安全で費用効果も高い。
【0003】コンピュータシステムは、表示画面(ディ
スプレイ・スクリーン)上にオブジェクトを表示するの
に多数の動作を逐次実行する。このような動作の1つ
に、オブジェクトのいずれかの部分がクリップ領域(す
なわちクリッピング・ウィンドウ)の外に位置して、視
野から隠れてしまうかどうかを判断するためのクリップ
チェックの実行がある。現在では、これまでに開発され
た多数のクリップチェック技術が使われている。これら
のクリップチェック技術の1つでは、コード化された2
進表現(すなわち「アウトコード」)を使用して、表示
使用とするオブジェクトの所望の点(すなわち頂点)の
特定の位置を示すことが行われる。これに関しては、J
ames D. Foley、Andries van
Dam、Steven K. Feiner及びJoh
n F. Hughes共著の「コンピュータ・グラフ
ィックスの原理と実際(Computer Graph
ics Principles and Practi
ce)」、第2版第111〜124及び271〜278
を参照のこと。
【0004】アウトコードを使用する目的は、オブジェ
クトの各点についてアウトコードを計算した後、逐次論
理演算を実行してオブジェクト全体のクリップ状態を決
定することによって、オブジェクトがクリッピング・ウ
ィンドウ内にあるかどうかを迅速に判断することであ
る。オブジェクトが完全にクリッピング・ウィンドウの
外にある場合は、そのオブジェクトは、「明白(トリビ
アル)に拒否され」、コンピュータの表示画面上に表示
されない。一方、オブジェクトが完全にクリッピング・
ウィンドウ内にあれば、そのオブジェクトは「明白に受
け入れられ」、その全体が表示される。オブジェクトが
「明白に拒否されない」か、または「明白に受け入れら
れない」場合は、さらに分析が必要となる。この再度の
分析では、オブジェクトがクリッピング・ウィンドウ外
にあるか、あるいは一部がウィンドウ内で見えるかが決
定される。
【0005】例えば、2次元の場合においては、図1に
示すように、クリッピング・ウィンドウ1がXmin 、X
max 、Ymin 及びYmax 2〜5にある4本の平面境界線
よって定義される。この例においては、A、B、C及び
Dのラベルが付された4つのオブジェクト6〜9が示さ
れており、オブジェクトA6は「明白に受け入れら
れ」、オブジェクトB7は明白に「拒否される」。さら
に、オブジェクトC8及びオブジェクトD9は、これら
の各オブジェクトがクリッピング・ウィンドウ外(例え
ば、オブジェクトC8)にあるか、あるいは一部ウィン
ドウ内で見える(例えば、オブジェクトD9)かを決定
するためにさらなる分析が必要である。
【0006】通常は、前記「コンピュータ・グラフィッ
クスの原理と実際(Computer Graphic
s PrinciplesとPractice)」の1
16ページに記載され、同276ページで論じられてい
るように、クリップチェックのために用いられるアウト
コードを決定するには、多数の条件付き分岐が使用され
る。これらの条件付き分岐及び比較は、2次元オブジェ
クトの場合2つの座標(X,Y)、3次元オブジェクト
の場合3つの座標(X,Y,Z)と正規化座標(W)を
有する各点がクリッピング・ウィンドウ内にあるかどう
かを決定するために必要である。表示しようとするオブ
ジェクトを形成する点についてのアウトコードを決定す
るために用いられる従来のプロセスを次表1に擬似コー
ドで示す。説明を分かり易くするために、明白な定数
は、ビット表示ではなくアラビア数字を用いて表示して
ある。
【0007】 従来の2次元アウトコード・アルゴリズム−表1 /*演算子の定義*/ /*(“|”)は論理OR(論理和)である*/ /*(“&”)は論理AND(論理積)である*/ Outcode="0"; if(X<Xmin),then Outcode=(Outcode| "1"); if(X>Xmax),then Outcode=(Outcode| "2"); if(Y<Ymin),then Outcode=(Outcode| "4"); if(Y>Ymax),then Outcode=(Outcode| "8");
【0008】3次元オブジェクトのクリップチェックの
ためにアウトコードを公式化するための従来の方法を表
2に擬似コードで示す。この方法は、操作の点で従来の
2次元プロセスと全体的に類似している。座標系は、効
率上の理由から同次座標(すなわち、X、Y及びZ座標
を正規化座標(W)によって割る)であることが望まし
い。図2及至4に示すように、3次元の同次のクリッピ
ング・ウィンドウ10は、−1≦X/W≦1、−1≦Y
/W≦1及び−1≦Z/W≦1の6本の平面境界線によ
って定義される。ただし、X=0、Y=0、Z=0とW
=0の無効の場合を除く。3次元オブジェクトに関する
これらのアウトコードは、一般に、3次元の各座標
(X,Y,Z)に対応した2ビット3組の連結形である
6ビットによって表される。
【0009】 従来の3次元アウトコード・アルゴリズム−表2 /*アウトコードを表すバイトを初期化する*/ Outcode=“0"; /*アウトコードの第1ビットまたは第2ビットをアクティブにする*/ if(ABS(X)>W) if(X<0),Outcode=(Outcode| "2") else Outcode=(Outcode| "1") /*アウトコードの第3ビットまたは第4ビットをアクティブにする、*/ if(ABS(Y)>W) if(Y<0),Outcode=(Outcode| "8") else Outcode=(outcode| "4") /*アウトコードの第5または第6ビットをアクティブにする*/ if(ABS(Z)>W) if(Z<0),Outcode=(Outcode| "32") else Outcode=(Outcode| "16")
【0010】その後、多数の点によって形成されるオブ
ジェクトが完全にクリッピング・ウィンドウ内にある
(「明白受け入れ」)か、あるいは完全にクリッピング
・ウィンドウ外(「明白拒否」)にあるかを決定するた
めに、それらの点のアウトコードについて論理演算が行
われる。オブジェクトは、これらの各点のアウトコード
の論理和(すなわち各ビット毎のOR)を取って合成ア
ウトコードを形成し、この合成アウトコードの全てのビ
ットが「ゼロ」に等しい場合、明白に受け入れられる。
しかしながら、オブジェクトは、これらの点のアウトコ
ードの論理積を取って合成アウトコードを形成し、その
合成アウトコードのいずれかのビットが「ノンゼロ」で
ある場合は、明白に拒否される。それ以外の場合は、さ
らに分析が必要となる。
【0011】典型的アプリケーションにおいては、表示
されるオブジェクトのほとんど全部が明白に拒否され
か、または明白に受け入れられる。さらに分析を必要と
するオブジェクトの数は、通常、表示されるオブジェク
トの1%〜10%の範囲にある。従って、明白受け入れ
及び明白拒否の段階の性能を最大にすることは、表示プ
ロセス全体の性能を最大にする上において最も重要であ
る。残念ながら、従来のクリップチェック方式には、こ
れに付随して多くの短所がある。
【0012】1つの欠点は、従来のクリップチェック機
構で実施されているソフトウェアは動作速度が非常に遅
く、現在及び次世代のプロセッサの高い処理速度を最適
利用することができないということである。このように
速度が遅いのは、ブールの条件付き分岐命令の使用に原
因がある。従って、アウトコード表現を使用し、かつブ
ールの条件付き分岐命令を除去して、クリップチェック
及び全体的ディスプレイ性能を高めるようにした新しい
クリップチェック方式を開発することが望ましいのでは
ないかと考えられる。
【0013】第2の欠点は、従来のクリップチェック機
構は、コンピュータシステムのプロセッサ内の浮動小数
点装置に依拠してオブジェクトに対する座標変換を行う
とともに、そのアウトコード値を並行方式で計算するこ
とである。浮動小数点装置は、従来浮動小数点装置に起
因する遅延は表示装置上にオブジェクトを表示する際の
総遅延時間のほんのわずかな割合でしかなかったため、
変換及びクリップチェック動作を受け持つ形で実施され
ている。従って、クリップチェック方式に関する非能率
は、あったとしても、コンピュータシステムの性能に対
しては無視できる程度の影響しか及ぼさなかった。しか
しながら、より高速のプロセッサやさらに進んだグラフ
ィック・ハードウェアの登場によって、クリップチェッ
クは、総遅延時間に占める割合がより大きくなり、コン
ピュータシステムの総合性能に対してより顕著な影響を
持つようになって来た。従って、システム全体の性能を
改善するためには、変換動作とアウトコード計算をイン
ターリーブすることが望ましいのではないかと考えられ
る。
【0014】
【発明が解決しようとする課題】クリップチェックを実
行する際の遅延がオブジェクトを表示するコンピュータ
システムの総合性能に及ぼす影響がより大きくなって来
ているので、クリップチェック方式においてアウトコー
ドを計算する際の処理時間を短くして、システム全体の
性能を最適化するための装置及び方法の必要性が存在す
ることは明かであり、本発明の目的は、そのような装置
及び方法を提供することにある。
【0015】
【課題を解決するための手段】従って、本発明は、表示
しようとするオブジェクトの点の座標を定義する浮動小
数点数の整数表現から直接アウトコードを計算するとと
もに、その整数表現のビット操作を実行して、クリッピ
ング・ウィンドウとに対するその点の相対位置を確認す
るための装置及び方法にある。
【0016】本発明の結果として、プロセッサの整数装
置は、ほぼ専用的にアウトコードの計算に用いることが
可能となる一方、プロセッサ内の浮動小数点装置もほぼ
専用的にオブジェクトをビューイング・パラメータへの
変換に用いることが可能になる。このような整数装置と
浮動小数点装置の専用化によると、変換とアウトコード
計算を並行して行うことが可能であり、システム全体の
性能が向上する。さらに、ソフトウェア制御下における
これらのアウトコード計算は、システム性能を妨げるブ
ールの条件付き分岐命令が全くなしに、整数装置によっ
て行われる。上記及びその他の本発明の特徴について
は、添付図面に示す本発明の実施例に関する以下の詳細
な説明により明らかにする。
【0017】
【実施例】
A.表記法及び用語 以下の詳細な説明は、主としてコンピュータシステム内
部におけるデータビットの操作のアルゴリズムと記号表
現に基づいて行う。アルゴリズムとは、一般に、所望の
結果に到達するためのステップの首尾一貫したシーケン
スであると考えられる。これらのステップは、物理量の
物理的操作を必要とする。これらの物理量は、常にそう
であるとは限らないが、通常は、便宜的に「ビット」と
称される電気信号または磁気信号であって、記憶、転
送、比較、結合等の操作の他、論理AND(“&”)や
論理OR(“|”)等の記号表現によって示されるよう
な操作が可能である。これらのアルゴリズムや記号表現
は、コンピュータ・グラフィックス技術分野の当業者が
その仕事の基本的内容を当技術分野の他の当業者に最も
効果的に伝達するのに用いられる手段である。
【0018】さらに、コンピュータ内部で実行されるこ
れらの操作は、ユーザによって行われる精神活動と一般
的に関連付けた形で、加算する、比較する、補数を取る
等の用語で呼ばれることがしばしばある。しかしなが
ら、本願の場合は、これらの操作は機械操作を指すもの
とする。本発明の動作や操作を実行するには、ディジタ
ルコンピュータあるいはこれと同様の装置を総じて使用
することができる。本発明は、コンピュータを動作させ
て、電気信号あるいは他の物理信号を処理し、他の所望
の物理信号を発生させて、表示しようとするオブジェク
トにクリッピングが必要かどうかを示すアウトコードを
迅速に決定する方法に関するものである。
【0019】B.詳細な説明 以下の詳細な説明においては、本発明の完全な理解を図
るために、本発明を使用するコンピュータシステムの特
定構成部分や、アウトコードのビット表現等多数の詳細
事項が記載されている。しかしながら、本発明がこれら
特定の詳細事項の記載なしでも実施可能な事は当業者に
とって明白である。
【0020】図5には、グラフィックスをサポートし、
本発明の技術を組み込んだ典型的コンピュータシステム
11が示されている。コンピュータシステム11は、入
出力(“I/O”)サブシステム12、メモリ・サブシ
ステム13及びプロセッサ・サブシステム14よりな
る。バス15は、コンピュータシステム11を形成する
これらのサブシステムの間における情報の伝達を可能に
する。図示のように、メモリ・サブシステム13は、ダ
イナミック・ランダム・アクセス・メモリ(「DRA
M」)、リードオンリーメモリ(「ROM」)、ビデオ
・ランダムアクセスメモリ(「VRAM」)等のような
少なくとも1つの記憶デバイス16を有する。記憶デバ
イス16は、本発明の方法を記述したプログラムの情
報、プロセッサ・サブシステム14で使用されるデータ
及びその他の情報を記憶するために使用される。メモリ
・サブシステム13には、記憶デバイス16へのアクセ
スを制御するためのプロセッサ・サブシステム14と記
憶デバイス16との間のインタフェースとして、メモリ
コントローラ17(図示のような)を設けてもよい。
【0021】プロセッサ・システム14は、RISCプ
ロセッサのような少なくとも1つのプロセッサ18より
なり、プロセッサ18は浮動小数点計算を行うための浮
動小数点装置(「FPU」)19及び整数計算を行うた
めの整数装置(「IU」)20を有する。プロセッサ・
サブシステム14は、I/Oサブシステム12またはメ
モリ・サブシステム13からの情報をそれぞれ処理す
る。しかしながら、処理能力を強化するために、プロセ
ッサ・システム14に複数のプロセッサを組み込むこと
も考えられる。
【0022】やはり図5に示すように、I/Oサブシス
テム12はI/Oバス21を有し、このI/Oバス21
は、バス15に直接接続されるか、あるいはI/Oバス
21とバス15の間のインタフェースとして機能するI
/Oコントローラ22を介して間接的にバス15と接続
されている。I/Oサブシステム12は、コンピュータ
システム11の通信路を形成し、オブジェクトを表示す
るための2次元表示装置23(例えば、ブラウン管、液
晶表示装置「LCD」等);情報及びコマンドの選択信
号をプロセッサ・サブシステムに伝達するためのアルフ
ァニューメリック入力装置24(例えば、アルファニュ
ーメリック・キーボード等);オブジェクトまたはウィ
ンドウの配置を制御するためのカーソル制御装置25
(例えば、マウス、トラックボール等);情報及び命令
を記憶するための大容量データ記憶装置26(例えば、
磁気テープ、ハードディスクドライブ、フロッピーディ
スク装置等);及びオブジェクトの触知可能なビジュア
ル表示を得るためのハードコピー装置27(例えば、プ
ロッタ、プリンタ等);を含む(ただしこれに限定指さ
れるものではない)I/Oバス21に結合された周辺装
置から入力情報を受け取り、あるいはこれらの周辺装置
へ情報を転送する。
【0023】表示装置にオブジェクトを示するために
は、オブジェクトを様々なビューイング・パラメータに
変換する必要があるということは周知である。このよう
な変換は、通常プロセッサ・サブシステムによって行わ
れ、場合によってはこれとグラフィック・アクセラレー
ション・ハードウェアとの組み合わせで行われることも
ある。図6に示すように、プロセッサ・サブシステム、
特にFPUによる最初の動作30は、オブジェクトの各
点に第1の変換行列を掛けることによって、定義済みの
オブジェクトをモデル座標系からワールド座標系に変換
することである。ワールド座標系においては、定義済み
のオブジェクトは、適切に回転させ、スケーリングする
ことによって空間内の典型的な位置に置かれる。
【0024】次の動作31は、オブジェクトを原点がユ
ーザの視点に固定された周知の視点座標系に変換するこ
とで、FPUによって実行される。このような変換は、
オブジェクトの各点に第2の変換行列を掛けることによ
って行われる。視点座標は図7及び8に示されており、
ビューイング・ピラミッド40は、表示装置23に対す
るユーザの選択された視点を表す。ユーザの目41は、
ビューイング・ピラミッド40の頂点をなし、その底4
2は表示装置23の視平面に対応する。図7には、多線
オブジェクトを形成する文字A〜Eで示す複数の点(す
なわち頂点)が示されている。A〜Eの各点は、32ビ
ット・プロセッサの場合IEEE標準単精度浮動小数点
表現(図9に示す)で、あるいは64ビット・プロセッ
サの場合IEEE標準倍精度浮動小数点表現で表される
座標を有する。これらの点A〜Eは、ビューイング・ピ
ラミッド40内に配置されていればユーザの目41に見
える。従って、ビューイング・ピラミッド40内に配置
されている頂点(A−D)は、表示装置23に表示され
る。これに対して、この例の場合、ビューイング・ピラ
ミッド40の外にある頂点の1つ(E)は、ユーザの目
41に見えず、従って、従来のクリッピング・アルゴリ
ズムによってクリップされる(すなわち表示されな
い)。
【0025】再度図6を参照すると、最初の2つの動作
は別個の動作として示されているが、これらの2つの動
作は、オブジェクトの各点に第1及び第2の変換行列の
関数である第3の変換行列を掛けることによって、1つ
の動作にとして結合することもできる。オブジェクトを
構成する点が視点座標系に変換されたならば、プロセッ
サ・サブシステムは、第3の動作、すなわちオブジェク
トのどの部分が完全に見えるか、どの部分が視野から隠
れるか、あるいはどの部分が一部見えるかを選択された
視点に基づきクリッピング・ウィンドウを形成する境界
線に従って決定するクリッピング・チェック32を実行
する。図7の点Eのように、クリッピング・ウィンドウ
によって定義される所定の境界線を逸脱するオブジェク
トの点は除外され(すなわち、クリッピング動作33を
経る)、表示画面上には表示されない。
【0026】オブジェクトがクリップチェック動作32
を経たならば、FPUは、クリッピング・ウィンドウ内
の視点座標系の各点を画面座標系に変換する第3の変換
34を実行し、ディスプレイ・ピラミッド(ビューイン
グ・ピラミッド)を表示装置の対応する位置にマップ
(写像)する。その後は、プロセッサ・サブシステム及
び、好ましくは、グラフィック・アクセラレーション・
ハードウェアが、クリッピング・ウィンドウ内のそれら
の各点に対応するオブジェクトの各ピクセルをアクティ
ブにする最終動作35を実行する。
【0027】このクリップチェック方式について分析す
るには、まず、オブジェクトを形成する頂点のビット表
現を認識しなければならない、図9及び10に示すよう
に、表示しようとするオブジェクトを形成する点は、3
つのフィールド、すなわちIEEE浮動小数点数の符号
ビット(“s”)52、指数フィールド(“e”)5
3、及び小数フィールド(“f”)54で構成されるビ
ット・パターンを有するIEEE標準浮動小数点数50
または51として表される。単精度浮動小数点数50の
場合、指数フィールド53及び小数フィールド54は、
それぞれ8ビットと23ビットである。倍精度浮動小数
点数51では、指数フィールド53は11ビットである
が、小数フィールド54のサイズは52ビットである。
【0028】通常は、前に表2で説明したように、3次
元オブジェクトの従来のクリップチェック・アルゴリズ
ムでは、3及至6のブールの条件付き分岐命令(一部の
命令はネストにされる)とともに、3つまたは4つの絶
対値動作を実行して、表示しようとするオブジェクトの
選択された点のアウトコードを得る。このアウトコード
は、一般に,同次座標系(X,Y,Z,W)に関連した
ものである。これらのブールの条件付き分岐命令は、一
般に、浮動小数点数の形の点の座標と3次元クリッピン
グ・ウィンドウの境界値との比較である。
【0029】従来のチェック機構と異り、本発明は、点
の浮動小数点表現を2の補数の整数として処理し、その
特定の浮動小数点の値ではなく、そのビットパターンを
用いて頂点の位置に関する情報を得ることによって、ク
リッピング・ウィンドウに関して点が見えるか、隠れる
かを決定するものである。そのために、本発明では、ア
ウトコードは、FPU(小数点装置)による変換とアウ
トコード計算を並行して行うことができるように、IU
(整数装置)によって演算される。本発明は、ブールの
条件付き分岐命令をアウトコード計算からなくすよう
に、ある整数表現及び/またはある整数表現間の差の符
号ビットの分析に重点が置かれている。
【0030】三次元クリッピングに使用されるアウトコ
ードは、6ビットまたは7ビットである。6ビット・ア
ウトコード表現は、前出の「コンピュータ・グラフィッ
クスの原理と実際」の271ページに記載されたものと
同様である。7ビット・アウトコード表現は、W<0の
オブジェクトが見えると判断しようとするときに用いら
れる。この点に関しては、「コンピュータ・グラフィッ
クス原理と実際」の276ページを参照すること。以下
の説明は、3次元クリッピング・ウィンドウが対称で、
−1≦X/W、Y/W、Z/W≦1によって正規化され
た条件で定義されているという仮定に基づいて行い、7
ビットコードを用いて説明する。6ビット・アウトコー
ドを計算するための動作は、通常の場合、オブジェクト
の全ての可視の点はW>0であるため、Wint の絶対値
が必要な計算がないという点を除いて、7ビット・アウ
トコードを計算する動作と同じである。従って、6ビッ
ト・アウトコードを計算する場合は、ステップ206〜
207を除いて以下に説明するステップ(図11参照)
を使用し、ABS(Wint )を用いる計算に替えてWin
t の整数値を用いることになる。
【0031】図11を参照して説明すると、主としてI
Uによるアウトコードの決定は、ステップ201〜21
3を通じて行われる。まず、いくつかのマクロが定義さ
れる。第1のマクロは、プロセッサの能力に従ってワー
ド中のビット数(「NUMBITS」)を得るために定
義される(ステップ201)。例えば、32ビット・プ
ロセッサの場合は、32ビットワードが選択される。こ
のステップは、浮動小数点数の整数表現(すなわち整数
としてのビットパターン)ビットサイズがプロセッサの
ビットサイズと一致するように実行される。次に、ステ
ップ202においては、浮動小数点数をその整数形式に
変換するための第2のマクロが定義される。このような
変換の理由は、整数計算は浮動小数点計算より速く、ま
たこのような変換によって、IUが以下の計算を行って
いる間FPUを他の計算のために使用する(すなわち、
1つの点の座標変換ともう1つの点のアウトコード計算
をインターリーブする)ことが可能になることである。
その後、ステップ203においては、整数形式に変換さ
れた浮動小数点数の符号ビットを得るための第3のマク
ロが定義される。この符号ビットは、整数表現をNUM
BITS−1だけ右に論理桁送りすることによって得ら
れる。最後のマクロは、整数形式の浮動小数点数の絶対
値をその符号ビットをクリアすることによって得るよう
に定義される(ステップ204)。これらのマクロ・フ
ォーマットは、演算速度とコード化の容易性を最適化す
るために用いるものであり、従ってよりコード化を優先
する場合は、なくともよい。
【0032】ステップ205においては、浮動小数点数
である点(X,Y,Z,W)の正規化座標Wが、プロセ
ッサによってそのビットパターンを保つように整数形式
へ変換され、次いで第1の整変数(「Wint 」)として
記憶される。その後、IUによる次のビット操作のため
にWint の絶対値(“ABS(Wint )”)が取られる
(ステップ206)。ただし、上に述べたように、この
ステップは必ずしも必要ではない。負の正規化座標Wを
有する場合、その点は見えないから、第1のアウトコー
ド・ビットは、Wint の符号ビットがセットされている
と、通常プロセッサ(すなわちIU)から発生する電気
信号によってアクティブ化される(すなわちセットされ
る)。Wint の符号ビットがセットされていない場合、
ほかの点では第1アウトコード・ビットはゼロである
(ステップ207)。
【0033】次の判断は、その点の第1の座標
(“X”)が3次元クリッピング・ウィンドウ内にある
かどうかを決定することである。まず、Wに関する上記
の計算と同様にXはプロセッサによってそのビットパタ
ーンを保つように整数形式に変換された後、第2の整変
数(「Xint 」)として記憶される。表2の擬似コード
に示すように、Xの値に応じてABS(X)>ABS
(W)ならば、第2または第3アウトコード・ビットは
セットされる。このように、ステップ209において
は、Wint とXint の絶対値の差の符号ビットを第3の
整変数(「DIFF」)に記憶することによって、AB
S(Wint )−ABS(Xint )が負ならば、DIFF
は値“1”を有し、負でない場合は値“0”となる。桁
送り変数(“T”)は、Xint の符号ビットが0か1か
に応じて、それぞれ1または2に等しくなるよう設定さ
れる(ステップ210)。その後、DIFFは、IUが
アウトコードの第2または第3ビットをアクティブにす
るためにこれらのビットに対応する電気信号を発生させ
るよう、左にTだけ論理桁送りされる。DIFFは、I
Uによって既にセットされたアウトコード・ビットを保
つよう、各ビット毎にアウトコードと論理和が取られる
(ステップ211)。
【0034】その後、下記の表3にC言語を用いた擬似
コードで示すように、IUがアウトコードの所要のビッ
トをアクティブ化するために電気信号を適切にアクティ
ブ化することができるよう異なる値の桁送り変数を使用
するという条件の下に、第2(“Y”)及び第3
(“Z”)の座標について上記同様の計算が実行され
る。
【0035】X、Y、Z、W座標について計算が完了し
た後では、この段階のアウトコードは、そのどのビット
もセットされていない場合、その点が表示可能であるこ
とを示す。上記のプロセスは、表示しようとするオブジ
ェクトの各点について繰り返し実行して、まず、そのオ
ブジェクトはその全体を表示可能であるか、表示不可能
か(すなわち明白に受け入れられるか、拒否されるか)
を決定することができる。オブジェクトがその全体を表
示可能な場合は、前述のように、そのオブジェクトは、
全くクリッピング・アルゴリズムを経ることなく表示装
置上に表示される。
【0036】 7ビット・アウトコードの直接計算−表3 /*追加の演算子定義 “<<x”は、“x”演算子による2進左シフト(桁送り)である。 “〜”は論理補数演算子である*/ /*ワードのビット数*/ #define NUMBITS size(long)*8 /*浮動小数点数の整数形式を得る*/ #define v(X) *(long*)&X) /*整数の符号を値0または1として得る*/ #define s(X) (((unsigned long)(X))>>(NUMBITS-1)) /*整数形式の浮動小数点数の絶対値を得る*/ #define ABS(x)) ((X)&-(1<<NUMBITS-1))) Wint =v(W); abs_w=ABS(Wint); outcode=S(Wint); /*Wの符号により0または1*/ Xint =v(X); DIFF=s(abs_w-ABS(Xint )); T=S(Xint )+1; outcode=outcode|(DIFF<<T); /*0、4または2とアウトコードとの論理 和を取る*/ Yint=v(Y); DIFF=s(abs_w-ABS(Yint); T=S(Yint)+3; outcode=outcode|(DIFF<<T); /*0、16または8とアウトドードとの論 理和を取る*/ Zint=v(Z); DIFF=s(abs_w-ABS(Zint) T=s(Zint)+5 outcode=outcode|(DIFF<<T); /*0、64または32とアウトコードの論 理和を取る*/
【0037】3次元における頂点についてのアウトコー
ドを求めるためのステップと同様、特定の論理演算の結
果についての符号ビットを分析することによって、図1
2に示すように、2次元オブジェクトの場合も条件付き
分岐をなくすことができる。まず、前に説明したよう
に、例えば、(i)浮動小数点数をその整数形式へ変換
する、(ii)整数形式に変換された浮動小数点数の符
号ビットを得る、(iii)整数形式の浮動小数点数の
絶対値を得る、等、いくつかのマクロが定義される。前
に述べたように、本発明にとって必要なのは、これらの
マクロ自体ではなく、マクロに関連する演算である。
【0038】クリッピング・ウィンドウは、通常、正方
向配向される(すなわち0≦Xmin≦Xmax ;0≦Ymin
≦Ymax )から、表1の擬似コードで示す従来のアウ
トコード計算は、「AND」が条件付きAND、「O
R」が「条件付き「OR」の場合、下記と等価である。
【0039】(1)if((X<0 AND X<Xmin) OR (X≧0 AND
X<Xmin)),then set firstbit of the outcode; (2)if((X<0 AND X>Xmax) OR (X≧0 AND X>Xmax)),th
en set thesecond bit of the outcode; (3)if((Y<0 AND Y<Ymin) OR (Y≧0 AND Y<Ymin)),th
en set thethird bit of the outcode; (4)if((Y<0 AND Y>Ymax) OR (Y≧0 AND Y>Ymax)),th
en set thefourth bit of the outcode.
【0040】Xmin、Xmax、Ymin、Ymax≧0というこ
とを考慮すると、上記の式は次式ように簡単化すること
ができる。
【0041】(1)if((X<0) OR (X≧0 AND X<Xmin)),t
hen set first bit of theoutcode; (2)if(X≧0 AND X>Xmax),then set the second bit
of theoutcode; (3)if((Y<0) OR (Y≧0 AND Y<Ymin)),then set the
third bit ofthe outcode; (4)if(Y≧0 AND Y>Ymax),then set the second bit
of theoutcode.
【0042】従って、これらの式を絶対値を用いるよう
に変形すると、下記のようになる。 (1)if((X<0) OR (ABS(X)<Xmin)),then set first bi
t of theoutcode; (2)if(X≧0 AND ABS(X)>Xmax),then set the second
bit of theoutcode; (3)if((Y<0) OR (ABS(Y)<Ymin)),then set third bi
t of theoutcode; (4)(Y≧0 AND ABS(Y)>Ymax),then set the fourth b
it of theoutcode;
【0043】マクロ(マクロを用いる場合)が定義され
た(ステップ301)後は、クリッピング・ウィンドウ
を形成する境界値、すなわちXmin 、Xmax 、Ymin 、
Ymax が、INTXmin 、INTXmax 、INTYmin
、INTYmax として整数形式で記憶される(ステッ
プ302)。ステップ303においては、浮動小数点数
である第1の点(X1、Y1)の横座標X1がそのビッ
トパターンを保って整数形式に変換され、次いで第1の
整変数(「X1int 」)として記憶される。その後、X
1int の絶対値が取られ(「ABS(X1int )」)、
IUによる次のビット操作のため第2の整変数として記
憶される(ステップ304)。ステップ305において
は、X1int の符号ビット、またはABS(X1int )
と第1の境界値INTXmin との差の符号ビットのどち
らかが、X1がクリッピング・ウィンドウ外にあること
を示す“1”(すなわち、セットされている)であるか
どうかの判断が行われる。より詳しくは、どちらかの符
号ビットがセットされていると、X1<0またはABS
(X1int )<INTXmin で、これらはどちらもX1
がクリッピング・ウィンドウ外にあることを示すから、
アウトコードの第1のビットをアクティブにする電気信
号を発生させるプロセッサ、すなわちIUによってアウ
トコードの第1ビットがセットされる。
【0044】ステップ306においては、X1int の論
理補数(〜X1int )及び第2の境界値の整数値INT
Xmax とABS(X1int )との差の両方の符号ビット
がセットされているかどうかに関する第2の判断が行わ
れる。これらの両符号ビットがセットされていれば、A
BS(X1int )>INTXmax でX1がクリッピング
・ウィンドウ外にあることを示して、X1int ≧0かつ
INTXmax −ABS(X1int )<0のときは、X1
int の論理補数の符号ビットがセットされるので、アウ
トコードの第2ビットがIUによってセットされる。ア
ウトコードは逐次論理和が取られるために、上記と同じ
手順が第1の点の縦座標(“Y1”)ついて繰り返され
(ステップ307)、最終のアウトコード値が決定され
る。次に、このようにして得られたアウトコードは、点
がクリッピング・ウィンドウ外にあるかどうかを示すた
めに通常のごとくクリップチェック機構で使用され、ま
た複数のアウトコードを用いて、2つの頂点を結ぶオブ
ジェクトの部分が、明白に受け入れられる(両法のアウ
トコードの各ビット毎の論理和がゼロになる)か、明白
に拒否される(両方のアウトコードの論理積がノンゼロ
の数になる)か、あるいはクリッピングが必要かを決定
することができる。これらのアウトコードの計算を次表
4に示す。
【0045】 2次元オブジェクトのアウトコードの直接計算−表4 /* マクロのNUMBITS、v(X)s(X)及びABS(X)を定義 する*/ /*これらの値は、通常、1回計算された後、キャッシュに記憶される*/ INTXmin =v(Xmin ); INTXmax =v(Xmax ); INTYmin =v(Ymin ); INTYmax =v(Ymax ); /*これらのビットと絶対値を得る*/ Xint =v(X); ax=ABS(Xint); /*アウトコードの第1ビットに符号ビットを入れる*/ outcode=s(Xint|(ax-INTXmin )); /*アウトコードの第2ビットに符号ビットを入れる*/ outcode=outcode|s(〜Xint &(INTXmax -ax))<<1; /*Yについて上記と同じ動作を実行する*/ Yint =v(Y); ay=ABS(Yint ); /*アウトコードの第3ビットに符号ビットを入れる*/ outcode=outcode|s(Yint|(ay-INTYmin ))<<2; /*アウトコードの第4ビットに符号ビットを入れる*/ outcode=outcode|s(〜Yint &(INTYmax -ay))<<3;
【0046】本願発明は、様々な方法で、また様々な構
成により設計することができる。本発明は様々な実施例
により説明したが、当業者ならば、本発明の範囲及び要
旨を逸脱することなくその他の実施態様を想到すること
が可能である。従って、本発明は、特許請求の範囲の記
載に従い解釈するべきである。
【図面の簡単な説明】
【図1】 2次元クリッピング・ウィンドウ及びその周
囲領域の平面図である。
【図2】 同次X座標の3次元クリッピング・ウィンド
ウの平面図である。
【図3】 同次Y座標の3次元クリッピング・ウィンド
ウの平面図である。
【図4】 同次Z座標の3次元クリッピング・ウィンド
ウの平面図である。
【図5】 本発明を使用したソフトウェアを実行するコ
ンピュータシステムのブロック図である。
【図6】 オブジェクトの生成後、そのオブジェクトを
表示装置上に表示するためにコンピュータシステムによ
り行われる動作ブロック図である。
【図7】 ビューイング・ピラミッド内のオブジェクト
の斜視図である。
【図8】 表示装置によるオブジェクトの斜視図であ
る。
【図9】 点の座標を表すために使用される32ビット
IEEE標準浮動小数点数のブロック図である。
【図10】 点の座標を表すために使用される64ビッ
トIEEE標準浮動小数点数のブロック図である。
【図11】 本発明を実施するに際して、3次元オブジ
ェクトの場合に7ビット・アウトコードを決定するため
のステップの概要を示すフローチャートである。
【図12】 本発明を実施するに際して、2次元オブジ
ェクトの場合に4ビット・アウトコードを決定するため
のステップの概要を示すフローチャートである。
【符号の説明】
11 バス、12 I/Oサブシステム、13 メモリ
サブシステム、14 プロセッサ・サブシステム。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ティモシー・ジェイ・ヴァン・フック アメリカ合衆国 94025 カリフォルニア 州・メンロ パーク・ワース アヴェニ ュ・1124

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 浮動小数点装置装置及び整数装置を含む
    プロセッサ及び表示装置を有するコンピュータシステム
    により生成され、複数の境界値を有するクリッピング・
    ウィンドウに対して多次元オブジェクトの少なくとも第
    1の点の位置を決定するように、アウトコードを用いて
    クリップチェックを実行する方法において、 上記プロセッサによって上記第1の点の第1の座標を第
    1のビットパターンを有する浮動小数点数表現から上記
    第1のビットパターンを有する整数表現に変換するステ
    ップと、 上記整数装置によって上記第1の座標が上記クリッピン
    グ・ウィンドウ外にあるかどうかを計算し、上記第1の
    座標が上記クリッピング・ウィンドウ外にある場合に、
    上記アウトコードのビットをアクティブにするステップ
    と、 上記プロセッサによって上記第1の点の第2の座標を第
    2のビットパターンを有する浮動小数点数表現から上記
    第2のビットパターンを有する整数表現に変換するステ
    ップと、 上記整数装置によって上記第2の座標が上記クリッピン
    グ・ウィンドウ外にあるかどうかを計算し、上記第2の
    座標が上記クリッピング・ウィンドウ外にある場合に、
    上記アウトコードのもう1つのビットをアクティブする
    ステップと、 上記アウトコードのビットがどれもアクティブでない場
    合に、上記表示装置によって上記第1の点を表示するス
    テップと、を具備した方法。
  2. 【請求項2】 各座標が浮動小数点数表現によって表さ
    れる複数の座標を有し、少なくとも第1の点を含むオブ
    ジェクトが、複数の境界値を有するクリッピング・ウィ
    ンドウ内にあるかどうかを決定して、上記オブジェクト
    を浮動小数点装置及び整数装置を含むプロセッサを有す
    るコンピュータシステムの表示装置上に表示するよう
    に、複数のビットを有するアウトコードを用いてクリッ
    プチェックを実行する方法において、 上記プロセッサ及び上記表示装置と結合されていて、上
    記オブジェクトを形成する点を表すデータを記憶するた
    めの記憶装置を設けるステップと、 上記複数の各座標を浮動小数点数表現から上記浮動小数
    点数表現と同じビットパターンを有する整数表現に変換
    するステップと、 上記整数装置によって上記複数の各座標が上記クリッピ
    ング・ウィンドウ外にあるかどうかを決定するステップ
    と、 上記アウトコードを形成する上記複数のビットがいずれ
    もセットされていないとき上記第1の点が表示可能であ
    ることを指示するステップで、上記整数装置が、上記第
    1の点の上記複数の座標の中の第1の座標が上記クリッ
    ピング・ウィンドウ外にある場合に、上記アウトコード
    の第1の一対のビットの1つをアクティブにするための
    第1の信号を発生させ、上記整数装置が、上記第1の点
    の上記複数の座標の中の第2の座標が上記クリッピング
    ・ウィンドウ外にある場合に、上記アウトコードの第2
    の一対のビットの1つをアクティブにするための第2の
    信号を発生させるステップと、;上記オブジェクトを形
    成する上記複数の各点について上記ステップを繰り返し
    実行して、上記オブジェクトがその全体を表示可能かど
    うかを判断するステップと、 表示可能と判断された上記オブジェクトを上記表示装置
    によって表示するステップと、を具備した方法。
  3. 【請求項3】 オブジェクトの少なくとも1点の複数の
    境界値を有するクリッピング・ウィンドウに関する位置
    を決定する際のクリップチェックの性能を強化する方法
    で、上記少なくとも1点の中の第1の点は、上記クリッ
    ピング・ウィンドウ外にある場合は、浮動小数点装置及
    び整数装置を含むプロセッサを有するコンピュータシス
    テムの表示装置上に表示されず、上記第1の点が、浮動
    小数点数表現の第1及び第2の座標を共に有する方法に
    おいて、 上記プロセッサを使用して上記第1の座標を第1のビッ
    トパターンを有する上記浮動小数点数表現から上記第1
    のビットパターンと同じビットパターンを有する整数表
    現に変換するステップと、 上記整数装置を使用して上記オブジェクトに関連するア
    ウトコードを計算するステップと、 上記表示装置を使用して上記アウトコードに基づき上記
    オブジェクトを表示するステップと、を具備した方法。
  4. 【請求項4】 多次元オブジェクトが浮動小数点数とし
    て表される少なくとも第1及び第2の座標を有する第1
    の点を有していて、プロセッサ、記憶デバイス及び表示
    装置を有するコンピュータシステムによって生成され、
    複数の境界値を有するクリッピング・ウィンドウに対す
    る前記多次元オブジェクトの位置を決定するようにアウ
    トコードを用いてクリップチェックを実行する装置にお
    いて、 上記プロセッサ内にあって、上記の第1及び第2の座標
    の整数表現のビット操作によって上記多次元オブジェク
    トを形成する上記第1の点が上記クリッピング・ウィン
    ドウ外にあると判断した場合に、上記多次元オブジェク
    トが上記クリッピング・ウィンドウ外にあることを示す
    上記アウトコードのビットをアクティブにするための信
    号を発生させる整数装置、を具備した装置。
  5. 【請求項5】 多次元オブジェクトが複数の境界値を有
    するクリッピング・ウィンドウ内にある場合に上記多次
    元オブジェクトを表示するコンピュータシステムにおい
    て、 各々いずれも浮動小数点数として表される少なくとも第
    1及び第2の座標を有する複数の点を含む上記多次元オ
    ブジェクトのデータを記憶するための記憶デバイスと、 上記多次元オブジェクトを処理するためのプロセッサ
    で、 上記多次元オブジェクトを少なくとも第1の座標系から
    第2の座標系に変換するための浮動小数点装置と、 上記多次元オブジェクトが表示可能かどうかを計算する
    ための手段で、上記多次元オブジェクトの上記複数の各
    点についてアウトコードを決定し、上記複数の点の中の
    第1と第2の点に対応する第1と第2のアウトコードと
    の間で論理演算を実行して、結果アウトコード得、上記
    結果アウトコードと上記複数の点の中の第3の点に対応
    する第3のアウトコードとの間で逐次論理演算を実行す
    るとともに、これと同様にして逐次論理演算を実行し続
    ける手段と、を有するプロセッサと、 上記多次元オブジェクトを形成する上記複数の点の中の
    最後の点についての逐次論理演算後に、上記結果アウト
    コードの値に基づいて上記多次元オブジェクトを表示す
    るための表示装置と、 上記記憶デバイス、上記プロセッサ及び上記表示装置を
    違いに結合するためのバスと、を具備したコンピュータ
    システム。
JP7127402A 1994-04-28 1995-04-28 アウトコードを用いてクリップチェックを実行する方法および装置 Pending JPH0869538A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US23651094A 1994-04-28 1994-04-28
US236510 1994-04-28

Publications (1)

Publication Number Publication Date
JPH0869538A true JPH0869538A (ja) 1996-03-12

Family

ID=22889816

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7127402A Pending JPH0869538A (ja) 1994-04-28 1995-04-28 アウトコードを用いてクリップチェックを実行する方法および装置

Country Status (4)

Country Link
US (1) US5638500A (ja)
EP (1) EP0680020B1 (ja)
JP (1) JPH0869538A (ja)
DE (1) DE69529544T2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6581087B1 (en) 1999-12-17 2003-06-17 Mitsubishi Denki Kabushiki Kaisha Floating point adder capable of rapid clip-code generation

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5905500A (en) * 1997-02-19 1999-05-18 Seiko Epson Corporation Method and apparatus for adaptive nonlinear projective rendering
US6037947A (en) * 1997-10-16 2000-03-14 Sun Microsystems, Inc. Graphics accelerator with shift count generation for handling potential fixed-point numeric overflows
US6591361B1 (en) 1999-12-28 2003-07-08 International Business Machines Corporation Method and apparatus for converting data into different ordinal types
US6701424B1 (en) 2000-04-07 2004-03-02 Nintendo Co., Ltd. Method and apparatus for efficient loading and storing of vectors
US6859862B1 (en) 2000-04-07 2005-02-22 Nintendo Co., Ltd. Method and apparatus for software management of on-chip cache
US6857061B1 (en) 2000-04-07 2005-02-15 Nintendo Co., Ltd. Method and apparatus for obtaining a scalar value directly from a vector register
JP3855270B2 (ja) * 2003-05-29 2006-12-06 ソニー株式会社 アンテナ実装方法
US20080001961A1 (en) * 2006-06-30 2008-01-03 Nokia Corporation High Dynamic Range Texture Filtering
US8386544B2 (en) * 2009-02-05 2013-02-26 Oracle International Corporation Managing floating point variables in constraint satisfaction problems
CN104035680A (zh) * 2014-06-16 2014-09-10 中国科学院长春光学精密机械与物理研究所 采用fpga实现楔条形光子计数探测器图像处理的方法
GB2564130B (en) * 2017-07-04 2020-10-07 Advanced Risc Mach Ltd An apparatus and method for controlling execution of instructions

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5040130A (en) * 1988-09-20 1991-08-13 International Business Machines Corporation Computer graphics boundary--defined area clippping and extraneous edge deletion method
JP2836086B2 (ja) * 1989-03-10 1998-12-14 セイコーエプソン株式会社 文字パターンデータ発生装置
US5079719A (en) * 1989-06-09 1992-01-07 Sun Microsystems, Inc. Method and apparatus for clipping polygons
CA2060039C (en) * 1992-01-24 1999-02-02 Adrian H. Hartog Line draw pre-clipping method
US5357600A (en) * 1992-10-15 1994-10-18 Sun Microsystems, Inc. Method and apparatus for the rendering of curved surfaces using a cone of normals

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6581087B1 (en) 1999-12-17 2003-06-17 Mitsubishi Denki Kabushiki Kaisha Floating point adder capable of rapid clip-code generation

Also Published As

Publication number Publication date
EP0680020A2 (en) 1995-11-02
EP0680020B1 (en) 2003-02-05
DE69529544T2 (de) 2003-12-11
US5638500A (en) 1997-06-10
DE69529544D1 (de) 2003-03-13
EP0680020A3 (en) 1997-07-02

Similar Documents

Publication Publication Date Title
US5973705A (en) Geometry pipeline implemented on a SIMD machine
EP2876606B1 (en) A graphics processing architecture employing a unified shader
US6417858B1 (en) Processor for geometry transformations and lighting calculations
US8643644B2 (en) Multi-stage tessellation for graphics rendering
US8615542B2 (en) Multi-function floating point arithmetic pipeline
US20240303076A1 (en) Generalized acceleration of matrix multiply accumulate operations
JP3030206B2 (ja) グラフィック多角形をクリップ領域にクリップする方法および装置
US6166743A (en) Method and system for improved z-test during image rendering
US6989843B2 (en) Graphics system with an improved filtering adder tree
KR19990072375A (ko) 고정소수점라이팅유닛의로컬눈벡터의고속계산
US5003497A (en) Method for three-dimensional clip checking for computer graphics
JP2601960B2 (ja) データ処理方法及びその装置
JPH0935075A (ja) 高性能プリミティブ・クリッピング・プリプロセシングを有するコンピュータ・グラフィックス・システム
JPH0869538A (ja) アウトコードを用いてクリップチェックを実行する方法および装置
US7400325B1 (en) Culling before setup in viewport and culling unit
WO1998021636A2 (en) Dynamic enhancement/reduction of graphical image data resolution
US6847364B1 (en) Methods and apparatus for creating three-dimensional motion illusion in a graphics processing system
US7292239B1 (en) Cull before attribute read
US20030160799A1 (en) Reconfigurable hardware filter for texture mapping and image processing
US6681237B1 (en) Exponentiation circuit for graphics adapter
US6847378B2 (en) System and method for performing scale and bias operations by preclamping input image data
JPH10293853A (ja) クリップ処理装置
KR19990081418A (ko) 그래픽 처리에 있어서 클리핑 처리방법
US6654777B1 (en) Single precision inverse square root generator
US6778174B1 (en) Method and apparatus for attribute processing with an active pipeline stage in a data processing system

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050524

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050714

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050809

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060117