(57)【特許請求の範囲】
【請求項１】
仮想空間における物体の形状データに基づいて、当該物体の２次元画像を生成する画像生成装置であって、
前記２次元画像を表示する表示手段と、
前記表示された２次元画像の任意の領域に対してハイライト表現を付加するハイライト表現付加手段と、
前記ハイライト表現付加手段によりハイライト表現が付加された領域に対応する前記物体の表面の領域におけるハイライトの照度分布が、前記付加されたハイライト表現により表現された照度分布となるような光強度分布を有する面光源を、前記仮想空間に生成する光源生成手段と、
前記生成された面光源を用いて、前記物体の新たな２次元画像を生成する２次元画像生成手段と、
を備えることを特徴とする画像生成装置。
【請求項２】
請求項１に記載の画像生成装置において、
前記ハイライト表現付加手段により付加されたハイライト表現の照度分布を求め、
前記光源生成手段により生成された面光源は、前記物体表面に対する視線方向からの正反射方向に位置し、求められた照度分布に応じた光強度分布を有することを特徴とする画像生成装置。
【請求項３】
仮想空間における物体の形状データに基づいて、当該物体の２次元画像を生成する画像生成装置における画像生成方法であって、
前記画像生成装置が備える表示制御手段が、前記２次元画像を表示部に表示させる表示工程と、
前記画像生成装置が備えるハイライト表現付加手段が、入力部から入力された指示に基づいて前記表示された２次元画像の任意の領域に対してハイライト表現を付加するハイライト表現付加工程と、
前記画像生成装置が備える光源生成手段が、前記ハイライト表現付加工程においてハイライト表現が付加された領域に対応する前記物体の表面の領域におけるハイライトの照度分布が、前記付加されたハイライト表現により表現された照度分布となるような光強度分布を有する面光源を、前記仮想空間に生成する光源生成工程と、
前記画像生成装置が備える２次元画像生成手段が、前記生成された面光源を用いて、前記物体の新たな２次元画像を生成する２次元画像生成工程と、
を含むことを特徴とする画像生成方法。
【請求項４】
コンピュータを、請求項１または請求項２に記載の画像生成装置として機能させることを特徴とする画像生成処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想空間における物体の形状データに基づいて、当該物体の２次元画像を生成する画像生成装置、画像生成方法等の技術分野に関する。
【背景技術】
【０００２】
従来、コンピュータグラフィックスにより、仮想空間における物体に対して陰影付け（シェーディング）をして２次元画像を生成する場合には、オペレータが光源データを設定し、画像生成装置がこの設定に基づいて２次元画像を生成して画面上に表示する。その後、オペレータが画面上に表示された結果を見ながら光源の位置、角度、光強度等のパラメータや物体の色、材質等のパラメータを調整することにより、オペレータが意図した陰影を有する画像に近づけていく方法がとられている。
【０００３】
ところが、この様な方法は、光源、物体等のパラメータを調節することにより、２次元画像に施される陰影を間接的に指定するものであるため、試行錯誤を繰り返しながら意図した画像に近づけていく作業が必要となり、オペレータの作業負担が過大となるとともに、意図した画像を生成することが容易ではないという問題があった。
【０００４】
かかる問題に対して、例えば、特許文献１に記載のコンピュータグラフィックスシステムにおいては、画面上に表示された２次元画像に対し、明るさを最も強くしたいハイライト位置、明るさ等をオペレータが設定すると、シェーディング方程式を逆に計算することにより光源の位置等を設定する。そして、このようにして変更された光源データを用いて物体の新たな２次元画像を生成している。
【０００５】
この方法によれば、指定されたハイライト位置の明るさを最も大きくした２次元画像を生成することができるようになっている。
【特許文献１】特開平７−１２９７９５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した特許文献１の方法は、物体上におけるハイライト分布中心位置を指定できる点でオペレータの作業負担は軽減されるものの、ハイライト反射効果によって２次元画像にどのような陰影が施されるか（例えば、ハイライトの大きさ、範囲、色の濃淡、輪郭のぼかし具合等）は、実際に試してみなければ分からない状況であり、結局はオペレータが試行錯誤を繰り返しながら意図した画像に近づけていく作業が必要となるという問題がある。
【０００７】
本発明は、以上の点に鑑みてなされたものであり、仮想空間における物体に、意図した通りの陰影が施された２次元画像を容易に生成することを可能とする画像生成装置、画像生成方法等を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、請求項１に記載の発明は、仮想空間における物体の形状データに基づいて、当該物体の２次元画像を生成する画像生成装置であって、前記２次元画像を表示する表示手段と、前記表示された２次元画像の任意の領域に対してハイライト表現を付加するハイライト表現付加手段と、前記ハイライト表現付加手段によりハイライト表現が付加された領域に対応する前記物体の表面の領域におけるハイライトの照度分布が、前記付加されたハイライト表現により表現された照度分布となるような光強度分布を有する面光源を、前記仮想空間に生成する光源生成手段と、前記生成された面光源を用いて、前記物体の新たな２次元画像を生成する２次元画像生成手段と、を備えることを特徴とする。
【０００９】
請求項２に記載の発明は、請求項１に記載の画像生成装置において、前記ハイライト表現付加手段により付加されたハイライト表現の照度分布を求め、前記光源生成手段により生成された面光源は、前記物体表面に対する視線方向からの正反射方向に位置し、求められた照度分布に応じた光強度分布を有することを特徴とする。
【００１１】
請求項３に記載の発明は、仮想空間における物体の形状データに基づいて、当該物体の２次元画像を生成する画像生成装置における画像生成方法であって、前記画像生成装置が備える表示制御手段が、前記２次元画像を表示部に表示させる表示工程と、前記画像生成装置が備えるハイライト表現付加手段が、入力部から入力された指示に基づいて前記表示された２次元画像の任意の領域に対してハイライト表現を付加するハイライト表現付加工程と、前記画像生成装置が備える光源生成手段が、前記ハイライト表現付加工程においてハイライト表現が付加された領域に対応する前記物体の表面の領域におけるハイライトの照度分布が、前記付加されたハイライト表現により表現された照度分布となるような光強度分布を有する面光源を、前記仮想空間に生成する光源生成工程と、前記画像生成装置が備える２次元画像生成手段が、前記生成された面光源を用いて、前記物体の新たな２次元画像を生成する２次元画像生成工程と、を含むことを特徴とする。
【００１２】
請求項４に記載の発明は、コンピュータを、請求項１または請求項２に記載の画像生成装置として機能させることを特徴とする。
【発明の効果】
【００１３】
本発明によれば、表示された物体の２次元画像に対して、例えば、ハイライトの大きさ、範囲、色の濃淡、輪郭のぼかし具合等のハイライト表現が付加されると、この付加されたハイライトを有する２次元画像が生成されるような光強度分布を有する面光源を生成し、この面光源を用いて、２次元画像に付加されたハイライト表現通りにハイライト付けされた物体の新たな２次元画像が生成されるので、意図した通りのハイライトを有する２次元画像を容易に生成することが可能となる。
【発明を実施するための最良の形態】
【００１４】
以下、図面を参照して本発明の最良の実施形態について詳細に説明する。なお、以下に説明する実施の形態は、仮想空間における物体の、ハイライト付けされた２次元画像を生成して画面に表示させるハイライト画像生成装置に対して本発明を適用した場合の実施形態である。
【００１５】
［１］ハイライト画像生成装置Ｓの構成及び機能概要
先ず、本実施形態に係るハイライト画像生成装置Ｓの構成及び機能について説明する。
【００１６】
図１は、本実施形態に係るハイライト画像生成装置Ｓの概要構成の一例を示すブロック図である。
【００１７】
図１に示すように、ハイライト画像生成装置は、ＣＰＵ、ＲＡＭ、ＲＯＭ等を備える制御部１と、各種プログラム（例えば、画像生成処理プログラム等）及びデータ（光源データ、形状・材質データ等）等を記憶する記憶部２（例えば、ハードディスクドライブ、フロッピー（登録商標）ディスクドライブ、光ディスクドライブ等）と、陰影表現付加手段としての入力指示部３（例えば、キーボード、マウス、ライトペン等）と、表示手段としての画像表示部４（例えば、ディスプレー等）と、により構成されている。
【００１８】
ハイライト画像生成装置Ｓとしては、例えば、パーソナルコンピュータ、ワークステーション、ＰＤＡ（Personal Digital Assistant）等が適用可能である。
【００１９】
制御部１は、ＣＰＵが、ＲＯＭまたは記憶部２に記憶された各種プログラムを読み出し実行することにより、ハイライト画像生成装置Ｓを統括制御するとともに、本実施形態に係る光源生成手段、２次元画像生成手段等として機能するようになっている。
【００２０】
また、制御部１は、機能的に、形状・材質データ保持部１１と、視点データ保持部１２と、光源データ保持部１３と、ハイライトデータ保持部１４と、光源生成手段としてのハイライト生成部１５と、２次元画像生成手段としての画像生成部１６と、により構成されている。
【００２１】
形状・材質データ保持部１１には、記憶部２から読み出されたオブジェクトの形状データ（例えば、頂点の位置、線分データ、面データ等）、材質データ（例えば、反射率等）が記憶される。
【００２２】
視点データ保持部１２には、例えば、視点の位置、視線方向、視野角等のデータが記憶される。
【００２３】
光源データ保持部１３には、記憶部２から読み出された光源の種類、位置、光強度等のデータが記憶されている。また、光源データ保持部１３には、ハイライト光源の光強度分布等のデータが記憶される。
【００２４】
ハイライト生成部１５により生成されるハイライト光源は、ある広がりを有する面光源であり、その領域内の各位置で独立した光強度（光源の輝度）を有している。従って、光源の領域全体で、ある光強度分布を有することとなり、そのデータは、例えば、光源の領域内における位置と対応付けられた光強度のマップを、ＲＧＢ各色ごとに構成した構造を有している。
【００２５】
ハイライトデータ保持部１４には、ハイライト生成部１５により、オブジェクト表面に生成されたハイライト領域のハイライト分布（本実施形態に係る照度分布）等が記憶される。
【００２６】
ハイライト分布とは、仮想空間上のオブジェクト表面において、ハイライト光に照らされた領域内の各位置における照度（光源に照らされた部分の輝度）の集まりによる分布であり、そのデータは、例えば、ハイライト光に照らされた領域内における位置と対応付けられた照度のマップを、ＲＧＢ各色ごとに構成した構造を有している。
【００２７】
ハイライト生成部１５は、入力指示部３により、画像表示部４に表示されたオブジェクトの２次元画像の任意の領域に対して付加されたハイライト表現のハイライト分布を、仮想空間におけるオブジェクトの表面に座標変換して、オブジェクトの表面におけるハイライト分布を生成するが、その具体的な方法について以下に説明する。
【００２８】
３次元仮想空間におけるオブジェクトの２次元画像をビューウインドウ（投影面上において、画像表示部４に表示される領域）上に変換するには、例えば、射影変換により、オブジェクトのワールド座標（仮想空間における座標）からウインドウ座標（ビューウインドウにおける座標）に変換させる。具体的には、所定の射影変換行列とオブジェクトのワールド座標とを掛け合わせることでウインドウ座標を求める。
【００３０】
ハイライト生成部１５は、ビューウインドウ上にハイライト表現が付加された領域のハイライト分布からオブジェクト表面におけるハイライト分布を計算し、これをハイライトデータ保持部１４に記憶させる。
【００３１】
また、ハイライト生成部１５は、オブジェクト表面におけるハイライト分布を、仮想空間における環境オブジェクトに映し込んでハイライト光源を生成する。
【００３２】
これは、鏡面反射によりオブジェクト表面に他のオブジェクトを映し込む手法の一つであるリフレクションマッピングと同様の考え方により行われるが、その具体的な方法について以下に説明する。
【００３３】
図２は、ハイライト光源が生成される様子の一例を示す図である。
【００３４】
図２に示すように、オブジェクト表面におけるハイライトが分布する範囲をＳとし、その範囲内のある位置ｘにおける反射光の照度をＰｃ（ｘ）とする（Ｐｃ（ｘ）は、オブジェクト表面におけるハイライト分布の位置ｘにおける照度と等しい）。
【００３５】
先ず、視点から、オブジェクト表面における位置ｘに向かう視線方向Ｖを求める。次いで、オブジェクト表面における位置ｘに対する視線方向Ｖからの正反射方向Ｒを求める。そして、位置ｘからの正反射方向Ｒと環境オブジェクト面との交差する位置θを求める。範囲Ｓに対する位置θの取り得る範囲をωとすると、ωをその範囲としたハイライト光源が生成されることになる。
【００３６】
位置θにおけるハイライト光源の光強度Ｐｒ（θ）は、次式により求めることができる。
【００３７】
【数１】
0004839760.tif 000002
式１において、ｋはハイライト反射係数であり、予め光源データ保持部１３に記憶されている。
【００３８】
ハイライト生成部１５は、範囲Ｓ全域（範囲ω全域）について光強度を求め、ハイライト光源の光強度分布として光源データ格納部１３に記憶させる。
【００３９】
このようにして、ハイライト生成部１５は、画像表示部４に表示された２次元画像に付加されたハイライトを有するオブジェクトの２次元画像が生成されるような光強度分布を有するハイライト光源を、仮想空間に生成する光源生成手段として機能する。
【００４０】
画像生成部１６は、形状・材質データ、視点データ、光源データ等に基づいて、射影変換、クリッピング、隠面消去、シェーディング、テクスチャマッピング等を含むレンダリング処理によりオブジェクトの新たな２次元画像を生成し、画像表示部４に表示する。
【００４１】
シェーディング処理において、オブジェクト表面の位置ｘに対するハイライト光源による反射光の照度Ｐｃ（ｘ）は、式１を変形した次式により求められる。
【００４２】
【数２】
0004839760.tif 000003
なお、その他の処理は公知であるので詳しい説明は省略する。
【００４３】
次に、オブジェクトにハイライトを付加するための操作画面について説明する。図３は、本実施形態に係る操作画面の一例を示す図である。
【００４４】
オペレータによる入力指示部３の操作により、画像生成プログラムが起動されると、画像表示部４に、例えば、図３に示すような操作画面が表示される。
【００４５】
操作画面には、オブジェクトの２次元画像４１１が表示される画像表示エリア４１と、ハイライトカラーを選択するためのカラー選択メニュー４２と、ハイライトを付加するブラシの形状（大きさ、輪郭のぼかし具合等）を選択するためのブラシ選択メニュー４３と、２次元画像の生成を開始させるための画像生成ボタン４４と、が設けられている。
【００４６】
オペレータが、入力指示部３により、カラー選択メニュー４２の中から、２次元画像４１１に付加したいハイライトカラーを選択し、また、ブラシ選択メニュー４３からブラシの形状を選択する。
【００４７】
次いで、オペレータが、例えば、２次元画像４１１上の任意の位置でマウスのボタンを押しながら、ハイライト表示させたい領域をなぞるようにしてマウスを動かすと、２次元画像４１１上にハイライト表現４１２が付加されて表示される。
【００４８】
このようにして、入力指示部３は、画像表示部４に表示された２次元画像の任意の領域に対してハイライト表現４１２を付加する陰影表現付加手段として機能する。なお、この後、別のハイライトカラーまたは別のブラシ形状を選択して、更に、ハイライト表現４１２を付加するようにしても良い。
【００４９】
このようにして、オペレータの意図したハイライト表現４１２が付加されたら、オペレータが、入力指示部３を操作して画像生成ボタン４４を選択することにより、ハイライト光源の生成及び２次元画像の生成が開始される。
【００５０】
［２］ハイライト画像生成装置Ｓの動作
次に、以上の構成を有するハイライト画像生成装置Ｓにおける動作例について説明する。
【００５１】
図４は、２次元画像にハイライト表現が付加された領域からハイライト光源が生成されるまでの様子の一例を示す図である。また、図５は、本実施形態に係るハイライト画像生成装置Ｓの処理の流れの一例を示すフローチャートである。
【００５２】
図４に示すように、仮想空間上にはオブジェクト１０１が配置され、それを内包するようにして環境オブジェクト１０２が配置されている（本実施形態に係る環境オブジェクトは球体であるが、例えば、立方体であっても良い）。また、視点位置、視野角等に基づき、クリッピング処理のためのビューボリューム１０３が構成され、ビューボリューム１０３を有限にするための近クリップ面１０３ａと遠クリップ面１０３ｂとが、オブジェクト１０１の２次元画像が投影されるビューウインドウ１０４と平行にして設けられている。なお、ビューウインドウ１０４は、本来、概念的にはビューボリューム１０３内に位置するが、図４においては、説明のために、ビューボリューム１０３の外側に示している。
【００５３】
２次元画像に対してハイライト表現４１２が付加され、画像生成ボタン４４が選択されると、図５に示すように、ハイライト生成部１５は、ハイライト表現４１２が付加された領域上の画素の、ビューウインドウ１０４におけるウインドウ座標Ｐｗを、近クリップ面１０３ａ上の座標Ｐｓに変換する（ステップＳ１）。この変換は、例えば、次式により求められる。
【００５４】
【数３】
0004839760.tif 000004
なお、式３において、Ｍｖはビューポート変換行列であり、この行列は、ビューウインドウと近クリップ面１０３ａとの縦の長さの比、横の長さの比により求めることができる。
【００５５】
次いで、ハイライト生成部１５は、座標Ｐｓをワールド座標Ｐｎｖに変換する（ステップＳ２）。
【００５６】
そして、ハイライト生成部１５は、視点１０５の位置（ワールド座標Ｖｖ）とＰｎｖを通る直線方向Ｖとオブジェクト１０１の表面が交差する位置の座標Ｐｖを求める（ステップＳ３）。
【００５８】
次いで、ハイライト生成部１５は、オブジェクト１０１の表面の座標Ｐｖにおける照度として、ビューウインドウ１０４上の座標Ｐｗにおけるハイライトカラーの照度を、座標Ｐｖに対応付けてハイライトデータ保持部１４に記憶する（ステップＳ４）。
【００５９】
その後、ハイライト生成部１５は、ハイライト表現４１２が付加された領域上の全画素について処理が行われたか否かを判定し（ステップＳ５）、処理していない画素がある場合は（ステップＳ５：ＮＯ）、残りの画素についてステップＳ１〜Ｓ４の処理を繰り返す。
【００６０】
そして、全ての画素について処理が行われると（ステップＳ５：ＹＥＳ）、オブジェクト１０１の表面のハイライトの領域の全ての照度がハイライトデータ保持部１４に記憶されることにより、オブジェクト１０１の表面におけるハイライト分布１０６の生成が完了する。
【００６１】
その後、ハイライト生成部１５は、オブジェクト１０１の表面に生成されたハイライト分布１０６について、前述した方法により、環境オブジェクト１０２上の光源の座標Ｌｖを求め（ステップＳ６）、オブジェクト１０１の表面における座標Ｐｖの照度に対応する、ハイライト光源の光強度を式１により求め（ステップＳ７）、光源データ保持部１３に記憶させる（ステップＳ８）。
【００６２】
次いで、ハイライト分布１０６の全ての位置について処理が行われたか否かを判定し（ステップＳ９）、処理していない位置がある場合（ステップＳ５：ＮＯ）、ハイライト生成部１５は、残りの位置についてステップＳ６〜Ｓ８の処理を繰り返す。
【００６３】
そして、全ての位置について処理が行われると（ステップＳ９：ＹＥＳ）、ハイライト光源１０７の光強度分布が光源データ記憶部１３に記憶され、ハイライト光源１０７の生成が完了し、ステップＳ１０に移行する。
【００６４】
ステップＳ１０においては、画像生成部１６が、形状・材質データ、視点データ、ハイライト生成部１５により生成されたハイライト光源１０７の光源データ等を読み出し、これらのデータを用いて新たな２次元画像を生成し、画像表示部４に表示させる（ステップＳ１１）。
【００６５】
このようにして生成された２次元画像のハイライト反射効果は、操作画面において付加されたハイライト表現と同等となる。すなわち、オペレータが意図したハイライト反射効果を直接的に指定できるのである。
【００６６】
ところで、一旦、ハイライト光源を生成して、オブジェクトの２次元画像を生成した後に、視点の位置を変更し、または、オブジェクトを回転させ、あるいは、オブジェクトを移動させる等により、視点、オブジェクト及び光源の位置関係が変化すると、ハイライト反射効果が変化してしまい、意図したハイライトを得るために、オペレータによる作業が改めて必要となってしまう。
【００６７】
しかし、本実施形態においては、このような場合でも、最初に２次元画像を生成したときのハイライトを簡単に再現することができる。
【００６８】
つまり、ハイライト生成部１５によりハイライト光源を生成する際に、ハイライトデータをハイライトデータ記憶部２に記憶させているので、図５におけるステップ５の処理が終了した状態と同じ状態になっている。
【００６９】
そこで、オペレータによる入力指示部３の操作により、画像生成ボタン４４が選択されたら、ハイライト生成部１５は、ステップＳ６から処理を開始し、視点位置、ハイライト領域の座標、ハイライトカラーの明度、オブジェクト表面のハイライト領域における法線方向等に基づいて、新たにハイライト光源を生成すれば良い。
【００７０】
なお、オブジェクトを回転、移動等させる場合には、それに対応してハイライト領域の座標を変換すれば良い。
【００７１】
以上説明したように、本実施形態によれば、画像表示部４に表示されたオブジェクトの２次元画像の任意の領域に対して、入力指示部３がハイライト表現を付加し、ハイライト生成部１５が、この付加されたハイライトを有する２次元画像が生成されるような光強度分布を有するハイライト光源を仮想空間に生成し、このハイライト光源を用いて、画像生成部１６が、オブジェクトの新たな２次元画像を生成するので、意図した通りの陰影が施された２次元画像を容易に生成することが可能となる。
【００７２】
また、入力指示部３により付加されたハイライト表現のハイライト分布を求め、オブジェクト表面に対する視線方向からの正反射方向に位置するハイライト光源であって、且つ、求められたハイライト分布に応じた光強度分布を有するハイライト光源を生成するので、リフレクションマッピング等の単純化された方法によりハイラ イト光源を生成して、意図した通りの陰影が施された２次元画像を生成することが可能となる。
【図面の簡単な説明】
【００７３】
【図１】本実施形態に係るハイライト画像生成装置の概要構成の一例を示すブロック図である。
【図２】ハイライト光源が生成される様子の一例を示す図である。
【図３】本実施形態に係る操作画面の一例を示す図である。
【図４】２次元画像にハイライト表現が付加された領域からハイライト光源が生成されるまでの様子の一例を示す図である。
【図５】本実施形態に係るハイライト画像生成装置Ｓの処理の流れの一例を示すフローチャートである。
【符号の説明】
【００７４】
１  制御部
２  記憶部
３  入力指示部
４  画像表示部
１１  形状・材質データ保持部
１２  視点データ保持部
１３  光源データ保持部
１４  ハイライトデータ保持部
１５  ハイライト生成部
１６  画像生成部
４１  画像表示エリア
４２  カラー選択メニュー
４３  ブラシ選択メニュー
４４  画像生成ボタン
１０１  オブジェクト
１０２  環境オブジェクト
１０３  ビューボリューム
１０３ａ  近クリップ面
１０３ｂ  遠クリップ面
１０４  ビューウインドウ
１０５  視点
１０６  ハイライト分布
１０７  ハイライト光源
４１１  オブジェクトの２次元画像
４１２  ハイライト表現
Ｓ  ハイライト画像生成装置
【図１】
0004839760.tif 000005
【図２】
0004839760.tif 000006
【図３】
0004839760.tif 000007
【図４】
0004839760.tif 000008
【図５】
0004839760.tif 000009