(57)【要約】【課題】  テクスチャ圧縮方法及びその装置、並びにテクスチャ圧縮解除方法及びその装置を提供する。【解決手段】  各テクスチャブロックのカラー分布に基づいて、既定の圧縮ビット数でテクスチャブロックに含まれた全てのカラーを再現することができないテクスチャブロックの一部カラー情報を、既定の圧縮ビット数より少ないビット数で、テクスチャブロックに含まれた全てのカラーを再現することができるテクスチャブロックの圧縮データビットに保存されるように圧縮するテクスチャ圧縮方法及びテクスチャ圧縮装置、並びにそれに対応するテクスチャ圧縮解除方法及びテクスチャ圧縮解除装置である。【選択図】      図４
2018073398.tif 000002
【特許請求の範囲】
【請求項１】
テクスチャを構成する複数のテクスチャブロックのカラー分布に基づいて、前記複数のテクスチャブロックのうち複数の隣接するテクスチャブロック間の支援関係を分析する段階と、
前記複数の隣接するテクスチャブロック間の支援関係を示すビット支援モードと、前記複数のテクスチャブロックそれぞれに割り当てられる少なくとも１つのカラーについての情報と、を決定する段階と、
前記決定されたビット支援モード及び前記決定された情報を、第１圧縮パラメータ及び第２圧縮パラメータとして利用することにより、前記複数のテクスチャブロックのうち少なくとも１つのテクスチャブロックを圧縮する段階と、
前記少なくとも１つの圧縮されたテクスチャブロックを出力する段階と、を含むテクスチャ圧縮方法。
【請求項２】
前記ビット支援モードは、支援ビットを提供する第１テクスチャブロック、または前記支援ビットを提供される第２テクスチャブロックを示し、
前記支援ビットは、前記隣接したテクスチャブロックに含まれるカラーのうち、前記複数の隣接するテクスチャブロックの隣接するテクスチャブロックに割り当てられないカラーについての情報を保存することを特徴とする請求項１に記載のテクスチャ圧縮方法。
【請求項３】
前記ビット支援モードが、前記支援ビットを提供する前記第１テクスチャブロックであるということを示す場合、
前記決定する段階は、
前記支援ビットを決定する段階を含み、
前記圧縮する段階は、
前記決定された支援ビットを第３圧縮パラメータとして利用することにより、前記複数のテクスチャブロックのうち少なくとも１つのテクスチャブロックを圧縮する段階を含むことを特徴とする請求項２に記載のテクスチャ圧縮方法。
【請求項４】
前記分析する段階は、
前記複数の隣接するテクスチャブロック間に共通するカラーの個数、及び前記複数のテクスチャブロックそれぞれのカラーの総個数に基づいて、前記複数の隣接するテクスチャブロック間の前記支援関係を分析する段階を含むことを特徴とする請求項１に記載のテクスチャ圧縮方法。
【請求項５】
請求項１ないし４のうちいずれか１項に記載の方法をコンピュータで実行させるためのプログラムを記録したコンピュータ読取り可能記録媒体。
【請求項６】
コンピュータ実行可能命令を保存するメモリと、
前記コンピュータ実行可能命令を実行することにより、テクスチャを構成する複数のテクスチャブロックのカラー分布に基づいて、前記複数のテクスチャブロックのうち複数の隣接するテクスチャブロック間の支援関係を分析し、前記複数の隣接するテクスチャブロック間の支援関係を示すビット支援モードと、前記複数のテクスチャブロックそれぞれに割り当てられる少なくとも１つのカラーについての情報と、を決定し、前記決定されたビット支援モード及び前記決定された情報を、第１圧縮パラメータ及び第２圧縮パラメータとして利用することにより、前記複数のテクスチャブロックのうち少なくとも１つのテクスチャブロックを圧縮し、前記少なくとも１つの圧縮されたテクスチャブロックを出力する少なくとも１つのプロセッサと、を含むテクスチャ圧縮装置。
【請求項７】
前記ビット支援モードは、支援ビットを提供する第１テクスチャブロック、または前記支援ビットを提供される第２テクスチャブロックを示し、
前記支援ビットは、前記隣接したテクスチャブロックに含まれるカラーのうち、前記複数の隣接するテクスチャブロックの隣接するテクスチャブロックに割り当てられないカラーについての情報を保存することを特徴とする請求項６に記載のテクスチャ圧縮装置。
【請求項８】
前記少なくとも１つのプロセッサは、
前記ビット支援モードが、前記支援ビットを提供する前記第１テクスチャブロックであるということを示す場合、前記支援ビットを決定し、前記決定された支援ビットを第３圧縮パラメータとして利用することにより、前記複数のテクスチャブロックのうち少なくとも１つのテクスチャブロックを圧縮することを特徴とする請求項７に記載のテクスチャ圧縮装置。
【請求項９】
前記少なくとも１つのプロセッサは、
前記複数の隣接するテクスチャブロック間に共通するカラーの個数、及び前記複数のテクスチャブロックそれぞれのカラーの総個数に基づいて、前記複数の隣接するテクスチャブロック間の前記支援関係を分析することを特徴とする請求項６に記載のテクスチャ圧縮装置。
【請求項１０】
前記複数のテクスチャブロックそれぞれに割り当てられた前記少なくとも１つのカラーについての情報は、前記複数のテクスチャブロックそれぞれを構成するテクセルの代表値、及び前記テクセルそれぞれに対応するカラー値を獲得するのに利用されるインデックスまたは加重値を含むことを特徴とする請求項６に記載のテクスチャ圧縮装置。
【請求項１１】
複数の隣接するテクスチャブロック間の支援関係を示すビット支援モード、及び原本テクスチャブロックに割り当てられたカラーについての情報を圧縮テクスチャブロックから獲得する段階と、
前記ビット支援モードに基づいて、前記複数の隣接するテクスチャブロックに割り当てられたカラーについての情報を使用するか否かということを判断する段階と、
前記判断結果によって、前記複数の隣接するテクスチャブロックのうちそれぞれのテクスチャブロックに割り当てられた前記カラーについての情報に基づいて、前記原本テクスチャブロックを構成するテクセルを生成する段階と、を含み、
前記ビット支援モード及び前記情報は、第１圧縮パラメータ及び第２圧縮パラメータであるテクスチャ圧縮解除方法。
【請求項１２】
前記ビット支援モードは、支援ビットを提供する第１テクスチャブロック、または前記支援ビットを提供される第２テクスチャブロックを示し、
前記支援ビットは、前記隣接したテクスチャブロックに含まれるカラーのうち、前記複数の隣接するテクスチャブロックの隣接するテクスチャブロックに割り当てられないカラーについての情報を保存することを特徴とする請求項１１に記載のテクスチャ圧縮解除方法。
【請求項１３】
前記ビット支援モードが、前記支援ビットを提供される前記第２テクスチャブロックであるということを示す場合、
前記判断する段階は、前記複数の隣接したテクスチャブロックに割り当てられた前記カラーについての情報を使用すると判断する段階を含み、
前記生成する段階は、前記原本テクスチャブロックに割り当てられた前記少なくとも１つのカラーについての情報、及び前記支援ビットに保存された前記隣接したテクスチャブロックに含まれたカラーのうち、前記複数の隣接するテクスチャブロックの隣接するテクスチャブロックに割り当てられないカラーについての情報に基づいて、テクスチャブロックを構成するテクセルを生成することを特徴とする請求項１２に記載のテクスチャ圧縮解除方法。
【請求項１４】
前記テクスチャブロックを構成するテクセルのうちいずれか一部に対して、前記支援ビットに保存された、前記隣接したテクスチャブロックに含まれたカラーのうち、前記隣接するテクスチャブロックに割り当てられない前記カラーについての情報に基づいて、前記テクスチャブロックを構成するテクセルを生成する段階をさらに含むことを特徴とする請求項１２に記載のテクスチャ圧縮解除方法。
【請求項１５】
請求項１１ないし１４のうちいずれか１項に記載の方法をコンピュータで実行させるためのプログラムを記録したコンピュータ読取り可能記録媒体。
【請求項１６】
コンピュータ実行可能命令を保存するメモリと、
前記コンピュータ実行可能命令を実行することにより、複数の隣接するテクスチャブロック間の支援関係を示すビット支援モード、及び原本テクスチャブロックに割り当てられたカラーについての情報を圧縮テクスチャブロックから獲得し、前記ビット支援モードに基づいて、前記複数の隣接するテクスチャブロックに割り当てられたカラーについての情報を使用するか否かということを判断し、前記判断結果によって、前記複数の隣接するテクスチャブロックのうちそれぞれのテクスチャブロックに割り当てられた前記カラーについての情報に基づいて、前記原本テクスチャブロックを構成するテクセルを生成する少なくとも１つのプロセッサと、を含み、
前記ビット支援モード及び前記情報は、第１圧縮パラメータ及び第２圧縮パラメータであるテクスチャ圧縮解除装置。
【請求項１７】
前記ビット支援モードは、支援ビットを提供する第１テクスチャブロック、または前記支援ビットを提供される第２テクスチャブロックを示し、
前記支援ビットは、前記隣接したテクスチャブロックに含まれるカラーのうち、前記複数の隣接するテクスチャブロックの隣接するテクスチャブロックに割り当てられないカラーについての情報を保存することを特徴とする請求項１６に記載のテクスチャ圧縮解除装置。
【請求項１８】
前記少なくとも１つのプロセッサは、
前記ビット支援モードが、前記支援ビットを提供される前記第２テクスチャブロックであるということを示す場合、前記複数の隣接したテクスチャブロックに割り当てられた前記カラーについての情報を使用すると判断し、前記原本テクスチャブロックに割り当てられた前記少なくとも１つのカラーについての情報、及び前記支援ビットに保存された前記隣接したテクスチャブロックに含まれたカラーのうち、前記複数の隣接するテクスチャブロックの隣接するテクスチャブロックに割り当てられないカラーについての情報に基づいて、テクスチャブロックを構成するテクセルを生成することを特徴とする請求項１７に記載のテクスチャ圧縮解除装置。
【請求項１９】
前記少なくとも１つのプロセッサは、
前記テクスチャブロックを構成するテクセルのうちいずれか一部に対して、前記支援ビットに保存された、前記隣接したテクスチャブロックに含まれたカラーのうち、前記隣接するテクスチャブロックに割り当てられない前記カラーについての情報に基づいて、前記テクスチャブロックを構成するテクセルを生成することを特徴とする請求項１７に記載のテクスチャ圧縮解除装置。
【請求項２０】
前記各テクスチャブロックに割り当てられたカラーについての情報は、前記各テクスチャブロックを構成するテクセルの代表値、及び各テクセルに対応するカラー値を獲得するのに利用されるインデックスまたは加重値であることを特徴とする請求項１６に記載のテクスチャ圧縮解除装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テクスチャ圧縮方法及びテクスチャ圧縮装置、並びにそれに対応するテクスチャ圧縮解除方法及びテクスチャ圧縮解除装置に関する。
【背景技術】
【０００２】
１つのテクスチャを構成する複数個のテクスチャブロックは、それぞれ同一ビット数で圧縮される。テクスチャブロックのサイズが４ｘ４である場合、１つのテクスチャブロックは、総１６個のテクセルを含む。その場合、１つのテクスチャブロックは、最大１６個、最小１個のカラーを有することができるにもかかわらず、全てのテクスチャブロックは、同一ビット数で圧縮されるので、一部テクスチャブロックは、オリジナルテクスチャブロックに含まれた全てのカラーについての情報を圧縮するためのビット数が不足したり、反対に残ったりもする。その結果、一部テクスチャブロックは、オリジナルテクスチャブロックに含まれた全てのカラーを再現することができなかったり、不要なカラーまで圧縮したりもする。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
本発明が解決しようとする課題は、各テクスチャブロックのカラー分布に基づいて、既定の圧縮ビット数でテクスチャブロックに含まれた全てのカラーを再現することができないテクスチャブロックの一部カラー情報を、既定の圧縮ビット数より少ないビット数で、テクスチャブロックに含まれた全てのカラーを再現することができるテクスチャブロックの圧縮データビットに保存されるように圧縮するテクスチャ圧縮方法及びテクスチャ圧縮装置、並びにそれに対応するテクスチャ圧縮解除方法及びテクスチャ圧縮解除装置を提供することである。
【課題を解決するための手段】
【０００４】
第１側面によるテクスチャ圧縮方法は、テクスチャを構成するテクスチャブロックのカラー分布に基づいて、隣接するテクスチャブロック間の支援関係を分析する段階と、前記テクスチャブロック間の支援関係を示すビット支援モードと、各テクスチャブロックに割り当てられるカラーについての情報と、を決定する段階と、前記決定されたビット支援モードと、前記各テクスチャブロックに割り当てられるカラーについての情報と、を圧縮パラメータにする圧縮テクスチャブロックを出力する段階と、を含む。
【０００５】
第２側面によって、前記テクスチャ圧縮方法をコンピュータで実行させるためのプログラムを記録したコンピュータ読取り可能記録媒体が提供される。
【０００６】
第３側面によるテクスチャ圧縮装置は、コンピュータ実行可能命令（computer  executable  instruction）を保存するメモリ；及び前記コンピュータ実行可能命令を実行することにより、テクスチャを構成するテクスチャブロックのカラー分布に基づいて、隣接するテクスチャブロック間の支援関係を分析し、前記テクスチャブロック間の支援関係を示すビット支援モードと、各テクスチャブロックに割り当てられるカラーについての情報と、を決定し、前記決定されたビット支援モードと、前記各テクスチャブロックに割り当てられるカラーについての情報と、を圧縮パラメータにする圧縮テクスチャブロックを出力する少なくとも１つのプロセッサ；を含む。
【０００７】
第４側面によるテクスチャ圧縮解除方法は、圧縮テクスチャブロックから、圧縮パラメータである、隣接するテクスチャブロック間の支援関係を示すビット支援モードと、テクスチャブロックに割り当てられたカラーについての情報と、を獲得する段階と、前記ビット支援モードに基づいて、前記隣接するテクスチャブロックに割り当てられたカラーについての情報を使用するか否かということを判断する段階と、前記判断結果によって、各テクスチャブロックに割り当てられたカラーについての情報に基づいて、テクスチャブロックを構成するテクセルを生成する段階と、を含む。
【０００８】
第５側面によって、前記テクスチャ圧縮解除方法をコンピュータで実行させるためのプログラムを記録したコンピュータ読取り可能記録媒体が提供される。
【０００９】
第６側面によるテクスチャ圧縮解除装置は、コンピュータ実行可能命令を保存するメモリ；及び前記コンピュータ実行可能命令を実行することにより、圧縮テクスチャブロックから、圧縮パラメータである、隣接するテクスチャブロック間の支援関係を示すビット支援モードと、テクスチャブロックに割り当てられたカラーについての情報と、を獲得し、前記ビット支援モードに基づいて、前記隣接するテクスチャブロックに割り当てられたカラーについての情報を使用するか否かということを判断し、前記判断結果によって、各テクスチャブロックに割り当てられたカラーについての情報に基づいて、テクスチャブロックを構成するテクセルを生成する少なくとも１つのプロセッサ；を含む。
【図面の簡単な説明】
【００１０】
【図１】一実施形態によるグラフィック処理装置を示した図である。
【図２】グラフィック処理装置において、三次元グラフィックスを処理する過程について説明する図である。
【図３】テクスチャブロックの圧縮、及び圧縮テクスチャブロック（compressed  texture  block）の圧縮データフォーマットについて説明するための図である。
【図４】一実施形態によるテクスチャ処理装置の構成を示したブロック図である。
【図５】テクスチャブロック間の支援関係を示すビット支援モードについての情報を含む圧縮テクスチャブロックの圧縮データフォーマットについて説明するための図である。
【図６】一実施形態によるテクスチャ処理装置の動作について説明するための図である。
【図７】圧縮解除部のパーザ動作について説明するための図である。
【図８】テクスチャブロック間の支援関係を示すビット支援モードの一例について説明するための図である。
【図９】隣接したテクスチャブロックに対して、ビット支援モードによって、隣接したテクスチャブロックに支援ビットを提供する一例について説明するための図である。
【図１０】隣接したテクスチャブロックに対して、ビット支援モードによって、隣接したテクスチャブロックに支援ビットを提供する一例について説明するための図である。
【図１１】隣接したテクスチャブロックに対して、ビット支援モードによって、隣接したテクスチャブロックに支援ビットを提供する一例について説明するための図である。
【図１２】テクスチャブロック間の支援関係を示すビット支援モードの他の例について説明するための図である。
【図１３】一実施形態によるテクスチャ圧縮装置の構成を示したブロック図である。
【図１４】一実施形態によるテクスチャ圧縮解除装置の構成を示したブロック図である。
【図１５】一実施形態によるテクスチャ圧縮方法について説明するためのフローチャートである。
【図１６】一実施形態によるテクスチャ圧縮解除方法について説明するためのフローチャートである。
【発明を実施するための形態】
【００１１】
以下、添付された図面を参照しながら、ただ例示のための実施形態について詳細に説明する。下記実施形態は、単に技術的内容を具体化するためのものであり、権利範囲を制限したり限定したりするものではないということはいうまでもない。詳細な説明、及び実施形態から、当該技術分野の当業者であれば容易に類推するものは、権利範囲に属すると解釈される。
【００１２】
本明細書で使用される「構成される」または「含む」というような用語は、明細書上に記載された多くの構成要素、または多くの段階を必ずしもいずれも含むものであると解釈されるものではなく、そのうち、一部構成要素または一部段階は、含まれないこともあり、または追加的な構成要素または段階をさらに含んでもよいと解釈されるものである。
【００１３】
また、本明細書で使用される「第１」または「第２」というように、序数を含む用語は、多様な構成要素についての説明に使用されるが、前記構成要素は、前記用語によって限定されるものではない。前記用語は、１つの構成要素を他の構成要素から区別する目的のみに使用される。
【００１４】
以下で説明する実施形態は、テクスチャ圧縮方法及びテクスチャ圧縮装置、並びにそれに対応するテクスチャ圧縮解除方法及びテクスチャ圧縮解除装置に係わるものであり、当該技術分野に属する当業者に公知の事項については、詳細な説明を省略する。
【００１５】
図１は、一実施形態によるグラフィック処理装置１００を示した図である。図１に図示された構成要素以外に、他の汎用的な構成要素がさらに含まれてもよいということは、関連技術分野の当業者であれば、理解することができるであろう。
【００１６】
図１を参照すれば、グラフィック処理装置１００は、ラスタライザ（rasterizor）１１０、シェーダコア（shader  core）１２０、テクスチャ処理装置（texture  processing  unit）１３０、ピクセル処理装置（pixel  processing  unit）１４０、タイルバッファ（tile  buffer）１５０を含み得る。グラフィック処理装置１００は、バス（bus）３００を介して、外部のメモリ２００とデータを送受信することができる。
【００１７】
図１に図示されたグラフィック処理装置１００は、三次元グラフィックスを処理する装置であって、タイルに基づいたレンダリング（ＴＢＲ：tile  based  rendering）方式を使用することができる。言い替えれば、グラフィック処理装置１００は、１つのフレームに該当する三次元グラフィックスを生成するために、一定サイズに分割された複数個のタイルを、ラスタライザ１１０、シェーダコア１２０、ピクセル処理装置１４０を通過させ、処理結果をタイルバッファ１５０に保存することができる。グラフィック処理装置１００は、フレームを構成する全てのタイルに対して、ラスタライザ１１０、シェーダコア１２０及びピクセル処理装置１４０で構成されるチャネルを複数個利用し、並列処理することができる。グラフィック処理装置１００は、１つのフレームに該当する複数個のタイルが処理されると、タイルバッファ１５０に保存された処理結果を、メモリ２００のフレームバッファ（図示せず）に伝送することができる。
【００１８】
シェーダコア１２０は、ピクセルシェーダ（pixel  shader）を含んでもよい。シェーダコア１２０は、バーテックスシェーダ（vertex  shader）をさらに含んだ形態であってもよく、バーテックスシェーダとピクセルシェーダとが統合された形態の統合シェーダであってもよい。シェーダコア１２０がバーテックスシェーダの機能を遂行することができる場合、オブジェクトを示すプリミティブ（primitive）を生成し、ラスタライザ１１０に伝達することができる。
【００１９】
ラスタライザ１１０は、幾何変換過程を経て、バーテックスシェーダから生成されたプリミティブに対してラスタ化（rasterization）を行うことができる。
【００２０】
シェーダコア１２０は、ラスタライザ１１０からラスタ化されたプリミティブを伝達され、ピクセルシェーディングを行うことができる。シェーダコア１２０は、ラスタ化を経て生成されたプリミティブのフラグメント（fragment）を含むタイルに対して、タイルを構成する全てのピクセルの色相を決定するピクセルシェーディングを行うことができる。シェーダコア１２０は、ピクセルシェーディング過程において、立体的であって臨場感ある三次元グラフィックスを生成するために、テクスチャを利用して生成されたピクセル値を使用することができる。
【００２１】
シェーダコア１２０が所望するピクセルに対応するピクセル値伝達をテクスチャ処理装置１３０に要請すると、テクスチャ処理装置１３０は、あらかじめ準備したテクスチャを処理して生成されたピクセル値を伝達する。該テクスチャは、テクスチャ処理装置１３０の内部または外部の所定空間、またはグラフィック処理装置１００外部のメモリ２００に保存されている。テクスチャ処理装置１３０は、シェーダコア１２０で要請したピクセル値生成に利用されるテクスチャが、テクスチャ処理装置１３０内部の所定空間にない場合、テクスチャ処理装置１３０外部の空間またはメモリ２００から、テクスチャを持ってきて使用することができる。
【００２２】
ピクセル処理装置１４０は、１つのタイル内の同じ位置に対応するピクセルに対して、デプステストのような過程を経て、最終的に表示されるピクセル値を決定し、１つのタイルに該当する全てのピクセル値を決定することができる。
【００２３】
タイルバッファ１５０は、ピクセル処理装置１４０から伝達された１つのタイルに該当する全てのピクセル値を保存することができる。１つのフレームを構成する全てのタイルに対するグラフィック処理過程が完了すると、タイルバッファ１５０に保存された処理結果が、メモリ２００のフレームバッファに伝達される。
【００２４】
図２は、グラフィック処理装置１００で三次元グラフィックスを処理する過程について説明する図である。
【００２５】
三次元グラフィックスを処理する過程は、大きく見て、幾何変換、ラスタ化、ピクセルシェーディングの３段階に分けることができ、以下、図２を参照し、さらに細部的な過程について説明する。図２を参照すれば、段階１１ないし段階１８を介して、三次元グラフィックスを処理する過程を示す。
【００２６】
段階１１は、バーテックス（vertices）を生成する段階である。該バーテックスは、三次元グラフィックスに含まれたオブジェクト（object）を示すために生成される。
【００２７】
段階１２は、生成されたバーテックスをシェーディング（shading）する段階である。バーテックスシェーダ（vertex  shader）は、段階１１で生成されたバーテックスの位置を指定することにより、バーテックスに対するシェーディングを行うことができる。
【００２８】
段階１３は、プリミティブを生成する段階である（generating  primitives）。該プリミティブは、バーテックスを利用して形成される点、線、多角形（polygon）などを意味する。一例として、該プリミティブは、バーテックスを連結して形成された三角形でも示される。
【００２９】
段階１４は、プリミティブをラスタ化する段階である（vertex  rasterization）。該プリミティブのラスタ化は、プリミティブをフラグメントに分割することを意味する。該フラグメントは、プリミティブに対してグラフィック処理を行うための基本単位でもある。該プリミティブは、バーテックスに係わる情報だけを含むので、ラスタ化段階において、バーテックスとバーテックスとの間のフラグメントを生成することにより、三次元グラフィックスに対するグラフィック処理を行う。
【００３０】
段階１５は、ピクセルをシェーディングする段階を示す。ラスタ化によって生成された、プリミティブを構成するフラグメントは、タイルを構成するピクセルにもなる。当該分野において、フラグメント及びピクセルという用語は、場合によって混用しても使用される。例えば、ピクセルシェーダ（pixel  shader）は、フラグメントシェーダとも呼ばれる。一般的には、プリミティブを構成するグラフィック処理の基本単位をフラグメントと呼び、そして、ピクセルシェーディングからのグラフィック処理の基本単位をピクセルと呼ぶ。ピクセルシェーディングでは、ピクセルの色を決定することができる。
【００３１】
段階１６は、ピクセルの色を決定するためのテクスチャリング（texturing）段階を示す。該テクスチャリングは、ピクセルの色を決定するとき、あらかじめ準備されたイメージ、すなわち、テクスチャを利用してピクセルの色を決定する過程である。実世界の多様な色相と、パターンの様子とを表現するために、それぞれのピクセルの色相を計算して決定することは、グラフィック処理に必要なデータ演算量と、グラフィック処理時間とを非常に増長させるので、あらかじめ準備されたテクスチャを利用して、ピクセルの色相を決定するのである。例えば、オブジェクトの表面色相を、テクスチャという別途の二次元映像に保存し、オブジェクトの画面上の位置及び大きさなどによって、保存されたテクスチャを拡大及び縮小したり、多様な解像度を有するテクスチャを利用してテクセル値を混合したりすることにより、ピクセルの色相を決定することができる。
【００３２】
さらに具体的には、ピクセルシェーディング過程において、さらに迅速な三次元グラフィックス処理のために、あらかじめ準備されたテクスチャを利用して生成されたピクセル値を使用することができる。このとき、オブジェクトの大きさに適応的に対応するように、互いに異なる解像度を有する複数個のテクスチャをあらかじめ準備しておき、それらを組み合わせてピクセル値を生成することもできる。このとき、互いに異なる解像度を有する、あらかじめ準備されたテクスチャをミップマップ（mipmap）という。例えば、あらかじめ準備された２つのミップマップの中間解像度を有するオブジェクトのピクセル値を生成するために、２つのミップマップから、オブジェクトに対応する位置のテクセル値を抽出し、それらをフィルタリングすることにより、オブジェクトを構成するピクセル値を生成することができる。
【００３３】
段階１７は、テスト及びミキシング（testing  and  mixing）段階を示す。タイル内の同じ位置に対応するピクセルに対して、デプステストのような過程を経て、最終的に表示されるピクセル値を決定し、１つのタイルに該当するピクセル値を決定することができる。かような過程を経て生成された複数個のタイルをミキシングし、１つのフレームに該当する三次元グラフィックスを生成することができる。
【００３４】
段階１８は、段階１１ないし段階１７を介して生成されたフレームをフレームバッファ（frame  buffer）に保存し、フレームバッファに保存されたフレームを、ディスプレイ装置を介して表示する段階を示す。
【００３５】
再び図１を参照すれば、メモリ２００は、圧縮された形態のテクスチャを保存したり、グラフィック処理装置１００で生成されたフレームを、メモリ２００内のフレームバッファに保存したりすることができる。メモリ２００は、グラフィック処理装置１００のレンダリング結果として生成されたフレームを、メモリ２００内のフレームバッファに保存することができる。メモリ２００は、テクスチャ処理装置１３０の要請によって、テクスチャ処理装置１３０にテクスチャを伝送することができる。
【００３６】
一方、テクスチャ処理装置１３０内の所定空間に、多様なオブジェクトに係わる全てのテクスチャ、及び各テクスチャに対応するミップマップを保存することは、物理的に不可能である。該テクスチャ保存に必要な空間を最小化し、テクスチャの伝送を効率的に行うために、三次元グラフィックスレンダリングでは、一般的に、テクスチャを圧縮し、テクスチャの保存または伝送を行う。１つのテクスチャは、サイズが同一である複数個のテクスチャブロックに分割され、該テクスチャブロックそれぞれは、同一ビット数で圧縮される。以下、テクスチャブロックのサイズが４Ｘ４である場合を例として挙げ、テクスチャブロックの圧縮過程と圧縮解除過程とについて説明する。
【００３７】
図３は、テクスチャブロックの圧縮及び圧縮テクスチャブロック（compressed  texture  block）の圧縮データフォーマットについて説明するための図である。
【００３８】
テクスチャは、ハードウェアリソースの要求、及び通信環境の要求を満足させるために、三次元グラフィックス処理過程で圧縮された形態に保存されることが一般的である。一般的な圧縮方式は、テクスチャを構成するテクセルに対して、所定ブロック単位のテクセル、すなわち、テクスチャブロックに対して行われる。
【００３９】
一般的なテクスチャ圧縮標準は、圧縮するテクスチャブロックに対して、テクスチャブロック内の全てのテクセルを代表する代表値（representative  value）を決め、代表値選択情報を示すインデックス（index）、または代表値に適用する加重値（weight）を各テクセルごとに決め、それらを圧縮データとして保存する方式を使用する。
【００４０】
例えば、テクスチャブロックのサイズが４Ｘ４である場合、１つのテクスチャブロックは、総１６個のテクセルを含む。１つのテクスチャブロックは、最大１６個、最小１個のカラーを有することができるにもかかわらず、全てのテクスチャブロックは、圧縮過程において、同一ビット数で圧縮されるので、テクスチャブロックに含まれた全てのテクセルを代表するカラー値を代表値として決定して使用することができる。一例として、１６個のテクセルが総４種カラーからなっている場合、４種カラー値それぞれを代表値として決定することができ、４種カラー値のうちいずれか一つを選択した情報を示すインデックスを、各テクセルごとに決定することができる。他の一例として、１６個のテクセルのカラー値をサイズ順に配列したとき、エンドポイント（endpoint）値に該当する最大値及び最小値それぞれを代表値として決定することができ、それぞれのテクセル値を表現するために、２つのエンドポイント値に適用する加重値を各テクセルごとに決定することができる。
【００４１】
図３を参照すれば、４Ｘ４サイズのテクスチャブロックに対する圧縮テクスチャブロックの形態と、圧縮データのフォーマットとを知ることができる。図３に図示されているように、圧縮テクスチャブロックは、２つの代表値と、各テクセルに係わるインデックスまたは加重値と、を保存した形態でもある。２つの代表値に対して、３２ビットを割り当て、１６個のテクセルそれぞれに対して、インデックスまたは加重値についての情報を示すための２ビットを割り当て、１つのテクスチャブロックが、総６４ビットの圧縮データに圧縮されるということが分かる。ただし、図３に図示された圧縮テクスチャブロックは、テクスチャ圧縮標準のうち１つの方式によるものであり、それに限定されるものではない。
【００４２】
一方、圧縮方式の逆過程に基づけば、圧縮テクスチャブロックを圧縮解除し、テクスチャブロックを復元することができる。ただし、前述のように、テクスチャを構成するそれぞれのテクスチャブロックは、互いに異なる個数のカラー値を有することができるにもかかわらず、全てのテクスチャブロックは、圧縮過程において同一ビット数で圧縮されるので、一部テクスチャブロックは、オリジナルテクスチャブロックに含まれた全てのカラーについての情報を正確に圧縮するためのビット数が不足したり、反対にビット数が残ったりもする。その結果、一部テクスチャブロックは、オリジナルテクスチャブロックに含まれた全てのカラーを完璧に再現することができず、他の一部テクスチャブロックは、不要なカラーまで圧縮してしまう。以下、本開示においては、各テクスチャブロックのカラー分布に基づいて、既定の圧縮ビット数で、テクスチャブロックに含まれた全てのカラーを再現することができないテクスチャブロックの一部カラー情報を、既定の圧縮ビット数より少ないビット数で、テクスチャブロックに含まれた全てのカラーを再現することができるテクスチャブロックの圧縮データビットの支援ビットに保存されるように、圧縮及び圧縮解除する方式について説明する。
【００４３】
図４は、一実施形態によるテクスチャ処理装置１３０の構成を示したブロック図である。図４に図示されたテクスチャ処理装置１３０の圧縮解除部１３３は、テクスチャ圧縮解除装置の一例に該当し、該テクスチャ圧縮解除装置は、図４に図示されているところと異なり、テクスチャ処理装置１３０外部に、独立したモジュール形態に具現されてもよい。
【００４４】
図４を参照すれば、テクスチャ処理装置１３０は、制御部１３１、圧縮解除部（decompressor）１３３、テクスチャフィルタ１３５を含み得る。
【００４５】
制御部１３１は、テクスチャ処理装置１３０を制御するために必要な演算を行ったり、圧縮解除部１３３及びテクスチャフィルタ１３５を制御したりし、テクスチャ処理装置１３０の全般的な制御を担当することができる。
【００４６】
圧縮解除部１３３は、テクスチャ処理装置１３０が、テクスチャ処理装置１３０の外部のメモリ２００から、圧縮されたテクスチャを受信する場合、圧縮解除を行うことができる。一般的なテクスチャ圧縮標準において、該テクスチャは、テクスチャブロックに圧縮されるが、圧縮解除部１３３は、圧縮テクスチャブロックを受信することができる。
【００４７】
このとき、圧縮テクスチャブロックは、テクスチャを構成するテクセルが、所定ブロック単位に圧縮された状態のテクスチャブロックを意味する。一方、該テクスチャブロックは、圧縮される前のテクスチャを構成するテクセルのうち、圧縮の対象になる所定ブロック単位のテクセル、または圧縮テクスチャブロックを完全に圧縮解除して生成されるテクセルを意味する。一方、１つのテクスチャは、少なくとも１つのテクスチャブロックを含んでもよい。１つの圧縮されたテクスチャは、少なくとも１つの圧縮テクスチャブロックを含んでもよい。言い替えれば、該テクスチャは、少なくとも１つの圧縮テクスチャブロックにも圧縮される。
【００４８】
圧縮解除部１３３は、圧縮テクスチャブロックから圧縮解除されたテクスチャブロックを生成することができる。圧縮解除部１３３は、圧縮テクスチャブロックから、圧縮過程に利用された圧縮パラメータを抽出する過程と、抽出された圧縮パラメータから、テクセル値を生成する過程と、を遂行することができる。圧縮解除部１３３は、テクセル値を生成するために、圧縮パラメータに基づいて、ある値を求めたり、補間（interpolation）を行い、ある値を獲得したりする。
【００４９】
具体的には、圧縮解除部１３３は、圧縮テクスチャブロックに基づいて、テクスチャブロックを構成するテクセルの代表値、テクスチャブロックを構成する各テクセルのためのインデックスまたは加重値、及びテクスチャブロック間の支援関係を示すビット支援モードについての情報を獲得することができる。
【００５０】
該代表値は、テクスチャブロックを構成するテクセルの値に基づいて、任意の値として決定することができる。例えば、該代表値は、テクスチャブロックを構成するテクセルのカラー値のうち出現頻度が最も高いもの、あるいは所定規則によって配列したとき、エンドポイント値にも該当する。
【００５１】
各テクセルに係わるインデックスは、代表値選択についての情報でもある。例えば、該代表値が第１代表値及び第２代表値の２個である場合、任意の第１テクセルに係わる１ビットのインデックスビット値が「０」であるならば、第１代表値を第１テクセルに係わるテクセル値に選択し、「１」であるならば、第２代表値を第１テクセルに係わるテクセル値に選択する。各テクセルに係わる加重値は、加重値自体であるか、あるいは加重値をエンコーディングした情報、または加重値に係わるインデックスにもなる。例えば、各テクセルごとに加重値が与えられた場合、第１テクセルのテクセル値は、第１テクセルに係わる加重値に該当する値と、テクスチャブロックの代表値とを利用して、加重平均した値となる。
【００５２】
圧縮テクスチャブロックに基づいて獲得される代表値と、インデックスまたは加重値は、テクスチャ圧縮標準の種類によっても異なる。言い替えれば、圧縮標準の種類によって、代表値の個数、または代表値決定方式が異なり、それによって、インデックスを使用したり加重値を使用したりする。
【００５３】
テクスチャブロック間の支援関係を示すビット支援モードが、圧縮されたテクスチャブロックの圧縮データビットに含められ得る。該圧縮データビットにおいて、ビット支援モードに割り当てられたビット数は、２ビットまたは３ビットにもなるが、それらに限定されるものではない。
【００５４】
図５は、テクスチャブロック間の支援関係を示すビット支援モードについての情報を含む圧縮テクスチャブロックの圧縮データフォーマットについて説明するための図である。図５に図示された圧縮テクスチャブロックの圧縮データフォーマットを見れば、ビット支援モードについての情報は、ｍビットが割り当てられ、エンドポイントカラーのような代表値については、ｎビットが割り当てられ、各テクセルのインデックスまたは加重値については、ｌビットがそれぞれ割り当てられ、ｍ＋ｌ＋ｎは、総６４ビットにもなる。
【００５５】
再び図４を参照すれば、圧縮解除部１３３は、圧縮テクスチャブロックから、圧縮過程に利用された圧縮パラメータを抽出する過程を遂行することができる。圧縮解除部１３３は、代表値、インデックスまたは加重値、及びテクスチャブロック間の支援関係を示すビット支援モードのような圧縮パラメータを抽出することができる。圧縮テクスチャブロックが他のテクスチャブロックのために支援ビットを提供する場合、圧縮パラメータから支援ビットをさらに抽出することができる。
【００５６】
圧縮解除部１３３は、抽出された圧縮パラメータを、テクスチャキャッシュに保存することができる。
【００５７】
圧縮解除部１３３は、代表値、及びインデックスまたは加重値に基づいて、テクスチャブロックを構成する各テクセルのカラー値を獲得することができる。圧縮解除部１３３は、複数個のテクセル値を獲得するために、並列処理を行うことができる。
【００５８】
テクスチャフィルタ１３５は、圧縮解除部１３３で生成されたテクセル値を利用して、テクスチャフィルタリングを行うことができる。テクセル値のフィルタリングは、テクセル値を混合（blending）し、ピクセルに対応するカラー値を求めることを意味する。例えば、テクスチャフィルタ１３５は、テクセルアドレスが含まれるテクスチャ空間上の一部領域に含まれたテクセル値の平均を求めることにより、ピクセルに対応するカラー値を獲得することができる。テクスチャフィルタ１３５でフィルタリングされたテクセル値は、シェーダコア１２０の要請に対する応答として、シェーダコア１２０に伝送される。テクスチャフィルタ１３５で遂行するテクスチャフィルタリング方式は、トリリニア（tri-linear）フィルタリング方式を含んだ多様なフィルタリング方式でもある。
【００５９】
図６は、一実施形態によるテクスチャ処理装置１３０の動作について説明するための図である。図６に図示されたテクスチャ処理装置１３０の圧縮解除部１３３は、テクスチャ圧縮解除装置の一例に該当し、テクスチャ圧縮解除装置は、図６に図示されているところと異なり、テクスチャ処理装置１３０外部に独立したモジュール形態に具現されてもよい。
【００６０】
図６を参照すれば、テクスチャ処理装置１３０は、制御部１３１、圧縮解除部１３３、テクスチャフィルタ１３５を含み得る。圧縮解除部１３３は、パーザ１３３−１、テクスチャキャッシュ１３３−２、テクセル生成部１３３−３を含み得る。テクスチャキャッシュ１３３−２は、図６に図示されているように圧縮解除部１３３内に含まれてもよいし、圧縮解除部１３３外部に位置してもよい。
【００６１】
パーザ１３３−１は、圧縮テクスチャブロックに基づいて、テクスチャブロックを構成するテクセルの代表値、テクスチャブロックを構成する各テクセルに係わるインデックスまたは加重値、及びテクスチャブロック間の支援関係を示すビット支援モード、支援ビットを獲得することができる。すなわち、圧縮解除部１３３に圧縮テクスチャブロックが入力されると、パーザ１３３−１は、受信された圧縮テクスチャブロックに基づいて、代表値、インデックスまたは加重値、及びビット支援モードについての情報を獲得することができ、ビット支援モードが、隣接したテクスチャブロックに対して支援ビットを提供する圧縮テクスチャブロックであるということを示す場合、圧縮テクスチャブロックの圧縮データビットから支援ビットをさらに獲得することができる。
【００６２】
図７は、圧縮解除部１３３のパーザ１３３−１の動作について説明するための図である。
【００６３】
パーザ１３３−１は、圧縮テクスチャブロックの圧縮データビットから、テクスチャブロック間の支援関係を示すビット支援モードについての情報を獲得することができる。パーザ１３３−１は、圧縮テクスチャブロックの圧縮データビットから、テクスチャブロックを構成するテクセルの代表値と、テクスチャブロックを構成する各テクセルに係わるインデックスまたは加重値とを獲得することができる。各テクセルに係わるインデックスまたは加重値は、テクスチャブロックを構成する各テクセルの個数と同一でもある。パーザ１３３−１は、ビット支援モードが、隣接したテクスチャブロックに対して、支援ビットを提供する圧縮テクスチャブロックであるということを示す場合、支援ビットをさらに獲得することができる。支援ビットは、隣接したテクスチャブロックで使用することができるカラー値と、インデックスまたは加重値と、を含んでもよい。パーザ１３３−１は、圧縮解除部１３３に受信された圧縮テクスチャブロックにおいて、圧縮データビットのフォーマットを把握し、ビット支援モード、代表値、インデックスまたは加重値、支援ビットに保存された情報などを獲得することができる。
【００６４】
図７では、説明の便宜上、４Ｘ４のテクスチャブロックが圧縮された圧縮テクスチャブロックであるということを前提に説明する。４Ｘ４のテクスチャブロックは、テクセルＴ０からテクセルＴ１５まで総１６個のテクセルを含み得る。
【００６５】
図７に図示された圧縮テクスチャブロックの圧縮データビットには、テクスチャブロック間の支援関係を示すビット支援モードＭ、２つの代表値であるＲＶ０及びＲＶ１、１６個の各テクセルに係わる加重値Ｗ０ないしＷ１５、支援ビットＳＢを含んでいるということが分かる。かような圧縮テクスチャブロックが圧縮解除部１３３に受信されると、受信された圧縮テクスチャブロックに基づいて、ビット支援モード、代表値、インデックスまたは加重値、及び支援ビットを獲得し、獲得された値は、テクスチャキャッシュ１３３−２またはローカルメモリに保存される。
【００６６】
具体的には、パーザ１３３−１は、図７に図示されているように、圧縮テクスチャブロックに含まれたＭ、ＲＶ０、ＲＶ１、Ｗ０ないしＷ１５、ＳＢをパージングすることができる。パーザ１３３−１は、ＲＶ０とＲＶ１とをパージングし、テクスチャブロックを構成するテクセルの代表値として処理することができる。パーザ１３３−１は、Ｗ０ないしＷ１５をパージングし、テクスチャブロックを構成する各テクセルに係わる加重値として処理することができる。パーザ１３３−１は、圧縮データビットからパージングされたビット支援モードＭの値によって、支援ビットＳＢをさらにパージングするか否かということを決定することができる。
【００６７】
再び図６を参照すれば、テクスチャキャッシュ１３３−２は、パーザ１３３−１で獲得された、ビット支援モード、代表値、インデックスまたは加重値、及び支援ビットを保存することができる。言い替えれば、テクスチャキャッシュ１３３−２は、圧縮テクスチャブロック全体に対応するテクセルの代表値、テクスチャブロックを構成する各テクセルに係わるインデックスまたは加重値、及び隣接したテクスチャブロック間の支援関係を示すビット支援モードによる支援ビットを保存することができる。第１圧縮テクスチャブロックからパージングされた値は、テクスチャキャッシュ１３３−２に保存された後、第１圧縮テクスチャブロックに隣接した第２圧縮テクスチャブロックの圧縮解除時に利用される。
【００６８】
テクセル生成部１３３−３は、代表値、インデックスまたは加重値、支援ビットに保存された情報に基づいて、テクスチャブロックに含まれるテクセルを生成することができる。具体的には、テクセル生成部１３３−３は、テクスチャキャッシュ１３３−２に保存された代表値、インデックスまたは加重値、支援ビットに保存された情報を利用して、圧縮テクスチャブロックのテクセルを復元することができる。
【００６９】
ただし、前述のように、テクスチャを構成するそれぞれのテクスチャブロックは、互いに異なる個数のカラー値を有することができるにもかかわらず、全てのテクスチャブロックは、圧縮過程において、同一ビット数で圧縮される。その結果、一部テクスチャブロックは、オリジナルテクスチャブロックに含まれた全てのカラーについての情報を正確に圧縮するためのビット数が不足し、オリジナルテクスチャブロックに含まれた全てのカラーを完璧に再現することができない。例えば、４Ｘ４サイズのテクスチャブロックは、最大１６個のカラーを有することができるが、図７に図示されているように、テクスチャブロックに含まれた実際カラー数と関係なく、決められた圧縮方式によって、代表値を二つだけ選択するようになっているのであるならば、実際多様なカラー数が含まれたテクスチャブロックは、圧縮解除時、オリジナルテクスチャブロックと差が多く生じてしまう。一方、４Ｘ４サイズのテクスチャブロックは、最小１個のカラーを有することができるが、その場合、１つのカラー値を示すことができる圧縮パラメータだけあればよいが、他のテクスチャブロックと同様に、同一圧縮データビット数で圧縮され、圧縮解除時に使用されないカラーに係わる情報まで圧縮してしまう。
【００７０】
以下、一実施形態における開示では、各テクスチャブロックのカラー分布に基づいて、既定の圧縮ビット数でテクスチャブロックに含まれた全てのカラーを再現することができないテクスチャブロックの一部カラー情報を、既定の圧縮ビット数より少ないビット数で、テクスチャブロックに含まれた全てのカラーを再現することができるテクスチャブロックの圧縮データビットの支援ビット（supporting  bit）に保存されるように、圧縮及び圧縮解除する方式について説明する。
【００７１】
図８を参照すれば、ビット支援モードが２ビットで表現される場合であり、ビット支援モードが、「００」、「０１」、「１０」、「１１」の総４種を有するということが分かる。
【００７２】
例えば、第１テクスチャブロックのビット支援モードが「００」であり、隣接したテクスチャブロックの支援ビットモードが「００」ではない場合、隣接したテクスチャブロックの支援ビットに保存されたカラーについての情報を、第１テクスチャブロックの圧縮解除に利用される代表値または加重値として使用することができる。言い替えれば、第１テクスチャブロックのビット支援モードが「００」である場合、第１テクスチャブロックは、ビット支援モードが「００」ではない隣接したテクスチャブロックから、第１テクスチャブロックの圧縮解除に利用される代表値と、インデックスまたは加重値とを提供される。
【００７３】
第１テクスチャブロックのビット支援モードが「０１」である場合、第１テクスチャブロックは、隣接した右側のテクスチャブロックに、圧縮解除に利用される代表値と、インデックスまたは加重値とを提供することができる。
【００７４】
第１テクスチャブロックのビット支援モードが「１０」である場合、第１テクスチャブロックは、隣接した左側のテクスチャブロックに、圧縮解除に利用される代表値と、インデックスまたは加重値とを提供することができる。
【００７５】
第１テクスチャブロックのビット支援モードが「１１」である場合、第１テクスチャブロックは、隣接した左側及び右側のテクスチャブロックいずれにも、圧縮解除に利用される代表値と、インデックスまたは加重値とをそれぞれ提供することができる。
【００７６】
結果として、第１テクスチャブロックのビット支援モードが「００」である場合、隣接したテクスチャブロックのビット支援モードが「００」でなければ、第１テクスチャブロックは、アクセプタテクスチャブロックであるといえる。第１テクスチャブロックのビット支援モードが「０１」、「１０」、「１１」である場合、第１テクスチャブロックは、ドナーテクスチャブロックであるといえる。
【００７７】
図９ないし図１１は、隣接したテクスチャブロックに対して、ビット支援モードによって、隣接したテクスチャブロックに支援ビットを提供する一例について説明するための図である。
【００７８】
先に図８で説明した２ビットのビット支援モード、及び支援ビットを利用して、テクスチャを構成する任意の隣接したテクスチャブロックに対する圧縮方式及び圧縮解除方式について説明する。
【００７９】
図９に図示されたテクスチャブロック「Ａ」、テクスチャブロック「Ｂ」及びテクスチャブロック「Ｃ」について述べれば、テクスチャブロック「Ａ」は、１種のカラーを有し、テクスチャブロック「Ｂ」は、６種のカラーを有し、テクスチャブロック「Ｃ」は、２種のカラーを有するということが分かる。テクスチャブロック「Ｂ」には、隣接したテクスチャブロックに比べ、多様なカラーが分布されており、テクスチャブロック「Ａ」が有するカラーと同一カラーが、テクスチャブロック「Ｂ」に存在するということが分かる。テクスチャブロック「Ｂ」が、テクスチャブロック「Ｂ」内に分布された全てのカラーに係わる情報を、与えられた圧縮データビットだけで圧縮することができず、テクスチャブロック「Ａ」が支援ビットを提供する余裕がある状態であるので、テクスチャブロック「Ｂ」は、テクスチャブロック「Ａ」から支援ビットを提供される。
【００８０】
図９に図示された例を見れば、各テクスチャブロックに対して、ビット支援モードが設定されているということが分かる。テクスチャブロック「Ａ」のビット支援モードは、「０１」であり、テクスチャブロック「Ｂ」及びテクスチャブロック「Ｃ」のビット支援モードは、「００」である。テクスチャブロック「Ａ」は、隣接した右側テクスチャブロックが支援ビットを利用するように、支援ビットを提供する。テクスチャブロック「Ｂ」の圧縮データビットに含まれていないカラーに係わる情報が、テクスチャブロック「Ａ」の支援ビットに保存されるように圧縮される。また、テクスチャブロック「Ｂ」の圧縮解除時、テクスチャブロック「Ｂ」の圧縮データビットに含まれたカラー情報と共に、テクスチャブロック「Ａ」の支援ビットに保存されたカラー情報を使用し、テクスチャブロック「Ｂ」を圧縮解除することができる。テクスチャブロック「Ａ」の支援ビットに保存されたカラー情報は、圧縮解除部１３３内のテクスチャキャッシュ１３３−２またはローカルメモリに保存されている。もし圧縮解除部１３３内のテクスチャキャッシュ１３３−２またはローカルメモリに、支援ビットに保存されたカラーに係わる情報が保存されていない場合、テクスチャブロック「Ｂ」は、テクスチャブロック「Ｂ」の圧縮データビットだけ利用して圧縮解除を行うか、あるいは外部のメモリ２００から、テクスチャブロック「Ａ」の支援ビットに保存されたカラー情報を呼んできて圧縮解除することができる。
【００８１】
図９に図示された例では、テクスチャブロック「Ｂ」を圧縮解除するとき、テクスチャブロック「Ｂ」のテクセル内において、テクスチャブロック「Ａ」と隣接した２つのカラム（column）のテクセル、すなわち、テクスチャブロック「Ｂ」の左側領域に該当する８個のテクセルそれぞれに対して、追加して２ビットのインデックスを割り当てている。２ビットのインデックスのうち１ビットは、テクスチャブロック「Ａ」の支援ビットに保存されたカラーについての情報を使用するか否かということを決定し、他の１ビットは、テクスチャブロック「Ａ」の代表値から派生する２個のカラーのうち一つを選択する。一方、テクスチャブロック「Ｃ」は、隣接したテクスチャブロック「Ｂ」のビット支援モードが「００」であるので、２つのテクスチャブロック間に同一カラーが存在しても、テクスチャブロック「Ｃ」は、テクスチャブロック「Ｂ」から、テクスチャブロック「Ｂ」のカラーについての情報を提供されない。
【００８２】
図１０に図示されたテクスチャブロック「Ａ」、テクスチャブロック「Ｂ」及びテクスチャブロック「Ｃ」について述べれば、テクスチャブロック「Ａ」は、１種のカラーを有し、テクスチャブロック「Ｂ」は、８種のカラーを有し、テクスチャブロック「Ｃ」は、２種のカラーを有するということが分かる。テクスチャブロック「Ｂ」には、隣接したテクスチャブロックに比べ、多様なカラーが分布されており、テクスチャブロック「Ａ」とテクスチャブロック「Ｃ」とが有するカラーと同一カラーが、テクスチャブロック「Ｂ」に存在するということが分かる。テクスチャブロック「Ｂ」が、テクスチャブロック「Ｂ」内に分布された全てのカラーに係わる情報を、与えられた圧縮データビットだけで圧縮することができず、テクスチャブロック「Ａ」とテクスチャブロック「Ｃ」とが支援ビットを提供する余裕がある状態であるので、テクスチャブロック「Ｂ」は、テクスチャブロック「Ａ」とテクスチャブロック「Ｃ」とから支援ビットを提供される。
【００８３】
図１０に図示された例を見れば、各テクスチャブロックに対して、ビット支援モードが設定されているということが分かる。テクスチャブロック「Ａ」のビット支援モードは、「０１」であり、テクスチャブロック「Ｂ」のビット支援モードは、「００」であり、テクスチャブロック「Ｃ」のビット支援モードは、「１０」である。テクスチャブロック「Ａ」は、隣接した右側テクスチャブロックが支援ビットを利用するように、支援ビットを提供し、テクスチャブロック「Ｃ」は、隣接した左側テクスチャブロックが支援ビットを利用するように、支援ビットを提供する。テクスチャブロック「Ｂ」の圧縮時、テクスチャブロック「Ｂ」の圧縮データビットに含まれていないカラー情報が、テクスチャブロック「Ａ」の支援ビットと、テクスチャブロック「Ｃ」の支援ビットとに保存されるように圧縮される。また、テクスチャブロック「Ｂ」の圧縮解除時、テクスチャブロック「Ｂ」の圧縮データビットに含まれたカラー情報と共に、テクスチャブロック「Ａ」及びテクスチャブロック「Ｃ」の支援ビットに保存されたカラー情報を使用し、テクスチャブロック「Ｂ」を圧縮解除することができる。テクスチャブロック「Ａ」の支援ビットに保存されたカラー情報と、テクスチャブロック「Ｃ」の支援ビットに保存されたカラー情報は、圧縮解除部１３３内のテクスチャキャッシュ１３３−２またはローカルメモリに保存されている。もし圧縮解除部１３３内のテクスチャキャッシュ１３３−２またはローカルメモリに、支援ビットに保存されたカラーに係わる情報が保存されていない場合、テクスチャブロック「Ｂ」は、テクスチャブロック「Ｂ」の圧縮データビットだけ利用して圧縮解除を行うか、あるいは外部のメモリ２００から、テクスチャブロック「Ａ」とテクスチャブロック「Ｃ」との支援ビットに保存されたカラー情報を呼んできて圧縮解除することができる。
【００８４】
図１０に図示された例では、テクスチャブロック「Ｂ」を圧縮解除するとき、テクスチャブロック「Ｂ」のテクセル内において、テクスチャブロック「Ａ」と隣接した２つのカラムのテクセル、すなわち、テクスチャブロック「Ｂ」の左側領域に該当する８個のテクセルそれぞれに対して、追加して２ビットのインデックスを割り当てている。また、テクスチャブロック「Ｂ」のテクセル内において、テクスチャブロック「Ｃ」と隣接した２つのカラムのテクセル、すなわち、テクスチャブロック「Ｂ」の右側領域に該当する８個のテクセルそれぞれに対して、追加して２ビットのインデックスを割り当てている。２ビットのインデックスのうち１ビットは、テクスチャブロック「Ａ」またはテクスチャブロック「Ｃ」の支援ビットに含まれたカラーについての情報を使用するか否かということを決定し、他の１ビットは、テクスチャブロック「Ａ」またはテクスチャブロック「Ｃ」の代表値から派生する２個のカラーのうち一つを選択する。
【００８５】
図１１に図示されたテクスチャブロック「Ａ」、テクスチャブロック「Ｂ」及びテクスチャブロック「Ｃ」について述べれば、テクスチャブロック「Ａ」は、８種のカラーを有し、テクスチャブロック「Ｂ」は、１種のカラーを有し、テクスチャブロック「Ｃ」は、８種のカラーを有するということが分かる。テクスチャブロック「Ａ」とテクスチャブロック「Ｃ」には、隣接したテクスチャブロック「Ｂ」に比べて多様なカラーが分布されており、テクスチャブロック「Ａ」とテクスチャブロック「Ｃ」が有するカラーと同一カラーがテクスチャブロック「Ｂ」に存在するということが分かる。テクスチャブロック「Ａ」とテクスチャブロック「Ｃ」がそれぞれのテクスチャブロック内に分布された全てのカラーに係わる情報を与えられた圧縮データビットだけで圧縮することができず、テクスチャブロック「Ｂ」が支援ビットを提供する余裕がある状態であるので、テクスチャブロック「Ｂ」は、テクスチャブロック「Ａ」とテクスチャブロック「Ｃ」に支援ビットを提供することができる。
【００８６】
図１１に図示された例を見れば、各テクスチャブロックに対して、ビット支援モードが設定されているということが分かる。テクスチャブロック「Ａ」のビット支援モードは、「００」であり、テクスチャブロック「Ｂ」のビット支援モードは、「１１」であり、テクスチャブロック「Ｃ」のビット支援モードは、「００」である。テクスチャブロック「Ｂ」は、隣接したテクスチャブロック「Ａ」とテクスチャブロック「Ｃ」とが支援ビットを利用するように、両者いずれにも支援ビットを提供する。テクスチャブロック「Ａ」及びテクスチャブロック「Ｃ」のそれぞれ圧縮時、テクスチャブロック「Ａ」の圧縮データビットに含めることができなかったカラー情報と、テクスチャブロック「Ｃ」の圧縮データビットに含めることができなかったカラー情報とが、テクスチャブロック「Ｂ」の支援ビットに保存されるように圧縮される。また、テクスチャブロック「Ａ」とテクスチャブロック「Ｃ」との圧縮解除時、それぞれのテクスチャブロックの圧縮データビットに含まれたカラー情報と共に、テクスチャブロック「Ｂ」の支援ビットに保存されたカラー情報を使用し、テクスチャブロック「Ａ」とテクスチャブロック「Ｃ」とをそれぞれ圧縮解除することができる。テクスチャブロック「Ｂ」の支援ビットに保存されたカラー情報は、圧縮解除部１３３内のテクスチャキャッシュ１３３−２またはローカルメモリに保存されている。もし圧縮解除部１３３内のテクスチャキャッシュ１３３−２またはローカルメモリに、支援ビットに保存されたカラーに係わる情報が保存されていない場合、テクスチャブロック「Ａ」とテクスチャブロック「Ｃ」は、それぞれの圧縮データビットだけ利用して圧縮解除を行うか、あるいは外部のメモリ２００から、テクスチャブロック「Ｂ」の支援ビットに保存されたカラー情報を呼んできて圧縮解除することができる。
【００８７】
図１１に図示された例では、テクスチャブロック「Ａ」とテクスチャブロック「Ｃ」とを圧縮解除するとき、テクスチャブロック「Ａ」のテクセル内において、テクスチャブロック「Ｂ」と隣接した１カラムのテクセル、すなわち、テクスチャブロック「Ａ」の最も右側１カラムに該当する４個のテクセルそれぞれに対して、追加して２ビットのインデックスを割り当て、テクスチャブロック「Ｃ」のテクセル内において、テクスチャブロック「Ｂ」と隣接した１カラムのテクセル、すなわち、テクスチャブロック「Ｃ」の最も左側１カラムに該当する４個のテクセルそれぞれに対して、追加して２ビットのインデックスを割り当てている。２ビットのインデックスのうち１ビットは、テクスチャブロック「Ｂ」の支援ビットに含まれたカラーについての情報を使用するか否かということを決定し、他の１ビットは、テクスチャブロック「Ｂ」の代表値から派生する２個のカラーのうち一つを選択する。
【００８８】
図１２は、テクスチャブロック間の支援関係を示すビット支援モードの他の例について説明するための図である。図１２を参照すれば、ビット支援モードが３ビットで表現される場合であり、ビット支援モードが、「０００」、「００１」、「０１０」、「０１１」、「１００」、「１０１」、「１１０」、「１１１」総８種を有するということが分かる。
【００８９】
例えば、第１テクスチャブロックのビット支援モードが「０００」であり、隣接したテクスチャブロックの支援ビットモードが「０００」ではない場合、上下左右に隣接したテクスチャブロックの支援ビットに保存されたカラーについての情報を、第１テクスチャブロックの圧縮解除に利用されるカラーについての情報として使用することができる。言い替えれば、第１テクスチャブロックのビット支援モードが「０００」である場合、第１テクスチャブロックは、ビット支援モードが「０００」ではない隣接したテクスチャブロックから、第１テクスチャブロックの圧縮解除に利用されるカラーについての情報を提供される。
【００９０】
第１テクスチャブロックのビット支援モードが「００１」である場合、第１テクスチャブロックは、隣接した右側のテクスチャブロックに、圧縮解除に利用されるカラーについての情報を提供することができる。
【００９１】
第１テクスチャブロックのビット支援モードが「０１０」である場合、第１テクスチャブロックは、隣接した左側のテクスチャブロックに、圧縮解除に利用されるカラーについての情報を提供することができる。
【００９２】
第１テクスチャブロックのビット支援モードが「０１１」である場合、第１テクスチャブロックは、隣接した左側及び右側のテクスチャブロックいずれにも、圧縮解除に利用されるカラーについての情報をそれぞれ提供することができる。
【００９３】
第１テクスチャブロックのビット支援モードが「１００」である場合、第１テクスチャブロックは、上下左右に隣接したテクスチャブロックいずれにも、圧縮解除に利用されるカラーについての情報をそれぞれ提供することができる。
【００９４】
第１テクスチャブロックのビット支援モードが「１０１」である場合、第１テクスチャブロックは、隣接した上側のテクスチャブロックに、圧縮解除に利用されるカラーについての情報を提供することができる。
【００９５】
第１テクスチャブロックのビット支援モードが「１１０」である場合、第１テクスチャブロックは、隣接した下側のテクスチャブロックに、圧縮解除に利用されるカラーについての情報を提供することができる。
【００９６】
第１テクスチャブロックのビット支援モードが「１１１」である場合、第１テクスチャブロックは、隣接した上下のテクスチャブロックに、圧縮解除に利用されるカラーについての情報をそれぞれ提供することができる。
【００９７】
結果として、第１テクスチャブロックのビット支援モードが「０００」である場合、隣接したテクスチャブロックにおけるビット支援モードが「０００」でなければ、第１テクスチャブロックは、アクセプタテクスチャブロックであるといえる。第１テクスチャブロックのビット支援モードが「００１」、「０１０」、「０１１」、「１００」、「１０１」、「１１０」、「１１１」である場合、第１テクスチャブロックは、ドナーテクスチャブロックであるといえる。
【００９８】
再び図６を参照すれば、制御部１３１は、圧縮テクスチャブロックの圧縮解除に必要なカラーについての情報が、テクスチャキャッシュ１３３−２に保存されていない場合、テクスチャ処理装置１３０外部のメモリ２００に保存されている圧縮テクスチャブロックを要請することができる。それによって、圧縮解除部１３３は、テクスチャ処理装置１３０外部のメモリ２００から、要請された圧縮テクスチャブロックを受信することができる。
【００９９】
テクスチャフィルタ１３５は、テクセル生成部１３３−３で生成されたテクセルを利用して、テクスチャフィルタリングを行うことができる。テクスチャフィルタ１３５は、テクセル生成部１３３−３で生成されたテクセルの個数が、テクスチャフィルタリングを行うのに必要な最小個数であるとき、テクスチャフィルタリングを行うことができる。
【０１００】
図１３は、一実施形態によるテクスチャ圧縮装置４００の構成を示したブロック図である。テクスチャ圧縮装置４００は、図１３に図示されているような独立したモジュール形態に具現され、グラフィック処理装置１００を含むユーザ端末または外部のサーバーなどに配置される。
【０１０１】
図１３を参照すれば、テクスチャ圧縮装置４００は、メモリ４１０とプロセッサ４２０を含み得る。
【０１０２】
メモリ４１０は、コンピュータ実行可能命令（computer  executable  instruction）を保存することができる。
【０１０３】
プロセッサ４２０は、コンピュータ実行可能命令を実行することにより、テクスチャを構成するテクスチャブロックのカラー分布に基づいて、隣接するテクスチャブロック間の支援関係を分析することができる。プロセッサ４２０は、隣接するテクスチャブロック間に共通するカラーと、各テクスチャブロックのカラー個数とに基づいて、隣接するテクスチャブロック間の支援関係を分析することができる。プロセッサ４２０は、テクスチャブロック間の支援関係を示すビット支援モードと、各ブロックに割り当てられるカラーについての情報とを決定し、決定されたビット支援モードと、各テクスチャブロックに割り当てられるカラーについての情報と、を圧縮パラメータにする圧縮テクスチャブロックを出力することができる。
【０１０４】
ビット支援モードは、隣接したテクスチャブロックに含まれたカラーのうち隣接したテクスチャブロックに割り当てられないカラーについての情報が保存される支援ビットを提供するテクスチャブロック、または支援ビットを提供される隣接したテクスチャブロックであるということを示すことができる。プロセッサ４２０は、ビット支援モードが支援ビットを提供するテクスチャブロックであるということを示す場合、支援ビットをさらに決定し、決定された支援ビットをさらに圧縮パラメータにして、圧縮テクスチャブロックを出力することができる。各テクスチャブロックに割り当てられたカラーについての情報は、各テクスチャブロックを構成するテクセルの代表値、及び各テクセルに対応するカラー値を獲得するのに利用されるインデックスまたは加重値でもある。
【０１０５】
プロセッサ４２０は、機能によって分けられた複数個のプロセッサ形態であってもよく、統合された１つのプロセッサ形態であってもよい。例えば、プロセッサ４２０は、図１３に図示されているように、テクスチャを構成するテクスチャブロックのカラー分布に基づいて、隣接するテクスチャブロック間の支援関係を分析する分析部４２２、テクスチャブロック間の支援関係を示すビット支援モードと、各テクスチャブロックに割り当てられるカラーについての情報と、を決定する決定部４２４、決定部４２４で決定されたビット支援モードと、各テクスチャブロックに割り当てられるカラーについての情報と、を圧縮パラメータにする圧縮テクスチャブロックを出力する出力部４２６のような細部プロセッサを有することができる。
【０１０６】
図１４は、一実施形態によるテクスチャ圧縮解除装置５００の構成を示したブロック図である。テクスチャ圧縮解除装置５００は、図６に図示されているように、テクスチャ処理装置１３０内の圧縮解除部１３３のような形態に具現されもするが、図１４に図示されているような独立したモジュール形態でも具現される。
【０１０７】
図１４を参照すれば、テクスチャ圧縮解除装置５００は、メモリ５１０とプロセッサ５２０とを含み得る。
【０１０８】
メモリ５１０は、コンピュータ実行可能命令を保存することができる。
【０１０９】
プロセッサ５２０は、コンピュータ実行可能命令を実行することにより、圧縮テクスチャブロックから、圧縮パラメータである、隣接するテクスチャブロック間の支援関係を示すビット支援モードと、テクスチャブロックに割り当てられたカラーについての情報と、を獲得することができる。プロセッサ５２０は、ビット支援モードに基づいて、隣接するテクスチャブロックに割り当てられたカラーについての情報を使用するか否かということを判断し、判断結果によって、各テクスチャブロックに割り当てられたカラーについての情報に基づいて、テクスチャブロックを構成するテクセルを生成することができる。
【０１１０】
ビット支援モードは、隣接したテクスチャブロックに含まれたカラーのうち隣接したテクスチャブロックに割り当てられないカラーについての情報が保存される支援ビットを提供する隣接したテクスチャブロック、または支援ビットを提供されるテクスチャブロックであるということを示すことができる。プロセッサ５２０は、ビット支援モードが、支援ビットを提供されるテクスチャブロックであるということを示す場合、隣接したテクスチャブロックに割り当てられたカラーについての情報を使用すると判断し、テクスチャブロックに割り当てられたカラーについての情報と、支援ビットに保存された隣接したテクスチャブロックに含まれたカラーのうちテクスチャブロックに割り当てられないカラーについての情報と、に基づいて、テクスチャブロックを構成するテクセルを生成することができる。プロセッサ５２０は、テクスチャブロックを構成するテクセルのうちいずれか一部についてのみ、支援ビットに保存された隣接したテクスチャブロックに含まれたカラーのうちテクスチャブロックに割り当てられないカラーについての情報を利用することもできる。各テクスチャブロックに割り当てられたカラーについての情報は、各テクスチャブロックを構成するテクセルの代表値、及び各テクセルに対応するカラー値を獲得するのに利用されるインデックスまたは加重値でもある。
【０１１１】
プロセッサ５２０は、機能によって分けられた複数個のプロセッサ形態であってもよく、統合された１つのプロセッサ形態であってもよい。例えば、プロセッサ５２０は、図１４に図示されているように、圧縮テクスチャブロックから、圧縮パラメータである、隣接するテクスチャブロック間の支援関係を示すビット支援モードと、テクスチャブロックに割り当てられたカラーについての情報と、を獲得するパーザ５２２や、ビット支援モードに基づいて、隣接するテクスチャブロックに割り当てられたカラーについての情報を使用するか否かということを判断し、判断結果によって、各テクスチャブロックに割り当てられたカラーについての情報に基づいて、テクスチャブロックを構成するテクセルを生成するテクセル生成部５２４のような細部プロセッサを有することができる。
【０１１２】
図１５は、一実施形態によるテクスチャ圧縮方法について説明するためのフローチャートである。
【０１１３】
１５１０段階において、テクスチャ圧縮装置４００は、テクスチャを構成するテクスチャブロックのカラー分布に基づいて、隣接するテクスチャブロック間の支援関係を分析することができる。テクスチャ圧縮装置４００は、隣接するテクスチャブロック間に共通するカラーと、各テクスチャブロックのカラー個数とに基づいて、隣接するテクスチャブロック間の支援関係を分析することができる。
【０１１４】
１５２０段階において、テクスチャ圧縮装置４００は、テクスチャブロック間の支援関係を示すビット支援モードと、各テクスチャブロックに割り当てられるカラーについての情報と、を決定することができる。ビット支援モードは、隣接したテクスチャブロックに含まれたカラーのうち隣接したテクスチャブロックに割り当てられないカラーについての情報が保存される支援ビットを提供するテクスチャブロック、または支援ビットを提供される隣接したテクスチャブロックであるということを示すことができる。ビット支援モードが、支援ビットを提供するテクスチャブロックであるということを示す場合、テクスチャ圧縮装置４００は、支援ビットをさらに決定することができる。各テクスチャブロックに割り当てられたカラーについての情報は、各テクスチャブロックを構成するテクセルの代表値、及び各テクセルに対応するカラー値を獲得するのに利用されるインデックスまたは加重値でもある。
【０１１５】
１５３０段階において、テクスチャ圧縮装置４００は、決定されたビット支援モードと、各テクスチャブロックに割り当てられるカラーについての情報と、を圧縮パラメータにする圧縮テクスチャブロックを出力することができる。ビット支援モードが、支援ビットを提供するテクスチャブロックであるということを示す場合、テクスチャ圧縮装置４００は、決定された支援ビットをさらに圧縮パラメータにして、圧縮テクスチャブロックを出力することができる。
【０１１６】
図１６は、一実施形態によるテクスチャ圧縮解除方法について説明するためのフローチャートである。
【０１１７】
１６１０段階において、テクスチャ圧縮解除装置５００は、圧縮テクスチャブロックから、圧縮パラメータである、隣接するテクスチャブロック間の支援関係を示すビット支援モードと、テクスチャブロックに割り当てられたカラーについての情報と、を獲得することができる。ビット支援モードは、隣接したテクスチャブロックに含まれたカラーのうちテクスチャブロックに割り当てられないカラーについての情報が保存される支援ビットを提供する隣接したテクスチャブロック、または支援ビットを提供されるテクスチャブロックであるということを示すことができる。
【０１１８】
１６２０段階において、テクスチャ圧縮解除装置５００は、ビット支援モードに基づいて、隣接するテクスチャブロックに割り当てられたカラーについての情報を使用するか否かということを判断することができる。テクスチャ圧縮解除装置５００は、ビット支援モードが、支援ビットを提供されるテクスチャブロックであるということを示す場合、隣接したテクスチャブロックに割り当てられたカラーについての情報を使用すると判断することができる。
【０１１９】
１６３０段階において、テクスチャ圧縮解除装置５００は、隣接するテクスチャブロックに割り当てられたカラーについての情報を使用するか否かということに係わる判断結果によって、各テクスチャブロックに割り当てられたカラーについての情報に基づいて、テクスチャブロックを構成するテクセルを生成することができる。テクスチャ圧縮解除装置５００は、ビット支援モードが支援ビットを提供されるテクスチャブロックであるということを示す場合、テクスチャブロックに割り当てられたカラーについての情報と、支援ビットに保存された隣接したテクスチャブロックに含まれたカラーのうちテクスチャブロックに割り当てられないカラーについての情報とに基づいて、テクスチャブロックを構成するテクセルを生成することができる。各テクスチャブロックに割り当てられたカラーについての情報は、各テクスチャブロックを構成するテクセルの代表値、及び各テクセルに対応するカラー値を獲得するのに利用されるインデックスまたは加重値でもある。一方、テクスチャ圧縮解除装置５００は、テクスチャブロックを構成するテクセルのうちいずれか一部についてのみ支援ビットに保存された、隣接したテクスチャブロックに含まれたカラーのうちテクスチャブロックに割り当てられないカラーについての情報を利用することもできる。
【０１２０】
一方、前述のテクスチャ圧縮方法またはテクスチャ圧縮解除方法は、コンピュータで実行されるプログラムに作成可能であり、コンピュータ読取り可能記録媒体を利用して、かようなプログラムを動作させる汎用デジタルコンピュータで具現される。かようなコンピュータ読取り可能記録媒体は、ＲＯＭ（read-only  memory）、ＲＡＭ（random  access  memory）、フラッシュメモリ、ＣＤ−ＲＯＭ（compact  disc  read  only  memory）、ＣＤ−Ｒ、ＣＤ＋Ｒ、ＣＤ−ＲＷ、ＣＤ＋ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−Ｒ、ＤＶＤ＋Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ、ＤＶＤ−ＲＡＭ、ＢＤ−ＲＯＭ、ＢＤ−Ｒ、ＢＤ−ＲＬＴＨ、ＢＤ−ＲＥ、マグネチックテープ、フロッピーディスク、光磁気データ保存装置、光学データ保存装置、ハードディスク、ソリッドステートドライブ（ＳＳＤ）、そして命令またはソフトウェア、関連データ、データファイル及びデータ構造を保存することができ、プロセッサやコンピュータが命令を実行するように、プロセッサやコンピュータに、命令またはソフトウェア、関連データ、データファイル及びデータ構造を提供することができるいかなる装置でもよい。
【０１２１】
以上、実施形態を中心に説明した。開示された実施形態が属する技術分野の当業者であれば、開示された実施形態が、本質的な特性から外れない範囲で変形された形態に具現されるということを理解することができるであろう。従って、開示された実施形態は、限定的な観点ではなく、説明的な観点から考慮されなければならない。発明の範囲は、前述の実施形態の説明ではなく、特許請求の範囲に示されており、それと同等な範囲内にある全ての差異は、発明の範囲に含まれたものであると解釈されなければならないのである。
【産業上の利用可能性】
【０１２２】
本発明の、テクスチャ圧縮方法及びその装置、並びにテクスチャ圧縮解除方法及びその装置は、例えば、グラフィック関連の技術分野に効果的に適用可能である。
【符号の説明】
【０１２３】
１００    グラフィック処理装置
１１０    ラスタライザ
１２０    シェーダコア
１３０    テクスチャ処理装置
１３１    制御部
１３３    圧縮解除部
１３５    テクスチャフィルタ
１３３−１，５２２    パーザ
１３３−２    テクスチャキャッシュ
１３３−３，５２４    テクセル生成部
１４０    ピクセル処理装置
１５０    タイルバッファ
２００，４１０，５１０    メモリ
３００    バス
４００    テクスチャ圧縮装置
４２０，５２０    プロセッサ
４２２    分析部
４２４    決定部
４２６    出力部
５００    圧縮解除装置
【図１】
2018073398.tif 000003
【図２】
2018073398.tif 000004
【図３】
2018073398.tif 000005
【図４】
2018073398.tif 000006
【図５】
2018073398.tif 000007
【図６】
2018073398.tif 000008
【図７】
2018073398.tif 000009
【図８】
2018073398.tif 000010
【図９】
2018073398.tif 000011
【図１０】
2018073398.tif 000012
【図１１】
2018073398.tif 000013
【図１２】
2018073398.tif 000014
【図１３】
2018073398.tif 000015
【図１４】
2018073398.tif 000016
【図１５】
2018073398.tif 000017
【図１６】
2018073398.tif 000018