JPH08255264A - 3d像のテクスチャ処理及び陰影付け方法 - Google Patents
3d像のテクスチャ処理及び陰影付け方法Info
- Publication number
- JPH08255264A JPH08255264A JP8014192A JP1419296A JPH08255264A JP H08255264 A JPH08255264 A JP H08255264A JP 8014192 A JP8014192 A JP 8014192A JP 1419296 A JP1419296 A JP 1419296A JP H08255264 A JPH08255264 A JP H08255264A
- Authority
- JP
- Japan
- Prior art keywords
- texture
- pixel
- image data
- data
- pixels
- 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
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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
- Processing Or Creating Images (AREA)
- Image Processing (AREA)
Abstract
スチャ処理及び陰影付けする方法を提供する。 【解決手段】 三次元像は、スクリーンの各画素領域
(ピクセル)の位置と、そのピクセルに関連した像デー
タとを含むデータを最初に受け取ることによりスクリー
ン上に表示するようにテクスチャ処理される。テクスチ
ャ像データは、像データと、そのテクスチャ像データが
ピクセル上にマップされる適切な位置とに基づいてメモ
リ手段から検索される。同じ関連像データを共有するピ
クセルの数が決定され、そして1つのピクセル増分に対
応するピクセル上のテクスチャデータのマッピングの増
分変化も決定される。同じ像データを隣接ピクセルとし
て共有する各ピクセルの場合は、その隣接ピクセルにつ
いて既に導出されているテクスチャ像データが、テクス
チャ像データの増分変化と結合されて、そのピクセルの
ためのテクスチャ像データが導出される。
Description
するために3D像をテクスチャ処理及び陰影付けする方
法に係る。
たリアルタイムの3D像を発生するために商業用システ
ムによって最も一般的に使用される方法は、Zバッファ
システムを使用するものである。これは、ソフトウェア
又はハードウェアのいずれかで実施するための最も簡単
な可視表面アルゴリズムの1つであり、シリコングラフ
ィックス、イベンツ&サザーランド、及びヒューレット
パッカードのような会社で使用されている。
ッファを入手できるだけでなく、各ピクセルごとにz値
が記憶される同じ入力数のZバッファも入力できること
が必要である。多角形、通常は三角形が、任意の順序で
フレームバッファにレンダリングされる。走査−変換の
間に、多角形の点がバッファに既にある点よりも視聴者
から離れない場合に、新たな点のテクスチャ処理及び陰
影付けされたカラーが評価されて、z値が古い値に置き
換えられる。予めの分類は不要であり、オブジェクト−
オブジェクトの比較も不要である。
ピクセルの2Dアレーをピクセルの別の2Dアレーに変
換するプロセスを指す。この変換は全く任意であるが、
ここでは、遠近マッピングを考える。遠近マッピング
は、実際には、ピクセルの2Dアレーを取り上げ、それ
らを回転して3Dに変換し、そしてそれらを表示のため
のz−n平面に投射する。
ラフィックにおいて、実物の表面細部の模擬を試みるの
に使用される。遠近マッピングを用いると、画(例え
ば、木の表面)を3D物体(例えば、テーブル)上に配
置することができる。その結果として、テーブルは見掛
けが木のようになる。
り、x及びyは、スクリーンスペースにおける2D座標
であり、そしてa、b、c、d、e及びfは、マッピン
グプロセスに使用される係数である。
つ信号をサンプリングすると、エイリアシングを引き起
こす。テクスチャマッピングは、エイリアシングを引き
起こし易い再サンプリングプロセスである。エイリアシ
ングを生じないテクスチャマッピングされた像を形成す
るために、テクスチャスペースの像をマッピングのサン
プリング率の半分までローパスフィルタしなければなら
ない。この状態に対する複雑さは、スクリーンスペース
内の位置に基づいてサンプリング率が変化することであ
る。
理を必要とする。数学的に簡単な演算で正しいフィルタ
動作を近似する方法は多数ある。最も簡単な方法は、M
IPマッピングであり、MIPは、MULTIM IM
PARVOの省略形である。
テクスチャマップをフィルタしそして半分の解像度に減
少する前処理段階である。これは、得られる像のサイズ
が1ピクセルになるまで繰り返される(これは、テクス
チャが方形で、2の累乗であると仮定する)。図1は、
煉瓦のテクスチャの例を128x128の解像度及びそ
れに関連した低いMIPマップレベルで示している。
えることができる。MIPマップは3つの変数u、v及
びDを介してアクセスされる。変数u及びvは、アンチ
エリアシングする必要のあるテクスチャスペースにおけ
るピクセルの座標である。変数Dは、フィルタされたそ
のピクセルがいかに必要とされるか、即ちピラミッドが
いかに高いかの尺度である。値D=1は、全解像度の像
が使用されることを意味する。値D=2は、半分の解像
度の像が使用されることを意味し、等々となる。Dの値
が2の累乗でないときには、2つの最も近いMIPマッ
プレベルを混合したものが、良く知られたように線型補
間を用いて計算される。
変換されるときにスクリーンピクセルがカバーする面積
の平方根である。不都合なことに、これは、ピクセルご
とのベースで計算するには非常に経費がかかる。
18(6)、1975年6月)はDに対し次の近似式
を用いることを示唆している。 D2 =MAX(du2 /dx)+(dv2 /dy)、 (du2 /dy)+(dv2 /dy)
であるが、依然として平方根を必要とすると共に、ピク
セル当たり2つの付加的なマッピングを必要とする。
ータグラフィックに使用される用語で、特定のスクリー
ン位置における面のカラーを評価するプロセスの一部分
を指す。面が陰影付けされる場合には、その面と光源が
いかに相互作用するかをモデリングするのに、面の位
置、向き及び特徴が使用される。
この照明モデルの質によって大きく左右される。不都合
なことに、精度のよい照明モデルは、リアルタイムのレ
ンダリングシステムに使用するのに高価であり過ぎる。
それ故、照明計算において近似を用いて妥協を図る必要
がある。
成分から反射される光を模擬する拡散又はランバートシ
ェーディングである。これは、図2に示されており、次
の式で表される。
のシーンピクセルを通過する)そして表面の所与の点P
に当たる光線を示している。又、Pにおいて表面に垂直
な直角のベクトル及び光源からPへの光線も示されてい
る。
度(又はカラー)Iは、光の輝度Lと、表面の拡散反射
率Sと、光線と法線との角度θのコサインとの積であ
る。
する(フラットシェーディングとして知られている)
か、又は曲面を模擬するように多角形の小面にわたって
種々の仕方で補間することができる。例えば、ゴーラウ
ドシェーディング(CommACM 18(60)、第
311−17ページ、1971年)は、多角形の小面に
わたる拡散カラーの線型補間である。
線を線型補間することである。この方法は、ブイ・スオ
ング・フォンにより提案されている(Comm ACM
18(6)、1975年6月)。不都合なことに、こ
の計算は、比較的経費がかかる。又、ビショップ及びウ
エイマによって効果的な近似が提案されており(コンピ
ュータグラフィックス、20(4)、第103−6ペー
ジ、1975年)、これは、二次元のテイラー級数近似
を使用している。これらの近似は、差の方程式を用いて
効果的に評価することができる。僅かな前計算オーバー
ヘッドはさておき、cosθは、ピクセル当たり2つの
加算のみを犠牲にして近似することができる。
光沢のある又は鏡のようなハイライトである。これら
は、シーンにおける光の反射である。鏡のようなハイラ
イトは表面に反射の見掛けを与え、像の現実感を相当に
改善する。これらも、ブイ・スオング・フォンにより述
べられた方法によって最も一般的に近似され、これは、
図3に示され、次の式で表される。
定のピクセルを通過し、所与の点Pにおいて表面に当た
る光線を示している。この光線は、次いで、通常のミラ
ー角度を用いて図示された方向に反射される。表面は完
全に滑らかではないから、反射光線は、ある程度分散す
ると仮定され、これは表面の粗面さによって左右され
る。更に、図3は、明るい光線として見える光源からの
光線も示している。反射方向が光線に近いほど、ハイラ
イトは明るく見える。
度Lと、表面の反射率Sと、反射方向と光の間の角度θ
と、表面の滑らかさnとの関数として示している。この
関数は、反射方向が光線方向に近いほど(即ち、θが小
さいほど)、ハイライトの輝度が最大に接近し、他の領
域において減少することを意味する。nの値が大きいほ
ど、減少は速くなり、ハイライトは小さくなり、ひいて
は、表面の見掛けは滑らかになる。最も効果的であるた
めには、この計算を累乗関数と称する必要がある。nの
典型的な値は、1から1000の範囲である。
テイラー級数近似(拡散シェーディング参照)を使用す
ると共に、累乗関数を計算するためにルックアップテー
ブルを使用した上記式の計算部分の提案している。
スメモリの頭文字である。「ページモード」DRAMの
構造は、バンク、ページ及び位置に分割することができ
る。位置とは、アトミックアドレスメモリ素子である。
多数の隣接する位置がページを作り上げ、そして多数の
ページがバンクを作り上げる。
の位置を含むページがオープンされそしてデータがフェ
ッチされる。次に要求されたページが同じページ内に入
る場合には、データをフェッチするまでページを再オー
プンする必要はない。ページをオープンするのに要する
時間は著しいものであるから、ページ内のランダムな位
置を要求することは、ページ外のランダムな位置を要求
するよりも相当に速いものとなる。「ページブレーク」
という用語は、オープンしていないページ内の位置の内
容をフェッチすることを指す。
は、一度に2つ以上のページをオープン状態に保持する
ことができる。オープンしたページは異なるバンクにな
ければならないという制約がある。
スメモリの頭文字である。SRAMの構造は、DRAM
より簡単である。装置内のいかなる位置も単一のクロッ
クサイクル内でフェッチすることができる。この簡単化
の欠点は、シリコン上のメモリ素子の密度がDRAMよ
りも相当に低いことである。その結果、DRAMよりも
相当に高価なものになる。
に、ある次元の現実性を付加する。霧のように見えるシ
ーンは単に有用ではなく、全ての屋外シーンは霧を必要
とする。屋外シーンにおいて、遠くにある物体は、あま
り刺激的な色をしていない。この効果は霧と同じであ
り、物体は距離と共に「灰色化」する。
は、1m当たりある割合で減衰する。例えば、光が1m
当たり1%で減衰する場合には、1mで光は0.99に
なる。2mでは、元の光の0.99*0.99=0.9
92 =0.98となる。「n」mでは、光は元の0.9
9n となる。
処理及び陰影付けに伴う問題は、各シーンピクセルがそ
のカラーを何回も評価されることである。これは、表面
がランダムに処理され、目に最も近い面が、シーンの処
理中に何回も変化するからである。
クスチャ処理及び陰影付けアーキテクチャは、各スクリ
ーンピクセルごとに単一のカラーを処理するだけで計算
浪費を排除する。シーン内の各面には、独特の「タグ」
が関連される。ピクセルを処理するために、隠れた面の
除去が行われ、そのピクセルに最も近い面のタグが計算
される。このタグの値を用いて、そのピクセルを正しく
テクスチャ処理及び陰影付けする命令がフェッチされ
る。
チャ処理及び陰影付けを必要とするシステムに特に適し
た非常に効率的で且つ最適なアーキテクチャを提供す
る。ここに述べるような複雑なシステムの場合には、複
雑さ(ハードウェアサイズ/シリコン面積)と機能性と
の間の最良のバランスを入念に達成するよう確保するこ
とが非常に重要である。これは、主たるブロック間の相
互作用と、各ブロックに使用される低レベル方法の細部
とを含む全システムアーキテクチャーを選択時に入念に
設計しなければならないことを意味する。特に重要なも
のは、次の通りである。 1.障害を確実に最小にするデータ編成及びメモリアー
キテクチャ; 2.種々の機能ブロック、メモリキャッシュ要求及びそ
れらの相互作用に関するリソースの区分化; 3.数値の精度についての複雑さレベル、及び各ブロッ
クに必要とされる機能を実施するのに用いる方法に使用
される近似の程度; 4.ハードウェア/シリコン予算内での充分な融通性レ
ベルのサポート。
いてバランスをとるために入念なアルゴリズム及びシュ
ミレーション分析を使用する。
決定段階の1つは、メモリからテクスチャピクセルをフ
ェッチすることである。帯域巾を広く保つために、ある
設計では、高速SRAMを使用する。これは、所望の性
能を与えることができるが、このような解決策のコスト
は、甚だしいものとなる。
れたアーキテクチャーは、MIP−MAPデータをペー
ジモードDRAMに記憶する。最高のデータスループッ
トを得るために、ページブレークの数を最小に減少しな
ければならない。MIPマップを記憶する最も簡単な方
法は、Dレベルを隣接配置し、そしてマップ内でピクセ
ルが走査順序で記憶されるようにすることである。MI
Pマップへのアクセスの性質により、この記憶方法は、
ほぼアクセスごとにページをブレークする。メモリ構造
は、ページブレークの数を最適なものにする。
在的に境界のないものである。分かり易い境界が実施さ
れても、必要とされる値は広い範囲に及ぶ。純粋な固定
小数点演算を用いて方程式を解く場合は、高精度の乗算
器及び除算器が必要となる。このようなハードウェア
は、大型で低速であり、従って、システムの価格及び性
能に影響を及ぼす。本発明の別の特徴による混合浮動及
び固定小数点方法は、2つの利点を有する。第1に、乗
算器及び除算器のサイズを縮小することができ、そして
第2に、全浮動小数点演算を実施する複雑さが回避され
る。
当たり1つの除算を必要とする。殆どのハードウェア除
算アーキテクチャーは、次々に近似する方法を使用し、
これは、所望の精度に対し繰り返しを必要とする。この
繰り返しは、時間的に行わねばならない(多数のクロッ
クサイクル)か、又はスペース的に行わねばならない
(シリコン領域)。次々の近似を伴わずに所望の精度の
逆数を評価するための本発明の更に別の特徴による新規
な方法及びアーキテクチャーを以下に述べる。
セルをいかにフィルタすることが必要かの尺度である。
「D」に対するヘクバート氏の近似は、計算的にかなり
経費がかかり、平方根を必要とすると共に、及びピクセ
ル当たり2つの付加的なマッピングを必要とする。
「D」を計算する更に簡単な新規な方法について以下に
説明する。
用されるパラメータをフェッチする場合には、ピクセル
を処理できる率に影響が及ぶ。パラメータが必要とされ
る順序は、完全にランダムではなく、基準の位置を利用
することができる。ここに述べるアーキテクチャーはパ
ラメータキャッシュを含み、これは、全設計の性能を著
しく改善する。
御するために、累乗関数が一般的に使用される。これ
は、実施に経費がかかり、大きなROMルックアップテ
ーブルによる近似又は正確な累乗関数の明確な実施の2
つが考えられる。ハイライトの方程式は近似に過ぎない
ので、この関数は、完全に正確な累乗関数である必要は
ない。
ると仮定すれば、累乗関数は単に次の計算となる。 xn 、但し、0≦x≦1
要はなく、若干の整数値で充分である。次の式に注目さ
れたい。 (1−y)2n ∝(1−2y)2n-1 yが小さいときには、次の近似を使用し、xが上記範囲
内のときに、xを累乗nまで上昇させる。 xn ≒(1−max(1、(1−x)、2k ))2 但し、kは、(log2 n)−1の整数部分である。値
kは、表面特性の一部分として値nに効果的に置き代わ
る。
ある値に2進表示で2k を乗算することは、単にk個の
場所だけ左にシフトすることであり、最大値の計算も平
凡な演算である。平方演算は、値それ自身の乗算であ
る。
ェアの両方の実施形態に適用可能である。
計算するには、霧の濃度を、物体と観察者との間の距離
の累乗まで上昇させる必要がある。この関数を近似する
効率的な方法は、以下に説明する。
規定する。以下、添付図面を参照して本発明の好ましい
実施形態を詳細に説明する。
タの流れを示す図である。システムへの入力は、本出願
人の英国特許出願第9414834.3号に開示された
システムで発生できる形式の「x、y」座標、タグ(T
ag)及びある任意の「ピクセル特定データ」である。
入力ピクセルデータは、「走査順序」又は「タイル順
序」で受け取られる。走査及びタイル順序は、図5及び
6に示されている。
は、「走査順序」の場合よりも、像のローカルピクセル
が互いに接近して送信されることである。基準の位置
は、パラメータキャッシュの性能を改善する。
潜在的に見える面に関連した独特の識別子である。
部で評価されたピクセルの属性である。これらの属性
は、ピクセルカラーの評価に使用される。例えば、「三
次元像の陰影付け(Shading Three-Demensional Image)
」と題する特許出願(出願第9414834.3号)
に開示されたシステムでは、各ピクセルに、影が投じら
れるかどうか記述するデータが関連される。この情報
は、ピクセルカラーを評価するときに加味することがで
きる。
のインデックスとして使用される。これは、各ピクセル
において見える面を定めるパラメータを記憶する。イン
デックスされた位置に記憶されるデータは、ピクセルカ
ラーの評価に使用される(例えば、テクスチャマッピン
グ方程式の係数)。
ときには、そのTagに関連したデータが2回以上必要
となる。というのは、目に見える同じ面を表示するのに
多数のピクセルが使用されるからである。それ故、パラ
メータキャッシュ4をデータ経路に挿入することにより
フェッチパラメータの性能を改善することができる。シ
ュミレーションにおいては、2方セット連想キャッシュ
が最良の複雑さ/性能比を与えている。
タを含むDRAMの多数のバンクで構成される。入力ピ
クセルの「u、v」座標が評価されると、それに関連し
たテクセル(Texel)(テクスチャメモリの画素領
域)がテクスチャメモリからフェッチされる。
即ち前計算段及び繰り返し段に分割される。前計算ユニ
ット8では、パラメータがフェッチされ、次いで、「a
x+by+c」、「dx+ey+f」及び「px+qy
+r」が評価される。又、このユニットは、いかに多く
の隣接ピクセルが同じTag値を共有するかをカウント
する。このカウントは、上記の値と共に、テクスチャ繰
り返しユニット10へ転送される。
算ユニット8から値を取り上げて、2つの除算を実行
し、「u、v」評価を完了する。前計算からのカウント
値が0より大きい場合には、現在ピクセルと次のピクセ
ルとの間の差(即ち、「a」、「d」及び「p」)が、
前計算された値(「ax+by+c」、「dx+ey+
f」及び「px+qy+r」)に加算され、そして2つ
の除算が繰り返される。この段階は、「カウント」で指
定された回数だけ繰り返される。
が計算されると、それが陰影付けユニット12へ通され
る。ピクセルTagにより指示されたパラメータは、単
なるテクスチャ処理係数ではなく、それらは、陰影付け
ユニットにより最終ピクセルカラーを評価するのに使用
する情報も含んでいる。
は、一次及び二次関数陰影付けのような「x、y」スク
リーン位置の関数である。
リーンピクセル座標であり、T2 、T1 、T0 は定数で
ある。これは、テクスチャ処理と同様に前計算部分及び
繰り返し部分に分割することができる。
に制約される。
るが、実施のコストを高める。これは、次の式の関数に
よって実施される。 I(x、y)=T5 x2 +T4 xy+T3 y2 +T2 x
+T1 y+T0 但し、Iは輝度(又はカラー)であり、x及びyはスク
リーンピクセル座標であり、そしてT5 、T4 、T3 、
T2 、T1 、T0 は定数である。これは、テクスチャ処
理と同様に前計算部分及び繰り返し部分に分割すること
ができる。
に制約される。
る累乗まで高めることができる。
けされた後に、フレーム記憶装置へ出力される。次い
で、フレーム記憶装置からピクセルがフェッチされて表
示装置へ送られる。
適化されたアーキテクチャが図11に示されている。
データではなくタグをその出力として記憶する隠れた面
の除去及び深さの分類装置から導出される。このような
システムは、英国特許出願第9414834.3号に開
示されている。入力データは、シーンの各面に対して独
特の表面タグと、システムへ入力されるピクセルの現在
ブロックのスタートアドレスであるブロックx、yアド
レスと、現在入力されているピクセルの深さである深さ
(Z)値と、現在ピクセルが1つ以上の陰影ライトの影
にあるかどうかを指示する陰影フラグとを備えている。
面タグ:スパン長さ(パラメータが同じに保たれるとこ
ろのピクセルの数)>としてコード化されてタグバッフ
ァ22に記憶されるラン長さである。他の入力パラメー
タは、ピクセルごとのベースで入力ブロックバッファ2
4に記憶される。
して比較される。ブロックはタイル状のフォーマットで
入力され、従って、所与のシーンの垂直及び水平のコヒ
レンスがキャッシュにより利用できるのが望ましい。キ
ャッシュの連想性の程度は、個々のシステムコスト/性
能の兼ね合いについて残されている問題である。キャッ
シュがヒットする場合に、それに対応する表面パラメー
タリストは、前計算ユニット8へ直接通される。キャッ
シュがミスする場合には、パラメータリストがシステム
メモリからフェッチされ、記憶されそして前計算ユニッ
トへ送られる。キャッシュは、高いヒット率で設計され
ているので、システムメモリバスの帯域巾におけるその
後のミスのペナルティは小さく、個別のパラメータメモ
リの必要性は否定される。
レス(ここからスピンスタートアドレスが導出される)
を現在パラメータリストと共に取り上げ、パラメータリ
ストに指定されたようにテクスチャ/陰影付け繰り返し
装置28、30のいずれか又は全てに対する初期値を計
算する。このようにする際に、上記の走査線テクスチャ
アドレス及び陰影付け輝度アルゴリズムを実施する。こ
れは、典型的に、マイクロシーケンサによって制御され
る乗算アキュムレータのアレーより成る。
ペナルティ及び前計算オーバーヘッドをテクスチャ及び
陰影付け繰り返しプロセスにオーバーラップさせ、これ
により、システムスループットを増加できるようにす
る。
ように、u、v及びMIPマップの「D」計算において
双曲線補間を実行する。テクスチャ繰り返し装置の出力
は、テクスチャメモリ6のアドレスの対より成り、2つ
の適切なMIPマップからのテクスチャ値がフェッチさ
れてピクセル処理ユニット34へ送られる。
陰影付け機能に必要とされる並列の程度によって左右さ
れる。例えば、2つのユニットは、滑らかに陰影付けさ
れた面に対し全体的な照明輝度と影の光輝度とを同時に
評価することができる。或いは又、これらユニットは、
フォングの陰影付けされた面の拡散成分及び鏡状成分を
並列に計算するのに使用できる。繰り返し装置は、以下
のアルゴリズムを実施する。陰影付けパイプラインの出
力は、1組の輝度値を含み、これらは、ピクセル処理ユ
ニットへ送られる。
ファから記憶された深さ値を取り上げ、そして以下に述
べるように、霧付与の擬似指数関数を解く。これらの値
は、ピクセル処理ユニットへ送られ、そこで、計算され
たピクセルカラーと霧カラーとの間を補間するのに使用
される。
ンピクセルの最終的なR、G、Bカラー評価を行う。基
本カラー又はテクスチャカラーが入力され、そして陰影
ビットにより指示された陰影付け繰り返し装置からの全
ての当該光源輝度値の条件和で乗算される。ハイライト
のオフセットも加算される。次いで、ピクセルは霧が付
与され、ブロック累積バッファ38へ転送される。
歩した特徴をサポートすることができる。これは、英国
特許出願第9414843.3号に開示されたような互
換性のある隠れた面の除去及び深さ分類システムを必要
とすることに注意されたい。
は、マルチパス技術を用いてレンダリングすることがで
きる。先ず第1に、ブロックの不透明な面が処理され、
そして上記のように累積バッファへ転送される。次い
で、半透明の面が同様に処理されるが、全ての半透明の
面は、それらのパラメータリスト又はテクスチャデータ
の一部分として「アルファ」成分を有し、これを用い
て、現在ピクセルと、累積バッファに記憶された対応す
るバックグランドピクセルとの間で混合が行われる。全
ての半透明ピクセルが処理されたときに、累積バッファ
の内容がフレームバッファから流出される。
パス技術を用いて達成することができる。この方法にお
いては、各ブロックがX及びYのサブピクセル増分で何
回も通される。それにより得られるピクセルカラーは、
ブロック累積バッファに累積される。パスが完了する
と、ピクセルがパスの回数によって分割され、フレーム
バッファへ送られる。
せるべきオブジェクトを過剰サンプリングし、次いで、
上記のようにブロック累積バッファを用いてサンプルを
平均化することにより達成される。
技術を用いて模擬することができ、陰影光源がパス間で
ジッタ状にされ、次いで、上記2)で述べたブロック累
積バッファを用いてサンプルが平均化される。
領域に光束を投射するトーチビーム又はヘッドライトの
効果である。これは、陰影ボリューム及び光ボリューム
の両方を表すことができるように陰影ビットを適当にセ
ットすることにより実施できる。ソフトなエッジは、上
記のように模擬することができる。
題及びそれにより生じるページブレークの問題は、上記
で述べた。これについて、以下に、より詳細に説明す
る。
るときには、必要なテクスチャピクセル又はテクセル、
或いはMIPマッピングの場合には、スクリーンピクセ
ルへとマップされる多数のテクセルを得るために、テク
スチャマップをアクセスしなければならない。
するために、次の式の関数を計算して、テクセルの位置
を見つけなければならない。 Texel address=Texture base address +Offset Func(u、v) Texture base addressは、テクス
チャメモリにおけるMIP mapレベルの所与のテク
スチャのスタート位置であり、そしてu、vは、計算さ
れた整数テクスチャ座標である。Offset Fun
cは、u、v座標をテクスチャマップのオフセットに対
してマップする。
には、オフセット関数が次のようになる。 Offset Func(u、v)=u+size*v 但し、sizeは、u次元のテクスチャマップである。
テクスチャマップの次元は2の累乗であるから、上記乗
算は、2進表示での単なる左シフト動作であり、そして
加算は、ビットの単なる連鎖である。それにより128
x128テクスチャマップに対して得られる関数が図7
に走査順序で示されている。(vx は、vのx番目のビ
ットを指し、最下位ビットは0で番号付けされているこ
とに注意されたい。)
かの量だけ変化するや否や、それによりオフセットが急
激に変化することである。これらの急激な変化は、非常
に多数のページブレークを生じ、これは、テクスチャ処
理性能に悪影響を及ぼす。一般に、テクスチャ座標は徐
々に変化する。しかしながら、これらはu及び/又はv
方向に同等に変化する傾向がある。
方法は、u及びvインデックスビットをインターリーブ
することである。最下位ビットにv0 を有する1つのこ
のような方法が、最適な関数のもとで図7に示されてい
る。(Uでスタートすることもできる。)
vの両方向に隣接する)をテクスチャメモリにおいて比
較的接近して保持し、それ故、ページブレークを減少す
る。図8は、テクスチャマップの左上の角を示してい
る。各ピクセルの番号は、ピクセルが記憶されるオフセ
ットを示している。
説明される。このパターンは、それ自身で同様に回転さ
れた「Z」であり、即ちジグザグがピクセルレベルでス
タートし、ピクセルのグループが更に大きくなるのと共
に続けられる。
題が生じる。MIPマッピングのプロセスは、通常、各
スクリーンピクセルの計算のたびにMIPマップの2つ
の隣接レベルをアクセスする必要がある。MIPマップ
レベルが隣接して記憶される場合には、2つのレベルか
らのピクセルフェッチが、1つのDRAMページ内に留
まるにはあまりに離れ過ぎ、従って、各ピクセルアクセ
スにおいてページブレークが生じる。
AMバンクを使用する必要がある。多数のバンクを有す
るメモリ構成では、一度に2つ以上のページをオープン
状態に保持することができる。オープンしたページは異
なるバンクになければならないという制約がある。それ
故、連続するMIPマップレベルが個別のバンクに記憶
される場合には、各ピクセルフェッチのたびにページブ
レークが生じない。
ング規定を使用する。MIPマップレベルは0から番号
付けされ、0は1x1解像度マップを指し、1は2x2
マップを指し、等々となる。図9は、全ての奇数番号の
MIPマップレベルを1つのバンクにおける隣接ブロッ
クとして示し、そして全ての偶数レベルを別のバンクに
おける隣接ブロックとして示している。
ャをメモリに追加するときに問題を生じさせる。バンク
Yにおけるメモリ要求は、バンクXのほぼ4倍である。
バンクが同じサイズであるときには、バンクYは、バン
クXよりかなり前にいっぱいになる。この問題は、奇数
MIPマップレベルが記憶されるバンクをトグルするこ
とにより回避できる。不都合なことに、この構成は、奇
数及び偶数のデータブロックに対して個別のベースアド
レスを必要とする。
に、MIPマップの対をインターリーブすることであ
る。テクスチャAは、バンクXのベースアドレスに最低
解像度のマップ(1x1)を有する。次のマップ(2x
2)は、バンクYの連続アドレスにある。テクスチャB
は、バンクYのベースアドレスに1x1マップを有し、
そしてバンクXの連続アドレスに2x2マップを有す
る。
クスチャ処理される各スクリーンピクセルごとに、6つ
の乗算と、6つの加算と、2つの除算とを必要とする。
必要な計算を減少するために、差の式が使用される。
で、同じテクスチャ処理関数を共有するピクセルの水平
方向スパンがある。X次元における数1の差の式は、そ
のスパン内の必要な計算を減少する。
するが、その後のピクセルは、3つの加算と、2つの除
算しか必要としない。
テクチャーは、2つのユニット即ち前計算ユニット及び
繰り返しユニットに分割される。前計算ユニットは、a
x+by+c、dx+ey+f及びpx+qy+rを評
価する。繰り返しユニットは、「a」、「d」及び
「p」の除算及び加算を実行する。
の目に見える効果を詳細に検査した後に、混合浮動及び
固定小数点方法が最も適当であると判断された。
り、従って、「px+qy+r」の評価は、整数乗算及
び整数加算しか必要としない。
「e」及び「f」は、単一のべき指数2を共有し、これ
は、他のテクスチャ処理係数と共に記憶される。「ax
+by+c」及び「dx+ey+f」の評価は、「px
+qy+r」の評価と同じであるが、べき指数係数も除
算ユニットへ送られる。
る項「ax+by+c」、「dx+ey+f」及び「p
x+qy+r」は、仮数及びべき指数2を伴う浮動小数
点数へと換算される。除算の結果は、アドレス発生に用
いるための整数へと換算される。
ビットの逆数の仮数とを使用する。
算によって行われる。逆数化ユニットへの入力は、0.
5ないし0.9999の固定小数点数であり、出力は、
2ないし1の範囲である。
ックアップテーブルによるものである。関数は、14ビ
ットまでの精度であることが必要とされる。これは、
0.5が0x2000(16進)として表され、0.9
999が0x3fffであることを意味する。データを
完全に非圧縮状態で記憶するためには、各々14ビット
の8192の位置が必要である(14KB)。逆数の最
上位ビットは、常に1であるから除去することができ
る。これは、記憶量を各々13ビットの8192の位置
(13KB)まで減少する。
することである。オペランドが0.707より大きい場
合には、逆数は1又は0だけ変化する。それ故、これら
の差は、1ビットの記憶しか必要としない。0.707
より小さければ、逆数は、2又は1だけ変化し、これも
1ビットで記憶できる。この圧縮方法は、必要なメモリ
を1.375KBまで減少する。以下のテーブルは、幾
つかの逆数とそれらの差を示す。オペランド 逆数 差 0x3FFF 0x2000 - 0x3FFE 0x2001 1 0x3FFD 0x2001 0 0x3FFC 0x2002 1 0x3FFB 0x2002 0 0x3FFA 0x2003 1 0x3FF9 0x2003 0 0x3FF8 0x2004 1 0x3FF7 0x2004 0
行われる。例えば、0x3FFBの逆数を計算するため
に、0x3FFFないし0x3FFBに対する差のビッ
トが加算され、次いで、0x2000(1+0+1+0
+0x2000≒0x2002)に加算される。オペラ
ンドが0.707より下がったときは、差が2又は1と
なる。これらの差は、単一ビットとして記憶されるが、
差を加算するときには2及び1として解釈される。
加算を必要とするので、少数のクロックサイクルで行う
ことは不可能である。若干効率の悪い圧縮方法は、加算
の数を大巾に減少することができる。32ごとの逆数値
が、介在する31の数字の差と共にいっぱいに記憶され
る。以下のテーブルは、このデータの最初の幾つかのエ
ントリーを示す。 オペランド 逆数 介在する差 0x3FFF 0x2000 1010101010101010101010101010101 0x3FDF 0x2010 1010101010101010101010101010101 0x3FFF 0x2020 1010101010101010101010101010101
めに、オペランドは、先ず、それに関連した全逆数をも
つ最も近い数(0x3FDF)に丸められる。これらの
値の差は、加算されるべき差の数(0x2010+1+
0+1+0+1=0x2013)である。
オフセットを記憶する。nビットの到来するオペランド
は、次のように2つの部分において2つの個別の番号と
して考えられる。 a.番号Kと称する最上位ビット、及び b.番号Lと称する最下位ビット。
てROMから読み取られ、そしてオフセットは、同じア
ドレスにおいて別のROM(「デルタROM」と称す
る)から読み取られる。
データの最初のLビットに生じる1の数をカウントし、
これは、この基本値からのオフセットを与え、逆数に到
達するためにはこのオフセットを基本値に加えなければ
ならない。オフセット値が上記ケース1に対応する場合
には、次のようになる。 (i)オフセット=(デルタROMの最初のLビットに
おける1の数の和)。 上記のケース2に対応する場合には、次のようになる。 (ii)オフセット=(デルタROMの最初のLビットに
おける1の数の和+L)。この第2のケースは、1又は
2を表すデルタROMからの値を効果的に補正するが、
それらは、2進で「0」又は「1」として表される。
る。px+qy+rの値(「pqr積」として示され
た)は、1.0ないし2.0の値に正規化される(4
0)。仮数は、上記のように、2つの部分、即ち最上位
部分及び最下位部分において考えられる。最上位部分
は、ROM42、44をアクセスするアドレスとして使
用される。
使用され、これは、デルタROM44からの値と論理的
にアンドされる(48)。これは、デルタROMから最
初のLビットを分離し、それらをカウントできるように
する(50)。ユニットから出て来るカウントされた1
の数は、52Lをこれに加算することにより計算され
る。次いで、√2の元の数を比較する比較器によって正
しいオフセットが選択され、式(i)又は(ii)から適
切な結果が選択される。
OM」からの基本値に加えられ(56)、「pqr積」
の逆数が与えられる。
積」)によって与えられる逆数を乗算し(58)そして
正規化解除する(60)ことにより、次の数2の式をい
かに行うかを示している。
用いて同様に計算される。
に、精度は低いが効率の良い方法は次の数3である。
半分である。「n」は、レンダリングの前に評価されて
他のテクスチャ処理パラメータと共に記憶される定数で
ある。「n」を計算する方法は多数あり、例えば、次の
数4がある。
「p」、「q」及び「r」は、テクスチャマッピング係
数である。
おいてヘクベルトの近似を使用して「D」を評価し、次
いで、数3の式をその値に等しくする。これは理想的な
ものではない。というのは、「D」の最良の近似は、テ
クスチャ処理面が見えるところでなければならないから
である。それ故、良好な方法は、数3の式を、見える面
のピクセル座標においてヘックバートの近似に等しくす
ることである。
ア実施について説明する。これは、固定小数点表示で表
された0≦X≦2の範囲の値Xと、小さな正の係数Kを
入力として受け取り、そして固定小数点の結果を再び0
≦X≦2の範囲で出力する。
数への入力)は、ハイライトの所要濃度によって左右さ
れるが、通常は、典型的に、約16ビットである。この
説明においては、これがmである。
これも、ハイライトの所要濃度によって左右される。こ
れは、nと称する。
いる。pビットの出力精度が必要とされると仮定する。
ら減算される。出力のビット数は、入力と同じに保た
れ、即ちmビットである。 2.次いで、値は、k位置だけ左へシフトされる。点B
の巾は、m+(2π−1)ビットであって、0...2
πの範囲の固定小数点数を表している。 3.次いで、値は、最大関数により1にクランプされ
る。これは、上位の2πビットを検査し、いずれかがセ
ットされている場合には、その値を1以上にしなければ
ならない。この例では、出力を固定点1.0にセットす
ることができる。上位の2πビットがどれもセットされ
ていない場合には、出力値は入力と同じである。必要と
される結果の質に基づいて、点Cにおいて最大関数から
出力されるビットの数は、p又はp+1ビットに限定さ
れる。選択されるビットは、下位mの上位p又はp+1
ビットである。即ち、値の出力は、依然として、0≦x
≦1の範囲の固定小数点数であるが、精度はp又はp+
1に過ぎない。 4.必要とされる結果の質に基づいて、点Cにおいて最
大関数から出力されるビットの数は、p又はp+1ビッ
トに限定される。選択されるビットは、下位mの上位p
又はp+1ビットである。即ち、値の出力は、依然とし
て、0≦x≦1の範囲の固定小数点数であるが、精度は
p又はp+1に過ぎない。 5.次いで、値は、固定小数点フォーマットにおいて1
から減算される。精度のビット数は、依然として、p又
はp+1に保たれる。 6.次いで、値は、それ自身を乗算することにより平方
される。オペランドのサイズ、即ちp又はp+1ビット
に基づいて、これは、p2 又は(p+1)2 ビットをも
つ値を与える。いずれにせよ、上位のpビットが取り出
され、0≦結果≦1の範囲の固定小数点の値を与える結
果として出力される。
な差動技術である前計算及び繰り返しユニットに対して
はテクスチャ処理ユニットと相違しない。フラット、一
次関数、二次関数の2つの陰影付けモードについて以下
に説明する。
ピクセル位置について説明する。これらは、絶対的なス
クリーンピクセル位置であるが、陰影付けされる面の中
心に対する位置にするのが更に効果的である。このよう
にすると、以下に述べる種々のTn パラメータを表すの
に必要な精度が相当に低減される。
繰り返しも行う必要がなく、定数値が直接使用される
か、又はテクスチャ処理パイプラインの結果により乗算
されるかのいずれかである。
要とする。 I(x、y)=T2 x+T1 y+T0
加算するだけでよい。というのは、次の通りだからであ
る。
行われる。二次関数陰影付けの式は次の通りである。 I(x、y)=T5 x2 +T4 xy+T3 y2 +T2 x+T1 y+T0 従って、ピクセル(x、y)とピクセル(x+1、y)
との間のIの差は、次の式で与えられる。 ΔI(x、y)=I(x+1、y)−(x、y) =T2 (x+1)2 −T2 x2 +T4 (x+1)y−T4 xy +T2 (x+1)−T2 x =T2 (2x+1)+T4 y+T2 それ故、ピクセルxyにおける差の間の差は、次の通り
である。 ΔΔI(x、y)=ΔI(x+1、y)−ΔI(x、y) =T5 (2(x+1)+1)+T4 y+T2 −T5 (2x+1)−T4 y−T2 =T5 (2x+3)−T5 (2x+1) =2T5 従って、前処理ユニットは、Iで始まる初期値と、初期
デルタ値を計算することが必要である。即ち、 I(x、y)=T5 x2 +T4 xy+T3 y2 +T2 x+T1 y+T0 ΔI(x、y)=T5 (2x+1)+T4 y+T2 繰り返しを行うために、デルタ値を加算することにより
次のI値が得られ、デルタの差において加算することに
より新たなデルタが発生される。即ち、 I(x+1、y)=I(x、y)+ΔI(x、y) ΔI(x+1、y)=ΔI(x、y)+ΔΔI(x、y) =ΔI(x、y)+2T5 ピクセルごとに2回の加算を行うだけでよい。出力値は
固定小数点であり、範囲0...1にクランプされる。
ハイライトを計算する場合には、この値を上記のように
累乗関数に入れることができる。
の式によって計算される。 A=dn 但し、Aは減衰係数であり、dは霧の濃度であり、そし
てnはレンダリングされるオブジェクトと観察者との間
の距離である。この式は、次のように書き直すことがで
きる。 A=2n.log2(d) これは、乗算及び2-x関数に対する演算を簡単化する。
この関数をルックアップテーブルで具現化する場合に
は、必要とされる精度に対して甚だしく大規模なものと
なり、従って、情報の圧縮方法が提案される。
に「自己類似」である。0と1との間の2-xは,1と2
との間の2-x*2と同じであり、且つ2と3との間の2
-x*4と同じである。それ故、この関数は、2の分数累
乗のルックアップテーブルと出力に対する演算シフト回
路とによって具現化することができる。提案された関数
への入力の一例を以下に示す。 ビット0 1 2 3 4 5 6 7 8 9 10
11 12 13 14 15 16 17 18 19 20 21 2
2 23 24 25・・・・ ビット0−6は、累乗テーブルへのインデックスであ
る。ビット7−9は、ルックアップの答えをシフトダウ
ンするのに使用される。10より上のビットがセットさ
れた場合には、結果が0である。
願第9414834.3号)に開示されたアーキテクチ
ャーは、レンダリングされるオブジェクトと観察者との
間の距離の逆数に比例する数字を与えることができる。
霧付与関数は、2log2(d)/nに変更しなければならな
い。不都合なことに、この関数を容易に評価する関数は
ない。この関数に対する受け入れられる近似は、A=1
−2n.log2(d) である。
ある。
ーのブロック図である。
トをインターリーブした走査とを比較するための図であ
る。
トをインターリーブした走査とを比較するための図であ
る。
を示す図である。
ドレスビットでアドレスされる順序を詳細に示す図であ
る。
ータの記憶を示す図である。
データの記憶を示す図である。
る。
ク図である。
Claims (6)
- 【請求項1】 スクリーンに表示するために三次元像を
テクスチャ処理する方法において、スクリーンに対する
各画素領域(ピクセル)の位置と、ピクセルに対する関
連像データとを含むデータを受け取り、上記像データに
基づいてメモリ手段からテクスチャ像データを検索し、
上記関連像データに基づいて上記ピクセルに上記テクス
チャ像データの適切な部分をマッピングし、同じ関連像
データを共有するピクセルの数を決定し、1ピクセル増
加に対応してピクセルにおける上記テクスチャデータの
マッピングの増分変化を決定し、そして隣接ピクセルと
同じ像データを共有する各ピクセルに対し、その隣接ピ
クセルに対して既に導出されたテクスチャ像データを、
テクスチャ像データの上記増分変化と結合して、そのピ
クセルに対するテクスチャ像データを導出するという段
階を備えたことを特徴とする方法。 - 【請求項2】 像をテクスチャ処理するのに使用するM
IPマップデータをダイナミックランダムアクセスメモ
リ(DRAM)に記憶し、テクスチャMIPマップのu
及びvアドレスビットをインターリーブし、これによ
り、物理的に隣接するMIPマップピクセルが同じDR
AMページに入る最大の確率を有するようにする請求項
1に記載の三次元像をテクスチャ処理する方法。 - 【請求項3】 MIPマップデータの連続する解像度レ
ベルを2つのDRAMバンクに交互に記憶し、第1のD
RAMバンクのメモリページは、所与のテクスチャに対
するMIPマップデータの解像度の全ての偶数レベルを
含み、そして第2のDRAMバンクのメモリページは、
そのテクスチャに対するMIPマップデータの解像度の
全ての奇数レベルを含むようにする請求項2に記載の方
法。 - 【請求項4】 第1のDRAMバンクのメモリページに
おけるMIPマップデータの解像度の偶数レベルは、第
2のテクスチャに対するMIPマップデータの解像度の
奇数レベルとインターリーブされ、そして第2のDRA
MバンクにおけるMIPマップデータの奇数レベルは、
第2のテクスチャに対するMIPマップデータの偶数レ
ベルとインターリーブされる請求項3に記載の方法。 - 【請求項5】 除算演算のためのマシンによる方法にお
いて、nが1より大きいとすれば、0ないしXの範囲の
各n番目の値の逆数を記憶し、介在するn−1の値の逆
数間の差を記憶し、除算演算のためのオペランド及び仮
数を受け取り、受け取った仮数の最上位部分に応答して
記憶された逆数の1つを検索し、受け取った仮数の最下
位部分に応答して1組の差を受け取り、上記逆数と1組
の差を加算し、そして加算結果を乗算するという段階を
備えたことを特徴とする方法。 - 【請求項6】 長除演算を実行する装置において、nが
1より大きいとすれば、0ないしXの範囲の各n番目の
値の逆数を記憶する手段と、介在するn−1の値の逆数
間の差を記憶する手段と、除算演算のためのオペランド
及び仮数を受け取る手段と、受け取った仮数の最上位部
分に応答して記憶された逆数の1つを検索する手段と、
受け取った仮数の最下位部分に応答して1組の差を検索
する手段と、上記逆数と1組の差を加算する手段と、受
け取ったオペランドで加算結果を乗算する手段とを備え
たことを特徴とする装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB9501832:1 | 1995-01-31 | ||
GBGB9501832.1A GB9501832D0 (en) | 1995-01-31 | 1995-01-31 | Texturing and shading of 3-d images |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003389383A Division JP2004103039A (ja) | 1995-01-31 | 2003-11-19 | 3d像のテクスチャ処理及び陰影付け方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH08255264A true JPH08255264A (ja) | 1996-10-01 |
JP3510950B2 JP3510950B2 (ja) | 2004-03-29 |
Family
ID=10768838
Family Applications (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP01419296A Expired - Lifetime JP3510950B2 (ja) | 1995-01-31 | 1996-01-30 | 3d像のテクスチャ処理及び陰影付け方法 |
JP2003389383A Pending JP2004103039A (ja) | 1995-01-31 | 2003-11-19 | 3d像のテクスチャ処理及び陰影付け方法 |
JP2007140603A Pending JP2007213621A (ja) | 1995-01-31 | 2007-05-28 | 3d像のテクスチャ処理及び陰影付け方法 |
JP2008012767A Expired - Lifetime JP4249796B2 (ja) | 1995-01-31 | 2008-01-23 | 3d像のテクスチャ処理及び陰影付け方法 |
Family Applications After (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003389383A Pending JP2004103039A (ja) | 1995-01-31 | 2003-11-19 | 3d像のテクスチャ処理及び陰影付け方法 |
JP2007140603A Pending JP2007213621A (ja) | 1995-01-31 | 2007-05-28 | 3d像のテクスチャ処理及び陰影付け方法 |
JP2008012767A Expired - Lifetime JP4249796B2 (ja) | 1995-01-31 | 2008-01-23 | 3d像のテクスチャ処理及び陰影付け方法 |
Country Status (6)
Country | Link |
---|---|
US (2) | US6330000B1 (ja) |
EP (1) | EP0725366B1 (ja) |
JP (4) | JP3510950B2 (ja) |
DE (1) | DE69610341T2 (ja) |
ES (1) | ES2153077T3 (ja) |
GB (2) | GB9501832D0 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002529869A (ja) * | 1998-11-06 | 2002-09-10 | イマジネイション テクノロジーズ リミテッド | コンピュータによる3次元シェーディング及びテクスチャリング・システムに使用する深度ソート |
JP2008276782A (ja) * | 2007-05-01 | 2008-11-13 | Vivante Corp | 2の非冪乗テクスチャマップに対する座標計算 |
US7536047B2 (en) | 2002-11-15 | 2009-05-19 | Warner Bros. Entertainment Inc. | Method for digitally rendering skin or like materials |
KR101386767B1 (ko) * | 2009-06-25 | 2014-04-21 | 티브이 원 리미티드 | 소스 이미지의 뒤틀린 버전을 표시하는 장치 및 방법 |
Families Citing this family (63)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
US6650327B1 (en) | 1998-06-16 | 2003-11-18 | Silicon Graphics, Inc. | Display system having floating point rasterization and floating point framebuffering |
JP2000115558A (ja) * | 1998-10-08 | 2000-04-21 | Mitsubishi Electric Corp | 色特性記述装置および色管理装置および画像変換装置ならびに色補正方法 |
JP3687945B2 (ja) * | 1998-12-11 | 2005-08-24 | ソニー株式会社 | 画像処理装置およびその方法 |
US6417861B1 (en) * | 1999-02-17 | 2002-07-09 | Sun Microsystems, Inc. | Graphics system with programmable sample positions |
US6674922B1 (en) * | 1999-03-26 | 2004-01-06 | Canon Kabushiki Kaisha | Image processing method, image processing apparatus, and storage medium |
US7098925B1 (en) * | 2000-03-10 | 2006-08-29 | Intel Corporation | Shading of images using texture |
US20020012472A1 (en) * | 2000-03-31 | 2002-01-31 | Waterfall Andrew E. | Method for visualization of time sequences of 3D optical fluorescence microscopy images |
US6766281B1 (en) * | 2000-05-12 | 2004-07-20 | S3 Graphics Co., Ltd. | Matched texture filter design for rendering multi-rate data samples |
IL136430A0 (en) * | 2000-05-29 | 2001-06-14 | Zviaguina Natalia | Ray tracing method and system for determining visible parts of surfaces of three-dimensional objects and their parameters of shading accounting for light and shadow volumes |
JP3527196B2 (ja) * | 2000-11-16 | 2004-05-17 | 株式会社ソニー・コンピュータエンタテインメント | テクスチャ描画方法、エンタテインメント装置および記録媒体 |
US6940504B1 (en) | 2000-11-21 | 2005-09-06 | Microsoft Corporation | Rendering volumetric fog and other gaseous phenomena using an alpha channel |
US7046243B1 (en) * | 2000-11-21 | 2006-05-16 | Microsoft Corporation | Rendering volumetric fog and other gaseous phenomena |
CA2329104C (en) * | 2000-12-20 | 2005-05-24 | Sicon Video Corporation | Method and apparatus for calculating a reciprocal |
GB2372188B (en) | 2001-02-08 | 2005-07-13 | Imagination Tech Ltd | Volume clipping in computer 3-D Graphics |
US20030107572A1 (en) * | 2001-07-02 | 2003-06-12 | Smith Joshua Edward | Method and apparatus for reducing the polygon count of a textured, three dimensional model of an object |
US7007058B1 (en) * | 2001-07-06 | 2006-02-28 | Mercury Computer Systems, Inc. | Methods and apparatus for binary division using look-up table |
US20030081849A1 (en) * | 2001-07-16 | 2003-05-01 | Smith Joshua Edward | Method and system for creating seamless textured three dimensional models of objects |
US6753875B2 (en) * | 2001-08-03 | 2004-06-22 | Hewlett-Packard Development Company, L.P. | System and method for rendering a texture map utilizing an illumination modulation value |
US6781594B2 (en) * | 2001-08-21 | 2004-08-24 | Sony Computer Entertainment America Inc. | Method for computing the intensity of specularly reflected light |
US7046245B2 (en) * | 2001-10-10 | 2006-05-16 | Sony Computer Entertainment America Inc. | System and method for environment mapping |
GB0128888D0 (en) | 2001-12-03 | 2002-01-23 | Imagination Tech Ltd | Method and apparatus for compressing data and decompressing compressed data |
GB2383248B (en) * | 2001-12-14 | 2005-12-07 | Imagination Tech Ltd | 3-dimensional computer graphics system |
US6847372B2 (en) * | 2002-03-11 | 2005-01-25 | Sun Microsystems, Inc. | Magnified texture-mapped pixel performance in a single-pixel pipeline |
DE10246122B4 (de) * | 2002-10-01 | 2006-04-20 | Audi Ag | Verfahren und Vorrichtung zur Darstellung eines computermodellierten Gegenstands |
US7864176B2 (en) * | 2003-04-30 | 2011-01-04 | Pixar | Translucent object rendering methods and apparatus |
US7443394B2 (en) * | 2003-04-30 | 2008-10-28 | Pixar | Method and apparatus for rendering of complex translucent objects using multiple volumetric grids |
US7019744B2 (en) * | 2003-04-30 | 2006-03-28 | Pixar | Method and apparatus for rendering of translucent objects using volumetric grids |
US7859530B2 (en) * | 2003-04-30 | 2010-12-28 | Pixar | Subsurface rendering methods and apparatus |
US8133115B2 (en) | 2003-10-22 | 2012-03-13 | Sony Computer Entertainment America Llc | System and method for recording and displaying a graphical path in a video game |
JP4547906B2 (ja) * | 2003-12-19 | 2010-09-22 | ソニー株式会社 | 描画装置および描画方法、プログラム、並びに記録媒体 |
US8411105B1 (en) | 2004-05-14 | 2013-04-02 | Nvidia Corporation | Method and system for computing pixel parameters |
US8687010B1 (en) * | 2004-05-14 | 2014-04-01 | Nvidia Corporation | Arbitrary size texture palettes for use in graphics systems |
US8736620B2 (en) * | 2004-05-14 | 2014-05-27 | Nvidia Corporation | Kill bit graphics processing system and method |
US8711155B2 (en) * | 2004-05-14 | 2014-04-29 | Nvidia Corporation | Early kill removal 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 |
US20060007234A1 (en) * | 2004-05-14 | 2006-01-12 | Hutchins Edward A | Coincident graphics pixel scoreboard tracking system and method |
US8416242B1 (en) | 2004-05-14 | 2013-04-09 | Nvidia Corporation | Method and system for interpolating level-of-detail in graphics processors |
US8736628B1 (en) | 2004-05-14 | 2014-05-27 | Nvidia Corporation | Single thread 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 |
US8860722B2 (en) * | 2004-05-14 | 2014-10-14 | Nvidia Corporation | Early Z scoreboard tracking system and method |
US8743142B1 (en) | 2004-05-14 | 2014-06-03 | Nvidia Corporation | Unified data fetch graphics processing system and method |
GB0411880D0 (en) * | 2004-05-27 | 2004-06-30 | Imagination Tech Ltd | Method and apparatus for efficient evaluation of "table-based" mathematical functions |
US20060071933A1 (en) | 2004-10-06 | 2006-04-06 | Sony Computer Entertainment Inc. | Application binary interface for multi-pass shaders |
KR20060116916A (ko) * | 2005-05-11 | 2006-11-16 | 삼성전자주식회사 | 텍스쳐 캐쉬 및 이를 구비한 3차원 그래픽 시스템, 그리고그것의 제어 방법 |
US7636126B2 (en) | 2005-06-22 | 2009-12-22 | Sony Computer Entertainment Inc. | Delay matching in audio/video systems |
KR100648293B1 (ko) * | 2005-08-09 | 2006-11-23 | 삼성전자주식회사 | 그래픽 시스템 및 그것의 그래픽 처리 방법 |
US7880746B2 (en) | 2006-05-04 | 2011-02-01 | Sony Computer Entertainment Inc. | Bandwidth management through lighting control of a user environment via a display device |
US7965859B2 (en) | 2006-05-04 | 2011-06-21 | Sony Computer Entertainment Inc. | Lighting control of a user environment via a display device |
US8537168B1 (en) | 2006-11-02 | 2013-09-17 | Nvidia Corporation | Method and system for deferred coverage mask generation in a raster stage |
US8441497B1 (en) | 2007-08-07 | 2013-05-14 | Nvidia Corporation | Interpolation of vertex attributes in a graphics processor |
DE102008023269A1 (de) | 2008-05-13 | 2009-11-19 | Rheinmetall Waffe Munition Gmbh | Optisches System bzw. Verfahren zur verbesserten Zielerkennung |
US10786736B2 (en) | 2010-05-11 | 2020-09-29 | Sony Interactive Entertainment LLC | Placement of user information in a game space |
US9342817B2 (en) | 2011-07-07 | 2016-05-17 | Sony Interactive Entertainment LLC | Auto-creating groups for sharing photos |
US9213639B2 (en) * | 2012-09-25 | 2015-12-15 | Teradata Us, Inc. | Division of numerical values based on summations and memory mapping in computing systems |
KR102066659B1 (ko) | 2013-08-13 | 2020-01-15 | 삼성전자 주식회사 | 그래픽 프로세싱 유닛, 이를 포함하는 그래픽 프로세싱 시스템 및 이의 동작 방법 |
US10535114B2 (en) * | 2015-08-18 | 2020-01-14 | Nvidia Corporation | Controlling multi-pass rendering sequences in a cache tiling architecture |
KR102651126B1 (ko) * | 2016-11-28 | 2024-03-26 | 삼성전자주식회사 | 그래픽 프로세싱 장치 및 그래픽스 파이프라인에서 텍스처를 처리하는 방법 |
GB2560336B (en) * | 2017-03-07 | 2020-05-06 | Imagination Tech Ltd | Address generators for verifying integrated circuit hardware designs for cache memory |
JP2018114328A (ja) * | 2018-03-30 | 2018-07-26 | 株式会社ユニバーサルエンターテインメント | 遊技機 |
US10503473B1 (en) * | 2018-05-30 | 2019-12-10 | Apple Inc. | Floating-point division alternative techniques |
WO2020115520A1 (en) * | 2018-12-02 | 2020-06-11 | Playsight Interactive Ltd. | Ball tracking in sport events |
US11823318B2 (en) * | 2021-06-04 | 2023-11-21 | Nvidia Corporation | Techniques for interleaving textures |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4615013A (en) * | 1983-08-02 | 1986-09-30 | The Singer Company | Method and apparatus for texture generation |
EP0256455B1 (de) | 1986-08-11 | 1991-05-02 | Siemens Aktiengesellschaft | Verfahren zur schnellen Division langer Operanden in Datenverarbeitungsanlagen und Schaltungsanordnung zur Durchführung des Verfahrens |
US4823301A (en) * | 1987-10-22 | 1989-04-18 | Tektronix, Inc. | Method and circuit for computing reciprocals |
GB2240017A (en) | 1990-01-15 | 1991-07-17 | Philips Electronic Associated | New, interpolated texture values are fed back to texture memories |
GB2240016A (en) * | 1990-01-15 | 1991-07-17 | Philips Electronic Associated | Texture memories store data at alternating levels of resolution |
GB2240015A (en) * | 1990-01-15 | 1991-07-17 | Philips Electronic Associated | Texture memory addressing |
US5222205A (en) * | 1990-03-16 | 1993-06-22 | Hewlett-Packard Company | Method for generating addresses to textured graphics primitives stored in rip maps |
GB2245460B (en) * | 1990-06-18 | 1994-04-06 | Link Miles Ltd | Apparatus for generating a visual display |
GB2270243B (en) * | 1992-08-26 | 1996-02-28 | Namco Ltd | Image synthesizing system |
US5341321A (en) * | 1993-05-05 | 1994-08-23 | Hewlett-Packard Company | Floating point arithmetic unit using modified Newton-Raphson technique for division and square root |
US5490240A (en) | 1993-07-09 | 1996-02-06 | Silicon Graphics, Inc. | System and method of generating interactive computer graphic images incorporating three dimensional textures |
US5550960A (en) | 1993-08-02 | 1996-08-27 | Sun Microsystems, Inc. | Method and apparatus for performing dynamic texture mapping for complex surfaces |
CA2144914A1 (en) | 1994-04-01 | 1995-10-02 | Raymond L. Fitzgerald | Computer graphics texture paging system with fragmentary mip map selection |
US5745118A (en) | 1995-06-06 | 1998-04-28 | Hewlett-Packard Company | 3D bypass for download of textures |
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 |
-
1995
- 1995-01-31 GB GBGB9501832.1A patent/GB9501832D0/en active Pending
-
1996
- 1996-01-30 DE DE69610341T patent/DE69610341T2/de not_active Expired - Lifetime
- 1996-01-30 JP JP01419296A patent/JP3510950B2/ja not_active Expired - Lifetime
- 1996-01-30 EP EP96300622A patent/EP0725366B1/en not_active Expired - Lifetime
- 1996-01-30 ES ES96300622T patent/ES2153077T3/es not_active Expired - Lifetime
- 1996-01-31 GB GB9601965A patent/GB2297886B/en not_active Expired - Lifetime
-
1997
- 1997-09-12 US US08/928,955 patent/US6330000B1/en not_active Expired - Lifetime
-
1998
- 1998-03-30 US US09/050,564 patent/US6313846B1/en not_active Expired - Lifetime
-
2003
- 2003-11-19 JP JP2003389383A patent/JP2004103039A/ja active Pending
-
2007
- 2007-05-28 JP JP2007140603A patent/JP2007213621A/ja active Pending
-
2008
- 2008-01-23 JP JP2008012767A patent/JP4249796B2/ja not_active Expired - Lifetime
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002529869A (ja) * | 1998-11-06 | 2002-09-10 | イマジネイション テクノロジーズ リミテッド | コンピュータによる3次元シェーディング及びテクスチャリング・システムに使用する深度ソート |
US7536047B2 (en) | 2002-11-15 | 2009-05-19 | Warner Bros. Entertainment Inc. | Method for digitally rendering skin or like materials |
US8515157B2 (en) | 2002-11-15 | 2013-08-20 | Warner Bros. Entertainment Inc. | Method for digitally rendering skin or like materials |
JP2008276782A (ja) * | 2007-05-01 | 2008-11-13 | Vivante Corp | 2の非冪乗テクスチャマップに対する座標計算 |
KR101386767B1 (ko) * | 2009-06-25 | 2014-04-21 | 티브이 원 리미티드 | 소스 이미지의 뒤틀린 버전을 표시하는 장치 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
DE69610341D1 (de) | 2000-10-26 |
JP2007213621A (ja) | 2007-08-23 |
US6330000B1 (en) | 2001-12-11 |
EP0725366A3 (en) | 1996-11-06 |
GB9501832D0 (en) | 1995-03-22 |
JP3510950B2 (ja) | 2004-03-29 |
EP0725366B1 (en) | 2000-09-20 |
ES2153077T3 (es) | 2001-02-16 |
US6313846B1 (en) | 2001-11-06 |
EP0725366A2 (en) | 1996-08-07 |
DE69610341T2 (de) | 2001-04-05 |
GB2297886B (en) | 2000-02-02 |
JP4249796B2 (ja) | 2009-04-08 |
GB2297886A (en) | 1996-08-14 |
GB9601965D0 (en) | 1996-04-03 |
JP2004103039A (ja) | 2004-04-02 |
JP2008112468A (ja) | 2008-05-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3510950B2 (ja) | 3d像のテクスチャ処理及び陰影付け方法 | |
US7167181B2 (en) | Deferred shading graphics pipeline processor having advanced features | |
US5870097A (en) | Method and system for improving shadowing in a graphics rendering system | |
US5949428A (en) | Method and apparatus for resolving pixel data in a graphics rendering system | |
US6664959B2 (en) | Method and apparatus for culling in a graphics processor with deferred shading | |
US6326964B1 (en) | Method for sorting 3D object geometry among image chunks for rendering in a layered graphics rendering system | |
US5886701A (en) | Graphics rendering device and method for operating same | |
EP0850462B1 (en) | Method and system for rendering graphical objects to image chunks and combining image layers into a display image | |
US5856829A (en) | Inverse Z-buffer and video display system having list-based control mechanism for time-deferred instructing of 3D rendering engine that also responds to supervisory immediate commands | |
US5867166A (en) | Method and system for generating images using Gsprites | |
US6005582A (en) | Method and system for texture mapping images with anisotropic filtering | |
EP0447227B1 (en) | Method for Generating Addresses to Textured Graphics Primitives Stored in RIP Maps | |
WO1999049417A1 (en) | Fog simulation for partially transparent objects | |
US20050024378A1 (en) | Texturing systems for use in three-dimensional imaging systems | |
EP1434171A2 (en) | Method and system for texture mapping a source image to a destination image | |
US6982719B2 (en) | Switching sample buffer context in response to sample requests for real-time sample filtering and video generation | |
EP1766584A2 (en) | Inverse texture mapping 3d graphics system | |
Davis et al. | Shader-Based Water Effects | |
GB2338096A (en) | Arithmetic division method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20031222 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040105 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080109 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090109 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090109 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100109 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110109 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110109 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120109 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130109 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130109 Year of fee payment: 9 |
|
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 |