(57)【要約】【課題】テクスチャ画像を効率的な形態で格納保持し、多数の大容量テクスチャ画像の頻繁な切替に伴うデータ転送オーバーヘッドを削減する。【解決手段】視点や照明条件など撮像環境が異なる複数のテクスチャ群で構成される高次元テクスチャについて、これを構成するテクスチャ画像をブロック単位あるいはピクセル単位に並べ替えるとともにブロックあるいはピクセルに対応する領域の高次元テクスチャの異方性変化分をまとめた異方性テクスチャに変換する。【選択図】　　図１
2004005228.tif 000002
【特許請求の範囲】
【請求項１】
高次元テクスチャ画像を構成する複数のテクスチャ画像の各々を切り替えてマッピング対象のモデルにマッピングする高次元テクスチャ描画装置において、
前記複数のテクスチャ画像を特定の領域単位で並び替え、高次元テクスチャの異方性変化分がまとめて表現された異方性テクスチャに変換する異方性テクスチャ変換手段と、
前記モデルの形状、視点又は照明条件等の描画環境に応じて前記モデルの表面についての異方性パラメータを計算する異方性パラメータ計算手段と、
前記異方性パラメータに基づきマッピングするべきテクスチャ画像を前記異方性テクスチャから取り出す手段と
を具備することを特徴とする高次元テクスチャ描画装置。
【請求項２】
前記異方性パラメータにもとづきマッピングするべき描画テクスチャを生成する描画テクスチャ生成手段と、
前記描画テクスチャを前記モデル形状に描画する描画手段と
を具備することを特徴とする請求項１に記載の高次元テクスチャ描画装置。
【請求項３】
前記異方性パラメータを、前記マッピングのモデルの形状データを構成する各描画点におけるモデル表面の法線ベクトルと視点及び描画点により定義される視線ベクトルとが成す第１角度、又は前記法線ベクトルと照明位置及び描画点により定義される照明ベクトルとが成す第２角度、又は前記第１角度及び前記第２角度の組のいずれかとすることを特徴とする請求項１又は２のいずれか一項に記載の高次元テクスチャ描画装置。
【請求項４】
前記描画テクスチャ生成手段は、前記モデルの形状を構成するパッチ頂点毎に、前記異方性パラメータ計算手段により計算された異方性パラメータに基づいて前記パッチ領域における異方性テクスチャ成分を求めて画像合成し、前記描画テクスチャを生成することを特徴とする請求項２又は３のいずれか一項に記載の高次元テクスチャ描画装置。
【請求項５】
前記描画テクスチャ生成手段は、前記異方性パラメータ計算手段により計算された異方性パラメータに対応する第１の異方性テクスチャ成分と、該第１の異方性パラメータ近傍の第２の異方性テクスチャ成分とを求め、該第１及び第２の異方性テクスチャ成分を考慮した画像合成により描画テクスチャを生成することを特徴とする請求項２又は３のいずれか一項に記載の高次元テクスチャ描画装置。
【請求項６】
高次元テクスチャ画像を構成する複数のテクスチャ画像を特定の領域単位で並び替え、該高次元テクスチャの異方性変化分がまとめて表現された異方性テクスチャに変換する異方性テクスチャ変換手段と、
前記異方性テクスチャ変換手段により生成された複数の異方性テクスチャ群を圧縮するテクスチャ圧縮手段と
を具備することを特徴とする高次元テクスチャ圧縮装置。
【請求項７】
請求項６に記載のテクスチャ圧縮手段により圧縮された高次元テクスチャを異方性テクスチャ群に展開するテクスチャ展開手段と、
マッピングする対象のモデルの形状、視点又は照明条件等の描画環境に応じて前記モデルの表面についての異方性パラメータを計算する異方性パラメータ計算手段と、
前記異方性パラメータ計算手段により計算された異方性パラメータにもとづきマッピングするべき描画テクスチャを前記異方性テクスチャ群から生成する描画テクスチャ生成手段と、
前記描画テクスチャ生成手段により生成された描画テクスチャを前記モデル形状に描画する描画手段と
を具備することを特徴とする高次元テクスチャ描画装置。
【請求項８】
前記テクスチャ展開手段は、前記描画テクスチャ生成手段が対象とする描画領域単位に対応する異方性テクスチャのみを展開することを特徴とする、請求項７に記載の高次元テクスチャ描画装置。
【請求項９】
請求項６に記載の高次元テクスチャ圧縮装置と、請求項７又は請求項８のいずれか一項に記載の高次元テクスチャ描画装置とを具備することを特徴とする高次元テクスチャ描画システム。
【請求項１０】
前記高次元テクスチャ圧縮装置により圧縮された高次元テクスチャを前記高次元テクスチャ描画装置にネットワークを介して伝送する伝送手段を具備することを特徴とする請求項９に記載の高次元テクスチャ描画システム。
【請求項１１】
高次元テクスチャ画像を構成する複数のテクスチャ画像の各々を切り替えてマッピング対象のモデルにマッピングする高次元テクスチャ描画方法において、
前記複数のテクスチャ画像を特定の領域単位で並び替え、該高次元テクスチャの異方性変化分がまとめて表現された異方性テクスチャに変換する異方性テクスチャ変換ステップと、
前記モデルの形状、視点又は照明条件等の描画環境に応じて前記モデルの表面についての異方性パラメータを計算する異方性パラメータ計算ステップと、
前記異方性パラメータに基づきマッピングするべきテクスチャ画像を前記異方性テクスチャから取り出すステップと
を具備することを特徴とする高次元テクスチャ描画方法。
【請求項１２】
高次元テクスチャ画像を構成する複数のテクスチャ画像の各々を切り替えてマッピング対象のモデルにマッピングする高次元テクスチャ描画プログラムにおいて、
前記複数のテクスチャ画像を特定の領域単位で並び替え、該高次元テクスチャの異方性変化分がまとめて表現された異方性テクスチャに変換する異方性テクスチャ変換ステップと、
前記モデルの形状、視点又は照明条件等の描画環境に応じて前記モデルの表面についての異方性パラメータを計算する異方性パラメータ計算ステップと、
前記異方性パラメータに基づきマッピングするべきテクスチャ画像を前記異方性テクスチャから取り出すステップと
をコンピュータに実行させることを特徴とする高次元テクスチャ描画プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、撮像位置又は照明位置等の条件を異ならせて撮影した複数の撮影画像（テクスチャ画像）を用いて高品位なコンピュータグラフィック画像を生成する高次元テクスチャマッピング技術における高次元テクスチャ描画装置、高次元テクスチャ圧縮装置、高次元テクスチャ描画システム、高次元テクスチャ描画方法並びにプログラムに関する。
【０００２】
【従来の技術】
３次元コンピュータグラフィクス（ＣＧ）の分野では、高品位な描画を行うために３次元を構成するモデルの表面に、実世界から取得した撮影画像等（テクスチャ画像）を貼り付けるテクスチャマッピングと呼ばれる手法が存在する。３次元モデルとしては、一般には三角形パッチで構成されるポリゴンモデルが用いられる。
【０００３】
ところがテクスチャマッピングで用いられるテクスチャは、特定の照明条件およびカメラ位置での撮影画像であり、貼り付ける対象である３次元モデルの形状や描画時の視点、照明位置といった情報は考慮されていない。その結果、陰影に変化のない単調な描画結果になり、実写画像との違いが大きくなってしまう原因にもなっている。
【０００４】
ここで実写画像の特性について考えてみる。カメラによって撮像された実写画像は、レンズを通して各ピクセルに入射してくる光の情報を取得したものと考えることができる。つまりテクスチャ画像は撮像時のカメラ位置、向き、時刻といったパラメータで規定できる光の集合とみなすことができる。そこで、このような光線情報を再利用することで高品位な画像を生成する技術が登場しており、イメージベースレンダリング技術と呼ばれている。
【０００５】
イメージベースレンダリングの１手法として、撮像対象を異なる視点あるいは照明条件で取得しておいた撮像画像をテクスチャ画像として複数用意しておき、３次元物体のレンダリング時に物体表面の法線や視点、および照明位置などの情報から先に用意しておいたテクスチャ画像を切り替えてマッピングする手法があり、バイディレクショナル・テクスチャ・ファンクション（ＢＴＦ：　Ｂｉｄｉｒｅｃｔｉｏｎａｌ　Ｔｅｘｔｕｒｅ　Ｆｕｎｃｔｉｏｎ）と呼ばれる手法が知られている（参考文献「Ｋ．Ｊ．Ｄａｎａ，　Ｂ．ｖａｎ　Ｇｉｎｎｅｋｅｎ，　Ｓ．Ｋ．Ｎａｙａｒ，　ａｎｄ　Ｊ．Ｊ．Ｋｏｅｎｄｅｒｉｎｋ．　Ｒｅｆｌｅｃｔａｎｃｅ　ａｎｄ　ｔｅｘｔｕｒｅ　ｏｆ　ｒｅａｌ　ｗｏｒｌｄ　ｓｕｒｆａｃｅｓ．　ＡＣＭ　Ｔｒａｎｓａｃｔｉｏｎ　ｏｎ　Ｇｒａｐｈｉｃｓ，　１８（１）：１−３４，　１９９９」）。
【０００６】
考えられる複数の撮像環境に応じた多数のテクスチャ画像（ここではこれらを「高次元テクスチャ」と呼ぶ）を予め用意しておくには、膨大なテクスチャメモリが必須であるし、テクスチャの圧縮、伝送といった技術が必要となってくる。
【０００７】
これまで、画像圧縮技術を利用して、構成するテクスチャ画像をそれぞれ圧縮しておく方法や、ピクセル単位で輝度の変化値を関数で近似し、その関数パラメータを保存しておく方法などがある。しかしこれらの方法には、圧縮展開に時間がかかるといった問題や、視点位置を固定にするなどといった撮像環境の制約を設ける必要があり、視点と照明位置の双方を考慮に入れた効率のよいテクスチャ・データ形式は存在していないという問題があった。
【０００８】
また、従来はモデルに対して一つのテクスチャ画像を用意しておけばよかったため、テクスチャの切替に伴うテクスチャキャッシュのヒット率やテクスチャデータの転送量に関しては、あまり問題とされてこなかった。しかし、上記のような高次元テクスチャを用いて高品位な画像を生成する場合、マッピング対象のモデル形状に応じて、モデル表面各点における相対的な視点位置や照明位置が変化するから、その変化に応じて、取り込むテクスチャ画像を切り替えなければならない。つまり、モデルが一つであっても描画時にピクセル単位でテクスチャ画像の切り替えが頻繁に発生する可能性がある。
【０００９】
さらに、テクスチャ画像自体の高解像度化も進んでおり、テクスチャのデータサイズが大容量化している。このようなテクスチャ画像が頻繁に切り替えられた場合、テクスチャキャッシュの有効性低下やテクスチャデータの転送ネックが起こり、実時間でのコンピュータグラフィックス処理にとってボトルネックとなる。
【００１０】
【発明が解決しようとする課題】
テクスチャ画像を効率的な形態で格納保持し、多数の大容量テクスチャ画像の頻繁な切替等に伴うデータ転送オーバーヘッドを削減できることが好ましい。
【００１１】
本発明はかかる事情を考慮してなされたものであり、メモリや計算資源を効率的に用いて大量のテクスチャ画像の切替が可能となり、高品位なテクスチャマッピングを行うことが可能な高次元テクスチャ描画装置及び方法を提供することを目的とする。
【００１２】
【課題を解決するための手段】
本発明に係る高次元テクスチャ描画装置は、高次元テクスチャ画像を構成する複数のテクスチャ画像の各々を切り替えてマッピング対象のモデルにマッピングする高次元テクスチャ描画装置において、前記複数のテクスチャ画像を特定の領域単位で並び替え、高次元テクスチャの異方性変化分がまとめて表現された異方性テクスチャに変換する異方性テクスチャ変換手段と、前記モデルの形状、視点又は照明条件等の描画環境に応じて前記モデルの表面についての異方性パラメータを計算する異方性パラメータ計算手段と、前記異方性パラメータに基づきマッピングするべきテクスチャ画像を前記異方性テクスチャから取り出す手段とを具備することを特徴とする高次元テクスチャ描画装置である。
【００１３】
【発明の実施の形態】
以下、図面を参照しながら本発明の実施形態を説明する。
【００１４】
（第１実施形態）
図１は、本発明の第１実施形態に係る高次元テクスチャ描画装置の概略構成を示すブロック図である。本実施形態に係る高次元テクスチャ描画装置は、視点や照明条件など撮像環境が異なる複数のテクスチャ群で構成される高次元テクスチャを３次元のポリゴンなどのモデル形状にマッピング処理する装置である。この装置は、高次元テクスチャを構成するテクスチャ画像をブロック単位あるいはピクセル単位で並べ替え、ブロックあるいはピクセルに対応する領域における高次元テクスチャの異方性変化分をまとめた異方性テクスチャに変換する異方性テクスチャ変換部１０１と、マッピング対象のモデル形状データ、および描画時の視点や照明条件などの描画環境から異方性パラメータを計算する異方性パラメータ計算部１０２と、この異方性パラメータ計算部１０２で求めた異方性パラメータにもとづき、マッピングに必要な描画テクスチャを異方性テクスチャから生成する描画テクスチャ生成部１０３と、描画テクスチャ生成部１０３で生成された描画テクスチャをモデル形状にマッピングする描画部１０４とにより構成される。
【００１５】
本実施形態では、高次元テクスチャを扱うマッピング手法の一例として上述したようにバイディレクショナル・テクスチャ・ファンクション（ＢＴＦ）法を利用することとする。ＢＴＦ法では、描画時の視点位置および照明位置に基づいてテクスチャ画像を切り替えてマッピングする。
【００１６】
以下、高次元テクスチャの構成要素であるテクスチャ群を異方性テクスチャに変換する手順、および異方性テクスチャを参照してマッピングする手順をそれぞれ説明する。
【００１７】
ＢＴＦでは、物体表面から視点に入射してくる光線情報の集まりをテクスチャ画像として記録しているわけだが、得られるテクスチャ画像群は物体表面に対する相対的な視点位置や照明位置に依存して変化するデータの集まりとみなすことができる。ここでは、物体表面に対する相対的な視点位置、照明位置の表現に、図２のような撮像対象を原点とした球座標系を用いる。視点は無限遠であり、照明は平行光源であると仮定すると、視点位置を（θｅ，φｅ）、照明位置を（θｉ，φｉ）と表現することができる。このときテクスチャアドレスは以下のように６次元で定義することができる。
【００１８】
Ｔ（θｅ，φｅ，θｉ，φｉ，　ｕ，　ｖ）
ただし、ｕ，ｖはテクスチャ内アドレスを表す。このようにテクスチャ自体を切り替えるアドレスと、テクスチャ内のアドレスとの組み合わせで描画するべき画素値を決定する手法を「高次元テクスチャ・マッピング」とよぶ。
【００１９】
図３は、本実施形態の高次元テクスチャ描画装置における処理の流れを示すフローチャートである。
まず、異方性テクスチャ変換部１０１において、高次元テクスチャから異方性テクスチャへの変換を行う（Ｓ３０１）。高次元テクスチャは、撮像位置、照明位置をそれぞれ変えて撮像したテクスチャ画像群のことである。同一対象物を撮像して得た高次元テクスチャのメモリ空間上へのレイアウトを図４に示す。
【００２０】
テクスチャ画像群を得るためには、具体的には、例えば図４や図５に示すような撮像環境を用い、
１．照明位置を固定して、撮像位置をθ、φ方向にサンプリング間隔ずらして撮像を繰り返す
２．照明位置をθ方向、あるいはφ方向にサンプリング間隔ずらす
という処理を繰り返す。
【００２１】
異方性テクスチャとは、特定テクスチャ座標空間における異方性成分をまとめてテクスチャ化したものをいう。異方性テクスチャは、座標ごとに物体表面の異方性変化をまとめ、これを画像として保存したもとみなすことができる（異方性テクスチャ画像）。なお、特定テクスチャ座標空間は前記テクスチャ・アドレスＴで定義される任意の６次元空間における領域として指定できるものであればよい。（ｕ，ｖ）空間の１点（テクセル）単位であってもよいし、画像ブロック単位［δｕ，δｖ］でもよい、あるいは、（θｅ，φｅ，θｉ，φｉ，　ｕ，ｖ）空間のブロック領域単位［δθｅ，δφｅ，δθｉ，δφｉ，δｕ，δｖ］であってもよい。尚、テクセルとは、テクスチャにおける１画素をいう。
【００２２】
以下では（ｕ，ｖ）空間における画像ブロック単位［δｕ，δｖ］での異方性テクスチャ画像への変換に関して話を進める。特定テクスチャ座標空間の範囲を変えた場合には、その空間内で同様にして高次元テクスチャ画像を取り込むことで異方性テクスチャ画像を生成することができる。
【００２３】
高次元テクスチャ画像をＴ、座標（ｕ，ｖ）における異方性テクスチャ画像をＴａと表すと以下のように表現することができる。
【００２４】
テクセル単位（ｕ，ｖ）に収集した場合、
Ｔａ（ｕ，　ｖ）⊆Ｔ（θｅ，φｅ，θｉ，φｉ，　ｕ，　ｖ）
すべてのθ，φ方向サンプリング
画像ブロック単位（［ｕ０，ｕ１］，　［ｖ０，ｖ１］）に収集した場合、
Ｔａ（［ｕ０−ｕ１］，　［ｖ０−ｖ１］）⊆Ｔ（θｅ，φｅ，θｉ，φｉ，　［ｕ０−ｕ１］，　［ｖ０−ｖ１］）
すべてのθ，φ方向サンプリング
異方性テクスチャへの変換の様子を図６に示す。また、具体的なブロック画像のレイアウト例を図７に示す。一つのマス目が各高次元テクスチャを構成するテクスチャのブロック画像に相当する。この場合、視点位置が同じで光源位置の異なる高次元テクスチャ画像ブロックを隣接して配置し、視点位置のサンプル数分画像データを配置することになる。高次元テクスチャ画像ブロックの異方性テクスチャ画像上のレイアウトに関しては、図７のものに限定されない。例えば、光源位置が同じで視点位置の異なる高次元テクスチャブロックを隣接して配置してもよいし、光源位置、視点位置にかかわらずパラメータ順にブロック画像を並べても構わない。
【００２５】
次に、たとえば、照明方位（θｉ，φｉ）に関するサンプリング数をθ方向にＮθｉ分割、φ方向にＮφｉ分割、視点方位（θｅ，φｅ）に関するサンプリング数をθ方向にＮθｅ分割、φ方向にＮφｅ分割、ブロックサイズを（Ｓｕ，Ｓｖ）画素とすると、生成される異方性テクスチャ一つあたりの画素サイズは以下のように計算できる。
Ｎθｉ×Ｎφｉ×Ｎθｅ×Ｎφｅ×Ｓｕ×Ｓｖ（画素）
異方性サンプリング数を例えば８分割（Ｎθｉ＝Ｎφｉ＝Ｎθｅ＝Ｎφｅ＝８）、ブロックサイズを縦横１０画素（Ｓｕ＝Ｓｖ＝１０）とすると、８×８×８×８×１０×１０＝約４０万画素となる。光源が変化した際の異方性テクスチャ成分を横方向に並べると、横（８×８×１０＝６４０）画素×縦（８×８×１０＝６４０）画素のテクスチャ・サイズとなる。
高次元テクスチャを構成する各テクスチャの解像度を（Ｔｕ，Ｔｖ）とすると、生成される上記異方性テクスチャ数を以下のように求めることができる。
【００２６】
（Ｔｕ／Ｓｕ）×（Ｔｖ／Ｓｖ）
たとえば、６４０×４８０画素の高次元テクスチャを利用した場合、（６４０／１０）×（４８０／１０）＝６４×４８＝約３０００個の異方性テクスチャが生成されることになる。
【００２７】
次に、異方性パラメータ計算部１０２において、モデル表面のパッチ法線の計算（Ｓ３０２）と異方性パラメータの計算（Ｓ３０３）を行う。これ以降、描画テクスチャの生成（Ｓ３０４）まではモデルを構成するパッチ単位に処理を行っていく。
【００２８】
まず、モデル表面の３次元的な法線ベクトルを、各パッチを構成する頂点の隣接関係からベクトル外積により求める。あらかじめ、モデルデータのなかに各頂点における法線ベクトルが含まれている場合、それらを利用しても構わない。
【００２９】
次に、各パッチの異方性パラメータを計算する（Ｓ３０３）。
異方性パラメータとは、物体表面における視点と照明位置との関係を定義したものであり、描画物体表面上の１点（描画点）と視点位置を結んだベクトルを視線ベクトル、前記描画点と照明位置を結んだベクトルを光源ベクトル、および前記Ｓ３０２で求めた物体表面法線ベクトルとの関係で表現することができる。法線ベクトルに対する視点ベクトルの相対方位を視点方位異方性パラメータとして、極座標系を用い（θｅ，φｅ）と表すことにする。同様に法線ベクトルに対する光源ベクトルの相対方位を光源方位異方性パラメータとして、極座標系を用い（θｉ，φｉ）と表す。この視点方位および光源方位異方性パラメータの組み合わせによって、物体表面における異方性を一意に特定することができる（図２、８参照）。
【００３０】
次に、描画テクスチャ生成部１０３において、異方性テクスチャへの変換（Ｓ３０１）で変換、作成された異方性テクスチャから、異方性パラメータの計算（Ｓ３０２）で求めた異方性パラメータに基づき描画に必要なテクスチャ画像を生成する（Ｓ３０４）。
【００３１】
まず、描画対象となるパッチのテクスチャ座標を含む異方性テクスチャを選択する。選択された異方性テクスチャから、異方性パラメータの計算（Ｓ３０２）で求めた異方性パラメータに基づき、対応するテクスチャ画像を取得する。図７に示すようなテクスチャ・レイアウトの場合、異方性パラメータから以下のようなアドレス変換により必要なテクスチャブロックの先頭アドレスを取得することができる。図８は異方性テクスチャから異方性パラメータに基づき対応するパッチ領域のテクスチャ画像を取り出し、描画テクスチャを生成する様子を示したものである。
【００３２】
Ｔａ（｛Ｎθｉ×（φｉ　−　１）＋θｉ｝×Ｓｕ，［｛Ｎθｅ×（φｅ　−１）＋Ｎφｅ×（θｅ　−　１）｝＋φｉ］×Ｓｖ）
描画対象となるパッチに含まれるテクスチャ座標が、異方性テクスチャへの変換（Ｓ３０１）で用いたブロックサイズより大きい場合、つまり、複数のテクスチャ・ブロックにまたがる場合、順次そのブロックに対応する異方性テクスチャを切り替え、上記の処理のテクスチャ・アドレス取得処理を行うことで描画に必要なテクスチャ画像を取得することができる。
【００３３】
最後に、全パッチに関して描画テクスチャの生成（Ｓ３０４）による描画テクスチャの取得が終わったかどうかをチェックする（Ｓ３０５）。まだ終わっていない場合、パッチ法線の計算（Ｓ３０２）に戻り、描画テクスチャの取得（Ｓ３０４）までの処理を繰り返す。全パッチに対して描画テクスチャの取得が終了した場合、描画テクスチャの取得（Ｓ３０４）で取得されたテクスチャ画像は、モデルにマッピングできる一つのテクスチャ画像となっているため、これをモデル表面にマッピングし描画を行う（Ｓ３０６）。
【００３４】
上記の処理の流れでは、各パッチに対して単一の法線ベクトルを定義し、異方性パラメータも一つ求めただけであったが、この場合、モデル表面を構成するパッチの粒度によっては、パッチ境界に画像的な境界エッジが発生してしまう可能性がある。そこで、パッチ法線の計算（Ｓ３０２）において、各パッチを構成する頂点毎に隣接する頂点関係から法線ベクトルを求め、ここで求めた複数の法線ベクトルからベクトル平均を求め、これをパッチの代表法線として以下の処理を行ってもよい。この場合、モデル表面を構成する隣接パッチ間で法線の平均化が行われるため、上記のようなパッチ境界エッジが目立たなくなることが期待できる。
【００３５】
また、各頂点毎に求めた法線ベクトルを基に異方性パラメータを求め、パッチ領域の描画テクスチャを取得し、最後に前記描画テクスチャの生成（Ｓ３０４）にて、上記頂点単位に求めたパッチ領域の描画テクスチャを画像合成することで、最終的な描画テクスチャを生成してもよい。
【００３６】
ここで、パッチを構成するテクセル毎に頂点までの距離に応じたα値に基づき頂点毎に取得した複数の描画テクスチャをαブレンド合成して１枚の描画テクスチャを求める。頂点に近いほどその頂点に対応して求めたテクスチャ画素のブレンド率を高めることで、パッチ境界のエッジが目立たない描画テクスチャを生成することができる（図９参照）。
【００３７】
さらに、描画テクスチャの生成（Ｓ３０４）にて、異方性パラメータの計算（Ｓ３０３）で求めた異方性パラメータに基づくテクスチャ画像のほかに、異方性パラメータ的に近傍にあるテクスチャ画像についてもこれを同時に取り出し、画像合成することで、特殊な画像イフェクトを生成することもできる。
【００３８】
一例としては、異方性パラメータのうち、視点異方性パラメータ近傍（θｅ±δθｅ，φｅ±δφｅ）のテクスチャ画像を同じ異方性テクスチャ画像から取得することで、被写界深度を変えたようなレンズ効果が生成できる。
【００３９】
他の例としては、異方性パラメータのうち、光源異方性パラメータ近傍（θｉ±δθｉ，φｉ±δφｉ）のテクスチャ画像を同じ異方性テクスチャ画像から取得することで、平行光源以外の光源ベクトルに広がりのある照明があたったような画像効果の生成が期待できる。
【００４０】
以上では、モデル形状がパッチで構成されているものとして説明したが、モデル形状が関数で定義されたものであっても構わない。この場合、テクセル単位で異方性パラメータを計算することができるため、より物体のディテールを反映した高次元テクスチャマッピングを行うことができる。
【００４１】
以上説明した第１実施形態によれば、描画時の環境に応じたテクスチャ切替を、同一テクスチャ座標を用いる限り一つの異方性テクスチャ内で処理できるようになる。
【００４２】
ポリゴン描画時に隣接するピクセルに対応するテクセルはテクスチャ座標上でも近傍にあることに加え、光学的な特性も近いことが想定されるため、異方性テクスチャをテクスチャ座標上の特定のブロック領域から取得、作成することにより、テクスチャの切り替えなく同一の異方性テクスチャ内で処理できる可能性を高めることが可能となる。したがって、低メモリ、低データ転送レートで高次元テクスチャを描画できるシステムを構築できる。
【００４３】
さらに、描画する対象のモデル形状に応じて異方性テクスチャを構成するテクスチャブロックのサイズを調整することで、テクスチャメモリ消費量とテクスチャ切替に伴うオーバーヘッドとのトレードオフを考慮したシステム全体の最適化も容易になる。
【００４４】
（第２実施形態）
次に、本発明の第２実施形態を説明する。図１０は、本発明の第２実施形態に係る高次テクスチャマッピング・システムの概略構成を示すブロック図である。このシステムは、圧縮テクスチャを生成するための高次元テクスチャ圧縮装置と、圧縮テクスチャを展開し、描画するための高次元テクスチャ描画装置とで構成されている。両者は同じ機器内に実装されたものであってもよいし、ネットワーク上で離れた別の機器に実装されたものであっても構わない。ただし、後者の場合、圧縮テクスチャはネットワーク上を高次元テクスチャ圧縮装置から高次元テクスチャ描画装置へ伝送されることになる。
【００４５】
高次元テクスチャ圧縮装置は、視点や照明条件など撮像環境の異なる複数のテクスチャ群で構成される高次元テクスチャについて、これを構成するテクスチャ画像を、特定の領域単位に並べ替えることでその領域における高次元テクスチャの異方性変化分をまとめて表現した異方性テクスチャに変換する異方性テクスチャ変換部１００１と、この異方性テクスチャ変換部１００１で生成された複数の異方性テクスチャ群を圧縮するテクスチャ圧縮部１００２とで構成される。
【００４６】
異方性テクスチャ変換部１００１は第１実施形態に異方性テクスチャ変換部１０１と同じでものであり、その詳細な説明は省略する。
【００４７】
テクスチャ圧縮部１００２において異方性テクスチャ群を圧縮する際の圧縮方法としては、ＪＰＥＧ（Ｊｏｉｎｔ　Ｐｈｏｔｏｇｒａｐｈｉｃ　Ｅｘｐｅｒｔ　Ｇｒｏｕｐ），ＪＰＥＧ２０００，ＧＩＦ（Ｇｒａｐｈｉｃｓ　Ｉｎｔｅｒｃｈａｎｇｅ　Ｆｏｒｍａｔ）などの一般的な画像圧縮方法を適用でき、これら以外にも、Ｓ３ＴＣ（商標）（Ｓ３　Ｔｅｘｔｕｒｅ　Ｃｏｍｐｒｅｓｓｉｏｎ）といったテクスチャ向けの画像圧縮方法、あるいは多次元ＤＣＴ（Ｄｉｓｃｒｅｔｅ　Ｃｏｓｉｎｅ　Ｔｒａｎｓｆｏｒｍ）、ベクトル量子化なども適用できる。また、エントロピー符号化法などの符号圧縮法との併用も可能である。さらに、異方性テクスチャ群を連続したテクスチャデータとみなして、ＭＰＥＧ２（Ｍｏｔｉｏｎ　Ｐｉｃｔｕｒｅ　ＥｘｐｅｒｔｓＧｒｏｕｐ　２）やＭＰＥＧ４のような動画像圧縮を行うこともできる。ベクトル量子化などはかなり高い圧縮率を期待できるが、その反面、符号化に時間がかかるといった問題がある。これに対しＭＰＥＧは、専用のハードウェアを利用することで高速な圧縮、展開を期待できる。
【００４８】
高次元テクスチャ描画装置は、圧縮された高次元テクスチャを展開し、異方性テクスチャ群に展開するテクスチャ展開部１００３と、マッピングする対象のモデル形状データ、および描画時の視点や照明条件などの描画環境から異方性パラメータを計算する異方性パラメータ計算部１００６と、異方性パラメータ計算部１００６で求めた異方性パラメータにもとづきマッピングするべきテクスチャを異方性テクスチャから生成する描画テクスチャ生成部１００４と、描画テクスチャ生成部１００４で生成された描画テクスチャをモデル形状にマッピングする描画部１００５とで構成される。
【００４９】
図１１は、第２実施形態に係る高次元テクスチャ描画装置における処理の流れを示すフローチャートである。
【００５０】
まず、異方性パラメータ計算部１００６により、モデル形状データからモデルを構成するパッチの３次元法線ベクトルと、異方性パラメータを求める（Ｓ１１０１、Ｓ１１０２）。ここでの処理は、第１実施例形態におけるパッチ法線計算（Ｓ３０２）、および異方性パラメータの計算（Ｓ３０３）における処理と同様である。
【００５１】
次にテクスチャ展開部１００３において、描画対象となっているパッチのテクスチャ領域を含む異方性テクスチャ画像を、圧縮テクスチャから展開して求める（Ｓ１１０３）。
【００５２】
そして、描画テクスチャ生成部１００４において、異方性パラメータの計算（Ｓ１１０２）で求めた異方性パラメータに基づき、異方性テクスチャの展開（Ｓ１１０３）で展開された異方性テクスチャからパッチ領域の描画に必要なテクスチャ画像を生成する（Ｓ１１０４）。
全パッチについての描画テクスチャの生成が終了したかを判断し（Ｓ１１０５）、終了していない場合は、パッチ法線の計算（Ｓ１１０１）に戻って次のパッチに対して描画テクスチャの生成を行う。
【００５３】
全パッチについての描画テクスチャの生成が終了した場合は、描画部１００５にて、描画テクスチャの生成（Ｓ１１０５）で作成された描画テクスチャをモデルに貼り付けて描画を行う（Ｓ１１０６）。
【００５４】
第２実施形態が第１実施形態に対して有利な点は、高次元テクスチャ圧縮装置により、変換して求めておいた異方性テクスチャ画像を圧縮しておくことで、あらかじめ圧縮テクスチャを保存しておいたり、ネットワーク上の離れたサーバからストリームとして圧縮テクスチャを伝送してもらうことができる点である。
【００５５】
また、高次元テクスチャ描画装置によれば、圧縮テクスチャ展開部１００３にて描画に必要な異方性テクスチャのみを選択的に展開して利用することができる。高次元テクスチャを異方性テクスチャに変換して保存しておくことで、テクスチャ座標単位で必要な高次元テクスチャ画像の判別が可能となり、クリッピングされていたり、陰面処理などで事前に描画の必要性がない部分のテクスチャ画像を展開する必要がなくなるというメリットが得られる。異方性テクスチャへの変換が行われていない場合、描画対象のモデルが含まれるかどうかでテクスチャの展開を判別するしかなく、無駄なテクスチャ展開が必要であったり、展開時に必要なメモリ量も膨大になってしまうが、このような欠点を第２実施形態によれば解決できる。
【００５６】
また、必要なテクスチャとその周辺の展開に必要なだけのメモリ量をテクスチャ展開部１００３に用意すればよいため、携帯電話や携帯情報端末（ＰＤＡ）など搭載メモリの制約が厳しい機器での実装にも適している。
【００５７】
なお、本発明は上述した実施形態に限定されず種々変形して実施可能である。
【００５８】
【発明の効果】
以上説明したように、本発明によればメモリや計算資源を効率的に用いて大量のテクスチャ画像の切替が可能となり、高品位なテクスチャマッピングを行うことが可能な高次元テクスチャ描画装置及び方法を提供できる。
【図面の簡単な説明】
【図１】本発明の第１実施形態に係る高次元テクスチャ描画装置の概略構成を示すブロック図
【図２】撮像対象を原点とした球座標系を示す図
【図３】第１実施形態の高次元テクスチャ描画装置における処理の流れを示すフローチャート
【図４】高次元テクスチャのメモリ空間上へのレイアウトを示す図
【図５】撮像環境の一例を示す図
【図６】異方性テクスチャへの変換の様子を示す図
【図７】ブロック画像のレイアウト例を示す図
【図８】異方性テクスチャから異方性パラメータに基づいて描画テクスチャを生成する様子を示す図
【図９】頂点毎の複数の描画テクスチャをαブレンド合成して１枚の描画テクスチャを求める様子を示す図
【図１０】本発明の第２実施形態に係る高次テクスチャマッピング・システムの概略構成を示すブロック図
【図１１】第２実施形態に係る高次元テクスチャ描画装置における処理の流れを示すフローチャート
【符号の説明】
１０１…異方性テクスチャ変換部
１０２…異方性パラメータ計算部
１０３…描画テクスチャ生成部
１０４…描画部
【図１】
2004005228.tif 000003
【図２】
2004005228.tif 000004
【図３】
2004005228.tif 000005
【図４】
2004005228.tif 000006
【図５】
2004005228.tif 000007
【図６】
2004005228.tif 000008
【図７】
2004005228.tif 000009
【図８】
2004005228.tif 000010
【図９】
2004005228.tif 000011
【図１０】
2004005228.tif 000012
【図１１】
2004005228.tif 000013