(57)【要約】【課題】インデックスの生成を動的に切り替えることにより、ハードウェアを大きく増加させることなく、テクスチャキャッシュの効率を向上させる。【解決手段】コンピュータグラフィックス描画装置は、テクスチャ座標１０を出力すると共にテクスチャ適応情報としてのフィルタリングモード１１とミップマップレベル１２の組合せおよびマルチテクスチャ数１３とテクスチャ識別子１４の組合せの少なくとも一方の組合せを出力するピクセル演算手段１と、フィルタリングモード１１がミップマップレベル１２を含むか否か、および、マルチテクスチャ数１３が１であるか２以上であるか、の少なくとも何れかの条件を判断して、現在のコンテキスト数に基づいてコンテキスト間のエントリの数を最小限とするようなインデックス生成関数を用いてキャッシュエントリを指示するインデックス１５を生成し、このインデックス１５により参照テクセル値１６を生成してピクセル演算手段１に出力するテクスチャ処理手段２と、を備える。【選択図】  図１
2005025254.tif 000002
【特許請求の範囲】
【請求項１】
テクスチャマッピング機能を有するコンピュータグラフィックス描画装置であって、
テクスチャ座標を出力すると共に、テクスチャ適応情報としてのフィルタリングモードとミップマップレベルの組合せ、および、マルチテクスチャ数とテクスチャ識別子の組合せの少なくとも一方の組合せを出力するピクセル演算手段と、
前記フィルタリングモードがミップマップレベルを含むか否か、および、前記マルチテクスチャ数が１であるか２以上であるか、の少なくとも何れかの条件を判断して、現在のコンテキスト数に基づいてコンテキスト間のエントリの数を最小限とするようなインデックス生成関数を用いてキャッシュエントリを指示するインデックスを生成し、該インデックスを用いて参照テクセル値を生成して前記ピクセル演算手段に出力するテクスチャ処理手段と、を備えることを特徴とするコンピュータグラフィックス描画装置。
【請求項２】
テクスチャマッピング機能を有するコンピュータグラフィックス描画装置であって、
描画するピクセルに対応する座標であるテクスチャ座標と、画像データの補間を行なうテクスチャマッピング用のデータであるミップマップレベルと、テクスチャに適応する情報であるフィルタリングモードと、を出力するピクセル演算手段と、
前記ピクセル演算手段から出力された前記テクスチャ座標、前記ミップマップレベル、前記フィルタリングモードを受け取り、
前記フィルタリングモードが前記ミップマップレベルを使用しないモードである場合には、前記テクスチャ座標を入力とする任意の関数によりインデックスを生成し、
前記フィルタリングモードが前記ミップマップレベルを使用するモードである場合には、前記テクスチャ座標と前記ミップマップレベルを入力とする任意の関数を用いて前記インデックスを生成することにより、
テクスチャキャッシュ内の参照するテクセルに対応するキャッシュエントリを指示する前記インデックスを生成するインデックス生成手段と、を備えることを特徴とする請求項１に記載のコンピュータグラフィックス描画装置。
【請求項３】
前記ピクセル演算手段は、前記テクスチャ座標、前記フィルタリングモード、前記ミップマップレベルを、前記インデックス生成手段としてのインデックス生成回路に出力するピクセル演算ユニットより構成され、
前記インデックス生成回路は、データをフェッチするデータフェッチ回路と共にテクスチャキャッシュユニットを構成し、前記データフェッチ回路は、前記インデックス生成回路が出力する前記インデックスと、前記ピクセル演算ユニットより出力される前記テクスチャ座標、前記ミップマップレベル、テクスチャ識別子を用いて参照テクセル値を前記ピクセル演算ユニットに対して出力することを特徴とする請求項２に記載のコンピュータグラフィックス描画装置。
【請求項４】
前記ピクセル演算手段は、テクスチャ識別子と、マルチテクスチャ数と、をさらに出力すると共に、
前記インデックス生成手段は、前記ピクセル演算手段から出力された前記テクスチャ座標、前記ミップマップレベル、前記フィルタリングモード、前記テクスチャ識別子、前記マルチテクスチャ数を受け取り、
前記フィルタリングモードが前記ミップマップレベルを使用しないモードで、かつ、前記マルチテクスチャ数が１であった場合には、前記テクスチャ座標を入力とする任意の関数を用いて前記インデックスを生成し、
前記フィルタリングモードが前記ミップマップレベルを使用しないモードで、かつ、前記マルチテクスチャ数が２以上であった場合には、前記テクスチャ座標と前記テクスチャ識別子を入力とする任意の関数を用いて前記インデックスを生成し、
前記フィルタリングモードが前記ミップマップレベルを使用するモードであって、かつ、前記マルチテクスチャ数が１であった場合には、前記テクスチャ座標と前記ミップマップレベルを入力とする任意の関数を用いて前記インデックスを生成し、
前記フィルタリングモードが前記ミップマップレベルを使用するモードであって、かつ、前記マルチテクスチャ数が２以上であった場合には、前記テクスチャ座標、前記ミップマップレベル、前記テクスチャ識別子を入力とする任意の関数を用いて前記インデックスを生成することにより、
前記テクスチャキャッシュ内の参照するテクセルに対応するキャッシュエントリを指示する前記インデックスを生成する、ことを特徴とする請求項２に記載のコンピュータグラフィックス描画装置。
【請求項５】
前記ピクセル演算手段は、前記テクスチャ座標、前記フィルタリングモード、前記ミップマップレベル、前記マルチテクスチャ数、前記テクスチャ識別子を、前記インデックス生成手段としてのインデックス生成回路に出力するピクセル演算ユニットより構成され、
前記インデックス生成回路は、データをフェッチするデータフェッチ回路と共にテクスチャキャッシュユニットを構成し、前記データフェッチ回路は、前記インデックス生成回路が出力する前記インデックスと、前記ピクセル演算ユニットより出力される前記テクスチャ座標、前記ミップマップレベル、テクスチャ識別子を用いて参照テクセル値を前記ピクセル演算ユニットに対して出力することを特徴とする請求項４に記載のコンピュータグラフィックス描画装置。
【請求項６】
テクスチャマッピング機能を有するコンピュータグラフィックス描画装置であって、
描画するピクセルに対応する座標であるテクスチャ座標と、テクスチャ識別子と、マルチテクスチャ数と、をそれぞれ出力するピクセル演算手段と、
前記ピクセル演算手段から出力された前記テクスチャ座標、前記テクスチャ識別子、前記マルチテクスチャ数を受け取り、
前記マルチテクスチャ数が１であった場合には、前記テクスチャ座標を入力とする任意の関数によりインデックスを生成し、
前記マルチテクスチャ数が２以上であった場合には、前記テクスチャ座標と前記テクスチャ識別子を入力とする任意の関数を用いて前記インデックスを生成することにより、
テクスチャキャッシュ内の参照するテクセルに対応するキャッシュエントリを指示する前記インデックスを生成するインデックス生成手段と、を備えることを特徴とする請求項１に記載のコンピュータグラフィックス描画装置。
【請求項７】
前記ピクセル演算手段は、前記テクスチャ座標、前記マルチテクスチャ数、前記テクスチャ識別子を、前記インデックス生成手段としてのインデックス生成回路に出力するピクセル演算ユニットより構成され、
前記インデックス生成回路は、データをフェッチするデータフェッチ回路と共にテクスチャキャッシュユニットを構成し、前記データフェッチ回路は、前記インデックス生成回路が出力する前記インデックスと、前記ピクセル演算ユニットより出力される前記テクスチャ座標、前記ミップマップレベル、テクスチャ識別子を用いて参照テクセル値を前記ピクセル演算ユニットに対して出力することを特徴とする請求項６に記載のコンピュータグラフィックス描画装置。
【請求項８】
テクスチャマッピング機能を有するコンピュータグラフィックス描画装置であって、
描画するピクセルに対応する座標であるテクスチャ座標と、画像データの補間を行なうテクスチャマッピング用のデータであるミップマップレベルと、テクスチャに適応する情報であるフィルタリングモードと、テクスチャ識別子と、マルチテクスチャ数と、を出力するピクセル演算手段と、
前記ピクセル演算手段から出力された前記テクスチャ座標、前記ミップマップレベル、前記フィルタリングモード、テクスチャ識別子、マルチテクスチャ数、を受け取り、
前記フィルタリングモードが前記ミップマップレベルを使用しないモードであって、かつ、前記マルチテクスチャ数が１であった場合には、前記テクスチャ座標を入力とする任意の関数を用いて前記インデックスを生成し、
前記フィルタリングモードが前記ミップマップレベルを使用しないモードであって、かつ、前記マルチテクスチャ数が２以上であった場合には、前記テクスチャ座標と前記テクスチャ識別子を入力とする任意の関数を用いて前記インデックスを生成し、
前記フィルタリングモードが前記ミップマップレベルを使用するモードであって、かつ、前記マルチテクスチャ数が１であった場合には、前記テクスチャ座標と前記ミップマップレベルを入力とする任意の関数を用いて前記インデックスを生成し、
前記フィルタリングモードが前記ミップマップレベルを使用するモードであって、かつ、前記マルチテクスチャ数が２以上であった場合には、前記テクスチャ座標、前記ミップマップレベル、前記テクスチャ識別子を入力とする任意の関数を用いて前記インデックスを生成することにより、
前記テクスチャキャッシュ内の参照するテクセルに対応するキャッシュエントリを指示する前記インデックスを生成するインデックス生成手段と、を備えることを特徴とする請求項１に記載のコンピュータグラフィックス描画装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、コンピュータグラフィックス描画装置に係り、特にテクスチャキャッシュ機能を備えるコンピュータグラフィックス描画装置に関する。
【０００２】
【従来の技術】
一般に、コンピュータグラフィックス装置は、３次元座標を３角形などのポリゴン（ｐｏｌｙｇｏｎ―多角形―）に分解し、そのポリゴンを描画することにより画像全体の描画が行なわれている。この場合、３次元画像はポリゴンの組合せにより定義されている。ところで、描画対象としての物体の表面は、複雑な模様の繰り返しパターンを有することが多く、模様やパターンが複雑で細かくなるほど、各模様やパターンを三角形などによりモデリングすることが困難となる。そこで、これを解決すると共に描画画像の表現力を飛躍的に向上させるためにテクスチャマッピング手法を用いている。
【０００３】
このテクスチャマッピングは、スキャナ等により取り込んだイメージデータを物体の表面に張り付けることにより、少ない頂点数でもリアリティの高い画像を実現しており、オブジェクト（ｏｂｊｅｃｔ）座標系からテクスチャ（ｔｅｘｔｕｒｅ）座標系への写像を定義してウィンドウ（ｗｉｎｄｏｗ）座標系における各ピクセル（ｐｉｘｅｌ：ｐｉｃｔｕｒｅ  ｃｅｌｌ  ｅｌｅｍｅｎｔ）に対応するテクセル（ｔｅｘｅｌ：ｔｅｘｔｕｒｅ  ｃｅｌｌ  ｅｌｅｍｅｎｔ）を求めている。
【０００４】
テクスチャに利用される画像データは、テクスチャメモリに格納されており、このテクスチャメモリを動画像データを用いて随時に更新処理することにより、動画像に対するテクスチャマッピング処理が可能となる。ところで、テクスチャマッピング処理は、上述したように、描画対象である物体の表面にテクスチャを張り付けることにより行なわれており、この処理に当たって、画素に原画よりも拡大されたテクスチャを張り付ける場合と、縮小されたテクスチャを張り付ける場合とがある。
【０００５】
原画よりも拡大されたテクスチャを張り付ける場合、例えば、４近傍補間等の原画フィルタリング処理を施すことにより、リアルタイムに対処することができる。これに対して、原画よりも縮小されてテクスチャが張り付けられる場合には１つの画素に多くのテクセルが対応することになり、画像に対するエイリアシング（ａｌｉａｓｉｎｇ）妨害が目立つようになる。そこで、ポリゴンの大きさに対応した複数の大きさのテクスチャを有するテクスチャパターンを予め生成しておいて、必要に応じて適切な大きさのテクスチャをポリゴンにマッピングするミップマップ（ＭＩＰＭＡＰ／ｍｕｌｔｕｍ  ｉｎ  ｐａｒｖｏ  ｍａｐｐｉｎｇ―小型で内容が豊富なマッピング―）テクスチャマッピング法（以下、ミップマップ法という）が知られている（特許文献１）。
【０００６】
このミップマップ法においては、ミップマップフィルタリングを用いてテクスチャマッピングを行ない高画質を得るようにしている。このミップマップフィルタリングは、テクスチャが縮小して張り付けられた場合には、情報の欠落によって生ずるエイリアシングを避けるために、縮小率に応じて予めフィルタリング済みのテクスチャを複数用意しておき、各画素の縮小率に応じて選択して使用するものである。用意されるテクスチャの縮小率は、元画像に対して、１／２画像、１／４画像、１／８画像などである。このように、縮小率の相違する複数の画像を予め用意しておくのは、画像のフィルタリングに要する負担を軽減させるためである。
【０００７】
上述した従来のテクスチャマッピング法においては、テクスチャキャッシュ装置が用いられているが、この従来のテクスチャキャッシュ装置は、キャッシュのエントリを指し示すインデックスを生成するのに、テクスチャ座標（Ｕ，Ｖ）を入力とする任意の関数を使用していた。
【０００８】
【特許文献１】
特開２００２−３５８５３７号公報
【特許文献２】
特開２０００−１５５８５１号公報
【特許文献３】
特開平９−２１２６８０号公報
【０００９】
【発明が解決しようとする課題】
高品位なテクスチャマッピング処理においては、１つのピクセルを生成するために複数のテクスチャ画像を参照する。例えば、トライリニアフィルタリングを行なう場合には、ロー（Ｌｏｗ）レベルとハイ（Ｈｉｇｈ）レベルの２つのミップマップレベルのテクスチャ画像を参照する。
【００１０】
また、パーピクセルライティング（ｐｅｒ  ｐｉｘｅｌ  ｗｒｉｔｉｎｇ）等より高度なマルチテクスチャ処理では、ベーステクスチャに加えて法線テクスチャや環境テクスチャなど、複数の異なるテクスチャを使用する。
【００１１】
一般に、互いに関連性のない複数のコンテキストが同一のキャッシュメモリに入り乱れてアクセスすると、スラッシングが発生しシステムの効率が低下する。テクスチャキャッシュも同様で、複数のテクスチャ画像の参照が入り乱れて発生すると、システムのパフォーマンスが著しく低下する。
【００１２】
以上を解決するためには、キャッシュのウェイ（ＷＡＹ）数を増やすか、コンテキスト毎に専用のエントリを設けたり、もしくはキャッシュ装置そのものを設けたりすることが考えられるが、これらの解決策によればハードウェアコストが増大したり、柔軟性が低くなったりして、効率的に動作するコンテキストの数が限られるという問題があった。
【００１３】
本発明は、描画モードに応じてテクスチャキャッシュのエントリを指示するインデックスの生成を動的に切り替えることにより、コンテキスト間のエントリの共有を最小限にできると共に、ハードウェアを大きく増加させることなく、テクスチャキャッシュの効率を向上させることができるテクスチャマッピング機能を有するコンピュータグラフィックス描画装置を提供することを目的とする。
【００１４】
【課題を解決するための手段】
上記目的を達成するため、本発明の基本構成は、テクスチャマッピング機能を有するコンピュータグラフィックス描画装置であって、テクスチャ座標を出力すると共に、テクスチャ適応情報としてのフィルタリングモードとミップマップレベルの組合せ、および、マルチテクスチャ数とテクスチャ識別子の組合せの少なくとも一方の組合せを出力するピクセル演算手段と、前記フィルタリングモードがミップマップレベルを含むか否か、および、前記マルチテクスチャ数が１であるか２以上であるか、の少なくとも何れかの条件を判断して、現在のコンテキスト数に基づいてコンテキスト間のエントリの数を最小限とするようなインデックス生成関数を用いてキャッシュエントリを指示するインデックスを生成し、該インデックスにより参照テクセル値を生成して前記ピクセル演算手段に出力するテクスチャ処理手段と、を備えることを特徴としている。
【００１５】
以上のように、本発明の基本構成に係るコンピュータグラフィックス描画装置においては、テクスチャキャッシュのエントリを指し示すインデックスを生成する関数の入力として、テクスチャ座標（Ｕ，Ｖ）を入力するだけでなく、フィルタリングモードやマルチテクスチャ数等の描画モードに応じ、動的にテクスチャ識別子（ＴＩＤ）およびミップマップレベル（Ｌ）を加えられるようにする。
【００１６】
フィルタリングモードおよびマルチテクスチャ数から、現在のコンテキスト数がわかるので、エントリをコンテキスト毎にある程度分割することができる。テクスチャ識別子およびミップマップレベルが異なるアクセスに対しては、なるべく異なるインデックスを生成するようにインデックス生成関数をとれば、コンテキスト間のエントリの共有を最小限にでき、大きなハードウエアコストの増大無しに、どのような描画モードにおいてもテクスチャキャッシュの効率を最大限に保つことができる。
【００１７】
【発明の実施の形態】
以下、本発明に係るコンピュータグラフィックス描画装置の実施形態について添付図面を参照しながら詳細に説明する。最初に、本発明の基本構成に対応する第１実施形態に係るコンピュータグラフィックス描画装置について、図１を参照しながら説明する。
【００１８】
図１において、第１実施形態に係るコンピュータグラフィックス描画装置は、ピクセル演算手段１と、テクスチャ処理手段２とを備えている。ピクセル演算手段１は、テクスチャ座標１０を出力すると共に、テクスチャ適応情報としてのフィルタリングモード１１とミップマップレベル１２の組合せ、および、マルチテクスチャ数１３とテクスチャ識別子１４の組合せの少なくとも一方の組合せを出力しており、また、テクスチャ処理手段２は、フィルタリングモード１１がミップマップレベル１２を含むか否か、および、マルチテクスチャ数１３が１であるか２以上であるか、の少なくとも何れかの条件を判断して、現在のコンテキスト数に基づいてコンテキスト間のエントリの数を最小限とするようなインデックス生成関数を用いてキャッシュエントリを指示するインデックス１５を生成（３）し、このインデックス１５により参照テクセル値１６を生成（４）してピクセル演算手段１に出力している。
【００１９】
以上が最も基本的なコンピュータグラフィックス描画装置の構成であるが、より詳細な構成として、第２ないし第４実施形態に係るコンピュータグラフィックス描画装置について、図２ないし図４を参照しながら詳細に説明する。図２ないし図４において、図１と同一符号を付した構成要素は、名称が異なったとしても図１と同一もしくは相当する構成要素を示している。
【００２０】
第２実施形態を示す図２において、ピクセル演算手段は、テクスチャ座標１０、フィルタリングモード１１、ミップマップレベル１２を、テクスチャ処理手段としてのテクスチャキャッシュユニット２を構成するインデックス生成回路３に出力するピクセル演算ユニット１より構成されている。インデックス生成回路３はデータをフェッチするデータフェッチ回路４と共にテクスチャキャッシュユニット２を構成しており、データフェッチ回路４はインデックス生成回路３が出力するインデックス１５と、ピクセル演算ユニット２より出力されるテクスチャ座標１０、ミップマップレベル１２、テクスチャ識別子１４に基づいて、参照テクセル値１６をピクセル演算ユニット２に対して出力している。
【００２１】
図２においては、インデックス生成回路３の入力が、テクスチャ座標１０（Ｕ，Ｖ）、フィルタリングモード１１、ミップマップレベル１２（Ｌ）である場合である。フィルタリングモード１１がミップマップを使用するモード（トライリニアフィルタリング等）でない場合は、インデックス１５の生成にＵ，Ｖのみを使用する。例えば、Ｕ，Ｖそれぞれの下位数ビットを取り出してビット連結した値をインデックス１５とする。フィルタリングモード１１がミップマップを使用するモードであった場合は、インデックス１５を生成するために、Ｕ，ＶおよびＬを使用する。例えば、Ｕ，Ｖ，Ｌそれぞれの下位数ビットを取り出してビット連結した値をインデックス１５とする。
【００２２】
次に、図３を用いて第３実施形態に係るコンピュータグラフィックス描画装置の構成について説明する。第３実施形態の描画像値は、ピクセル演算手段が、テクスチャ座標１０、マルチテクスチャ数１３、テクスチャ識別子１４を、テクスチャ処理手段としてテクスチャキャッシュユニット２を構成するインデックス生成回路３に出力するピクセル演算ユニット１により構成されている。インデックス生成回路３は、データをフェッチするデータフェッチ回路４と共にテクスチャキャッシュユニット２を構成しており、データフェッチ回路４は、インデックス生成回路３が出力するインデックス１５と、ピクセル演算ユニット１より出力されるテクスチャ座標１０、ミップマップレベル１２、テクスチャ識別子１４により参照テクセル値１６をピクセル演算ユニット１に対して出力している。
【００２３】
図３においては、インデックス生成回路３の入力が、テクスチャ座標１０（Ｕ，Ｖ）、マルチテクスチャ数１３（ＴＮ）、テクスチャ識別子１４（ＴＩＤ）であるある場合である。マルチテクスチャ数１３が１の場合は、インデックス１５の生成にＵ，Ｖのみを使用する。例えば、Ｕ，Ｖそれぞれの下位数ビットを取り出してビット連結した値をインデックスとする。マルチテクスチャ数が２以上の場合は、インデックス１５の生成にＵ，ＶおよびＴＩＤを使用する。例えば、Ｕ，Ｖ，ＴＩＤそれぞれの下位数ビットをビット連接した値をインデックス１５としている。
【００２４】
次に、図４を参照しながら第４実施形態に係るコンピュータグラフィックス描画装置について説明する。第４実施形態の描画装置は、ピクセル演算手段が、テクスチャ座標１０、フィルタリングモード１１、ミップマップレベル１２、マルチテクスチャ数１３、テクスチャ識別子１４を、テクスチャ処理手段としてのテクスチャキャッシュユニット２を構成するインデックス生成回路３に出力するピクセル演算ユニット１により構成されている。インデックス生成回路３は、データをフェッチするデータフェッチ回路４と共にテクスチャキャッシュユニット２を構成しており、データフェッチ回路４は、インデックス生成回路３が出力するインデックス１５と、ピクセル演算ユニット１より出力されるテクスチャ座標１０、ミップマップレベル１２、テクスチャ識別子１４により参照テクセル値１６を生成してピクセル演算ユニット１に対して出力している。
【００２５】
図４においては、インデックス生成回路３の入力が、テクスチャ座標１０（Ｕ，Ｖ）、フィルタリングモード１１、ミップマップレベル１２（Ｌ）、マルチテクスチャ数１３（ＴＮ）、テクスチャ識別子１４（ＴＩＤ）である場合である。フィルタリングモード１１がミップマップを使用するモードでなく、かつ、マルチテクスチャ数１３が１の場合は、インデックス１５の生成にＵ，Ｖのみを使用している。例えば、Ｕ，Ｖそれぞれの下位数ビットを取り出してビット連結した値をインデックス１５とする。フィルタリングモード１１がミップマップを使用するモードであり、かつ、マルチテクスチャ数１３が１の場合は、インデックス１５の生成にＵ，ＶおよびＬを使用する。例えば、Ｕ，Ｖ，Ｌそれぞれの下位数ビットを取り出してビット連結した値をインデックス１５とする。フィルタリングモード１１がミップマップを使用するモードでなく、かつ、マルチテクスチャ数が２以上の場合は、インデックス１５の生成にＵ，ＶおよびＴＩＤを使用する。例えば、Ｕ，Ｖ，ＴＩＤそれぞれの下位数ビットをビット連接した値をインデックス１５とする。フィルタリングモード１１がミップマップを使用するモードであって、かつ、マルチテクスチャ数１３が２以上の場合は、インデックス１５の生成にＵ，Ｖ，ＬおよびＴＩＤを使用する。例えば、Ｕ，Ｖ，Ｌ，ＴＩＤそれぞれの下位数ビットを取り出してビット連結した値をインデックス１５としている。以上のようにして生成されたインデックス１５を用いて、データフェッチ回路４により参照テクセル値１６が生成されてピクセル演算ユニット１に出力されている。
【００２６】
次に、インデックスの生成の詳細について説明する。インデックス関数の例として、キャッシュライン数を６４、１ライン内のピクセル数を８×８ピクセルとした場合のインデックス生成関数の例を示すと、以下の式のようになる。下記の式の表記はベリログＸＬ（Ｖｅｒｉｌｏｇ−ＸＬ）に準拠とする。つまり、｛…，…，…｝はビット連結を表し、［ｎ：ｍ］はビットの切り出しを表している。また、各変数の意味は、以下の通りである。
Ｆ：ミップマップありなしを表す信号
Ｍ：マルチテクスチャありなしを表す信号
Ｌ：ミップマップレベル番号
Ｉ：テクスチャＩＤ
Ｕ：テクスチャＵ座標
Ｖ：テクスチャＶ座標
【００２７】
まず、フィルタのみの実装の場合には、下記の式の関数により行なう：
ｉｎｄｅｘ  ＝  （Ｆ＝＝１  ？  ｛Ｕ［５：３］，Ｖ［４：３］，Ｌ［０］｝  ：  ｛Ｕ［５：３］，Ｖ［５：３］｝）  ；
次に、マルチテクスチャのみの実装は、下記の式の関数により行なう：
ｉｎｄｅｘ  ＝  （Ｍ＝＝１  ？  ｛Ｕ［５：３］，Ｖ［４：３］，Ｉ［０］｝  ：  ｛Ｕ［５：３］，Ｖ［５：３］｝）  ；
フィルタとマルチテクスチャの両方がある実装は、下記の式の関数により行なう：
2005025254.tif 000003
【００２８】
次に、描画モードが変化したときの動作について説明する。描画モードが変化した時の動作の実装として、以下の２方式が考えられる。
【００２９】
第１は、全エントリを無効（ｉｎｖａｌｉｄ）するタイプである。描画モード（ＦやＭ）が変化したら、全キャッシュラインを無効（ｉｎｖａｌｉｄ）にする。キャッシュ内は常にすべて同じ描画モードのデータとなる。したがって、描画モードによってＴＡＧ（タグ）のフォーマットが変わってもよいので、必要最小限のタグビット（―ＴＡＧ  ｂｉｔ―Ｕ，Ｖ，Ｌ，Ｉの上位ｂｉｔ）にすることができる。
【００３０】
第２は、エントリを無効（ｉｎｖａｌｉｄ）にせずに、連続的に処理するタイプである。描画モードが変化しても、キャッシュラインを無効（ｉｎｖａｌｉｄ）にせず、そのまま処理する。キャッシュ内には、複数の描画モードのデータがあることになる。したがって、描画モードによってタグ（ＴＡＧ）のフォーマットが変わってはいけない。上記の例だと、
Ｕ［ｕ＿ｍｓｂ，５］，Ｖ［ｖ＿ｍｓｂ，５］，Ｉ［ｉ＿ｍｓｂ，０］，Ｌ［ｌ＿ｍｓｂ，０］
によりタグ（ＴＡＧ）を構成する。このとき、描画モードによっては、
Ｕ［５］，Ｖ［５］，Ｉ［０］，Ｌ［０］
は冗長な情報となる。
【００３１】
以上のようにして、インデックス生成関数が用意されてインデックス１５が生成されている。
【００３２】
【発明の効果】
以上詳細に説明したように、本発明に係るコンピュータグラフィックス描画装置により、どのようなフィルタリングモード、どのようなマルチテクスチャ数においても、テクスチャ識別子およびミップマップレベルが異なるアクセスに対しては、異なるインデックスを生成することが可能となり、コンテキスト間のエントリの共有を最小限にすることもでき、大きなハードウェアコストを増大させることもなく、テクスチャキャッシュの処理効率を向上させることができる。
【図面の簡単な説明】
【図１】本発明の基本概念としての第１実施形態に係るコンピュータグラフィックス描画装置の実施の構成を示すブロック図である。
【図２】本発明の第２実施形態に係る描画装置の構成を示すブロック図である。
【図３】本発明の第３実施形態に係る描画装置の構成を示すブロック図である。
【図４】本発明の第４実施形態に係る描画装置の構成を示すブロック図である。
【符号の説明】
１  ピクセル演算手段（ユニット）
２  テクスチャ処理手段（テクスチャキャッシュユニット）
３  インデックス生成回路
４  データフェッチ回路
１０  テクスチャ座標（Ｕ，Ｖ）
１１  フィルタリングモード
１２  ミップマップレベル（Ｌ）
１３  マルチテクスチャ数（ＴＮ）
１４  テクスチャ識別子（ＴＩＤ）
１５  インデックス
１６  参照テクセル値
【図１】
2005025254.tif 000004
【図２】
2005025254.tif 000005
【図３】
2005025254.tif 000006
【図４】
2005025254.tif 000007