(57)【要約】【課題】数多くの画像を用意しなくても、天候の変化を表現できること。【解決手段】天候変数情報取得部が、天候を示す天候情報、及び、天候の度合いを示す天候度合情報を取得する。シェーダ制御部が、天候情報に基づいて、映像中の天候を変化可能なシェーダの種類を選択する。メッシュ生成部が、シェーダ制御部が選択したシェーダを用いて、天候度合情報に基づいて、映像中のオブジェクトの色を決定する。【選択図】図９
2014056501.tif 000002
【特許請求の範囲】
【請求項１】
映像処理装置のコンピュータに、
天候を示す天候情報、及び、前記天候の度合いを示す天候度合情報を取得する天候変数情報取得手順、
前記天候情報に基づいて、映像中の天候を変化可能なシェーダの種類を選択するシェーダ制御手順、
前記シェーダ制御手順で選択されたシェーダを用いて、前記天候度合情報に基づいて、映像中のオブジェクトの色を決定する決定手順、
を実行させるための映像処理プログラム。
【請求項２】
前記決定手順で、前記天候度合情報に基づいて光の反射に関する情報を決定し、決定した光の反射に関する情報に基づいて、映像中のオブジェクトの色を決定することを特徴とする請求項１に映像処理プログラム。
【請求項３】
前記決定手順で、前記天候度合情報に基づいて拡散反射を示す情報を決定し、決定した拡散反射を示す情報に基づいて、映像中のオブジェクトの色を決定することを特徴とする請求項２に映像処理プログラム。
【請求項４】
前記決定手順で、前記拡散反射を示す情報と鏡面反射を示す情報に基づいて、映像中のオブジェクトの色を決定することを特徴とする請求項３に映像処理プログラム。
【請求項５】
前記シェーダ制御手順で、天候情報が示す天候が雨の場合に、第１シェーダ又は第２シェーダのいずれかを選択し、
前記決定手順で、前記シェーダ制御手順において第１シェーダが選択された場合には、前記拡散反射を示す情報に基づいて映像中のオブジェクトの色を決定し、第２シェーダが選択された場合には、前記拡散反射を示す情報と鏡面反射を示す情報に基づいて、映像中のオブジェクトの色を決定することを特徴とする請求項４に記載の映像処理プログラム。
【請求項６】
前記シェーダ制御手順で、天候情報が示す天候が雨の場合に、映像中のポリゴンの集合であるメッシュ毎に、法線マップが無い場合には第１シェーダを選択し、法線マップが有る場合には第２シェーダを選択することを特徴とする請求項５に記載の映像処理プログラム。
【請求項７】
前記決定手順で、前記シェーダ制御手順において第１シェーダが選択された場合に、前記メッシュの色を、予め定められた当該メッシュの晴れの色に（１−（拡散反射を示す情報×０．７）を乗算した値に決定することを特徴とする請求項６に記載の映像処理プログラム。
【請求項８】
前記決定手順で、前記シェーダ制御手順において第２シェーダが選択された場合に、前記メッシュの色を、前記第１シェーダが選択された場合に決定される値と、シェーディング色に鏡面反射を示す情報を乗算した値と、を加算した値に決定することを特徴とする請求項７に記載の映像処理プログラム。
【請求項９】
前記決定手順で、前記シェーダ制御手順において第２シェーダが選択された場合に、前記拡散反射と前記鏡面反射の両方が大きくなるように光の反射に関する情報を決定し、決定した光の反射に関する情報に基づいて、映像中のオブジェクトの色を決定することを特徴とする請求項６から請求項８のいずれか一項に記載の映像処理プログラム。
【請求項１０】
前記決定手順で、天候情報が示す天候が雪の場合に、映像中のポリゴンの集合であるメッシュ毎の法線ベクトルに基づいて、当該表面に積もる雪の厚さを決定し、決定した雪の厚さに基づいて、映像中のオブジェクトの色を決定することを特徴とする請求項１に映像処理プログラム。
【請求項１１】
天候を示す天候情報、及び、前記天候の度合いを示す天候度合情報を取得する天候変数情報取得部と、
前記天候情報に基づいて、映像中の天候を変化可能なシェーダの種類を選択するシェーダ制御部と、
前記シェーダ制御部が選択したシェーダを用いて、前記天候度合情報に基づいて、映像中のオブジェクトの色を決定する決定部と、
を備えることを特徴とする映像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、映像処理プログラム、及び、映像処理装置に関する。
【背景技術】
【０００２】
ゲームや映画における映像処理装置には、臨場感の溢れる映像を生成するものがある。例えば、特許文献１には、スキーゲームにおいて、雪面や樹木などの背景オブジェクトが配置され、その後、航跡オブジェクト配置処理と隆起高補正処理を実行することが記載されている。ここで、特許文献１では、背景オブジェクトが表す天候は、変化しない。一方、特許文献２には、背景画に、雨、雪を表す表示レイヤを重ねて表示することで、異なる天候を表現することが記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−７９５６４号公報
【特許文献２】特開２００２−５８８２２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献２記載の技術では、異なる天候を表現するために、天候の種類の数だけ、表示レイヤ（画像）を予め用意しなければならない、という欠点があった。
【０００５】
本発明は上記の点に鑑みてなされたものであり、数多くの画像を用意しなくても、天候を表現できる映像処理プログラム、及び、映像処理装置を提供する。
【課題を解決するための手段】
【０００６】
（１）本発明は上記の課題を解決するためになされたものであり、本発明の一態様は、映像処理装置のコンピュータに、天候を示す天候情報、及び、前記天候の度合いを示す天候度合情報を取得する天候変数情報取得手順、前記天候情報に基づいて、映像中の天候を変化可能なシェーダの種類を選択するシェーダ制御手順、前記シェーダ制御手順で選択されたシェーダを用いて、前記天候度合情報に基づいて、映像中のオブジェクトの色を決定する決定手順、を実行させるための映像処理プログラムである。
【０００７】
（２）また、本発明の一態様は、上記の映像処理プログラムにおいて、前記決定手順で、前記天候度合情報に基づいて光の反射に関する情報を決定し、決定した光の反射に関する情報に基づいて、映像中のオブジェクトの色を決定することを特徴とする。
【０００８】
（３）また、本発明の一態様は、上記の映像処理プログラムにおいて、前記決定手順で、前記天候度合情報に基づいて拡散反射を示す情報を決定し、決定した拡散反射を示す情報に基づいて、映像中のオブジェクトの色を決定することを特徴とする。
【０００９】
（４）また、本発明の一態様は、上記の映像処理プログラムにおいて、前記決定手順で、前記拡散反射を示す情報と鏡面反射を示す情報に基づいて、映像中のオブジェクトの色を決定する。
【００１０】
（５）また、本発明の一態様は、上記の映像処理プログラムにおいて、前記シェーダ制御手順で、天候情報が示す天候が雨の場合に、第１シェーダ又は第２シェーダのいずれかを選択し、前記決定手順で、前記シェーダ制御手順において第１シェーダが選択された場合には、前記拡散反射を示す情報に基づいて映像中のオブジェクトの色を決定し、第２シェーダが選択された場合には、前記拡散反射を示す情報と鏡面反射を示す情報に基づいて、映像中のオブジェクトの色を決定することを特徴とする。
【００１１】
（６）また、本発明の一態様は、上記の映像処理プログラムにおいて、前記シェーダ制御手順で、天候情報が示す天候が雨の場合に、映像中のポリゴンの集合であるメッシュ毎に、法線マップが無い場合には第１シェーダを選択し、法線マップが有る場合には第２シェーダを選択することを特徴とする。
【００１２】
（７）また、本発明の一態様は、上記の映像処理プログラムにおいて、前記決定手順で、前記シェーダ制御手順において第１シェーダが選択された場合に、前記メッシュの色を、予め定められた当該メッシュの晴れの色に（１−（拡散反射を示す情報×０．７）を乗算した値に決定することを特徴とする。
【００１３】
（８）また、本発明の一態様は、上記の映像処理プログラムにおいて、前記決定手順で、前記シェーダ制御手順において第２シェーダが選択された場合に、前記メッシュの色を、前記第１シェーダが選択された場合に決定される値と、シェーディング色に鏡面反射を示す情報を乗算した値と、を加算した値に決定することを特徴とする。
【００１４】
（９）また、本発明の一態様は、上記の映像処理プログラムにおいて、前記決定手順で、前記シェーダ制御手順において第２シェーダが選択された場合に、前記メッシュの色を、前記第１シェーダが選択された場合に決定される値と、シェーディング色に鏡面反射を示す情報を乗算した値と、を加算した値に決定することを特徴とする。
【００１５】
（１０）また、本発明の一態様は、映像製作装置のコンピュータに、前記決定手順で、前記シェーダ制御手順において第２シェーダが選択された場合に、前記メッシュの色を、前記第１シェーダが選択された場合に決定される値と、シェーディング色に鏡面反射を示す情報を乗算した値と、を加算した値に決定することを特徴とする。
【発明の効果】
【００１６】
本発明によれば、数多くの画像を用意しなくても、天候を表現できる。
【図面の簡単な説明】
【００１７】
【図１】本発明の実施形態に係る３Ｄ映像処理システムを表す概略図である。
【図２】本実施形態に係る、天候が「晴れ」のときの映像を表す図である。
【図３】本実施形態に係る、天候が「雨Ｂ」のときの映像を表す図である。
【図４】本実施形態に係る、天候が「雨Ｂ」のときの映像の一部を表す図である。
【図５】本実施形態に係る、天候が「雪」のときの映像を表す図である。
【図６】本実施形態に係る映像製作装置の構成を示す概略ブロック図である。
【図７】本実施形態に係る映像作成部及び映像情報記憶部の構成を示す概略ブロック図である。
【図８】本実施形態に係るオブジェクト情報の一例を示す概略図である。
【図９】本実施形態に係る映像制御部の構成を示す概略ブロック図である。
【図１０】本実施形態に係るオブジェクト生成部の動作の一例を示すフローチャートである。
【図１１】本実施形態に係る映像処理装置の構成を示す概略ブロック図である。
【図１２】本実施形態に係るシェーダ選択処理の動作の一例を示すフローチャートである。
【図１３】本実施形態の変形例に係る天候変数情報テーブルの一例を示す概略図である。
【図１４】本実施形態の変形例に係る映像制御部の動作の一例を示すフローチャートである。
【発明を実施するための形態】
【００１８】
以下、図面を参照しながら本発明の実施形態について詳しく説明する。
図１は、本発明の実施形態に係る３Ｄ（３次元）映像処理システムを表す概略図である。３Ｄ映像処理システムでは、映像描画装置Ｇ１（映像処理装置）は、３Ｄ映像を描画させる映像描画プログラムを提供される。ここで、映像描画装置Ｇ１とは、例えば、ゲーム装置、スマートフォンや電子書籍端末等の携帯型表示装置、ハードディスクレコーダやセットトップボックス等の再生装置、ＰＣ（パーソナルコンピュータ）、又は、テレビジョン装置等の表示装置である。また、映像描画プログラムのソースコードには、映像中の天候を変化させるライブラリに渡す天候変数情報が含まれている。天候変数情報とは、映像中の天候を示す天候情報、及び、その天候の度合いを示す天候度合情報を含む情報である。
【００１９】
図１の３Ｄ映像処理システムは、映像製作装置Ｃ１（映像処理装置）、表示装置Ｇ１１、ゲーム装置Ｇ１−１、及び携帯型表示装置Ｇ１−２を具備する。図１の例では、ゲーム装置Ｇ１−１、及び携帯型表示装置Ｇ１−２が、映像描画装置Ｇ１である。
映像製作装置Ｃ１は、映像作成支援プログラムがインストールされ、映像製作者Ｄ１による３Ｄ映像の作成を補助する。この映像作成支援プログラムには、ライブラリ（映像処理プログラム）を追加することが可能である。例えば、映像製作装置Ｃ１は、映像中の天候変数情報を、映像製作者Ｄ１から入力される。一例として、映像製作者Ｄ１は、天候情報として「雨」を指定し、天候度合情報として「０．２」を入力する。この天候度合情報は、天候が「晴れ」のときから比較して２０％、天候が「雨」になっている（例えば、小雨）ことを表す。なお、天候度合情報が「０」（０％）の場合は天候が「晴れ」となり、天候度合情報が「１」（１００％）の場合は天候が最終的な「雨」（例えば、ざあざあぶ降りやどしゃ降り）となる。
【００２０】
映像製作装置Ｃ１は、映像製作者Ｄ１から入力された情報に基づいてソースコードを生成して記憶するとともに、記憶したソースコードやライブラリ等に基づいて３Ｄ映像を生成する。ここで、例えば、映像製作装置Ｃ１は、記憶したソースコードやライブラリ等をビルドすることで、映像描画プログラムを生成し、生成した映像描画プログラムを実行する。このソースコードにはライブラリに渡す天候変数情報が記述されているので、映像製作装置Ｃ１は、このライブラリによって天候が変化する３Ｄ映像を生成できる。映像製作装置Ｃ１が生成した３Ｄ映像を表示部に表示することで、映像製作者Ｄ１は、３Ｄ映像を試聴しながら３Ｄ映像を作成、編集してもよい。
３Ｄ映像の作成が完了すると、映像製作者Ｄ１は、例えば「完了」ボタンを押下する。映像製作装置Ｃ１は、「完了」ボタンの押下を検出すると、プログラムに対する署名等の処理を行うことで、提供用の映像描画プログラム（例えば、ｅｘｅ（実行）ファイルを含む）を生成する。
【００２１】
なお、映像描画プログラムは、各プラットフォーム毎に生成される。プラットフォームとは、例えば、ＰＣのＯＳ（オペレーティングシステム）、ゲーム機の基本ソフトウェア、ブラウザ等をいう。具体的には、映像製作装置Ｃ１は、各プラットフォームで３Ｄ映像を描画させるライブラリに基づいて、映像描画プログラムを生成する。このライブラリは、各プラットフォームの相違に対応する。つまり、映像製作装置Ｃ１は、プラットフォームの違いを意識することなく、同じ操作で異なるプラットフォームに対応した３Ｄ映像を生成することができ、例えば、映像作成コストの削減や映像作成のスピードを向上させることができる。
【００２２】
映像製作装置Ｃ１が生成した映像描画プログラムは、映像描画装置Ｇ１へ提供され、映像描画装置Ｇ１で実行される。例えば、ゲーム装置Ｇ１−１は、映像描画プログラムに基づいて、表示装置Ｇ１１に３Ｄ映像を表示させる。また、携帯型表示装置Ｇ１−２は、自装置の表示部に３Ｄ映像を表示する。具体的には、映像描画装置Ｇ１は、天候情報に基づいて、映像中の天候を変化可能なシェーダの種類を選択する。映像描画装置Ｇ１は、選択したシェーダを用いて、前記天候度合情報に基づいて、映像中のオブジェクトの色を決定する。
なお、ソースコードにおいて天候変数情報が連続的に変化するように記載されている場合、映像描画装置Ｇ１は、天候変数情報に基づいて、３Ｄ映像中の天候を、第１天候（例えば、晴れ）から第２天候（例えば、雨や雪）へ次第に変化させる。ここで、映像描画装置Ｇ１は、天候変数情報に基づいて光の反射に関する情報を次第に変化させることで、オブジェクトの色を次第に変化させる。これにより、映像描画装置Ｇ１は、天候の連続的な変化を表現できる。光の反射に関する情報には、例えば、Ｄｉｆｆｕｓｅ（拡散反射）係数やＳｐｅｃｕｌａｒ（鏡面反射）係数が含まれる。
【００２３】
なお、Ｄｉｆｆｕｓｅ値とは、物体表面が入射光をあらゆる方向に散乱させて反射する（拡散反射）度合いを表す値である。Ｄｉｆｆｕｓｅ値は、例えば、値が高くなれば光が多く反射され、値が低くなれば、光は物体に吸収されたことを表現できる。Ｄｉｆｆｕｓｅ係数とは、Ｄｉｆｆｕｓｅ値の係数であり、Ｄｉｆｆｕｓｅ値の影響の度合いを表す。
Ｓｐｅｃｕｌａｒ値は、反射の法則にしたがって入射角と同じ角度をもって反射する（鏡面反射）度合いを表す値である。Ｓｐｅｃｕｌａｒ値は、例えば、値が高くなるほど（Ｓｐｅｃｕｌａｒを強くするほど）、光が多く反射されることを表現できる。Ｓｐｅｃｕｌａｒ係数とは、Ｓｐｅｃｕｌａｒ値の係数であり、Ｓｐｅｃｕｌａｒ値の影響の度合いを表す。
また、映像中の色等を次第に変化させるプログラムは、シェーダ（ｓｈａｄｅｒ）とも呼ばれる。つまり、３Ｄ映像処理システムは、天候についてのシェーダ機能を提供する。
映像描画装置Ｇ１は、例えば、次の４つの天候の度合いや、これらの天候間の連続的な変化を、表現できる。
【００２４】
（１）晴れ
「晴れ」は、晴れの天候を表す。「晴れ」のときは、各変数が基準値となる。つまり、晴れの天候の映像が、基準の映像である。映像製作者Ｄ１は、映像製作装置Ｃ１を用いて、この映像を作成する。
（２）雨Ａ
「雨Ａ」は、雨の天候を表す。「雨Ａ」のときは、映像描画装置Ｇ１は、天候変数情報に基づいて映像のＤｉｆｆｕｓｅ係数を高くすることで、映像を黒くする。つまり、「雨Ａ」のときに天候度合情報が大きい（度合いが高い）程、Ｄｉｆｆｕｓｅ係数を高くすることで、映像の黒味が増す。このように、映像描画装置Ｇ１は、天候度合情報が大きい程、オブジェクトから光が拡散反射され難く、オブジェクトに光が吸収されるようにする。これにより、映像描画装置Ｇ１は、映像を全体的に暗くでき、例えば天候度合情報が連続的に大きくすることで、次第に、曇が厚くなり、雨が強くなっていくことを表現できる。
【００２５】
（３）雨Ｂ
「雨Ｂ」は、雨の天候を表す。「雨Ｂ」のときは、映像描画装置Ｇ１は、天候変数情報に基づいて映像のＤｉｆｆｕｓｅ係数を高くするとともに、Ｓｐｅｃｕｌａｒ係数を高くする。つまり、「雨Ｂ」のときに天候度合情報が大きい（度合いが高い）程、Ｄｉｆｆｕｓｅ係数とＳｐｅｃｕｌａｒ係数の両方を高くする。つまり、映像描画装置Ｇ１は、映像の黒味を増しつつ、オブジェクトから光が鏡面反射され易いようにする。これにより、映像描画装置Ｇ１は、映像を全体的に暗くするとともに、次第に、オブジェクトの表面が塗れていき、鏡面反射が強くなっていくことを表現できる。また、映像描画装置Ｇ１は、映像を全体的に暗くしても、オブジェクトを視聴者が認識し易くすることができる。
（４）雪
「雪」は、雪の天候を表す。「雪」のときは、映像描画装置Ｇ１は、オブジェクトに対して、その表面の向きに応じた厚さの雪を積もらせる。また、映像描画装置Ｇ１は、オブジェクトに対して、その雪の厚さ（つまり、表面の向きでもある）に応じて、雪のテクスチャ（画像）の色（雪テクスチャ色とも称する）を変化させる。
【００２６】
図２〜図５は、映像描画装置Ｇ１が表示させた映像である。
図２は、本実施形態に係る、天候が「晴れ」のときの映像を表す図である。この映像が基準の映像となる。映像製作者Ｄ１は、映像製作装置Ｃ１を用いて、この映像を作成する。なお、他の天候の映像は、この映像に基づいて、自動で生成される。
【００２７】
図３は、本実施形態に係る、天候が「雨Ｂ」のときの映像を表す図である。図３の映像と図２の映像を比較すると、図３の映像は、図２の映像よりＤｉｆｆｕｓｅ係数が高く、全体的に暗くなっている。また、図３の映像は、図２の映像よりＳｐｅｃｕｌａｒ係数が高く、オブジェクトからの鏡面反射が強くなっている。なお、図３の映像は、図２の映像から、Ｄｉｆｆｕｓｅ係数とＳｐｅｃｕｌａｒ係数を変更させたものである。また、天候が「雨Ａ」のときの映像は、図２の映像から、Ｄｉｆｆｕｓｅ係数を変更させ、Ｓｐｅｃｕｌａｒ係数を変更させないものとなる。
【００２８】
図４は、本実施形態に係る、天候が「雨Ｂ」のときの映像の一部を表す図である。図４の映像は、図３の映像のうち、符号Ｐ２１を付した破線で囲った映像Ｐ２１を、拡大したものである。図４の映像と図２の映像を比較すると、図４の映像では、例えば、符号Ｒ２０１、Ｒ２０２を付した破線で囲った領域Ｒ２０１、Ｒ２０２において、オブジェクト（岩）からの鏡面反射が、図２のものよりも強くなっている。
【００２９】
図５は、本実施形態に係る、天候が「雪」のときの映像を表す図である。図５の映像と図２の映像を比較すると、図５の映像は、図２の映像中のオブジェクトの上（垂直方向の上方向）に、所定の厚さの雪が積もっている。ここで、積もっている雪の色は、オブジェクトの色（晴れの色）と雪テクスチャ色に基づいて、決定されたものである。このように、映像描画装置Ｇ１は、積もっている雪の色を、オブジェクトの色に基づいて決定するので、オブジェクト（例えば、岩や地面）の凹凸の表現を残しつつ、そこに雪が積もっていることを表現できる。また、図５の映像では、オブジェクトの上にオブジェクトがある場合には、下のオブジェクトには、雪が積もっていない。
【００３０】
図６は、本実施形態に係る映像製作装置Ｃ１の構成を示す概略ブロック図である。この図において、映像製作装置Ｃ１は、入力部Ｃ１１、映像作成部Ｃ１２、映像情報記憶部Ｃ１３、映像提供部Ｃ１４、映像制御部１、表示部Ｃ１５を含んで構成される。なお、映像製作者Ｄ１は、表示部Ｃ１５に表示された映像を試聴しながら、映像製作装置Ｃ１へ操作入力することで、映像を作成できる。
【００３１】
入力部Ｃ１１は、映像製作者Ｄ１による操作入力に基づいて操作情報を生成し、生成した操作情報を映像作成部Ｃ１２へ出力する。
映像作成部Ｃ１２は、入力部Ｃ１１から入力された操作情報に基づいて、ソースコードを生成する。なお、このソースコードには天候変数情報が含まれる。映像作成部Ｃ１２は、生成したソースコードを、映像情報記憶部Ｃ１３に記憶させる。また、映像作成部Ｃ１２は、「完了」ボタンの押下を示す操作情報が入力された場合、映像情報記憶部Ｃ１３が記憶するソースコードとライブラリ等をビルドすることで、映像描画プログラムを生成する。映像作成部Ｃ１２は、生成した映像描画プログラムを映像情報記憶部Ｃ１３に記憶させる。
【００３２】
映像提供部Ｃ１４は、映像情報記憶部Ｃ１３が記憶する映像描画プログラムを、外部装置へ提供する。例えば、映像描画プログラムは、ＤＶＤやメモリ等の記憶媒体にコピーされ、映像描画装置Ｇ１へ提供される。なお、映像提供部Ｃ１４は、映像描画プログラムを、ネットワークを介して、映像描画装置Ｇ１へ提供してもよい。
映像制御部１は、映像情報記憶部Ｃ１３が記憶する映像描画プログラムに基づいて、映像製作者Ｄ１に試聴させるための映像を生成する。映像制御部１は、生成した映像を表示部Ｃ１５へ出力する。
表示部Ｃ１５は、映像制御部１から入力された映像を表示する。
【００３３】
図７は、本実施形態に係る映像作成部Ｃ１２及び映像情報記憶部Ｃ１３の構成を示す概略ブロック図である。この図において、映像作成部Ｃ１２は、表示情報取得部Ｃ１２１、ライブラリ取得部Ｃ１２２、オブジェクト情報取得部Ｃ１２３、ソースコード生成部Ｃ１２４、及び、プログラム生成部Ｃ１２５を含んで構成される。映像情報記憶部Ｃ１３は、ライブラリ記憶部Ｃ１３１、オブジェクト情報記憶部Ｃ１３２、ソースコード記憶部Ｃ１３３、及び、プログラム記憶部Ｃ１３４を含んで構成される。
【００３４】
表示情報取得部Ｃ１２１は、例えば表示に基づいて、映像製作者Ｄ１が３Ｄ映像を生成する場合には、映像作成部Ｃ１２から表示情報を取得する。表示情報には、映像中のオブジェクトを表すオブジェクト情報が含まれる。表示情報取得部Ｃ１２１は、取得した表示情報を、オブジェクト情報取得部Ｃ１２３へ出力する。
【００３５】
ライブラリ取得部Ｃ１２２は、例えばネットワークを介して、ライブラリ（例えば、天候を変化させるライブラリ）を取得する。ライブラリ取得部Ｃ１２２は、取得したライブラリをライブラリ記憶部Ｃ１３１へ記憶する。ライブラリは、汎用性の高い複数のプログラムを、再利用可能な形でひとまとまりにしたものであるので、映像製作装置Ｃ１は、様々な機能を簡易に実現できる。
【００３６】
オブジェクト情報取得部Ｃ１２３は、表示情報取得部Ｃ１２１から表示情報が入力される場合には、入力された表示情報に含まれるオブジェクト情報（図８参照）を取得する。オブジェクト情報は、３Ｄ映像中のオブジェクト（物体）を表す情報であり、ポリゴン（ｐｏｌｙｇｏｎ）を形成するための情報である。ポリゴンとは、３Ｄ映像における立体形状を表現するために使われる多角形であり、オブジェクトの表面が分割されたもの（例えば三角形）である。具体的には、オブジェクト情報には、ポリゴンの各頂点を示す頂点情報が含まれている。また、オブジェクト情報には、メッシュ情報とマテリアル情報が含まれている。メッシュとはポリゴンの集合であり、メッシュ情報には、メッシュ毎にそのメッシュに属するポリゴンを示す情報（例えば、頂点情報の集合）が含まれている。マテリアル情報は、各メッシュにおける、法線方向や、光の反射、模様、質感などの色に関する情報が含まれている。オブジェクト情報取得部Ｃ１２３は、取得したオブジェクト情報を、オブジェクト情報記憶部Ｃ１３２に記憶させる。
【００３７】
ソースコード生成部Ｃ１２４は、入力部Ｃ１１から入力された操作情報に基づいて、ソースコードを生成する。このソースコードには、天候変数情報が含まれる。具体的には、ソースコードには、ソースコード記憶部Ｃ１３３として、天候の変化の度合いを示す情報（変数）が記載される。ソースコード生成部Ｃ１２４は、生成した天候変数情報を、ソースコード記憶部Ｃ１３３に記憶させる。
【００３８】
プログラム生成部Ｃ１２５は、「完了」ボタンの押下を示す操作情報が入力された場合、映像情報記憶部Ｃ１３のライブラリ記憶部Ｃ１３１、オブジェクト情報記憶部Ｃ１３２、及びソースコード記憶部Ｃ１３３が記憶する情報に基づいて、映像描画プログラムを生成する。プログラム生成部Ｃ１２５は、生成した映像描画プログラムを、プログラム記憶部Ｃ１３４に記憶させる。
【００３９】
図８は、本実施形態に係るオブジェクト情報の一例を示す概略図である。オブジェクト情報には、図８（ａ）〜（ｃ）が示す情報が含まれる。図８（ａ）は、ポリゴンの各頂点を示す頂点情報である。図８（ｂ）は、マテリアル情報である。図８（ｃ）は、メッシュ情報である。
図８（ａ）において、頂点情報は、ポリゴンの各頂点の「座標」の項目を含む。図８（ｂ）において、マテリアル情報は、Ｄｉｆｆｕｓｅ値、Ｓｐｅｃｕｌａｒ値、ノーマルマップ有無、及び法線ベクトルの項目を含む。ここで、ノーマルマップ（法線マップ）とは、ポリゴン内における画像の法線ベクトルのマップ（地図、分布）であり、ポリゴン内の凹凸を表す。また、法線ベクトルは、メッシュの法線ベクトルであり、オブジェクトの外側へ向かうベクトルである。
【００４０】
図８（ｃ）において、メッシュ情報は、含有頂点情報、晴れの色、及び、マテリアル識別情報の項目を含む。含有頂点情報は、メッシュに含まれるポリゴンの頂点を示す情報である。マテリアル識別情報は、メッシュに対応するマテリアル情報を識別する情報である。
つまり、各メッシュは、１つのマテリアルを参照している。例えば、同じ材質のメッシュは、同じマテリアル識別情報のマテリアル情報を参照している。
【００４１】
図９は、本実施形態に係る映像制御部１の構成を示す概略ブロック図である。この図において、映像制御部１は、プログラム取得部１０１、シェーダ生成部１０２、オブジェクト情報取得部１０３、シェーダ記憶部１１、オブジェクト情報記憶部１２、オブジェクト生成部１３、及び、映像出力部１４を含んで構成される。シェーダ記憶部１１は、晴れシェーダ記憶部１１１、雪シェーダ記憶部１１２、第１雨シェーダ記憶部１１３、及び、第２雨シェーダ記憶部１１４を含んで構成される。オブジェクト生成部１３は、ポリゴン生成部１３１、天候変数情報取得部１３２、シェーダ制御部１３３、及び、メッシュ生成部１３４を含んで構成さえる。
【００４２】
プログラム取得部１０１は、映像描画プログラムを取得する。プログラム取得部１０１は、取得した映像描画プログラムから、シェーダに関するシェーダ情報、オブジェクト情報、ｅｘｅファイルを抽出する。プログラム取得部１０１は、抽出したシェーダ情報をシェーダ生成部１０２へ出力し、抽出したオブジェクト情報をオブジェクト情報取得部１０３へ出力し、ｅｘｅファイルをオブジェクト生成部１３へ出力する。
シェーダ生成部１０２は、アプリケーションの起動時に、プログラム取得部から入力されたシェーダ情報に基づいて、４つ種類のシェーダ（晴れシェーダ、雪シェーダ、第１雨シェーダ、及び第２雨シェーダ）をメモリにロードする。つまり、シェーダ生成部１０２は、アプリケーションの起動時に、晴れシェーダを記憶する晴れシェーダ記憶部１１１、雪シェーダを記憶する雪シェーダ記憶部１１２、第１雨シェーダを記憶する第１雨シェーダ記憶部１１３、及び第２雨シェーダを記憶する第２雨シェーダ記憶部１１４を生成する。これにより、映像制御部１は、シェーダ記憶部１１が記憶する各シェーダを呼び出すことで、４つの天候について、変化前の天候から変化後の天候へ、次第に変化させることができる。
【００４３】
オブジェクト情報取得部１０３は、プログラム取得部１０１からオブジェクト情報を取得し、取得したオブジェクト情報をオブジェクト情報記憶部１２に記憶させる。
オブジェクト生成部１３は、プログラム取得部１０１から入力されたｅｘｅファイルを実行する。ここで、オブジェクト生成部１３は、ｅｘｅファイルに含まれる天候変数情報と、シェーダ記憶部１１が記憶する各シェーダと、オブジェクト情報記憶部１２が記憶するオブジェクト情報と、に基づいて、オブジェクトを生成する。オブジェクト生成部１３が行う処理（オブジェクト生成処理とも称する）の詳細は、後述する。
オブジェクト生成部１３は、オブジェクト生成処理が完了すると、その結果得られた映像情報を、映像出力部１４へ出力する。
映像出力部１４は、オブジェクト生成部１３から入力された映像情報に基づいて映像を生成し、生成した映像を表示部Ｃ１５へ出力する。
【００４４】
図１０は、本実施形態に係るオブジェクト生成部１３の動作の一例を示すフローチャートである。以下、図１０と図９を参照しながら、オブジェクト生成部１３の動作の説明をする。
（ステップＳ１１）ポリゴン生成部１３１は、オブジェクト情報記憶部１２が記憶するオブジェクト情報の頂点情報を読み出す。その後、ステップＳ１２へ進む。
（ステップＳ１２）ポリゴン生成部１３１は、ステップＳ１１で読み出した頂点情報の各頂点の座標に対して、例えば透視投影変換を行うことで、表示面（２次元ディスプレイ；表示面での座標を２次元座標とも称する）上での頂点の位置（２次元頂点座標とも称する）を決定する。その後、ステップＳ１３へ進む。
（ステップＳ１３）メッシュ生成部１３４は、ラスタライズ処理として、ステップＳ１２で決定した２次元頂点座標に基づいて、描画するべき、２次元座標のピクセルを決定する。その後、ステップＳ１４へ進む。
【００４５】
（ステップＳ１４）メッシュ生成部１３４は、ピクセルシェーダ処理として、ステップＳ１３で決定したピクセルについて、そのピクセルの色をオブジェクト情報に基づいて決定する。具体的には、天候変数情報取得部１３２は、天候変数情報を取得する。シェーダ制御部１３３は、天候変数情報取得部１３２が取得した天候変数情報とオブジェクト情報に基づいて、シェーダの種類を選択するシェーダ選択処理（図１２参照）を行う。シェーダ制御部１３３は、選択したシェーダをメッシュ生成部１３４へ出力する。
メッシュ生成部１３４は、メッシュ情報に基づいて、各メッシュのマテリアル識別情報を特定する。メッシュ生成部１３４は、特定したマテリアル識別情報のマテリアル情報と、シェーダ制御部１３３から入力されたシェーダに基づいて、各メッシュの色を決定する。その後、ステップＳ１５へ進む。
【００４６】
（ステップＳ１５）メッシュ生成部１３４は、各ピクセルに対して、決定した色をフレームバッファに記憶する。これにより、１フレームの映像が保持される。そして、このフレームバッファが記憶する情報を、２次元の表示面へ出力することで、３Ｄ映像が描画される。
【００４７】
以下、ピクセルシェーダ処理について、詳細を説明する。
シェーダ制御部１３３は、まずシェーダ選択処理を行う。具体的には、天候変数情報取得部１２１は、天候変数情報が示す天候が、「晴れ」の場合には「晴れシェーダ」、「雪」の場合には「雪シェーダ」、「雨」の場合には「第１雨シェーダ」或いは「第２雨シェーダ」を選択する。ここで、シェーダ制御部１３３は、天候が「雨」の場合には、各メッシュのオブジェクト情報に基づいて、メッシュ各々に対するシェーダを「第１雨シェーダ」或いは「第２雨シェーダ」から選択する。例えば、シェーダ制御部１３３は、各メッシュのオブジェクト情報のノーマルマップの有無に基づいて、「第１雨シェーダ」或いは「第２雨シェーダ」を選択する。具体的には、シェーダ制御部１３３は、天候が「雨」でノーマルマップが無い場合に「第１雨シェーダ」を選択し、天候が「雨」でノーマルマップが有る場合に第２雨シェーダを選択する。
これにより、映像制御部１は、天候を「雨Ｂ」とする（「第２雨シェーダ」が選択される）とき、オブジェクトのポリゴン内が平らではない（曲面や凹凸がある）場合には、そのポリゴン（又はオブジェクトでもよい）のＳｐｅｃｕｌａｒ値を高くすることで、鏡面反射を強調して表現する。
シェーダ制御部１３３は、選択したシェーダをメッシュ生成部１３４へ出力する。
メッシュ生成部１３４は、各メッシュについて特定したマテリアル識別情報のマテリアル情報と、シェーダ制御部１３３から入力されたシェーダに基づいて、各メッシュの色を決定する。
【００４８】
（１）天候が「雪」の場合
メッシュ生成部１３４は、シェーダ制御部１３３から「雪シェーダ」が入力された場合、次の処理を行う。
メッシュ生成部１３４は、メッシュ毎に、雪の厚さを決定する。具体的には、メッシュ生成部１３４は、次式（１）を用いて、雪の厚さを決定する。
【００４９】
雪の厚さ＝法線ベクトルのＹ成分×基準雪厚・・・（１）
【００５０】
つまり、メッシュ生成部１３４は、天候が雪の場合には、例えば映像製作者Ｄ１がソースコードに記載した基準雪厚を取得する。メッシュ生成部１３４は、取得した基準雪厚に対して、映像中の各メッシュに対するマテリアル情報の法線ベクトルのＹ成分を、乗算する。この結果、メッシュ生成部１３４は、雪の厚さを得る。
なお、式（１）の雪の厚さは、０〜１の値を取り得るように、規格化されている。
【００５１】
また、メッシュ生成部１３４は、フレーム中のメッシュ毎に、第１条件に合致するときは、最終的な雪の色を、次式（２）を用いて決定する。
【００５２】
最終的な雪の色＝晴れの色×（１−法線ベクトルのＹ成分×雪の厚さ）
＋雪テクスチャ色×法線ベクトルのＹ成分×雪の厚さ・・・（２）
【００５３】
つまり、メッシュ生成部１３４は、式（１）を用いて決定した雪の厚さ、映像中の各メッシュのメッシュ情報の「晴れの色」、及び各メッシュに対するマテリアル情報の法線ベクトルのＹ成分に基づいて、最終的な雪の色を算出する。
式（２）のように、メッシュ生成部１３４は、各メッシュについて、晴れの色と雪テクスチャの色とを、雪の暑さに応じた重みで混色させる。具体的には、映像制御部１は、法線ベクトルが上を向くほど、雪の厚さを大きくするとともに、色を雪テクスチャの色に近づける。一方、映像制御部１は、法線ベクトルが横を向くほど、雪の厚さを小さくするとともに、色を晴れの色に近づける。このように、メッシュ生成部１３４は、映像中のオブジェクトの表面の法線ベクトルに基づいて、当該表面に積もる雪の色を決定する。
【００５４】
なお、第１条件とは、法線ベクトルのＹ成分が正（上方向）のとき、かつ、メッシュの上方向に別のオブジェクトのポリゴンが存在しない、という条件である。例えば、メッシュ生成部１３４は、真上から映像中の世界を見た場合の深度値を用いて、対象のポリゴンの上に別のオブジェクトのポリゴンが存在しないか否かを判定する。この第１条件に合致しない場合には、メッシュ生成部１３４は、最終的な雪の色（雪が積もらないので、オブジェクトそのものの色となる）を、晴れの色に決定する。これにより、映像制御部１は、例えば屋根のオブジェクトがある場合に、屋根の下の部分に、雪が積もらないようにすることができる。なお、メッシュ生成部１３４は、別のオブジェクトが静的なオブジェクトである場合（動的なオブジェクトでない場合）には、最終的な雪の色を晴れの色に決定してもよい。逆に、メッシュ生成部１３４は、別のオブジェクトが静的なオブジェクトでなく場合（動的なオブジェクトである場合）には、雪の色についての最終的な色を、次式（２）を用いて決定してもよい。
【００５５】
（２）天候が「雨Ａ」の場合
メッシュ生成部１３４は、あるメッシュ（対象メッシュとも称する）に対して、シェーダ制御部１３３から「第１雨シェーダ」が入力された場合、対象メッシュについて次の処理を行う。具体的には、メッシュ生成部１３４は、対象メッシュの最終的な色Ａを、次式（３）を用いて決定する。
【００５６】
最終的な色Ａ＝晴れの色×｛１−（Ｄｉｆｆｕｓｅ係数×０．７）｝・・・（３）
【００５７】
ここで、メッシュ生成部１３４は、天候変数情報から天候度合情報を抽出し、抽出した天候度合情報をＤｉｆｆｕｓｅ係数へ変換する。例えば、メッシュ生成部１３４は、天候度合情報を、そのままＤｉｆｆｕｓｅ係数へ代入する。なお、Ｄｉｆｆｕｓｅ係数は、例えば映像製作者Ｄ１がソースコードに記載してもよい。メッシュ生成部１３４は、変換したＤｉｆｆｕｓｅ係数、映像中の各メッシュのメッシュ情報の「晴れの色」に基づいて、最終的な色Ａを算出する。
なお、式（３）において、Ｄｉｆｆｕｓｅ係数には、係数「０．７」が乗算されている。このように、式（３）では、Ｄｉｆｆｕｓｅ係数の影響が一定の割合（７０％）、弱められる。また、Ｄｉｆｆｕｓｅ係数は０〜１の値を取るので、最終的な色Ａは「晴れの色」に０．３を乗じた値となる。つまり、最終的な色Ａは、０（例えば、黒）となることはない。
【００５８】
（３）天候が「雨Ｂ」の場合
メッシュ生成部１３４は、あるメッシュ（対象メッシュ）に対して、シェーダ制御部１３３から「第２雨シェーダ」が入力された場合、対象メッシュについて次の処理を行う。具体的には、メッシュ生成部１３４は、対象メッシュの最終的な色Ｂを、次式（４）を用いて決定する。
【００５９】
最終的な色Ｂ＝最終的な色Ａ＋シェーディング色×Ｓｐｅｃｕｌａｒ係数・・・（４）
【００６０】
ここで、メッシュ生成部１３４は、天候変数情報から天候度合情報を抽出し、抽出した天候度合情報をＤｉｆｆｕｓｅ係数及びＳｐｅｃｕｌａｒ係数へ変換する。例えば、メッシュ生成部１３４は、天候度合情報を、そのままＤｉｆｆｕｓｅ係数及びＳｐｅｃｕｌａｒ係数へ代入する。すなわち、メッシュ生成部１３４は、第２雨シェーダが選択された場合に、拡散反射と鏡面反射の両方が大きくなるようにＤｉｆｆｕｓｅ係数及びＳｐｅｃｕｌａｒ係数を決定し、決定したＤｉｆｆｕｓｅ係数及びＳｐｅｃｕｌａｒ係数に基づいて、映像中のオブジェクトの色を決定する。
また、メッシュ生成部１３４は、シェーディング色を取得する。例えば、シェーディング色がマテリアル情報として予め記憶され、メッシュ生成部１３４は、記憶されているシェーディング色を読み出す。なお、シェーディング色とは、シェーディング（陰影画法）を適用した場合の色である。例えば、Ｂｌｉｎｎシェーディングで算出された色であってもよい。
また、メッシュ生成部１３４は、最終的な色Ａを式（３）を用いて算出する。メッシュ生成部１３４は、取得したＤｉｆｆｕｓｅ係数及びシェーディング色、算出した最終的な色Ａ、及び映像中の各メッシュのメッシュ情報の「晴れの色」に基づいて、最終的な色Ｂを算出する。
【００６１】
図１１は、本実施形態に係る映像描画装置Ｇ１の構成を示す概略ブロック図である。この図において、映像描画装置Ｇ１は、プログラム取得部Ｇ１１、プログラム記憶部Ｇ１２、入力部Ｇ１３、映像制御部１、及び、表示部Ｇ１４を含んで構成される。なお、映像描画装置Ｇ１は表示部Ｇ１４を備えなくてもよく、表示部Ｇ１４は他の装置（表示装置）が備えても良い。
【００６２】
プログラム取得部Ｇ１１は、映像製作装置Ｃ１が生成した映像描画プログラムを取得する。なお、プログラム取得部Ｇ１１は、ＤＶＤやメモリ等の記憶媒体から映像描画プログラムを取得してもよいし、ネットワークを介して映像描画プログラムを取得してもよい。プログラム取得部Ｇ１１は、取得した映像描画プログラムをプログラム記憶部Ｇ１２に記憶させる。
入力部Ｇ１３は、映像描画装置Ｇ１のコントローラ（例えば、ゲームコントローラやテレビジョン装置のリモートコントローラ）から、映像描画装置Ｇ１の利用者による操作入力を受信する。入力部Ｇ１３は、受信した操作入力に基づいて操作情報を生成し、生成した操作情報を映像制御部１へ出力する。
【００６３】
映像制御部１は、映像製作装置Ｃ１の映像制御部１（図９）と同じ構成及び機能を有する。ここで、プログラム取得部１０１は、プログラム記憶部Ｇ１２が記憶する映像描画プログラムを取得する。
映像制御部１は、生成した映像を表示部Ｇ１４へ出力する。
表示部Ｇ１４は、映像制御部１から入力された映像を表示する。
【００６４】
図１２は、本実施形態に係るシェーダ選択処理の動作の一例を示すフローチャートである。シェーダ選択処理は、映像制御部１のシェーダ制御部１３３が行う処理である。
【００６５】
（ステップＳ１０１）シェーダ制御部１３３は、天候変数情報が示す変化後の天候が「晴れ」であるか否かを判定する。変化後の天候が「晴れ」であると判定された場合（Ｙｅｓ）、ステップＳ１０２へ進む。一方、変化後の天候が「晴れ」でないと判定された場合（Ｎｏ）、ステップＳ１０３へ進む。
（ステップＳ１０２）シェーダ制御部１３３は、「晴れシェーダ」を選択する。その後、動作を終了する。
【００６６】
（ステップＳ１０３）シェーダ制御部１３３は、天候変数情報が示す変化後の天候が「雪」であるか否かを判定する。変化後の天候が「雪」であると判定された場合（Ｙｅｓ）、ステップＳ１０４へ進む。一方、変化後の天候が「雪」でないと判定された場合（Ｎｏ）、ステップＳ１０５へ進む。
（ステップＳ１０４）シェーダ制御部１３３は、「雪シェーダ」を選択する。その後、動作を終了する。
【００６７】
（ステップＳ１０５）シェーダ制御部１３３は、天候変数情報が示す変化後の天候が「雨」であるか否かを判定する。変化後の天候が「雨」であると判定された場合（Ｙｅｓ）、ステップＳ１０６へ進む。一方、変化後の天候が「雨」でないと判定された場合（Ｎｏ）、動作を終了する。ここで、動作を終了する際に、シェーダ制御部１３３は、予め定められたシェーダ（例えば、「晴れシェーダ」）を選択してもよいし、「未決定」としてもよい。
（ステップＳ１０６）シェーダ制御部１３３は、オブジェクト情報のノーマルマップの有無が「有」か否かを判定することにより、ノーマルマップが有るか否かを判定する。ノーマルマップの有無が「無」であると判定された場合（Ｎｏ）、ステップＳ１０７へ進む。一方、ノーマルマップの有無が「有」であると判定された場合（Ｙｅｓ）、ステップＳ１０８へ進む。
（ステップＳ１０７）シェーダ制御部１３３は、「第１雨シェーダ」を選択する。その後、動作を終了する。
（ステップＳ１０８）シェーダ制御部１３３は、「第２雨シェーダ」を選択する。その後、動作を終了する。
【００６８】
このように、本実施形態によれば、３Ｄ映像処理システムでは、ライブラリによって、映像描画装置Ｇ１及び映像製作装置Ｃ１は、天候を示す天候情報、及び、天候の度合いを示す天候度合情報を取得する。映像描画装置Ｇ１及び映像製作装置Ｃ１は、天候情報に基づいて、映像中の天候を変化可能なシェーダの種類を選択する。映像描画装置Ｇ１及び映像製作装置Ｃ１は、選択したシェーダを用いて、天候度合情報に基づいて、映像中のオブジェクトの色を決定する。これにより、３Ｄ映像処理システムは、基準となる映像に対して、光の反射に関する情報等の変数を次第に変化させることができ、天候の変化を表現できる。従って、３Ｄ映像処理システムでは、数多くの画像を用意しなくても、天候の変化を表現できる。
【００６９】
また、映像描画装置Ｇ１及び映像製作装置Ｃ１は、天候度合情報に基づいて光の反射に関する情報を決定し、決定した光の反射に関する情報に基づいて、映像中のオブジェクトの色を決定する。具体的には、映像描画装置Ｇ１及び映像製作装置Ｃ１は、天候度合情報に基づいてＤｉｆｆｕｓｅ係数を決定し、決定したＤｉｆｆｕｓｅ係数に基づいて、映像中のオブジェクトの色を決定する。
これにより、そして、映像描画装置Ｇ１及び映像製作装置Ｃ１は、第１雨シェーダが選択された場合には、Ｄｉｆｆｕｓｅ係数に基づいて映像中のオブジェクトの色を決定し、第２雨シェーダが選択された場合には、Ｄｉｆｆｕｓｅ係数とＳｐｅｃｕｌａｒ係数に基づいて、映像中のオブジェクトの色を決定する。例えば、映像描画装置Ｇ１及び映像製作装置Ｃ１は、天候情報が示す天候が雨の場合に、映像中のポリゴンの集合であるメッシュ毎に、ノーマルマップが無い場合には第１雨シェーダを選択し、ノーマルマップが有る場合には第２雨シェーダを選択する。
【００７０】
これにより、３Ｄ映像処理システムは、天候を「雨」に変化させるとき、ノーマルマップが無く、オブジェクトのポリゴン内が平らである場合には、鏡面反射に関する情報は制御せず、鏡面反射を強調せずに表現できる。一方、３Ｄ映像処理システムは、天候を「雨」に変化させるとき、ノーマルマップが有り、オブジェクトのポリゴン内が平らではない（曲面や凹凸がある）場合には、そのポリゴンのＳｐｅｃｕｌａｒ値を高くすることで、鏡面反射を強調して表現できる。このように、３Ｄ映像処理システムは、映像を全体的に暗くするとともに、次第に、オブジェクトの表面が濡れていき、鏡面反射が強くなっていくことを表現できる。また、３Ｄ映像処理システムは、映像を全体的に暗くしても、オブジェクトを視聴者が認識し易くすることができる。
【００７１】
また、映像描画装置Ｇ１及び映像製作装置Ｃ１は、天候情報が示す天候が雪の場合に、映像中のポリゴンの集合であるメッシュ毎の法線ベクトルに基づいて、当該表面に積もる雪の厚さを決定し、決定した雪の厚さに基づいて、映像中のオブジェクトの色を決定する。
これにより、３Ｄ映像処理システムは、オブジェクトの表面の向きに応じた厚さの雪を、当該表面に積もらせることができる。つまり、３Ｄ映像処理システムは、表面の向きに応じた雪の積もり易さ又は積もりにくさを表現できる。
【００７２】
（変形例）
なお、上記実施形態において、天候変数情報は、以下のような情報であってもよい。
図１３は、本実施形態の変形例に係る天候変数情報テーブルの一例を示す概略図である。図示するように天候変数情報テーブルは、開始タイミング、変化前天候、変化後天候、終了タイミング、Ｄｉｆｆｕｓｅ係数、Ｓｐｅｃｕｌａｒ係数、基準雪厚、及び、雪テクスチャの各項目を有している。開始タイミングとは、天候の変化を開始する機会である。変化前天候は変化前の天候であり、変化後天候は変化後の天候である。終了タイミングとは、天候の変化を終了する機会である。Ｄｉｆｆｕｓｅ係数及びＳｐｅｃｕｌａｒ係数は、映像製作者Ｄ１が決定した係数であり、メッシュの色の決定に用いられる。例えば、Ｄｉｆｆｕｓｅ係数は、予め定めれらた範囲（０〜１．０）の値である。
【００７３】
図１３の天候変数情報テーブルの一例では、天候は、シーン１で「晴れ」から「雨」に次第に変化し、その後、シーン２で「雨」から「晴れ」に次第に変化し、シーン３で「操作Ａ」が行われた場合に「晴れ」から「雪」に次第に変化する。
例えば、１行目の天候変数情報は、シーン１の開始の天候が「晴れ」であり、その後、シーン１の終了までに、次第に、「雨」に変化することを表す。そして、この場合のＤｉｆｆｕｓｅ係数は「０．５」であり、Ｓｐｅｃｕｌａｒ係数は「０．４」である。例えば、２行目の天候変数情報は、シーン２の開始の天候が「雨」であり、その後、シーン２の終了までに、次第に、「晴れ」に変化することを表す。例えば、３行目の天候変数情報は、シーン３の開始の天候が「晴れ」であり、その後、「操作Ａ」が行われた場合に、１２０秒をかけて次第に、「雪」に変化することを表す。このとき、基準雪厚は「３」ｃｍであり、雪の色は「白」に基づいた色となる。
【００７４】
図１４は、本実施形態の変形例に係る映像制御部１の動作の一例を示すフローチャートである。
（ステップＳ２０１）映像制御部１は、天候変数情報の開始タイミング及び終了タイミングを取得する。その後、ステップＳ２０２へ進む。
（ステップＳ２０２）映像制御部１は、ステップＳ２０１で取得した終了タイミングから開始タイミングを差し引くことで、天候変化時間を算出する。その後、ステップＳ２０３へ進む。なお、映像制御部１は、天候変数情報の変化後の天候に基づいて、以下のステップの処理を行う。
【００７５】
（ステップＳ２０３）映像制御部１は、天候の変化前と変化後のＤｉｆｆｕｓｅ係数及びＳｐｅｃｕｌａｒ係数を決定する。例えば、映像制御部１は、変化前の天候が「雨Ａ」、「雨Ｂ」のときに、変化後の天候が「晴れ」の場合には、変化前と変化前のＤｉｆｆｕｓｅ係数及びＳｐｅｃｕｌａｒ係数をそれぞれ「１」、「０」とする。逆に、映像制御部１は、変化前の天候が「晴れ」のときに、変化後の天候が「雨Ａ」、「雨Ｂ」の場合には、変化前と変化前のＤｉｆｆｕｓｅ係数及びＳｐｅｃｕｌａｒ係数をそれぞれ「０」、「１」とする。
映像制御部１は、決定した天候の変化後のＤｉｆｆｕｓｅ係数及びＳｐｅｃｕｌａｒ係数から変化前のＤｉｆｆｕｓｅ係数及びＳｐｅｃｕｌａｒ係数を差し引くことで、Ｄｉｆｆｕｓｅ係数及びＳｐｅｃｕｌａｒ係数の変化量を算出する。映像制御部１は、算出した色の変化量を、ステップ２０２で算出した天候変化時間で除算することで、単位変化量を算出する。映像制御部１は、単位変化量を記憶する。その後、ステップＳ２０４へ進む。
なお、単位変化量は、映像製作者Ｄ１がソースコードで指定してもよい。また、Ｄｉｆｆｕｓｅ係数、Ｓｐｅｃｕｌａｒ係数に代えて、天候度合情報を用いても良い。この場合、上述のように、映像制御部１は、天候度合情報をＤｉｆｆｕｓｅ係数、Ｓｐｅｃｕｌａｒ係数に変換する。
【００７６】
（ステップＳ２０４）映像制御部１は、表示させる映像が、ステップＳ２０１で取得した開始タイミングとなったか否かを判定することで、天候の変化を開始するか否かを判定する。天候の変化を開始すると判定した場合（Ｙｅｓ）、ステップＳ２０５へ進む。一方、天候の変化を開始しないと判定した場合（Ｎｏ）、ステップＳ２０４へ戻る。
（ステップＳ２０５）映像制御部１は、表示させる映像について、天候の変化の開始タイミングからの経過時間を取得する。その後、ステップＳ２０６へ進む。
【００７７】
（ステップＳ２０６）映像制御部１は、ステップＳ２０３で記憶した単位変化量に、ステップＳ２０５で取得した経過時間を乗算することで、Ｄｉｆｆｕｓｅ係数及びＳｐｅｃｕｌａｒ係数の変化量を算出する。映像制御部１は、変化前のＤｉｆｆｕｓｅ係数及びＳｐｅｃｕｌａｒ係数に、変化量を加算することで、Ｄｉｆｆｕｓｅ係数及びＳｐｅｃｕｌａｒ係数を決定する。映像制御部１は、決定したＤｉｆｆｕｓｅ係数及びＳｐｅｃｕｌａｒ係数を、式（３）又は式（４）に代入することで、最終的な色を決定する。その後、ステップＳ２０７へ進む。
【００７８】
（ステップＳ２０７）映像制御部１は、表示させる映像が、ステップＳ２０１で取得した終了タイミングとなったか否かを判定することで、天候の変化を終了するか否かを判定する。天候の変化を終了すると判定した場合（Ｙｅｓ）、動作を終了する。一方、天候の変化を終了しないと判定した場合（Ｎｏ）、ステップＳ２０５へ戻る。
【００７９】
このように、本変形例に係る映像描画装置Ｇ１及び映像製作装置Ｃ１は、第１天候を示す情報、第２天候を示す情報、及び、第１天候から第２天候に変化する時間間隔を示す変化時間情報を含む、天候変数情報を取得する。映像描画装置Ｇ１及び映像製作装置Ｃ１は、取得した天候変数情報に基づいて、映像中の天候を第１天候から第２天候に次第に変化させる。例えば、映像描画装置Ｇ１及び映像製作装置Ｃ１は、光の反射に関する情報（Ｄｉｆｆｕｓｅ値、Ｓｐｅｃｕｌａｒ値）を次第に変化させることで、映像中の天候を第１天候から第２天候に次第に変化させる。
これにより、３Ｄ映像処理システムは、基準となる映像に対して、光の反射に関する情報等の変数を次第に変化させることで天候の変化を表現するので、数多くの画像を用意しなくても、天候の変化を表現できる。
【００８０】
映像描画装置Ｇ１及び映像製作装置Ｃ１は、変化後の天候が雪の場合に、映像中のオブジェクトの表面の法線ベクトルに基づいて、当該表面に積もる雪の色を決定する。映像描画装置Ｇ１及び映像製作装置Ｃ１は、決定した色の雪を、オブジェクトの表面に積もらせる。３Ｄ映像処理システムは、積もっている雪の色をいきなり雪の色に変化させないので、これにより、オブジェクト（例えば、岩や地面）の凹凸の表現を残しつつ、そこに雪が積もっていることを表現できる。また、３Ｄ映像処理システムは、オブジェクトの表面の向きに応じた厚さの雪を積もらせる場合には、雪の厚さに応じた色を表現できる。
【００８１】
なお、上述した実施形態における映像描画装置Ｇ１又は映像製作装置Ｃ１の一部をコンピュータで実現するようにしても良い。その場合、この制御機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現しても良い。なお、ここでいう「コンピュータシステム」とは、映像描画装置Ｇ１又は映像製作装置Ｃ１に内蔵されたコンピュータシステムであって、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでも良い。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
また、上述した実施形態における映像描画装置Ｇ１及び映像製作装置Ｃ１の一部、または全部を、ＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ）等の集積回路として実現しても良い。映像描画装置Ｇ１及び映像製作装置Ｃ１の各機能ブロックは個別にプロセッサ化してもよいし、一部、または全部を集積してプロセッサ化しても良い。また、集積回路化の手法はＬＳＩに限らず専用回路、または汎用プロセッサで実現しても良い。また、半導体技術の進歩によりＬＳＩに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いても良い。
【００８２】
以上、図面を参照してこの発明の一実施形態について詳しく説明してきたが、具体的な構成は上述のものに限られることはなく、この発明の要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。
【符号の説明】
【００８３】
Ｃ１・・・映像製作装置、Ｇ１・・・映像描画装置Ｇ１１・・・表示装置、Ｇ１−１・・・ゲーム装置、Ｇ１−２・・・携帯型表示装置、Ｃ１１・・・入力部、Ｃ１２・・・映像作成部、Ｃ１３・・・映像情報記憶部、Ｃ１４・・・映像提供部、１・・・映像制御部、Ｃ１５・・・表示部、Ｃ１２１・・・表示情報取得部、Ｃ１２２・・・ライブラリ取得部、Ｃ１２３・・・オブジェクト情報取得部、Ｃ１２４・・・ソースコード生成部、Ｃ１２５・・・プログラム生成部、Ｃ１３１・・・ライブラリ記憶部、Ｃ１３２・・・オブジェクト情報記憶部、Ｃ１３３・・・ソースコード記憶部Ｃ１３３、Ｃ１３４・・・プログラム記憶部、１０１・・・プログラム取得部、１０２・・・シェーダ生成部、１１１・・・オブジェクト情報取得部１０３・・・天候変数情報取得部、１１・・・シェーダ記憶部、１２・・・オブジェクト情報記憶部、１３・・・オブジェクト生成部、１４・・・映像出力部、１１１・・・映像出力部、１１２・・・雪シェーダ記憶部、１１３・・・雪シェーダ記憶部、１１４・・・第２雨シェーダ記憶部、１３１・・・ポリゴン生成部、１３２・・・天候変数情報取得部、１３３・・・シェーダ制御部、１３４・・・メッシュ生成部、Ｇ１１・・・プログラム取得部、Ｇ１２・・・プログラム記憶部、Ｇ１３・・・入力部、Ｇ１４・・・表示部
【図１】
2014056501.tif 000003
【図６】
2014056501.tif 000004
【図７】
2014056501.tif 000005
【図８】
2014056501.tif 000006
【図９】
2014056501.tif 000007
【図１０】
2014056501.tif 000008
【図１１】
2014056501.tif 000009
【図１２】
2014056501.tif 000010
【図１３】
2014056501.tif 000011
【図１４】
2014056501.tif 000012
【図２】
2014056501.tif 000013
【図３】
2014056501.tif 000014
【図４】
2014056501.tif 000015
【図５】
2014056501.tif 000016
【手続補正書】
【提出日】平成25年2月21日(2013.2.21)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
映像処理装置のコンピュータに、
天候を示す天候情報、及び、前記天候の度合いを示す天候度合情報を取得する天候変数情報取得手順、
前記天候情報に基づいて、映像中の天候を変化可能なシェーダの種類を選択するシェーダ制御手順、
前記シェーダ制御手順で選択されたシェーダを用いて、前記天候度合情報に基づいて、映像中のオブジェクトの色を決定する決定手順、
を実行させ、
前記シェーダ制御手順で、天候情報が示す天候が雨の場合に、第１シェーダ又は第２シェーダのいずれかを選択し、
前記決定手順で、前記天候度合情報に基づいて拡散反射を示す情報を決定するとともに、前記シェーダ制御手順において第１シェーダが選択された場合には、前記拡散反射を示す情報に基づいて映像中のオブジェクトの色を決定し、第２シェーダが選択された場合には、前記拡散反射を示す情報と鏡面反射を示す情報に基づいて、映像中のオブジェクトの色を決定するための映像処理プログラム。
【請求項２】
前記シェーダ制御手順で、天候情報が示す天候が雨の場合に、映像中のポリゴンの集合であるメッシュ毎に、法線マップが無い場合には第１シェーダを選択し、法線マップが有る場合には第２シェーダを選択することを特徴とする請求項１に記載の映像処理プログラム。
【請求項３】
前記決定手順で、前記シェーダ制御手順において第１シェーダが選択された場合に、前記メッシュの色を、予め定められた当該メッシュの晴れの色に（１−（拡散反射を示す情報×０．７））を乗算した値に決定することを特徴とする請求項２に記載の映像処理プログラム。
【請求項４】
前記決定手順で、前記シェーダ制御手順において第２シェーダが選択された場合に、前記メッシュの色を、前記第１シェーダが選択された場合に決定される値と、シェーディング色に鏡面反射を示す情報を乗算した値と、を加算した値に決定することを特徴とする請求項３に記載の映像処理プログラム。
【請求項５】
前記決定手順で、前記シェーダ制御手順において第２シェーダが選択された場合に、前記拡散反射と前記鏡面反射の両方が大きくなるように光の反射に関する情報を決定し、決定した光の反射に関する情報に基づいて、映像中のオブジェクトの色を決定することを特徴とする請求項２から請求項４のいずれか一項に記載の映像処理プログラム。
【請求項６】
天候を示す天候情報、及び、前記天候の度合いを示す天候度合情報を取得する天候変数情報取得部と、
前記天候情報に基づいて、映像中の天候を変化可能なシェーダの種類を選択するシェーダ制御部と、
前記シェーダ制御部が選択したシェーダを用いて、前記天候度合情報に基づいて、映像中のオブジェクトの色を決定する決定部と、
を備え、
前記シェーダ制御部は、前記天候情報が示す天候が雨の場合に、第１シェーダ又は第２シェーダのいずれかを選択し、
前記決定部は、前記天候度合情報に基づいて拡散反射を示す情報を決定するとともに、前記シェーダ制御部が第１シェーダを選択した場合には、前記拡散反射を示す情報に基づいて映像中のオブジェクトの色を決定し、第２シェーダを選択した場合には、前記拡散反射を示す情報と鏡面反射を示す情報に基づいて、映像中のオブジェクトの色を決定することを特徴とする映像処理装置。