(57)【特許請求の範囲】
【請求項１】
被表示物体の表面にその周囲の風景を映し込む環境マッピングを行う３次元画像生成装置であって、
２次元座標を指定することでメモリアドレスの特定が可能な２次元メモリとして使用することができ、かつ、立方体の表面に対応付けられたメモリ領域を有するメモリを備え、
前記メモリは、縮尺が公比１／２の等比数列を成す複数の環境マップを含むミップマップ構造の環境マップを格納し、
前記複数の環境マップのそれぞれは、立方体の各面に投影された６枚の画像に対応する画像データを有し、
前記複数の環境マップのそれぞれが有する６枚の画像の画像データは、縦横比１：２のメモリ領域の３／４を占めるＬ字状に配置された状態で前記メモリに記憶され、かつ、
前記ミップマップ構造の環境マップは、縮尺の小さな環境マップが、順次、縮尺の大きな環境マップに占有されるＬ字状のメモリ領域の凹状角部に外接する縦横比１：２のメモリ領域内に配置されるように、前記メモリに記憶されていることを特徴とする３次元画像生成装置。
【請求項２】
前記複数の環境マップのそれぞれが有する６枚分の画像データの配置は、全ての環境マップについて統一されており、
前記複数の環境マップのうち、縮尺の小さい環境マップは、縮尺の大きな環境マップに占有されるメモリ領域より、前記メモリの原点（０，０）側のメモリ領域に格納されていることを特徴とする請求項１記載の３次元画像生成装置。
【請求項３】
前記複数の環境マップのそれぞれが有する６枚の画像の画像データは、前記立方体の６面のうち５面の画像の連続性が維持される状態で前記メモリに記憶されていることを特徴とする請求項１または２記載の３次元画像生成装置。
【請求項４】
前記複数の環境マップのそれぞれが有する６枚の画像の画像データは、前記立方体に投影される画像のうち、前記被表示物体との関係で手前、奥、右および左に位置する４枚の画像の連続性が維持される状態で前記メモリに記憶されていることを特徴とする請求項１乃至３の何れか１項記載の３次元画像生成装置。
【請求項５】
３次元画像の生成過程で、被表示物体の表面にその周囲の風景を映し込む環境マッピングを行う際に参照される環境マップの生成方法であって、
立方体の各面に投影された６枚の画像に対応する画像データを作成するステップと、
前記６枚の画像データに基づいて、縮尺が公比１／２の等比数列を成す複数の環境マップを含むミップマップ構造の環境マップを作成するステップと、
２次元座標を指定することでメモリアドレスの特定が可能であり、かつ、立方体表面に対応付けられたメモリ領域を有するメモリに、前記ミップマップ構造の環境マップを記憶させるステップとを備え、
前記複数の環境マップのそれぞれが有する６枚の画像の画像データは、縦横比１：２のメモリ領域の３／４を占めるＬ字状に配置された状態で前記メモリに記憶され、かつ、
前記ミップマップ構造の環境マップは、縮尺の小さな環境マップが、順次、縮尺の大きな環境マップに占有されるＬ字状のメモリ領域の凹状角部に外接する縦横比１：２のメモリ領域内に配置されるように、前記メモリに記憶されていることを特徴とする環境マップの生成方法。
【請求項６】
前記複数の環境マップのそれぞれが有する６枚分の画像データの配置は、全ての環境マップについて統一されており、
前記複数の環境マップのうち、縮尺の小さい環境マップは、縮尺の大きな環境マップに占有されるメモリ領域より、前記メモリの原点（０，０）側のメモリ領域に格納されていることを特徴とする請求項５記載の環境マップの生成方法。
【請求項７】
前記複数の環境マップのそれぞれが有する６枚の画像の画像データは、前記立方体の６面のうち５面の画像の連続性が維持される状態で前記メモリに記憶されていることを特徴とする請求項５または６記載の環境マップの生成方法。
【請求項８】
前記複数の環境マップのそれぞれが有する６枚の画像の画像データは、前記立方体に投影される画像のうち、前記被表示物体との関係で手前、奥、右および左に位置する４枚の画像の連続性が維持される状態で前記メモリに記憶されていることを特徴とする請求項５乃至７の何れか１項記載の環境マップの生成方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、３次元画像生成装置および環境マップの生成方法に係り、特に、ミップ (MIP：Multum in Parvo）マッピングの手法を併用した環境マッピングを実行する３次元画像生成装置、およびその処理に用いられる環境マップを生成する方法として好適な環境マップの生成方法に関する。
【０００２】
【従来の技術】
従来より、３次元画像の現実感を高める手法の一つとして、物体の表面に周囲環境を映り込ませる環境マッピングが知られている。環境マッピングを用いて３次元画像を生成する方法は、例えば、“Reflection Vector Shading Hardware"(Douglas Voorhies and Jim Foran: SIGGRAPH 94 Conference Proceedings, P163)に開示されている。
【０００３】
この手法によれば、環境マッピングは、所定の立方体の各面に対応するメモリ領域を有する環境マップを用いて実行される。以下、それら各面に対応するメモリ領域を、便宜上「環境マップの各面」と称す。環境マップの各面には、上述した立方体を取り巻く３次元空間中の風景（無限遠の遠景を含む）を、その立方体の中心に向けて各面に投影することで得られる画像のデータが記憶されている。
【０００４】
環境マッピングの処理対象である物体（以下、「被表示物体」と称す）は、仮想的に、環境マップに対応する立方体の中心に配置される。被表示物体は、２次元的に配置された複数のピクセルを備える表示部に２次元画像として表示される。環境マッピングの処理はピクセル単位で行われる。以下、処理中の一つのピクセルを「着目ピクセル」と称し、また、ピクセルを「点」とみなす。
【０００５】
環境マッピングの処理では、上述した仮想的な状況の下で、着目ピクセル毎に、その着目ピクセルから被表示物体に向かう視線が設定され、その視線と被示物体とが交わる点が反射点として定義される。被表示物体の各点については予め法線ベクトルが定められており、上記の如く反射点が設定されると、その点の法線ベクトルに基づいて、その反射点における視線の反射ベクトルが求められる。
【０００６】
視線の反射ベクトルは、反射点から着目ベクトルに向かう反射光を発生させる光と逆向きのベクトルである。従って、反射ベクトルの進行方向に存在する風景の色を着目ピクセルの色に反映させれば、反射点に風景が映し込まれているような表現を実現することができる。環境マッピングの処理では、上記の如く求められた反射ベクトルと環境マップとの交点が参照点として決定され、その参照点の画像データ（各色成分の輝度等）が着目ピクセルの色に反映される。その結果、表示部には、周囲の環境を映す被表示物体が表示される。
【０００７】
環境マッピングによって被表示物体に映し込まれる風景の縮尺は物体表面の曲率などに応じて変化する。ところで、環境マップに記憶されている風景の大きさ、すなわち、被表示物体に映し込まれる風景の元となる絵（以下、「元絵」と称す）の大きさが一定であると、風景を大きく表示する際には元絵上の多数の点がサンプリングされ、風景を小さく表示する際には元絵上の少数の点がサンプリングされる事態が生ずる。
【０００８】
元絵のサンプリング結果に基づいて表示を再生しようとする場合、元絵の中にサンプリング周波数の１／２を越える周波数成分が含まれていると、エイリアシング（aliasing)、すなわち、再生画面上にチラツキ等の不具合を発生させる障害が発生する。従って、環境マッピングによって表示すべき風景に対して元絵が大き過ぎると、すなわち、元絵の解像度が高すぎると、サンプリング密度が不適当に小さくなってエイリアシングが起きることがある。
【０００９】
従来より、上述したエイリアシングを防止する手法としてミップマッピングが知られている。ミップマッピングでは、同一の画像について予め準備された大きさの異なる複数の元絵が用いられる。より具体的には、ミップマッピングでは、表示すべき画像のサイズに応じて、複数の元絵の中から所定数の元絵（通常は２枚）が選択され、それら所定数の元絵のそれぞれからサンプリングされる画像データを補間処理することにより、各ピクセルの画像データが求められる。
【００１０】
上述したミップマッピングによれば、元絵に対するサンプリング密度が小さくなり過ぎるのを防止することができる。このため、上記のミップマッピングを併用して従来の環境マッピングを実行することによれば、被表示物体上に映し込まれる風景の大きさに関わらず、エイリアシングの発生を有効に防止することができる。
【００１１】
【発明が解決しようとする課題】
従来の環境マッピングを実行するためには、立方体の各面に対応する６面分の画像が必要である。従って、環境マッピングとミップマッピングとを組み合わせて行うためには、６面分の画像のそれぞれについて、大きさの異なる複数の元絵が必要である。
【００１２】
メモリ領域に生ずる無駄を排除するため、それら複数の元絵は効率的にメモリ内に記憶されることが望ましい。また、環境マップのデザインを容易にするためには、同じ縮尺で描かれた６枚の画像のデータが、画像相互のつながりが感覚的に理解し易い配置で２次元的に並んで記憶されていることが望ましい。更に、ミップマッピングの実行を容易とするためには、縮尺の異なる複数の画像上における同一点の対応が、複雑な座標変換を行うことなく容易にとれるべきである。
【００１３】
本発明は、上記のような課題を解決するためになされたもので、環境マッピングとミップマッピングとを併せて実行するために必要な環境マップを、上述した要求を満たす状態で記憶する３次元画像生成装置を提供することを第１の目的とする。
【００１４】
また、本発明は、上述した要求を満たす状態で記憶される環境マップを生成することのできる環境マップの生成方法を提供することを第２の目的とする。
【００１５】
【課題を解決するための手段】
上記第１の目的を達成するため、請求項１記載の発明は、被表示物体の表面にその周囲の風景を映し込む環境マッピングを行う３次元画像生成装置であって、２次元座標を指定することでメモリアドレスの特定が可能な２次元メモリとして使用できるメモリを備え、
前記メモリは、縮尺が公比１／２の等比数列を成す複数の環境マップを含むミップマップ構造の環境マップを格納し、
前記複数の環境マップのそれぞれは、立方体の各面に投影された６枚の画像に対応する画像データを有し、
前記複数の環境マップのそれぞれが有する６枚の画像の画像データは、縦横比１：２のメモリ領域の３／４を占めるＬ字状に配置された状態で前記メモリに記憶され、かつ、
前記ミップマップ構造の環境マップは、縮尺の小さな環境マップが、順次、縮尺の大きな環境マップに占有されるＬ字状のメモリ領域の凹状角部に外接する縦横比１：２のメモリ領域内に配置されるように、前記メモリに記憶される構成を有している。
【００１６】
また、請求項２記載の発明は、請求項１記載の３次元画像生成装置であって、前記複数の環境マップのそれぞれが有する６枚分の画像データの配置は、全ての環境マップについて統一されており、
前記複数の環境マップのうち、縮尺の小さい環境マップは、縮尺の大きな環境マップに占有されるメモリ領域より、前記メモリの原点（０，０）側のメモリ領域に格納されるように構成されている。
【００１７】
また、請求項３記載の発明は、請求項１または２記載の３次元画像生成装置であって、
前記複数の環境マップのそれぞれが有する６枚の画像の画像データは、前記立方体の６面のうち５面の画像の連続性が維持される状態で前記メモリに記憶されるように構成されている。
【００１８】
また、請求項４記載の発明は、請求項１乃至３の何れか１項記載の３次元画像生成装置であって、
前記複数の環境マップのそれぞれが有する６枚の画像の画像データは、前記立方体に投影される画像のうち、前記被表示物体との関係で手前、奥、右および左に位置する４枚の画像の連続性が維持される状態で前記メモリに記憶されるように構成されている。
【００１９】
請求項５記載の発明は、上記第２の目的を達成するため、３次元画像の生成過程で、被表示物体の表面にその周囲の風景を映し込む環境マッピングを行う際に参照される環境マップの生成方法であって、
立方体の各面に投影された６枚の画像に対応する画像データを作成するステップと、
前記６枚の画像データに基づいて、縮尺１／２を公比とする複数の環境マップを含むミップマップ構造の環境マップを作成するステップと、
２次元座標を指定することでメモリアドレスの特定が可能であり、かつ、立方体表面に対応付けられたメモリ領域を有するメモリに、前記ミップマップ構造の環境マップを記憶させるステップとを備え、
前記複数の環境マップのそれぞれが有する６枚の画像の画像データは、縦横比１：２のメモリ領域の３／４を占めるＬ字状に配置された状態で前記メモリに記憶され、かつ、
前記ミップマップ構造の環境マップは、縮尺の小さな環境マップが、順次、縮尺の大きな環境マップに占有されるＬ字状のメモリ領域の凹状角部に外接する縦横比１：２のメモリ領域内に配置されるように、前記メモリに記憶される構成を有している。
【００２０】
また、請求項６記載の発明は、請求項５記載の環境マップの生成方法であって、
前記複数の環境マップのそれぞれが有する６枚分の画像データの配置は、全ての環境マップについて統一されており、
前記複数の環境マップのうち、縮尺の小さい環境マップは、縮尺の大きな環境マップに占有されるメモリ領域より、前記メモリの原点（０，０）側のメモリ領域に格納されてるように構成されている。
【００２１】
また、請求項７記載の発明は、請求項５または６記載の環境マップの生成方法であって、
前記複数の環境マップのそれぞれが有する６枚の画像の画像データは、前記立方体の６面のうち５面の画像の連続性が維持される状態で前記メモリに記憶されるように構成されている。
【００２２】
また、請求項８記載の発明は、請求項５乃至７の何れか１項記載の環境マップの生成方法であって、
前記複数の環境マップのそれぞれが有する６枚の画像の画像データは、前記立方体に投影される画像のうち、前記被表示物体との関係で手前、奥、右および左に位置する４枚の画像の連続性が維持される状態で前記メモリに記憶されるように構成されている。
【００２３】
【発明の実施の形態】
以下、図１乃至図５を参照して、本発明の実施の形態について説明する。
図１は、本発明の実施の形態１の３次元画像生成装置のブロック図を示す。図１に示す如く、本実施形態の３次元画像生成装置は、ジオメトリ部１０、レンダリング部１２、メモリ部１４および表示部１６を備えている。
【００２４】
ジオメトリ部１０は、表示すべき３次元画像のデータを生成する処理や、生成した３次元画像のデータを２次元のデータに変換して出力する処理等を実行する部分である。
【００２５】
レンダリング部１２は、３次元画像を表示部１６に描画するために必要な種々の処理を実行する部分である。レンダリング部１２における処理は、ジオメトリ部１０から供給されるデータや、メモリ部１６に格納されている各種のデータ等に基づいて実行される。
【００２６】
メモリ部１４は、レンダリング部１２の処理の実行に必要な情報を記憶しておくための領域である。本実施形態において、メモリ部１４には、３次元画像を構成するポリゴンの奥行き情報を記憶するＺバッファ（図示せず）や、３次元画像に用いられるテクスチャに関するデータを記憶するテクスチャメモリ（図示せず）と共に、環境マッピングの処理に必要な環境マップを格納するキューブメモリ１８が含まれている。尚、本実施形態においては、キューブメモリ１８が前記請求項１記載の「メモリ」に相当している。
【００２７】
表示部１６は、２次元的に配置された複数のピクセルのそれぞれを適当に発色させることによりに３次元画像を表示する部分である。本実施形態において、表示部１６は、レンダリング部１２からピクセル毎の描画データが供給されることにより３次元画像を表示する。
【００２８】
本実施形態の３次元画像装置は、レンダリング部１６において、環境マッピング、すなわち、３次元画像を構成する被表示物体の表面に周囲環境を映り込ませる処理を実行する。
図２は、環境マッピングの内容を説明するための概念図を示す。環境マッピングは、図２に示す環境マップ２０を用いて行われる。環境マップ２０は、キューブメモリ１８に格納されており、所定の３次元空間中に仮定される所定の立方体の各面に対応するメモリ領域を備えている。以下、それら各面に対応するメモリ領域を、便宜上「環境マップ２０の各面」と称す。
【００２９】
環境マップ２０の各面には、上述した立方体を取り巻く３次元空間中の風景（無限遠の遠景を含む）に関する画像データが、より具体的には、その風景を立方体の中心に向けて立方体の各面に投影することで得られる画像のデータが記憶されている。尚、画像データには、例えば、立方体上の各点における各色成分（Ｒ，Ｇ，Ｂ等）の輝度や、各点の不透明度を表すオパシティ等が記憶されている。
【００３０】
環境マッピングの処理において、周囲の風景の映し込みの対象とされる物体（以下、「被表示物体２２」と称す）は、環境マップ２０に対応する立方体の中心に配置される。説明の便宜上、図２では被表示物体２２を大きく表しているが、環境マッピングの処理において、被表示物体２２は無限小であり、その表面上の全ての点が立方体の中心点に集約されているものとして扱われる。
【００３１】
被表示物体２２は、２次元的に配置された複数のピクセルを備える表示部１６に表示される。以下、被表示物体２２の各点に対応するピクセルを「着目ピクセル」と称し、また、ピクセルを点とみなす。環境マッピングの処理では、着目ピクセル毎に被表示物体２２に向かう視線２４が設定され、更に、視線２４と被表示物体２２とが交わる点が反射点２６として定義される。
【００３２】
被表示物体２２については、その表面上の各点について予め法線ベクトル（図示せず）が定められている。環境マッピングの処理では、上記の如く設定された反射点２６について、その点の法線ベクトルに基づいて視線２４の反射ベクトル２８が求められる。反射ベクトル２８は、反射点２６から着目ベクトルに向かう反射光を発生させる光と逆向きのベクトルである。従って、反射ベクトル２８の進行方向に存在する風景の色を着目ピクセルの色に反映させれば、反射点２６に風景が映し込まれているような表現を実現することができる。
【００３３】
環境マッピングの処理では、上記の如く求められた反射ベクトル２８と環境マップ２０との交点が参照点３０として決定され、その参照点３０に関するデータを用いて個々の着目ピクセルに反映させる画像データが算出される。その結果、表示部１６には、周囲の環境を映す被表示物体２２が表示される。
【００３４】
本実施形態の３次元画像生成装置は、レンダリング部１２において、上述した環境マッピングと併せてミップマッピングの処理を実行する。
図３は、ミップマッピングの内容を説明するための概念図を示す。より具体的には、図３（Ａ）はミップマッピングの際に参照される縮尺１の元絵（面０）を、図３（Ｂ）は面０と同じ画像が縮尺１／２で描かれた元絵（面１）を、図３（Ｃ）は面０と同じ画像が縮尺１／４で描かれた元絵（面２）を、また、図３（Ｄ）は面０と同じ画像が縮尺１／８で描かれた元絵（面３）をそれぞれ示す。
【００３５】
ミップマッピングは、図３（Ａ）乃至図３（Ｄ）に示すような複数の元絵、すなわち、同じ画像を異なる縮尺で表した複数の元絵を使用して行われる。すなわち、ミップマッピングの処理では、上述した複数の元絵の中から、表示すべき画像と縮尺の近似する所定数（例えば２枚）の元絵が選択され、それらの元絵からサンプリングされた画像データを用いた補間処理が実行されることにより各ピクセルの画像データが算出される。縮尺の異なる元絵の数は、等比数列的に縮尺を変化させることにより所望の数だけ設けることができる。以下、縮尺の異なるそれら一連の元絵を「ミップマップ」と、また、縮尺の異なる一連の元絵を組み合わせた構造を「ミップマップ構造」と称す。
【００３６】
本実施形態において、ミップマップは、環境マップ２０に対応する立方体の各面に投影された６枚の風景画像のそれぞれについて準備されている。換言すると、本実施形態において、キューブメモリ１８には、縮尺の異なる複数の環境マップが、上述したミップマップ構造で記憶されている。以下、「環境マップ２０」は、図３（Ａ）に示す“面０”に対応する環境マップ、すなわち、縮尺１／１の環境マップを指すものとする。また、“面１”以降に対応する縮尺１／２以下の環境マップを特に指定する必要がある場合は、その環境マップを「環境マップ２０−ｎ」（ｎは整数）と記す。
【００３７】
レンダリング部１２は、図１に示す如く、キューブアドレス生成部３２、環境ジェネレータ３４、および色演算部３６を備えている。キューブアドレス生成部３２では、以下の処理が実行される。
（１）上述した手法で着目ピクセル毎に視線２４および反射ベクトル２８を生成し、縮尺１／１の環境マップ２０上で参照点３０を決定する処理。
（２）表示すべき画像の大きさに応じて参照すべき２枚の環境マップ２０−ｎを選択する処理。
（３）選択された環境マップ２０−ｎ上で参照点３０に対応する点を求め、それらの点に対応するキューブメモリ１８上でのアドレス（以下、「キューブアドレス」と称す）を出力する処理。
【００３８】
キューブアドレス生成部３２から出力されるキューブアドレスは環境ジェネレータ３４に供給される。環境ジェネレータ３４では、以下の処理が実行される。（１）キューブメモリ１８にアクセスして、キューブアドレスに対応する画像データを読み出す処理。
（２）キューブメモリ１８から読み出した画像データを用いて適当な補間処理を行うことで、表示すべき画像の大きさに適合する画像データを求める処理。
【００３９】
環境ジェネレータ３４で求められた画像データは色演算部３６に供給される。色演算部３６は、レンダリング部１２の他の部分で演算された画像データに、環境ジェネレータ３４で求められた画像データを反映させることにより、着目ピクセルで発色させるべき色に関するデータを演算する。色演算部３６で生成されたデータは表示部１６に供給される。その結果、風景が映し込まれた被表示物体２２が表示部１６に表示される。
【００４０】
上述の如く、レンダリング部１２は、キューブメモリ１８に記憶されているミップマップ構造の環境マップを用いて、ミップマッピングと環境マッピングとを組み合わせて着目ピクセルに反映させるべき画像データを求める。ミップマッピングによれば、表示すべき風景の大きさに応じて元絵に対するサンプリング密度が大きく変化するのを防止して、小さな画像でエイリアシングが生ずるのを防止することができる。従って、本実施形態の３次元画像生成装置によれば、被表示物体２２の表面に精細な風景を任意の大きさで映し込ませることができる。
【００４１】
本実施形態の３次元生成装置において、キューブメモリ１８の内部、そのインターフェースの内部、或いは環境ジェネレータ３４の内部には、２次元データ（ｘ、ｙ）をキューブメモリ１８のメモリアドレスに変換する変換部が含まれている。従って、本実施形態において、キューブメモリ１８は、２次元座標を指定することでメモリ領域が特定できるメモリ（以下、「２次元メモリ」と称す）として使用することができる。
【００４２】
本実施形態の３次元生成装置は、上記の如く２次元メモリとして扱うことのできるキューブメモリ１８の内部に、以下に説明する状態でミップマップ構造の環境マップが格納されている点に特徴を有している。以下、図４および図５を参照して、本実施形態の特徴部について説明する。
【００４３】
図４（Ａ）は、環境マップ２０に対応する立方体の展開図の１例を示す。環境マップ２０には、上記の如く６面分の風景画像が記憶されている。図４（Ａ）において、“上”、“下”、“左”、“右”、“手前”、“奥”は、それぞれ、スクリーンの観察者にとっての方向を示す。但し、表裏の関係は被表示物体から見た向きとなっている。このため、図４上では左右が逆転している。６枚の風景画像のデータは、それらの画像が投影された各面を例えば図４（Ａ）のように展開することで、互いの画像の連続性を最大限維持したまま２次元のデータ領域に格納することが可能となる。
【００４４】
従って、キューブメモリ１８に、図４（Ａ）に示す展開図と同じ２次元形状のメモリ領域を確保して、そのメモリ領域に展開図と同じ配列で画像データを格納すれば、各面の画像相互の連続性を最大限に維持した状態で、環境マップ２０の画像データをキューブメモリ１８に納めることができる。しかしながら、図４（Ａ）に示す展開図の配置をそのままキューブメモリ１８に反映させると、キューブメモリ１８中に無駄な領域が発生し易い。
【００４５】
このため、本実施形態においては、図４（Ｂ）に示す如く、“下”の画像データを、“上”と“左”の双方に接する位置に移動させた状態で、環境マップ２０の画像データをキューブメモリ１８に格納している。環境マップ２０の画像データをこのように配置することによれば、５枚の風景画像の連続性を維持したまま、キューブメモリ１８に効率的にデータを格納することが可能となる。
【００４６】
図５は、本実施形態において用いられるキューブメモリ１４のメモリ領域を表す概念図である。本実施形態において、キューブメモリ１４には、縦横比が１：２であり、かつ、環境マップ２０の総面積に対して４／３の面積を有するメモリ領域が与えられている。図５に示す如く、環境マップ２０のデータは、キューブメモリ１４の原点（０，０）付近が未使用領域となるように、キューブメモリ１４に格納される。
【００４７】
環境マップ２０が上記の如くキューブメモリ１４に格納されると、キューブメモリ１４の原点（０，０）付近には、環境マップ２０によって使用されない領域が、環境マップ２０によって使用される領域の１／３だけ残存する。本実施形態において、その未使用領域には、環境マップ２０と同様に図４（Ｂ）に示す状態に配置された環境マップ２０−１のデータが格納されている。縮尺が１／２である環境マップ２０−１の総面積は、縮尺が１／１である環境マップ２０の総面積の１／４であるため、環境マップ２０−１は上述した未使用領域内に納めることができる。
【００４８】
同様に、環境マップ２０−２は、環境マップ２０−１によって使用されない領域内に、また、環境マップ２０−３は、環境マップ２０−２によって使用されない領域内に順次配置される。このように、本実施形態で用いられるキューブメモリ１８の内部には、ミップマップ構造を有する環境マップのデータが、順次無駄なメモリ領域を発生させることなく、環境マップ２０の総面積に対して４／３の面積を有するメモリ領域の中に効率的に格納されている。
【００４９】
上述の如く、キューブメモリ１８に格納されている個々の環境マップ２０，２０−１，２０−２，・・は、６枚の風景画像のうち５枚の風景画像の連続性が保たれた状態で記憶されている。特に、本実施形態においては、被表示物体２２の側面を取り巻く手前、奥、左および右の画像の連続性が維持されている。被表示物体２２を取り巻く風景は、個々の風景画像の連続性が維持されているほど感覚的に理解し易い。特に、横方向に連続すべき手前、奥、左および右の画像の連続性が保たれていると、その風景を感覚的に理解することが容易である。環境マッピングを利用するシステムは、環境マッピングに用いられる風景が感覚的に理解し易いほど扱いが容易となる。このため、本実施形態の３次元画像生成装置によれば、扱いが容易となるという効果を得ることができる。
【００５０】
また、本実施形態の３次元画像生成装置において、ミップマップ構造の環境マップは、縮尺が１／２となる毎にデータ領域が原点（０，０）に近づくようにキューブメモリ１８に記憶されている。このようなデータ構造によれば、環境マップ２０上に参照点２０を決定した後、その参照点２０のｘ、ｙ座標値を共に１／２とするだけで、環境マップ２０−１上の対応点の座標値（ｘ／２、ｙ／２）を求めることが可能となる。
【００５１】
更に、その参照点２０のｘ、ｙ座標値を１／４、或いは１／８とするだけで、環境マップ２０−２、または２０−３上の対応点の座標値（ｘ／４、ｙ／２）、または（ｘ／８、ｙ／８）求めることが可能となる。このように、本実施形態において用いられる環境マップのデータ構造によれば、ミップマッピングの処理の過程で要求される座標変換を容易な処理により実現することができる。従って、本実施形態の３次元画像生成装置によれば、ミップマッピングの処理を容易に行うことができる。
【００５２】
【発明の効果】
請求項１記載の発明によれば、複数の環境マップのそれぞれが備える６枚分の画像データは所定のＬ字状に配列された状態でメモリに格納される。また、それらの環境マップの画像データは、縮尺の小さな環境マップの画像データが、順次、縮尺の大きな環境マップに占有されるＬ字状のメモリ領域の凹状角部に外接するようにメモリに格納される。このような構造によれば、縮尺の異なる複数の環境マップを含むミップマップ構造の環境マップを、効率的にメモリに格納することができる。従って、本発明によれば、３次元画像生成装置の小型化および低価格化を図ることができる。
【００５３】
請求項２記載の発明によれば、ミップマップ構造の環境マップに含まれる複数の環境マップは、メモリに原点（０，０）付近のメモリ領域を占有しないように縦横被１：２のメモリ領域中に格納される。また、本発明において、環境マップのそれぞれが格納されるメモリ領域は、その環境マップの縮尺が１／２となる毎に原点（０，０）に近づく。この場合、所定の環境マップ上の任意の点の座標を（ｘ、ｙ）とすると、その環境マップの縮尺に対して１／２の縮尺を有する環境マップ上で、その任意の点に対応する点の座標は（ｘ／２，ｙ／２）となる。このため、本発明によれば、ミップマップ構造の環境マップ上で相互に対応する点を、簡単な座標変換を行うだけで容易に対応付けることができる。このため、本発明によれば、ミップマッピングと環境マッピングとを組み合わせた処理を、簡単な処理により実現することができる。
【００５４】
請求項３記載の発明によれば、ミップマップ構造の環境マップに含まれる複数の環境マップのそれぞれが、５枚分の画像データの連続性を維持した状態でメモリに格納されている。このような画像データの配置によれば、環境マップに記憶されている画像を感覚的に容易に理解することができる。このため、本発明によれば、３次元画像生成装置の扱いを容易とすることができる。
【００５５】
請求項４記載の発明によれば、ミップマップ構造の環境マップに含まれる複数の環境マップのそれぞれが、手前、奥、右および左に位置する４枚分の画像データの連続性を維持した状態でメモリに格納されている。このような画像データの配置によれば、環境マップに記憶されている画像を、感覚的に特に容易に理解することが可能となる。このため、本発明によれば、３次元画像生成装置の扱いを容易とすることができる。
【００５６】
請求項５記載の発明によれば、複数の環境マップのそれぞれが備える６枚分の画像データを、所定のＬ字状に配列された状態で、効率的にメモリに格納することができる。このため、本発明によれば、ミップマッピングと環境マッピングとを組み合わせて行うための環境マップを、少ないメモリ消費量で安価に製造することができる。
【００５７】
請求項６記載の発明によれば、ミップマップ構造の環境マップに含まれる複数の環境マップを、簡単な座標変換で対応点の対応付けができる状態で効率良くメモリに格納することができる。このため、本発明によれば、ミップマッピングと環境マッピングとを組み合わせた処理を簡単な処理で実現するうえで好適な環境マップを、容易に生成することができる。
【００５８】
請求項７記載の発明によれば、ミップマップ構造の環境マップに含まれる複数の環境マップのそれぞれを、５枚分の画像データの連続性が維持されるようにメモリに格納することができる。このため、本発明によれば、感覚的に理解し易い状態で画像を記憶する環境マップを生成することができる。
【００５９】
請求項８記載の発明によれば、ミップマップ構造の環境マップに含まれる複数の環境マップのそれぞれを、手前、奥、右および左に位置する４枚分の画像データの連続性が維持されるようにメモリに格納されている。このため、本発明によれば、感覚的に特に理解し易い状態で画像を記憶する環境マップを生成することができる。
【図面の簡単な説明】
【図１】  本発明の実施の形態１の３次元画像生成装置のブロック図である。
【図２】  図１に示す３次元画像生成装置において実行される環境マッピングの内容を説明するための図である。
【図３】  図１に示す３次元画像生成装置において実行されるミップマッピングの内容を説明するための図である。
【図４】  図１に示す３次元画像生成装置が備えるキューブメモリに記憶される画像データの配置を説明するためのずである。
【図５】  図１に示す３次元画像生成装置が備えるキューブメモリのメモリ領域を概念的に表す図である。
【符号の説明】
１０  ジオメトリ部
１２  レンダリング部
１４  メモリ部
１６  表示部
１８  キューブメモリ
２０，２０−１，２０−２，２０−３  環境マップ
２２  被表示物体
２４  視線
２６  反射点
２８  視線の反射ベクトル
３０  参照点
【図１】
0004308367.tif 000002
【図２】
0004308367.tif 000003
【図３】
0004308367.tif 000004
【図４】
0004308367.tif 000005
【図５】
0004308367.tif 000006