(57)【特許請求の範囲】
【請求項１】
複数の画素からなる画像を表す出力信号を生成するテクスチャマッピング方法において、
画像に表示される表面の位置を表す第１の信号を受け取る工程、
その表面の少なくとも一部分のテクスチャを表す第２の信号を受け取る工程、
画像内にそれぞれの場所を有している画素の１個と、テクスチャの或る面積との対応を決定し、それぞれの画素を表す第３の信号を生成する工程、
前記第３の信号によって伝えられる情報を表すそれぞれの前記出力信号を生成する工程、を有し、
前記対応は、前記第１の信号及び前記第２の信号と、画像内のそれぞれの画素の位置とによって決定され、且つ前記対応は同次座標を含み、
前記第３信号は、前記同次座標の関数から得たレベルに従って、複数のフィルタリングされたテクスチャ表現を補間することにより生成され、
0003959862.tif 000029
【請求項２】
前記対応は、画像が定義される画像空間から、テクスチャが定義されるテクスチャ空間に逆写像により決定されることを特徴とする請求項１に記載のテクスチャマッピング方法。
【請求項３】
前記対応は、テクスチャが定義されるテクスチャ空間から、画像が定義される画像空間に正写像により決定されることを特徴とする請求項１に記載のテクスチャマッピング方法。
【請求項４】
前記平均レベルが、テクスチャ空間における単一次元の測度の、画像空間において対応する単一次元の測度に対する比から引き出されることを特徴とする請求項１に記載のテクスチャマッピング方法。
【請求項５】
複数のフィルタリングされた表現が、離散レベルにおいて1/2を因子として離散レベル間で低下する解像度で配列されていることを特徴とする請求項１に記載のテクスチャマッピング方法。
【請求項６】
複数の画素からなる画像を表す出力信号を生成するテクスチャマッピング装置において、
画像に表示される表面の位置を表す第１の信号を受け取る手段、
その表面の少なくとも一部分のテクスチャを表す第２の信号を受け取る手段、
画像内にそれぞれの場所を有している画素の１個と、テクスチャの或る面積との対応を決定し、それぞれの画素を表す第３の信号を生成する手段、
前記第３の信号によって伝えられる情報を表すそれぞれの前記出力信号を生成する手段、を有し、
前記対応は、前記第１の信号及び前記第２の信号と、画像内のそれぞれの画素の位置とによって決定され、且つ前記対応は同次座標を含み、
前記第３信号は、前記同次座標の関数から得たレベルに従って、複数のフィルタリングされたテクスチャ表現を補間することにより生成され、
0003959862.tif 000030
【請求項７】
前記対応は、画像が定義される画像空間から、テクスチャが定義されるテクスチャ空間に逆写像により決定されることを特徴とする請求項６に記載のテクスチャマッピング装置。
【請求項８】
前記対応は、テクスチャが定義されるテクスチャ空間から、画像が定義される画像空間に正写像により決定されることを特徴とする請求項６に記載のテクスチャマッピング装置。
【請求項９】
前記平均レベルが、テクスチャ空間における単一次元の測度の、画像空間において対応する単一次元の測度に対する比から引き出されることを特徴とする請求項６に記載のテクスチャマッピング装置。
【請求項１０】
複数のフィルタリングされた表現が、離散レベルにおいて1/2を因子として離散レベル間で低下する解像度で配列されていることを特徴とする請求項６に記載のテクスチャマッピング装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本願発明は、一般的に画像を表示する技術、テクスチャマッピング方法及びその装置に関し、より具体的には、フィルタリングされたテクスチャ表現の適正レベルを決める改善された技術を用いるテクスチャマッピング方法及びその装置によって、より一層リアルな画像を表示するために、例えば3次元画像の表面に材質感又は模様等をマップする効果的な技術に関する。
【０００２】
【従来の技術】
数多くの表示システムが、数千の画素又は「ピクセル」を表す出力信号を生成することによって画像を表示するようになっている。各画素の色及び強度は関係している画素データに従って生成されるそれぞれの出力信号によって制御される。
【０００３】
数多くのアプリケーションで目の粗さ、模様、色、陰影など物体表面の様々な視覚特性を表す画素データを形成することによって3次元の物体をリアルな表示にしようと試みられている。使用されている技法の一つはテクスチャマッピングとして知られている。概念的に言えば、これは材質感を表面上に写像した後その写像した材質感をその表面と一緒に画面上に射影する技法である。写像及び射影のプロセスには一つの空間から別の空間への変換が必要である。
【０００４】
一般的に、テクスチャは2次元の座標系（u,v）を有するテクスチャ空間において定義される。テクスチャはテクスチャ・エレメント又は「テクセル」からなる。物体の表面は3次元の座標系（x',y',z'）を有する物体空間において定義される。結果として生じる表示又は画像は2次元の座標系（x,y）を有する画像空間において定義される。概念として、テクスチャマッピングはテクスチャ空間で定義されたテクスチャを物体空間において定義された表面に変換した後その変換されたテクスチャを画像空間において表示画面に射影する。このプロセスはテクスチャを表す転写紙を物体上に貼り、その貼った転写紙をディスプレイの表面上に射影するのと類似している。写像され且つ射影されたテクスチャを表すために形成された画素データの内容はテクスチャの定義そのものであると共に写像変換及び射影変換の関数である。
【０００５】
テクスチャマッピング時に遭遇する一つの問題はエイリアシングである。エイリアシングの原因は画像空間に対して平行な表面にマップされたテクスチャ又はパターンを先ず思い浮かべてみると理解できるであろう。テクスチャを画像空間（x,y）に射影したものはテクスチャ空間（u,v）におけるテクスチャ定義を一様な目盛りで複製したものである。物体空間（x',y',z'）における表面が回転すると、パターンの画像空間への射影が一様でなく圧縮される。圧縮される量は画像空間と表面法線の間の角度が90度から遠ざかるほど増加し、透視図法では画像空間からの距離が増えることによっても増加する。圧縮が増加した結果、より大きな面積のテクスチャが画像空間における個々の画素に射影されることになる。圧縮量が十分に大きければ、特有のテクスチャ特徴が個々の画素に射影される。その結果がエイリアシングである。画像空間における画素の空間標本化周波数は圧縮されたテクスチャにおけるより高い空間周波数を正確に表現できるほど高くはない。
【０００６】
【発明が解決しようとする課題】
エイリアシングは画素ごとに射影されるテクスチャをフィルタリングすることによって回避できる。そのフィルタリングは空間可変フィルタをテクスチャ定義に用いることによって行われるのが望ましい。
【０００７】
空間可変フィルタを用いる一つの方法は、画像空間（x,y）における個々の画素をテクスチャにマップしてテクスチャ空間（u,v）に画素の「足跡」を作り、それからその画素の足跡のテクセルをフィルタリング又は平均化して画素データを生成することである。この手法では、数千、恐らくは数百万の画素の画素データを生成しなければならないし、また個々の画素について数千、恐らくは数百万のテクセルをフィルタリングしなければならないから、かなりの計算資源が必要である。
【０００８】
もう一つの方法で、エイリアシング現象を防ぐか或いは少なくとも減らすことができしかもかなり少ない計算資源しか必要としないのは、フィルタリングされたテクスチャ表現を用いることである。1タイプのフィルタリングされた表現について、Dungan他が1978年8月発行のComputer Graphics第12巻3号の130頁から134頁に掲載された記事「ラスタグラフィックスのためのテクスチャタイル考察（Texture Tile Considerations for Raster Graphics）」に説明している。また別のタイプのフィルタリングされた表現は、MIPマップとして知られており、Williamsが1983年7月発行のComputer Graphics第17巻3号の1頁から11頁に記事「ピラミッド型パラメトリックス（Pyramidal Parametrics）」の中で説明している。MIPマップはピラミッド構造で、最下部のレベルであるレベル0にテクスチャ定義自体の四角い面積からのテクセルが入っており、連続して高くなっていくそれぞれのレベルにテクセル数の4分の1が入っている。例えば、レベルd+1のテクセルはそれぞれレベルdにおける4個のテクセルに相当する。言い換えれば、レベルd+1における各次元のテクスチャの空間解像度はレベルdにおける各次元の空間解像度の2分の1である。フィルタリングされた表現は、連続するレベルのテクスチャの空間解像度が何らか便宜上の因子によって変わるように形成することができる。
【０００９】
フィルタリングされた表現の適正レベルを決めることによって所定の画素に対して適正量のフィルタリングを行なう。その決められたレベルは必ずしも整数である必要はない。その決められたレベルの小数点以下の部分は隣接するレベルにあるテクセルを三線補間することによって実現することができる。
【００１０】
適正レベルを決める方法は幾つか知られている。一つは、テクスチャ空間における画素の足跡の最長の長さに基いて適正レベルを決める方法である。もう一つは、円形の画素をテクスチャ空間の楕円面積にマップする方法で、その楕円の平均直径に基いて適正レベルを決める。別の方法は、テクスチャ空間の曲線ポリゴンに四角の画素をマップするものでポリゴンの1個以上の辺の長さから引き出した値に基いて適正レベルを決める方法である。また別の方法は、画像空間に対するテクスチャ空間における画素マッピングの偏導関数に基いた値から適正レベルを決める方法である。適正レベルを決めるのに偏導関数を用いるデバイスの一例が米国特許番号5,097,427に開示されている。この特許は参照することによって本明細書の一部をなすものとする。
【００１１】
レベルの選択決定は重要である。決めたレベルが高すぎると、結果として生じる画像がぼけることになる。選んだレベルが低すぎると、結果として生じる画像がエイリアシングの入った画像になる。従って、画像の画素ごとにレベルを決めるべきである。残念ながら、公知のレベル決定法はいずれもかなりのプロセス資源を必要とする。
【００１２】
本願発明の目的は、MIPマップなどフィルタリングされたテクスチャ表現の適正レベルを決めるさらに一層効率的な方法を実現することによってテクスチャマッピング技法の効率を向上させることである。
【００１３】
【課題を解決するための手段】
本願発明の教えるところによれば、画像に表示される表面の位置を表す第1の信号を受取り、その表面の少なくとも一部分のテクスチャを表す第2の信号を受け取り、個々の画素とテクスチャの或る面積との対応を確定し、個々の画素を表す第3の信号を生成し、そしてその第3信号によって伝えられる情報を表す出力信号を生成することによって複数の画素からなる画像を表す出力信号が生成される。これにおいて、個々の画素とテクスチャの或る面積との対応は第1及び第2の信号と画像内にある個々の画素の位置に従って決定され、同次座標を含み、また、第3信号はその同次座標の関数から得たレベルに従って複数のフィルタリングされたテクスチャ表現を補間処理することによって生成される。本明細書において「テクスチャ」という用語は、見かけの目の粗さ、模様、色合い、濃淡などあらゆる可視特徴に対して用いている。
【００１４】
本願発明の様々な特徴及びその好適な実施例は以下の説明並びに添付の図面を参照するとよりよく理解できる。図面において、類似の参照番号は複数の図面における類似の素子を示している。以下の説明並びに図面に記載の内容は例として述べてあるだけにすぎず、本願発明の請求の範囲を限定するものとして捉えられるべきではない。
【００１５】
【発明の実施の形態】
文字表現の定義
まず、本願明細書で表現している文字で、ここで定義が必要と思われるものを説明する。本願明細書中の幾つかの数式中にあるように、文字の上に”＾”のマークが付いたものを、本明細書では、”文字（＋山マーク）”と表現した。例えば、ｌ（エル）（+山マーク）、d（+山マーク）、q（+山マーク）等と、本願明細書中で表現している。
【００１６】
表示サブシステム
本願発明は、3次元物体のリアルな画像の描画効率を向上させる特徴に関する。典型的なコンピュータアプリケーションにおいては、本願発明の技法を表示コントローラなどのデバイスによって実行しても、システムプロセッサで実行するソフトウェアの中で実現しても、或いは表示コントローラとソフトウェア制御のシステムプロセッサとによって実行される組み合わせのプロセスを含むその他様々な幅広い方法で実現してもいい。本願発明は特定のコンピュータアーキテクチャに限定されるものではなく、一般的にはコンピュータとは見なされないビデオモニタやテレビの受信機などの装置でも実現できる。本願発明はまたドットアレイを用いて画像を描画する印刷用のアプリケーションでも使用することができる。
【００１７】
以下の説明において、本願発明を典型的なマイクロプロセッサに基くコンピュータシステムの表示コントローラのコンテキストの中で説明しているが、上に説明した通り、例に示したコンピュータシステム内の構成要素はいずれも本願発明を実施するための必要条件ではない。
【００１８】
図1は、表示装置とインタフェースさせるために表示コントローラを組み込んだ典型的なパーソナルコンピュータの機能ブロック図である。CPU 2は計算資源を提供する。I/Oコントローラ3はキーボード、マウス、モデム、プリンタなどI/O装置4にインタフェースする。記憶制御6は、磁気テープドライブ又はディスクドライブなど記憶装置7にインタフェースする。表示制御8は表示装置9にインタフェースする。RAM 5はシステムランダムアクセスメモリで、これを表示制御8の中にあるメモリのどれかと混同してはいけない。1つ以上のこれらの構成要素の機能は、離散論理素子、1個以上のASIC及び/又はプログラム制御プロセッサを含む幅広い様々な方法で実現できる。
【００１９】
主たるシステムの構成要素は全てバス1に接続しており、それは1個以上の物理的なバスであるかもしれない。例えば、パーソナルコンピュータの中には所謂業界標準アーキテクチャ（ISA）バスしか組み込まれていない場合がある。他のコンピュータはISAの他にVESAローカルバス基準或いはPCIローカルバス基準など幾つかのバス基準との整合性を有する高帯域幅のバスを組み入れている。表示制御8は表示速度の向上のため高帯域幅バスに接続しているのが望ましいが、バスアーキテクチャは本願発明の実施の必要条件ではない。
【００２０】
図2aは、表示サブシステムの1つの実施例であり、それにおいてはCPU 2がシステム51に記憶されているプログラムやデータを用いてフレームバッファ52に画像のピクセル化された表現を構築する。フレームバッファ52とシステムメモリ51は共にRAM 5に割り当てられている。表示制御8はフレームバッファ52に記憶されている情報によって定義される画像を表示装置9に表示する。このような実施例においては、CPU 2によって実行されるソフトウェアの中に本願発明を全て実現してもいい。また別の実施例においては、バス1を経由するのではなく、この図には示していないが表示制御8はパスでフレームバッファ52を直接アクセスする。
【００２１】
図2bは、表示サブシステムのもう一つの実施例で、それにおいては表示プロセッサ81がバス1から受け取ったデータやコマンドによって表示メモリ82内にあるフレームバッファに画像のピクセル化された表現を構築する。ビデオ制御83は表示メモリ82内のフレームバッファに記憶されている情報によって定義される画像を表示装置9に表示する。そのような実施例においては、本願発明を表示プロセッサ81で全て実行することができる。
【００２２】
図で示した2つの実施例のハイブリッドを含み数多くのバリエーションが可能である。例えば、表示プロセッサ81など特別のハードウェアによって本願発明を部分的に実施し、それ以外の部分をCPU 2が実行するようにしてもいい。さらに、フレームバッファから情報を得る時にその情報を操作することによって、本願発明を総体的に或いは部分的に表示装置9に送られる信号を生成するプロセスの中で実施するようにしてもいい。これらの例から明らかなように、本願発明の実施には特定のアーキテクチャが決定的な要因とはならない。但し、好適な実施例においては、本願発明を画素表現を構築してフレームバッファに格納する処理を行なう1つ以上のプロセスの中で本願発明を実施している。
【００２３】
図2a及び2bは概略図であり、多くの場合実際の実施においては使用するバッファ、レジスタ、ラッチ、クロック、コントローラなど様々な特徴をこれらの図においては省略している。分かり易くするために、本願発明を理解し或いは実践するのに不可欠ではないこれらの特徴は省略してある。
【００２４】
図3は、本願発明の様々な態様を実施するのに用いることのできる装置の機能ブロック概略図である。この図は、本願発明を説明するのに役立てるためであり、いかなる特定の実施をも表すものではない。上に説明した通り、これらの機能特徴はハードウェア及び/又はソフトウェアを含めた様々な方法で実施することができるし、単一の装置で実行することも或いは集合体として複数の装置で実行することもできる。
【００２５】
マッピングプロセッサ93は表示する表面の位置を表す信号をパス91から受取り、その表面に表示するテクスチャを表す信号をパス92から受取る。これらの信号によって、マッピングプロセッサ93は表示画像の画素とテクスチャ面積との対応を決める。この対応は以下に説明するように様々な正写像又は逆写像を行なうことによって決定できる。マッピングプロセッサ93によって決められる対応には、一般に同次座標と呼ばれる重みがある。
【００２６】
フィルタマップ94はフィルタリングされたテクスチャ表現である。MIPマップは適したフィルタリングされた表現の一例である。これらの表現をパス92から受け取った信号に基きフィルタマップ94内の特徴によって構築してもいいし、或いはパス92から受け取った信号によって直接実現されるようにしてもいい。
【００２７】
画素プロセッサ95は後続の表示画素値を表す信号をパス96で生成する。これらの値を、例えば、フレームバッファに格納することができる。これらの画素値は、マッピングプロセッサ93から受け取る、上に説明した同次座標を表す信号に基いて、またフィルタマップ94から受け取るフィルタリングされたテクスチャ表現を表す信号に基いて、生成される。以下に説明するように、画素プロセッサ95は画素ごとにフィルタリングされた表現における適正レベルdを決定し、これを用いてフィルタリングされた表現の隣接整数レベルでその表現を補間する。
【００２８】
測度関数の導出
概念的に言えば、MIPマップなどフィルタリングされた階層表現のテクスチャがあると仮定して、本願発明は画像における任意の画素に対する表現の適正レベルを決める。この決定は次のように行われる。
【００２９】
（式１）
【００３０】
【数７】
0003959862.tif 000002
【００３１】
それにおいては、
d = フィルタリングされた表現における適正レベル、
μ = 画素の実値測度関数、
P = 画像における任意の画素である。
【００３２】
次のように仮定する。
【００３３】
（式２）
【００３４】
【数８】
0003959862.tif 000003
【００３５】
それにおいては、
d0 = 何らかの測度値μ0に対するd(μ0)、
C = d0 − log2(μ0)で、定数である。
【００３６】
フィルタリングされた表現におけるテクスチャの空間解像度は連続するレベル間で2を因子として異なると仮定するので、式2の対数関数は底を2とする。この説明では終始対数は全て底を2とする。よって、記載による底の表示を省く。但し、上に述べた通り、フィルタリングされた表現は空間解像度がどんな便宜上の因子によって変わってもいいようにする。それに応じて対数関数の底は選ばれるべきである。
【００３７】
伝統的に、レベルの推定は画面又は画像空間の座標とテクスチャ空間における対応座標間の何らかの関係に基く。この関係は画面又は画像空間座標 (x,y) をテクスチャ空間座標 (u,v) にマップする関数u=u(x,y)及びv=v(x,y)によって表すことができる。テイラー級数展開から、これらの関数をそれぞれ次にように表すことができる。
【００３８】
（式３ａ）
【００３９】
【数９】
0003959862.tif 000004
【００４０】
（式３ｂ）
【００４１】
【数１０】
0003959862.tif 000005
【００４２】
画面又は画像空間における画素が、x軸とy軸に対して単位長の底辺と左辺が位置合わせされた(x0,y0)に左下の角が位置する四角を占めると仮定すれば、画素の底辺（B）及び左辺（L）は次のようにテクスチャ空間ベクトルにマップされることが分かる。
【００４３】
（式４ａ）
【００４４】
【数１１】
0003959862.tif 000006
【００４５】
（式4ｂ）
【００４６】
【数１２】
0003959862.tif 000007
【００４７】
これら2つの偏導関数の何らかの関数から適正レベルdを推定する方法は数多くある。例えば、或る技法では2つのベクトルの大きい方のユークリッド長の対数からそのレベルを推定する、即ち、次のようになる。
【００４８】
（式５）
【００４９】
【数１３】
0003959862.tif 000008
【００５０】
残念ながら、他の公知の式同様にこの式は回転など剛体変換において不変ではない。これは指定方向に沿って偏導関数を出し、その偏導関数の最大値或いは平均値を見出すことによって解決できる。方向sに対するu及びvの偏導関数は次のように表せることが分かる。
【００５１】
（式６ａ）
【００５２】
【数１４】
0003959862.tif 000009
【００５３】
（式６ｂ）
【００５４】
【数１５】
0003959862.tif 000010
【００５５】
それにおいては、s = 画面又は画像空間における単位ベクトル (cos a, sin a)。
【００５６】
テクスチャ空間における偏導関数のユークリッド長の二乗は次の通りである。
【００５７】
（式７）
【００５８】
【数１６】
0003959862.tif 000011
【００５９】
平均の平方長は完全な円周で導関数を積分して、即ち、次のようにして得ることができる。
【００６０】
（式８）
【００６１】
【数１７】
0003959862.tif 000012
【００６２】
それにおいては、ｌ（エル）（+山マーク）= 偏導関数の値と等しい要素を有するベクトルの平均長。
【００６３】
次のようにして、この平均長を用いて剛体変換においても不変の適正レベルdを得ることができる。
【００６４】
（式９）
【００６５】
【数１８】
0003959862.tif 000013
【００６６】
幅広く様々な非ユークリッドノルムから得た最長の及び平均の長さを用いることもできる。
【００６７】
偏導関数を用いて適正レベルdの推定値を得る技法では概して偏導関数を数値計算する。閉じた形式を引き出すことができる。例えば、x0及びx1に終点を有し、対応するテクスチャ空間座標u0及びu1並びに対応する重みw0及びw1をそれぞれ有する水平走査線、即ち、yが定数である線に沿ったマッピング関数uを考えてみよう。重みwは一般に同次座標と呼ばれ、物体空間の1点と画面又は画像空間に射影される対応点との間の距離を表す。写像関数uは次のように表すことができる。
【００６８】
（式１０）
【００６９】
【数１９】
0003959862.tif 000014
【００７０】
それにおいては、
（式１０ａ）
【００７１】
【数２０】
0003959862.tif 000015
【００７２】
xに対するこの関数の偏導関数は次のようになることが分かる。
【００７３】
（式１１）
【００７４】
【数２１】
0003959862.tif 000016
【００７５】
w(t)=w0+t(w1−w0)であることを認識し且つこの式において適正な置き換えをすることによって、次のようになることが分かる。
【００７６】
（式１２）
【００７７】
【数２２】
0003959862.tif 000017
【００７８】
従って、水平走査線に沿ったxに対する写像関数uの偏導関数は同次座標又は重みwだけの関数として変わる。垂直走査線、即ち、xが一定である線に沿った偏導関数の場合でも、またどんな任意の方向に沿った導関数についても、結果は同様である。
【００７９】
この式は、逆重みqを用いて次のように書き換えることができる。
【００８０】
（式１３）
【００８１】
【数２３】
0003959862.tif 000018
【００８２】
それにおいては、
（式１３ａ）
【００８３】
【数２４】
0003959862.tif 000019
【００８４】
透視図を正しく描画するには重みwではなく逆重みqを補間すべきだから、逆重みqによる式の方が実際のインプリメンテーションの際、概してもっと都合がいい。
【００８５】
逆重みの二乗で割った定数によって偏導関数を表し、対数関数と最大関数とを入れ替えることによって、式5を次のように書き換えることができる。
【００８６】
（式１４）
【００８７】
【数２５】
0003959862.tif 000020
【００８８】
それにおいては、Cx = 水平走査線、即ち、yが定数である線に沿った定数値で、Cy = 垂直走査線、即ち、xが定数である線に沿った定数値。
【００８９】
同様に、式9は次のように書き換えることができる。
【００９０】
（式１５）
【００９１】
【数２６】
0003959862.tif 000021
【００９２】
それにおいては、Cxy = 2つの定数に依存する値、即ち、1つは水平走査線に沿ってもう1つは垂直走査線に沿ってそれぞれ一定である2つの定数。
【００９３】
これらの式を用いると公知の技法を用いた場合よりはるかに効率よく適正レベルdを推定することができる。三角面積の適正レベルdを推定する逆重みqの式を引き出すことによって効率をさらに向上させることができる。
【００９４】
この導出は、1次元の適正レベルdの推定値を次のように表せることを認識することから始まる。
【００９５】
（式１６）
【００９６】
【数２７】
0003959862.tif 000022
【００９７】
これは、次のように書き換えることができる。
【００９８】
（式１７）
【００９９】
【数２８】
0003959862.tif 000023
【０１００】
それにおいては、
d（+山マーク） = 1次元区分全体の平均レベルで、
q（+山マーク） = 終点での逆重みの幾何平均。
【０１０１】
式17は2次元の三角面積のレベルdの推定値も表しており、それにおいては、
d（+山マーク）= 或る2次元の三角面積全体の平均レベルで、
（式１７ａ）
【０１０２】
【数２９】
0003959862.tif 000024
【０１０３】
三角面積の平均レベルd（+山マーク）は様々な方法で決めることができる。例えば、テクスチャ空間と画面又は画像空間とで対応する面積の比を算出することによって、
（式１８ａ）
【０１０４】
【数３０】
0003959862.tif 000025
【０１０５】
それにおいて、
AT = テクスチャ空間における面積で、
AS = 画面又は画像空間における対応面積で、
その2つの空間において対応する面積を取り囲む周辺の長さの比を算出すると、（式１８ｂ）
【０１０６】
【数３１】
0003959862.tif 000026
【０１０７】
それにおいては、
PT = テクスチャ空間における周辺の長さで、
PS = 画面又は画像空間において対応する周辺の長さで、
もしくは、その2つの空間において対応している長さの基本的にどれでもの比を計算することによって、平均レベルを得ることができる。
【０１０８】
式2は次のように書き換えることができる。
【０１０９】
（式１９）
【０１１０】
【数３２】
0003959862.tif 000027
【０１１１】
0003959862.tif 000028
【０１１２】
図4は、走査線の順序で画素データに本願発明を用いる1プロセスの機能ブロック図である。ステップ401で、行ないたい変換或いはその他の初期化のプロセスが実行される。例を挙げると、物体の位置又は外光ジオメトリを更新して物体の動きや他の変更を反映するようにしたり、表面をモザイク状にして個々に処理可能な三角形のモザイクを形成するようにするなどがある。
【０１１３】
ステップ401は必要条件ではなく、本願発明の一部というわけではないが、これらの変換が実行されるやり方によって本願発明をどのように実現するかが左右される。これらの変換は正写像や逆写像など様々な方法で実行可能である。
【０１１４】
正写像においては、入力画素データを走査線又は出力の順に処理することができるが、画像全体が処理されるまで出力画素を完全に確定することはできない。逆写像では、出力画素は出力又は走査線順に普通確定されるが、入力画素データをそれと同じ順序で処理することはできない。これら2つのマッピングは、2次元変換を要すると共に／或いはフィルタリングをするので実現するのに費用がかかる。
【０１１５】
ステップ402で、個々の表面領域のテーブルと定数を初期化する。これらの領域には概して多角形、特に三角形が外接している。例えば、式17について言えば、上に説明した通り、これらの定数は平均のフィルタレベルd（+山マーク）及び平均の逆重みq（+山マーク）を含む。これらの定数は様々な計算によって得ることができる。幾つかの例を上に挙げた。
【０１１６】
図5に関して、画面又は画像空間(x,y)の領域210はマッピングシステム200における1回以上の変換202を行なうことによりテクスチャ空間(u,v)の領域220に対応する。領域210は形状が三角形で、この図には示していないが物体空間(x',y',z')の表面にマップすると、それぞれの頂点で逆重みq0, q1, q2を有する。上に説明すると共に式18a及び18bに示した通り、例えば、平均レベルd（+山マーク）は領域220及び210の面積又は周辺の長さの比から得ることができる。最長の辺の長さなど何らか他の特徴の比を用いることもできる。好ましくは、平均逆重みq（+山マーク）を頂点における逆重みの幾何平均として算出することである。もしそうしたければ、これらの重みを他の計算を用いて出してもいい。
【０１１７】
望ましいのは、ステップ402でlog2関数のルックアップテーブルの初期化も実行することである。ルックアップテーブルは必要条件ではないが、普通アルゴリズム計算より効率的だから概して好ましい。ルックアップテーブルは不揮発性記憶装置など他の何らかの資源によって実現してもいい。
【０１１８】
ステップ403で、それぞれの走査線の追加の定数が初期化される。これらの定数には走査線の始まりの画素の逆重みqA、その走査線の終わりの画素の逆重みqB、各走査線を横切る逆重みの補間の刻み幅などがある。図5に関して、走査線215はx=x0に始まり、x=x1に終わる。この走査線の始まりと終わりの逆重みは頂点の垂直位置と相対関係にある走査線終点の垂直位置に従って隣接頂点と連合した逆重みを補間することによって算出できる。例えば、q0及びq1を補間することによってqAを出し、q0とq2を補間することによってqBを得る。補間の刻み幅は終わりと始まりの逆重みの差（qB−qA）を補間点数で割ることによって得ることができる。それはx=x0からx=x1までの走査線に沿った画素数と普通同じである。
【０１１９】
ステップ404で、それぞれの走査線における画素ごとの適正フィルタレベルが決められる。これは、画素ごとの逆重みqを算出し、次に式17など逆重みの何らかの関数に従って適正レベルdを決定することによって実現される。逆重みqは始まりと終わりの逆重みqAとqBを補間することによって算出することができる。
【０１２０】
ステップ405は、或る特定の表面又は領域の走査線が全て処理されたかどうかを決定する。未だ処理されていなければ、次の走査線に対してステップ403の処理を継続する。全走査線の処理が終わったら、ステップ406で全ての領域が処理済みがどうかを決定する。未処理の領域が残っていれば、次の領域に対してステップ402の処理を継続する。全ての領域の処理が完了したら、プロセスのこの図に表示してある部分は終了する。
【０１２１】
以上の説明から分かるように、これら幾つかの定数及び重みは本願発明の範囲から逸脱することなく幅広く多様な方法で算出することができる。
【図面の簡単な説明】
【図１】表示装置とインタフェースさせるために表示コントローラを備える典型的なパーソナルコンピュータの機能ブロック図。
【図２】a及びb典型的なパーソナルコンピュータ内部の表示サブシステムの異なる実施形態を示す機能ブロック図。
【図３】本願発明の様々な態様を実現するのに使用できる装置の機能ブロック概略図。
【図４】本願発明の様々な態様を実行するのに使用できる１つの具体的なプロセスの機能ブロック図。
【図５】テクスチャ空間と画面又は画像空間との間のマッピング概略図。
【図１】
0003959862.tif 000031
【図２】
0003959862.tif 000032
【図３】
0003959862.tif 000033
【図４】
0003959862.tif 000034
【図５】
0003959862.tif 000035