(57)【要約】  水面をまたぐ物体について、水面による反射、水中にある部分の屈折を再現した画像を表示する。水面より上の部分を直接見た画像を作成するための仮想視点、水面より上の部分が反射して見える画像を作成するための仮想視点、水面より下の部分が屈折して見える画像を作成するための仮想視点を設定し、それぞれの視点から得られた画像を合成する。
2007129476.tif 000002
【特許請求の範囲】
【請求項１】
仮想空間内に、表面のテクスチャがあらかじめ設定されたオブジェクトを設定するオブジェクト設定ステップと、 
前記仮想空間内を複数の空間に分割する界面を設定する界面設定ステップと、 
前記オブジェクトの一部が存在する空間（第１空間という。）内の部分を描画する際には、前記オブジェクトにおける第１空間側のテクスチャのみを可視化するステップと、 
前記オブジェクトの他の部分が存在する空間（第２空間という。）内の部分を描画する際には、前記オブジェクトにおける第２空間側のテクスチャのみを可視化するステップと、 
を備えたことを特徴とする画像処理プログラム。 
【請求項２】
仮想空間内にオブジェクトを設定するオブジェクト設定ステップと、 
前記仮想空間内を複数の空間に分割する界面を設定する界面設定ステップと、 
前記空間の少なくとも１個（第１空間という。）について、該空間内で、前記空間内に少なくともその一部が存在する前記オブジェクトを描画する第１の仮想描画視点を設定する第１描画視点設定ステップと、 
前記界面を介して前記第１空間に隣接する空間（第２空間という。）内で、前記界面について、前記第１の仮想描画視点に対して略対称な第２の仮想描画視点を設定する第２描画視点設定ステップと、 
前記第１空間内で、前記第１、第２の仮想描画視点の視線方向ベクトルを含む平面上に配置され、前記第１の仮想描画視点と前記界面との交点またはその近傍をとおり、前記を第１の仮想描画視点の視線方向ベクトルを所定の角度分界面方向に回転した視線方向ベクトルを有する第３の仮想描画視点を設定する第３描画視点設定ステップと、 
第１の仮想描画視点で描画された前記オブジェクトの画像について、第１空間内のテクスチャを描画し、第２空間内のテクスチャを描画せずにオブジェクトの描画を行う第１テクスチャ描画ステップと、 
第２の仮想描画視点で描画された前記オブジェクトの画像について、第１空間内のテクスチャを描画し、第２空間内のテクスチャを描画せずにオブジェクトの描画を行う第２テクスチャ描画ステップと、 
第３の仮想描画視点で描画された前記オブジェクトの画像について、第２空間内のテクスチャを描画し、第１空間内のテクスチャを描画せずにオブジェクトの描画を行う第３テクスチャ描画ステップと、 
を備えた画像処理プログラム。 
【請求項３】
前記第１〜第３テクスチャ描画ステップは、 
前記界面に対して垂直な平面を設定するステップと、 
前記界面を境に、一方の空間側におけるテクスチャ透明度を１に、他の空間側のテクスチャ透明度を０に設定して、可視／透明テクスチャを設定するステップと、 
前記垂直な平面から、前記オブジェクトに対して、前記可視／透明テクスチャを投影するステップと、 
前記オブジェクトのあらかじめ設定されたテクスチャと、前記投影された可視／透明テクスチャを合成するステップと、 
を含むことを特徴とする、請求項1または２記載の画像処理プログラム。 
【請求項４】
請求項１記載の画像処理プログラムを実行するためのプログラムコードが記録されたコンピュータ読み取り可能な記憶媒体。
【請求項５】
仮想空間内に、表面のテクスチャがあらかじめ設定されたオブジェクトを設定するオブジェクト設定手段と、
前記仮想空間内を複数の空間に分割する界面を設定する界面設定手段、
前記オブジェクトの一部が存在する空間（第１空間という。）内の部分を描画する際には、前記オブジェクトにおける第１空間側のテクスチャのみを可視化する手段と、
前記オブジェクトの他の部分が存在する空間（第２空間という。）内の部分を描画する際には、前記オブジェクトにおける第２空間側のテクスチャのみを可視化する手段と、
を備えたことを特徴とする画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想空間内の異なる屈折率を持つ界面における光の反射、屈折を表現するための画像処理装置および画像処理プログラムに関する。 【０００２】
昨今のテレビゲームにおいては、三次元の仮想空間を用いたグラフィック表現が一般的となっている。しかし、一般のゲーム機に使われている画像処理装置では、三次元の仮想空間における水面の光学的効果等を高速な描画処理を行う中で表現することは難しかった。高価なパーソナルコンピュータや高機能の画像処理装置を搭載した高級なゲーム機では、「ピクセルシェーダ」等の専用ハードウエアを含む画像処理装置が使用されているため、水面の光学的な効果を表現することは可能であるが、高価な処理装置を搭載する必要があるため、一般の廉価なゲーム機で同様の処理を行うことは難しかった。 【０００３】
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従来の方式では、一般的な画像処理装置（「ピクセルシェーダ」などの専用ハードウェアを持たないもの）のためのモデリングにおいては、水面に浮かぶ物体、すなわち水中と水上（空気中）の２種の媒質で構成される界面にまたがるオブジェクトについては、１個のオブジェクトを、水中部分のオブジェクト（モデル）と、水中のオブジェクト（モデル）に分離し、それぞれ別個の画像処理を実行する必要があった。 【０００５】
例えば、図１８に示すように、仮想空間ＳＰ内に水面の上下に渡って存在するオブジェクトＯＢを表示する場合、水面Ｗよりも上の部分（ハッチングを付して示す。）のモデルＯＢ１（図１９）と水面より下の部分のモデルＯＢ２（図２０）を予めカット（分割）モデルとして生成しておいたうえで個別にデータとして管理し、別個に画像処理装置での描画処理を行わなければならなかった。 【０００６】
このようなオブジェクトのカット（分割）モデルの分離生成は、コンピュータグラフィックスのデザイナにとって大きな負担であるとともに、管理すべきデータ量が増え、また描画の際には画像処理装置においては仮想空間内でオブジェクトデータとして処理されるデータ量が増加するため、処理が複雑となり、いわゆる「処理落ち」と呼ばれる描画処理遅延の原因の一つとなるという問題があった。 【０００７】
またこのような描画方法を用いる場合では、前記仮想空間ＳＰ内の水面Ｗの高さやオブジェクトＯＢの位置・角度を変化させたい場合、予め全てのパターンでそれぞれのオブジェクトについてカット(分割)モデルを用意しておく必要があるため、ゲーム内の状況に応じて仮想空間内の水面の高さやオブジェクトの位置・角度を変更することはできないという問題があった。 【０００８】
本発明はこのような従来の問題点を解消すべく創案されたもので、仮想空間内の界面における光の反射、屈折を、専用の画像処理装置を用いずに、比較的軽負荷の処理により表現することを目的とする。 
【課題を解決するための手段】
【０００９】
本発明に係る画像処理プログラムは、仮想空間内に、表面のテクスチャがあらかじめ設定されたオブジェクトを設定するオブジェクト設定ステップと、前仮想空間内を複数の空間に分割する界面を設定する界面設定ステップと、前記オブジェクトの一部が存在する空間（第１空間という。）内の部分を描画する際には、前記オブジェクトにおける第１空間側のテクスチャのみを可視化するステップと、前記オブジェクトの他の部分が存在する空間（第２空間という。）内の部分を描画する際には、前記オブジェクトにおける第２空間側のテクスチャのみを可視化するステップとを備える。
これによって、仮想空間内の媒質界面における光の反射、屈折を、専用の画像処理装置を用いずに、比較的軽負荷の処理により表現し得る。【００１０】
本発明に係る画像処理プログラムは、仮想空間内にオブジェクトを設定するオブジェクト設定ステップと、前記仮想空間内を複数の空間に分割する界面を設定する界面設定ステップと、前記空間の少なくとも１個（第１空間という。）について、該空間内で、前記空間内に少なくともその一部が存在する前記オブジェクトを描画する第１の仮想描画視点を設定する第１描画視点設定ステップと、前記界面を介して前記第１空間に隣接する空間（第２空間という。）内で、前記界面について、前記第１の仮想描画視点に対して略対称な第２の仮想描画視点を設定する第２描画視点設定ステップと、前記第１空間内で、前記第１、第２の仮想描画視点の視線方向ベクトルを含む平面上に配置され、前記第１の仮想描画視点と前記界面との交点またはその近傍をとおり、前記を第１の仮想描画視点の視線方向ベクトルを所定の角度分界面方向に回転した視線方向ベクトルを有する第３の仮想描画視点を設定する第３描画視点設定ステップと、第１の仮想描画視点で描画された前記オブジェクトの画像について、第１空間内のテクスチャを描画し、第２空間内のテクスチャを描画せずにオブジェクトの描画を行う第１テクスチャ描画ステップと、第２の仮想描画視点で描画された前記オブジェクトの画像について、第１空間内のテクスチャを描画し、第２空間内のテクスチャを描画せずにオブジェクトの描画を行う第２テクスチャ描画ステップと、第３の仮想描画視点で描画された前記オブジェクトの画像について、第２空間内のテクスチャを描画し、第１空間内のテクスチャを描画せずにオブジェクトの描画を行う第３テクスチャ描画ステップとを備える。
これによって、仮想空間内の媒質界面における光の反射、屈折を、専用の画像処理装置を用いずに、比較的軽負荷の処理により表現し得る。【００１１】
本発明に係る画像処理プログラムにおいて、前記第１〜第３テクスチャ描画ステップは、前記界面に対して垂直な平面を設定するステップと、前記界面を境に、一方の空間側におけるテクスチャ透明度を１に、他の空間側のテクスチャ透明度を０に設定して、可視／透明テクスチャを設定するステップと、前記垂直な平面から、前記オブジェクトに対して、前記可視／透明テクスチャを投影するステップと、前記オブジェクトのあらかじめ設定されたテクスチャと、前記投影された可視／透明テクスチャを合成するステップとを含む。
これによって、仮想カメラの第１媒質内のオブジェクトを直接撮影した画像と、界面における反射、屈折画像とが表現される。【００１２】
本発明に係る画像処理装置は、仮想空間内に、表面のテクスチャがあらかじめ設定されたオブジェクトを設定するオブジェクト設定手段と、前記仮想空間内を複数の空間に分割する界面を設定する界面設定手段、前記オブジェクトの一部が存在する空間（第１空間という。）内の部分を描画する際には、前記オブジェクトにおける第１空間側のテクスチャのみを可視化する手段と、前記オブジェクトの他の部分が存在する空間（第２空間という。）内の部分を描画する際には、前記オブジェクトにおける第２空間側のテクスチャのみを可視化する手段とを備える。
これによって、仮想空間内の媒質界面における光の反射、屈折を、専用の画像処理装置を用いずに、比較的軽負荷の処理により表現し得る。
【発明の効果】
【００１３】
本発明によれば、光の反射、屈折を、比較的軽負荷の処理により表現し得る。 
【発明を実施するための最良の形態】
【００１４】
次に本発明に係る画像処理装置をゲーム機に適用した実施例を図面に基づいて説明する。
【実施例１】
【００１５】
［ゲーム装置］ 
図１は、本発明に係るゲーム装置（画像処理装置）の実施例１を示す正面図、図２は、図１のゲーム装置を示すブロック図である。 【００１６】
図１において、ゲーム装置（画像処理装置）２０００には、コントロ−ラ２１００、ＴＶモニタ２２００等の表示装置およびキーボード２３００が接続されている。 【００１７】
表示装置２２００にはコントローラ２１００によって制御されるオブジェクトＯＢが表示され、オブジェクトＯＢは、空気（空気で占められた第１空間）Ｍ１に接した水（水で占められた第２空間）Ｍ２に浮かんでおり、異なる屈折率を持つ空間Ｍ１、Ｍ２に接している。実際のゲームにおいては、仮想空間内にはこれら以外にもコントローラからの入力信号によって座標を制御されるプレイヤーキャラクターオブジェクトなど多くのオブジェクトが存在するが、ここではオブジェクトＯＢについて説明を行う。 【００１８】
図２において、ゲーム装置（画像処理装置）２０００は、全体を制御するＣＰＵ１０００と、ゲーム装置２０００を起動させるためのプログラムを格納するブートロム１０１０と、ＣＰＵ３０１によって実行されるプログラムやデータを格納するシステムメモリ１０２０とを有する。 【００１９】
ゲーム装置２０００には、表示すべき画像を生成、制御するビデオプロセッサ１０３０と、生成される画像の元となる画像や生成された画像を記憶するグラフィックメモリ１０４０が設けられ、ビデオプロセッサ１０３０は、生成した画像を表示装置２２００に表示する。 【００２０】
ゲーム装置２０００には、音声を生成するオーディオプロセッサ１０７０と、生成される音声のデータを記憶するオーディオメモリ１０８０が設けられ、オーディオプロセッサ１０７０はサウンドメモリ１０８０に記憶されたデータに基づいて音声のデジタル信号を生成し、スピーカやヘッドフォン（図示省略）によって音声を出力する。 【００２１】
ゲーム装置２０００には、プログラムデータ等の記憶装置としてＣＤ−ＲＯＭドライブ１０９０等が設けられ、記憶装置において記憶媒体に格納されたゲームプログラムやデータをシステムメモリ１０２０、グラフィックメモリ１０４０、オーディオメモリ１０８０に読み込まれる。 【００２２】
ゲーム装置２０００にはメモリインターフェース１０３０が設けられ、遊戯者が保有するメモリカードＡ、Ｂに対する読み書きが可能である。これによって、各ユーザのゲーム成績、中途で終了したゲームの状態等を登録し得る。 【００２３】
ゲーム装置２０００には、通信インターフェース１１６０を介してモデム１１５０が設けられ、ネットワークを介して複数のゲーム装置２０００によるネットワークゲームを実行でき、また、サーバ（図示省略）から、ゲーム成績の統計、各遊戯者順位、種々のイベント等、ゲームに関する種々の情報を取得し得る。 【００２４】
ゲーム装置２０００には、コントローラインターフェース１１４０が設けられ、コントローラ２１００はコントローラインターフェース１１４０の端子１〜４に接続される。 【００２５】
[画像処理アルゴリズム] 
次に、ゲーム装置２０００によって実行される画像処理のアルゴリズムを説明する。 【００２６】
図３は、図１のゲーム装置による光の屈折、反射の効果を表現するための仮想描画視点を示す正面図、図４は、図３の左側面図、図５は、図３における第１の仮想描画視点の画像を示す図、図６は、図３における第２の仮想描画視点の画像を示す図、図７は、図３における第３の仮想描画視点の画像を示す図、図８は、図５〜図７の画像を合成して得られる画像を示す図である。 【００２７】
図３および図４において、ゲーム装置２０００は、ＣＰＵ１０００、システムメモリ１０２０、ビデオグラフィックプロセッサ１０３０、グラフィックメモリ１０４０によって仮想空間ＳＰを生成するとともに、仮想空間ＳＰ内に空間Ｍ１、Ｍ２およびその界面ｐｌの座標を設定生成するとともに、オブジェクトＯＢを設定生成する。 【００２８】
そして、ゲームの進行に応じて、オブジェクトＯＢを表示するための、メインとなる仮想描画視点の位置座標および視線方向ベクトルを設定し、このメインカメラ（描画視点）に基づき、オブジェクトＯＢを表示するために、以下の仮想描画視点Ａ、Ｂ、Ｃの位置座標及び視線方向ベクトルを設定する。 【００２９】
仮想描画視点Ａ：空間Ｍ１内のオブジェクトＯＢおよび界面ｐｌを視野内に含み、空間Ｍ１で観察した画像Ｉａ、及びそれ以外のすべてのオブジェクトの描画を行う。（図３、４、５） 
仮想描画視点Ｂ：界面ｐｌについて、仮想描画視点Ａと対称な座標、視線方向ベクトルの仮想描画視点。空間Ｍ１（媒質は空気）内のオブジェクトＯＢが、界面ｐｌで反射した反射画像Ｉｂの描画を行う。（図３、４、６） 
仮想描画視点Ｃ：仮想描画視点Ａ、Ｂの視線方向ベクトルを含む平面ｐｌＶ上に配置され、仮想カメラＡの、光軸と界面ｐｌとの交点Ｏを通る視線方向ベクトルを有する。空間Ｍ２（媒質は水）内のオブジェクトＯＢの画像を、空間Ｍ１から観察した屈折画像Ｉｃの描画を行う。（図３、４、７） 
仮想描画視点Ａ、Ｂ、Ｃに関して、さらに、以下パラメータを定義する。 
Ｖａ、Ｖｂ、Ｖｃ：仮想描画視点Ａ、Ｂ、Ｃの視線方向ベクトル。 
ｐｌＶ：仮想描画視点Ａ、Ｂの視線方向ベクトルＶａ、Ｖｂおよび法線ｎｌを含む平面。 
Ｏ：仮想描画視点Ａ、Ｂ、Ｃの視線方向ベクトルＶａ、Ｖｂ、Ｖｃと界面ｐｌとの交点。 
Ａ１：仮想描画視点Ａの視線方向ベクトルＶａと法線ｎｌとが、空間Ｍ１内でなす鋭角の角度。 
Ａ２：仮想描画視点Ｂの視線方向ベクトルＶｂと法線ｎｌとが、空間Ｍ１内でなす鋭角の角度。 
ｎ１：空間Ｍ１（媒質は空気）の屈折率。 
ｎ２：空間Ｍ２（媒質は水）の屈折率。 
角度Ａ１、Ａ２の関係は、屈折率ｎ１、ｎ２によって、式（１）のように設定される。 
ｎ１／ｎ２＝ｓｉｎＡ２／ｓｉｎＡ１                            式（１） 【００３０】
図３、５、７に示すように、式（１）の角度関係を設定することによって、仮想描画視点Ｃが空間Ｍ２内のオブジェクトＯＢの画像を、空間Ｍ１内から観察した場合、屈折画像Ｉｃを描画することになり、屈折の正確な表現が可能である。 【００３１】
ただし、必ずしも光学的に正確な画像よりも誇張した画像等が要求される場合もあり、その場合には式（１）とは異なる角度関係を設定すべきである。 【００３２】
一方、図３、５、６に示すように、仮想描画視点Ｂが空間Ｍ１内のオブジェクトＯＢの画像を、空間Ｍ２内から観察した場合、空間Ｍ１側の界面ｐｌの反射画像Ｉｂを描画し得ることになる。 【００３３】
図５に示すように仮想描画視点Ａの画像については、空間Ｍ２内の部分が表示されないように、界面ｐｌに対して垂直な任意の平面ｖｍｌを設定し、空間Ｍ１側についてはテクスチャの透明度（α値）が「１」・空間Ｍ２側についてはテクスチャの透明度（α値）「０」となる「投影テクスチャデータ」を投影する。ここでいうテクスチャの透明度αとは、α＝１＝１００％の場合に本来設定されたテクスチャの描画を１００％の状態（つまり不透明）で描画し、また、α＝０＝０％の場合に、テクスチャの描画を０％の状態（つまり無色透明）で描画を行う。
またα＝０の場合、そのテクスチャの設定されたオブジェクトは無色透明となり実質描画されないことと同様となる。
これにより空間Ｍ２内の部分の表面にマッピングするテクスチャの透明度（α値）は「０」に設定され描画する際には透明となり描画されずし、その他の部分の表面Ｉａについては透明度（α値）は「１」となり、１００％の彩色での描画である不透明となるため通常の状態で描画される。図中、描画される部分Ｉａを交差ハッチングで示す。 【００３４】
図６に示すように仮想描画視点Ｂの画像については、空間Ｍ２内の部分が表示されないように、界面ｐｌに対して垂直な任意の平面ｖｍｌを設定し、仮想描画視点Ａの場合と同様に空間Ｍ１側についてはテクスチャの透明度（α値）が「１」・空間Ｍ２側についてはテクスチャの透明度（α値）が「０」となる「投影テクスチャデータ」を投影する。これにより空間Ｍ２内の部分の画像にマッピングするテクスチャの透明度（α値）＝０とし、その他の部分Ｉｂについては透明度（α値）＝１として描画される。図中、描画される部分を右下りハッチングで示す。 【００３５】
図７に示すように仮想描画視点Ｃの画像については、空間Ｍ１内の部分が表示されないように、界面ｐｌに対して垂直な任意の平面ｖｍｌを設定し、仮想描画視点Ａの場合とは逆に空間Ｍ１側についてはテクスチャの透明度（α値）が「０」・空間Ｍ２側についてはテクスチャの透明度（α値）「１」となる「投影テクスチャデータ」を投影する。これにより空間Ｍ１内の部分の表面にマッピングするテクスチャの透明度（α値）＝０となり描画されず、その他の部分の表面Ｉｃについては透明度（α値）＝１なり、１００％不透過となるため通常の状態で描画される。図中、描画される表示部分を右上りハッチングで示す。 【００３６】
図８における、画像Ｉａ、Ｉｂ、Ｉｃを合成した画像は、メインカメラとなる仮想描画視点Ａの位置からオブジェクトＯＢを観察したときの、オブジェクトＯＢそのものと、反射画像Ｉｂおよび屈折画像Ｉｃを同時に示す。これによって、反射、屈折の効果を含むリアルな画像表現が可能である。   【００３７】
テクスチャマッピングは２次元画像上の処理であるので、従来の分離モデル作成に比較してはるかに演算処理の負担を軽減し得る。 【００３８】
すなわち、以上の実施例は、光の反射、屈折を、比較的軽負荷の処理により表現し得る。 【００３９】
以上の実施例において、ＣＰＵ１０００、システムメモリ１０２０、ビデオグラフィックプロセッサ１０３０、グラフィックメモリ１０４０は、協働して、仮想空間ＳＰ内にオブジェクトＯＢを設定するオブジェクト設定手段、界面ｐｌを接する複数の空間Ｍ１、Ｍ２を生成する空間設定手段として機能する。 【００４０】
またＣＰＵ１０００、システムメモリ１０２０は協働して、仮想描画視点Ａ、Ｂ、Ｃを生成する第１、第２および第３描画視点生成手段として機能する。 【００４１】
さらに、ＣＰＵ１０００、システムメモリ１０２０、ビデオグラフィックプロセッサ１０３０、グラフィックメモリ１０４０は、協働して、仮想描画視点Ａで描画されたオブジェクトＯＢの画像について、空間Ｍ１内の表面を可視化し、空間Ｍ２内の表面を透明にする第１テクスチャ生成手段、仮想描画視点Ｂで描画されたオブジェクトＯＢの画像について、空間Ｍ２内の表面を可視化し、空間Ｍ１内の表面を透明にする第２テクスチャ生成手段、仮想描画視点Ｃで撮影されたオブジェクトＯＢの画像について、媒質Ｍ１内の表面を透明とし、空間Ｍ２内の表面を可視化する第３テクスチャ生成手段として機能する。 【００４２】
以上の実施例では２つの空間Ｍ１、Ｍ２について説明したがより多くの分割された空間が隣接して存在する仮想空間についても、それぞれの隣接界面に注目すれば同様の処理が可能である。 【００４３】
また界面は平面以外の種々の状態のものを処理することが可能であり、例えば図９に示す三種類の高さに変化する水面を表現した界面ｐｌについて、水平な複数の平面の界面ｐｌ１、ｐｌ２、ｐｌ３を生成し、それぞれ異なる仮想描画視点Ｂ、Ｃをそれぞれの界面に対して設定することにより図８の画像Ｉｂ、Ｉｃに対応する画像を、三種類の各界面について描画処理を行うことで、それぞれの界面の高さでの水面とオブジェクトの喫水線でカットされたカットモデルを用意することなく反射、屈折の効果を近似的に表現し得る。 【００４４】
［画像処理プログラム］ 
以上のアルゴリズムによりオブジェクトＯＢを表示するために、ゲーム機２０００においては、図１０に示すように以下のステップを含む画像処理プログラムを実行する。 【００４５】
ステップＳ１１０１：まず仮想空間ＳＰ内に、オブジェクトＯＢを設定し、ステップＳ１１０２に進む。 【００４６】
ステップＳ１１０２：仮想空間ＳＰ内に、空間Ｍ１、Ｍ２、界面ｐｌを設定し、屈折率ｎ１、ｎ２を設定する。次に、ステップＳ１１０３に進む。 【００４７】
ステップＳ１１０３：ゲームの進行に基づき、オブジェクトＯＢを仮想空間内に配置し、ステップＳ１１０４に進む。 【００４８】
ステップＳ１１０４：メインの描画視点となるメインカメラを仮想空間内に設定し、ステップＳ１１０５に進む。この場合のカメラ（描画視点）の設定とは、仮想３次元空間内の描画視点である仮想カメラの位置を示す座標、及び仮想カメラの視線方向ベクトルの設定を意味する。 【００４９】
ステップＳ１１０５：前記メインカメラに基づき、オブジェクトＯＢの少なくとも１部が含まれる空間Ｍ１内に仮想描画視点Ａを設定する。仮想描画視点ＡはオブジェクトＯＢおよび界面ｐｌを視野に含む。次に、ステップＳ１１０６に進む。 【００５０】
ステップＳ１１０６：界面ｐｌについて、座標及び視線方向ベクトルが仮想描画視点Ａと対称な位置に仮想描画視点Ｂを、空間Ｍ２内に設定し、ステップＳ１１０７に進む。 【００５１】
ステップＳ１１０７：空間Ｍ１内に、式（１）の角度関係となるように、仮想描画視点Ｃを設定し、ステップＳ１１０８に進む。 【００５２】
ステップＳ１１０８：オブジェクトＯＢの仮想描画視点Ｂによる画像を生成し、空間媒質Ｍ２内の部位の表面を描画せず、空間Ｍ１内の部位の表面を描画するように、テクスチャマッピングし、画像Ｉｂを生成する。次にステップＳ１１１０に進む。 【００５３】
ステップＳ１１０９：オブジェクトＯＢの仮想描画視点Ｃによる画像を生成し、空間Ｍ１内の部位の表面を描画せず、空間Ｍ２内の部位の表面を描画するように、テクスチャマッピングし、画像Ｉｃを生成する。次にステップＳ１１１１に進む。 【００５４】
ステップＳ１１１０：オブジェクトＯＢの仮想描画視点Ａによる画像を生成し、空間Ｍ２内の部位の表面を描画せず、空間Ｍ１内の部位の表面を描画するようにテクスチャマッピングし、画像Ｉａを生成する。さらに、画像Ｉａ、Ｉｂ、Ｉｃを合成し、描画処理を行う。 【００５５】
以上の画像処理プログラムにより、光の反射、屈折を、予め用意した界面（水面）でのカットモデルを用意することなく比較的軽負荷の処理により表現し得る。 【００５６】
以上の画像処理プログラムを汎用コンピュータで実行する際には、以上の画像処理プログラムを汎用コンピュータに実行させるプログラムコードを、記憶媒体や通信媒体から、汎用コンピュータのシステムメモリに読み込ませる。 
【実施例２】
【００５７】
本発明に係る画像処理方法は実施例１に限定されるものではなく、以下の実施例２に示すように、表面の透明度の設定を、メインカメラとなる一部のカメラ（描画視点）について省略することも可能である。 【００５８】
図１１は、他の仮想空間において、透明度の設定を行わない、第１の仮想描画視点の画像を示す図、図１２は、図１１と同一の前記仮想空間において、透明度の設定を行う以前の、第２の仮想描画視点の画像を示す図、図１３は、図１１と同一の前記仮想空間において、透明度の設定を行う以前の、第３の仮想描画視点の画像を示す図、図１４は、図１１と同一の前記仮想空間において、透明度の設定を行った、第２の仮想描画視点の画像を示す図、図１５は、図１１と同一の前記仮想空間において、透明度の設定を行った、第３の仮想描画視点の画像を示す図、図１６は、図１１、１４、１５の画像を合成し、かつ水面を表示した画像を示す図である。 【００５９】
図１１に示すように、仮想空間ＳＰ内には複数の背景のオブジェクトＯＢ１〜ＯＢ９およびキャラクタのオブジェクトＯＢ１０が存在し、オブジェクトＯＢ１〜ＯＢ９は水面ｐｌ（図１６）の上下に渡って存在する。 【００６０】
図１１、１２、１３は、水の存在を無視して、実施例１と同様の仮想カメラＡ、Ｂ、Ｃ、それぞれからオブジェクトＯＢ１〜ＯＢ１０を捉えた画像を示すものである。 【００６１】
図１４に示すように、仮想描画視点Ｂについては、実施例１と同様に、水中のオブジェクトのテクスチャの透明度α＝０とし、水上のオブジェクトのテクスチャのみをα＝１としてテクスチャの描画を行い可視化する。また、図１５に示すように、仮想描画視点Ｃについても、実施例１と同様に、水上のオブジェクトのテクスチャの透明度α＝０とし、水中のオブジェクトのテクスチャのみをα＝１としてテクスチャの描画を行い可視化する。 【００６２】
一方、仮想描画視点Ａの画像については、透明度αの設定を省略し、水面ｐｌを描画することによって、水中の情景を隠蔽する。これによって透明度設定の演算処理が軽減される。 【００６３】
図１６は図１１、１４、１５の画像と、水面ｐｌの画像を合成した画像を示す。 【００６４】
実施例２の画像処理プログラムは、図１１のフローチャートにおいて、ステップＳ１１１０の処理を以下ステップＳ１１０１−２に修正することによって実現される。 【００６５】
ステップＳ１１０１−２：オブジェクトＯＢ（ＯＢ１〜ＯＢ９）の仮想カメラＡによる画像Ｉａおよび水面ｐｌの画像を生成し、画像Ｉａ、Ｉｂ、Ｉｃおよび水面ｐｌの画像を合する。 【００６６】
実施例２は実施例１の効果に加え、水面描画により隠蔽される部分のテクスチャマッピングのための演算負荷を軽減し得るという効果が得られる。 
【産業上の利用可能性】
【００６７】
以上の実施例はゲームを実行するための画像処理について説明したが、複数媒質を含む仮想空間内のオブジェクトを表示する任意の画像処理、例えば、種々のシミュレータ、プレゼンテーションツール等に、本発明を適用し得ることはいうまでもない。 
【図面の簡単な説明】
【００６８】
【図１】本発明に係るゲーム装置（画像処理装置）の実施例を示す正面図である。（実施例１）
【図２】図１のゲーム装置を示すブロック図である。（実施例１）
【図３】図１のゲーム装置による光の屈折、反射の効果を表現するための仮想カメラを示す正面図である。（実施例１）
【図４】図３の左側面図である。（実施例１）
【図５】図３における第１の仮想描画視点の画像を示す図である。（実施例１）
【図６】図３における第２の仮想描画視点の画像を示す図である。（実施例１）
【図７】図３における第３の仮想描画視点の画像を示す図である。（実施例１）
【図８】図５〜図７の画像を合成して得られる画像を示す図である。（実施例１）
【図９Ａ】図１のゲーム装置によるレベル変化する界面の処理を示す正面図である。（実施例１）
【図９Ｂ】図９Ａの処理における異なるレベルの処理を示す正面図である。（実施例１）
【図９Ｃ】図９Ａの処理における、さらに異なるレベルの処理を示す正面図である。（実施例１）
【図１０】図１のゲーム装置によって実行される画像処理プログラムの処理を示すフローチャートである。（実施例１）
【図１１】他の仮想空間において、透明度の設定および水面描画を行わない、第１の仮想カメラの画像を示す図である。（実施例２）
【図１２】図１１の仮想空間において、透明度の設定を行う以前の、第２の仮想カメラの画像を示す図である。（実施例２）
【図１３】図１１の仮想空間において、透明度の設定を行う以前の、第３の仮想カメラの画像を示す図である。（実施例２）
【図１４】図１１の仮想空間において、透明度の設定を行った、第２の仮想カメラの画像を示す図である。（実施例２）
【図１５】図１１の仮想空間において、透明度の設定を行った、第３の仮想カメラの画像を示す図である。（実施例２）
【図１６】図１１、１４、１５の画像を合成し、かつ水面を表示した画像を示す図である。（実施例２）
【図１７】従来の処理に使用されるモデルを示す図である。（従来例）
【図１８】図１７のモデルにおける水面より上の部分を分離したモデルを示す図である。（従来例）
【図１９】図１７のモデルにおける水面より下の部分を分離したモデルを示す図である。（従来例）
【符号の説明】
【００６９】
１０００  ＣＰＵ 
１０２０  システムメモリ 
１０３０  ビデオプロセッサ 
１０４０  グラフィックメモリ 
２２００  ＴＶモニタ 
２０００  ゲーム装置 
２１００  コントローラ 
２２００  表示装置 
２３００  キーボード 
【図１】
2007129476.tif 000003
【図２】
2007129476.tif 000004
【図３】
2007129476.tif 000005
【図４】
2007129476.tif 000006
【図５】
2007129476.tif 000007
【図６】
2007129476.tif 000008
【図７】
2007129476.tif 000009
【図８】
2007129476.tif 000010
【図９Ａ】
2007129476.tif 000011
【図９Ｂ】
2007129476.tif 000012
【図９Ｃ】
2007129476.tif 000013
【図１０】
2007129476.tif 000014
【図１１】
2007129476.tif 000015
【図１２】
2007129476.tif 000016
【図１３】
2007129476.tif 000017
【図１４】
2007129476.tif 000018
【図１５】
2007129476.tif 000019
【図１６】
2007129476.tif 000020
【図１７】
2007129476.tif 000021
【図１８】
2007129476.tif 000022
【図１９】
2007129476.tif 000023
【手続補正書】
【提出日】平成19年9月5日(2007.9.5)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
仮想空間内にオブジェクトを設定するオブジェクト設定ステップと、
前記仮想空間内を複数の空間に分割する界面を設定する界面設定ステップと、
前記空間の少なくとも１個（第１空間という。）について、該空間内で、前記空間内に少なくともその一部が存在する前記オブジェクトを描画する第１の仮想描画視点を設定する第１描画視点設定ステップと、
前記界面を介して前記第１空間に隣接する空間（第２空間という。）内で、前記界面について、前記第１の仮想描画視点に対して略対称な第２の仮想描画視点を設定する第２描画視点設定ステップと、
前記第１空間内で、前記第１、第２の仮想描画視点の視線方向ベクトルを含む平面上に配置され、前記第１の仮想描画視点と前記界面との交点またはその近傍をとおり、前記を第１の仮想描画視点の視線方向ベクトルを所定の角度分界面方向に回転した視線方向ベクトルを有する第３の仮想描画視点を設定する第３描画視点設定ステップと、
第１の仮想描画視点で描画された前記オブジェクトの画像について、第１空間内のテクスチャを描画し、第２空間内のテクスチャを描画せずにオブジェクトの描画を行う第１テクスチャ描画ステップと、
第２の仮想描画視点で描画された前記オブジェクトの画像について、第１空間内のテクスチャを描画し、第２空間内のテクスチャを描画せずにオブジェクトの描画を行う第２テクスチャ描画ステップと、
第３の仮想描画視点で描画された前記オブジェクトの画像について、第２空間内のテクスチャを描画し、第１空間内のテクスチャを描画せずにオブジェクトの描画を行う第３テクスチャ描画ステップと、
を備えた画像処理プログラム。
【請求項２】
前記第１〜第３テクスチャ描画ステップは、
前記界面に対して垂直な平面を設定するステップと、
前記界面を境に、一方の空間側におけるテクスチャ透明度を１に、他の空間側のテクスチャ透明度を０に設定して、可視／透明テクスチャを設定するステップと、
前記垂直な平面から、前記オブジェクトに対して、前記可視／透明テクスチャを投影するステップと、
前記オブジェクトのあらかじめ設定されたテクスチャと、前記投影された可視／透明テクスチャを合成するステップと、
を含むことを特徴とする、請求項１または２記載の画像処理プログラム。
【請求項３】
請求項１記載の画像処理プログラムを実行するためのプログラムコードが記録されたコンピュータ読み取り可能な記憶媒体。
【請求項４】
仮想空間内にオブジェクトを設定するオブジェクト設定手段と、
前記仮想空間内を複数の空間に分割する界面を設定する界面設定手段と、
前記空間の少なくとも１個（第１空間という。）について、該空間内で、前記空間内に少なくともその一部が存在する前記オブジェクトを描画する第１の仮想描画視点を設定する第１描画視点設定手段と、
前記界面を介して前記第１空間に隣接する空間（第２空間という。）内で、前記界面について、前記第１の仮想描画視点に対して略対称な第２の仮想描画視点を設定する第２描画視点設定手段と、
前記第１空間内で、前記第１、第２の仮想描画視点の視線方向ベクトルを含む平面上に配置され、前記第１の仮想描画視点と前記界面との交点またはその近傍をとおり、前記を第１の仮想描画視点の視線方向ベクトルを所定の角度分界面方向に回転した視線方向ベクトルを有する第３の仮想描画視点を設定する第３描画視点設定手段と、
第１の仮想描画視点で描画された前記オブジェクトの画像について、第１空間内のテクスチャを描画し、第２空間内のテクスチャを描画せずにオブジェクトの描画を行う第１テクスチャ描画手段と、
第２の仮想描画視点で描画された前記オブジェクトの画像について、第１空間内のテクスチャを描画し、第２空間内のテクスチャを描画せずにオブジェクトの描画を行う第２テクスチャ描画手段と、
第３の仮想描画視点で描画された前記オブジェクトの画像について、第２空間内のテクスチャを描画し、第１空間内のテクスチャを描画せずにオブジェクトの描画を行う第３テクスチャ描画手段と、
を備えた画像処理装置。
【国際調査報告】
2007129476.tif 000024
2007129476.tif 000025