JP4644353B2 - 3次元グラフィックスのための頂点キャッシュ - Google Patents
3次元グラフィックスのための頂点キャッシュ Download PDFInfo
- Publication number
- JP4644353B2 JP4644353B2 JP2000326915A JP2000326915A JP4644353B2 JP 4644353 B2 JP4644353 B2 JP 4644353B2 JP 2000326915 A JP2000326915 A JP 2000326915A JP 2000326915 A JP2000326915 A JP 2000326915A JP 4644353 B2 JP4644353 B2 JP 4644353B2
- Authority
- JP
- Japan
- Prior art keywords
- vertex
- cache
- data
- memory
- vertex data
- 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.)
- Expired - Lifetime
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0875—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- Software Systems (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- Image Generation (AREA)
- Controls And Circuits For Display Device (AREA)
- Image Input (AREA)
- Image Processing (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
【発明の分野】
この発明は3次元対話型コンピュータグラフィックスのための頂点キャッシュに関し、より詳細には、アニメーションおよび表示処理のための頂点情報を効率的に表現および保存するための構成および技術に関する。さらにまた、この発明は特に、3次元ポリゴンデータのより効率的な映像化のための頂点キャッシュを含む3次元グラフィックス集積回路に関する。
【0002】
【発明の背景】
現代の3次元グラフィックスシステムは、表示要素(すなわち、ポリゴン)からアニメーション化された表示を作り上げる。各表示オブジェクト(たとえば木,自動車もしくは人物または他のキャラクタ)は、典型的には、多数のポリゴンから構築される。夫々のポリゴンは、他の特徴(たとえば色,濃淡付けのための表面法線,テクスチャなど)とともにその頂点によって表され、この頂点が3次元空間におけるポリゴンの位置,向きおよび大きさを特定する。コンピュータ技術は、これらの技術を使用してアニメーション化された3次元グラフィックスシーンを効率的に構築することができる。
【0003】
ビデオゲームシステムのような低コストの高速対話型(interactive) 3次元グラフィックスシステムは、メモリおよび処理資源によって構築される。したがって、このようなシステムでは、表示オブジェクトを表す種々のポリゴンを効率的に表現および処理できることが重要である。たとえば、表示オブジェクトをコンパクトに表現するデータを作成して、特定のタスクのために必要な全てのデータが便利に利用可能であるような方法で、そのデータを3次元グラフィックスシステムに提示することが望ましい。
【0004】
或るものは、時間的局所性および空間的局所性に関してデータを特徴付けすることができる。時間的局所性とは、同じデータが短い時間の間に頻繁に参照されることを意味する。一般に、3次元対話型グラフィックスアプリケーションのためのポリゴン表現データは、大きな時間的局所性を有する。空間的局所性とは、参照される次のデータ項目が、最後に参照された項目に近接したメモリに保存されることを意味する。効率の改善は、データの空間的局所性を増やすことによって実現することができる。無制限量のデータに対し、無制限に低いレイテンシのランダムアクセスを許容しない実際のメモリシステムにおいては、所定のタスクを実行するために必要とされる全てのデータが、低いレイテンシのメモリに近接して一緒に保存されれば性能はよくなる。
【0005】
データの空間的局所性を増やすために、確実に特定のタスクを実行するために必要な全てのデータがほとんど同時に提供されるように一緒に保存しておいて、処理の順序に基づいてポリゴンデータをソーティングすることができる。たとえば、アニメーションを形成するポリゴンデータは、実行されているアニメーションの種類に対して優先的であるような方法で保存することができる。一つの例として、表面変形(surface deformation) のような典型的な複雑な対話型リアルタイムアニメーションは、表面における全ての頂点の操作を必要とする。このようなアニメーションを効率的に実行するためには、一定の方法で頂点データをソーティングするのが望ましい。
【0006】
典型的な3次元グラフィックスシステムは、アニメーション処理および表示処理を別々に実行し、これらの別々の工程はデータを異なる方法で処理する。残念なことに、アニメーション処理のための頂点データをソーティングする最適順序は、一般に、表示処理のための最適なソーティング順序とは異なる。アニメーションのためのソーティングは、表示順序に対してランダム性を加えるようにしてもよい。アニメーション処理を単純化するためにデータストリームをソーティングすることによって、データを効率的に表示することを一層困難にしてしまう。
【0007】
したがって、種々の理由で、表示のためのデータにアクセスするときに空間的局所性が存在することを仮定することは困難かも知れない。困難性は、任意の大きな表示オブジェクトに効率的にアクセスする必要性から生じる。加えて、上記で説明した理由で、少なくとも表示目的については、表示エンジンに提供される頂点データの順序には、典型的には幾らかのランダム性が存在するであろう。さらに、実施に有用であり得る頂点レベルを超えるような他のデータ局所性が存在するであろう(たとえば、一定のテクスチャを共有する全てのポリゴンを一緒にグループ化すること)。
【0008】
より高い効率を達成するための1つのアプローチは、低いレイテンシの追加メモリ(たとえば手頃な中で、最も低いレイテンシのメモリシステム)を準備することである。また、高速ローカルメモリ中に表示オブジェクトを適合させて、ランダムアクセスを達成することも可能であろう。しかし、オブジェクトが非常に大きい可能性がないとはいえず、また二重にバッファする必要があるかもしれない。したがって、このようなアプローチのために必要とされるバッファは非常に大きくなる可能性がある。
【0009】
また、メインCPUのデータキャッシュを使用して、表示エンジンのための最適順序で、ポリゴンデータをアセンブルしソーティングすることが可能であるかもしれない。しかし、これを効率的に行うには、ポリゴンデータがデータキャッシュの残部をスラッシング(thrashing) するのを防止する方法が必要であろう。加えて、データを先取り(prefetch) してメモリのレイテンシを隠す必要があるであろう。なぜなら、表示順序のためにソーティングされた偶数データがアクセスされる方法において、幾らかのランダム性が存在する可能性があるからである。さらに、このアプローチは、CPUに対して追加の負荷を与えるであろう。特に、或る具体化においては、表示エンジンが解釈できる2値フォーマットにデータをアセンブルすることが必要であるからである。このアプローチを使用することにより、メインCPUおよび表示エンジンは直列になり、CPUはデータをグラフィックスエンジンに直接供給する。処理を並列化すること(たとえば、表示エンジンを、DRAM FIFOバッファを介して供給すること)は、直接モードの供給に比較して、実質的に追加のメモリアクセスバンド幅を必要とするであろう。
【0010】
したがって、3次元グラフィックス表示プロセスのためのポリゴンデータを表現し、保存し供給するために使用できるさらに効率的な技術の必要性が存在している。
【0011】
【発明の概要】
この発明は、索引付きプリミティブ頂点データストリームを編成する頂点キャッシュを提供することにより、この問題を解決するものである。
【0012】
この発明により提供される1つの局面に従えば、ポリゴン頂点データは、頂点キャッシュを介して表示(グラフィックス)エンジンに供給される。頂点キャッシュは、表示エンジンハードウエア(たとえばその一部)に対してローカルな、低いレイテンシの小規模のメモリでよい。実際のキャッシュの中身よりもはるかに大きい仮想メモリビューを与えるキャッシュから融通性および効率性が生じる。
【0013】
頂点キャッシュは、必要なときに、オンザフライの表示処理のために必要な頂点データを形成するために使用してもよい。したがって、表示目的のために頂点データを予めソーティングするのではなく、頂点キャッシュは、関連ブロックのデータを必要なときに単純に取得して、これを表示プロセサが利用できるようにする。対話型ビデオゲーム表示のための頂点データによって示される高度の時間的局所性、および特定の最適な索引付きアレイデータ構造(下記参照)に基づいて、何れかの時点で必要とされる殆どの頂点データが、頂点データストリームの数に比例した数のキャッシュラインを有する比較的小規模のセットアソシアティブ頂点キャッシュ(small set-associative vertex cache) においてでも入手可能であることを見出した。最適構成の一例は、8セットアソシアティブ頂点キャッシュを形成する512×128ビットのデュアルポートRAMを提供する。
【0014】
グラフィックスエンジンに頂点を供給する目的で、頂点キャッシュおよび関連タグをカスタマイズしかつ最適化することによって効率を増大させることができ、汎用のキャッシュおよびタグ構造を使用した場合よりも、さらに効率的な頂点の先取り(prefetching) およびアセンブル(assembling) を可能にする。頂点キャッシュはデータを表示エンジンに直接供給することを可能にするので、追加のメモリアクセスバンド幅のコストが回避される。ダイレクトメモリアクセスを使用して、頂点キャッシュへ頂点データを効率的に転送してもよい。
【0015】
頂点キャッシュにより与えられる効率をさらに増大させるためには、特定のポリゴンまたはポリゴンの組を、それ(ら)が使用される度毎に完全に再特定(re-specify)する必要性を低減することが望ましい。この発明により提供される別の局面に従えば、ポリゴンはアレイ、たとえば頂点の幾つかの特徴を表すデータ成分の線形リスト(たとえば位置,色,表面法線(surface normal),またはテクスチャ座標)として表現することができる。夫々の表示オブジェクトは、種々の組の索引とともに、このようなアレイの集合として表現することができる。これらの索引は、特定のアニメーションまたは表示目的のためのアレイを参照する。ポリゴンデータを索引付き成分のリストとして表すことによって、マッピング間で不連続性が許容される。さらに、個々の成分(コンポーネント)を分離することは、データをよりコンパクトに保存する(たとえば、より完全に圧縮されたフォーマットで)ことを可能にする。この発明によって与えられる頂点キャッシュは、索引サイズ以下のこのような索引付きデータのストリームを収容することができる。
【0016】
頂点キャッシュに関連して索引付き頂点表現を使用することにより、表示目的のためにいかなる再ソーティングの必要性も存在しない。たとえば、アニメーションのために予めソーティングされた表示とは逆の順序で、頂点データを表示エンジンに提供し、アニメーションをより効率的なプロセスにしてもよい。頂点キャッシュは、索引付き頂点データ構造表現を使用して、明確な再ソーティングを何等必要とせずに、効率的に、頂点データを表示エンジンが利用可能にする。
【0017】
いかなる頂点成分も、コマンドストリームにおいて索引参照されることができ、または直接インライン化されることができる。このことは、グラフィックス表示データ構造に沿ったメインプロセサの出力を必要とせずに、メインプロセサによる効率的なデータ処理を可能にする。たとえば、メインプロセサにより実行されるライティング操作は、色アレイを発生させるライティングパラメータのリストをループ処理することによって、法線および位置のリストから色アレイのみを発生させてもよい。アニメーションプロセスが3角形リスト表示データ構造に従う必要もなく、またアニメーションプロセスが表示のためのデータを再フォーマット化する必要もない。表示プロセスは当然ながら、アニメーションプロセスに対して実質的なデータ再フォーマット化のオーバヘッドを加えることなく、アニメーションプロセスにより提供されるデータを使用することができる。
【0018】
他方、表示順序で頂点データをソーティングすることについてペナルティはなく、いずれの場合にも、表示のために予めソーティングされたデータを提示するために最適化された頂点提示構造と比較して、性能を顕著に劣化させる頂点キャッシュを伴わずに、頂点データは表示のために効率的に表示エンジンに提示される。
【0019】
この発明により提供されるさらなる局面に従えば、頂点データは、幾つかの異なったフォーマット(たとえば8ビット固定小数点,16ビット固定小数点または浮動小数点)の何れかで量子化された圧縮データストリームを含む。このデータは、索引付け(すなわち、頂点データストリームにより参照される)されてもよく、または直接的(すなわち、該ストリーム自身の中に含まれる)であってもよい。これらの種々のデータフォーマットを全て共通の頂点キャッシュに保存し、続いて復元し、グラフィックス表示パイプラインのための共通のフォーマットに変換することができる。このような弾力的なタイプのハードウエアサポート,フォーマット,および直接的または索引付き入力データとしての多くの属性は、複雑かつ時間を要するソフトウエアデータ変換を回避する。
【0020】
この発明の上述の目的,その他の目的,特徴,および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【0021】
【実施例】
図1はこの発明が実施され得る対話型3次元コンピュータグラフィックスシステム100の一例を示す全体の概略図である。システム100は、ステレオサウンドを伴って対話型3次元ビデオゲームをプレイするために使用することができる。光ディスクのような適切な記憶媒体を光ディスク装置134に挿入することによって、異なるゲームをすることができる。ゲームプレイヤは、手持ちコントローラ132(これはジョイスティック,ボタン,スイッチ,キーボードまたはキーパッド等の種々のコントロールを含むことができる)のような入力装置を操作することによって、システム100とリアルタイムで対話することができる。
【0022】
システム100は、メインプロセサ(CPU)102,メインメモリ104,ならびにグラフィックス/オーディオコプロセサ106を含んでいる。この例では、メインプロセサ102は、コプロセサ106を介して手持ちコントローラ132(および/または他の入力装置)からの入力を受け取る。メインプロセサ102は、このようなユーザ入力に対して対話的に応答し、たとえば外部記憶装置134によって供給されるビデオゲームまたは他のグラフィックスプログラムを実行する。たとえば、メインプロセサ102は、種々のリアルタイムの対話型制御機能に加えて、衝突検出およびアニメーション処理を行うことができる。
【0023】
メインプロセサ102は、3次元グラフィックスおよびオーディオコマンドを発生し、これらをグラフィックス/オーディオコプロセサ106に送る。グラフィックス/オーディオコプロセサ106は、これらのコマンドを処理して画像を表示装置136上に発生し、またステレオスピーカ137R、137Lまたは他の適切な音声発生装置上でステレオサウンドを発生する。
【0024】
システム100は、コプロセサ100からの画像信号を受け取って、該画像信号を標準のディスプレイ装置136(たとえばコンピュータモニタまたは家庭用カラーテレビ)に表示するのに適した複合ビデオ信号に変換するためのTVエンコーダ140を含む。システム100はまた、ディジタル化されたオーディオ信号を圧縮および復元する(またディジタルオーディオ信号フォーマットとアナログオーディオ信号フォーマットの間での変換を行うことができる)オーディオコーデック(圧縮器/復元器)138を含む。オーディオコーデック138は、バッファ140を介してオーディオ入力を受け取り、またこれを処理(たとえば、該コプロセサが発生する他のオーディオ信号および/または光ディスク装置134のストリーミングオーディオ出力を介して受信する他のオーディオ出力とのミキシング)のためにコプロセサ106に与えることができる。コプロセサ106は、オーディオ関連情報をオーディオタスク専用のメモリ144に保存する。コプロセサ106は、得られたオーディオ出力信号を(たとえばバッファアンプ142L、142Rを介して)スピーカ137L,137Rによって再生できるように、復元およびアナログ信号への変換のためにオーディオコーデック138に与える。
【0025】
コプロセサ106は、システム100内に存在し得る種々の周辺機器と通信する能力を有する。たとえば、パラレルディジタルバス146は、光ディスク装置134と通信するために使用できる。シリアルバス148は、たとえばROMおよび/またはリアルタイムクロック150,モデム152およびフラッシュメモリ154を含む種々の周辺機器と通信することができる。別の外部シリアルバス156は、追加の拡張メモリ158(たとえばメモリカード)と通信するために使用することができる。
【0026】
グラフィックス/オーディオコプロセサ
図2はコプロセサ106内のコンポーネントのブロック図である。コプロセサ106は、単一の集積回路であってもよい。この例において、コプロセサ106は、3次元グラフィックスプロセサ107,プロセサインタフェース108,メモリインタフェース110,オーディオディジタル信号プロセサ(DSP)162,オーディオメモリインタフェース(I/F)164,オーディオインタフェース/ミキサ166,周辺コントローラ168および表示コントローラ128を含む。
【0027】
3次元グラフィックスプロセサ107はグラフィックス処理タスクを行い、またオーディオDSP162はオーディオ処理タスクを行う。表示コントローラ128は、メモリ104からの画像情報にアクセスし、それを表示装置136に表示するためにTVエンコーダ140に与える。オーディオインタフェース/ミキサ166は、オーディオコーデック138とのインタフェースをとり、また異なった音源(たとえばディスク134からのストリーミングオーディオ入力,オーディオDSP162の出力,およびオーディオコーデック138を介して受信された外部オーディオ入力)からのオーディオをミックスすることができる。プロセサインタフェース108は、メインプロセサ102とコプロセサ106との間のデータおよび制御インタフェースを与える。メモリインタフェース110は、コプロセサ106とメモリ104との間のデータおよび制御インタフェースを与える。この例において、メインプロセサ102は、コプロセサ106の一部であるプロセサインタフェース108およびメモリコントローラ110を介して、メインメモリ104にアクセスする。周辺コントローラ168は、コプロセサ106と上記で述べた種々の周辺機器(たとえば、光ディスク装置134,コントローラ132,ROMおよび/またはリアルタイムクロック150,モデム152,フラッシュメモリ154およびメモリカード158)との間のデータインタフェースおよび制御インタフェースを提供する。オーディオメモリインタフェース164は、オーディオメモリ144とのインタフェースを提供する。
【0028】
図3はコプロセサ106内の3次元グラフィックスプロセサ107および関連するコンポーネントのより詳細な図を示している。3次元グラフィックスプロセサ107は、コマンドプロセサ114および3次元グラフィックスパイプライン116を含んでいる。メインプロセサ102は、グラフィックスデータ(すなわち、表示リスト)のストリームをコマンドプロセサ114に通信する。コマンドプロセサ114はこれらの表示コマンドを受取り、これらを解析し(それらを処理するのに必要な何等かの追加のデータをメモリ104から得る)、3次元処理およびレンダリングのために、頂点コマンドのストリームをグラフィックスパイプライン116に与える。グラフィックスパイプライン116は、これらのコマンドに基づいて3次元画像を発生する。得られた画像情報は、表示コントローラ128(これはパイプライン116のフレームバッファ出力を表示装置136上に表示する)によるアクセスのために、メインメモリ104に転送される。
【0029】
より詳細には、メインプロセサ102は表示リストをメインメモリ104に保存し、バスインタフェース108を介してポインタをコマンドプロセサ114に渡す。コマンドプロセサ114(これは以下で詳細に述べる頂点キャッシュ212を含む)は、CPU102からコマンドストリームを取り込み、コマンドストリームおよび/またはメモリの中の頂点アレイから頂点属性を取り込み、属性タイプを浮動小数点フォーマットに変換し、得られた完全な頂点ポリゴンデータのレンダリング/ラスタライズのためにグラフィックスパイプライン116に渡す。以下でさらに詳細に説明するように、頂点データはコマンドストリームから、および/または各属性がそれ自身の線形アレイで保存されているメモリ中の頂点アレイから直接に来ることができる。メモリ調停回路130は、グラフィックスパイプライン116,コマンドプロセサ114および表示コントローラ128の間でのメモリアクセスを調停する。以下で説明するように、頂点属性アクセス待ち時間を低減するために、オンチップの8方向のセットアソシアティブ頂点キャッシュ(8-way set-associative vertex cache) 212が用いられる。
【0030】
図3に示すように、グラフィックスパイプライン116は、変換ユニット118,セットアップ/ラスタライザ120,テクスチャユニット122,テクスチャ環境ユニット124およびピクセルエンジン126を含むことができる。グラフィックスパイプライン116において、変換ユニット118は種々の3次元変換操作を行い、またライティングおよびテクスチャ効果を実行してもよい。たとえば、変換ユニット118は、入ってくる頂点毎のジオメトリをオブジェクト空間からスクリーン空間に変換し、入ってくるテクスチャ座標を変換しそして投影テクスチャ座標を計算し、ポリゴンクリッピングを行い、頂点ライティング毎の計算を行い、テクスチャ座標発生のバンプマッピングを実行する。セットアップ/ラスタライザ120は、変換ユニット118から頂点データを受け取って、エッジのラスタライズ,テクスチャ座標のラスタライズおよび色のラスタライズを実行するラスタライザへ3角形セットアップ情報を送信するセットアップユニットを含んでいる。テクスチャユニット122は、投影テクスチャならびにアルファ透明度および深さをもったBLITを使用することにより、多重テクスチャ処理,ポストキャッシュテクスチャ復元,テクスチャフィルタリング,エンボスされたバンプマッピング,投影およびライティングを含むテクスチャリングに関連した種々のタスクを実行する。テクスチャユニット122は、フィルタリングされたテクスチャ値をテクスチャ環境ユニット124へ出力する。テクスチャ環境ユニット124は、ポリゴンの色およびテクスチャの色を一緒にブレンドし、テクスチャかぶりおよび他の環境関連機能を実行する。ピクセルエンジン126は、Zバッファリングおよびブレンドを行い、データをオンチップのフレームバッファメモリの中に保存する。
【0031】
したがって、グラフィックスパイプライン116は、フレームバッファおよび/またはテクスチャ情報をローカルに保存する1以上の埋め込み型DRAM(図示せず)を含んでいてもよい。オンチップのフレームバッファは、表示コントローラ128によるアクセスのために、メインメモリ104に周期的に書き込まれる。グラフィックスパイプライン116のフレームバッファ出力(これは、結局はメインメモリ104に保存される)は、表示コントローラ128によってフレーム毎に読取られる。表示コントローラ128は、ディスプレイ136上に表示するためのディジタルRGBピクセル値を提供する。
【0032】
頂点キャッシュおよび頂点索引アレイ
図4は頂点キャッシュ212および表示リストプロセサ213を含むコマンドプロセサ114の概略図である。コマンドプロセサ114は、位置,法線,テクスチャ座標および色の信号ストリームから完全な索引付きアレイまでの、広範囲の頂点データおよびプリミティブデータ構造を取り扱う。何れかの頂点成分は索引参照されることができ、またはコマンドストリームの中に直接インライン化することができる。したがって、コマンドプロセサ114は、融通可能なタイプ,フォーマットおよび多くの属性を直接または索引付きデータとしてサポートする。
【0033】
コマンドプロセサ114内の表示リストプロセサ213は、(典型的にはメインメモリ104内に割当てられたバッファを介して)CPU102により与えられる表示リストコマンドを処理する。頂点キャッシュ212は、図4に示す例示データ構造300のような、索引付きポリゴン頂点データ構造をキャッシュメモリに入れる。例示した索引付きポリゴン頂点データ構造300は、多くの頂点成分データアレイ(たとえば、色データアレイ306a,テクスチャ頂点データアレイ306b,表面法線データアレイ306c,位置頂点データアレイ306d等)を参照する頂点索引アレイ304を含んでいてもよい。頂点キャッシュ212は、メインメモリ104内のこれらアレイ306から頂点データにアクセスし、表示リストプロセサ213による迅速アクセスおよび使用のために、それらをキャッシュメモリに入れる。
【0034】
表示リストプロセサ
図5は、コマンドプロセサ114によって実行される表示リストプロセサ213の例を示している。この図5において、表示リストプロセサ213は、幾つかの構文解析(パーシング:parsing)の段階を提供する。メインプロセサ102から受け取られた表示リストコマンドは、表示リストストリームパーサ200によって解釈される。表示リストストリームパーサ200は、アドレススタック202を使用して、指令のネスティングを与えることができる。あるいは、FIFOからの頂点コマンドのストリームをメインメモリ106に保存して、予め取り込まれた頂点コマンドデータを再ロードする必要なく、インスタンスにおけるサブルーチン分岐を可能にするために、デュアルFIFOを使用してもよい(図6参照)。図6のアプローチを使用することにより、表示リストコマンドは1レベル深さの表示リストを提供し、ここでトップレベルのコマンドストリームは表示リスト1レベル深さをコールすことができる。この「コール」能力は、ジオメトリにおける予め計算されたコマンドおよびインスタンスのために有用である。
【0035】
表示ストリームパーサ200は、グラフィックスパイプライン116の状態に影響するコマンドを、該グラフィックスパイプラインに向けて送り出す。残りのプリミティブコマンドストリームは、メインメモリ104から得たプリミティブ記述子に基づいて、プリミティブストリームパーサ204により解析される(以下参照)。
【0036】
頂点に対する索引が参照され、ハードウエア中のテーブルに設けられ得る頂点記述子に基づいて、頂点ストリームパーサ208によって解析される。頂点ストリームパーサ208に与えられる頂点ストリームは、メインメモリ104内に保存された頂点データに対するこのような索引を含んでいてもよい。頂点ストリームパーサ208は、頂点キャッシュ212を介して、メインメモリ104からこの頂点データにアクセスすることができ、直接のデータに対して反対に索引付けされた場合の異なった経路を介して、頂点コマンドおよび関連の索引付き頂点属性を別々に与える。1つの例において、頂点ストリームパーサ208は、それがメインメモリ104の全体であるかのように、頂点キャッシュ212をアドレス指定する。次いで、頂点キャッシュ212はメインメモリ104から頂点データを検索し(また多くは先取りし)、これを頂点ストリームパーサ208による使用のために一時的にキャッシュメモリに入れる。頂点キャッシュ212における頂点データのキャッシングは、メインメモリ104に対するアクセス回数を減少させ、したがってコマンドプロセサ114が必要とするメインメモリバンド幅を減少させる。
【0037】
頂点ストリームパーサ208は、各3角形(ポリゴン)内に表現されるべき夫々の頂点についてのデータを与える。この頂点毎データ(per-vertex data)は、プリミティブストリームパーサ204によって出力されるプリミティブ毎(per-primitive) データとともに、復元/逆量子化器ブロック214に与えられる。逆量子化器214は、異なった頂点表現(たとえば8ビットおよび16ビットの固定小数点フォーマットデータ)を、グラフィックスパイプライン116によって使用される一様な浮動小数点表現へと変換する。逆量子化器214は、弾力的な種々の異なるタイプのフォーマットおよび多くの属性のためのハードウエアサポートを提供し、このようなデータは直接のデータまたは索引付データとして、表示リストプロセサ213に提示されることができる。逆量子化器214の一様な浮動小数点表現出力は、ラスタ化およびさらなる処理のためにグラフィックスパイプライン116に与えられる。最適化として所望のときは、頂点ストリップデータを再変換する必要性を回避するために、逆量子化器214の出力位置にさらなる小さいキャッシュまたはバッファを設けてもよい。
【0038】
頂点索引アレイ
図7は、頂点キャッシュ212を介して間接的(すなわち、索引付の)頂点属性データを与えるために使用される、好ましい実施例における索引付き頂点リスト300のさらに詳細な例を示している。この一般化された索引付き頂点リスト300は、図1に示したシステムにおけるプリミティブを定義するために使用してもよい。夫々のプリミティブは索引のリストによって記述され、その夫々は頂点アレイの中に索引をつける。頂点およびプリミティブは夫々、フォーマット記述子を使用して、それらの項目のタイプを定義する。これらの記述子は、属性をタイプに結びつける。属性は、表現するハードウエアに対して特定の意味を有するデータ項目である。これは、頂点/プリミティブストリームがロードされたときにそれを解析および変換するように、記述子でハードウエアをプログラミングする可能性を与える。最小サイズのタイプと最小数の属性を使用することで、ジオメトリの圧縮につながる。図7の構成はまた、所望により、属性を頂点、索引またはプリミティブに関連させる。
【0039】
このように、図7の索引付き頂点アレイ300の例では、プリミティブリスト302は、データストリーム(たとえばprim0,prim1,prim2,prim3…)における種々の各プリミティブ(たとえば3角形)を定義する。プリミティブ記述子ブロック308は、プリミティブに共通の属性を与えることができる(たとえば直接または索引付けされ得るテクスチャデータおよび結合データ)を与えることができる。プリミティブリスト302内の各プリミティブは、頂点リスト304内の対応する頂点に索引を付ける。頂点リスト304内の1つの頂点は、プリミティブリスト302内の複数のプリミティブによって使用され得る。所望であれば、プリミティブリスト302は明確ではなく暗示的であってもよい。すなわち、頂点リスト304は、暗示的に(たとえば3角形ストリップを使用して)対応するプリミティブを定義するように配列することができる。
【0040】
頂点記述子ブロック306は、頂点リスト304の夫々の頂点について与えることができる。頂点記述子ブロック306は、特定の頂点に対応する属性データを含んでいる(たとえば、rgbまたは他の色データ,アルファデータ,xyz表面法線データ)。図4に示すように、頂点記述子ブロック306は、多くの異なった索引付き成分ブロックを含むことができる。この頂点属性記述子ブロック306は、いずれの頂点属性が存在するか、成分の数およびサイズならびに成分が参照される方法(たとえば直接的…すなわち、量子化された頂点データストリーム内に含まれる…または索引付けされる)を決定する。一例において、特定のプリミティブについての描画(DRAW)コマンドにおける頂点は、全て同じ頂点属性データ構造フォーマットを有する。
【0041】
図8は、頂点属性ブロック306によって与えられる属性リストの例を示している。次表1に示す属性が提供されてもよい。
【0042】
【表1】
【0043】
この例の頂点属性記述子ブロック306において、位置属性は常に存在し、索引付けされたものまたは直接的なものでもよく、多くの異なった量子化され圧縮されたフォーマット(たとえば、浮動小数点,8ビット,整数,または16ビット)をとることができる。全ての残りの属性は、いずれかの頂点について存在しても存在しなくてもよく、所望により索引付きでも直接的であってもよい。位置値と同様に、テクスチャ座標値は種々の異なったフォーマット(たとえば、8ビット整数、16ビット整数または浮動小数点)で表現することができ、表面法線属性についてもそうである。拡散色および鏡色の属性は、16ビット3補数,24ビット3補数,32ビット3補数,または16,24もしくは32ビット4補数を含む種々のフォーマットで、3(rgb)または4(rgba)の値を与えることができる。所定のプリミティブについての全ての頂点は、好ましくは同じフォーマットを有する。
【0044】
この例において、頂点記述子306は、16ビットポインタを使用する索引付きデータを属性アレイの中に照合する。アレイ内の特定の属性にアクセスするために使用される特定のオフセットは、たとえば属性における成分の数,成分の大きさ,アライメント目的の属性間のパディング,および複数の属性が同じアレイの中にインタリーブされるかどうかを含む多くの因子に依存する。1つの頂点は、混合された直接的または間接的な属性を有することができ、また幾つかの属性はハードウエアによって発生することができる(たとえば、位置からテクスチャ座標を発生させる)。何れの属性も直接に、または索引としてアレイの中に送ることができる。頂点キャッシュう212は、過剰なキャッシュミスを伴うことなく、典型的な数の夫々のデータ成分ストリーム(たとえば位置,法線,色およびテクスチャ)を扱うために充分なキャッシュラインを含んでいる。
【0045】
頂点キャッシュの具体化
図9は、頂点キャッシュ212および関連ロジックの一例を示す概略図である。この例の頂点キャッシュ212は、512×112ビットのデュアルポートRAMとして構成された8キロバイトのキャッシュメモリ400を含んでいる。多くの属性ストリームがキャッシュ212の中で探索されるので、8本のタグラインを含む8組のセットアソシアティブキャッシュを使用して、スラッシングを低減する。各タグラインは32×16ビットのデュアルポートのRAM404および関連タグ状態レジスタ406を含んでいる。タグRAM 404は、頂点RAM404内に保存された対応するデータブロックのメインメモリアドレスを保存する。アドレス計算ブロック408は、必要な頂点属性データが既に頂点RAM400内に存在するか否か、あるいはメインメモリへの追加の取り込みが必要か否かを決定する。メモリ待ち時間を隠すために、キャッシュラインはメインメモリ104から先取りされる。
【0046】
図10は、頂点ストリームパーサ208によって頂点キャッシュ212に与えられるメモリアドレスフォーマットの一例を示している。このメモリアドレス450は、キャッシュラインの中にバイトオフセットを与えるフィールド452,タグRAMアドレス454,およびタグRAM404の内容と比較するためのメインメモリアドレス456を含んでいる。アドレス計算ブロック408はメインメモリアドレス456をタグRAM404の内容と比較して、必要なデータが既に頂点RAM400内にキャッシュされたか否か、またはそれをメインメモリ104から取り込むことが必要か否かを決定する。
【0047】
タグ状態レジスタ406は、図11に示したフォーマットでデータを保存する。データ有効フィールド462は、特定のキャッシュライン内のデータが有効であるかどうかを指示する。カウンタフィールド464は、キャッシュラインに依存する待ち行列410中のエントリ数のトラックを維持する。カウンタフィールド464は、ミスが発生したときに全てのタグ状態レジスタ406がデータ有効を示す場合に使用される。アドレス計算ブロック408は、新たなエントリのための余裕を形成するために、キャッシュラインの1つを捨てる必要がある。カウンタフィールド464がゼロでなければ、キャッシュラインは未だ使用中であり、捨て去ることはできない。改良された部分的LRUアルゴリズムに基づき、アドレス計算ブロック408は置き換えのためにキャッシュラインの1つを選択する。データ有効フィールド462は「無効」にセットされ、キャッシュラインはメインメモリ104からの新たな内容で置き換えられる。もう1つの属性索引が同じキャッシュラインにマップすると、カウンタフィールド464はインクリメントされる。データがメインメモリ104から到達すると、データ有効ビットがセットされ、エントリは待ち行列410から処理可能となる。あるいは、データがキャッシュRAM400の中に入れられるまで、待ち行列410の処理が停止されるであろう。待ち行列エントリのためにキャッシュRAM400がアクセスされると、カウンタ464はディクリメントされる。
【0048】
現時点で最も実際的且つ好ましいと思われる実施例に関連してこの発明を説明してきたが、この発明はこの開示された実施例に限定されるものではなく、逆に、特許請求の範囲内に含まれる種々の変形例および均等な構成をもカバーするものであることが理解されるべきである。
【図面の簡単な説明】
【図1】図1は対話型3次元グラフィックスシステムの一例を示すブロック図である。
【図2】図2は図1に示したグラフィックス/オーディオコプロセサの例を示すブロック図である。
【図3】図3は図2のグラフィックス/オーディオコプロセサ部分のより詳細なブロック図で3次元パイプライングラフィックス処理構成の一例を示す。
【図4】図4は頂点索引アレイデータを設けた頂点キャッシュを含むコマンドプロセサの一例を示す。
【図5】図5はこの発明に従って設けられた頂点キャッシュを含む表示リストプロセサの一例を示す。
【図6】図6はデュアルFIFO構成の一例を示している。
【図7】図7は索引付き頂点データ構造の一例を示す概略図である。
【図8】図8は頂点記述子ブロックの一例を示している。
【図9】図9は頂点キャッシュの具体化の一例を示すブロック図である。
【図10】図10は頂点キャッシュメモリアドレスフォーマットの一例を示している。
【図11】図11は頂点キャッシュタグ状態レジスタフォーマットの一例を示している。
【符号の説明】
100 …対話型3次元コンピュータグラフィックスシステム
102 …メインプロセサ(CPU)
104 …メインメモリ
106 …グラフィックス/オーディオコプロセサ
107 …3次元グラフィックスプロセサ
114 …コマンドプロセサ
116 …グラフィクスパイプライン
212 …頂点キャッシュ
213 …表示リストプロセサ
Claims (13)
- ポリゴン頂点データを保存するメモリおよび少なくとも一部は前記ポリゴン頂点データに応答して画像を発生して表示する3次元グラフィックスエンジンを含む3次元グラフィックスシステムにおいて、前記メモリおよび前記3次元グラフィックスエンジンに動作可能に結合された頂点キャッシュであって、
前記ポリゴン頂点データが索引付き頂点データ表現を含み、前記索引付き頂点データ表現は複数の成分データアレイを参照する索引アレイを含み、前記頂点キャッシュは前記索引付き頂点データ表現に応答して動作し、必要な頂点データが既にキャッシュメモリに存在するか否か、または取り込みが必要か否かを決定し、前記メモリから索引付き頂点データをキャッシュし、画像表示のための再ソーティングなしで、前記グラフィックスエンジンに使用させるようにしたことを特徴とする、頂点キャッシュ。 - 前記3次元グラフィックスエンジンは集積回路に配置されており、
前記集積回路に配置されて前記3次元グラフィックスエンジンと動作可能に結合されたメモリ装置をさらに備える、請求項1記載の頂点キャッシュ。 - 前記メモリ装置は前記頂点データをキャッシュするための組連想キャッシュメモリを備える、請求項2記載の頂点キャッシュ。
- 前記組連想キャッシュメモリは8個のキャッシュラインを提供する、請求項3記載の頂点キャッシュ。
- 前記メモリ装置は8キロバイトのRAMを含む、請求項2記載の頂点キャッシュ。
- 複数のキャッシュタグラインを備える、請求項1記載の頂点キャッシュ。
- 複数のキャッシュタグ状態レジスタを含む、請求項1記載の頂点キャッシュ。
- 待ち行列およびミス待ち行列を含む、請求項1記載の頂点キャッシュ。
- 前記頂点キャッシュは、使用時に前記メモリに結合され、前記グラフィックスエンジンが前記頂点データを必要とするときに、前記メモリから頂点データを取り込む、請求項1記載の頂点キャッシュ。
- 前記頂点キャッシュと前記3次元グラフィックスエンジンとの間に動作可能に連結されたハードウエアベースの逆量子化装置をさらに備え、
前記逆量子化装置は、前記3次元グラフィックスエンジンによる使用のために、複数の頂点データフォーマットを一様な浮動小数点フォーマットに変換する、請求項1記載の頂点キャッシュ。 - ポリゴン頂点データを保存するメモリおよび少なくとも一部は前記ポリゴン頂点データに応答して画像を発生および表示する3次元グラフィックスエンジンを含む3次元ビデオグラフィックスシステムにおいて、前記3次元グラフィックスエンジンが使用するために前記メモリから前記頂点データにアクセスするための方法であって、
(a) 前記ポリゴン頂点データを、複数の成分データアレイを参照する索引アレイを含む索引付き頂点データ表現で表現するステップ、および
(b) 必要な頂点データが既にキャッシュメモリに存在するか否か、または取り込みが必要か否かを決定し、前記索引付き頂点データを、前記3次元グラフィックスエンジンに対してローカルなキャッシュメモリ装置の中に取り込んで、前記索引付き頂点データを前記3次元グラフィックスエンジンによるアクセスのために利用可能にするステップを含む、方法。 - 前記ステップ(b) は、前記3次元グラフィックスエンジンが前記頂点データを必要とするときに、頂点データを前記メモリから前記キャッシュメモリ装置へ取り込むステップをさらに含む、請求項11記載の方法。
- 前記ステップ(b) は、前記キャッシュメモリ装置に保存された複数の頂点データフォーマットを、前記3次元グラフィックスエンジンによる使用のための一様な浮動小数点フォーマットに変換するステップをさらに含む、請求項11記載の方法。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16191599P | 1999-10-28 | 1999-10-28 | |
US09/465,754 US6717577B1 (en) | 1999-10-28 | 1999-12-17 | Vertex cache for 3D computer graphics |
US60/161915 | 1999-12-17 | ||
US09/465754 | 1999-12-17 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001195603A JP2001195603A (ja) | 2001-07-19 |
JP4644353B2 true JP4644353B2 (ja) | 2011-03-02 |
Family
ID=26858260
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000326915A Expired - Lifetime JP4644353B2 (ja) | 1999-10-28 | 2000-10-26 | 3次元グラフィックスのための頂点キャッシュ |
Country Status (3)
Country | Link |
---|---|
US (1) | US6717577B1 (ja) |
EP (1) | EP1096427A3 (ja) |
JP (1) | JP4644353B2 (ja) |
Families Citing this family (86)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6801203B1 (en) * | 1999-12-22 | 2004-10-05 | Microsoft Corporation | Efficient graphics pipeline with a pixel cache and data pre-fetching |
US7538772B1 (en) | 2000-08-23 | 2009-05-26 | Nintendo Co., Ltd. | Graphics processing system with enhanced memory controller |
US6966837B1 (en) * | 2001-05-10 | 2005-11-22 | Best Robert M | Linked portable and video game systems |
JP3746211B2 (ja) * | 2001-08-03 | 2006-02-15 | 株式会社ソニー・コンピュータエンタテインメント | 描画装置、描画方法、描画プログラム、描画プログラムを記録したコンピュータ読み取り可能な記録媒体、及びグラフィックスプロセッサ |
TWI245234B (en) * | 2001-12-19 | 2005-12-11 | Silicon Integrated Sys Corp | Apparatus and method for accessing vertex data |
CN1293512C (zh) * | 2001-12-28 | 2007-01-03 | 矽统科技股份有限公司 | 顶点资料队列控制器 |
US6928526B1 (en) * | 2002-12-20 | 2005-08-09 | Datadomain, Inc. | Efficient data storage system |
FI117579B (fi) * | 2003-01-17 | 2006-11-30 | Cadfaster Oy | Menetelmä, laite ja tietokoneohjelma tietokoneavusteisen polygonimallin prosessointiin |
US7190367B2 (en) * | 2003-03-25 | 2007-03-13 | Mitsubishi Electric Research Laboratories, Inc. | Method, apparatus, and system for rendering using a progressive cache |
US6943797B2 (en) * | 2003-06-30 | 2005-09-13 | Sun Microsystems, Inc. | Early primitive assembly and screen-space culling for multiple chip graphics system |
US20050206648A1 (en) * | 2004-03-16 | 2005-09-22 | Perry Ronald N | Pipeline and cache for processing data progressively |
FI117655B (fi) * | 2004-03-25 | 2006-12-29 | Cadfaster Oy | Menetelmä tietokoneavusteisen polygonimallin prosessointiin, laite ja tietokoneohjelma |
US8736628B1 (en) | 2004-05-14 | 2014-05-27 | Nvidia Corporation | Single thread graphics processing system and method |
US7079156B1 (en) * | 2004-05-14 | 2006-07-18 | Nvidia Corporation | Method and system for implementing multiple high precision and low precision interpolators for a graphics pipeline |
US8432394B1 (en) | 2004-05-14 | 2013-04-30 | Nvidia Corporation | Method and system for implementing clamped z value interpolation in a raster stage of a graphics pipeline |
US8416242B1 (en) | 2004-05-14 | 2013-04-09 | Nvidia Corporation | Method and system for interpolating level-of-detail in graphics processors |
US8743142B1 (en) | 2004-05-14 | 2014-06-03 | Nvidia Corporation | Unified data fetch graphics processing system and method |
US20060007234A1 (en) * | 2004-05-14 | 2006-01-12 | Hutchins Edward A | Coincident graphics pixel scoreboard tracking system and method |
US8736620B2 (en) * | 2004-05-14 | 2014-05-27 | Nvidia Corporation | Kill bit graphics processing system and method |
US8860722B2 (en) * | 2004-05-14 | 2014-10-14 | Nvidia Corporation | Early Z scoreboard tracking system and method |
US8411105B1 (en) | 2004-05-14 | 2013-04-02 | Nvidia Corporation | Method and system for computing pixel parameters |
US8711155B2 (en) * | 2004-05-14 | 2014-04-29 | Nvidia Corporation | Early kill removal graphics processing system and method |
US8687010B1 (en) | 2004-05-14 | 2014-04-01 | Nvidia Corporation | Arbitrary size texture palettes for use in graphics systems |
US7339590B1 (en) * | 2004-09-02 | 2008-03-04 | Nvidia Corporation | Vertex processing unit supporting vertex texture mapping |
GB0425204D0 (en) * | 2004-11-15 | 2004-12-15 | Falanx Microsystems As | Processing of 3-dimensional graphics |
US7631145B1 (en) * | 2005-06-23 | 2009-12-08 | Nvidia Corporation | Inter-frame texel cache |
JP4492567B2 (ja) | 2006-03-17 | 2010-06-30 | ソニー株式会社 | 画像処理装置および画像処理方法、並びにプログラム |
US7616209B1 (en) | 2006-06-16 | 2009-11-10 | Nvidia Corporation | Prescient cache management |
US7626588B1 (en) * | 2006-06-16 | 2009-12-01 | Nvidia Corporation | Prescient cache management |
KR100791478B1 (ko) | 2006-07-14 | 2008-01-04 | 엠텍비젼 주식회사 | 정점 처리를 위한 인코딩 장치, 디코딩 장치 및 그 방법 |
US7952588B2 (en) * | 2006-08-03 | 2011-05-31 | Qualcomm Incorporated | Graphics processing unit with extended vertex cache |
US8009172B2 (en) * | 2006-08-03 | 2011-08-30 | Qualcomm Incorporated | Graphics processing unit with shared arithmetic logic unit |
US7928990B2 (en) * | 2006-09-27 | 2011-04-19 | Qualcomm Incorporated | Graphics processing unit with unified vertex cache and shader register file |
US8537168B1 (en) | 2006-11-02 | 2013-09-17 | Nvidia Corporation | Method and system for deferred coverage mask generation in a raster stage |
US7982741B2 (en) * | 2006-11-29 | 2011-07-19 | Microsoft Corporation | Shared graphics infrastructure |
US7934058B2 (en) * | 2006-12-14 | 2011-04-26 | Microsoft Corporation | Predictive caching of assets to improve level load time on a game console |
JP4389947B2 (ja) * | 2007-02-19 | 2009-12-24 | ソニー株式会社 | 記録再生装置、データ処理装置、再生方法及びデータ処理方法 |
US8022958B2 (en) | 2007-04-04 | 2011-09-20 | Qualcomm Incorporated | Indexes of graphics processing objects in graphics processing unit commands |
US8907964B2 (en) * | 2007-04-10 | 2014-12-09 | Vivante Corporation | System and method for dynamically reconfiguring a vertex cache |
JP4987070B2 (ja) * | 2007-04-11 | 2012-07-25 | パナソニック株式会社 | 画像生成装置及び画像生成方法 |
US20080276067A1 (en) * | 2007-05-01 | 2008-11-06 | Via Technologies, Inc. | Method and Apparatus for Page Table Pre-Fetching in Zero Frame Display Channel |
US8355028B2 (en) * | 2007-07-30 | 2013-01-15 | Qualcomm Incorporated | Scheme for varying packing and linking in graphics systems |
US8441497B1 (en) | 2007-08-07 | 2013-05-14 | Nvidia Corporation | Interpolation of vertex attributes in a graphics processor |
US9183607B1 (en) | 2007-08-15 | 2015-11-10 | Nvidia Corporation | Scoreboard cache coherence in a graphics pipeline |
US8384728B2 (en) * | 2007-09-14 | 2013-02-26 | Qualcomm Incorporated | Supplemental cache in a graphics processing unit, and apparatus and method thereof |
US8599202B1 (en) * | 2008-09-29 | 2013-12-03 | Nvidia Corporation | Computing tessellation coordinates using dedicated hardware |
US9256514B2 (en) | 2009-02-19 | 2016-02-09 | Nvidia Corporation | Debugging and perfomance analysis of applications |
JP5304443B2 (ja) * | 2009-05-28 | 2013-10-02 | 富士通セミコンダクター株式会社 | 描画データ処理方法、図形描画システム、及び図形描画データ作成プログラム |
GB2470611B (en) * | 2009-06-25 | 2011-06-29 | Tv One Ltd | Apparatus and method for processing data |
US8462166B2 (en) * | 2010-10-01 | 2013-06-11 | Apple Inc. | Graphics system which measures CPU and GPU performance |
US8614716B2 (en) | 2010-10-01 | 2013-12-24 | Apple Inc. | Recording a command stream with a rich encoding format for capture and playback of graphics content |
US8762644B2 (en) * | 2010-10-15 | 2014-06-24 | Qualcomm Incorporated | Low-power audio decoding and playback using cached images |
GB201103699D0 (en) | 2011-03-03 | 2011-04-20 | Advanced Risc Mach Ltd | Graphic processing |
GB201103698D0 (en) | 2011-03-03 | 2011-04-20 | Advanced Risc Mach Ltd | Graphics processing |
US9460546B1 (en) | 2011-03-30 | 2016-10-04 | Nvidia Corporation | Hierarchical structure for accelerating ray tracing operations in scene rendering |
US9142043B1 (en) | 2011-06-24 | 2015-09-22 | Nvidia Corporation | System and method for improved sample test efficiency in image rendering |
US9147270B1 (en) | 2011-06-24 | 2015-09-29 | Nvidia Corporation | Bounding plane-based techniques for improved sample test efficiency in image rendering |
US8970584B1 (en) | 2011-06-24 | 2015-03-03 | Nvidia Corporation | Bounding box-based techniques for improved sample test efficiency in image rendering |
US9269183B1 (en) | 2011-07-31 | 2016-02-23 | Nvidia Corporation | Combined clipless time and lens bounds for improved sample test efficiency in image rendering |
US9305394B2 (en) | 2012-01-27 | 2016-04-05 | Nvidia Corporation | System and process for improved sampling for parallel light transport simulation |
US8976188B1 (en) | 2012-04-20 | 2015-03-10 | Google Inc. | Optimized data communication system and method for an image rendering system |
US9411595B2 (en) | 2012-05-31 | 2016-08-09 | Nvidia Corporation | Multi-threaded transactional memory coherence |
US9159158B2 (en) | 2012-07-19 | 2015-10-13 | Nvidia Corporation | Surface classification for point-based rendering within graphics display system |
US9171394B2 (en) | 2012-07-19 | 2015-10-27 | Nvidia Corporation | Light transport consistent scene simplification within graphics display system |
US9824009B2 (en) | 2012-12-21 | 2017-11-21 | Nvidia Corporation | Information coherency maintenance systems and methods |
US10102142B2 (en) | 2012-12-26 | 2018-10-16 | Nvidia Corporation | Virtual address based memory reordering |
US9466115B2 (en) * | 2013-03-15 | 2016-10-11 | Nvidia Corporation | Stencil then cover path rendering with shared edges |
KR102048885B1 (ko) | 2013-05-09 | 2019-11-26 | 삼성전자 주식회사 | 그래픽 프로세싱 유닛, 이를 포함하는 그래픽 프로세싱 시스템, 및 이를 이용한 렌더링 방법 |
US10134102B2 (en) | 2013-06-10 | 2018-11-20 | Sony Interactive Entertainment Inc. | Graphics processing hardware for using compute shaders as front end for vertex shaders |
US10176621B2 (en) | 2013-06-10 | 2019-01-08 | Sony Interactive Entertainment Inc. | Using compute shaders as front end for vertex shaders |
US10096079B2 (en) | 2013-06-10 | 2018-10-09 | Sony Interactive Entertainment Inc. | Fragment shaders perform vertex shader computations |
US10102603B2 (en) | 2013-06-10 | 2018-10-16 | Sony Interactive Entertainment Inc. | Scheme for compressing vertex shader output parameters |
US9477575B2 (en) | 2013-06-12 | 2016-10-25 | Nvidia Corporation | Method and system for implementing a multi-threaded API stream replay |
US9569385B2 (en) | 2013-09-09 | 2017-02-14 | Nvidia Corporation | Memory transaction ordering |
US9721363B2 (en) | 2014-05-19 | 2017-08-01 | Google Inc. | Encoding polygon data for fast retrieval and rendering |
US9645916B2 (en) | 2014-05-30 | 2017-05-09 | Apple Inc. | Performance testing for blocks of code |
GB2528263B (en) * | 2014-07-14 | 2020-12-23 | Advanced Risc Mach Ltd | Graphics processing systems |
US20170286122A1 (en) * | 2016-04-01 | 2017-10-05 | Intel Corporation | Instruction, Circuits, and Logic for Graph Analytics Acceleration |
US10417134B2 (en) * | 2016-11-10 | 2019-09-17 | Oracle International Corporation | Cache memory architecture and policies for accelerating graph algorithms |
US10861216B2 (en) * | 2017-04-07 | 2020-12-08 | Intel Corporation | Ray tracing apparatus and method for memory access and register operations |
EP3474185B1 (en) * | 2017-10-18 | 2023-06-28 | Dassault Systèmes | Classification of 2d images according to types of 3d arrangement |
JP7182863B2 (ja) * | 2017-11-02 | 2022-12-05 | キヤノン株式会社 | 情報生成装置、情報処理装置、制御方法、プログラム、及びデータ構造 |
US10762667B2 (en) * | 2018-11-30 | 2020-09-01 | Point Cloud Compression, B.V. | Method and apparatus for compression of point cloud data |
CN111028128B (zh) * | 2019-11-18 | 2023-10-17 | 中国航空工业集团公司西安航空计算技术研究所 | 基于SystemC面向GPU顶点输出控制方法及单元 |
CN111047503B (zh) * | 2019-11-21 | 2023-06-13 | 中国航空工业集团公司西安航空计算技术研究所 | 一种顶点数组类命令的属性存储与组装优化电路 |
CN114090078A (zh) * | 2021-10-29 | 2022-02-25 | 龙芯中科技术股份有限公司 | 图数据预取方法、处理器和电子设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06162171A (ja) * | 1992-08-03 | 1994-06-10 | Ball Corp | コンピューターグラフィックスにおける多角形の頂点インデックスキャッシュシステム |
JPH06348854A (ja) * | 1993-06-04 | 1994-12-22 | Sun Microsyst Inc | グラフィックアクセラレータ及び幾何学オブジェクト描出方法 |
JPH07210461A (ja) * | 1993-12-28 | 1995-08-11 | Internatl Business Mach Corp <Ibm> | ストア・イン第2レベル・キャッシュ制御装置 |
JPH09167242A (ja) * | 1995-12-19 | 1997-06-24 | Fuji Xerox Co Ltd | 描画処理装置および方法 |
JPH09297853A (ja) * | 1996-05-07 | 1997-11-18 | Sega Enterp Ltd | ポリゴンデータの生成方法、これを適用した画像処理装置及び拡張機能ボード |
WO1997048048A1 (en) * | 1996-06-13 | 1997-12-18 | Micron Technology, Inc. | Word width selection for sram cache |
JPH10320198A (ja) * | 1997-04-10 | 1998-12-04 | Internatl Business Mach Corp <Ibm> | データを転送する方法およびプロセッサ |
JPH11259671A (ja) * | 1998-03-12 | 1999-09-24 | Sega Enterp Ltd | 画像表示方法及びそれを実行する画像表示装置 |
Family Cites Families (331)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4275413A (en) | 1978-03-30 | 1981-06-23 | Takashi Sakamoto | Linear interpolator for color correction |
US4357624A (en) | 1979-05-15 | 1982-11-02 | Combined Logic Company | Interactive video production system |
US4463380A (en) | 1981-09-25 | 1984-07-31 | Vought Corporation | Image processing system |
US4600919A (en) | 1982-08-03 | 1986-07-15 | New York Institute Of Technology | Three dimensional animation |
US4615013A (en) | 1983-08-02 | 1986-09-30 | The Singer Company | Method and apparatus for texture generation |
US4586038A (en) | 1983-12-12 | 1986-04-29 | General Electric Company | True-perspective texture/shading processor |
EP0383367B1 (en) | 1983-12-26 | 1999-03-17 | Hitachi, Ltd. | Graphic pattern processing apparatus and method |
US4808988A (en) | 1984-04-13 | 1989-02-28 | Megatek Corporation | Digital vector generator for a graphic display system |
US4625289A (en) | 1985-01-09 | 1986-11-25 | Evans & Sutherland Computer Corp. | Computer graphics system of general surface rendering by exhaustive sampling |
US5239624A (en) | 1985-06-19 | 1993-08-24 | Pixar | Pseudo-random point sampling techniques in computer graphics |
US4897806A (en) | 1985-06-19 | 1990-01-30 | Pixar | Pseudo-random point sampling techniques in computer graphics |
JPH0762794B2 (ja) | 1985-09-13 | 1995-07-05 | 株式会社日立製作所 | グラフイツク表示装置 |
US4974177A (en) | 1985-10-04 | 1990-11-27 | Daikin Industries Ltd. | Mapping circuit of a CRT display device |
US4692880A (en) | 1985-11-15 | 1987-09-08 | General Electric Company | Memory efficient cell texturing for advanced video object generator |
US4817175A (en) | 1986-08-26 | 1989-03-28 | Schlumberger Systems And Services, Inc. | Video stream processing system |
US4855934A (en) | 1986-10-03 | 1989-08-08 | Evans & Sutherland Computer Corporation | System for texturing computer graphics images |
US4918625A (en) | 1986-12-19 | 1990-04-17 | Cae-Link Corporation | Method and apparatus for processing translucent objects |
US4965750A (en) | 1987-03-31 | 1990-10-23 | Hitachi, Ltd. | Graphic processor suitable for graphic data transfer and conversion processes |
US4935879A (en) | 1987-08-05 | 1990-06-19 | Daikin Industries, Ltd. | Texture mapping apparatus and method |
US5144291A (en) | 1987-11-02 | 1992-09-01 | Matsushita Electric Industrial Co., Ltd. | Means for eliminating hidden surface |
US4888712A (en) | 1987-11-04 | 1989-12-19 | Schlumberger Systems, Inc. | Guardband clipping method and apparatus for 3-D graphics display system |
US5361386A (en) | 1987-12-04 | 1994-11-01 | Evans & Sutherland Computer Corp. | System for polygon interpolation using instantaneous values in a variable |
US4974176A (en) | 1987-12-18 | 1990-11-27 | General Electric Company | Microtexture for close-in detail |
JPH0693181B2 (ja) | 1988-03-18 | 1994-11-16 | 株式会社日立製作所 | 表示装置 |
US6054999A (en) | 1988-03-22 | 2000-04-25 | Strandberg; Oerjan | Method and apparatus for computer supported animation |
EP0336430B1 (en) | 1988-04-08 | 1994-10-19 | Dainippon Screen Mfg. Co., Ltd. | Method of extracting contour of subject image from original |
US4907174A (en) | 1988-06-02 | 1990-03-06 | Sun Microsystems, Inc. | Z-buffer allocated for window identification |
US5097427A (en) | 1988-07-06 | 1992-03-17 | Hewlett-Packard Company | Texture mapping for computer graphics display controller system |
US5315692A (en) | 1988-07-22 | 1994-05-24 | Hughes Training, Inc. | Multiple object pipeline display system |
US5003496A (en) | 1988-08-26 | 1991-03-26 | Eastman Kodak Company | Page memory control in a raster image processor |
US4989138A (en) | 1988-09-02 | 1991-01-29 | Tektronix, Inc. | Single bus graphics data processing pipeline with decentralized bus arbitration |
JPH0727581B2 (ja) | 1988-09-09 | 1995-03-29 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 図形処理装置 |
US5016183A (en) | 1988-09-13 | 1991-05-14 | Computer Design, Inc. | Textile design system and method |
US5018076A (en) | 1988-09-16 | 1991-05-21 | Chips And Technologies, Inc. | Method and circuitry for dual panel displays |
GB8828342D0 (en) | 1988-12-05 | 1989-01-05 | Rediffusion Simulation Ltd | Image generator |
US5062057A (en) | 1988-12-09 | 1991-10-29 | E-Machines Incorporated | Computer display controller with reconfigurable frame buffer memory |
US5659673A (en) | 1988-12-16 | 1997-08-19 | Canon Kabushiki Kaisha | Image processing apparatus |
US5255353A (en) | 1989-02-28 | 1993-10-19 | Ricoh Company, Ltd. | Three-dimensional shadow processor for an image forming apparatus |
US5204944A (en) | 1989-07-28 | 1993-04-20 | The Trustees Of Columbia University In The City Of New York | Separable image warping methods and systems using spatial lookup tables |
DE69031202T2 (de) | 1989-10-13 | 1998-02-19 | Matsushita Electric Ind Co Ltd | Verfahren und Gerät zur Farbkompensierung in Farbbildern |
JPH0776991B2 (ja) | 1989-10-24 | 1995-08-16 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Nurbsデータ変換方法及び装置 |
JP3005007B2 (ja) | 1989-12-21 | 2000-01-31 | キヤノン株式会社 | 画像符号化装置 |
SE464265B (sv) | 1990-01-10 | 1991-03-25 | Stefan Blixt | Grafikprocessor |
GB2240015A (en) | 1990-01-15 | 1991-07-17 | Philips Electronic Associated | Texture memory addressing |
GB2240017A (en) | 1990-01-15 | 1991-07-17 | Philips Electronic Associated | New, interpolated texture values are fed back to texture memories |
US5224208A (en) | 1990-03-16 | 1993-06-29 | Hewlett-Packard Company | Gradient calculation for texture mapping |
GB2244412B (en) | 1990-05-12 | 1994-03-02 | Rediffusion Simulation Ltd | Image generator |
EP0464907B1 (en) | 1990-06-29 | 1996-10-09 | Philips Electronics Uk Limited | Generating an image |
EP0470782B1 (en) | 1990-08-08 | 1996-02-14 | The Peerless Group | Image rendering process and apparatus |
US5241658A (en) | 1990-08-21 | 1993-08-31 | Apple Computer, Inc. | Apparatus for storing information in and deriving information from a frame buffer |
US5268995A (en) | 1990-11-21 | 1993-12-07 | Motorola, Inc. | Method for executing graphics Z-compare and pixel merge instructions in a data processor |
US5268996A (en) | 1990-12-20 | 1993-12-07 | General Electric Company | Computer image generation method for determination of total pixel illumination due to plural light sources |
US5307450A (en) | 1991-02-19 | 1994-04-26 | Silicon Graphics, Inc. | Z-subdivision for improved texture mapping |
JPH07122908B2 (ja) | 1991-03-12 | 1995-12-25 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 3次元のソリッド物体を表す表示可能情報を生成する装置と方法 |
US5415549A (en) | 1991-03-21 | 1995-05-16 | Atari Games Corporation | Method for coloring a polygon on a video display |
JP3316592B2 (ja) | 1991-06-17 | 2002-08-19 | サン・マイクロシステムズ・インコーポレーテッド | 二重バッファ・出力ディスプレー・システム、および、第1のフレーム・バッファおよび第2のフレーム・バッファ相互間の切り換えを行う方法 |
EP0591325B1 (en) | 1991-06-28 | 2007-12-05 | LIM, Hong Lip | Improvements in visibility calculations for 3d computer graphics |
JP3321651B2 (ja) | 1991-07-26 | 2002-09-03 | サン・マイクロシステムズ・インコーポレーテッド | コンピュータの出力表示のためのフレームバッファメモリを提供する装置および方法 |
KR100319768B1 (ko) | 1991-08-13 | 2002-04-22 | 마거리트 와그너-달 | 영상화및그래픽처리시스템내에서의다차원주소발생방법 |
TW225595B (ja) | 1991-09-03 | 1994-06-21 | Gen Electric | |
US5404445A (en) | 1991-10-31 | 1995-04-04 | Toshiba America Information Systems, Inc. | External interface for a high performance graphics adapter allowing for graphics compatibility |
US5353424A (en) * | 1991-11-19 | 1994-10-04 | Digital Equipment Corporation | Fast tag compare and bank select in set associative cache |
US5345541A (en) | 1991-12-20 | 1994-09-06 | Apple Computer, Inc. | Method and apparatus for approximating a value between two endpoint values in a three-dimensional image rendering device |
US5377313A (en) | 1992-01-29 | 1994-12-27 | International Business Machines Corporation | Computer graphics display method and system with shadow generation |
AU4276493A (en) | 1992-04-17 | 1993-11-18 | Intel Corporation | Visual frame buffer architecture |
JP2760731B2 (ja) | 1992-04-30 | 1998-06-04 | 株式会社東芝 | グラフィックス互換性を可能にする高性能グラフィックスアダプタ用外部インターフェース回路 |
US5469535A (en) | 1992-05-04 | 1995-11-21 | Midway Manufacturing Company | Three-dimensional, texture mapping display system |
GB2267203B (en) | 1992-05-15 | 1997-03-19 | Fujitsu Ltd | Three-dimensional graphics drawing apparatus, and a memory apparatus to be used in texture mapping |
US5366376A (en) | 1992-05-22 | 1994-11-22 | Atari Games Corporation | Driver training system and method with performance data feedback |
US5473736A (en) | 1992-06-08 | 1995-12-05 | Chroma Graphics | Method and apparatus for ordering and remapping colors in images of real two- and three-dimensional objects |
US5432900A (en) | 1992-06-19 | 1995-07-11 | Intel Corporation | Integrated graphics and video computer display system |
JPH0628485A (ja) | 1992-07-09 | 1994-02-04 | Toshiba Corp | テクスチャーアドレス生成器、テクスチャーパターン生成器、テクスチャー描画装置及びテクスチャーアドレス生成方法 |
US5475803A (en) | 1992-07-10 | 1995-12-12 | Lsi Logic Corporation | Method for 2-D affine transformation of images |
JPH07325934A (ja) | 1992-07-10 | 1995-12-12 | Walt Disney Co:The | 仮想世界に向上したグラフィックスを提供する方法および装置 |
GB2270243B (en) | 1992-08-26 | 1996-02-28 | Namco Ltd | Image synthesizing system |
US5431471A (en) | 1992-09-16 | 1995-07-11 | Mi-Jack Products, Inc. | Side fitting connection apparatus for lifting trailers and containers |
JP2682559B2 (ja) | 1992-09-30 | 1997-11-26 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 物体の画像をディスプレイ装置上に表示する装置及び方法並びにコンピュータ・グラフィックス表示システム |
US5432895A (en) | 1992-10-01 | 1995-07-11 | University Corporation For Atmospheric Research | Virtual reality imaging system |
GB2271259A (en) | 1992-10-02 | 1994-04-06 | Canon Res Ct Europe Ltd | Processing image data |
US5890190A (en) | 1992-12-31 | 1999-03-30 | Intel Corporation | Frame buffer for storing graphics and video data |
US5559954A (en) | 1993-02-24 | 1996-09-24 | Intel Corporation | Method & apparatus for displaying pixels from a multi-format frame buffer |
US5859645A (en) | 1993-03-26 | 1999-01-12 | Loral Corporation | Method for point sampling in computer graphics systems |
KR0169152B1 (ko) | 1993-04-09 | 1999-01-15 | 이리마지리 쇼우이찌로 | 게임기용 멀티 접속 장치 |
US5644364A (en) | 1993-04-16 | 1997-07-01 | Avid Technology, Inc. | Media pipeline with multichannel video processing and playback |
US5606650A (en) | 1993-04-22 | 1997-02-25 | Apple Computer, Inc. | Method and apparatus for storage and retrieval of a texture map in a graphics display system |
JP3026698B2 (ja) | 1993-05-27 | 2000-03-27 | キヤノン株式会社 | 画像処理方法及びその装置 |
GB2278524B (en) | 1993-05-28 | 1997-12-10 | Nihon Unisys Ltd | Method and apparatus for rendering visual images employing area calculation and blending of fractional pixel lists for anti-aliasing and transparency |
US5878273A (en) | 1993-06-24 | 1999-03-02 | Discovision Associates | System for microprogrammable state machine in video parser disabling portion of processing stages responsive to sequence-- end token generating by token generator responsive to received data |
US5408650A (en) | 1993-06-29 | 1995-04-18 | Digital Equipment Corporation | Memory analysis system for dynamically displaying memory allocation and de-allocation events associated with an application program |
JPH0778267A (ja) | 1993-07-09 | 1995-03-20 | Silicon Graphics Inc | 陰影を表示する方法及びコンピュータ制御表示システム |
US5490240A (en) | 1993-07-09 | 1996-02-06 | Silicon Graphics, Inc. | System and method of generating interactive computer graphic images incorporating three dimensional textures |
GB9316214D0 (en) | 1993-08-05 | 1993-09-22 | Philips Electronics Uk Ltd | Image processing |
EP0723689B1 (en) | 1993-10-15 | 1998-02-04 | EVANS & SUTHERLAND COMPUTER CORPORATION | Direct rendering of textured height fields |
JPH07146952A (ja) | 1993-11-22 | 1995-06-06 | Konami Kk | 3次元画像処理装置 |
WO1995015528A1 (en) | 1993-11-30 | 1995-06-08 | Vlsi Technology, Inc. | A reallocatable memory subsystem enabling transparent transfer of memory function during upgrade |
JPH07200386A (ja) | 1993-12-28 | 1995-08-04 | Toshiba Corp | 共有メモリのアクセス制御装置および画像形成装置 |
US5592597A (en) | 1994-02-14 | 1997-01-07 | Parametric Technology Corporation | Real-time image generation system for simulating physical paint, drawing media, and feature modeling with 3-D graphics |
US5557712A (en) | 1994-02-16 | 1996-09-17 | Apple Computer, Inc. | Color map tables smoothing in a color computer graphics system avoiding objectionable color shifts |
US5548709A (en) | 1994-03-07 | 1996-08-20 | Silicon Graphics, Inc. | Apparatus and method for integrating texture memory and interpolation logic in a computer system |
US5487146A (en) | 1994-03-08 | 1996-01-23 | Texas Instruments Incorporated | Plural memory access address generation employing guide table entries forming linked list |
US5506604A (en) | 1994-04-06 | 1996-04-09 | Cirrus Logic, Inc. | Apparatus, systems and methods for processing video data in conjunction with a multi-format frame buffer |
US5461712A (en) | 1994-04-18 | 1995-10-24 | International Business Machines Corporation | Quadrant-based two-dimensional memory manager |
US5608864A (en) | 1994-04-29 | 1997-03-04 | Cirrus Logic, Inc. | Variable pixel depth and format for video windows |
US5664162A (en) | 1994-05-23 | 1997-09-02 | Cirrus Logic, Inc. | Graphics accelerator with dual memory controllers |
JP3220328B2 (ja) | 1994-06-01 | 2001-10-22 | 株式会社ソニー・コンピュータエンタテインメント | ビデオゲーム機 |
US5694143A (en) | 1994-06-02 | 1997-12-02 | Accelerix Limited | Single chip frame buffer and graphics accelerator |
WO1995035572A1 (en) | 1994-06-20 | 1995-12-28 | Neomagic Corporation | Graphics controller integrated circuit without memory interface |
US5600763A (en) | 1994-07-21 | 1997-02-04 | Apple Computer, Inc. | Error-bounded antialiased rendering of complex scenes |
US5684941A (en) | 1994-09-01 | 1997-11-04 | Cirrus Logic, Inc. | Interpolation rendering of polygons into a pixel grid |
US5678037A (en) | 1994-09-16 | 1997-10-14 | Vlsi Technology, Inc. | Hardware graphics accelerator system and method therefor |
US5553228A (en) | 1994-09-19 | 1996-09-03 | International Business Machines Corporation | Accelerated interface between processors and hardware adapters |
US5933154A (en) | 1994-09-30 | 1999-08-03 | Apple Computer, Inc. | Multi-panel video display control addressing of interleaved frame buffers via CPU address conversion |
GB2293938B (en) | 1994-10-04 | 1999-01-20 | Winbond Electronics Corp | Apparatus for digital video format conversion |
TW278162B (ja) | 1994-10-07 | 1996-06-11 | Yamaha Corp | |
TW357913U (en) | 1994-10-12 | 1999-05-01 | Sega Enterprises Kk | Peripheral machinery |
JPH08123969A (ja) | 1994-10-28 | 1996-05-17 | Mitsubishi Electric Corp | マッピング装置 |
GB9422089D0 (en) | 1994-11-02 | 1994-12-21 | Philips Electronics Uk Ltd | Blurring for computer graphics |
US5593350A (en) | 1994-11-04 | 1997-01-14 | Thrustmaster, Inc. | Video game card having interrupt resistant behavior |
US6067098A (en) | 1994-11-16 | 2000-05-23 | Interactive Silicon, Inc. | Video/graphics controller which performs pointer-based display list video refresh operation |
US5838334A (en) | 1994-11-16 | 1998-11-17 | Dye; Thomas A. | Memory and graphics controller which performs pointer-based display list video refresh operations |
JP2637931B2 (ja) | 1994-12-01 | 1997-08-06 | インターナショナル・ビジネス・マシーンズ・コーポレイション | テクスチャ・マッピングを行うコンピュータ・システム |
US5561752A (en) | 1994-12-22 | 1996-10-01 | Apple Computer, Inc. | Multipass graphics rendering method and apparatus with re-traverse flag |
KR100242880B1 (ko) | 1994-12-29 | 2000-02-01 | 전주범 | 분할된 영역의 윤곽추적장치 |
JPH08221593A (ja) | 1995-02-14 | 1996-08-30 | Hitachi Ltd | 図形表示装置 |
US5649082A (en) | 1995-03-20 | 1997-07-15 | Silicon Graphics, Inc. | Efficient method and apparatus for determining texture coordinates for lines and polygons |
US5900881A (en) | 1995-03-22 | 1999-05-04 | Ikedo; Tsuneo | Computer graphics circuit |
US5835096A (en) | 1995-03-24 | 1998-11-10 | 3D Labs | Rendering system using 3D texture-processing hardware for accelerated 2D rendering |
US5764228A (en) | 1995-03-24 | 1998-06-09 | 3Dlabs Inc., Ltd. | Graphics pre-processing and rendering system |
US5805175A (en) | 1995-04-14 | 1998-09-08 | Nvidia Corporation | Method and apparatus for providing a plurality of color formats from a single frame buffer |
US5714981A (en) | 1995-04-21 | 1998-02-03 | Advanced Gravis Computer Technology, Ltd. | Gameport communication apparatus and method |
US5651104A (en) | 1995-04-25 | 1997-07-22 | Evans & Sutherland Computer Corporation | Computer graphics system and process for adaptive supersampling |
US5751295A (en) | 1995-04-27 | 1998-05-12 | Control Systems, Inc. | Graphics accelerator chip and method |
US5798762A (en) | 1995-05-10 | 1998-08-25 | Cagent Technologies, Inc. | Controlling a real-time rendering engine using a list-based control mechanism |
US5638535A (en) | 1995-05-15 | 1997-06-10 | Nvidia Corporation | Method and apparatus for providing flow control with lying for input/output operations in a computer system |
US5657443A (en) | 1995-05-16 | 1997-08-12 | Hewlett-Packard Company | Enhanced test system for an application-specific memory scheme |
JP3081774B2 (ja) | 1995-05-24 | 2000-08-28 | シャープ株式会社 | テクスチャーパターンメモリ回路 |
JPH08328941A (ja) | 1995-05-31 | 1996-12-13 | Nec Corp | メモリアクセス制御回路 |
US5745118A (en) | 1995-06-06 | 1998-04-28 | Hewlett-Packard Company | 3D bypass for download of textures |
US5751292A (en) | 1995-06-06 | 1998-05-12 | Hewlett-Packard Company | Texture mapping method and system |
US5877741A (en) | 1995-06-07 | 1999-03-02 | Seiko Epson Corporation | System and method for implementing an overlay pathway |
US5754191A (en) | 1995-06-23 | 1998-05-19 | Cirrus Logic, Inc. | Method and apparatus for optimizing pixel data write operations to a tile based frame buffer |
US5828383A (en) | 1995-06-23 | 1998-10-27 | S3 Incorporated | Controller for processing different pixel data types stored in the same display memory by use of tag bits |
JPH0916806A (ja) | 1995-07-04 | 1997-01-17 | Ricoh Co Ltd | 立体画像処理装置 |
JP3349871B2 (ja) | 1995-07-10 | 2002-11-25 | 株式会社リコー | 画像処理装置 |
JP3780011B2 (ja) * | 1995-07-14 | 2006-05-31 | 株式会社ルネサステクノロジ | 半導体記憶装置 |
US5682522A (en) | 1995-07-18 | 1997-10-28 | Silicon Integrated Systems Corp. | Shared memory architecture of graphics frame buffer and hard disk cache |
US5628686A (en) | 1995-07-31 | 1997-05-13 | Microsoft Corporation | Apparatus and method for bidirectional data communication in a game port |
US5886701A (en) | 1995-08-04 | 1999-03-23 | Microsoft Corporation | Graphics rendering device and method for operating same |
IL114838A0 (en) | 1995-08-04 | 1996-11-14 | Spiegel Ehud | Apparatus and method for object tracking |
US6016150A (en) | 1995-08-04 | 2000-01-18 | Microsoft Corporation | Sprite compositor and method for performing lighting and shading operations using a compositor to combine factored image layers |
US6008820A (en) | 1995-08-04 | 1999-12-28 | Microsoft Corporation | Processor for controlling the display of rendered image layers and method for controlling same |
US5870097A (en) | 1995-08-04 | 1999-02-09 | Microsoft Corporation | Method and system for improving shadowing in a graphics rendering system |
US5880737A (en) | 1995-08-04 | 1999-03-09 | Microsoft Corporation | Method and system for accessing texture data in environments with high latency in a graphics rendering system |
US5867166A (en) | 1995-08-04 | 1999-02-02 | Microsoft Corporation | Method and system for generating images using Gsprites |
US5949428A (en) | 1995-08-04 | 1999-09-07 | Microsoft Corporation | Method and apparatus for resolving pixel data in a graphics rendering system |
US5999189A (en) * | 1995-08-04 | 1999-12-07 | Microsoft Corporation | Image compression to reduce pixel and texture memory requirements in a real-time image generator |
US5801711A (en) | 1995-08-08 | 1998-09-01 | Hewlett Packard Company | Polyline and triangle strip data management techniques for enhancing performance of computer graphics system |
US5819017A (en) | 1995-08-22 | 1998-10-06 | Silicon Graphics, Inc. | Apparatus and method for selectively storing depth information of a 3-D image |
US5767856A (en) | 1995-08-22 | 1998-06-16 | Rendition, Inc. | Pixel engine pipeline for a 3D graphics accelerator |
US5657478A (en) | 1995-08-22 | 1997-08-12 | Rendition, Inc. | Method and apparatus for batchable frame switch and synchronization operations |
US5734386A (en) | 1995-09-08 | 1998-03-31 | Evans & Sutherland Computer Corporation | System and method for displaying textured polygons using planar texture interpolation |
JP2861890B2 (ja) | 1995-09-28 | 1999-02-24 | 日本電気株式会社 | カラー画像表示装置 |
US6026182A (en) | 1995-10-05 | 2000-02-15 | Microsoft Corporation | Feature segmentation |
US6057851A (en) | 1995-10-06 | 2000-05-02 | International Business Machines Corp. | Computer graphics system having efficient texture mapping with perspective correction |
US6007428A (en) | 1995-10-09 | 1999-12-28 | Nintendo Co., Ltd. | Operation controlling device and video processing system used therewith |
KR100371456B1 (ko) | 1995-10-09 | 2004-03-30 | 닌텐도가부시키가이샤 | 삼차원화상처리시스템 |
JP3524247B2 (ja) | 1995-10-09 | 2004-05-10 | 任天堂株式会社 | ゲーム機およびそれを用いたゲーム機システム |
US5835102A (en) | 1995-10-19 | 1998-11-10 | Sparta, Inc. | System for transmission and recovery of digital data using video graphics display processor and method of operation thereof |
US5977979A (en) | 1995-10-31 | 1999-11-02 | International Business Machines Corporation | Simulated three-dimensional display using bit-mapped information |
US5740343A (en) | 1995-11-03 | 1998-04-14 | 3Dfx Interactive, Incorporated | Texture compositing apparatus and method |
US5724561A (en) | 1995-11-03 | 1998-03-03 | 3Dfx Interactive, Incorporated | System and method for efficiently determining a fog blend value in processing graphical images |
US5808630A (en) | 1995-11-03 | 1998-09-15 | Sierra Semiconductor Corporation | Split video architecture for personal computers |
US5760783A (en) | 1995-11-06 | 1998-06-02 | Silicon Graphics, Inc. | Method and system for providing texture using a selected portion of a texture map |
KR100261076B1 (ko) | 1995-11-09 | 2000-07-01 | 윤종용 | 범프 맵핑과 퐁 쉐이딩을 동시에 수행하는 렌더링방법 및 장치 |
JP3700871B2 (ja) | 1995-11-11 | 2005-09-28 | ソニー株式会社 | 画像変換装置 |
US5940089A (en) | 1995-11-13 | 1999-08-17 | Ati Technologies | Method and apparatus for displaying multiple windows on a display monitor |
US6022274A (en) | 1995-11-22 | 2000-02-08 | Nintendo Co., Ltd. | Video game system using memory module |
US6155926A (en) | 1995-11-22 | 2000-12-05 | Nintendo Co., Ltd. | Video game system and method with enhanced three-dimensional character and background control |
US6331856B1 (en) | 1995-11-22 | 2001-12-18 | Nintendo Co., Ltd. | Video game system with coprocessor providing high speed efficient 3D graphics and digital audio signal processing |
US5883638A (en) | 1995-12-01 | 1999-03-16 | Lucas Digital, Ltd. | Method and apparatus for creating lifelike digital representations of computer animated objects by providing corrective enveloping |
WO1997021192A1 (en) | 1995-12-06 | 1997-06-12 | Intergraph Corporation | Peer-to-peer parallel processing graphics accelerator |
US5850229A (en) | 1995-12-15 | 1998-12-15 | Raindrop Geomagic, Inc. | Apparatus and method for geometric morphing |
US6111584A (en) | 1995-12-18 | 2000-08-29 | 3Dlabs Inc. Ltd. | Rendering system with mini-patch retrieval from local texture storage |
US5748199A (en) | 1995-12-20 | 1998-05-05 | Synthonics Incorporated | Method and apparatus for converting a two dimensional motion picture into a three dimensional motion picture |
US5740383A (en) | 1995-12-22 | 1998-04-14 | Cirrus Logic, Inc. | Dynamic arbitration priority |
US5831625A (en) | 1996-01-02 | 1998-11-03 | Integrated Device Technology, Inc. | Wavelet texturing |
US5892517A (en) | 1996-01-02 | 1999-04-06 | Integrated Device Technology, Inc. | Shared access texturing of computer graphic images |
EP0786756B1 (en) | 1996-01-23 | 2009-03-25 | Hewlett-Packard Company, A Delaware Corporation | Data transfer arbitration for display controller |
US5943058A (en) | 1996-01-25 | 1999-08-24 | Silicon Graphics, Inc. | Texture mapping circuit for performing data interpolations |
US5781927A (en) | 1996-01-30 | 1998-07-14 | United Microelectronics Corporation | Main memory arbitration with priority scheduling capability including multiple priorty signal connections |
US5739819A (en) | 1996-02-05 | 1998-04-14 | Scitex Corporation Ltd. | Method and apparatus for generating an artificial shadow in a two dimensional color image |
US5963220A (en) | 1996-02-08 | 1999-10-05 | Industrial Technology Research Institute | Mip map/rip map texture linear addressing memory organization and address generator |
DE19606357A1 (de) | 1996-02-12 | 1997-08-14 | Gmd Gmbh | Bildverarbeitungsverfahren zur Darstellung von spiegelnden Objekten und zugehörige Vorrichtung |
US5777623A (en) | 1996-02-15 | 1998-07-07 | Canon Kabushiki Kaisha | Apparatus and method for performing perspectively correct interpolation in computer graphics in a variable direction along a line of pixels |
US5801720A (en) * | 1996-02-20 | 1998-09-01 | National Semiconductor Corporation | Data transfer from a graphics subsystem to system memory |
US5914725A (en) | 1996-03-07 | 1999-06-22 | Powertv, Inc. | Interpolation of pixel values and alpha values in a computer graphics display device |
US5870587A (en) | 1996-03-20 | 1999-02-09 | International Business Machines Corporation | Information-handling system, method, and article of manufacture including a mechanism for providing an improved application binary interface |
US5982390A (en) | 1996-03-25 | 1999-11-09 | Stan Stoneking | Controlling personality manifestations by objects in a computer-assisted animation environment |
US6078311A (en) | 1996-03-26 | 2000-06-20 | Pacific Digital Peripherals, Inc. | Joystick game adapter card for a personal computer |
US5809219A (en) | 1996-04-15 | 1998-09-15 | Silicon Graphics, Inc. | Analytic motion blur coverage in the generation of computer graphics imagery |
US6020931A (en) | 1996-04-25 | 2000-02-01 | George S. Sheng | Video composition and position system and media signal communication system |
US5909218A (en) | 1996-04-25 | 1999-06-01 | Matsushita Electric Industrial Co., Ltd. | Transmitter-receiver of three-dimensional skeleton structure motions and method thereof |
US5831624A (en) | 1996-04-30 | 1998-11-03 | 3Dfx Interactive Inc | Level of detail texture filtering with dithering and mipmaps |
US5818456A (en) | 1996-04-30 | 1998-10-06 | Evans & Sutherland Computer Corporation | Computer graphics system with adaptive pixel multisampler |
US5886705A (en) | 1996-05-17 | 1999-03-23 | Seiko Epson Corporation | Texture memory organization based on data locality |
US5912676A (en) | 1996-06-14 | 1999-06-15 | Lsi Logic Corporation | MPEG decoder frame memory interface which is reconfigurable for different frame store architectures |
US5966134A (en) | 1996-06-28 | 1999-10-12 | Softimage | Simulating cel animation and shading |
US6046746A (en) | 1996-07-01 | 2000-04-04 | Sun Microsystems, Inc. | Method and apparatus implementing high resolution rendition of Z-buffered primitives |
US6115047A (en) | 1996-07-01 | 2000-09-05 | Sun Microsystems, Inc. | Method and apparatus for implementing efficient floating point Z-buffering |
US5745125A (en) * | 1996-07-02 | 1998-04-28 | Sun Microsystems, Inc. | Floating point processor for a three-dimensional graphics accelerator which includes floating point, lighting and set-up cores for improved performance |
US5877771A (en) | 1996-07-12 | 1999-03-02 | Silicon Graphics, Inc. | Method and apparatus for supersampling based on the local rate of change in texture |
US6038348A (en) | 1996-07-24 | 2000-03-14 | Oak Technology, Inc. | Pixel image enhancement system and method |
US5887155A (en) | 1996-07-25 | 1999-03-23 | Microunity Systems Engineering, Inc. | Vertex based geometry engine system for use in integrated circuit design |
US5751291A (en) | 1996-07-26 | 1998-05-12 | Hewlett-Packard Company | System and method for accelerated occlusion culling |
MY119610A (en) | 1996-07-31 | 2005-06-30 | Sony Corp | Apparatus and method for storing and accessing picture generation data |
US5828382A (en) | 1996-08-02 | 1998-10-27 | Cirrus Logic, Inc. | Apparatus for dynamic XY tiled texture caching |
US5923334A (en) | 1996-08-05 | 1999-07-13 | International Business Machines Corporation | Polyhedral environment map utilizing a triangular data structure |
US5933150A (en) | 1996-08-06 | 1999-08-03 | Interval Research Corporation | System for image manipulation and animation using embedded constraint graphics |
IL119082A (en) | 1996-08-16 | 2001-04-30 | Virtue Ltd | A method for creating graphic characters |
JP3387750B2 (ja) | 1996-09-02 | 2003-03-17 | 株式会社リコー | シェーディング処理装置 |
DE19637463A1 (de) | 1996-09-13 | 1998-03-26 | Gsf Forschungszentrum Umwelt | Verfahren zur Anzeige von geometrischen Objektoberflächen |
US6104417A (en) | 1996-09-13 | 2000-08-15 | Silicon Graphics, Inc. | Unified memory computer architecture with dynamic graphics memory allocation |
US6115049A (en) | 1996-09-30 | 2000-09-05 | Apple Computer, Inc. | Method and apparatus for high performance antialiasing which minimizes per pixel storage and object data bandwidth |
US5987567A (en) | 1996-09-30 | 1999-11-16 | Apple Computer, Inc. | System and method for caching texture map information |
US5926647A (en) | 1996-10-11 | 1999-07-20 | Divicom Inc. | Processing system with dynamic alteration of a color look-up table |
US6018350A (en) | 1996-10-29 | 2000-01-25 | Real 3D, Inc. | Illumination and shadow simulation in a computer graphics/imaging system |
US5933155A (en) | 1996-11-06 | 1999-08-03 | Silicon Graphics, Inc. | System and method for buffering multiple frames while controlling latency |
US5926182A (en) | 1996-11-19 | 1999-07-20 | International Business Machines Corporation | Efficient rendering utilizing user defined shields and windows |
JP4071290B2 (ja) | 1996-11-21 | 2008-04-02 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | コンピュータグラフィックス画像を発生する方法および装置 |
US5861888A (en) | 1996-11-27 | 1999-01-19 | Vlsi Technology Inc | Method and a system for the nonlinear storage of a texture map within a linear memory device |
JP3885262B2 (ja) | 1996-12-17 | 2007-02-21 | 株式会社セガ | テクスチャマップ上の複数画素を混合する方法及び、これを用いた複数画素混合回路と画像処理装置 |
KR100225072B1 (ko) | 1996-12-18 | 1999-10-15 | 윤종용 | 포멧 콘버터 |
US5912675A (en) | 1996-12-19 | 1999-06-15 | Avid Technology, Inc. | System and method using bounding volumes for assigning vertices of envelopes to skeleton elements in an animation system |
US5831640A (en) | 1996-12-20 | 1998-11-03 | Cirrus Logic, Inc. | Enhanced texture map data fetching circuit and method |
US6057847A (en) | 1996-12-20 | 2000-05-02 | Jenkins; Barry | System and method of image generation and encoding using primitive reprojection |
US6111582A (en) | 1996-12-20 | 2000-08-29 | Jenkins; Barry L. | System and method of image generation and encoding using primitive reprojection |
JP3738924B2 (ja) | 1996-12-24 | 2006-01-25 | ソニー株式会社 | 描画装置および方法 |
US5933529A (en) | 1996-12-24 | 1999-08-03 | Daewoo Electronics Co., Ltd. | Method of tracing a contour of an object based on background information of the object |
US5844576A (en) | 1996-12-30 | 1998-12-01 | Cirrus Logic, Inc. | Tiled linear host texture storage |
US5986663A (en) | 1997-10-10 | 1999-11-16 | Cirrus Logic, Inc. | Auto level of detail-based MIP mapping in a graphics processor |
US6052127A (en) | 1996-12-30 | 2000-04-18 | Cirrus Logic, Inc. | Circuit for determining non-homogenous second order perspective texture mapping coordinates using linear interpolation |
US6097435A (en) | 1997-01-31 | 2000-08-01 | Hughes Electronics Corporation | Video system with selectable bit rate reduction |
US5990903A (en) | 1997-02-03 | 1999-11-23 | Micron Technologies, Inc. | Method and apparatus for performing chroma key, transparency and fog operations |
DE19708679A1 (de) | 1997-02-21 | 1998-08-27 | Gmd Gmbh | Bilddarstellungsverfahren und Vorrichtung zur Durchführung des Verfahrens |
US5870098A (en) | 1997-02-26 | 1999-02-09 | Evans & Sutherland Computer Corporation | Method for rendering shadows on a graphical display |
US5880736A (en) | 1997-02-28 | 1999-03-09 | Silicon Graphics, Inc. | Method system and computer program product for shading |
US6037948A (en) | 1997-03-07 | 2000-03-14 | Silicon Graphics, Inc. | Method, system, and computer program product for updating texture with overscan |
US6061462A (en) | 1997-03-07 | 2000-05-09 | Phoenix Licensing, Inc. | Digital cartoon and animation process |
US6043804A (en) | 1997-03-21 | 2000-03-28 | Alliance Semiconductor Corp. | Color pixel format conversion incorporating color look-up table and post look-up arithmetic operation |
US6088042A (en) | 1997-03-31 | 2000-07-11 | Katrix, Inc. | Interactive motion data animation system |
US5949421A (en) | 1997-03-31 | 1999-09-07 | Cirrus Logic, Inc. | Method and system for efficient register sorting for three dimensional graphics |
US6057859A (en) | 1997-03-31 | 2000-05-02 | Katrix, Inc. | Limb coordination system for interactive computer animation of articulated characters with blended motion data |
JP2845857B2 (ja) | 1997-04-01 | 1999-01-13 | コナミ株式会社 | 画像の半透明表示装置,半透明表示方法,及びコンピュータプログラムを記録した機械読取り可能な記録媒体 |
WO1998045815A1 (en) | 1997-04-04 | 1998-10-15 | Intergraph Corporation | Apparatus and method for applying effects to graphical images |
JP3294149B2 (ja) | 1997-04-23 | 2002-06-24 | シャープ株式会社 | 立体テクスチャマッピング処理装置及びそれを用いた3次元画像生成装置 |
US5920876A (en) | 1997-04-23 | 1999-07-06 | Sun Microsystems, Inc. | Performing exact garbage collection using bitmaps that identify pointer values within objects |
US6005583A (en) | 1997-04-30 | 1999-12-21 | Hewlett-Packard Company | Precise gradient calculation system and method for a texture mapping system of a computer graphics system |
US5956042A (en) | 1997-04-30 | 1999-09-21 | Hewlett-Packard Co. | Graphics accelerator with improved lighting processor |
US5999198A (en) | 1997-05-09 | 1999-12-07 | Compaq Computer Corporation | Graphics address remapping table entry feature flags for customizing the operation of memory pages associated with an accelerated graphics port device |
US6028608A (en) | 1997-05-09 | 2000-02-22 | Jenkins; Barry | System and method of perception-based image generation and encoding |
US5861893A (en) | 1997-05-27 | 1999-01-19 | Intel Corporation | System and method for graphics data concurrency and coherency |
US6437781B1 (en) | 1997-05-30 | 2002-08-20 | Hewlett-Packard Company | Computer graphics system having per pixel fog blending |
US5909225A (en) | 1997-05-30 | 1999-06-01 | Hewlett-Packard Co. | Frame buffer cache for graphics applications |
CA2239279C (en) | 1997-06-02 | 2002-04-23 | Nippon Telegraph And Telephone Corporation | Image generating apparatus and method |
US5870109A (en) | 1997-06-06 | 1999-02-09 | Digital Equipment Corporation | Graphic system with read/write overlap detector |
US6092158A (en) | 1997-06-13 | 2000-07-18 | Intel Corporation | Method and apparatus for arbitrating between command streams |
US5945997A (en) | 1997-06-26 | 1999-08-31 | S3 Incorporated | Block- and band-oriented traversal in three-dimensional triangle rendering |
US6052133A (en) | 1997-06-27 | 2000-04-18 | S3 Incorporated | Multi-function controller and method for a computer graphics display system |
US5936641A (en) | 1997-06-27 | 1999-08-10 | Object Technology Licensing Corp | Graphics hardware acceleration method, computer program, and system |
US6043821A (en) | 1997-06-30 | 2000-03-28 | Ati Technologies, Inc. | Method and apparatus for rendering pixel information from blended texture maps |
US6057862A (en) | 1997-07-01 | 2000-05-02 | Memtrax Llc | Computer system having a common display memory and main memory |
US6118462A (en) | 1997-07-01 | 2000-09-12 | Memtrax Llc | Computer system controller having internal memory and external memory control |
US6038031A (en) | 1997-07-28 | 2000-03-14 | 3Dlabs, Ltd | 3D graphics object copying with reduced edge artifacts |
US6011562A (en) | 1997-08-01 | 2000-01-04 | Avid Technology Inc. | Method and system employing an NLE to create and modify 3D animations by mixing and compositing animation data |
US6046747A (en) | 1997-08-04 | 2000-04-04 | Hewlett-Packard Company | Graphics application programming interface avoiding repetitive transfer of texture mapping data |
US6002410A (en) | 1997-08-25 | 1999-12-14 | Chromatic Research, Inc. | Reconfigurable texture cache |
US5903283A (en) | 1997-08-27 | 1999-05-11 | Chips & Technologies, Inc. | Video memory controller with dynamic bus arbitration |
US6016151A (en) | 1997-09-12 | 2000-01-18 | Neomagic Corp. | 3D triangle rendering by texture hardware and color software using simultaneous triangle-walking and interpolation for parallel operation |
US6054993A (en) | 1997-09-17 | 2000-04-25 | Cirrus Logic, Inc. | Chroma-keyed specular texture mapping in a graphics processor |
US5956043A (en) | 1997-09-18 | 1999-09-21 | Novell, Inc. | Textured tile rotation system and method |
US5936683A (en) | 1997-09-29 | 1999-08-10 | Neo Magic Corp. | YUV-to-RGB conversion without multiplies using look-up tables and pre-clipping |
US5986677A (en) | 1997-09-30 | 1999-11-16 | Compaq Computer Corporation | Accelerated graphics port read transaction merging |
US5949423A (en) | 1997-09-30 | 1999-09-07 | Hewlett Packard Company | Z buffer with degree of visibility test |
US6052129A (en) | 1997-10-01 | 2000-04-18 | International Business Machines Corporation | Method and apparatus for deferred clipping of polygons |
US5995121A (en) | 1997-10-16 | 1999-11-30 | Hewlett-Packard Company | Multiple graphics pipeline integration with a windowing system through the use of a high speed interconnect to the frame buffer |
US5958020A (en) | 1997-10-29 | 1999-09-28 | Vlsi Technology, Inc. | Real time event determination in a universal serial bus system |
US6035360A (en) | 1997-10-29 | 2000-03-07 | International Business Machines Corporation | Multi-port SRAM access control using time division multiplexed arbitration |
US6021417A (en) | 1997-10-31 | 2000-02-01 | Foto Fantasy, Inc. | Method of stimulating the creation of an artist's drawing or painting, and device for accomplishing same |
US6057863A (en) | 1997-10-31 | 2000-05-02 | Compaq Computer Corporation | Dual purpose apparatus, method and system for accelerated graphics port and fibre channel arbitrated loop interfaces |
US6151602A (en) | 1997-11-07 | 2000-11-21 | Inprise Corporation | Database system with methods providing a platform-independent self-describing data packet for transmitting information |
US6075546A (en) | 1997-11-10 | 2000-06-13 | Silicon Grahphics, Inc. | Packetized command interface to graphics processor |
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 |
US6002407A (en) | 1997-12-16 | 1999-12-14 | Oak Technology, Inc. | Cache memory and method for use in generating computer graphics texture |
US6091431A (en) | 1997-12-18 | 2000-07-18 | Intel Corporation | Method and apparatus for improving processor to graphics device local memory performance |
US6070204A (en) | 1998-01-06 | 2000-05-30 | Intel Corporation | Method and apparatus for using universal serial bus keyboard to control DOS operations |
US6052125A (en) | 1998-01-07 | 2000-04-18 | Evans & Sutherland Computer Corporation | Method for reducing the rendering load for high depth complexity scenes on a computer graphics display |
US6226713B1 (en) * | 1998-01-21 | 2001-05-01 | Sun Microsystems, Inc. | Apparatus and method for queueing structures in a multi-level non-blocking cache subsystem |
US6105094A (en) | 1998-01-26 | 2000-08-15 | Adaptec, Inc. | Method and apparatus for allocating exclusive shared resource requests in a computer system |
US6014144A (en) | 1998-02-03 | 2000-01-11 | Sun Microsystems, Inc. | Rapid computation of local eye vectors in a fixed point lighting unit |
US6108743A (en) | 1998-02-10 | 2000-08-22 | Intel Corporation | Technique for performing DMA including arbitration between a chained low priority DMA and high priority DMA occurring between two links in the chained low priority |
US6496187B1 (en) | 1998-02-17 | 2002-12-17 | Sun Microsystems, Inc. | Graphics system configured to perform parallel sample to pixel calculation |
US6078338A (en) | 1998-03-11 | 2000-06-20 | Compaq Computer Corporation | Accelerated graphics port programmable memory access arbiter |
US6064392A (en) | 1998-03-16 | 2000-05-16 | Oak Technology, Inc. | Method and apparatus for generating non-homogenous fog |
US6104415A (en) | 1998-03-26 | 2000-08-15 | Silicon Graphics, Inc. | Method for accelerating minified textured cache access |
US6232981B1 (en) | 1998-03-26 | 2001-05-15 | Silicon Graphics, Inc. | Method for improving texture locality for pixel quads by diagonal level-of-detail calculation |
US6049338A (en) | 1998-04-01 | 2000-04-11 | Hewlett-Packard Company | Spatial filter for surface texture navigation |
US6144387A (en) | 1998-04-03 | 2000-11-07 | Liu; Mei-Chi | Guard region and hither plane vertex modification for graphics rendering |
US6191794B1 (en) | 1998-04-08 | 2001-02-20 | Nvidia Corporation | Method and apparatus for scaling texture maps for graphical images |
US6011565A (en) | 1998-04-09 | 2000-01-04 | S3 Incorporated | Non-stalled requesting texture cache |
US6144365A (en) | 1998-04-15 | 2000-11-07 | S3 Incorporated | System and method for performing blending using an over sampling buffer |
US6128026A (en) | 1998-05-04 | 2000-10-03 | S3 Incorporated | Double buffered graphics and video accelerator having a write blocking memory interface and method of doing the same |
US6252610B1 (en) | 1998-05-29 | 2001-06-26 | Silicon Graphics, Inc. | Method and apparatus for efficiently switching state in a graphics pipeline |
US6072496A (en) | 1998-06-08 | 2000-06-06 | Microsoft Corporation | Method and system for capturing and representing 3D geometry, color and shading of facial expressions and other animated objects |
US6215496B1 (en) | 1998-07-23 | 2001-04-10 | Microsoft Corporation | Sprites with depth |
US6215497B1 (en) | 1998-08-12 | 2001-04-10 | Monolithic System Technology, Inc. | Method and apparatus for maximizing the random access bandwidth of a multi-bank DRAM in a computer graphics system |
US6236413B1 (en) | 1998-08-14 | 2001-05-22 | Silicon Graphics, Inc. | Method and system for a RISC graphics pipeline optimized for high clock speeds by using recirculation |
US6268861B1 (en) | 1998-08-25 | 2001-07-31 | Silicon Graphics, Incorporated | Volumetric three-dimensional fog rendering technique |
US6177944B1 (en) | 1998-09-18 | 2001-01-23 | International Business Machines Corporation | Two phase rendering for computer graphics |
US6329997B1 (en) | 1998-12-04 | 2001-12-11 | Silicon Motion, Inc. | 3-D graphics chip with embedded DRAM buffers |
US6275235B1 (en) | 1998-12-21 | 2001-08-14 | Silicon Graphics, Inc. | High precision texture wrapping method and device |
US6417858B1 (en) | 1998-12-23 | 2002-07-09 | Microsoft Corporation | Processor for geometry transformations and lighting calculations |
US6353438B1 (en) | 1999-02-03 | 2002-03-05 | Artx | Cache organization—direct mapped cache |
US6466223B1 (en) | 1999-03-24 | 2002-10-15 | Microsoft Corporation | Method and apparatus for texture memory management |
US6426747B1 (en) | 1999-06-04 | 2002-07-30 | Microsoft Corporation | Optimization of mesh locality for transparent vertex caching |
US6459429B1 (en) | 1999-06-14 | 2002-10-01 | Sun Microsystems, Inc. | Segmenting compressed graphics data for parallel decompression and rendering |
US6408362B1 (en) * | 1999-06-24 | 2002-06-18 | International Business Machines Corporation | Data processing system, cache, and method that select a castout victim in response to the latencies of memory copies of cached data |
US6339428B1 (en) | 1999-07-16 | 2002-01-15 | Ati International Srl | Method and apparatus for compressed texture caching in a video graphics system |
US6285779B1 (en) | 1999-08-02 | 2001-09-04 | Trident Microsystems | Floating-point complementary depth buffer |
US6476822B1 (en) | 1999-08-30 | 2002-11-05 | Ati International Srl | Method and apparatus for displaying images |
US6476808B1 (en) | 1999-10-14 | 2002-11-05 | S3 Graphics Co., Ltd. | Token-based buffer system and method for a geometry pipeline in three-dimensional graphics |
US6469707B1 (en) | 2000-01-19 | 2002-10-22 | Nvidia Corporation | Method for efficiently rendering color information for a pixel in a computer system |
-
1999
- 1999-12-17 US US09/465,754 patent/US6717577B1/en not_active Expired - Lifetime
-
2000
- 2000-10-23 EP EP00309315A patent/EP1096427A3/en not_active Withdrawn
- 2000-10-26 JP JP2000326915A patent/JP4644353B2/ja not_active Expired - Lifetime
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06162171A (ja) * | 1992-08-03 | 1994-06-10 | Ball Corp | コンピューターグラフィックスにおける多角形の頂点インデックスキャッシュシステム |
JPH06348854A (ja) * | 1993-06-04 | 1994-12-22 | Sun Microsyst Inc | グラフィックアクセラレータ及び幾何学オブジェクト描出方法 |
JPH07210461A (ja) * | 1993-12-28 | 1995-08-11 | Internatl Business Mach Corp <Ibm> | ストア・イン第2レベル・キャッシュ制御装置 |
JPH09167242A (ja) * | 1995-12-19 | 1997-06-24 | Fuji Xerox Co Ltd | 描画処理装置および方法 |
JPH09297853A (ja) * | 1996-05-07 | 1997-11-18 | Sega Enterp Ltd | ポリゴンデータの生成方法、これを適用した画像処理装置及び拡張機能ボード |
WO1997048048A1 (en) * | 1996-06-13 | 1997-12-18 | Micron Technology, Inc. | Word width selection for sram cache |
JPH10320198A (ja) * | 1997-04-10 | 1998-12-04 | Internatl Business Mach Corp <Ibm> | データを転送する方法およびプロセッサ |
JPH11259671A (ja) * | 1998-03-12 | 1999-09-24 | Sega Enterp Ltd | 画像表示方法及びそれを実行する画像表示装置 |
Also Published As
Publication number | Publication date |
---|---|
EP1096427A3 (en) | 2003-04-16 |
US6717577B1 (en) | 2004-04-06 |
EP1096427A2 (en) | 2001-05-02 |
JP2001195603A (ja) | 2001-07-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4644353B2 (ja) | 3次元グラフィックスのための頂点キャッシュ | |
US6972769B1 (en) | Vertex texture cache returning hits out of order | |
US7355601B2 (en) | System and method for transfer of data between processors using a locked set, head and tail pointers | |
US7333114B2 (en) | System and method for parallel execution of data generation tasks | |
US9892053B2 (en) | Compaction for memory hierarchies | |
JP3519199B2 (ja) | 画像生成装置 | |
US6525737B1 (en) | Graphics processor with pipeline state storage and retrieval | |
JP5149985B2 (ja) | 機能拡張型メモリコントローラを備えるグラフィックス処理システム | |
US5880737A (en) | Method and system for accessing texture data in environments with high latency in a graphics rendering system | |
US7190284B1 (en) | Selective lossless, lossy, or no compression of data based on address range, data type, and/or requesting agent | |
US6211890B1 (en) | Image processor and image processing method | |
EP0875855B1 (en) | Graphics processing system | |
EP0715277A2 (en) | Method of producing image data, image data processing apparatus, and recording medium | |
JP3645024B2 (ja) | 描画装置及び描画方法 | |
JP2002063594A (ja) | 内部フレームバッファと主メモリ間でのコピーアウト変換を有するグラフィクスシステム | |
JP2000057369A (ja) | テクスチャ・デ―タ取り出し方法 | |
US7170512B2 (en) | Index processor | |
US7339590B1 (en) | Vertex processing unit supporting vertex texture mapping | |
WO2005086096A2 (en) | Embedded system with 3d graphics core and local pixel buffer | |
KR20060116916A (ko) | 텍스쳐 캐쉬 및 이를 구비한 3차원 그래픽 시스템, 그리고그것의 제어 방법 | |
JP3548648B2 (ja) | 描画装置及び描画方法 | |
Randall | Talisman: Multimedia for the PC | |
JP3468985B2 (ja) | グラフィック描画装置、グラフィック描画方法 | |
US20230206380A1 (en) | Optimizing partial writes to compressed blocks | |
GB2621198A (en) | Graphics processors |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20010111 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070926 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100427 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100625 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100727 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100927 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20101109 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20101206 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4644353 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131210 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |