(57)【要約】【課題】３次元コンピュータグラフィックスのアニメーションをリアルに見せる方法として、描画オブジェクトの残像を付けて描画するモーションブラー法が知られている。しかし、従来のモーションブラー法は１つの表示フレームを得るために複数のフレームを描画してそれらの合成処理を行うため、計算量が非常に多く、リアルタイムで描画を行うには高価なハードウェアを必要とした。【解決手段】現在の描画オブジェクトに含まれるポリゴンデータと同時に、残像として用いる過去の描画オブジェクトに含まれるポリゴンデータをグラフィックスエンジンに入力し、現在の描画オブジェクトのポリゴンデータと残像のポリゴンデータを比較、残像のポリゴンについて描画オブジェクトのポリゴンまたは他の残像のポリゴンの光源計算結果が再利用可能かどうかを判定して再利用可能であれば光源計算を省略する。【選択図】図１
2006331064.tif 000002
【特許請求の範囲】
【請求項１】
３次元コンピュータグラフィックス画像を描画する方法であって、現在の描画オブジェクトに含まれるポリゴンと残像として用いる過去の前記描画オブジェクトの対応するポリゴンとを同時に描画する手段を備えることを特徴とするモーションブラー画像生成方法。
【請求項２】
３次元コンピュータグラフィックス画像を描画する装置であって、現在の描画オブジェクトに含まれるポリゴンと残像として用いる過去の前記描画オブジェクトの対応するポリゴンとを同時に描画する手段を備えることを特徴とするモーションブラー画像生成装置。
【請求項３】
請求項１に記載のモーションブラー画像生成方法を情報処理装置で実行させるためのプログラム。
【請求項４】
請求項２に記載のモーションブラー画像生成装置を実現した集積回路。
【請求項５】
３次元コンピュータグラフィックス画像を描画する方法であって、現在の描画オブジェクトに含まれるポリゴンおよび残像として用いる過去の前記描画オブジェクトの対応するポリゴンの描画データを比較、残像のポリゴンについて前記現在の描画オブジェクトのポリゴンまたは他の残像のポリゴンの光源計算結果が再利用可能かどうかを判定する手段を備えることを特徴とするモーションブラー画像生成方法。
【請求項６】
３次元コンピュータグラフィックス画像を描画する装置であって、現在の描画オブジェクトに含まれるポリゴンおよび残像として用いる過去の前記描画オブジェクトの対応するポリゴンの描画データを比較、残像のポリゴンについて前記現在の描画オブジェクトのポリゴンまたは他の残像のポリゴンの光源計算結果が再利用可能かどうかを判定する手段を備えることを特徴とするモーションブラー画像生成装置。
【請求項７】
請求項５に記載のモーションブラー画像生成方法を情報処理装置で実行させるためのプログラム。
【請求項８】
請求項６に記載のモーションブラー画像生成装置を実現した集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータグラフィックス技術に関し、３次元コンピュータグラフィックス画像を生成する画像生成装置および画像生成方法に関するものである。
【背景技術】
【０００２】
３次元コンピュータグラフィックスのアニメーションでは、フレームレートが低い場合にはオブジェクトの動きが不連続的になってしまうことがある。このようなオブジェクトの動きを滑らかに見せる技法として、下記非特許文献１に記載されたモーションブラーと呼ばれる画像生成方法が知られている。モーションブラー法は人工的にオブジェクトの残像を作り出してブレを表現することでリアルなアニメーションを見せる画像生成方法である。
【０００３】
図６は従来のモーションブラー画像の生成方法の例を示す図である。モーションブラー画像を生成するには、現在（時間ｔ）の描画オブジェクトを描画したフレーム６０１に加えて、過去（時間ｔ−１、ｔ−２）の描画オブジェクトを描画したフレーム６０２、６０３を生成し、フレーム６０１−６０３を半透明合成して、モーションブラー効果が得られたフレーム６０４を生成する。フレーム６０４を画像表示装置を用いて表示することで、リアルなアニメーションを見せることができる。
【非特許文献１】明解３次元コンピュータグラフィックス（初版）  荒屋真二著  共立出版（第１５８頁）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記のモーションブラー画像生成方法は、１つの表示フレームを生成するために、現在の描画オブジェクトを描画したフレームと、残像を表現するための過去の描画オブジェクトを描画したフレームをそれぞれ作成して、合成処理を行う必要があるため、計算量が非常に多く、リアルタイムで描画を行うには高価なハードウェアを必要とした。
【課題を解決するための手段】
【０００５】
上記の課題を解決するために、本発明では以下の手段を講じた。すなわち、現在の描画オブジェクトに含まれるポリゴンと残像として用いる過去の前記描画オブジェクトの対応するポリゴンとを同時に描画する手段と、前記現在の描画オブジェクトに含まれるポリゴンと前記残像として用いる過去の前記描画オブジェクトの対応するポリゴンの描画データを比較、残像のポリゴンについて前記現在の描画オブジェクトのポリゴンまたは他の残像のポリゴンの光源計算結果が再利用可能かどうかを判定する手段とを備えた。
【発明の効果】
【０００６】
本発明によれば、前記現在の描画オブジェクトと前記過去の描画オブジェクトの対応するポリゴンデータを同時に描画処理することで、個別にフレームを生成することなくモーションブラー効果付きのフレームを得ることができる。また、同時に描画処理を行う際に、現在と過去の描画オブジェクトのポリゴンデータを比較、両者のポリゴン間で光源計算結果が再利用可能かどうかを判定して再利用可能であれば光源計算を省略することで、画像生成のための計算量を大幅に削減することができる。そのため、処理のための計算リソースの少ない安価なハードウェアにおいても、モーションブラー画像の生成を行うことが可能となる。
【発明を実施するための最良の形態】
【０００７】
以下、本発明の実施の形態について、図面を参照しながら説明する。
【０００８】
図１は本発明の実施の形態における画像生成装置構成例を示す図である。本実施の形態における画像生成装置は、集積回路として実現され、ＬＳＩ１０１に含まれる、ＣＰＵ１０２、グラフィックスエンジン１０３、メモリコントローラ１０４、ディスプレイコントローラ１０５、ＣＰＵバス１０６、メモリバス１０７、メモリ１０８から構成される。ＬＳＩ１０１では、ＣＰＵ１０２の指示をＣＰＵバス１０６を介してグラフィックスエンジン１０３へ伝え、グラフィックスエンジン１０３では画像生成処理を行い、結果はメモリバス１０７、メモリコントローラ１０４を介してメモリ１０８に格納する。メモリ１０８に格納された処理結果は、ディスプレイコントローラ１０５を介してディスプレイ１０９へと出力される。なお、本実施の形態で説明した図１のＬＳＩ１０１のＣＰＵ１０２、グラフィックスエンジン１０３などの各機能ブロックは典型的には集積回路であるＬＳＩとして実現される。これらは個別に１チップ化されても良いし、一部または全部を含むように１チップ化されても良い。また、ＬＳＩ１０１には、ＡＶエンジンやストリーミングエンジンなど他の機能ブロックが含まれていても良い。さらに、メモリ１０８はＬＳＩ１０１内部、外部を問わず複数個搭載されていても良い。
【０００９】
図２は本実施の形態におけるグラフィックスエンジン１０３の内部構成例を表す図である。グラフィックスエンジン１０３は、ホストインターフェース２０１、制御部２０２、頂点座標計算部２０３、光源処理判定部２０４、光源処理部２０５、透明度設定部２０６、セットアップ処理部２０７、ピクセル処理部２０８、メモリインターフェース２０９から構成される。グラフィックスエンジン１０３の処理はＣＰＵ１０２の指示をホストインターフェース２０１を介して受け取り、メモリ１０８のデータをメモリインターフェース２０９を介してロードし、制御部２０２の制御によって画像生成処理を行う。
【００１０】
グラフィックスエンジン１０３で行われるモーションブラー画像生成処理は図３の処理フローにしたがって行われる。
【００１１】
本実施の形態におけるモーションブラー画像生成処理は、制御部２０２においてポリゴンデータの入力を制御し、頂点座標計算部２０３において入力ポリゴンの座標変換処理を行い、光源処理判定部２０４において描画オブジェクトのポリゴンまたは残像のポリゴンの光源計算結果を再利用するかどうかの判定を行い、光源処理部２０５において光源処理判定部２０４の判定に従ってポリゴンの光源処理を行い、透明度設定部２０６において残像のポリゴンの透明度の設定を行い、セットアップ処理部２０７においてポリゴンセットアップ処理を行い、ピクセル処理部２０８においてピクセル単位の描画処理を行い、生成画像をメモリインターフェース２０９を介してメモリ１０８に格納する。なお、グラフィックスエンジン１０３の構成は本実施の形態に記載したものに限定されるものではない。例えば、頂点座標計算部２０３、光源処理判定部２０４、光源処理部２０５、透明度設定部２０６、セットアップ処理部２０７、ピクセル処理部２０８の一部の処理がＣＰＵ１０２やそれに類するもので実現されても良い。
【００１２】
なお、本実施の形態では、画像生成装置を実現する集積回路をＬＳＩとしたが、集積度の違いにより、ＩＣ、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。また、集積回路化の手法はＬＳＩに限るものではなく、専用回路又は汎用プロセサで実現してもよい。ＬＳＩ製造後に、プログラムすることが可能なＦＰＧＡ（ＦｉｅｌｄＰｒｏｇｒａｍｍａｂｌｅ Ｇａｔｅ Ａｒｒａｙ）や、ＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサーを利用しても良い。さらには、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適応等が可能性としてありえる。以上が本実施の形態における画像生成装置の構成についての説明である。
【００１３】
以下では、図２のグラフィックスエンジンで行われる図３のモーションブラー画像生成処理フローの詳細について説明する。ここでは、図４に示すように現在の描画オブジェクト４０１に２つの残像４０２、４０３を付けるモーションブラー画像生成処理について述べる。
【００１４】
まず、制御部２０２では、描画オブジェクト４０１のポリゴン４０４を描画する際、ポリゴン４０４のポリゴンデータだけではなく、それに対応する残像４０２、４０３のポリゴン４０５、４０６のポリゴンデータも合わせて入力する。
【００１５】
頂点座標計算部２０３では、入力された描画オブジェクトのポリゴン４０４、対応する残像のポリゴン４０５、４０６について、各ポリゴン頂点の座標から視点を原点とした座標系（視点座標系）とスクリーンへ投影した時の座標系（スクリーン座標系）とを計算する。頂点座標計算は、３次元グラフィックス処理で用いられる一般的な手段により行うことができる。
【００１６】
光源処理判定部２０４では、入力された描画オブジェクトのポリゴン４０４、対応する残像のポリゴン４０５、４０６のポリゴンデータを比較して、ポリゴン４０４、４０５、４０６の間で光源計算結果が再利用可能かどうかの判定を行う。描画オブジェクトとその残像は元は同じオブジェクトであるため、光の反射率などの光源特性は特殊な効果を与えた場合を除いては同じであり、位置座標と法線ベクトルの違いが光源計算結果に影響を与えることから、本実施の形態では、上記判定にポリゴンの位置座標とポリゴンの法線ベクトルを用いる。本実施の形態における光源処理判定は、図５に示したフローに従って行う。まず、描画オブジェクトのポリゴン４０４と残像のポリゴン４０５について位置座標の差分４０７の絶対値ｄ０１と法線ベクトル４０９、４１０の差分の絶対値ｎ０１を求める。ここで、それぞれの差分の絶対値について閾値ｄｔｈ、ｎｔｈを考える。残像ポリゴン４０５について、ｄ０１＜ｄｔｈかつｎ０１＜ｎｔｈならば描画オブジェクトのポリゴン４０４の光源計算結果をコピーして用いるとし、そうでなければポリゴン４０５について独自に光源計算処理を行うものと判定する。残像ポリゴン４０６についても同様に、残像ポリゴン４０５との位置座標の差分４０８の絶対値ｄ１２および法線ベクトル４１０、４１１の差分ｎ１２をそれぞれ求め、ｄ１２＜ｄｔｈかつｎ１２＜ｎｔｈならば残像のポリゴン４０５の光源計算結果をコピーして用いるとし、そうでなければポリゴン４０６について独自に光源計算処理を行うものと判定する。なお、本実施の形態では光源処理判定にポリゴンの位置座標と光源ベクトルの差分を用いたが、本発明における適用範囲はこれに限定されるものではない。例えば、描画オブジェクトの光の反射率や、描画オブジェクトのスクリーンに占める面積、描画オブジェクトの視点からの距離、描画オブジェクトの注目度などを判定に用いても良い。また、本実施の形態では、ポリゴン毎の光源処理判定を行っているが、ポリゴンの頂点毎に光源処理判定を行っても良い。
【００１７】
光源処理部２０５では、光源処理判定部２０４の決定に従って描画オブジェクトのポリゴン４０４および残像のポリゴン４０５、４０６の光源処理を行う。描画オブジェクトのポリゴン４０４については以下の計算式により光源計算結果を求める。
【００１８】
【数１】
2006331064.tif 000003
【００１９】
【数２】
2006331064.tif 000004
【００２０】
【数３】
2006331064.tif 000005
【００２１】
ここで、（数３）は環境光を求める（数１）と局所照明を求める（数２）とからなる一般的な光源計算式である。残像のポリゴン４０５、４０６については、光源処理判定部２０４の判定結果に従って、（１）ポリゴン４０４、４０５の光源計算結果をコピーする、（２）独自に光源計算処理を行う、のいずれかの処理を行う。なお、本実施の形態で示した光源計算式は一例であり、これに限定されるものではなく、他の光源計算式を用いても良い。また、光源処理判定部２０４の判定結果に関わらず、光源計算結果の一部を共有化して再利用しても良い。例えば、光源計算式の一部である（数１）は、本実施の形態における光源処理判定に用いている位置座標や法線ベクトルには依存しない計算式であるため、（数１）の部分に関しては判定結果によらず再利用することができる。
【００２２】
透明度設定部２０６では、描画オブジェクトのポリゴン４０４および残像のポリゴン４０５、４０６について混ぜ合わせのための透明度を設定する。一般に、現在の描画オブジェクトについては濃く、残像として用いている過去の描画オブジェクトに対しては薄く描画するため、例えば、描画オブジェクトのポリゴン４０４に対しては透明度α＝０．７０を設定する。ここではαが０．００に近いほど透明に、１．００に近いほど不透明に描画するものとする。残像のポリゴン４０５に対してはα＝０．２０、残像のポリゴン４０６に対してはα＝０．１０のように設定する。
【００２３】
セットアップ処理部２０７では、透明度設定処理が終了した描画オブジェクトのポリゴン４０４と残像のポリゴン４０５、４０６について、各頂点の座標を画像表示装置の座標系へと変換し、座標およびカラー値、Ｚ値などのパラメータからポリゴンを囲む直線の傾き、カラー値やＺ値などのパラメータの変位を計算する。セットアップ処理は、３次元グラフィックス処理で用いられる一般的な手段により行うことができる。
【００２４】
ピクセル処理部２０８では、ポリゴンの各頂点の座標およびカラー値、Ｚ値などのパラメータからポリゴンを囲む直線の傾き、カラー値やＺ値などのパラメータの変位から表示デバイス上の各画素の座標およびカラー値、Ｚ値などのパラメータを補間して、画像表示装置に表示可能な生成画像を出力する。ピクセル処理は、３次元グラフィックス処理で用いられる一般的な手段により行うことができる。
【００２５】
以上の処理を描画オブジェクト４０１および残像４０２、４０３に含まれるすべてのポリゴンについて繰り返し行うことで、描画オブジェクトにモーションブラー効果を付けることができる。
【００２６】
なお、本実施の形態では、残像を表現するための過去の描画オブジェクトの数を２つとしたが本発明の適用はこれに限るものではない。また、透明度についても上記説明で示した値には限らない。
【００２７】
以上のように、前記現在の描画オブジェクトと前記過去の描画オブジェクトの対応するポリゴンデータを同時にグラフィックスエンジンに入力して、現在と残像に用いる過去の描画オブジェクトのポリゴンデータを比較、現在の光源計算結果が再利用可能かどうかを判定して再利用可能であれば光源計算を省略することで、モーションブラー画像生成のための計算量を大幅に削減することができる。
【産業上の利用可能性】
【００２８】
本発明の画像生成方法および画像生成装置は、グラフィックス描画機能を搭載するさまざまな電子機器、例えば、携帯電話、ＰＤＡ、デジタルテレビ、カーナビゲーションシステム、家庭用ゲーム機、パーソナルコンピュータ等において用いることができる。
【図面の簡単な説明】
【００２９】
【図１】本発明の実施の形態における画像生成装置構成例を表す図
【図２】本発明の実施の形態におけるグラフィックスエンジンの内部構成例を表す図
【図３】本発明の実施の形態における処理フローを示す図
【図４】本発明の実施の形態におけるモーションブラー画像生成方法を説明するための図
【図５】本発明の実施の形態における光源処理判定フローを示す図
【図６】従来のモーションブラー画像生成方法を表す図
【符号の説明】
【００３０】
１０１    グラフィックスエンジンを含むＬＳＩ
１０２    ＣＰＵ
１０３    グラフィックスエンジン
１０４    メモリコントローラ
１０５    ディスプレイコントローラ
１０６    ＣＰＵバス
１０７    メモリバス
１０８    メモリ
１０９    ディスプレイ
２０１    ホストインターフェース
２０２    制御部
２０３    頂点座標計算部
２０４    光源処理判定部
２０５    光源処理部
２０６    透明度設定部
２０７    セットアップ処理部
２０８    ピクセル処理部
２０９    メモリインターフェース
４０１    時間ｔに描画されるオブジェクト
４０２    ４０１の時間ｔ−１のときの残像として描画されるオブジェクト
４０３    ４０１の時間ｔ−２のときの残像として描画されるオブジェクト
４０４    ４０１に含まれるポリゴン
４０５    ４０２に含まれるポリゴン
４０６    ４０３に含まれるポリゴン
４０７    ポリゴン４０５からポリゴン４０４への位置座標の差分
４０８    ポリゴン４０６からポリゴン４０５への位置座標の差分
４０９    ポリゴン４０４の法線ベクトル
４１０    ポリゴン４０５の法線ベクトル
４１１    ポリゴン４０６の法線ベクトル
６０１    時間ｔのときのフレーム
６０２    時間ｔ−１のときのフレーム
６０３    時間ｔ−２のときのフレーム
６０４    フレーム６０１、６０２、６０３を合成して生成されるフレーム
【図１】
2006331064.tif 000006
【図２】
2006331064.tif 000007
【図３】
2006331064.tif 000008
【図４】
2006331064.tif 000009
【図５】
2006331064.tif 000010
【図６】
2006331064.tif 000011