JP2011065677A - グラフィクスシステムにおいて直接および間接テクスチャを処理するための方法および装置 - Google Patents
グラフィクスシステムにおいて直接および間接テクスチャを処理するための方法および装置 Download PDFInfo
- Publication number
- JP2011065677A JP2011065677A JP2010261958A JP2010261958A JP2011065677A JP 2011065677 A JP2011065677 A JP 2011065677A JP 2010261958 A JP2010261958 A JP 2010261958A JP 2010261958 A JP2010261958 A JP 2010261958A JP 2011065677 A JP2011065677 A JP 2011065677A
- Authority
- JP
- Japan
- Prior art keywords
- texture
- indirect
- data
- coordinates
- reference method
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/04—Texture mapping
-
- 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
Abstract
【効果】少数のハードウェアテクスチャ処理ユニットから任意数の論理的直接および/または間接テクスチャマッピングステージの処理を、効率化することができる。
【選択図】図5
Description
・直接および間接テクスチャの両方のルックアップ、および
・間接テクスチャルックアップデータの供給
のために使用されかつ再使用され得るテクスチャルックアップデータフィードバック経路を含む。同じテクスチャアドレス(座標)処理ユニットが論理的直接および間接テクスチャ座標データの両方を処理するためにかつ新/修正テクスチャ座標を計算するために使用されかつ再使用され得る。
・少なくとも1つのデータ乗算器と少なくとも1つのデータ累算器との配置を含む論理的直接および間接座標データのインタリーブされた処理のためのテクスチャ座標/データ処理ユニット;
・座標/データ処理ユニットに接続されてテクスチャメモリにストアされたテクスチャデータを検索するテクスチャデータ検索ユニット;および
・さらなる処理のために検索テクスチャデータをテクスチャ座標/データ処理ユニットを通してリサイクルさせるためのテクスチャデータ検索ユニットからテクスチャ座標/データ処理ユニットへのデータフィードバック経路を備え、
・1組のテクスチャ座標に応答して検索ユニットが処理ユニットへ検索テクスチャデータを与え、レンダリングされたイメージオブジェクトの表面へテクスチャをマッピングする際に使用される修正テクスチャ座標を検索する。
図2はシステム50の例示的なコンポーネントのブロック図であり、重要なコンポーネントは、
・主プロセサ(CPU)110,
・主メモリ112,および
・グラフィクス/オーディオプロセサ114を含む。
・PROMおよび/またはRTC(リアルタイムクロック)134,
・モデム136もしくは他のネットワークインタフェース(それはシステム100を、プログラム命令および/またはデータがダウンロードもしくはアップロードされ得るインターネットあるいは他のディジタルネットワークのようなテレコミュニケーションネットワーク138に接続する),および
・フラッシュメモリ140を含む他のデバイスと通信する。
別の外部シリアルバス142は、付加的な拡張メモリ144(たとえばメモリカード)もしくは他のデバイスと通信するために使用され得る。コネクタが種々のデバイスをバス130,132および142に接続するために使用され得る。
図3は実施例のグラフィクス/オーディオプロセサ114を示すブロック図である。或る実施例においては、グラフィクス/オーディオプロセサ114はシングルチップASICであってよい。この実施例においては、グラフィクス/オーディオプロセサ114は、
・プロセサインタフェース150,
・メモリインタフェース/コントローラ152,
・3Dグラフィクスプロセサ154,
・オーディオディジタル信号プロセサ(DSP)156,
・オーディオメモリインタフェース158,
・オーディオインタフェース/ミキサ160,
・周辺コントローラ162,および
・表示コントローラ164を含む。
図4は図3の3Dグラフィクスプロセサ154をより詳細に示すグラフィクス処理システムを示す。この3Dグラフィクスプロセサ154は、とりわけ、コマンドプロセサ200および3Dグラフィクスパイプライン180を含む。主プロセサ110はデータストリーム(たとえばグラフィクスコマンドストリームおよび表示リスト)をコマンドプロセサ200に通信する。主プロセサ110はメモリレイテンシを最小化するために2レベルキャッシュ112を有し、さらにまたグラフィクス/オーディオプロセサ114に向けられたキャッシュされていないデータストリームのための書込収集(write-gathering)バッファ111を有する。この書込収集バッファ11は部分キャッシュラインを全キャッシュラインに集め、バスの最大使用時に、グラフィクス/オーディオプロセサ114からのデータを1つのキャッシュラインに送る。
・同期/フロー制御および負荷バランスのためにグラフィクスコマンドを受けかつバッファするオンチップFIFOメモリバッファ216を介して主メモリ112からのコマンドストリーム,
・オンチップコールFIFOメモリバッファ218を介して主メモリ112からの表示リスト212,および
・コマンドストリームからおよび/または主メモリ112の頂点アレイ214からの頂点アトリビュートを頂点キャッシュ220を介して取り込む。
・変換ユニット300,
・セットアップ/ラスタライザ400,
・テクスチャユニット500,
・テクスチャ環境ユニット600,および
・ピクセルエンジン700を含むことを示す。
・主メモリ112からのテクスチャ504の検索、
・たとえばマルチテクスチャ処理,ポストキャッシュテクスチャ伸長,テクスチャフィルタリング,エンボシング,投影テクスチャの使用を通しての陰影付け,およびアルファトランスパーレンシおよびデプスを用いるBLITを含むテクスチャ処理(500a)、
・バンプマッピング,偽(pseudo)テクスチャおよびテクスチャタイル(tiling)効果(500b)のためのテクスチャ座標置換を計算するバンプマップ処理、および
・間接テクスチャ処理(500c)を含むテクスチャリングに関連する種々のタスクを実行する。
・テクスチャデータルックアップ検索を行うためのテクスチャユニット500a
・テクスチャ座標/テクスチャデータ処理のための間接テクスチャ/バンプユニット500b/500c
・テクスチャルックアップデータフィードバック経路500d
・ステージ化したカラーデータおよびアルファデータ(透明データ)のブレンドのためのテクスチャ環境ユニット600を含む。
・テクスチャラッピング
・メタテクスチャ
・テクスチャタイルマップ
・擬似3Dテクスチャ
・環境マップ化されたバンプマッピングを提供することができる。
実施例の間接テクスチャリング−論理的全体図
図6はシステム50によってサポートされる間接テクスチャリングの論理的全体図を示す。この図6に図示されたような論理的全体図によれば、ラスタライザ6000がN組の間接テクスチャアドレス(座標)ADDR_A0ないしADDR_A(N-1)、およびM組の直接テクスチャアドレス(座標)ADDR_B0ないしADDR_B(M-1)を発生する。このN組の間接テクスチャ座標ADDR_A0ないしADDR_A(N-1)は、Nの対応する論理的テクスチャルックアップユニット6002,6004,6006(A0ないしA(N-1))へ送られる。各論理的テクスチャルックアップユニットは、1つの実施例では、同じ物理的なテクスチャルックアップユニットをN回再使用することによって設けられるが、これは、それの各々が独特のかつ異なるテクスチャマップであるテクスチャマップからの対応するテクセル値をルックアップ(検索)するために受信した間接テクスチャ座標を使用する。これらのルックアップ動作によって、N組の間接テクスチャルックアップ値DATA_A0ないしDATA_A(N-1)が得られ、そのルックアップ値はテクスチャアドレスプロセサ6008に与えられる。テクスチャアドレスプロセサ6008はまた、M組の直接テクスチャ座標入力ADDR_A0ないしADDR_A(N-1)を受信する。
直接および間接テクスチャアドレシングの例
図9は、直接および間接テクスチャリングを実現するためのかつインタリーブされた態様での物理的なテクスチャマッピングユニットの再使用を提供する実施例の基本的な物理的構成を示す。ラスタライザ7000は各ピクセルに関連するすべての直接および間接テクスチャアドレス座標セットを順次発生する。この実施例において、ラスタライザ7000は、ピクセルタイル(すなわち、2×2または他のピクセル領域)における4つのピクセルのための座標セットを並列に与える。しかしながら、他の実施例も可能である。図示した実施例において、ラスタライザ7000は、まず、ピクセル毎のすべての直接テクスチャ座標セット(たとえばADDR_B0ないしADDR_B(M-1))が後続するピクセル毎の間接テクスチャ座標(たとえば、DATA_A0ないしDATA_A(N-1))を発生する。各ピクセルは、実行されているテクスチャリング動作に依存して異なる量の直接および間接座標データを有する。たとえば、或るピクセルは間接テクスチャアドレシングを必要とせず関連する間接座標データを持たないが、他のピクセルは1つまたはそれ以上の間接テクスチャアドレシング動作を必要とし、1つまたはそれ以上の対応する組の関連する直接および間接座標を有する。
ADDR_C[i]=f(ADDR_B[i],DATA_A[j],ADDR_C[i-1])
図10は上述の動作的な関係に従ったテクスチャアドレス(座標/データ)プロセサ7008の実施例の論理図を示す。バッファ7009は先のサイクルからの計算したテクスチャ座標の結果をストアし、それを必要に応じて与える。注意深くFIFOをアドレスすることによって、正しい間接テクスチャDATA_A の値が適当な処理サイクル/ステージで利用可能である。
テクスチャ処理パイプラインにおけるインタリーブされた処理の例
図11−図21は図9の構成の動的なインタリーブ動作を図解する。これらの図は、図9の循環テクスチャリングパイプラインの上述の実施例においてインタリーブされた直接および間接テクスチャ処理の結果としての連続的な処理ステージでのピクセル直接座標データおよびピクセル間接テクスチャデータの相対的な経過の一例を図解する一連のブロック図を示す。この図示した例において、最初のピクセルPX0が間接テクスチャリング動作を要求する。図11に示すように、このピクセルPX0に関連する1組の間接テクスチャ座標(PX0 IND)および対応の組の直接テクスチャ座標(PX0 DIR)がラスタライザ400によってスイッチS0でちょうどテクスチャリングパイプラインに入るように与えられる。
さらに詳細な例
図22は実施例についての間接テクスチャマッピングを行うために使用される基本的な処理ステップを示すフロー図である。図22の大部分のステップは、一般的な間接テクスチャリングAPI関数801によって設定され、この関数801はテクスチャユニット500およびテクスチャ環境ユニット600による間接テクスチャを処理するためのパラメータを設定する。
テクスチャ動作とシェーダ動作との協働の例
システム50の実施例において、上で述べた間接および直接テクスチャリング動作がテクスチャ環境ユニット600内において循環シェーダの対応するステージとともに協働する。同時係属中の「グラフィクスシステムのための再循環シェーディングツリーブレンダ」を参照されたい。
API間接テクスチャ関数のコマンドの例
図23−図24に示すように、1つまたはそれ以上のグラフィクスAPI関数が、直接および間接テクスチャリング動作を設定しかつ開始させるために使用される。間接テクスチャ動作およびパラメータを設定するためのAPI関数の例は以下のように規定され得る。
GXSetIndTexOrder
この関数は間接ルックアップとともに使用されるテクスチャ座標およびテクスチャマップを特定するために使用される。
ind_stage 影響を受けている間接ステージ
tex_coord このステージのために使用されるテクスチャ座標。或るテクスチャ座標は間接および標準ステージによって同時に共用され得る。
tex_map このステージのために使用されるテクスチャマップ。或るテクスチャマップは間接または標準テクスチャマップであり、両方のものではない。
u8 NumIndtex; //間接テクスチャの数
GXIndTex StageID IndexTesId[]; //影響を受けている間接テクスチャ
GXTexMapID Tex_map[]; //このステージのために使用される間接テクスチャマップ(ID)
GXTexCoordID Tex_coord[]; //各間接テクスチャマップ毎の関連するテクスチャ座標
上述の関数は特定のテクスチャマップおよびテクスチャ座標を間接テクスチャマップIDネームと関連付ける。それは、或る間接ルックアップとともに使用するために、テクスチャ座標およびテクスチャマップを特定する。1つの例示において、次のような別の引数が可能であるが、特定されたテクスチャマップは間接または直接テクスチャのいずれかとして用いられ、両方には用いられない。
void GXSetIndTexOrder (GXIndTex StageID ind_stage, GXTexCoordID tex_coord, GXTexMapID tex_map);
GXSetTevIndirect(GXSetIndirectTexture)
これは、或る標準TEVステージのルックアップを修正するために間接ルックアップからの結果を如何に使用するかを制御するために使用される汎用関数である。
tev_stage 影響を受けているTEVステージ
ind_stage このTEVステージとともに使用する間接ステージの結果
format 間接オフセットおよび間接「バンプ」アルファを使用するために間接結果から何ビットを検索するかを示す
bias_sel 間接オフセットの各コンポーネントにバイアスを加えるかどうかを示す
matrix_sel オフセットを乗算するための間接マトリクスおよびスケール値を示す
wrap_s 標準テクスチャ座標のS成分とともに使用するラッピングファクタを示す
wrap_t 標準テクスチャ座標のT成分とともに使用するラッピングファクタを示す
add_prev 先のTEVステージからのテクスチャ座標結果が加えられるべきかどうかを示す
utc_lod ミップマップ(mipmap)LOD計算のために未修正テクスチャ座標(GX_TRUE) を用いるか修正テクスチャ座標(GX_FALSE)を用いるかを示す
alpha_sel もしあれば、どのオフセット成分が間接「バンプ」アルファを供給するかを示す
より詳細にいうと、以下のような引数の例がある
GXTevStageID TevStageId; //TEVカラー結合ステージのIDネーム
GXIndTexStageID indStage; //このTEVステージとともに用いられる間接テクスチャステージ
CXIndTexFormat Fmt; // 間接テクスチャオフセットのフォーマット
GXIndTexBiasSel Bias; //どのオフセット(S,T)がバイアスを受けるかを選択する
GXIndTexAlphaSel AlphaSel; //間接テクスチャアルファ出力を選択する
GXIndMtxID Matrix_Sel; // テクスチャオフセットマトリクスおよびスケールを選択する
GXIndTexWrap WrapS; // 直接S座標のラップ値
GXIndTexWrap WrapT; // 直接T座標のラップ値
GXBool IndLOD; //詳細レベル(LOD)のための修正テクスチャ座標の使用
GXBool AddPrev; // 先のステージからの出力をテクスチャ座標に加える
上述の関数によって、特別のTEVステージに関連する或る間接テクスチャを処理するための種々のパラメータのすべてを設定することができる。この関数は、間接テクスチャマップをTEVカラー結合ステージに関連付け、検索した間接テクスチャルックアップデータ(カラー値)が如何にしてテクスチャ座標オフセット(すなわち、3,4,5または8ビットフォーマット)へ変換されるかを特定し、テクスチャオフセットマトリクスおよびテクスチャスケール値を選択し、テクスチャ座標ラップパラメータおよび計算した新/修正座標がミップマップテクスチャとともに詳細レベル(LOD)のために使用されるべきかどうかを特定する。この関数によって、また、先のステージ中におけるテクスチャ処理ロジック512(下に示す)からの計算した出力を現在のステージにおけるテクスチャ座標に加えるかどうかを選択することができる。
void GXSetTevIndirect (GXTevStageID tev_stage, GXIndTexStageID ind_stage, GXIndTexFormat format,GXIndTexBiasSel bias_sel, GXIndTexMtxID matrix_sel, GXIndTexWrap wrap_s,GXIndTexWrap wrap_t, GXBool add_prev, GXBool utc_lod,GXIndTexAlphaSel alpha_sel) ;
GXSetIndTexMtx
この関数は3つの静的間接マトリクスの1つおよび関連するスケールファクタを設定させる。間接マトリクスおよびスケールは、標準ルックアップ中に使用させるようにオフセットを生成するために、間接ルックアップの結果を処理するために使用される。このマトリクスは、間接ルックアップカラーから検索され(かつ必要に応じてバイアスされた)[STU]オフセットによって乗算される。このマトリクスベクトル乗算において、マトリクスは左側であり、[STU]列のベクトルは右側である。
GXIndTexMtsID MtxId;//テクスチャオフセットマトリクスネーム
F32 Offset Matrix[3][2];//テクスチャオフセットマトリクスのためのマトリクス要素
GXIndTexFormat Fmt;//スケーリングのための指数値
上述の例のAPI関数は、ルックアップデータ処理ロジック(proc)512におけるマトリクスMおよびスケール値を設定する。検索された間接テクスチャルックアップデータ(たとえばテクスチャ座標オフセットs,t,u)はオフセットマトリクス525(M)およびスケールファクタ526によって乗算される。このオフセットマトリクスは間接処理ロジック512(以下を参照)内において使用される3×2要素のマトリクス要素を特定するAPI関数パラメータである。好ましい実施例においては、マトリクス要素は(−1,1)の範囲内にある。スケール指数はスケールファクタを設定するために使用される2のべき数指数を特定するパラメータである。スケール指数の好ましい範囲は(−32,32)である。
void GXSetIndTexMtx(GXIndTexMtxID mtx_sel, f32 offset_mtx[2][3], s8 scale_exp)
GXSetIndTevOrder
上述の関数は標準非間接テクスチャマップおよびテクスチャ座標を間接テクスチャマップのIDネームに関連付ける。
GXSetTevStageID stage
GXSetTexCoordID coord
GXChannelID color
使用例
void GXSetIndTexOrder (GXIndTevStageID tev_stage, cood,GXTexCoordID cood,GXChannelID color);
GXSetNumIndStages
この関数はどれほど多くの間接ルックアップが起こるかを設定するために使用される。これらの間接ルックアップからの結果は、次いで、任意の番号の標準TEVステージのためにルックアップを変更するために使用される。
GXSetNumIndStages u8 stages
上述の関数は間接テクスチャルックアップステージの番号を設定する。
void GXSetNumIndStages(u8 stages);
GXSetNumTevStages
この関数は、連続する番号のTEVステージをイネーブルする。出力ピクセルカラー(フォギングおよびブレンドの前の)が最終ステージからの結果である。最終のTEVステージはレジスタにGX_TEVPREV を書き込まなければならない。GXSetTevColorOp およびGXSetTevAlphaOp を参照。少なくとも1つのTEVステージがイネーブルされなければならない。もしZテクスチャがイネーブルされると、そのZテクスチャは最終ステージにおいてルックアップされなければならない。GXSetZTexture を参照。
nStages アクティブなTEVステージの数。最小値は1で最大値は16である。さらに詳しくいうと
GXSetNumTevStages u8 stages
上述の関数はTEVカラーブレンドステージの数を設定する。この関数はテクスチャユニット500およびテクスチャ環境ユニット600によって行われている再循環の量に関連するパラメータおよびその再循環ステージが行われるシーケンスを設定する。
void GXSetNumTevStages(u8 nStages);
GXSetIndCoordTexScale
この関数は、間接ステージと標準TEVステージとの間でテクスチャ座標を共用したいとき使用される。それによって、対応する標準マップより小さい間接マップとともに使用するためにテクスチャ座標をスケールダウンすることができる。
ind_stage 影響を受けている間接ステージ
scale_s S座標のためのスケールファクタ
scale_t T座標のためのスケールファクタ
より詳細にいうと、引数の例は以下のようである。
GXIndTexMap ID IndTexId;// 間接テクスチャネーム
GXIndTexScale Scale S;//S座標のためのスケール値
GXIndTexScale Scale T;//T座標のためのスケール値
上述の関数は間接テクスチャ座標をスケーリングするための値を設定する。テクスチャ座標は、投影分割の後かつ標準非間接テクスチャ座標への加算の前にスケーリングされる。
void GXSetIndTexCoordScale (GXIndTexStageID ind_stage,GXIndTexScale scale_s,GXIndTexScale scale_t);
この関数は、1つのTEVステージのために先のステージで計算されたものとして同じテクスチャ座標を使いたいときに使用される。このことは、GXSetTevIndBumpST についてと同じように、先のステージのテクスチャ座標が計算のために1ステージ以上必要とするときにのみ有用である。
tev_stage 変更されているTEVステージ
使用例
void GXSetTevIndRepeat(GXTevStageID tev_stage);
GXSetTevIndBumpST
この関数は環境マッピングされバンプマッピングされた間接ルックアップを設定する。この間接マップは(S,T)空間中におけるオフセットを特定する。この種のルックアップは計算のために3TEVステージを必要とする。最初の2つのTEVステージはテクスチャルックアップをディスエーブルする。3番目のステージではルックアップが実際に行われる。追加的なルックアップのために計算されたテクスチャ座標を再使用するために後続のTEVステージにおいてGXSetTevIndRepeat を使用することができる。表面ジオメトリは、各頂点において、ノーマル(normal) /バイノーマル(binormal) /タンジェント(tangents) を与えなければならない。
tev_stage 影響を受けているTEVステージ
ind_stage このTEVステージとともに使用する間接ステージの結果
matrix_sel オフセットを乗算するための間接スケール値を示す
使用例
void GXSetTevIndBumpST(GXTevStageID tev_stage,GXIndTexStageID ind _stage,GXIndTexMtxID matrix_sel);
GXSetTevIndBumpXYZ
この関数は環境マッピングされバンプマッピングされた間接ルックアップを設定する。この間接マップはオブジェクト(X,Y,Z)空間中におけるオフセットを特定する。この種のルックアップは計算のために1つだけのTEVステージを要する。間接マトリクスはノーマル(法線)のためにオブジェクト空間から目の空間への変換をロードしなければならない。表面ジオメトリは各頂点での標準法線を与えるだけでよい。
tev_stage 影響を受けているTEVステージ
ind_stage このTEVステージとともに使用する間接ステージの結果
matrix_sel オフセットを乗算するための間接マトリクスおよびスケール値を示す。
void GXSetTevIndBumpXYZ(GXTevStageID tev_stage,GXIndTexStageID ind_stage,GXIndTexMtxID matrix_sel);
GXSetTevDirect
この関数は特定された標準TEVステージのためのすべての間接オフセットをオフするために使用される。
tev_stage 変更されているTEVステージ
使用例
void GXSetTevDirect(GXTevStageID tev_stage);
GXSetTevIndWarp
この関数によって、間接マップが、標準TEVステージルックアップとともに使用されるテクスチャ座標をワープさせまたは歪めることができる。間接マップは8ビットのオフセットを持つ必要があり、それは符号化されあるいは符号化されていない。実際に「符号化されている」ことは「バイアスされている」ことを意味し、したがって、もし符号化オフセットがGX_TRUEであれば、間接マップからルックアップされた値から128が減算される。この間接結果は標準テクスチャ座標を修正しあるいは完全に置き換えることができる。間接オフセットを修正するために間接マトリクスおよびスケールを使用することができる。
tev_stage 影響を受けているTEVステージ
ind_stage このTEVステージとともに使用する間接ステージの結果
signed_offsets 8ビットのオフセットが符号化/バイアス(GX_TRUE) または符号化されない(GX_FALSE)であるかを示す。
replace_mode オフセットが標準テクスチャ座標を置換すべき(GX_TRUE) かまたは(GX_FALSE)へ加算されるべきかを示す。
matrix_sel オフセットを乗算するための間接マトリクスおよびスケール値を示す。
void GXSetTevIndWarp (GXTevStageID tev_stage, GXIndTexStageID ind_ stage, GXBool signed_offsets, GXBool replace_mode, GXIndTexMtxID matrix_sel);
GXSetTevIndTile
この関数は間接テクスチャを用いてテクスチャタイルを実現するために使用される。標準テクスチャマップはタイルの定義を特定するだけであることに注目されたい。ポリゴンに付与されるべきテクセルの実際の数は基本タイルサイズと間接マップのサイズとの関数である。適当なテクスチャ座標スケールを設定するために、GXSetTexCoordScaleManuallyをコールしなければならない。標準TEVステージのように間接ステージのために同じテクスチャ座標を使用するためには、GXSetIndTexScaleを使用することができる。
tev_stage 影響を受けているTEVステージ
ind_stage このTEVステージとともに用いるための間接ステージの結果
tilesize_s S次元におけるタイルのサイズ
tilesize_t T次元におけるタイルのサイズ
Tilespacing_s S次元におけるタイルの空間
Tilespacing_t T次元におけるタイルの空間
Format 使用する間接テクスチャフォーマットを示す
matrix_sel オフセットにどの間接マトリクスおよびスケール値を乗算するかを示す
bias_sel 擬似3Dテクスチャのためのタイルスタック方向を示す
alpha_sel もしあれば(擬似3Dテクスチャのための)間接「バンプ」アルファを供給するオフセット成分を示す
使用例
void GXSetTevIndTile (GXTevStageID tev_stage, GXIndTexStageID ind_stage, u16 tilesize_s, u16 tilesize_t, u16 tilespacing_s, u16 tilespacing_t,
GXIndTexFormat format, GXIndTexMtxID matrix_sel, GXIndTexBiasSel bias_sel, GXIndTexAlphaSel alpha_sel);
GXSetTevIndRepeat
この関数は1つのTEVステージのために、先のステージにおいて計算されたものとして同じテクスチャ座標を使用するときに使用される。これはテクスチャ座標が計算のために1つ以上の処理サイクル/ステージを必要とするときに有用である。
Tev_stage 変更されているTEVステージ
使用例
void GXSetTevIndRepeat(GXTevStageID tev_stage);
GXSetAlphaCompare
この関数は最後のアクティブなTEVステージからのアルファ出力を使用するアルファ比較関数のためのパラメータを設定する。アクティブなTEVステージの数はGXSetTevStagesを使うことによって特定される。出力アルファは、ソースおよび宛先(フレームバッファ)ピクセルが如何に結合されるかを制御するためにブレンド式(GXSetBlendModeを参照)において用いられ得る。
alpha_pass=(alpha_src(comp0)(ref0)(op)(alpha_src(comp)ref1)
ここで、alpha_src は最終のアクティブなTEVステージからのアルファである。一例として、以下の式を実現できる。
alpha_pass=(alpha_src>ref0)AND(alpha_src<ref1)
または
[数4]
alpha_pass=(alpha_src>ref0)OR(alpha_src<ref1)
Z比較がテクスチャリングの前または後に生じる。Z比較をテクスチャリングの前に行う場合には、ZはZテストのみに基づいて書き込まれる。もしZテストおよびアルファテストが通過するならカラーが書き込まれる。
comp0 比較サブ関数0
ref0 サブ関数0のための基準値8ビット
op サブ関数0とサブ関数1とを結合するための演算 受け入れられた値:GX_AOP_AND,GX_AOP_OR,GX_AOP_XOR,GX_AOP_XNOR
comp1 比較サブ関数1
ref1 サブ関数1のための基準値8ビット
使用例
void GXSetAlphaCompare (GXCompare comp0,u8 ref0, GXAlphaOp op, GXCompare comp1, u8 ref1);
ハードウェアの実施例
或る好ましい実施例では、テクスチャユニット500およびテクスチャ環境ユニット600はグラフィックチップ上のハードウェア中に実現され、上で述べたようにテクスチャマッピング動作の効率的な再循環を提供するように設計される。さらに詳細にいえば、テクスチャアドレス座標/バンプ処理ブロック500b/500cはハードウェアにおいて実現され、テクスチャマッピングブロック500aおよびテクスチャ環境ブロック600aへの1組の適宜の入力を提供する。ブロック500aおよび600aを再循環させるために使用するシーケンスロジックに関連するブロック500bおよび500cは、ブロック500aおよび600aを効率的に再使用するために種々の再循環ステージに対して適宜のタイミングで一連の適宜の入力を提示する。或る場合には経路500dを介してフィードバックループを作り、そこでは、ブロック500aの出力が修正されかつ後の順次の再循環処理ステージにおけるその入力へ再び与えられる。このことによって、好ましい実施例において同じハードウェア回路を何回も何回も再使用/再循環させることによって実現された個別のテクスチャ処理ステージの論理シーケンスが得られる。この結果的に得られる機能性によって、追加的なハードウェアの要求なしに、任意の所望数の論理的テクスチャマッピング処理ステージを提供する。種々のテクスチャ処理ステージの各々に追加的なハードウェアを設けることは速度性能を向上するが追加的なチップ不動産およびそれに関連する複雑さの犠牲を伴う。ここで開示した技術を用いることによって、任意数の論理的テクスチャマッピングステージが単一の組のテクスチャマッピングハードウェアを用いて提供され得る。もちろん、速度性能を改善する他の実現方法において、多数のテクスチャマッピングステージを図23および図24に示すような順次にではなく並列的に行うことができるように、テクスチャマッピングハードウェアを折り返すことは可能である。同じまたは異なるテクスチャマッピングハードウェアの多数の組を提供するそのような別の実施例においてさえ、ここで開示した再循環および間接テクスチャマッピング技術を付与することは、より一般的なハードウェアの機能性および柔軟性を、特別な進歩したテクスチャマッピング効果を達成するためにアプリケーションプログラマによって特定される特別の一連のおそらく複雑なテクスチャマッピング動作またはステージに拡張する際に有用である。
制御レジスタフォーマットのハードウェアの例
図29は処理ユニット512内におけるパラメータおよび動作を規定しかつ制御するために使用されるロジック制御レジスタデータフィールドフォーマットの例を示す。たとえば、或るデータフィールドは静的マトリクス要素として使用するためにプログラマブルな定数を通過するために使用される。他のフィールドはデータトリプレットフォーマット,制御バイアスおよびスケールファクタを規定し、間接動作ステージの数を示し、あるいは処理ロジックユニット512内における動作のための他のパラメータを提供する。
モード変更
実施例において、パイプライン中におけるモード変更が制御レジスタアドレス−データ対(これは、たとえば、パイプライン中の回路に関連する特別なハードウェアロジック制御レジスタのアドレスおよびその回路を制御するための適宜の制御データ/命令を含む)を、ラスタライザによって出力されるラスタライゼーションデータとインタリーブすることによって取り扱われる。この制御レジスタアドレス−データ対の情報はデータとともにグラフィクスパイプラインへ流れ落ち、それが影響するデータとともに正しい順序でインタリーブされる。したがって、大部分の随意的なモード変更はパイプラインを「フラッシング」(一掃する)ことなしに行われ得る。制御レジスタデータのためにそれの最初の宛先に届くまでにパイプライン内に多数の経路データがあるということによってモード切換は幾分複雑になっていて、たとえば、以下に例示するような動作的な制約を守ることによってより効率的な動作が得られる。
間接テクスチャ処理結果の例
理解されるように、上で述べた直接および間接テクスチャ処理アーキテクチャを再循環させることによって極めて柔軟性のあるかつ仮想的に無限の機能性を与えることができる。アプリケーションプログラマは任意の数の直接もしくは間接テクスチャマッピング動作の任意のシーケンスを提供するために任意数の論理的テクスチャマッピングステージを含ませることができる。この強力な能力によって、アプリケーションプログラマは、多数の複雑かつ興味深いテクスチャマッピングによる視覚効果を動的に作り上げることができる。
上述のシステム50は上で述べた家庭用ビデオゲームコンソールの構成以外としても実現できる。たとえば、或るものは、システム50をエミュレートする異なる構成を有するプラットフォームもしくはそれと同等のものにおいて、システム50のために書かれたグラフィクスアプリケーションや他のソフトウェアを実行させることができる。もし、他のプラットフォームがシステム50のいくつかのもしくはすべてのハードウェアおよびソフトウェアリソースをエミュレートしシミュレートしおよび/または提供することができれば、その他のプラットフォームはそのソフトウェアを成功裏に実行することができる。
54 …主ユニット
110 …主プロセサ
112 …主メモリ
180 …グラフィクスパイプライン
200 …キャッシュ/コマンドプロセサ
300 …変換ユニット
400,6000 …ラスタライザ
500,6002−6006,6010−6014 …テクスチャユニット
600 …テクスチャ環境ユニット
6008 …テクスチャアドレスプロセサ
6016 …ピクセルシェーダ
Claims (27)
- テクスチャデータを含むメモリを有するグラフィクスシステムにおける間接テクスチャ参照方法であって、
(a) データトリプレットを発生するために間接テクスチャ座標を使用し、
(b) 発生したトリプレットに少なくとも部分的に基づいてテクスチャ座標を検索し、そして
(c) プリミティブ上へ所定のテクスチャデータをマッピングするために少なくとも検索したテクスチャ座標を使用する、間接テクスチャ参照方法。 - 使用ステップ(a) は、テクスチャメモリにおいて、間接テクスチャ座標を介してトリプレットをマッピングするアレイを参照するステップを含む、請求項1記載の間接テクスチャ参照方法。
- 使用ステップ(a) は、メモリにストアされたテクスチャマップから所定のトリプレットデータを取り出すステップを含む、請求項1記載の間接テクスチャ参照方法。
- 使用ステップ(c) は、テクスチャメモリにおいて、検索したテクスチャ座標を介してカラー値データをマッピングするアレイを参照するステップを含む、請求項1記載の間接テクスチャ参照方法。
- 検索ステップ(b) はマトリクス乗算演算を行い、その演算において、複数の所定の定数および/または可変スカラ要素を含む第1マトリクスが、検索したデータトリプレットを含む第2マトリクスによって乗算される、請求項1記載の間接テクスチャ参照方法。
- トリプレットはs,tおよびuテクスチャ座標オフセットを含む、請求項1記載の間接テクスチャ参照方法。
- トリプレットは3つの8ビット2進値を含む、請求項1記載の間接テクスチャ参照方法。
- トリプレットは3つの5ビット2進値を含む、請求項1記載の間接テクスチャ参照方法。
- トリプレットは3つの4ビット2進値を含む、請求項1記載の間接テクスチャ参照方法。
- トリプレットは3つの3ビット2進値を含む、請求項1記載の間接テクスチャ参照方法。
- 第1マトリクスは1つまたはそれ以上の所定のテクスチャ座標のスカラ関数である要素を含む、請求項5記載の間接テクスチャ参照方法。
- 第1マトリクスは6つの所定のスカラ要素を含む3×2マトリクスである、請求項5記載の間接テクスチャ参照方法。
- テクスチャメモリにストアされたかつ1組の直接テクスチャ座標または1組の間接テクスチャ座標を介してアクセスされるテクスチャデータを含むメモリを有する3Dビデオグラフィクスシステムにおいて、ポリゴン上に所定のテクスチャをマッピングするための間接テクスチャ参照方法であって、
(a) テクスチャメモリにストアされたデータトリプレットを検索するために1組の間接テクスチャ座標を使用し、
(b) 検索したデータトリプレットに少なくとも部分的に基づいて1組の修正テクスチャ座標を検索し、そして
(c) 所定のテクスチャに対応してテクスチャメモリにストアされているテクスチャデータを参照するために1組の修正テクスチャ座標を使用する、間接テクスチャ参照方法。 - 検索ステップ(b) は、少なくとも1つのマトリクス乗算演算を行うステップを含み、その演算においては複数の所定の定数および/または可変スカラ要素を含む第1マトリクスが、検索したデータトリプレットを含む第2マトリクスによって乗算される、請求項15記載の間接テクスチャ参照方法。
- 使用ステップ(c) は、テクスチャメモリにおいて、検索したテクスチャ座標を介してカラー値データをマッピングするアレイを参照するステップを含む、請求項15記載の間接テクスチャ参照方法。
- データトリプレットは少なくとも1つのテクスチャ座標オフセットを含む、請求項15記載の間接テクスチャ参照方法。
- トリプレットはs,tおよびuテクスチャ座標オフセットを含む、請求項15記載の間接テクスチャ参照方法。
- トリプレットは3つの8ビット2進値を含む、請求項15記載の間接テクスチャ参照方法。
- トリプレットは3つの5ビット2進値を含む、請求項15記載の間接テクスチャ参照方法。
- トリプレットは3つの4ビット2進値を含む、請求項15記載の間接テクスチャ参照方法。
- トリプレットは3つの3ビット2進値を含む、請求項15記載の間接テクスチャ参照方法。
- 第1マトリクスは1つまたはそれ以上の所定のテクスチャ座標のスカラ関数である要素を含む、請求項16記載の間接テクスチャ参照方法。
- 第1マトリクスは6つの所定のスカラ要素を含む3×2マトリクスである、請求項16記載の間接テクスチャ参照方法。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US22689100P | 2000-08-23 | 2000-08-23 | |
US60/226891 | 2000-11-28 | ||
US09/722382 | 2000-11-28 | ||
US09/722,382 US7002591B1 (en) | 2000-08-23 | 2000-11-28 | Method and apparatus for interleaved processing of direct and indirect texture coordinates in a graphics system |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001042667A Division JP4678963B2 (ja) | 2000-08-23 | 2001-02-20 | グラフィクスシステムにおいて直接および間接テクスチャを処理するための方法および装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011065677A true JP2011065677A (ja) | 2011-03-31 |
JP4890638B2 JP4890638B2 (ja) | 2012-03-07 |
Family
ID=26920959
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001042667A Expired - Fee Related JP4678963B2 (ja) | 2000-08-23 | 2001-02-20 | グラフィクスシステムにおいて直接および間接テクスチャを処理するための方法および装置 |
JP2010261958A Expired - Fee Related JP4890638B2 (ja) | 2000-08-23 | 2010-11-25 | グラフィクスシステムにおいて直接および間接テクスチャを処理するための方法および装置 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001042667A Expired - Fee Related JP4678963B2 (ja) | 2000-08-23 | 2001-02-20 | グラフィクスシステムにおいて直接および間接テクスチャを処理するための方法および装置 |
Country Status (3)
Country | Link |
---|---|
US (2) | US7002591B1 (ja) |
EP (1) | EP1189172A3 (ja) |
JP (2) | JP4678963B2 (ja) |
Families Citing this family (133)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7749089B1 (en) | 1999-02-26 | 2010-07-06 | Creative Kingdoms, Llc | Multi-media interactive play system |
US7445550B2 (en) | 2000-02-22 | 2008-11-04 | Creative Kingdoms, Llc | Magical wand and interactive play experience |
US6761637B2 (en) | 2000-02-22 | 2004-07-13 | Creative Kingdoms, Llc | Method of game play using RFID tracking device |
US7878905B2 (en) | 2000-02-22 | 2011-02-01 | Creative Kingdoms, Llc | Multi-layered interactive play experience |
US7538772B1 (en) * | 2000-08-23 | 2009-05-26 | Nintendo Co., Ltd. | Graphics processing system with enhanced memory controller |
US6825851B1 (en) | 2000-08-23 | 2004-11-30 | Nintendo Co., Ltd. | Method and apparatus for environment-mapped bump-mapping in a graphics system |
US7002591B1 (en) * | 2000-08-23 | 2006-02-21 | Nintendo Co., Ltd. | Method and apparatus for interleaved processing of direct and indirect texture coordinates in a graphics system |
US7066781B2 (en) | 2000-10-20 | 2006-06-27 | Denise Chapman Weston | Children's toy with wireless tag/transponder |
US6999080B1 (en) * | 2000-11-30 | 2006-02-14 | Microsoft Corporation | System, method, and computer program product for general environment mapping |
US6828975B2 (en) * | 2001-03-01 | 2004-12-07 | Microsoft Corporation | Method and system for managing graphics objects in a graphics display system |
US7415539B2 (en) * | 2001-09-28 | 2008-08-19 | Siebel Systems, Inc. | Method and apparatus for detecting insufficient memory for data extraction processes |
US6967566B2 (en) | 2002-04-05 | 2005-11-22 | Creative Kingdoms, Llc | Live-action interactive adventure game |
US20070066396A1 (en) | 2002-04-05 | 2007-03-22 | Denise Chapman Weston | Retail methods for providing an interactive product to a consumer |
US7674184B2 (en) | 2002-08-01 | 2010-03-09 | Creative Kingdoms, Llc | Interactive water attraction and quest game |
US9446319B2 (en) | 2003-03-25 | 2016-09-20 | Mq Gaming, Llc | Interactive gaming toy |
US7495343B1 (en) * | 2003-07-31 | 2009-02-24 | Nvidia Corporation | Pad over active circuit system and method with frame support structure |
US7453158B2 (en) * | 2003-07-31 | 2008-11-18 | Nvidia Corporation | Pad over active circuit system and method with meshed support structure |
US8732644B1 (en) | 2003-09-15 | 2014-05-20 | Nvidia Corporation | Micro electro mechanical switch system and method for testing and configuring semiconductor functional circuits |
US8788996B2 (en) | 2003-09-15 | 2014-07-22 | Nvidia Corporation | System and method for configuring semiconductor functional circuits |
US8775997B2 (en) * | 2003-09-15 | 2014-07-08 | Nvidia Corporation | System and method for testing and configuring semiconductor functional circuits |
US8035646B2 (en) * | 2003-11-14 | 2011-10-11 | Microsoft Corporation | Systems and methods for downloading algorithmic elements to a coprocessor and corresponding techniques |
US8711161B1 (en) | 2003-12-18 | 2014-04-29 | Nvidia Corporation | Functional component compensation reconfiguration system and method |
US20050195198A1 (en) * | 2004-03-03 | 2005-09-08 | Anderson Michael H. | Graphics pipeline and method having early depth detection |
US7847800B2 (en) * | 2004-04-16 | 2010-12-07 | Apple Inc. | System for emulating graphics operations |
US8134561B2 (en) | 2004-04-16 | 2012-03-13 | Apple Inc. | System for optimizing graphics operations |
US7248265B2 (en) * | 2004-04-16 | 2007-07-24 | Apple Inc. | System and method for processing graphics operations with graphics processing unit |
US8704837B2 (en) * | 2004-04-16 | 2014-04-22 | Apple Inc. | High-level program interface for graphics operations |
US8711155B2 (en) | 2004-05-14 | 2014-04-29 | Nvidia Corporation | Early kill removal graphics processing system and method |
US8416242B1 (en) | 2004-05-14 | 2013-04-09 | Nvidia Corporation | Method and system for interpolating level-of-detail in graphics processors |
US8736620B2 (en) | 2004-05-14 | 2014-05-27 | Nvidia Corporation | Kill bit graphics processing system and method |
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 |
US8411105B1 (en) | 2004-05-14 | 2013-04-02 | Nvidia Corporation | Method and system for computing pixel parameters |
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 |
US8743142B1 (en) | 2004-05-14 | 2014-06-03 | Nvidia Corporation | Unified data fetch graphics processing system and method |
US8860722B2 (en) * | 2004-05-14 | 2014-10-14 | Nvidia Corporation | Early Z scoreboard tracking system and method |
US8687010B1 (en) | 2004-05-14 | 2014-04-01 | Nvidia Corporation | Arbitrary size texture palettes for use in graphics systems |
US8736628B1 (en) | 2004-05-14 | 2014-05-27 | Nvidia Corporation | Single thread graphics processing system and method |
US20060007234A1 (en) * | 2004-05-14 | 2006-01-12 | Hutchins Edward A | Coincident graphics pixel scoreboard tracking system and method |
US7652678B2 (en) * | 2004-06-25 | 2010-01-26 | Apple Inc. | Partial display updates in a windowing system using a programmable graphics processing unit |
US20060012604A1 (en) * | 2004-07-15 | 2006-01-19 | Avinash Seetharamaiah | Legacy processing for pixel shader hardware |
US8723231B1 (en) | 2004-09-15 | 2014-05-13 | Nvidia Corporation | Semiconductor die micro electro-mechanical switch management system and method |
US8711156B1 (en) | 2004-09-30 | 2014-04-29 | Nvidia Corporation | Method and system for remapping processing elements in a pipeline of a graphics processing unit |
US7852342B2 (en) | 2004-10-14 | 2010-12-14 | Microsoft Corporation | Remote client graphics rendering |
US20060082581A1 (en) * | 2004-10-14 | 2006-04-20 | Microsoft Corporation | Encoding for remoting graphics to decoder device |
US8427496B1 (en) | 2005-05-13 | 2013-04-23 | Nvidia Corporation | Method and system for implementing compression across a graphics bus interconnect |
US7567254B2 (en) | 2005-06-30 | 2009-07-28 | Microsoft Corporation | Parallel texture synthesis having controllable jitter |
US7477794B2 (en) * | 2005-06-30 | 2009-01-13 | Microsoft Corporation | Multi-level image stack of filtered images |
US8068117B2 (en) | 2005-06-30 | 2011-11-29 | Microsoft Corporation | Parallel texture synthesis by upsampling pixel coordinates |
US7817160B2 (en) * | 2005-06-30 | 2010-10-19 | Microsoft Corporation | Sub-pass correction using neighborhood matching |
US7400330B2 (en) | 2005-06-30 | 2008-07-15 | Microsoft Corporation | Magnification of indirection textures |
US7942745B2 (en) * | 2005-08-22 | 2011-05-17 | Nintendo Co., Ltd. | Game operating device |
JP4805633B2 (ja) | 2005-08-22 | 2011-11-02 | 任天堂株式会社 | ゲーム用操作装置 |
US8313379B2 (en) * | 2005-08-22 | 2012-11-20 | Nintendo Co., Ltd. | Video game system with wireless modular handheld controller |
US7927216B2 (en) | 2005-09-15 | 2011-04-19 | Nintendo Co., Ltd. | Video game system with wireless modular handheld controller |
JP4262726B2 (ja) * | 2005-08-24 | 2009-05-13 | 任天堂株式会社 | ゲームコントローラおよびゲームシステム |
US8870655B2 (en) * | 2005-08-24 | 2014-10-28 | Nintendo Co., Ltd. | Wireless game controllers |
US8308563B2 (en) * | 2005-08-30 | 2012-11-13 | Nintendo Co., Ltd. | Game system and storage medium having game program stored thereon |
US7609280B2 (en) * | 2005-09-07 | 2009-10-27 | Microsoft Corporation | High level graphics stream |
US8527563B2 (en) * | 2005-09-12 | 2013-09-03 | Microsoft Corporation | Remoting redirection layer for graphics device interface |
US8157651B2 (en) | 2005-09-12 | 2012-04-17 | Nintendo Co., Ltd. | Information processing program |
US8675007B2 (en) * | 2005-10-06 | 2014-03-18 | Ati Technologies Ulc | System and method for higher level filtering by combination of bilinear results |
WO2007049610A1 (ja) * | 2005-10-25 | 2007-05-03 | Mitsubishi Electric Corporation | 画像処理装置 |
US9123173B2 (en) * | 2005-12-15 | 2015-09-01 | Nvidia Corporation | Method for rasterizing non-rectangular tile groups in a raster stage of a graphics pipeline |
US8698811B1 (en) | 2005-12-15 | 2014-04-15 | Nvidia Corporation | Nested boustrophedonic patterns for rasterization |
US8390645B1 (en) | 2005-12-19 | 2013-03-05 | Nvidia Corporation | Method and system for rendering connecting antialiased line segments |
US9117309B1 (en) | 2005-12-19 | 2015-08-25 | Nvidia Corporation | Method and system for rendering polygons with a bounding box in a graphics processor unit |
US7948495B1 (en) * | 2006-02-02 | 2011-05-24 | Nvidia Corporation | Linking texture headers and texture samplers |
JP4530419B2 (ja) * | 2006-03-09 | 2010-08-25 | 任天堂株式会社 | 座標算出装置および座標算出プログラム |
JP4151982B2 (ja) | 2006-03-10 | 2008-09-17 | 任天堂株式会社 | 動き判別装置および動き判別プログラム |
JP4684147B2 (ja) * | 2006-03-28 | 2011-05-18 | 任天堂株式会社 | 傾き算出装置、傾き算出プログラム、ゲーム装置およびゲームプログラム |
US8928676B2 (en) | 2006-06-23 | 2015-01-06 | Nvidia Corporation | Method for parallel fine rasterization in a raster stage of a graphics pipeline |
US7817161B2 (en) * | 2006-06-26 | 2010-10-19 | Microsoft Corporation | Texture synthesis using dimensionality-reduced appearance space |
US8207978B2 (en) * | 2006-06-29 | 2012-06-26 | Intel Corporation | Simplification of 3D texture address computation based on aligned, non-perspective objects |
US7733350B2 (en) * | 2006-06-30 | 2010-06-08 | Microsoft Corporation | Anisometric texture synthesis |
US7643034B2 (en) * | 2006-06-30 | 2010-01-05 | Microsoft Corporation | Synthesis of advecting texture using adaptive regeneration |
US7884830B1 (en) * | 2006-07-12 | 2011-02-08 | Nvidia Corporation | Apparatus, system, and method for indexing an array of cube map textures |
US8085264B1 (en) * | 2006-07-26 | 2011-12-27 | Nvidia Corporation | Tile output using multiple queue output buffering in a raster stage |
US9070213B2 (en) * | 2006-07-26 | 2015-06-30 | Nvidia Corporation | Tile based precision rasterization in a graphics pipeline |
US8913073B2 (en) * | 2006-08-09 | 2014-12-16 | Adobe Systems Incorporated | Interpolation according to a function represented using unevenly spaced samples of the function |
US8427487B1 (en) | 2006-11-02 | 2013-04-23 | Nvidia Corporation | Multiple tile output using interface compression in a raster stage |
US8537168B1 (en) | 2006-11-02 | 2013-09-17 | Nvidia Corporation | Method and system for deferred coverage mask generation in a raster stage |
US8482567B1 (en) | 2006-11-03 | 2013-07-09 | Nvidia Corporation | Line rasterization techniques |
US8232991B1 (en) | 2006-11-03 | 2012-07-31 | Nvidia Corporation | Z-test result reconciliation with multiple partitions |
JP5127242B2 (ja) | 2007-01-19 | 2013-01-23 | 任天堂株式会社 | 加速度データ処理プログラムおよびゲームプログラム |
CN101647044B (zh) * | 2007-04-11 | 2011-10-19 | 松下电器产业株式会社 | 图像生成装置以及图像生成方法 |
JP4964688B2 (ja) | 2007-06-22 | 2012-07-04 | 任天堂株式会社 | 画像処理プログラムおよび画像処理装置 |
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 |
US8724483B2 (en) | 2007-10-22 | 2014-05-13 | Nvidia Corporation | Loopback configuration for bi-directional interfaces |
US8780123B2 (en) | 2007-12-17 | 2014-07-15 | Nvidia Corporation | Interrupt handling techniques in the rasterizer of a GPU |
US9064333B2 (en) | 2007-12-17 | 2015-06-23 | Nvidia Corporation | Interrupt handling techniques in the rasterizer of a GPU |
US8257157B2 (en) * | 2008-02-04 | 2012-09-04 | Polchin George C | Physical data building blocks system for video game interaction |
US8923385B2 (en) | 2008-05-01 | 2014-12-30 | Nvidia Corporation | Rewind-enabled hardware encoder |
US8681861B2 (en) | 2008-05-01 | 2014-03-25 | Nvidia Corporation | Multistandard hardware video encoder |
US8264493B2 (en) * | 2008-05-12 | 2012-09-11 | Playcast Media Systems, Ltd. | Method and system for optimized streaming game server |
US8154553B2 (en) * | 2008-05-22 | 2012-04-10 | Playcast Media System, Ltd. | Centralized streaming game server |
EP2364190B1 (en) * | 2008-05-12 | 2018-11-21 | GameFly Israel Ltd. | Centralized streaming game server |
US8321903B2 (en) * | 2008-07-28 | 2012-11-27 | Playcast Media Systems, Ltd. | External services allocation in closed on-demand systems |
US9256514B2 (en) | 2009-02-19 | 2016-02-09 | Nvidia Corporation | Debugging and perfomance analysis of applications |
JP2011022728A (ja) * | 2009-07-14 | 2011-02-03 | Sony Corp | 画像処理装置および画像処理方法 |
US20110063309A1 (en) | 2009-09-16 | 2011-03-17 | Nvidia Corporation | User interface for co-processing techniques on heterogeneous graphics processing units |
US9331869B2 (en) | 2010-03-04 | 2016-05-03 | Nvidia Corporation | Input/output request packet handling techniques by a device specific kernel mode driver |
EP2384001A1 (en) * | 2010-04-29 | 2011-11-02 | Alcatel Lucent | Providing of encoded video applications in a network environment |
US9171350B2 (en) | 2010-10-28 | 2015-10-27 | Nvidia Corporation | Adaptive resolution DGPU rendering to provide constant framerate with free IGPU scale up |
CN102567381B (zh) * | 2010-12-23 | 2017-02-08 | 腾讯科技(深圳)有限公司 | 一种保存图片信息的方法和装置 |
US9460546B1 (en) | 2011-03-30 | 2016-10-04 | Nvidia Corporation | Hierarchical structure for accelerating ray tracing operations in scene rendering |
US8970584B1 (en) | 2011-06-24 | 2015-03-03 | Nvidia Corporation | Bounding box-based techniques for improved sample test efficiency in image 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 |
US9269183B1 (en) | 2011-07-31 | 2016-02-23 | Nvidia Corporation | Combined clipless time and lens bounds for improved sample test efficiency in image rendering |
US9202308B2 (en) * | 2011-12-28 | 2015-12-01 | Think Silicon Sa | Methods of and apparatus for assigning vertex and fragment shading operations to a multi-threaded multi-format blending device |
US9058680B2 (en) * | 2011-12-28 | 2015-06-16 | Think Silicon Ltd | Multi-threaded multi-format blending device for computer graphics operations |
US9305394B2 (en) | 2012-01-27 | 2016-04-05 | Nvidia Corporation | System and process for improved sampling for parallel light transport simulation |
US9411595B2 (en) | 2012-05-31 | 2016-08-09 | Nvidia Corporation | Multi-threaded transactional memory coherence |
US9171394B2 (en) | 2012-07-19 | 2015-10-27 | Nvidia Corporation | Light transport consistent scene simplification within graphics display system |
US9159158B2 (en) | 2012-07-19 | 2015-10-13 | Nvidia Corporation | Surface classification for point-based rendering within graphics display system |
US9299127B2 (en) * | 2012-09-21 | 2016-03-29 | ImmerVision | Splitting of elliptical images |
US9720858B2 (en) | 2012-12-19 | 2017-08-01 | Nvidia Corporation | Technique for performing memory access operations via texture hardware |
US9019284B2 (en) | 2012-12-20 | 2015-04-28 | Nvidia Corporation | Input output connector for accessing graphics fixed function units in a software-defined pipeline and a method of operating a pipeline |
US9824009B2 (en) | 2012-12-21 | 2017-11-21 | Nvidia Corporation | Information coherency maintenance systems and methods |
US9123128B2 (en) * | 2012-12-21 | 2015-09-01 | Nvidia Corporation | Graphics processing unit employing a standard processing unit and a method of constructing a graphics processing unit |
US10102142B2 (en) | 2012-12-26 | 2018-10-16 | Nvidia Corporation | Virtual address based memory reordering |
US9710894B2 (en) | 2013-06-04 | 2017-07-18 | Nvidia Corporation | System and method for enhanced multi-sample anti-aliasing |
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 |
KR102161742B1 (ko) * | 2013-10-11 | 2020-10-05 | 삼성전자주식회사 | 피드백 경로를 포함하는 파이프 라인 시스템 및 그 동작방법 |
US20150228106A1 (en) * | 2014-02-13 | 2015-08-13 | Vixs Systems Inc. | Low latency video texture mapping via tight integration of codec engine with 3d graphics engine |
US20170243375A1 (en) | 2016-02-18 | 2017-08-24 | Qualcomm Incorporated | Multi-step texture processing with feedback in texture unit |
CN106706134A (zh) * | 2017-01-05 | 2017-05-24 | 金陵科技学院 | Ram调色板伪彩色设计方法 |
US10430987B1 (en) * | 2017-06-09 | 2019-10-01 | Snap Inc. | Annotating an image with a texture fill |
WO2019037558A1 (zh) | 2017-08-22 | 2019-02-28 | 优酷网络技术(北京)有限公司 | 图像处理方法和装置 |
GB2572605B (en) * | 2018-04-05 | 2022-05-18 | Imagination Tech Ltd | High accuracy texture filtering |
US20210256092A1 (en) * | 2020-02-19 | 2021-08-19 | Nvidia Corporation | Application programming interface to accelerate matrix operations |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04211878A (ja) * | 1990-01-15 | 1992-08-03 | Philips Gloeilampenfab:Nv | 表示装置及びその動作方法 |
JPH07225853A (ja) * | 1994-02-10 | 1995-08-22 | Matsushita Electric Ind Co Ltd | 画像処理装置 |
JPH07325934A (ja) * | 1992-07-10 | 1995-12-12 | Walt Disney Co:The | 仮想世界に向上したグラフィックスを提供する方法および装置 |
JPH0877385A (ja) * | 1994-08-29 | 1996-03-22 | Internatl Business Mach Corp <Ibm> | コンピュータ・グラフィクス装置 |
JPH0896150A (ja) * | 1994-09-28 | 1996-04-12 | Toshiba Corp | 図形描画装置及び図形データ分割方法 |
JPH08212377A (ja) * | 1994-12-02 | 1996-08-20 | Sony Computer Entateinmento:Kk | 画像情報生成装置及び方法、画像情報処理装置及び方法、並びに記録媒体 |
JPH09325759A (ja) * | 1995-11-22 | 1997-12-16 | Nintendo Co Ltd | 高速高効率3dグラフィックス及びデジタル音声信号処理を提供するコプロセッサを備える高性能低コストビデオゲームシステム |
JPH11175748A (ja) * | 1997-12-05 | 1999-07-02 | Namco Ltd | 画像生成装置及び情報記憶媒体 |
JPH11316856A (ja) * | 1998-03-04 | 1999-11-16 | Sony Corp | 画像処理装置 |
Family Cites Families (123)
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 |
US4491836A (en) | 1980-02-29 | 1985-01-01 | Calma Company | Graphics display system and method including two-dimensional cache |
US4425559A (en) | 1980-06-02 | 1984-01-10 | Atari, Inc. | Method and apparatus for generating line segments and polygonal areas on a raster-type display |
US4388620A (en) | 1981-01-05 | 1983-06-14 | Atari, Inc. | Method and apparatus for generating elliptical images on a raster-type video display |
US4463380A (en) | 1981-09-25 | 1984-07-31 | Vought Corporation | Image processing system |
US4570233A (en) | 1982-07-01 | 1986-02-11 | The Singer Company | Modular digital image generator |
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 |
GB8322438D0 (en) | 1983-08-19 | 1983-10-12 | Marconi Avionics | Display systems |
US4586038A (en) | 1983-12-12 | 1986-04-29 | General Electric Company | True-perspective texture/shading processor |
US4808988A (en) | 1984-04-13 | 1989-02-28 | Megatek Corporation | Digital vector generator for a graphic display system |
US4601055A (en) * | 1984-04-10 | 1986-07-15 | The United States Of America As Represented By The Secretary Of Commerce | Image processor |
US4725831A (en) | 1984-04-27 | 1988-02-16 | Xtar Corporation | High-speed video graphics system and method for generating solid polygons on a raster display |
US4829452A (en) | 1984-07-05 | 1989-05-09 | Xerox Corporation | Small angle image rotation using block transfers |
US4658247A (en) | 1984-07-30 | 1987-04-14 | Cornell Research Foundation, Inc. | Pipelined, line buffered real-time color graphics display system |
US4695943A (en) | 1984-09-27 | 1987-09-22 | Honeywell Information Systems Inc. | Multiprocessor shared pipeline cache memory with split cycle and concurrent utilization |
EP0184547B1 (en) | 1984-12-07 | 1991-11-21 | Dainippon Screen Mfg. Co., Ltd. | Processing method of image data and system therefor |
US4625289A (en) | 1985-01-09 | 1986-11-25 | Evans & Sutherland Computer Corp. | Computer graphics system of general surface rendering by exhaustive sampling |
US4710876A (en) | 1985-06-05 | 1987-12-01 | General Electric Company | System and method for the display of surface structures contained within the interior region of a solid body |
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 |
FR2586838B1 (fr) | 1985-08-30 | 1989-07-28 | Labo Electronique Physique | Processeur d'elimination de faces cachees pour la synthese d'images a trois dimensions |
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 |
JPS62192878A (ja) | 1986-02-20 | 1987-08-24 | Nippon Gakki Seizo Kk | 多角形の塗りつぶし方法 |
US4862392A (en) | 1986-03-07 | 1989-08-29 | Star Technologies, Inc. | Geometry processor for graphics display system |
JPS62231380A (ja) | 1986-03-31 | 1987-10-09 | Namuko:Kk | 画像合成装置 |
US5504917A (en) | 1986-04-14 | 1996-04-02 | National Instruments Corporation | Method and apparatus for providing picture generation and control features in a graphical data flow environment |
US4785395A (en) | 1986-06-27 | 1988-11-15 | Honeywell Bull Inc. | Multiprocessor coherent cache system including two level shared cache with separately allocated processor storage locations and inter-level duplicate entry replacement |
US4768148A (en) | 1986-06-27 | 1988-08-30 | Honeywell Bull Inc. | Read in process memory apparatus |
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 |
US4833601A (en) | 1987-05-28 | 1989-05-23 | Bull Hn Information Systems Inc. | Cache resiliency in processing a variety of address faults |
US4935879A (en) | 1987-08-05 | 1990-06-19 | Daikin Industries, Ltd. | Texture mapping apparatus and method |
US5170468A (en) | 1987-08-18 | 1992-12-08 | Hewlett-Packard Company | Graphics system with shadow ram update to the color map |
US4965751A (en) | 1987-08-18 | 1990-10-23 | Hewlett-Packard Company | Graphics system with programmable tile size and multiplexed pixel data and partial pixel addresses based on tile size |
US4866637A (en) | 1987-10-30 | 1989-09-12 | International Business Machines Corporation | Pipelined lighting model processing system for a graphics workstation's shading function |
US5144291A (en) | 1987-11-02 | 1992-09-01 | Matsushita Electric Industrial Co., Ltd. | Means for eliminating hidden surface |
US4945500A (en) | 1987-11-04 | 1990-07-31 | Schlumberger Technologies, Inc. | Triangle processor for 3-D graphics display system |
US4888712A (en) | 1987-11-04 | 1989-12-19 | Schlumberger Systems, Inc. | Guardband clipping method and apparatus for 3-D graphics display system |
US4901064A (en) | 1987-11-04 | 1990-02-13 | Schlumberger Technologies, Inc. | Normal vector shading 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 |
CA1309198C (en) | 1987-12-10 | 1992-10-20 | Carlo J. Evangelisti | Parallel rendering of smoothly shaded color triangles with anti-aliased edges for a three dimensional color display |
GB2214037A (en) | 1987-12-18 | 1989-08-23 | Ibm | Solid modelling system |
US4974176A (en) | 1987-12-18 | 1990-11-27 | General Electric Company | Microtexture for close-in detail |
US5136664A (en) | 1988-02-23 | 1992-08-04 | Bersack Bret B | Pixel rendering |
JPH0693181B2 (ja) | 1988-03-18 | 1994-11-16 | 株式会社日立製作所 | 表示装置 |
DE68918886T2 (de) | 1988-04-08 | 1995-06-01 | Dainippon Screen Mfg | Verfahren zur Gewinnung der Aussenlinie eines Objektes in einem Bild. |
US4907174A (en) | 1988-06-02 | 1990-03-06 | Sun Microsystems, Inc. | Z-buffer allocated for window identification |
EP0425573B1 (en) * | 1988-07-06 | 1998-09-16 | Hewlett-Packard Company | Texture mapping for computer graphics display controller system |
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 |
JP2685548B2 (ja) | 1988-11-28 | 1997-12-03 | 株式会社日立製作所 | ディジタル画像データの回転方法およびその装置 |
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 |
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 |
EP0423653B1 (en) | 1989-10-13 | 1997-08-06 | Matsushita Electric Industrial Co., Ltd. | Method and apparatus for compensating for color in color images |
JPH0776991B2 (ja) | 1989-10-24 | 1995-08-16 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Nurbsデータ変換方法及び装置 |
JP3005007B2 (ja) | 1989-12-21 | 2000-01-31 | キヤノン株式会社 | 画像符号化装置 |
US5056044A (en) | 1989-12-21 | 1991-10-08 | Hewlett-Packard Company | Graphics frame buffer with programmable tile size |
US5224208A (en) | 1990-03-16 | 1993-06-29 | Hewlett-Packard Company | Gradient calculation for texture mapping |
US5179638A (en) | 1990-04-26 | 1993-01-12 | Honeywell Inc. | Method and apparatus for generating a texture mapped perspective view |
US5163126A (en) | 1990-05-10 | 1992-11-10 | International Business Machines Corporation | Method for adaptively providing near phong grade shading for patterns in a graphics display system |
WO1991018359A1 (en) | 1990-05-12 | 1991-11-28 | Rediffusion Simulation Limited | Image generator |
DE69122557T2 (de) | 1990-06-29 | 1997-04-24 | Philips Electronics Nv | Bilderzeugung |
US5241658A (en) | 1990-08-21 | 1993-08-31 | Apple Computer, Inc. | Apparatus for storing information in and deriving information from a frame buffer |
JP2725915B2 (ja) | 1990-11-15 | 1998-03-11 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 三角形描画装置及び方法 |
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 |
FR2673791B1 (fr) * | 1991-03-08 | 1993-05-07 | Thomson Video Equip | Methode et dispositif pour, en image numerique, creer une bordure autour d'un sujet incruste sur un fond et generateur d'effets speciaux comportant un tel dispositif. |
JPH07122908B2 (ja) | 1991-03-12 | 1995-12-25 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 3次元のソリッド物体を表す表示可能情報を生成する装置と方法 |
US5421028A (en) | 1991-03-15 | 1995-05-30 | Hewlett-Packard Company | Processing commands and data in a common pipeline path in a high-speed computer graphics system |
US5415549A (en) | 1991-03-21 | 1995-05-16 | Atari Games Corporation | Method for coloring a polygon on a video display |
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 |
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 |
WO1993023816A1 (en) * | 1992-05-18 | 1993-11-25 | Silicon Engines Inc. | System and method for cross correlation with application to video motion vector estimation |
US5669010A (en) * | 1992-05-18 | 1997-09-16 | Silicon Engines | Cascaded two-stage computational SIMD engine having multi-port memory and multiple arithmetic units |
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 |
US5432895A (en) | 1992-10-01 | 1995-07-11 | University Corporation For Atmospheric Research | Virtual reality imaging system |
US5574835A (en) * | 1993-04-06 | 1996-11-12 | Silicon Engines, Inc. | Bounding box and projections detection of hidden polygons in three-dimensional spatial databases |
US5392393A (en) | 1993-06-04 | 1995-02-21 | Sun Microsystems, Inc. | Architecture for a high performance three dimensional graphics accelerator |
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 |
US5490240A (en) | 1993-07-09 | 1996-02-06 | Silicon Graphics, Inc. | System and method of generating interactive computer graphic images incorporating three dimensional textures |
US5487146A (en) | 1994-03-08 | 1996-01-23 | Texas Instruments Incorporated | Plural memory access address generation employing guide table entries forming linked list |
US5461712A (en) | 1994-04-18 | 1995-10-24 | International Business Machines Corporation | Quadrant-based two-dimensional memory manager |
US5596686A (en) * | 1994-04-21 | 1997-01-21 | Silicon Engines, Inc. | Method and apparatus for simultaneous parallel query graphics rendering Z-coordinate buffer |
US5572634A (en) * | 1994-10-26 | 1996-11-05 | Silicon Engines, Inc. | Method and apparatus for spatial simulation acceleration |
US5751292A (en) * | 1995-06-06 | 1998-05-12 | Hewlett-Packard Company | Texture mapping method and system |
WO1997005576A1 (en) * | 1995-07-26 | 1997-02-13 | Silicon Engines, Inc. | Method and apparatus for span and subspan sorting rendering system |
US5977977A (en) * | 1995-08-04 | 1999-11-02 | Microsoft Corporation | Method and system for multi-pass rendering |
US5740343A (en) * | 1995-11-03 | 1998-04-14 | 3Dfx Interactive, Incorporated | Texture compositing apparatus and method |
US6104415A (en) * | 1998-03-26 | 2000-08-15 | Silicon Graphics, Inc. | Method for accelerating minified textured cache access |
US6771264B1 (en) * | 1998-08-20 | 2004-08-03 | Apple Computer, Inc. | Method and apparatus for performing tangent space lighting and bump mapping in a deferred shading graphics processor |
US6476807B1 (en) * | 1998-08-20 | 2002-11-05 | Apple Computer, Inc. | Method and apparatus for performing conservative hidden surface removal in a graphics processor with deferred shading |
US6333744B1 (en) * | 1999-03-22 | 2001-12-25 | Nvidia Corporation | Graphics pipeline including combiner stages |
US6466223B1 (en) * | 1999-03-24 | 2002-10-15 | Microsoft Corporation | Method and apparatus for texture memory management |
US6337689B1 (en) * | 1999-04-03 | 2002-01-08 | Hewlett-Packard Company | Adaptive buffering of computer graphics vertex commands |
US6618048B1 (en) * | 1999-10-28 | 2003-09-09 | Nintendo Co., Ltd. | 3D graphics rendering system for performing Z value clamping in near-Z range to maximize scene resolution of visually important Z components |
US6593923B1 (en) * | 2000-05-31 | 2003-07-15 | Nvidia Corporation | System, method and article of manufacture for shadow mapping |
US6532013B1 (en) * | 2000-05-31 | 2003-03-11 | Nvidia Corporation | System, method and article of manufacture for pixel shaders for programmable shading |
US7034828B1 (en) * | 2000-08-23 | 2006-04-25 | Nintendo Co., Ltd. | Recirculating shade tree blender for a graphics system |
US6664958B1 (en) * | 2000-08-23 | 2003-12-16 | Nintendo Co., Ltd. | Z-texturing |
US7002591B1 (en) * | 2000-08-23 | 2006-02-21 | Nintendo Co., Ltd. | Method and apparatus for interleaved processing of direct and indirect texture coordinates in a graphics system |
US7905779B2 (en) * | 2004-05-10 | 2011-03-15 | Nintendo Co., Ltd. | Video game including effects for providing different first person experiences of the same video game world and a storage medium storing software for the video game |
-
2000
- 2000-11-28 US US09/722,382 patent/US7002591B1/en not_active Expired - Lifetime
-
2001
- 2001-02-20 JP JP2001042667A patent/JP4678963B2/ja not_active Expired - Fee Related
- 2001-08-23 EP EP20010307189 patent/EP1189172A3/en not_active Withdrawn
-
2005
- 2005-06-15 US US11/152,283 patent/US7307638B2/en not_active Expired - Lifetime
-
2010
- 2010-11-25 JP JP2010261958A patent/JP4890638B2/ja not_active Expired - Fee Related
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04211878A (ja) * | 1990-01-15 | 1992-08-03 | Philips Gloeilampenfab:Nv | 表示装置及びその動作方法 |
JPH07325934A (ja) * | 1992-07-10 | 1995-12-12 | Walt Disney Co:The | 仮想世界に向上したグラフィックスを提供する方法および装置 |
JPH07225853A (ja) * | 1994-02-10 | 1995-08-22 | Matsushita Electric Ind Co Ltd | 画像処理装置 |
JPH0877385A (ja) * | 1994-08-29 | 1996-03-22 | Internatl Business Mach Corp <Ibm> | コンピュータ・グラフィクス装置 |
JPH0896150A (ja) * | 1994-09-28 | 1996-04-12 | Toshiba Corp | 図形描画装置及び図形データ分割方法 |
JPH08212377A (ja) * | 1994-12-02 | 1996-08-20 | Sony Computer Entateinmento:Kk | 画像情報生成装置及び方法、画像情報処理装置及び方法、並びに記録媒体 |
JPH09325759A (ja) * | 1995-11-22 | 1997-12-16 | Nintendo Co Ltd | 高速高効率3dグラフィックス及びデジタル音声信号処理を提供するコプロセッサを備える高性能低コストビデオゲームシステム |
JPH11175748A (ja) * | 1997-12-05 | 1999-07-02 | Namco Ltd | 画像生成装置及び情報記憶媒体 |
JPH11316856A (ja) * | 1998-03-04 | 1999-11-16 | Sony Corp | 画像処理装置 |
Also Published As
Publication number | Publication date |
---|---|
EP1189172A9 (en) | 2002-09-04 |
US7002591B1 (en) | 2006-02-21 |
US20050237337A1 (en) | 2005-10-27 |
US7307638B2 (en) | 2007-12-11 |
EP1189172A2 (en) | 2002-03-20 |
EP1189172A3 (en) | 2014-01-28 |
JP4890638B2 (ja) | 2012-03-07 |
JP4678963B2 (ja) | 2011-04-27 |
JP2002063593A (ja) | 2002-02-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4890638B2 (ja) | グラフィクスシステムにおいて直接および間接テクスチャを処理するための方法および装置 | |
JP4731028B2 (ja) | グラフィクスシステム用再循環シェードツリーブレンダ | |
JP4658378B2 (ja) | グラフィクスシステムにおいて環境を写し込んだバンプマッピングのための方法および装置 | |
US6664958B1 (en) | Z-texturing | |
US6707458B1 (en) | Method and apparatus for texture tiling in a graphics system | |
JP4691273B2 (ja) | グラフィクス処理システムおよびエンボス型バンプマッピングを行う方法 | |
US6664962B1 (en) | Shadow mapping in a low cost graphics system | |
US6697074B2 (en) | Graphics system interface | |
US6421058B2 (en) | Graphics command stream for calling a display object in a graphics system | |
US6700586B1 (en) | Low cost graphics with stitching processing hardware support for skeletal animation | |
US6411301B1 (en) | Graphics system interface | |
US6618048B1 (en) | 3D graphics rendering system for performing Z value clamping in near-Z range to maximize scene resolution of visually important Z components | |
JP4740490B2 (ja) | グラフィックスレンダリングシステムにおいて視覚的に重要なz成分の精度を最大化しz近傍クリッピングを回避するためのz近傍範囲におけるz値のクランピング | |
JP4698894B2 (ja) | グラフィックスシステムにおけるテクスチャタイリングのための方法、装置およびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110920 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111114 |
|
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: 20111213 |
|
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: 20111214 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4890638 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: 20141222 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 |
|
LAPS | Cancellation because of no payment of annual fees |