(57)【要約】【課題】画像生成装置において、環境マップ生成の計算量を削減する方法を提供する。また、環境マップを用いた高品質の画像を生成する画像生成装置を提供する。【解決手段】環境マッピング手段を有した画像生成装置において、環境マップ生成器に環境マップ領域生成器を接続する。環境マップデータ作成前に、実際の画像生成に使用される部分の環境マップを表す環境マップ領域データの作成を行う。環境マップ領域データに応じて、必要な部分の環境マップを生成し、環境マップ生成の計算量を削減する。【効果】環境マップ生成に必要な計算量の削減を可能とする。また、並列表示環境で通信量の削減を可能とする。【選択図】図１
2004171251.tif 000002
【特許請求の範囲】
【請求項１】
環境マップ生成装置を備えた画像生成装置であって、環境マップ生成前に必要な環境マップ領域を求める手段を備えた画像生成装置
【請求項２】
請求項１に記載の環境マップ領域を求めた後に、環境マップサイズを大きくする手段を備えた請求項１の画像生成装置
【請求項３】
環境マップを使用して、屈折効果や照明モデルを表現する手段を備えた請求項１または２の画像生成装置
【請求項４】
複数台接続による高解像度を表示する手段を備えた請求項１、２または３の画像生成装置
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は画像生成方法および装置に関する。
【０００２】
【従来の技術】
コンピュータグラフィックスで、鏡面反射効果をシミュレーションするには、通常、レイトレーシング手法を使用する必要がある。しかし、レイトレーシングは計算量が多く、リアルタイム描画処理ではほとんど使用されていない。そのため、鏡面反射効果を近似する方法として、環境マッピングを用いることが多い。
【０００３】
環境マッピングは環境マップをテクスチャとするテクスチャマッピングの一手法で、物体の頂点に付随するテクスチャ座標を用いてテクスチャにアクセスする代わりに、視点の動きと共に頂点ごとに決定される反射ベクトルを用いてテクスチャにアクセスすることで、鏡面反射効果をシミュレーションするものである。
【０００４】
環境マッピングは、テクスチャマッピングの一手法であるので、グラフィックスカードの機能としてサポートされていることが多く、リアルタイム描画処理に向いている手法である。
【０００５】
また、グラフィックスカードの高機能化により、鏡面反射効果だけでなく、屈折効果や、ノンフォトリアリスティックレンダリング（非特許文献１）といった、周辺環境からの影響を計算できる手法に対して表現できる。
環境マップの形式としては、正方形６面から構成されるキューブマップ、球面マップ、双対放物面マップなどが有名である（例えば、非特許文献２参照）が、ハードウェア化が用意な事や、数学的に扱いやすいため、通常キューブマップが用いられることが多い。
【０００６】
一方、ネットワーク接続された複数台のＰＣにおいて、各ＰＣに接続されたディスプレイを同期させて、高解像度のリアルタイム画像生成する技術としては、Ｃｈｒｏｍｉｕｍがある（非特許文献３参照）。
【０００７】
Ｃｈｒｏｍｉｕｍは一般的なグラフィックス用ＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）であるＯｐｅｎＧＬを基盤として、ＯｐｅｎＧＬ命令をネットワーク上に流し、表示用ＰＣはネットワークから受け取ったＯｐｅｎＧＬ命令を解釈し表示する。
【０００８】
この技術の下で、環境マッピングを利用するには、各ＰＣで同じ環境マップを生成するか、１台のＰＣで環境マップを作成し他のＰＣに作成した環境マップを通信するか、複数台で一部の環境マップを作成し他のＰＣに環境マップを通信するか、いずれかの方法をとる必要がある。
【０００９】
【非特許文献１】
Ｇｏｏｃｈ  ｅｔ  ａｌ．，  ｀｀Ｉｎｔｅｒａｃｔｉｖｅ  ｔｅｃｈｎｉｃａｌ  ｉｌｌｕｓｔｒａｔｉｏｎ，’’  Ｉｎｔｅｒａｃｔｉｖｅ  ３Ｄ  Ｇｒａｐｈｉｃｓ，  １９９９，  ｐｐ．  ３１−３８
【非特許文献２】
Ｔｏｍａｓ  Ｍｏｌｌｅｒ，  Ｒｅａｌ−Ｔｉｍｅ  Ｒｅｎｄｅｒｉｎｇ，  Ａ  Ｋ  Ｐｅｔｅｒｓ，  ｐｐ．  １２７−１３６
【非特許文献３】
Ｇｒｅｇ  Ｈｕｍｐｈｒｅｙｓ，  ｅｔ  ａｌ．，  ｀｀Ｃｈｒｏｍｉｕｍ：  Ａ  Ｓｔｒｅａｍ−Ｐｒｏｃｅｓｓｉｎｇ  Ｆｒａｍｅｗｏｒｋ  ｆｏｒ  Ｉｎｔｅｒａｃｔｉｖｅ  Ｒｅｎｄｅｒｉｎｇ  ｏｎ  Ｃｌｕｓｔｅｒｓ’’，  ＳＩＧＧＲＡＰＨ  ２００２，  ｐｐ．  ６９３−７０２
【００１０】
【発明が解決しようとする課題】
かかる従来の方法においては、次のような問題がある。
【００１１】
幾何データが小さい場合や、円盤状の平たい幾何データ等の、幾何データの一部分に対して環境マッピングを実施する場合でも、全体の環境マップを生成する必要がある。
【００１２】
高画質・複数枚の環境マップを生成すると、計算量が多くなってしまい、リアルタイムに大画面、高精細な画像を生成するために環境マッピングを使用しようとしても、メモリ領域や計算速度に限界が来てしまう。
【００１３】
しかし、よりリアリティのあるコンピュータグラフィックスを生成するには、鏡面反射効果だけでなく屈折効果等の各種効果が必須であり、環境マッピングが使えることが不可欠である。
【００１４】
本発明は、環境マッピングを用いて高画質かつインタラクティブなコンピュータグラフィックスを生成することを目的とする。
また、本発明の別の目的は、環境マップ生成の計算量を減少させることを目的とする。
【００１５】
【課題を解決するための手段】
上記課題を解決するために、本発明は、環境マップ生成器と、環境マップ用テクスチャ座標生成器と、テクスチャマッピング処理装置と、表示装置を設けた画像生成装置において、環境マップ生成処理の前に、環境マップ領域を生成する環境マップ領域生成器を設けていることを特徴とする。
【００１６】
さらに、環境マップ領域を環境マップの解像度よりも低解像度で求めておいて、環境マップ生成前に、補間近似処理を用いて環境マップと同じ解像度とする手段を設けていてもよい。
【００１７】
さらに、環境マップ用テクスチャ座標生成器では、鏡面反射効果だけでなく、屈折効果や、照明効果を表現するための手段を設けていてもよい。
【００１８】
さらに、複数台の画像生成装置をネットワークで接続し、表示装置間の画像生成領域を適切に分配することにより、高精細な画像を生成してもよい。その際、概画像生成装置間の同期機構を設けている。
【００１９】
各生成器と処理装置はハードウェアのみによるものである必要はなく、ハードウェアとそれを実行するソフトウェアとで構成されていてもよい。
【００２０】
【発明の実施の形態】
図１は、本発明における機能ブロック図を示している。
【００２１】
視点データ１０１と幾何データ１０２より、環境マップ領域生成器１１３において環境マップ領域データ１０５を生成する。
【００２２】
視点データ１０１と幾何データ１０２と環境マップ領域データ１０５とにより、環境マップ生成器１１２において環境マップデータ１０４を生成する。
【００２３】
視点データ１０１と幾何データ１０２とにより、環境マップ用テクスチャ座標生成器１１１において、テクスチャ座表付き幾何データ１０３を生成する。
【００２４】
テクスチャ座標付き幾何データ１０３と環境マップデータ１０４と環境マップ領域データ１０５とにより、テクスチャマッピング処理装置１１４においてテクスチャマッピング処理を実施し、表示装置１１５を通して表示する。
【００２５】
次に、各ブロックとデータについて詳しく説明する。
【００２６】
環境マップ領域データ１０５は、例えばステンシルバッファを用いる。
【００２７】
ステンシルビットが１である時には、環境マップが必要な領域で、ステンシルビットが０である時には環境マップが必要とされない領域である。ステンシルビットが０である領域では環境マップの生成を行わない。
【００２８】
環境マップ領域生成器１１３は、環境マップ用テクスチャ座標生成器１１１と同じように、視点データ１０１と幾何データ１０２より、テクスチャ座標を計算する機能をもち、テクスチャ座標として必要とされる領域では、ステンシルバッファのビットを１とし、それ以外では０とする方法をとる。
【００２９】
環境マップ生成器１１２では、ステンシルビットが１であるテクセルについて環境マップデータ１０４を求めればよい。
その他の各ブロックとデータについての詳細は、特開平１０−１９５７３４を参照のこと。
【００３０】
次に、本発明がどのように時系列処理されるかについて詳しく説明する。
【００３１】
図２は本発明における処理手順を示している。
【００３２】
環境マップ領域生成器１１３において、環境マップ領域データ１０５を生成する（ステップ２１０）。
【００３３】
次に、環境マップ領域データ１１５を用いて、環境マップ生成器１１２において、環境マップ領域内の環境マップデータ１０４を生成する（ステップ２２０）。
【００３４】
さらに、テクスチャマッピング処理装置１１４で、環境マッピング処理を行う（ステップ２３０）。
【００３５】
最後に、処理結果を表示装置で表示（ステップ２４０）。
視点位置の変更や、幾何データの移動、回転、変形等で、環境マップ領域データ１０５に変更が生じる場合には、ステップ２００から再び処理をおこなう。
【００３６】
図３に、視線ベクトル３００と鏡面反射ベクトル３０２の関係を示す。
【００３７】
法線ベクトル（３０１）ｎと視線ベクトル（３００）ｖの反対方向のベクトル−ｖとがなす角度θと、法線ベクトル（３００）ｎと鏡面反射ベクトル（３０２）ｒは同じ角度θをなす。
【００３８】
また、各ベクトル間の関係式は以下のように表される（全てベクトルとして表記している）。
【００３９】
【数１】
ｒ＝２（ｎ・ｖ）ｎ−ｖ
また、物質成分が水やガラスのように透明や半透明な性質を場合は、物質表面では、光は反射せずに透過する。
【００４０】
透過する時には、物質の屈折率により、透過ベクトル４００の方向が定まる。
【００４１】
図４に、視線ベクトル３００と透過ベクトル４００の関係を示す。
【００４２】
法線ベクトル（３０１）ｎと透過ベクトル４００の反対方向がなすベクトルとがなす角度θ１と、法線ベクトル（３０１）の反対方向のベクトル−ｎと透過ベクトル（４００）がなす角度θ２とのなす関係式は以下のように表される。
【００４３】
【数２】
ｎ１×ｓｉｎθ１  ＝  ｎ２×ｓｉｎθ２
以下、図５に、環境マップや環境マップ領域を求める際の、視点データとテクスチャ座標データとの関係を示す。
【００４４】
視点から幾何データであるドーナツ状の円盤５０１を見たときに、鏡面反射ベクトル方向に伸ばしたベクトルがキューブ環境マップ５０３と交差する領域が環境マップとして実際に使用される部分で、この部分を環境マップ領域５０２とする。
【００４５】
図の例では、実際に環境マップとして必要な領域はキューブ環境マップ５０３のごく一部の領域であることがわかる。
【００４６】
図６に、一般的なＰＣ６００の構成を示す。
【００４７】
表示装置１１５は、グラフィックスアクセラレータ６０４に接続されるが、表示装置１１５は一台である必要はなく、複数台の表示装置１１５がグラフィックスアクセラレータ６０４に接続されていてもよい。
【００４８】
表示装置１１５とＰＣ６００の組み合わせを表示装置１１５として扱う場合もある。
【００４９】
表示装置１１５自体に本発明の手段が組み込まれている場合もある。
【００５０】
図７に、ネットワークで接続された複数台の表示装置１１５の一般的な構成を示す。
【００５１】
各ＰＣが、それぞれ、表示装置と接続されている。
【００５２】
ネットワーク同期機構を設けていれば、ＰＣである必要はなく、例えば、レーザーディスクやＤＶＤプレーヤ、ゲーム機、それらの複合機であってもよい。
【００５３】
【発明の効果】
本発明によれば、環境マップ生成に必要な計算量の削減を可能とする。また、並列表示環境で通信量の削減を可能とする。
【図面の簡単な説明】
【図１】本発明の機能ブロック図
【図２】フローチャート図
【図３】反射の原理図
【図４】透過の原理図
【図５】部分環境マップを示す図
【図６】一般的なＰＣの構成を示す図
【図７】分散並列表示の構成を示す図
【符号の説明】
１０１  視点データ
１０２  幾何データ
１０３  テクスチャ座標付き幾何データ
１０４  環境マップデータ
１０５  環境マップ領域データ
１１１  環境マップ用テクスチャ座標生成器
１１２  環境マップ生成器
１１３  環境マップ領域生成器
１１４  テクスチャマッピング処理装置
１１５  表示装置
３００  視線ベクトル
３０１  法線ベクトル
３０２  反射ベクトル
４００  透過ベクトル
５００  視点
５０１  オブジェクト
５０２  環境マップ領域
５０３  キューブ環境マップ
６００  ＰＣ
６０１  ＣＰＵ
６０２  メモリ
６０３  ＨＤＤ
６０４  グラフィックスアクセラレータ
６０５  キーボード
６０６  マウス
８０７  ネットワークコントローラ
６０８  ＬＡＮ
【図１】
2004171251.tif 000003
【図２】
2004171251.tif 000004
【図３】
2004171251.tif 000005
【図４】
2004171251.tif 000006
【図５】
2004171251.tif 000007
【図６】
2004171251.tif 000008
【図７】
2004171251.tif 000009