(57)【特許請求の範囲】
【請求項１】
仮想３次元空間に置かれた光源からの照明光をコンピュータを用いた画像処理によって表現するための方法であって、
前記照明光を互いに異なる態様で表現した複数のテクスチャを用意し、前記照明光を観察する条件の変化に応じて各テクスチャの透明度の差が変化するように各テクスチャに透明度を設定し、それらのテクスチャを前記照明光が観察されるべき領域に前記設定された透明度に従って互いに重なるようにマッピングすることにより、前記照明光の見え方を前記条件に応じて変化させ、
前記条件には前記仮想３次元空間に設定された視点から前記光源までの距離、又は前記視点から前記光源を撮影する画角の少なくとも一方が含まれ、
前記複数のテクスチャには前記照明光が丸く広がっている様子を表現する第１のテクスチャと、光源から放射状に光の筋が延びている様子を表現する第２のテクスチャとが含まれ、
前記距離又は画角が増加するほど前記第１のテクスチャの透明度を減少させるとともに前記第２のテクスチャの透明度を増加させる
ことを特徴とする画像の表現方法。
【請求項２】
前記距離又は画角の変化に合わせて前記第２のテクスチャを回転させることを特徴とする請求項１に記載の画像の表現方法。
【請求項３】
仮想３次元空間に置かれた光源からの照明光をコンピュータを用いた画像処理によって表現するためのプログラムであって、
前記照明光を互いに異なる態様で表現した複数のテクスチャのそれぞれに、前記照明光を観察する条件の変化に応じて各テクスチャの透明度の差が変化するようにして透明度を設定する処理と、それらのテクスチャを前記照明光が観察されるべき領域に前記設定された透明度に従って互いに重なるようにマッピングする処理とを前記コンピュータに実行させることにより、前記照明光の見え方を前記条件に応じて変化させ、
前記条件には前記仮想３次元空間に設定された視点から前記光源までの距離、又は前記視点から前記光源を撮影する画角の少なくとも一方が含まれ、
前記複数のテクスチャとして前記照明光が丸く広がっている様子を表現する第１のテクスチャと、光源から放射状に光の筋が延びている様子を表現する第２のテクスチャとが含まれ、
前記距離又は画角が増加するほど前記第１のテクスチャの透明度を減少させるとともに前記第２のテクスチャの透明度を増加させるように構成された
ことを特徴とするプログラム。
【請求項４】
前記距離又は画角の変化に合わせて前記第２のテクスチャを回転させるように構成されたことを特徴とする請求項３に記載のプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、コンピュータグラフィックス技術を利用して照明光を表現する方法に関する。
【０００２】
【従来の技術】
ゲーム画像の生成等に使用される３次元コンピュータグラフィックスの分野においては、ワールド座標系によって定義された仮想３次元空間に配置されるモデルをポリゴンの組み合わせによって表現し、そのポリゴンの表面に各種のテクスチャをマッピングしてモデルの質感を向上させている。電球等の光源から照明光が広がる様子を表現する場合にもこうした方法が採用されている。例えば、街路灯の照明光が広がっている様子を示したモデルをポリゴンによって形成し、これに照明光を表現したテクスチャをマッピングすることが試みられている。
【０００３】
【発明が解決しようとする課題】
ところで、現実の照明光をカメラで撮影した場合の見え方は照明光を観察する条件に応じて変化することがある。例えば、降雨状態や霧がかかった状態で街路灯を撮影した場合、照明光が丸くぼやけて見える場合と、光源から放射状に延びる光の筋（レンズフレアと呼ばれることがある。）が観察される場合とがある。しかし、こうした見え方の違いを表現して画像の現実感を向上させることは、これまで十分には検討されていなかった。
【０００４】
そこで、本発明は、照明光の見え方が変化する様子を十分に表現できて、現実感の高い画像を提供できる画像の表現方法及びその方法の実現に使用するコンピュータプログラムを提供することを目的とする。
【０００５】
【課題を解決するための手段】
以下、本発明について説明する。なお、本発明の理解を容易にするために添付図面の参照符号を括弧書きにて付記するが、それにより本発明が図示の形態に限定されるものではない。
【０００６】
本発明の画像の表現方法は、仮想３次元空間に置かれた光源（３）からの照明光をコンピュータを用いた画像処理によって表現するための方法であって、前記照明光を互いに異なる態様で表現した複数のテクスチャ（１、２）を用意し、前記照明光を観察する条件の変化に応じて各テクスチャの透明度の差が変化するように各テクスチャに透明度を設定し、それらのテクスチャを前記照明光が観察されるべき領域に前記設定された透明度に従って互いに重なるようにマッピングすることにより、前記照明光の見え方を前記条件に応じて変化させ、前記複数のテクスチャには前記条件には前記仮想３次元空間に設定された視点から前記光源までの距離、又は前記視点から前記光源を撮影する画角の少なくとも一方が含まれ、前記照明光が丸く広がっている様子を表現する第１のテクスチャと、光源から放射状に光の筋が延びている様子を表現する第２のテクスチャとが含まれ、前記距離又は画角が増加するほど前記第１のテクスチャの透明度を減少させるとともに前記第２のテクスチャの透明度を増加させるものである。
【０００７】
この発明によれば、各テクスチャの透明度を互いに異なる値に設定することにより、透明度が低いテクスチャが透明度の高いテクスチャよりも目立つようになる。従って、光源までの距離や光源を含んだシーンを撮影する画角に応じて各テクスチャとそれらの透明度の高低との関係を変化させ、それにより、光源までの距離や光源を含んだシーンを撮影する画角に応じて照明光の見え方が変化する様子を表現することができる。
【００１０】
更に本発明においては、光源を遠方から見たような画像では光源の周囲に照明光が丸く広がっている様子が表現され、光源に近付いたような画像ではその光源から放射状に光の筋が延びている様子が表現されるようになる。従って、画像の現実感が高まる。
【００１１】
前記距離又は画角の変化に合わせて前記第２のテクスチャを回転させてもよい。これにより、カメラのレンズを回転させているかのような映像効果が生まれて画像の臨場感が高まる。なお、この場合のカメラのレンズの回転は、例えば距離の変化に伴うピント調整、あるいは画角の変化をもたらすズーミングのいずれかの目的で行われるものとして認識することができる。
【００１２】
本発明のプログラムは、仮想３次元空間に置かれた光源（３）からの照明光をコンピュータを用いた画像処理によって表現するためのプログラムであって、前記照明光を互いに異なる態様で表現した複数のテクスチャ（１，２）のそれぞれに、前記照明光を観察する条件の変化に応じて各テクスチャの透明度の差が変化するようにして透明度を設定する処理と、それらのテクスチャを前記照明光が観察されるべき領域に前記設定された透明度に従って互いに重なるようにマッピングする処理とを前記コンピュータに実行させることにより、前記照明光の見え方を前記条件に応じて変化させ、前記条件には前記仮想３次元空間に設定された視点から前記光源までの距離、又は前記視点から前記光源を撮影する画角の少なくとも一方が含まれ、前記複数のテクスチャとして前記照明光が丸く広がっている様子を表現する第１のテクスチャと、光源から放射状に光の筋が延びている様子を表現する第２のテクスチャとが含まれ、前記距離又は画角が増加するほど前記第１のテクスチャの透明度を減少させるとともに前記第２のテクスチャの透明度を増加させるものである。
【００１３】
このプログラムをコンピュータで読み取って実行することにより、本発明の画像の表現方法を実施することができる。
【００１４】
なお、本発明のプログラムは、前記距離又は画角の変化に合わせて前記第２のテクスチャを回転させるように構成されてもよい。
【００１５】
さらに、本発明のプログラムは記憶媒体に記録されて使用者に提供されてもよいし、有線又は無線の伝送媒体に乗せて使用者に提供されてもよい。
【００１６】
本発明において、照明光を観察する条件には上述した通り、視点から光源までの距離や視点から光源を撮影する画角の少なくともいずれか一方が含まれてよいが、その他の要素が条件に含まれてもよい。例えば光源を見る角度の変化、光源を取り囲む雨の強弱や霧の深さ等の環境の変化等に応じて各テクスチャの透明度を変化させることが考えられる。
【００１７】
本発明において、照明光を表現するためのテクスチャは、仮想３次元空間内のオブジェクトの代表点に対応付けられた位置に平面状のポリゴンをその法線が視点を向くようにして配置し、そのポリゴンに対してマッピングすることができる。ポリゴンは透明処理がされたものであればその形状を問わない。しかし、そのような方法に限らず、各種の手法によりテクスチャを照明光が観察されるべき領域にマッピングさせてよい。
【００１８】
【発明の実施の形態】
図１（ａ）〜（ｃ）は、同図（ｄ）に示すように光源１００から四方に拡散する照明光を、光源３からの距離が相違する視点ａ，ｂ，ｃからそれぞれ観察したときの画像の表現方法を簡略的に示している。図１（ａ）〜（ｃ）に示すように、本実施形態では二枚のテクスチャ１，２を光源３又はその光源３に対して所定の関係を有する位置に重ねて配置して照明光を表現する。第１のテクスチャ１は光源３から照明光が丸く広がっている様子を表現し、第２のテクスチャ２は光源３から光の筋が四方に延びている様子を表現している。なお、テクスチャ１は必ずしも円形である必要はなく、楕円、長円形等でもよい。テクスチャ２は、必ずしも光源３から四方に均等に光の筋が延びる様子を表現したものである必要はなく、光の筋が視認できるものであればよい。
【００１９】
これらのテクスチャ１，２にはそれぞれ透明度が設定される。設定される透明度は、０よりも大きく１００以下の範囲である。つまり、テクスチャ１，２の透明度は、仮想３次元空間に置かれた仮想カメラ（不図示）の視点から光源３までの距離に基づいて変更される。すなわち、第１のテクスチャ１に関しては視点から光源３までの距離が増加するほどその透明度を増加させる。反対に第２のテクスチャ２に関しては視点から光源３までの距離が増加するほどその透明度を減少させる。図１（ａ）及び（ｃ）のハッチングは透明度が小さく設定されていることをそれぞれ示している。これから明らかなように、光源３までの距離が大きいときは第１のテクスチャ１が相対的に目立つようになり、光源１までの距離が小さくなると、つまり、仮想カメラの視点が光源３に近付くと第２のテクスチャ２が相対的に目立つようになる。なお、各テクスチャ１の透明度は、距離の変化量に対して比例的に変化させてもよいし、段階的に変化させてもよい。
【００２０】
なお、各テクスチャ１，２の透明度を変化させる範囲は、完全に不透明で背景が見えない状態を透明度０、完全に透明でテクスチャ自身を視認できない状態を透明度１００としたときに、０以上１００以下に設定してもよい。透明度０又は透明度１００の少なくともいずれか一方を、透明度を変化させる範囲に含まないようにしてもよい。望ましくは、照明光に透かして背景が見える状態を確保するため、各テクスチャ１，２の透明度の最低値は０よりも大きく設定する。
【００２１】
また、仮想３次元空間から仮想スクリーン上に切り取られた範囲（モニタに画像として表現される範囲）の変化に応じてカメラのレンズが回転しているかのような表現を行うため、本実施形態では、図１（ｂ）に矢印で示したように、上述した視点と光源３との距離の変化に合わせて第２のテクスチャ２をその中心の周りに回転させることとした。なお、第１のテクスチャ１と第２のテクスチャ２の中心は一致させてもよいし、一致させなくてもよい。距離に応じて両者の中心位置のずれ量を変化させてもよい。
【００２２】
図２は第１のテクスチャ１の実例を、図３は第３のテクスチャ２の実例をそれぞれ示している。但し、いずれのテクスチャも階調を反転させてある。図２のテクスチャは照明光が丸く広がっている様子を表現しており、図３のテクスチャは放射状に光の筋が延びる様子を表現している。各テクスチャの色彩は照明光の色に合わせて例えば乳白色に設定される。また、照明光が拡散する様子を示すため、各テクスチャには周辺に向かうほど徐々にぼかしが強く付加されている。これにより中心部で輝度が高く周辺で輝度が低くなる照明光がよく表現される。
【００２３】
図４及び図５は、図２及び図３のテクスチャを使用して、図１に示した方法で照明光を表現した例を示している。図４は光源としての外灯を遠方から観察した状態を示しており、各外灯の位置には図２のテクスチャが専ら観察されている。一方、図５は外灯に接近した状態を示しており、この場合には図３のテクスチャが目立って観察されている。
【００２４】
以上に説明した画像の表現方法は様々な分野の３次元画像処理において利用できるものである。その一例としてコンピュータを利用したゲーム機にて本発明の表現方法を実施する例を図６及び図７により説明する。
【００２５】
図６はコンピュータを利用したゲーム機の典型的な制御系のブロック図である。周知のように、コンピュータとしてのゲーム機１０は、記憶媒体（例えばＤＶＤ−ＲＯＭ）２５に記録されたゲーム用プログラムに従って所定のゲームを実行するものであり、マイクロプロセッサを主体として構成されたＣＰＵ１１と、そのＣＰＵ１１に対する主記憶装置としてのＲＯＭ１２及びＲＡＭ１３と、ＣＰＵ１１からの指示に基づいて画像処理及び音声処理に適した処理を行なう画像処理装置１４及びサウンド処理装置１６と、記憶媒体からデータ等を読み取るための記憶媒体読取装置１８とを有している。ＲＯＭ１２には、ゲーム機１０の全体の動作制御に必要なプログラムとしてのオペレーティングシステムが書き込まれる。ＲＡＭ１３には記憶媒体としてのＤＶＤ−ＲＯＭ２５から読み取ったゲーム用のプログラムやデータが必要に応じて書き込まれる。画像処理装置１４はＣＰＵ１１から画像データを受け取って内蔵するフレームバッファ（不図示）上にゲーム画面に対応した画像データを展開するとともに、その描画された画像データを所定のビデオ再生信号に変換して所定のタイミングでモニタ１９に出力する。サウンド処理装置１６は、ＤＶＤ−ＲＯＭ２５から読み出された音声、楽音等のデータや音源データ等を再生してスピーカ２０から出力させる。読取装置１８は、ＣＰＵ１１からの指示に従ってＤＶＤ−ＲＯＭ２５上に記録されたプログラムやデータを読み取り、その読み取った内容に対応した信号を出力する。ＤＶＤ−ＲＯＭ２５には、本発明に係る画像の表現方法の実施に必要なプログラムやデータが記録されている。モニタ１９には家庭用のテレビ受像機が、スピーカ２０にはそのテレビ受像機の内蔵スピーカが一般に使用される。さらに、ＣＰＵ１１にはバス２４を介して入力装置２２及び外部記憶装置２３がそれぞれ接続される。外部記憶装置２３は例えば不揮発性の半導体メモリ、ハードディスク、光磁気ディスク等の書換えが可能な記憶装置である。このような構成はあくまで一例であり、本発明の表現方法が適用されるコンピュータの構成は適宜変更されてよい。
【００２６】
記憶媒体としてのＤＶＤ−ＲＯＭ２５に記録されるプログラムには、上述した方法により照明光の画像を形成するために必要な手順を記述したモジュールが含まれる。また、ＤＶＤ−ＲＯＭ２５に記録されるデータには、上述した方法を実現するために必要なデータとして、例えば図２及び図３に示したテクスチャの画像データが記録される。照明光の画像を表現するためのプログラムモジュールは、各フレームの画像データを生成する処理において、本発明に従って照明光を描く必要がある場合に呼び出されてＣＰＵ１１により実行される。図７はそのプログラムモジュールに従って実行される処理の概要を示すフローチャートである。なお、上述した照明光の表現に拘わる部分以外の画像データの生成に必要な演算処理は公知の技術をそのまま利用することができ、本明細書ではそれらの説明は省略する。例えば、典型的な３Ｄゲーム画像を描画する処理では、入力装置２２からの入力信号に基づいて、ワールド座標系に配置されたオブジェクト（例えばキャラクタ）や視点等の位置を演算し、その演算結果に基づいて視点座標系やスクリーン座標系への座標変換やレンダリング処理を行っているが、以下ではそれらの一連の処理のうちで特に本発明に拘わる部分を抽出して説明し、その余の処理について説明を省略する。
【００２７】
図７の処理では、まず仮想３次元空間に設定された視点から光源までの距離を演算する（ステップＳ１）。次に、演算された距離に基づいて第１のテクスチャ１及び第２のテクスチャ２のそれぞれの透明度を演算する（ステップＳ２）。続いて、ステップＳ１で演算された距離に基づいて、第２のテクスチャ２の傾き、つまりは光源３を中心とした周方向の傾きを演算する（ステップＳ３）。これらの演算が終わると、光源３上又は光源３に対して所定の関係にある位置に各テクスチャ１，２を演算された透明度に従って互いに重なるようにしてマッピングする。このとき、テクスチャ２についてはその中心の回りの傾きがステップＳ３の演算結果に従って調整される。そして、マッピング後は図７の処理を終える。
【００２８】
以上の実施形態はあくまで本発明の一例であり、使用されるテクスチャの枚数や内容等は要求される画像の質感等に応じて種々変更してよい。例えば、３枚以上のテクスチャを使用してもよい。テクスチャの透明度は距離以外の要素に応じて変化させてもよい。例えば仮想3次元空間に置かれた仮想カメラの画角の変化に応じてテクスチャの透明度を切り替えてもよい。すなわち、画角が大きいときは画像に占める光源の大きさが相対的に小さくなって光源を遠方から見たときと同様の画像が得られるので、第1のテクスチャを相対的に目立つように透明度を調整し、画角が小さく絞られたときは画像に占める光源の大きさが相対的に大きくなって光源に接近したときと同様の画像が得られるので、第２のテクスチャを相対的に目立つように透明度を調整すればよい。
【００２９】
上述した各テクスチャ１，２をマッピングすべき領域は、仮想３次元空間に配置された光源又はその付近に照明光表現用のポリゴンをその法線が視点を向くようにして配置することによって与えることができる。但し、本発明はそのようなマッピング方法に限定されず、レンダリング時に照明光をマッピングすべき領域が特定できる限りは如何なる方法も用いてよい。
【００３０】
【発明の効果】
以上に説明したように、本発明の画像の表現方法によれば、照明光の観察条件に応じて各テクスチャとそれらの透明度の高低との関係を変化させ、それにより、照明光の観察条件に応じて照明光の見え方が変化する様子を表現し、現実感の高い画像を提供することができる。
【図面の簡単な説明】
【図１】照明光を表現するために重ね合わされた複数のテクスチャの透明度等の変化を概略的に示す図。
【図２】照明光が丸く広がっている様子を表現するテクスチャの実例を示す図。
【図３】光源から放射状に光の筋が延びている様子を表現するテクスチャの実例を示す図。
【図４】本発明に従って表現された照明光の画像の一例を示す図。
【図５】本発明に従って表現された照明光の画像の他の例を示す図。
【図６】本発明の方法を実行するためのゲーム機の機能ブロック図。
【図７】図６のゲーム機にて本発明の表現方法を実行するための処理手順を示すフローチャート。
【符号の説明】
１  第１のテクスチャ
２  第２のテクスチャ
３  光源
【図１】
0003700928.tif 000002
【図２】
0003700928.tif 000003
【図３】
0003700928.tif 000004
【図４】
0003700928.tif 000005
【図５】
0003700928.tif 000006
【図６】
0003700928.tif 000007
【図７】
0003700928.tif 000008