三次元グラフィックモデルから生成された画像データを処理する方法
【課題】コンピュータ生成要素と手描き要素の両方を含むアニメーション化されたビデオフレームを制作するための方法を提供する。
【解決手段】ソフトウェアツールは、アーティストがオブジェクトの三次元(3D)グラフィックモデルからレンダリングされたアニメーションフレームと合成する線画を描く(又は他の2D画像データを提供する)ことを可能にする。ソフトウェアツールは、下地の3Dジオメトリをレンダリングする際の変化と矛盾の無いように後続の(又は前の)フレーム内に表示するために、1つのフレームに対して提供されるそのような2D画像データをアニメーション化する方法を決定するように構成可能である。
【解決手段】ソフトウェアツールは、アーティストがオブジェクトの三次元(3D)グラフィックモデルからレンダリングされたアニメーションフレームと合成する線画を描く(又は他の2D画像データを提供する)ことを可能にする。ソフトウェアツールは、下地の3Dジオメトリをレンダリングする際の変化と矛盾の無いように後続の(又は前の)フレーム内に表示するために、1つのフレームに対して提供されるそのような2D画像データをアニメーション化する方法を決定するように構成可能である。
【発明の詳細な説明】
【背景】
【0001】
(分野)
本発明の実施形態は、概して、アニメーション化されたビデオシーケンスを対象とする。より具体的には、本発明の実施形態は、三次元(3D)モデルのコンピュータレンダリング及びいくつかのケースではアニメーターによって供給される手描きの線画からアニメーション映像を作成するためのハイブリッドなアプローチを対象とする。
【0002】
(関連技術の説明)
長年、アニメーション映像は個別に手描きされたフレームのセットから作成されてきた。近年では、アニメーション映像も生成できるコンピュータソフトウェアアプリケーションが開発されている。例えば、ソフトウェアは、アニメーションのフレームを描画するために使用されるアプリケーションをアニメーターに提供することができる。更に、コンピュータグラフィックスアプリケーションは、複雑な3Dモデルからのアニメーション映像を作成するために使用可能である。例えば、広範で多様なコンピュータソフトウェアと技法が、3Dモデルからコンピュータ生成画像(CGI)をレンダリングするために開発されている。そのようなアプローチは、アニメーション映像を制作する上で、芸術的及び商業的な両面において、非常に成功している。
【0003】
同時に、手描きのアニメーション及びCGIレンダリングの夫々は、独特の結果を生む。例えば、手描きのアニメーションの場合、個々の線の中に小さなぐらつきや他の変化がフレーム毎に現れる傾向があるので、アニメーターが多くのフレームに亘って一貫性のある線画を制作するのは困難である。更に、手描き用に用いられる創作材料(例えば、ブラシによる描画)は、アーティストが個々の線を如何に一貫して描いているかに関わらず、フレーム毎に異なって見える傾向がある。アーティストがゆっくりした又は微妙な動きをアニメーション化する場合、この効果はより明らかである。対照的に、CGIレンダリングを用いて制作された陰影付け(シェーディング)、影及び奥行きは、曲線の微妙な操作に対してとても矛盾の無い外観を提供することができる。もちろん、どちらのアプローチも、美的に魅力的な結果を生むために使用することができ、アートディレクターは、特定の効果を作り出すために、アニメーションの一方の形式をもう一方と共に用いることを望むかもしれない。
【概要】
【0004】
本明細書内で開示される一実施形態は、アニメーションフレームを処理するための方法を含む。この方法は、通常、1以上のプロセッサによってレンダリングされる第1アニメーションフレームを識別するステップを含む。第1アニメーションフレームは、時間内の第1点で3Dモデルのオブジェクトに対応する3Dジオメトリ(図形)をレンダリングする。この方法はまた、1以上の特定の時間ステップに亘って発生する3Dモデルのオブジェクト上の点の変化に対する第1アニメーションフレーム内の1以上の座標の動的な速度を示す画面空間速度マップを生成するステップを含んでもよい。
【0005】
特定の一実施形態では、画面空間速度マップ内の1以上の座標は、第1アニメーションフレーム内のピクセル(画素)座標にマッピングされる。更に、各座標の動的な速度は、ピクセルの動きの大きさと方向の両方を含むことができる。別の一実施形態では、この方法は、2D画像データを受信して、これによって第1アニメーションフレームと合成するステップと、画面空間速度マップ内における1以上の座標の動的な速度に応じて、特定の時間ステップに亘って2D画像データをアニメーション化するステップを更に含んでもよい。
【0006】
更に別の実施形態には、3Dグラフィックモデルのジオメトリに対する二次元(2D)シルエットを生成するための方法が含まれる。この方法は、一般的に3Dグラフィックモデルを表すジオメトリの少なくとも一部に対して連続的なサーフェスパラメタリゼーションを定義するステップを含むことができる。2Dサーフェスパラメタリゼーションの第1範囲(ディメンジョン)は、三次元グラフィックモデルの表面の一部を交差する。この方法はまた、1以上のフレームに亘ってシルエットのフィーチャー(特徴)を追跡(トレース)するステップを含むことができる。追跡するステップ自体は、サーフェスパラメタリゼーションの第1範囲上に複数の点を識別するステップを含み、識別された各点に対して、サーフェスパラメタリゼーションの少なくとも1つの第2範囲を決定するステップを含むことができる。3Dモデルの表面上の各接点は、レンダリングカメラの視点に接するように選択される。1以上のフレームに亘ってシルエットのフィーチャーを追跡するステップは、接点を接続し、これによって1以上の各フレーム内の3Dグラフィックモデルの表面の部分に対して2Dシルエットを定義するジオメトリを生成するステップを含むことができる。
【0007】
特定の一実施形態では、2Dサーフェスパラメタリゼーションの第1範囲は、3Dグラフィックモデルの表面の一部をラッピングする円筒状のフィーチャーとして決定される。更に、この方法はまた、円筒状のフィーチャーの軸に対して概して垂直な複数の閉ループを導出するステップを含むことができる。このような場合には、サーフェスパラメタリゼーションの少なくとも1つの第2範囲を決定するステップは、レンダリングカメラの視点に接する閉ループ上の少なくとも1つの点を識別するステップを含むことができる。
【0008】
他の実施形態は、開示された方法の1以上の態様を処理装置が実施することを可能にする命令を含むコンピュータ可読媒体、及び開示された方法の1以上の態様を実施するように構成されたシステムを含むが、これらに限定されない。
【図面の簡単な説明】
【0009】
上述した態様を実現し、詳細に理解することができるように、上記で簡単に要約した本発明の実施形態のより具体的な説明を添付図面によって参照して行う。しかしながら、添付図面は、本発明の典型的な実施形態を示しているに過ぎず、したがってその範囲を制限していると解釈されれず、本発明に対して、他の均等に有効な実施形態を含み得ることに留意すべきである。特許又は出願ファイルは、着色された少なくとも1つの図面を含む。着色図面を有するこの特許又は特許出願公開のコピーは、要求に応じ、必要な手数料の支払によって、特許庁によって提供されるであろう。
【0010】
【図1】アーティストにアニメーションツールを提供するように構成された本発明の一実施形態に係るコンピューティングインフラストラクチャを示す。
【図2A】本発明の一実施形態に係る、三次元(3D)モデルからレンダリングされたキャラクターの一例を示す。
【図2B】〜
【図2C】本発明の一実施形態に係る、図2Aに示されるアニメーションフレーム内でレンダリングされたキャラクターに対応するピクセル速度マップのグラフィカルな表現を示す。
【図3】本発明の一実施形態に係る、ピクセル速度マップを生成する方法を示す。
【図4A】〜
【図4B】本発明の一実施形態に係る、ピクセル速度マップを使用してレンダリングされた手書きの2D線画を含む三次元(3D)モデルからレンダリングされたアニメーションフレームの例を示す。
【図5】本発明の一実施形態に係る、ピクセル速度マップを使用して手書きの2D線画をレンダリングする方法を示す。
【図6】本発明の一実施形態に係る、アニメーションフレームのシーケンス内でレンダリングされた3Dオブジェクトに対して2Dシルエットを生成する方法を示す。
【図7A】〜
【図7B】本発明の一実施形態に係る、アニメーションフレームのシーケンス内でレンダリングされた3Dモデルに対してシルエットフランジを生成する一例を示す。
【図8】本発明の一実施形態に係る、3Dモデル上の点に対して識別される接点の一例を示す。
【図9A】〜
【図9B】本発明の一実施形態に係る、2つの異なるアニメーションフレームのシーケンス内でレンダリングされた3Dモデルに対してシルエットフランジを生成するために円筒に沿った点を使用する一例を示す。
【図10A】〜
【図10B】本発明の一実施形態に係る、図9A〜図9B内の3Dモデルに対して別のカメラアングルから示されるシルエットフランジを示す。
【図11A】〜
【図11B】本発明の一実施形態に係る、図9A〜図9Bに示される3Dモデルのシルエットフランジから生成された2D線画を示す。
【図12】本発明の実施形態を実施するように構成されたコンピューティングシステムの一例を示す。
【好ましい実施形態の詳細な説明】
【0011】
本発明の実施形態は、コンピュータ生成要素と手描きの要素の両方を含むアニメーション化されたビデオフレームを制作するための方法を提供する。例えば、一実施形態は、三次元(3D)モデルからレンダリングされたアニメーションフレーム上で、アーティストが線画を描くことを可能にするソフトウェアツールを含む。ソフトウェアツールは、下地の3Dジオメトリをレンダリングする際の変化と矛盾の無いように後続の(又は前の)フレーム内に現れるために、1つのフレーム内においてそのような手描きの線画を修正する方法を決定するように構成可能である。
【0012】
一実施形態では、3Dジオメトリのレンダリングから生成される二次元(2D)画面空間内の点の位置に対して方向と速度を示すために、画面空間速度のマップを生成することができる。一般性を失うことなく、そのような点は、アニメーションフレーム内のピクセルに対応することができるので、以下の議論では、利便性の問題から概してピクセルを指す。しかしながら、より一般的には、3Dモデルをレンダリングすることによって生成された2D画面空間内の点は、特定の場合のニーズに適した任意のアプローチを用いてサンプリングすることができる。例えば、画面空間は[0..1]区間を用いてレンダリングされ、任意の精度の画面空間速度マップを作成できた。そのような画面空間速度マップからサンプリングされた値は、必要に応じて、あるディスプレイ解像度でピクセル値にマッピングすることができた。画面空間速度マップ(アニメーションフレーム内でピクセルを参照するときは同じ意味でピクセル速度マップとも呼ばれる)は、特定の時間ステップに亘って(例えば、1つのフレームから次のフレームまで)、画面空間内の点に対して測定された速度(すなわち、動きの速さと方向)を示すことができる。しかしながら、速度は1つのフレームから次のフレームまで3Dモデル内の変化に対して決定される。より具体的には、ソフトウェアツールは、任意の時間サンプルに亘って、3Dモデル内の点に対応したある特定のピクセル(又はフィーチャー)がどれだけ動くかを決定することができる。このように、ピクセルの速度(又は画面空間内の他のサンプリングされた点)は、フレーム毎の(又は他の時間ステップにおける)下地の3Dジオメトリの変化に基づくそのピクセルの動きの方向と大きさを表す。
【0013】
アーティストが3Dモデルからレンダリングされた画像上で、例えばいくつかの線画を描くことによって、二次元(2D)画像データを合成(又はブレンド)するとき、(時間に亘る下地の3Dモデルの変化に基づく)画面空間内のピクセルの速度は、後続の(又は前の)フレーム内で(又は他の時間ステップに亘って)2D画像データを効果的にアニメーション化するために使用できる。更に、ピクセル速度データは、アニメーションフレーム内のピクセルが、1つのフレームから別のフレームまでどのくらいの程度で変化しているかをアーティストに提供するために使用されるカラーマップとしてレンダリングできる。
【0014】
別の一実施形態では、ソフトウェアツールは、レンダリングされたアニメーションフレーム内のキャラクター又はオブジェクトの輪郭に対応して、2Dシルエット(シルエットフィーチャー、カーブ(曲線)、又は単にシルエットとも呼ばれる)を生成するように構成することができる。このような2Dシルエットは、時間内の任意の点におけるカメラ位置から見たとき、(テクスチャマッピングのように)キャラクターの表面ではなく、むしろそのオブジェクトの正接エッジで追跡する。シルエットフィーチャーが、モデル面とカメラの位置変化によって3Dモデルの表面の周囲にスライドするとしても、導出されたシルエットは3Dモデルのジオメトリに対して長い時間安定している。
【0015】
一実施形態では、シルエットフィーチャーを生成するために、連続的な2Dサーフェスパラメタリゼーションは、3Dグラフィックモデル内のジオメトリの一部に対して定義される。例えば、連続的な2Dサーフェスパラメタリゼーションは、3Dジオメトリの表面にそれ自身の輪郭を描く切り取られた円筒としてトポロジー的に表現できる。結果として得られる切り取られた円筒は、一連のリングを定義するために簡略化してもよい。各リングは、3Dモデルの表面の周囲に閉ループを提供する。各リングの(切り取られた円筒に対する)高さは、2Dサーフェスパラメタリゼーションの第1範囲を提供する。各リング上で2点まで、各々が2Dサーフェスパラメタリゼーションの第2範囲を提供する。具体的には、カメラの視点に接し、あるリングによって包絡される3Dジオメトリの表面の両側にある各リング上の1つ(又は2つ)の点が識別される。これらの点は、3Dジオメトリのレンダリング及びカメラの位置に基づいて識別されるアニメーションフレームに対する3Dオブジェクトの両側の「エッジ」を表す。複数のリングから導出された接点の各々を接続することによって、2Dシルエット曲線が提供される。シルエットフィーチャーは、1以上のフレームに亘って追跡することができる。3Dモデルがアニメーション化されるとき、シルエットフィーチャーは、モデルの表面を横切ってスライドし、しかしながら、それにもかかわらず、オブジェクトのエッジを追跡するように連接(コヒーレント)を維持できる。
【0016】
更に、結果として得られた2Dシルエット曲線は、リボン又はフランジを作るためにモデルの表面とカメラの視線の両方に垂直に押し出すことができる。この方法を用いて、フランジは、オブジェクト又はカメラの変更動作に反応して、3Dモデルの周りにスライドするが、切り取られた円筒を上下にスライドさせない。つまり、接点はオブジェクトの表面上のリングの閉ループを動き回ることができる一方、リング自体は、一般的にキャラクターオブジェクト上の位置に固定されたままである。このように、リボンはあらゆる種類のシルエットベースの芸術的効果に対して安定したプラットフォームを提供する。例えば、シルエットのリボンは、手描きの線画の外観を与えるために、きめの粗い木炭効果を使用してレンダリングできるが、粒状性はフレーム毎にはるかにより一定に維持できる。同様に、フランジには、手描きの線画又は他の2D画像データによってレンダリングされたイメージを補強する際にユーザをガイドできる小さなキャンバスが用意されている。更に、いずれの場合でも、シルエットのリボン上の点の速度(すなわち、任意の時間ステップに亘る(例えば、フレーム毎の)動作の大きさ及び方向)を、フランジに対して生成することができる。そうすることによって、シルエットの2D画像データ(例えば、線画、画像データ又は他のシルエットベースの芸術的効果)は、フレームのシーケンス内でアニメーション化(関連する時間ステップの3Dジオメトリのレンダリングに基づいて、前方又は後方のいずれかに移動する)が可能となる。
【0017】
ただし、個別に説明するが、ピクセル速度マップを生成するための方法、2Dの線画をアニメーション化するための方法、及びシルエットを生成するための方法は組み合わせることができ、これによって互いに連携して動作すると共に、アニメーションフレームを生成する(又は修正する)ための他の技法と組み合わせることができる。例えば、まさに述べたように、ピクセル速度を決定し、2D画像データをアニメーション化させるためのアプローチは、アニメーション化された3Dキャラクター用に生成された二次元シルエットのリボンにも適用することができる。更に、本発明の実施形態を示す下記の使用例は、概してアニメーション化された「キャラクター」のレンダリングされた外観を使用する。しかしながら、当業者は、本明細書内に記載される方法が、擬人化されたキャラクターと共に使用することに限定される方法ではなく、その代わりにいかなる下地の3Dジオメトリに対してもCGIレンダリングと手描きの線画の組み合わせ、及びシルエットを生成するために使用可能であることを認識するだろう。
【0018】
更に、以下の説明は、本発明の実施形態を参照する。しかしながら、本発明は、記載された特定の実施形態に限定されるものではないことを理解すべきである。その代わりに、以下の構成及び要素の任意の組み合わせは、別の実施形態に関連するかどうかに関わらず、本発明を実施し、実践するように企図されている。更に、本発明の実施形態は、他の可能な解決法及び/又は先行技術上の利点を達成するかもしれないが、ある実施形態によって特定の利点が達成されるか否かは、本発明を限定しない。したがって、以下の態様、構成、実施形態及び利点は、単なる例示であり、特許請求の範囲内で明示的に記載される場合を除き、添付の特許請求の範囲の要素又は限定とは見なされない。同様に、「発明」への参照は、本明細書で開示されるすべての発明の主題の一般化として解釈されるべきではなく、特許請求の範囲内で明示的に記載される場合を除き、添付の特許請求の範囲の要素又は限定であると考えるべきではない。
【0019】
本発明の態様は、システム、方法又はコンピュータプログラム製品として実施することができる。したがって、本発明の態様は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態(ファームウェア、常駐ソフトウェア、マイクロコード等を含む)、又は本明細書内で「回路」、「モジュール」又は「システム」とすべて一般に呼ばれる可能性のあるソフトウェア及びハードウェアの態様を組み合わせた実施形態の形式を取ることができる。更に、本発明の態様は、コンピュータで読み取り可能なプログラムコードを内部に収めた1以上のコンピュータ可読媒体内に具現化されるコンピュータプログラム製品の形式を取ることができる。
【0020】
1以上のコンピュータ可読媒体の任意の組み合わせを利用してもよい。コンピュータ可読媒体は、コンピュータ可読信号媒体又はコンピュータ可読記憶媒体であってもよい。コンピュータ可読記憶媒体は、例えば、電子、磁気、光学、電磁気、赤外線、又は半導体の、システム、装置、又はデバイス、又は上記の任意の適切な組み合わせが可能であるが、これらに限定されない。コンピュータ可読記憶媒体のより具体的な例(非包括的リスト)は、以下のものを含む:1以上のワイヤを有する電気接続、ポータブルコンピュータのディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去可能なプログラマブル読み取り専用メモリ(EPROM又はフラッシュメモリ)、光ファイバ、ポータブルコンパクトディスク読み取り専用メモリ(CD−ROM)、光ディスク記憶装置、磁気記憶装置、又は上記の任意の適切な組み合わせ。この文書の文脈内では、コンピュータ可読記憶媒体は、命令実行システム、装置、又はデバイスによって、又はそれらと接続して使用するためのプログラムを含む又は格納できる任意の有形媒体が可能である。
【0021】
図面内のフローチャート及びブロック図は、本発明の種々の実施形態に係るシステム、方法及びコンピュータプログラム製品の可能な実装形態におけるアーキテクチャ、機能性及び操作を示す。この点では、フローチャート又はブロックダイアグラム内の各ブロックは、特定の論理的機能を実装するための1以上の実行可能命令を含むモジュール、セグメント又はコードの一部を表すことができる。いくつかの別の実装形態では、ブロックに記載されている機能は、図面に記載されている順序から外れて発生する可能性がある。例えば、連続して示される2つのブロックは、実際には、実質的に同時に実行される可能性があり、又は関与する機能性に応じて、ブロックは時々逆の順序で実行されることがある。ブロックダイアグラム及び/又はフローチャート図、及びブロックダイアグラム及び/又はフローチャート図内のブロックの組み合わせの各ブロックは、特殊用途のハードウェアベースの特定の機能や活動を実行するシステム、又は特殊用途のハードウェアとコンピュータ命令の組み合わせによって実装することができる。
【0022】
図1は、アーティストにアニメーションツール110を提供するように構成された本発明の一実施形態に係るコンピューティングインフラストラクチャ100を示す。図示されるように、コンピューティングインフラストラクチャ100は、レンダリングシステム105、クライアントシステム130、及び3Dモデルのジオメトリ115のソースを含み、各々は通信ネットワーク120に接続されている。例示的に、レンダリングシステム105は、3Dモデルのジオメトリ115から生成されたアニメーション映像125を含む。レンダリングシステム105は、概して、典型的にはアニメーションツール110と対話するユーザの指示と制御の下で、3Dモデルのジオメトリ115からアニメーションフレーム(すなわち、ピクセルカラー値の二次元配列)を生成するように構成されたコンピューティングシステムを表す。図1は、単一のレンダリングシステム105を含むが、高度なレンダリング環境では、通常、同時にアニメーションの別のフレームをレンダリングするそのような多くのシステムを含む。更に、3Dモデルのジオメトリ115のためのアニメーションツール110、レンダリングシステム105及び記憶装置の機能は、個別のコンピューティングシステムとして示されるが、単一のコンピューティングシステム上で結合される(又は、更に複数のコンピューティングシステムにまたがって細分割される)ことができる。
【0023】
この特定の例では、クライアントシステム130は、アニメーションツール110を実行するコンピュータシステムを表す。アニメーションツール110は、3Dモデルのジオメトリ115を作成及び編集するだけでなく、レンダリングシステム105によって生成されるようなジオメトリのレンダリングを制御するために使用することができる。以下で更に詳細に説明されるように、一実施形態では、アニメーションツール110は、ピクセル速度マップを生成するだけでなく、アニメーション映像のフレーム上にアーティストによって描かれた線画を合成するように構成することができる。アニメーションツール110はまた、アニメーションツール110によって生成されたピクセル速度マップに基づいて、そのような線画を変換し、それを後続の(又は前の)フレームと合成するように構成することができる。更に、アニメーションツール110は、アニメーション映像125内でオブジェクト用のシルエット又はリボン状フランジを生成するように構成することができる。
【0024】
図2Aは、本発明の一実施形態に係る、三次元(3D)モデルからレンダリングされたキャラクター205の一例を示す。この特定の例では、レンダリングされたフレームは女性キャラクター205の像を示している。この例を想定して、キャラクター205に対応する3Dジオメトリは、完全にレンダリングされたとき、概して表示画面を横切って右から左へと、街の通りを駆け下りているこのキャラクターの3Dグラフィカルモデルを提供する。走っているとき、キャラクター205の部分は、フレーム毎に異なるレートで位置を変える。例えば、図2Aに示されるように、前脚はキャラクター205の胴体よりも速く移動し、したがってレンダリングされた画面空間内でより大きなピクセル速度を有し、足取りを作るまでは、その点で他方の脚はより高速で真直ぐの移動速度を示し始めるであろう。
【0025】
より一般的には、フレームをレンダリングするのに使用される3Dジオメトリの要素(例えば、キャラクター205を表すポリゴンメッシュの頂点)は、1つのフレームから後続の(又は前の)フレームまで、又は他の時間ステップに亘って位置を変えるであろう。それに応じて、この3Dモデルのレンダリングされたフレームも結果的に変化するであろう。一実施形態では、アニメーションツールは、任意の時間ステップに亘って(例えば、1つのフレームから次のフレームまでに)決定される3Dモデルの変化に対する、レンダリングされたフレーム内の各ピクセルの動的な速度を表すピクセル速度マップを生成するように構成できる。つまり、ピクセル速度マップは、1つのピクセルが1つのフレームから後続の(又は前の)フレームまで画面空間内をどのくらい移動することができるか(大きさと方向の両方を含む)を表し、画面空間内のピクセル速度の大きさと方向は、下地の3Dモデルの変化に対して導出される。
【0026】
例えば、図2B〜2Cは、本発明の一実施形態に係る、図2Aに示されるアニメーションフレーム内でレンダリングされたキャラクターに対応する画面空間速度マップのグラフィカルな表現を示す。一実施形態では、画面空間又はピクセル速度マップは、画面空間(例えば、ピクセル)内の点に対する速度をグレースケール値(例えば、より明るいピクセルは、より大きな速度を表す)を用いて表すことができる。あるいはまた、色のディメンジョンを追加することによって、画面空間内の点の速度の方向と大きさの両方を速度マップ内に表すことができる。例えば、図2Bは、ピクセルのレンダリングされた色が、そのフレーム内のそのピクセルに対するピクセル速度の程度を表す画面空間速度マップ220を示す。なお、速度は、任意の前方又は後方の時間ステップの間、測定可能である。この例では、速度は前のフレームに対する現在のフレームのピクセル速度を測定していると推定される。また、この例では、ピクセルの水平速度は、赤色を用いて表現され、あるピクセルの明るさは、水平方向の動きの大きさに対応する。つまり、より大きな右方向の速度は、ピクセルマップ内のピクセルに対して(表示画面の表示の限界まで)より明るい赤色をもたらす。同時に、ピクセルの垂直方向の速度は、緑色を用いて表現され、垂直方向上方へ移動するピクセルは緑で色づけされ、再び、あるピクセルの明るさは、垂直方向の動きの大きさに対応する。右方向及び上方向のピクセルの移動の相対的寄与は合成をもたらし、上及び右へ移動するピクセルは黄色に色づけされ、その時々において合成された大きさによって決定される明るさを有する。なお、左又は下へのピクセル速度は、この例におけるピクセルの合成色(又は明るさ)に寄与しない。もちろん、他の色を選択することも可能であり、方向を変えることも可能であり、色は、水平移動に対して左へ、垂直移動に対して下へ割り当てることも可能である。垂直及び水平方向の速度の合成として選択された色を用いてピクセルをレンダリングすることによって、ピクセル速度マップ220は、上及び右へと移動するピクセル速度に対してキャラクター205の各ピクセルの全体的な動きと方向を示す。
【0027】
同様に、図2Cは、ピクセル速度の方向を表すために色を使用した画面空間速度マップ240を示す。しかしながら、方向を表す色に加えて、ピクセル速度の大きさは、(3Dモデルの下地のジオメトリに基づく)画面空間内のそのピクセルの初期位置及びある時間ステップに亘る(例えば、1つのフレームから次のフレームまでの)そのピクセルの次の位置を表すベクトルとして、各ピクセルをレンダリングすることによっても示される。下地の3Dモデルがフレームをレンダリングするのに使用されるとき、1つのフレームから次のフレームまで各ピクセルの位置の変化をレンダリングすることによって、ピクセル速度マップ240は、画面空間内におけるピクセルへの変化の大きさと方向の両方を示す。例えば、点242でのピクセルが示される。ある時間ステップに亘るある特定の方向におけるこのピクセルの動き(すなわち、その速度)は、終了位置244で示される。その効果は、ピクセル速度ベクトルの全体的な様子が、合わせくぎの集まりと似たように積み重ねられているピクセル速度マップ240をもたらす。そのような合わせくぎの各々は、ある大きさと方向で動くピクセルを表す。図2Bと同様に、各ピクセル速度ベクトルの色と明るさは、上及び右へのピクセルの動きに対して決定される。
【0028】
図3は、本発明の一実施形態に係る、画面空間速度マップ(例えば、図2B〜2Cに示されるマップ)を生成する方法300を示す。図示されるように、方法300は、モデルの3Dジオメトリが、レンダリングカメラから見えるモデルの要素に対して画面空間内に投影されるステップ305から始まる。例えば、レンダリングアプリケーションは、ポリゴンメッシュを用いて定義される3Dモデルを受け取ることができ、カメラと3Dモデルのトポロジーの定義された位置に基づいてアニメーションフレームを生成する。ジオメトリのレンダリングされた各画像は、一般的にアニメーションのフレームに対応している。
【0029】
ステップ310では、アニメーションツールは、正(及び/又は負)の時間ステップ内において、画面空間内の座標位置(例えば、ピクセル)に対する速度を計算することができる。述べたように、画面空間速度は、特定の時間ステップに亘る(例えば、フレーム毎の)3Dモデルの変化に対して決定されるが、画面空間内の変化に対するピクセル速度を提供するように変換される。例えば、あるピクセルの動きの方向と大きさは、特定の時間ステップに亘る下地の3Dモデルの変化に対して決定されるように、画面のピクセル単位で測定される。画面空間が表示画面とは異なる解像度を用いてサンプリングされている場合、最終的な画面空間速度マップは、表示画面の解像度に正規化することができる。例えば、画面空間が0〜1の連続的な範囲(小数点以下数桁まで)でサンプリングされている場合は、点の速度値は、ピクセル空間分解能にマッピングすることができる。ステップ315において、アニメーションツールは、特定の各時間ステップに亘ってピクセルに対して計算された速度を格納することができる。つまり、アニメーションツールは、各時間ステップに対して生成された画面空間速度マップを格納することができる。
【0030】
一実施形態では、例えば、ユーザは、特定の数のフレームを包含するアニメーションシーケンスを特定することができる。特定の開始フレームから、アニメーションツールは、後続の(及び/又は前の)多数のフレームをレンダリングする(又はレンダリングする結果となる)。ピクセル速度マップは、シーケンス内の任意の2つのフレーム間のピクセル速度を識別するために生成可能である。一度生成されると、アニメーションツールは、得られたピクセル速度マップを格納できる。ステップ320では、アニメーションツールは、ピクセル速度マップの表現を作成できる。例えば、ピクセル速度は、(図2Bに示されるように)色を使用するか、又は(図2Cに示されるように)ピクセル速度の方向及び大きさを示すベクトルのセットとして表現できる。もちろん、ピクセル速度は、多様な異なる色スキーム、グレースケール値、強度値、又はコード化されたパターン等を用いて表現可能である。
【0031】
更に、一実施形態では、ピクセル速度マップは、2D画像データ、線画、又は特定の時間ステップに亘ってアーティストによってアニメーションフレームと合成された他の2Dの芸術的効果をアニメーション化するために使用可能である。例えば、図4A〜4Bは、本発明の一実施形態に係る、ピクセル速度マップを使用して後続のフレーム内でレンダリングされた1つのフレーム上に描かれた手書きの2D線画を含む三次元(3D)モデルからレンダリングされたアニメーションフレームの例を示す。図示されるように、レンダリングされたキャラクター400は街の通りを駆け下りており、キャラクター400の脚は大股で進行中であることを示す。その結果、キャラクター400が着用するスカートの表面の大部分が、このフレーム内で見える。更に、図示されるように、アーティストは、キャラクター400のレンダリングされた服に手描きの線画を追加している。具体的には、線405及び円410が、図4Aに示されるアニメーションフレーム内のキャラクターのドレスに描かれている。
【0032】
アニメーションツールは、一般的にアーティストによって提供された線画をアニメーションフレームと合成するように構成することができる。従来、アーティストは、効果を継続するために後続の各フレームに線画を追加しなければならなかった。しかしながら、一実施形態では、ピクセル速度マップが、後続の(又は前の)フレーム内で2Dの線画(例えば、線405及び円410)をアニメーション化するために使用される。例えば、図4Bは、図4Aに示されるフレームの後のいくつかの時間ステップにレンダリングされたフレームを表す。図4Bに示されるように、キャラクター400’は、縁石に達し、両足が共に比較的近くに位置している。その結果、キャラクター400’のスカートの可視表面積は、はるかに小さい。更に、線405及び円410によって覆われる3Dモデルからレンダリングされたピクセルに対応するピクセル速度は、各時間ステップに亘る線405’及び円410’の各ピクセルを移動するための大きさ及び方向を決定するために使用されており、その結果、曲がった線及び変形した円が生じている。
【0033】
より具体的には、レンダリングされたアニメーションの各時間ステップに対して(例えば、図4Aに示されるフレームと図4Bに示されるフレームの間の各フレームに対して)、ピクセル速度マップは、2D画像データの要素を、(例えば、線405及び円410の線画を初期位置から終了位置まで)変換するために使用される。したがって、線405’及び円410’の形状は、キャラクター400上でレンダリングされたスカートの形状の変化と概して矛盾の無いように変化している。このように、ピクセル速度マップは、アーティストからの入力を必要とせず、後続の(又は前の)時間ステップに亘ってアーティストから提供される2D映像データを効果的にアニメーション化するために使用される。もちろん、所望の外観又は美的品質を作るために必要ならば、ピクセル速度マップによって生成された結果として得られる2D画像データをアーティストが手動で編集することもできる。
【0034】
図5は、本発明の一実施形態に係る、ピクセル速度マップを使用して手書きの2D線画をレンダリングする方法500を示す。図示されるように、方法500は、アニメーションツールがアニメーションフレームのシーケンスをレンダリングする(又はレンダリングする結果となる)ステップ505から始まる。ステップ510において、レンダリングされたフレームは、編集ツールと対話するユーザによって表される。そのようなツールは、ユーザがレンダリングされたフレームを1つずつステップ実行できるように構成可能である。ステップ515において、ユーザは、描画ツールを使用して、2D画像データをフレームのうちの1つと合成できる。ステップ520において、アニメーションツールは、各時間ステップに対する画面空間速度マップ(例えば、各アニメーションフレーム間のピクセル速度を表すために生成されたピクセル速度マップ)を生成(又は取得)できる。ステップ525において、アニメーションツールは、画面空間速度マップを使用して、1以上の連続する(又は前の)フレームの中の1フレームに対して提供される2D画像データをアニメーション化することができる。つまり、2D線画又は他の2D画像データの各要素は、画面空間速度マップを用いて決定される方向及び大きさによって変換される。そうすることによって、下地の3Dジオメトリの変化と矛盾ないように2D画像データをアニメーション化できる。結果として得られる2D画像は、連続する(又は前の)各時間ステップに対して生成されるアニメーションフレームと合成される。
【0035】
上述のように、画面空間又はピクセル速度マップの生成に加えて、アニメーションツールは、キャラクター又はアニメーションフレームのシーケンス内に示される他のオブジェクトに対して2Dシルエットを生成するように構成可能である。テクスチャがオブジェクトの表面に適用されるテクスチャマッピングとは異なり、シルエットは、時間内の任意の点におけるカメラ位置から見たとき、そのオブジェクトの正接エッジと一致する。2Dシルエットの形状が、モデル面とカメラの位置変化によって3Dモデルの表面の周囲に「スライドする」としても、2Dシルエットは3Dモデルのジオメトリに対して長い時間安定している。更に、所望の美的外観を有するオブジェクトのためのシルエットを作成するために、必要なときには多様な2Dグラフィック効果を2Dシルエットに適用可能である。更にまた、レンダリングされる画像用の空間速度マップを生成することによって、2Dシルエット、線画、又はシルエットに適用される他の2D画像データは、アーティストによって供給された画像データに対して上述と同じ方法でアニメーション化できる。
【0036】
図6は、本発明の一実施形態に係る、アニメーションフレームのシーケンス内でレンダリングされた3Dグラフィックモデルのジオメトリに対する2Dシルエットフィーチャーを生成する方法を示す。方法600の態様が、3Dグラフィックモデルのためのシルエットフランジを生成する例を示す図7A〜7Bと連携して説明される。図示されるように、方法600は、3Dグラフィックモデル内の3Dジオメトリの要素に対応する円筒のフィーチャーを定義するために、ユーザがアニメーションツールと対話するステップ605から始まる。円筒のフィーチャーは、アニメーションフレームのシーケンスの各々に対して3Dグラフィックモデルの可視エッジを定義する2Dシルエットを導出するために使用される。例えば、アニメーションツールは、3Dモデルのジオメトリの部分上に円筒を「ペイントする」のに使用される描画ツールを含むことができる。それに応じて、アニメーションツールは、ジオメトリからレンダリングされた各アニメーションフレーム内のオブジェクトの3Dジオメトリに円筒を「合わせる」ことができる。例えば、アニメーションのツールは円筒を、それが各フレーム内で3Dジオメトリの表面と交差するまで縮小することができる。
【0037】
3Dジオメトリをラップする結果として生じる円筒フィーチャーのトポロジーが一度決定されると、ステップ615〜630を含むループが始まる。ループを通る各パスで、アニメーションツールは、あるフレーム内でジオメトリの可視エッジを追跡する2Dシルエットに対応するジオメトリを生成する。より一般的には、円筒フィーチャーは、各フレーム内でシルエットを定義する3Dグラフィックモデル内のジオメトリの一部に対して連続的な2Dサーフェスパラメタリゼーションを導出するために使用される。ステップ610で、アニメーションツールは、円筒を一連のリングに細分割することができる。リングの数及び/又はリング間の距離は、好みの問題として構成可能である。各リングは、円筒フィーチャーの軸に対して概して垂直な3Dモデルの表面を包み込む閉ループを提供する。各リングの位置は、シルエットフィーチャーの2Dパラメタリゼーションのための第1パラメータを提供する。
【0038】
例えば、図7Aは、キャラクター705を示しており、この例では、女性のキャラクターが直立している。アーティストは、キャラクター705の(アーティストから見て)左の脚に概して対応するように、円筒用の境界を特定するためにアニメーションツールを使用している。それに応じて、アニメーションツールは、この脚の表面と交差する円筒フィーチャーを識別し、円筒の軸に沿って比較的短い間隔のリングにこのフィーチャーを細分割している。例えば、リング710から始めると、図7Aは、脚のジオメトリがキャラクター705の胴体を交差するまで、リング710から上方に移動する一連のリングを示す。完全なシルエットを生成するには、キャラクター705の他方の脚、各々の腕、胴体及び頭部に対して、追加の円筒を定義することができる。記載したように、3Dジオメトリ上の各リングの位置(例えば、円筒に沿った高さ)は、シルエット曲線の2Dパラメタリゼーションのための第1パラメータを提供する。
【0039】
再び方法600を参照すると、ステップ615において、各リング上の2点が、3Dモデルから生成されたアニメーションの各フレームに対するキャラクターの2Dシルエットを表す左右(又は上下)の曲線上の点を識別するために使用される。具体的には、各フレーム内で、各々のリングは、レンダリングカメラの視点に接するちょうど2つの点、つまり各リングの左右(又は上下)に1つずつを有する。例えば、図7Aは、リング715と、キャラクター705の脚の左右両側に対して決定された接点を示す。図示されるように、各リングには再び、各々の点がカメラの視点に接するリング上の点として決定される左右の点が含まれる。接点は、シルエット曲線の2Dパラメタリゼーションのための第2パラメータを提供する。
【0040】
図8は、追加の例を示す。より具体的には、図8は、本発明の一実施形態に係る、3Dモデル上の点に対して識別される接点の例を示す。上方から見下ろした図に示されるように、レンダリングカメラ805は、キャラクター705の頭と肩を示す。キャラクターは、カメラの観察面810内にある。この例では、円筒がキャラクター705の頭部と胴体に対して定義されていることを前提としている。接線8151−2は胴体の円筒に対する接点を示し、接線8201−2は頭部に対する接点を示す。
【0041】
再び方法600を参照すると、ステップ620において、アニメーションツールは、左右(又は上下)のシルエット曲線を作成するために接点を接続する。そのような各々の曲線は、そのジオメトリがアニメーションのあるフレーム内でレンダリングされるとき、3Dジオメトリのエッジを追跡する2D曲線を提供する。更に、ステップ625で、アニメーションツールは、キャラクターのシルエットを提供する2Dジオメトリのリボン又はフランジを生成するために各曲線を押し出すことができる。
【0042】
一実施形態では、2つの曲線の各々に対応する接点が、リボン又はフランジを作るために、モデルの表面及びカメラの視線に垂直に押し出される。この結果は図7Bに示され、リボン7201−2は、キャラクター720の脚の左側と右側の両方に対して、そのような各点の表面の法線に沿って延びる接点を接続する。キャラクター705に対する正接リボンの完全なセットは、キャラクターのジオメトリなしで、725において示される。リボンは、レンダリングされたアニメーションフレームと合成することができる2D画像データの集まりを提供する。なお、あるフレーム内の3Dジオメトリのトポロジーを考えると、シルエット曲線(又はそこから押し出されるリボンフランジ)のいくつかの部分は、3Dジオメトリの他の要素によって閉塞される可能性がある。例えば、730で示されるように、キャラクター705の右腕に対応するリボンシルエットは、キャラクター705の右腰に対応するシルエットの部分を塞ぐ。
【0043】
シルエット曲線を生成する別の一例が、図9A〜9Bに示される。より具体的には、図9A〜9Bは、2つの異なるアニメーションフレーム内でレンダリングされるとき、踊っている女性キャラクターの3Dモデルに対するシルエットフランジを生成するために円筒に沿って接点を導出する例を示す。図示されるように、キャラクター905は概してカメラに対向しており、円筒リングを伴う脚の大部分は他方の脚によって塞がれる。対照的に、キャラクター905が振り返ると、円筒リングを伴う脚がはっきりと現れる。これらの画像が示すように、ある円筒のリングは、レンダリングされたオブジェクトのジオメトリ内の劇的な変化にもかかわらず、時間的に密着してとどまっている。
【0044】
同時に、カメラに接する円筒リング上の点は、フレーム毎に変わる。つまり、リングの接点がフレーム毎に変わるので、シルエットの形状自体がキャラクターを横切ってスライドする。この結果は図10A〜10Bに示され、別のカメラアングルを用いて図9A〜9Bの踊っている女性キャラクターに対して示されるシルエットフランジを示す。より具体的には、図10A〜10Bは、両方のフレームに対してキャラクターの前に固定されたカメラから見た踊っているキャラクターの図を示す。しかしながら、シルエットフランジ10201−2は、図9A〜9B内で用いられたカメラアングル用に生成されたシルエットに対応する。これらの図によって示されるように、シルエット自体が(リング上の接点を用いて決定されるように)別のフレームに亘ってキャラクターのエッジに沿って時間的に密着したままでいる間、シルエットエッジ又はリボンの位置は、オブジェクトが3D空間内でフレーム毎に(又はいくつかの他の時間ステップに亘って)形状又は位置を変えるとき(又はカメラが移動するとき)、3Dジオメトリの表面に沿ってスライドするだろう。
【0045】
再び方法600を参照すると、ステップ630において、アニメーションツールは、レンダリングされたアニメーションフレームと合成するための2D画像データを生成することができ、つまり3Dジオメトリからレンダリングされたアニメーションフレームに可視シルエットを効果的に追加することができる。更に、2D画像データは、たとえそれが異なる創作材料、インク、鉛筆、木炭、ペンキ等を用いて描かれたとしても、多様で異なる視覚的な特性(例えば、異なる色、太さ又は線のスタイル)を有するようにも生成可能である。例えば、図11A〜11Bは、本発明の一実施形態に係る、図9A〜9Bに示される3Dモデルの2Dシルエットを示す。この例では、踊っているキャラクター1105及び1110のシルエットは、線画の部分が厚みと暗さにおいて変化する手書きの外観を模倣する線のスタイルを用いて描画されている。
【0046】
同様に、シルエットリボンは、3D画像データから生成された画像フレームと合成することができる線画又は他の2D画像データを供給するためにアーティストに対して2D描画キャンバスを提供する。1つのフレームのシルエットに対して提供されるそのような2D画像データは、上述のピクセル速度マップを用いて後続の(又は前の)フレーム内でアニメーション化することができる。その結果として得られる2Dアニメーションデータは、所望の視覚的効果を生成するために、後続のアニメーションフレームと合成することができる。
【0047】
図12は、本発明の実施形態を実施するように構成されたコンピューティングシステム1200の例を示す。図示されるように、コンピューティングシステム1200は、中央演算処理装置(CPU)1205、ネットワークインタフェース1215、バス1217、メモリ1220、及びストレージ1230を含むが、これらに限定されない。コンピューティングシステム1200は、コンピューティングシステム1200をI/Oデバイス1212(例えば、キーボード、ディスプレイ及びマウスデバイス)に接続するI/Oデバイスインタフェース1210も含む。コンピューティングシステム1205は、ユーザが、2D線画をアニメーション化するため、及びレンダリングされた3Dジオメトリのフレームに対して2Dシルエットを生成するための、ピクセル速度マップを生成することを可能にするコンピューティングシステムを提供する。
【0048】
CPU1205は、メモリ1220内に格納されているプログラミング命令を取得し、実行する。同様に、CPU1205は、メモリ1220内に常駐しているアプリケーションデータを格納し、取得する。バス1217は、CPU1205、I/Oデバイスインタフェース1210、ストレージ1230、ネットワークインタフェース1215とメモリ1220との間のプログラミング命令とアプリケーションデータを送信するために使用される。CPU1205には、単一のCPU、複数のCPU、複数のプロセッシングコアを有する単一のCPUなどの典型が含まれる。また、メモリ1220は、一般的にランダムアクセスメモリの典型が含まれる。ストレージ1230は、ディスクドライブ記憶装置が可能である。ストレージ1230は、単一のユニットとして示されているが、固定式記憶装置及び/又はリムーバブルの記憶装置(例えば、磁気ディスクドライブ、ソリッドステートドライブ(SSD)、リムーバブルメモリカード、光学式記憶装置、ネットワーク接続ストレージ(NAS)、又はストレージエリアネットワーク(SAN))の組み合わせが可能である。
【0049】
実例として、メモリ1220は、3Dモデリングコンポーネント1222、ピクセル速度マップコンポーネント12223、2D線画編集コンポーネント1224、及びシルエット生成コンポーネント1225をそれ自体に含むアニメーションツール1221を含む。また、ストレージ1230は、3Dモデルデータ1231、レンダリングされたアニメーションフレーム1232、ピクセル速度マップ1233、2D線画1234、及びシルエットデータ1235を含む。もちろん、アニメーションツール1221の機能コンポーネントは、様々なアプローチを用いて実装可能であることを、当業者は認識するであろう。
【0050】
上述のように、3Dモデリングコンポーネント1222によって、例えば、レンダリングされたアニメーションフレーム1232のシーケンスを生成するために、ユーザは3Dモデルデータ1231をレンダリングすることができる。更に、一度フレームのセットがレンダリングされると、ピクセル速度マップ1223は、レンダリングされたアニメーションフレーム1232に対するピクセル速度マップ1233を導出するために使用できる。更にまた、2D線画コンポーネント1224によって、アーティストはレンダリングされたアニメーションフレームで構成される2D線画1234を描画することができる。2D線画コンポーネント1224はまた、前又は後方向に1以上の時間ステップに亘って線画をアニメーション化するように構成することができる。シルエットコンポーネント1225は、レンダリングされたアニメーションフレーム1232に対してシルエットデータ1235を生成するように構成することができる。
【0051】
有利なことに、本発明の実施形態は、コンピュータ生成要素と手描き要素の両方を含むアニメーションのビデオフレームを制作するための方法を提供する。例えば、一実施形態は、アーティストがオブジェクトの三次元(3D)グラフィックモデルからレンダリングされたアニメーションフレームと合成するために線画を描く(又は他の2D画像データを提供する)ことを可能にするソフトウェアツールを含む。ソフトウェアツールは、下地の3Dジオメトリをレンダリングする際の変化と矛盾の無いように後続の(又は前の)フレーム内に表示するために、1つのフレームに対して提供されるそのような2D画像データをアニメーション化する方法を決定するように構成可能である。
【0052】
ソフトウェアツールは、レンダリングされたアニメーションフレーム内のキャラクター又はオブジェクトの輪郭に対応するシルエット曲線を生成するように構成することもできる。つまり、ソフトウェアツールは、3Dモデルからレンダリングされたアニメーションフレーム内のオブジェクトのエッジを追跡する2Dシルエットを導出するように構成可能である。2Dシルエット曲線に沿って点を押し出すことによって、多様なグラフィック効果がシルエットに適用可能である。更に、任意の2D画像データ又は線画を、下地の3Dモデルから生成されたピクセル速度マップを用いてアニメーション化できる。
【0053】
上記は本発明の実施形態を対象としているが、本発明の他の及び更なる実施形態は本発明の基本的範囲を逸脱することなく創作することができ、その範囲は以下の特許請求の範囲に基づいて定められる。
【背景】
【0001】
(分野)
本発明の実施形態は、概して、アニメーション化されたビデオシーケンスを対象とする。より具体的には、本発明の実施形態は、三次元(3D)モデルのコンピュータレンダリング及びいくつかのケースではアニメーターによって供給される手描きの線画からアニメーション映像を作成するためのハイブリッドなアプローチを対象とする。
【0002】
(関連技術の説明)
長年、アニメーション映像は個別に手描きされたフレームのセットから作成されてきた。近年では、アニメーション映像も生成できるコンピュータソフトウェアアプリケーションが開発されている。例えば、ソフトウェアは、アニメーションのフレームを描画するために使用されるアプリケーションをアニメーターに提供することができる。更に、コンピュータグラフィックスアプリケーションは、複雑な3Dモデルからのアニメーション映像を作成するために使用可能である。例えば、広範で多様なコンピュータソフトウェアと技法が、3Dモデルからコンピュータ生成画像(CGI)をレンダリングするために開発されている。そのようなアプローチは、アニメーション映像を制作する上で、芸術的及び商業的な両面において、非常に成功している。
【0003】
同時に、手描きのアニメーション及びCGIレンダリングの夫々は、独特の結果を生む。例えば、手描きのアニメーションの場合、個々の線の中に小さなぐらつきや他の変化がフレーム毎に現れる傾向があるので、アニメーターが多くのフレームに亘って一貫性のある線画を制作するのは困難である。更に、手描き用に用いられる創作材料(例えば、ブラシによる描画)は、アーティストが個々の線を如何に一貫して描いているかに関わらず、フレーム毎に異なって見える傾向がある。アーティストがゆっくりした又は微妙な動きをアニメーション化する場合、この効果はより明らかである。対照的に、CGIレンダリングを用いて制作された陰影付け(シェーディング)、影及び奥行きは、曲線の微妙な操作に対してとても矛盾の無い外観を提供することができる。もちろん、どちらのアプローチも、美的に魅力的な結果を生むために使用することができ、アートディレクターは、特定の効果を作り出すために、アニメーションの一方の形式をもう一方と共に用いることを望むかもしれない。
【概要】
【0004】
本明細書内で開示される一実施形態は、アニメーションフレームを処理するための方法を含む。この方法は、通常、1以上のプロセッサによってレンダリングされる第1アニメーションフレームを識別するステップを含む。第1アニメーションフレームは、時間内の第1点で3Dモデルのオブジェクトに対応する3Dジオメトリ(図形)をレンダリングする。この方法はまた、1以上の特定の時間ステップに亘って発生する3Dモデルのオブジェクト上の点の変化に対する第1アニメーションフレーム内の1以上の座標の動的な速度を示す画面空間速度マップを生成するステップを含んでもよい。
【0005】
特定の一実施形態では、画面空間速度マップ内の1以上の座標は、第1アニメーションフレーム内のピクセル(画素)座標にマッピングされる。更に、各座標の動的な速度は、ピクセルの動きの大きさと方向の両方を含むことができる。別の一実施形態では、この方法は、2D画像データを受信して、これによって第1アニメーションフレームと合成するステップと、画面空間速度マップ内における1以上の座標の動的な速度に応じて、特定の時間ステップに亘って2D画像データをアニメーション化するステップを更に含んでもよい。
【0006】
更に別の実施形態には、3Dグラフィックモデルのジオメトリに対する二次元(2D)シルエットを生成するための方法が含まれる。この方法は、一般的に3Dグラフィックモデルを表すジオメトリの少なくとも一部に対して連続的なサーフェスパラメタリゼーションを定義するステップを含むことができる。2Dサーフェスパラメタリゼーションの第1範囲(ディメンジョン)は、三次元グラフィックモデルの表面の一部を交差する。この方法はまた、1以上のフレームに亘ってシルエットのフィーチャー(特徴)を追跡(トレース)するステップを含むことができる。追跡するステップ自体は、サーフェスパラメタリゼーションの第1範囲上に複数の点を識別するステップを含み、識別された各点に対して、サーフェスパラメタリゼーションの少なくとも1つの第2範囲を決定するステップを含むことができる。3Dモデルの表面上の各接点は、レンダリングカメラの視点に接するように選択される。1以上のフレームに亘ってシルエットのフィーチャーを追跡するステップは、接点を接続し、これによって1以上の各フレーム内の3Dグラフィックモデルの表面の部分に対して2Dシルエットを定義するジオメトリを生成するステップを含むことができる。
【0007】
特定の一実施形態では、2Dサーフェスパラメタリゼーションの第1範囲は、3Dグラフィックモデルの表面の一部をラッピングする円筒状のフィーチャーとして決定される。更に、この方法はまた、円筒状のフィーチャーの軸に対して概して垂直な複数の閉ループを導出するステップを含むことができる。このような場合には、サーフェスパラメタリゼーションの少なくとも1つの第2範囲を決定するステップは、レンダリングカメラの視点に接する閉ループ上の少なくとも1つの点を識別するステップを含むことができる。
【0008】
他の実施形態は、開示された方法の1以上の態様を処理装置が実施することを可能にする命令を含むコンピュータ可読媒体、及び開示された方法の1以上の態様を実施するように構成されたシステムを含むが、これらに限定されない。
【図面の簡単な説明】
【0009】
上述した態様を実現し、詳細に理解することができるように、上記で簡単に要約した本発明の実施形態のより具体的な説明を添付図面によって参照して行う。しかしながら、添付図面は、本発明の典型的な実施形態を示しているに過ぎず、したがってその範囲を制限していると解釈されれず、本発明に対して、他の均等に有効な実施形態を含み得ることに留意すべきである。特許又は出願ファイルは、着色された少なくとも1つの図面を含む。着色図面を有するこの特許又は特許出願公開のコピーは、要求に応じ、必要な手数料の支払によって、特許庁によって提供されるであろう。
【0010】
【図1】アーティストにアニメーションツールを提供するように構成された本発明の一実施形態に係るコンピューティングインフラストラクチャを示す。
【図2A】本発明の一実施形態に係る、三次元(3D)モデルからレンダリングされたキャラクターの一例を示す。
【図2B】〜
【図2C】本発明の一実施形態に係る、図2Aに示されるアニメーションフレーム内でレンダリングされたキャラクターに対応するピクセル速度マップのグラフィカルな表現を示す。
【図3】本発明の一実施形態に係る、ピクセル速度マップを生成する方法を示す。
【図4A】〜
【図4B】本発明の一実施形態に係る、ピクセル速度マップを使用してレンダリングされた手書きの2D線画を含む三次元(3D)モデルからレンダリングされたアニメーションフレームの例を示す。
【図5】本発明の一実施形態に係る、ピクセル速度マップを使用して手書きの2D線画をレンダリングする方法を示す。
【図6】本発明の一実施形態に係る、アニメーションフレームのシーケンス内でレンダリングされた3Dオブジェクトに対して2Dシルエットを生成する方法を示す。
【図7A】〜
【図7B】本発明の一実施形態に係る、アニメーションフレームのシーケンス内でレンダリングされた3Dモデルに対してシルエットフランジを生成する一例を示す。
【図8】本発明の一実施形態に係る、3Dモデル上の点に対して識別される接点の一例を示す。
【図9A】〜
【図9B】本発明の一実施形態に係る、2つの異なるアニメーションフレームのシーケンス内でレンダリングされた3Dモデルに対してシルエットフランジを生成するために円筒に沿った点を使用する一例を示す。
【図10A】〜
【図10B】本発明の一実施形態に係る、図9A〜図9B内の3Dモデルに対して別のカメラアングルから示されるシルエットフランジを示す。
【図11A】〜
【図11B】本発明の一実施形態に係る、図9A〜図9Bに示される3Dモデルのシルエットフランジから生成された2D線画を示す。
【図12】本発明の実施形態を実施するように構成されたコンピューティングシステムの一例を示す。
【好ましい実施形態の詳細な説明】
【0011】
本発明の実施形態は、コンピュータ生成要素と手描きの要素の両方を含むアニメーション化されたビデオフレームを制作するための方法を提供する。例えば、一実施形態は、三次元(3D)モデルからレンダリングされたアニメーションフレーム上で、アーティストが線画を描くことを可能にするソフトウェアツールを含む。ソフトウェアツールは、下地の3Dジオメトリをレンダリングする際の変化と矛盾の無いように後続の(又は前の)フレーム内に現れるために、1つのフレーム内においてそのような手描きの線画を修正する方法を決定するように構成可能である。
【0012】
一実施形態では、3Dジオメトリのレンダリングから生成される二次元(2D)画面空間内の点の位置に対して方向と速度を示すために、画面空間速度のマップを生成することができる。一般性を失うことなく、そのような点は、アニメーションフレーム内のピクセルに対応することができるので、以下の議論では、利便性の問題から概してピクセルを指す。しかしながら、より一般的には、3Dモデルをレンダリングすることによって生成された2D画面空間内の点は、特定の場合のニーズに適した任意のアプローチを用いてサンプリングすることができる。例えば、画面空間は[0..1]区間を用いてレンダリングされ、任意の精度の画面空間速度マップを作成できた。そのような画面空間速度マップからサンプリングされた値は、必要に応じて、あるディスプレイ解像度でピクセル値にマッピングすることができた。画面空間速度マップ(アニメーションフレーム内でピクセルを参照するときは同じ意味でピクセル速度マップとも呼ばれる)は、特定の時間ステップに亘って(例えば、1つのフレームから次のフレームまで)、画面空間内の点に対して測定された速度(すなわち、動きの速さと方向)を示すことができる。しかしながら、速度は1つのフレームから次のフレームまで3Dモデル内の変化に対して決定される。より具体的には、ソフトウェアツールは、任意の時間サンプルに亘って、3Dモデル内の点に対応したある特定のピクセル(又はフィーチャー)がどれだけ動くかを決定することができる。このように、ピクセルの速度(又は画面空間内の他のサンプリングされた点)は、フレーム毎の(又は他の時間ステップにおける)下地の3Dジオメトリの変化に基づくそのピクセルの動きの方向と大きさを表す。
【0013】
アーティストが3Dモデルからレンダリングされた画像上で、例えばいくつかの線画を描くことによって、二次元(2D)画像データを合成(又はブレンド)するとき、(時間に亘る下地の3Dモデルの変化に基づく)画面空間内のピクセルの速度は、後続の(又は前の)フレーム内で(又は他の時間ステップに亘って)2D画像データを効果的にアニメーション化するために使用できる。更に、ピクセル速度データは、アニメーションフレーム内のピクセルが、1つのフレームから別のフレームまでどのくらいの程度で変化しているかをアーティストに提供するために使用されるカラーマップとしてレンダリングできる。
【0014】
別の一実施形態では、ソフトウェアツールは、レンダリングされたアニメーションフレーム内のキャラクター又はオブジェクトの輪郭に対応して、2Dシルエット(シルエットフィーチャー、カーブ(曲線)、又は単にシルエットとも呼ばれる)を生成するように構成することができる。このような2Dシルエットは、時間内の任意の点におけるカメラ位置から見たとき、(テクスチャマッピングのように)キャラクターの表面ではなく、むしろそのオブジェクトの正接エッジで追跡する。シルエットフィーチャーが、モデル面とカメラの位置変化によって3Dモデルの表面の周囲にスライドするとしても、導出されたシルエットは3Dモデルのジオメトリに対して長い時間安定している。
【0015】
一実施形態では、シルエットフィーチャーを生成するために、連続的な2Dサーフェスパラメタリゼーションは、3Dグラフィックモデル内のジオメトリの一部に対して定義される。例えば、連続的な2Dサーフェスパラメタリゼーションは、3Dジオメトリの表面にそれ自身の輪郭を描く切り取られた円筒としてトポロジー的に表現できる。結果として得られる切り取られた円筒は、一連のリングを定義するために簡略化してもよい。各リングは、3Dモデルの表面の周囲に閉ループを提供する。各リングの(切り取られた円筒に対する)高さは、2Dサーフェスパラメタリゼーションの第1範囲を提供する。各リング上で2点まで、各々が2Dサーフェスパラメタリゼーションの第2範囲を提供する。具体的には、カメラの視点に接し、あるリングによって包絡される3Dジオメトリの表面の両側にある各リング上の1つ(又は2つ)の点が識別される。これらの点は、3Dジオメトリのレンダリング及びカメラの位置に基づいて識別されるアニメーションフレームに対する3Dオブジェクトの両側の「エッジ」を表す。複数のリングから導出された接点の各々を接続することによって、2Dシルエット曲線が提供される。シルエットフィーチャーは、1以上のフレームに亘って追跡することができる。3Dモデルがアニメーション化されるとき、シルエットフィーチャーは、モデルの表面を横切ってスライドし、しかしながら、それにもかかわらず、オブジェクトのエッジを追跡するように連接(コヒーレント)を維持できる。
【0016】
更に、結果として得られた2Dシルエット曲線は、リボン又はフランジを作るためにモデルの表面とカメラの視線の両方に垂直に押し出すことができる。この方法を用いて、フランジは、オブジェクト又はカメラの変更動作に反応して、3Dモデルの周りにスライドするが、切り取られた円筒を上下にスライドさせない。つまり、接点はオブジェクトの表面上のリングの閉ループを動き回ることができる一方、リング自体は、一般的にキャラクターオブジェクト上の位置に固定されたままである。このように、リボンはあらゆる種類のシルエットベースの芸術的効果に対して安定したプラットフォームを提供する。例えば、シルエットのリボンは、手描きの線画の外観を与えるために、きめの粗い木炭効果を使用してレンダリングできるが、粒状性はフレーム毎にはるかにより一定に維持できる。同様に、フランジには、手描きの線画又は他の2D画像データによってレンダリングされたイメージを補強する際にユーザをガイドできる小さなキャンバスが用意されている。更に、いずれの場合でも、シルエットのリボン上の点の速度(すなわち、任意の時間ステップに亘る(例えば、フレーム毎の)動作の大きさ及び方向)を、フランジに対して生成することができる。そうすることによって、シルエットの2D画像データ(例えば、線画、画像データ又は他のシルエットベースの芸術的効果)は、フレームのシーケンス内でアニメーション化(関連する時間ステップの3Dジオメトリのレンダリングに基づいて、前方又は後方のいずれかに移動する)が可能となる。
【0017】
ただし、個別に説明するが、ピクセル速度マップを生成するための方法、2Dの線画をアニメーション化するための方法、及びシルエットを生成するための方法は組み合わせることができ、これによって互いに連携して動作すると共に、アニメーションフレームを生成する(又は修正する)ための他の技法と組み合わせることができる。例えば、まさに述べたように、ピクセル速度を決定し、2D画像データをアニメーション化させるためのアプローチは、アニメーション化された3Dキャラクター用に生成された二次元シルエットのリボンにも適用することができる。更に、本発明の実施形態を示す下記の使用例は、概してアニメーション化された「キャラクター」のレンダリングされた外観を使用する。しかしながら、当業者は、本明細書内に記載される方法が、擬人化されたキャラクターと共に使用することに限定される方法ではなく、その代わりにいかなる下地の3Dジオメトリに対してもCGIレンダリングと手描きの線画の組み合わせ、及びシルエットを生成するために使用可能であることを認識するだろう。
【0018】
更に、以下の説明は、本発明の実施形態を参照する。しかしながら、本発明は、記載された特定の実施形態に限定されるものではないことを理解すべきである。その代わりに、以下の構成及び要素の任意の組み合わせは、別の実施形態に関連するかどうかに関わらず、本発明を実施し、実践するように企図されている。更に、本発明の実施形態は、他の可能な解決法及び/又は先行技術上の利点を達成するかもしれないが、ある実施形態によって特定の利点が達成されるか否かは、本発明を限定しない。したがって、以下の態様、構成、実施形態及び利点は、単なる例示であり、特許請求の範囲内で明示的に記載される場合を除き、添付の特許請求の範囲の要素又は限定とは見なされない。同様に、「発明」への参照は、本明細書で開示されるすべての発明の主題の一般化として解釈されるべきではなく、特許請求の範囲内で明示的に記載される場合を除き、添付の特許請求の範囲の要素又は限定であると考えるべきではない。
【0019】
本発明の態様は、システム、方法又はコンピュータプログラム製品として実施することができる。したがって、本発明の態様は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態(ファームウェア、常駐ソフトウェア、マイクロコード等を含む)、又は本明細書内で「回路」、「モジュール」又は「システム」とすべて一般に呼ばれる可能性のあるソフトウェア及びハードウェアの態様を組み合わせた実施形態の形式を取ることができる。更に、本発明の態様は、コンピュータで読み取り可能なプログラムコードを内部に収めた1以上のコンピュータ可読媒体内に具現化されるコンピュータプログラム製品の形式を取ることができる。
【0020】
1以上のコンピュータ可読媒体の任意の組み合わせを利用してもよい。コンピュータ可読媒体は、コンピュータ可読信号媒体又はコンピュータ可読記憶媒体であってもよい。コンピュータ可読記憶媒体は、例えば、電子、磁気、光学、電磁気、赤外線、又は半導体の、システム、装置、又はデバイス、又は上記の任意の適切な組み合わせが可能であるが、これらに限定されない。コンピュータ可読記憶媒体のより具体的な例(非包括的リスト)は、以下のものを含む:1以上のワイヤを有する電気接続、ポータブルコンピュータのディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去可能なプログラマブル読み取り専用メモリ(EPROM又はフラッシュメモリ)、光ファイバ、ポータブルコンパクトディスク読み取り専用メモリ(CD−ROM)、光ディスク記憶装置、磁気記憶装置、又は上記の任意の適切な組み合わせ。この文書の文脈内では、コンピュータ可読記憶媒体は、命令実行システム、装置、又はデバイスによって、又はそれらと接続して使用するためのプログラムを含む又は格納できる任意の有形媒体が可能である。
【0021】
図面内のフローチャート及びブロック図は、本発明の種々の実施形態に係るシステム、方法及びコンピュータプログラム製品の可能な実装形態におけるアーキテクチャ、機能性及び操作を示す。この点では、フローチャート又はブロックダイアグラム内の各ブロックは、特定の論理的機能を実装するための1以上の実行可能命令を含むモジュール、セグメント又はコードの一部を表すことができる。いくつかの別の実装形態では、ブロックに記載されている機能は、図面に記載されている順序から外れて発生する可能性がある。例えば、連続して示される2つのブロックは、実際には、実質的に同時に実行される可能性があり、又は関与する機能性に応じて、ブロックは時々逆の順序で実行されることがある。ブロックダイアグラム及び/又はフローチャート図、及びブロックダイアグラム及び/又はフローチャート図内のブロックの組み合わせの各ブロックは、特殊用途のハードウェアベースの特定の機能や活動を実行するシステム、又は特殊用途のハードウェアとコンピュータ命令の組み合わせによって実装することができる。
【0022】
図1は、アーティストにアニメーションツール110を提供するように構成された本発明の一実施形態に係るコンピューティングインフラストラクチャ100を示す。図示されるように、コンピューティングインフラストラクチャ100は、レンダリングシステム105、クライアントシステム130、及び3Dモデルのジオメトリ115のソースを含み、各々は通信ネットワーク120に接続されている。例示的に、レンダリングシステム105は、3Dモデルのジオメトリ115から生成されたアニメーション映像125を含む。レンダリングシステム105は、概して、典型的にはアニメーションツール110と対話するユーザの指示と制御の下で、3Dモデルのジオメトリ115からアニメーションフレーム(すなわち、ピクセルカラー値の二次元配列)を生成するように構成されたコンピューティングシステムを表す。図1は、単一のレンダリングシステム105を含むが、高度なレンダリング環境では、通常、同時にアニメーションの別のフレームをレンダリングするそのような多くのシステムを含む。更に、3Dモデルのジオメトリ115のためのアニメーションツール110、レンダリングシステム105及び記憶装置の機能は、個別のコンピューティングシステムとして示されるが、単一のコンピューティングシステム上で結合される(又は、更に複数のコンピューティングシステムにまたがって細分割される)ことができる。
【0023】
この特定の例では、クライアントシステム130は、アニメーションツール110を実行するコンピュータシステムを表す。アニメーションツール110は、3Dモデルのジオメトリ115を作成及び編集するだけでなく、レンダリングシステム105によって生成されるようなジオメトリのレンダリングを制御するために使用することができる。以下で更に詳細に説明されるように、一実施形態では、アニメーションツール110は、ピクセル速度マップを生成するだけでなく、アニメーション映像のフレーム上にアーティストによって描かれた線画を合成するように構成することができる。アニメーションツール110はまた、アニメーションツール110によって生成されたピクセル速度マップに基づいて、そのような線画を変換し、それを後続の(又は前の)フレームと合成するように構成することができる。更に、アニメーションツール110は、アニメーション映像125内でオブジェクト用のシルエット又はリボン状フランジを生成するように構成することができる。
【0024】
図2Aは、本発明の一実施形態に係る、三次元(3D)モデルからレンダリングされたキャラクター205の一例を示す。この特定の例では、レンダリングされたフレームは女性キャラクター205の像を示している。この例を想定して、キャラクター205に対応する3Dジオメトリは、完全にレンダリングされたとき、概して表示画面を横切って右から左へと、街の通りを駆け下りているこのキャラクターの3Dグラフィカルモデルを提供する。走っているとき、キャラクター205の部分は、フレーム毎に異なるレートで位置を変える。例えば、図2Aに示されるように、前脚はキャラクター205の胴体よりも速く移動し、したがってレンダリングされた画面空間内でより大きなピクセル速度を有し、足取りを作るまでは、その点で他方の脚はより高速で真直ぐの移動速度を示し始めるであろう。
【0025】
より一般的には、フレームをレンダリングするのに使用される3Dジオメトリの要素(例えば、キャラクター205を表すポリゴンメッシュの頂点)は、1つのフレームから後続の(又は前の)フレームまで、又は他の時間ステップに亘って位置を変えるであろう。それに応じて、この3Dモデルのレンダリングされたフレームも結果的に変化するであろう。一実施形態では、アニメーションツールは、任意の時間ステップに亘って(例えば、1つのフレームから次のフレームまでに)決定される3Dモデルの変化に対する、レンダリングされたフレーム内の各ピクセルの動的な速度を表すピクセル速度マップを生成するように構成できる。つまり、ピクセル速度マップは、1つのピクセルが1つのフレームから後続の(又は前の)フレームまで画面空間内をどのくらい移動することができるか(大きさと方向の両方を含む)を表し、画面空間内のピクセル速度の大きさと方向は、下地の3Dモデルの変化に対して導出される。
【0026】
例えば、図2B〜2Cは、本発明の一実施形態に係る、図2Aに示されるアニメーションフレーム内でレンダリングされたキャラクターに対応する画面空間速度マップのグラフィカルな表現を示す。一実施形態では、画面空間又はピクセル速度マップは、画面空間(例えば、ピクセル)内の点に対する速度をグレースケール値(例えば、より明るいピクセルは、より大きな速度を表す)を用いて表すことができる。あるいはまた、色のディメンジョンを追加することによって、画面空間内の点の速度の方向と大きさの両方を速度マップ内に表すことができる。例えば、図2Bは、ピクセルのレンダリングされた色が、そのフレーム内のそのピクセルに対するピクセル速度の程度を表す画面空間速度マップ220を示す。なお、速度は、任意の前方又は後方の時間ステップの間、測定可能である。この例では、速度は前のフレームに対する現在のフレームのピクセル速度を測定していると推定される。また、この例では、ピクセルの水平速度は、赤色を用いて表現され、あるピクセルの明るさは、水平方向の動きの大きさに対応する。つまり、より大きな右方向の速度は、ピクセルマップ内のピクセルに対して(表示画面の表示の限界まで)より明るい赤色をもたらす。同時に、ピクセルの垂直方向の速度は、緑色を用いて表現され、垂直方向上方へ移動するピクセルは緑で色づけされ、再び、あるピクセルの明るさは、垂直方向の動きの大きさに対応する。右方向及び上方向のピクセルの移動の相対的寄与は合成をもたらし、上及び右へ移動するピクセルは黄色に色づけされ、その時々において合成された大きさによって決定される明るさを有する。なお、左又は下へのピクセル速度は、この例におけるピクセルの合成色(又は明るさ)に寄与しない。もちろん、他の色を選択することも可能であり、方向を変えることも可能であり、色は、水平移動に対して左へ、垂直移動に対して下へ割り当てることも可能である。垂直及び水平方向の速度の合成として選択された色を用いてピクセルをレンダリングすることによって、ピクセル速度マップ220は、上及び右へと移動するピクセル速度に対してキャラクター205の各ピクセルの全体的な動きと方向を示す。
【0027】
同様に、図2Cは、ピクセル速度の方向を表すために色を使用した画面空間速度マップ240を示す。しかしながら、方向を表す色に加えて、ピクセル速度の大きさは、(3Dモデルの下地のジオメトリに基づく)画面空間内のそのピクセルの初期位置及びある時間ステップに亘る(例えば、1つのフレームから次のフレームまでの)そのピクセルの次の位置を表すベクトルとして、各ピクセルをレンダリングすることによっても示される。下地の3Dモデルがフレームをレンダリングするのに使用されるとき、1つのフレームから次のフレームまで各ピクセルの位置の変化をレンダリングすることによって、ピクセル速度マップ240は、画面空間内におけるピクセルへの変化の大きさと方向の両方を示す。例えば、点242でのピクセルが示される。ある時間ステップに亘るある特定の方向におけるこのピクセルの動き(すなわち、その速度)は、終了位置244で示される。その効果は、ピクセル速度ベクトルの全体的な様子が、合わせくぎの集まりと似たように積み重ねられているピクセル速度マップ240をもたらす。そのような合わせくぎの各々は、ある大きさと方向で動くピクセルを表す。図2Bと同様に、各ピクセル速度ベクトルの色と明るさは、上及び右へのピクセルの動きに対して決定される。
【0028】
図3は、本発明の一実施形態に係る、画面空間速度マップ(例えば、図2B〜2Cに示されるマップ)を生成する方法300を示す。図示されるように、方法300は、モデルの3Dジオメトリが、レンダリングカメラから見えるモデルの要素に対して画面空間内に投影されるステップ305から始まる。例えば、レンダリングアプリケーションは、ポリゴンメッシュを用いて定義される3Dモデルを受け取ることができ、カメラと3Dモデルのトポロジーの定義された位置に基づいてアニメーションフレームを生成する。ジオメトリのレンダリングされた各画像は、一般的にアニメーションのフレームに対応している。
【0029】
ステップ310では、アニメーションツールは、正(及び/又は負)の時間ステップ内において、画面空間内の座標位置(例えば、ピクセル)に対する速度を計算することができる。述べたように、画面空間速度は、特定の時間ステップに亘る(例えば、フレーム毎の)3Dモデルの変化に対して決定されるが、画面空間内の変化に対するピクセル速度を提供するように変換される。例えば、あるピクセルの動きの方向と大きさは、特定の時間ステップに亘る下地の3Dモデルの変化に対して決定されるように、画面のピクセル単位で測定される。画面空間が表示画面とは異なる解像度を用いてサンプリングされている場合、最終的な画面空間速度マップは、表示画面の解像度に正規化することができる。例えば、画面空間が0〜1の連続的な範囲(小数点以下数桁まで)でサンプリングされている場合は、点の速度値は、ピクセル空間分解能にマッピングすることができる。ステップ315において、アニメーションツールは、特定の各時間ステップに亘ってピクセルに対して計算された速度を格納することができる。つまり、アニメーションツールは、各時間ステップに対して生成された画面空間速度マップを格納することができる。
【0030】
一実施形態では、例えば、ユーザは、特定の数のフレームを包含するアニメーションシーケンスを特定することができる。特定の開始フレームから、アニメーションツールは、後続の(及び/又は前の)多数のフレームをレンダリングする(又はレンダリングする結果となる)。ピクセル速度マップは、シーケンス内の任意の2つのフレーム間のピクセル速度を識別するために生成可能である。一度生成されると、アニメーションツールは、得られたピクセル速度マップを格納できる。ステップ320では、アニメーションツールは、ピクセル速度マップの表現を作成できる。例えば、ピクセル速度は、(図2Bに示されるように)色を使用するか、又は(図2Cに示されるように)ピクセル速度の方向及び大きさを示すベクトルのセットとして表現できる。もちろん、ピクセル速度は、多様な異なる色スキーム、グレースケール値、強度値、又はコード化されたパターン等を用いて表現可能である。
【0031】
更に、一実施形態では、ピクセル速度マップは、2D画像データ、線画、又は特定の時間ステップに亘ってアーティストによってアニメーションフレームと合成された他の2Dの芸術的効果をアニメーション化するために使用可能である。例えば、図4A〜4Bは、本発明の一実施形態に係る、ピクセル速度マップを使用して後続のフレーム内でレンダリングされた1つのフレーム上に描かれた手書きの2D線画を含む三次元(3D)モデルからレンダリングされたアニメーションフレームの例を示す。図示されるように、レンダリングされたキャラクター400は街の通りを駆け下りており、キャラクター400の脚は大股で進行中であることを示す。その結果、キャラクター400が着用するスカートの表面の大部分が、このフレーム内で見える。更に、図示されるように、アーティストは、キャラクター400のレンダリングされた服に手描きの線画を追加している。具体的には、線405及び円410が、図4Aに示されるアニメーションフレーム内のキャラクターのドレスに描かれている。
【0032】
アニメーションツールは、一般的にアーティストによって提供された線画をアニメーションフレームと合成するように構成することができる。従来、アーティストは、効果を継続するために後続の各フレームに線画を追加しなければならなかった。しかしながら、一実施形態では、ピクセル速度マップが、後続の(又は前の)フレーム内で2Dの線画(例えば、線405及び円410)をアニメーション化するために使用される。例えば、図4Bは、図4Aに示されるフレームの後のいくつかの時間ステップにレンダリングされたフレームを表す。図4Bに示されるように、キャラクター400’は、縁石に達し、両足が共に比較的近くに位置している。その結果、キャラクター400’のスカートの可視表面積は、はるかに小さい。更に、線405及び円410によって覆われる3Dモデルからレンダリングされたピクセルに対応するピクセル速度は、各時間ステップに亘る線405’及び円410’の各ピクセルを移動するための大きさ及び方向を決定するために使用されており、その結果、曲がった線及び変形した円が生じている。
【0033】
より具体的には、レンダリングされたアニメーションの各時間ステップに対して(例えば、図4Aに示されるフレームと図4Bに示されるフレームの間の各フレームに対して)、ピクセル速度マップは、2D画像データの要素を、(例えば、線405及び円410の線画を初期位置から終了位置まで)変換するために使用される。したがって、線405’及び円410’の形状は、キャラクター400上でレンダリングされたスカートの形状の変化と概して矛盾の無いように変化している。このように、ピクセル速度マップは、アーティストからの入力を必要とせず、後続の(又は前の)時間ステップに亘ってアーティストから提供される2D映像データを効果的にアニメーション化するために使用される。もちろん、所望の外観又は美的品質を作るために必要ならば、ピクセル速度マップによって生成された結果として得られる2D画像データをアーティストが手動で編集することもできる。
【0034】
図5は、本発明の一実施形態に係る、ピクセル速度マップを使用して手書きの2D線画をレンダリングする方法500を示す。図示されるように、方法500は、アニメーションツールがアニメーションフレームのシーケンスをレンダリングする(又はレンダリングする結果となる)ステップ505から始まる。ステップ510において、レンダリングされたフレームは、編集ツールと対話するユーザによって表される。そのようなツールは、ユーザがレンダリングされたフレームを1つずつステップ実行できるように構成可能である。ステップ515において、ユーザは、描画ツールを使用して、2D画像データをフレームのうちの1つと合成できる。ステップ520において、アニメーションツールは、各時間ステップに対する画面空間速度マップ(例えば、各アニメーションフレーム間のピクセル速度を表すために生成されたピクセル速度マップ)を生成(又は取得)できる。ステップ525において、アニメーションツールは、画面空間速度マップを使用して、1以上の連続する(又は前の)フレームの中の1フレームに対して提供される2D画像データをアニメーション化することができる。つまり、2D線画又は他の2D画像データの各要素は、画面空間速度マップを用いて決定される方向及び大きさによって変換される。そうすることによって、下地の3Dジオメトリの変化と矛盾ないように2D画像データをアニメーション化できる。結果として得られる2D画像は、連続する(又は前の)各時間ステップに対して生成されるアニメーションフレームと合成される。
【0035】
上述のように、画面空間又はピクセル速度マップの生成に加えて、アニメーションツールは、キャラクター又はアニメーションフレームのシーケンス内に示される他のオブジェクトに対して2Dシルエットを生成するように構成可能である。テクスチャがオブジェクトの表面に適用されるテクスチャマッピングとは異なり、シルエットは、時間内の任意の点におけるカメラ位置から見たとき、そのオブジェクトの正接エッジと一致する。2Dシルエットの形状が、モデル面とカメラの位置変化によって3Dモデルの表面の周囲に「スライドする」としても、2Dシルエットは3Dモデルのジオメトリに対して長い時間安定している。更に、所望の美的外観を有するオブジェクトのためのシルエットを作成するために、必要なときには多様な2Dグラフィック効果を2Dシルエットに適用可能である。更にまた、レンダリングされる画像用の空間速度マップを生成することによって、2Dシルエット、線画、又はシルエットに適用される他の2D画像データは、アーティストによって供給された画像データに対して上述と同じ方法でアニメーション化できる。
【0036】
図6は、本発明の一実施形態に係る、アニメーションフレームのシーケンス内でレンダリングされた3Dグラフィックモデルのジオメトリに対する2Dシルエットフィーチャーを生成する方法を示す。方法600の態様が、3Dグラフィックモデルのためのシルエットフランジを生成する例を示す図7A〜7Bと連携して説明される。図示されるように、方法600は、3Dグラフィックモデル内の3Dジオメトリの要素に対応する円筒のフィーチャーを定義するために、ユーザがアニメーションツールと対話するステップ605から始まる。円筒のフィーチャーは、アニメーションフレームのシーケンスの各々に対して3Dグラフィックモデルの可視エッジを定義する2Dシルエットを導出するために使用される。例えば、アニメーションツールは、3Dモデルのジオメトリの部分上に円筒を「ペイントする」のに使用される描画ツールを含むことができる。それに応じて、アニメーションツールは、ジオメトリからレンダリングされた各アニメーションフレーム内のオブジェクトの3Dジオメトリに円筒を「合わせる」ことができる。例えば、アニメーションのツールは円筒を、それが各フレーム内で3Dジオメトリの表面と交差するまで縮小することができる。
【0037】
3Dジオメトリをラップする結果として生じる円筒フィーチャーのトポロジーが一度決定されると、ステップ615〜630を含むループが始まる。ループを通る各パスで、アニメーションツールは、あるフレーム内でジオメトリの可視エッジを追跡する2Dシルエットに対応するジオメトリを生成する。より一般的には、円筒フィーチャーは、各フレーム内でシルエットを定義する3Dグラフィックモデル内のジオメトリの一部に対して連続的な2Dサーフェスパラメタリゼーションを導出するために使用される。ステップ610で、アニメーションツールは、円筒を一連のリングに細分割することができる。リングの数及び/又はリング間の距離は、好みの問題として構成可能である。各リングは、円筒フィーチャーの軸に対して概して垂直な3Dモデルの表面を包み込む閉ループを提供する。各リングの位置は、シルエットフィーチャーの2Dパラメタリゼーションのための第1パラメータを提供する。
【0038】
例えば、図7Aは、キャラクター705を示しており、この例では、女性のキャラクターが直立している。アーティストは、キャラクター705の(アーティストから見て)左の脚に概して対応するように、円筒用の境界を特定するためにアニメーションツールを使用している。それに応じて、アニメーションツールは、この脚の表面と交差する円筒フィーチャーを識別し、円筒の軸に沿って比較的短い間隔のリングにこのフィーチャーを細分割している。例えば、リング710から始めると、図7Aは、脚のジオメトリがキャラクター705の胴体を交差するまで、リング710から上方に移動する一連のリングを示す。完全なシルエットを生成するには、キャラクター705の他方の脚、各々の腕、胴体及び頭部に対して、追加の円筒を定義することができる。記載したように、3Dジオメトリ上の各リングの位置(例えば、円筒に沿った高さ)は、シルエット曲線の2Dパラメタリゼーションのための第1パラメータを提供する。
【0039】
再び方法600を参照すると、ステップ615において、各リング上の2点が、3Dモデルから生成されたアニメーションの各フレームに対するキャラクターの2Dシルエットを表す左右(又は上下)の曲線上の点を識別するために使用される。具体的には、各フレーム内で、各々のリングは、レンダリングカメラの視点に接するちょうど2つの点、つまり各リングの左右(又は上下)に1つずつを有する。例えば、図7Aは、リング715と、キャラクター705の脚の左右両側に対して決定された接点を示す。図示されるように、各リングには再び、各々の点がカメラの視点に接するリング上の点として決定される左右の点が含まれる。接点は、シルエット曲線の2Dパラメタリゼーションのための第2パラメータを提供する。
【0040】
図8は、追加の例を示す。より具体的には、図8は、本発明の一実施形態に係る、3Dモデル上の点に対して識別される接点の例を示す。上方から見下ろした図に示されるように、レンダリングカメラ805は、キャラクター705の頭と肩を示す。キャラクターは、カメラの観察面810内にある。この例では、円筒がキャラクター705の頭部と胴体に対して定義されていることを前提としている。接線8151−2は胴体の円筒に対する接点を示し、接線8201−2は頭部に対する接点を示す。
【0041】
再び方法600を参照すると、ステップ620において、アニメーションツールは、左右(又は上下)のシルエット曲線を作成するために接点を接続する。そのような各々の曲線は、そのジオメトリがアニメーションのあるフレーム内でレンダリングされるとき、3Dジオメトリのエッジを追跡する2D曲線を提供する。更に、ステップ625で、アニメーションツールは、キャラクターのシルエットを提供する2Dジオメトリのリボン又はフランジを生成するために各曲線を押し出すことができる。
【0042】
一実施形態では、2つの曲線の各々に対応する接点が、リボン又はフランジを作るために、モデルの表面及びカメラの視線に垂直に押し出される。この結果は図7Bに示され、リボン7201−2は、キャラクター720の脚の左側と右側の両方に対して、そのような各点の表面の法線に沿って延びる接点を接続する。キャラクター705に対する正接リボンの完全なセットは、キャラクターのジオメトリなしで、725において示される。リボンは、レンダリングされたアニメーションフレームと合成することができる2D画像データの集まりを提供する。なお、あるフレーム内の3Dジオメトリのトポロジーを考えると、シルエット曲線(又はそこから押し出されるリボンフランジ)のいくつかの部分は、3Dジオメトリの他の要素によって閉塞される可能性がある。例えば、730で示されるように、キャラクター705の右腕に対応するリボンシルエットは、キャラクター705の右腰に対応するシルエットの部分を塞ぐ。
【0043】
シルエット曲線を生成する別の一例が、図9A〜9Bに示される。より具体的には、図9A〜9Bは、2つの異なるアニメーションフレーム内でレンダリングされるとき、踊っている女性キャラクターの3Dモデルに対するシルエットフランジを生成するために円筒に沿って接点を導出する例を示す。図示されるように、キャラクター905は概してカメラに対向しており、円筒リングを伴う脚の大部分は他方の脚によって塞がれる。対照的に、キャラクター905が振り返ると、円筒リングを伴う脚がはっきりと現れる。これらの画像が示すように、ある円筒のリングは、レンダリングされたオブジェクトのジオメトリ内の劇的な変化にもかかわらず、時間的に密着してとどまっている。
【0044】
同時に、カメラに接する円筒リング上の点は、フレーム毎に変わる。つまり、リングの接点がフレーム毎に変わるので、シルエットの形状自体がキャラクターを横切ってスライドする。この結果は図10A〜10Bに示され、別のカメラアングルを用いて図9A〜9Bの踊っている女性キャラクターに対して示されるシルエットフランジを示す。より具体的には、図10A〜10Bは、両方のフレームに対してキャラクターの前に固定されたカメラから見た踊っているキャラクターの図を示す。しかしながら、シルエットフランジ10201−2は、図9A〜9B内で用いられたカメラアングル用に生成されたシルエットに対応する。これらの図によって示されるように、シルエット自体が(リング上の接点を用いて決定されるように)別のフレームに亘ってキャラクターのエッジに沿って時間的に密着したままでいる間、シルエットエッジ又はリボンの位置は、オブジェクトが3D空間内でフレーム毎に(又はいくつかの他の時間ステップに亘って)形状又は位置を変えるとき(又はカメラが移動するとき)、3Dジオメトリの表面に沿ってスライドするだろう。
【0045】
再び方法600を参照すると、ステップ630において、アニメーションツールは、レンダリングされたアニメーションフレームと合成するための2D画像データを生成することができ、つまり3Dジオメトリからレンダリングされたアニメーションフレームに可視シルエットを効果的に追加することができる。更に、2D画像データは、たとえそれが異なる創作材料、インク、鉛筆、木炭、ペンキ等を用いて描かれたとしても、多様で異なる視覚的な特性(例えば、異なる色、太さ又は線のスタイル)を有するようにも生成可能である。例えば、図11A〜11Bは、本発明の一実施形態に係る、図9A〜9Bに示される3Dモデルの2Dシルエットを示す。この例では、踊っているキャラクター1105及び1110のシルエットは、線画の部分が厚みと暗さにおいて変化する手書きの外観を模倣する線のスタイルを用いて描画されている。
【0046】
同様に、シルエットリボンは、3D画像データから生成された画像フレームと合成することができる線画又は他の2D画像データを供給するためにアーティストに対して2D描画キャンバスを提供する。1つのフレームのシルエットに対して提供されるそのような2D画像データは、上述のピクセル速度マップを用いて後続の(又は前の)フレーム内でアニメーション化することができる。その結果として得られる2Dアニメーションデータは、所望の視覚的効果を生成するために、後続のアニメーションフレームと合成することができる。
【0047】
図12は、本発明の実施形態を実施するように構成されたコンピューティングシステム1200の例を示す。図示されるように、コンピューティングシステム1200は、中央演算処理装置(CPU)1205、ネットワークインタフェース1215、バス1217、メモリ1220、及びストレージ1230を含むが、これらに限定されない。コンピューティングシステム1200は、コンピューティングシステム1200をI/Oデバイス1212(例えば、キーボード、ディスプレイ及びマウスデバイス)に接続するI/Oデバイスインタフェース1210も含む。コンピューティングシステム1205は、ユーザが、2D線画をアニメーション化するため、及びレンダリングされた3Dジオメトリのフレームに対して2Dシルエットを生成するための、ピクセル速度マップを生成することを可能にするコンピューティングシステムを提供する。
【0048】
CPU1205は、メモリ1220内に格納されているプログラミング命令を取得し、実行する。同様に、CPU1205は、メモリ1220内に常駐しているアプリケーションデータを格納し、取得する。バス1217は、CPU1205、I/Oデバイスインタフェース1210、ストレージ1230、ネットワークインタフェース1215とメモリ1220との間のプログラミング命令とアプリケーションデータを送信するために使用される。CPU1205には、単一のCPU、複数のCPU、複数のプロセッシングコアを有する単一のCPUなどの典型が含まれる。また、メモリ1220は、一般的にランダムアクセスメモリの典型が含まれる。ストレージ1230は、ディスクドライブ記憶装置が可能である。ストレージ1230は、単一のユニットとして示されているが、固定式記憶装置及び/又はリムーバブルの記憶装置(例えば、磁気ディスクドライブ、ソリッドステートドライブ(SSD)、リムーバブルメモリカード、光学式記憶装置、ネットワーク接続ストレージ(NAS)、又はストレージエリアネットワーク(SAN))の組み合わせが可能である。
【0049】
実例として、メモリ1220は、3Dモデリングコンポーネント1222、ピクセル速度マップコンポーネント12223、2D線画編集コンポーネント1224、及びシルエット生成コンポーネント1225をそれ自体に含むアニメーションツール1221を含む。また、ストレージ1230は、3Dモデルデータ1231、レンダリングされたアニメーションフレーム1232、ピクセル速度マップ1233、2D線画1234、及びシルエットデータ1235を含む。もちろん、アニメーションツール1221の機能コンポーネントは、様々なアプローチを用いて実装可能であることを、当業者は認識するであろう。
【0050】
上述のように、3Dモデリングコンポーネント1222によって、例えば、レンダリングされたアニメーションフレーム1232のシーケンスを生成するために、ユーザは3Dモデルデータ1231をレンダリングすることができる。更に、一度フレームのセットがレンダリングされると、ピクセル速度マップ1223は、レンダリングされたアニメーションフレーム1232に対するピクセル速度マップ1233を導出するために使用できる。更にまた、2D線画コンポーネント1224によって、アーティストはレンダリングされたアニメーションフレームで構成される2D線画1234を描画することができる。2D線画コンポーネント1224はまた、前又は後方向に1以上の時間ステップに亘って線画をアニメーション化するように構成することができる。シルエットコンポーネント1225は、レンダリングされたアニメーションフレーム1232に対してシルエットデータ1235を生成するように構成することができる。
【0051】
有利なことに、本発明の実施形態は、コンピュータ生成要素と手描き要素の両方を含むアニメーションのビデオフレームを制作するための方法を提供する。例えば、一実施形態は、アーティストがオブジェクトの三次元(3D)グラフィックモデルからレンダリングされたアニメーションフレームと合成するために線画を描く(又は他の2D画像データを提供する)ことを可能にするソフトウェアツールを含む。ソフトウェアツールは、下地の3Dジオメトリをレンダリングする際の変化と矛盾の無いように後続の(又は前の)フレーム内に表示するために、1つのフレームに対して提供されるそのような2D画像データをアニメーション化する方法を決定するように構成可能である。
【0052】
ソフトウェアツールは、レンダリングされたアニメーションフレーム内のキャラクター又はオブジェクトの輪郭に対応するシルエット曲線を生成するように構成することもできる。つまり、ソフトウェアツールは、3Dモデルからレンダリングされたアニメーションフレーム内のオブジェクトのエッジを追跡する2Dシルエットを導出するように構成可能である。2Dシルエット曲線に沿って点を押し出すことによって、多様なグラフィック効果がシルエットに適用可能である。更に、任意の2D画像データ又は線画を、下地の3Dモデルから生成されたピクセル速度マップを用いてアニメーション化できる。
【0053】
上記は本発明の実施形態を対象としているが、本発明の他の及び更なる実施形態は本発明の基本的範囲を逸脱することなく創作することができ、その範囲は以下の特許請求の範囲に基づいて定められる。
【特許請求の範囲】
【請求項1】
1以上のプロセッサによってレンダリングされる第1アニメーションフレームを識別するステップにおいて、前記第1アニメーションフレームは時間内の第1点で三次元(3D)モデルのオブジェクトに対応する3Dジオメトリをレンダリングするステップと、
1以上の特定の時間ステップに亘って起こる前記3Dモデルのオブジェクト上の点の変化に対する前記第1アニメーションフレーム内の1以上の座標の動的速度を示す画面空間速度マップを生成するステップを含むアニメーションフレームを処理するためのコンピュータで実行される方法。
【請求項2】
前記画面空間速度マップ内の前記1以上の座標は、前記第1アニメーションフレーム内のピクセル座標にマッピングされ、各座標の前記動的速度は、ピクセルの動きの大きさ及び方向の両方を含む請求項1記載の方法。
【請求項3】
前記画面空間速度マップの視覚的表現を生成するステップを更に含み、前記視覚的表現はある特定のカラースキームを用いてピクセルの動きの大きさ及び方向をエンコードする請求項2記載の方法。
【請求項4】
前記第1アニメーションフレームと合成する二次元(2D)画像データを取得するステップと、
前記画面空間速度マップ内の前記1以上の座標の前記動的速度にしたがって、前記特定の時間ステップに亘って2D画像データをアニメーション化するステップを更に含む請求項1記載の方法。
【請求項5】
前記1以上の時間ステップは、前記3Dジオメトリのレンダリングされたアニメーションを通って前方に移動する請求項1記載の方法。
【請求項6】
前記1以上の時間ステップは、前記3Dジオメトリのレンダリングされたアニメーションを通って後方に移動する請求項1記載の方法。
【請求項7】
プロセッサと、
アニメーションフレーム内でピクセルを評価するための操作を実行するように構成されるアプリケーションプログラムを含むメモリを含み、前記操作は、
1以上のプロセッサによってレンダリングされる第1アニメーションフレームを識別するステップにおいて、前記第1アニメーションフレームは時間内の第1点で3Dモデルのオブジェクトに対応する三次元(3D)ジオメトリをレンダリングするステップと、
1以上の特定の時間ステップに亘って起こる前記3Dモデルのオブジェクト上の点の変化に対する前記第1アニメーションフレーム内の1以上の座標の動的速度を示す画面空間速度マップを生成するステップを含むシステム。
【請求項8】
前記画面空間速度マップ内の前記1以上の座標は、前記第1アニメーションフレーム内のピクセル座標にマッピングされ、各座標の前記動的速度は、ピクセルの動きの大きさ及び方向の両方を含む請求項7記載のシステム。
【請求項9】
前記操作は、前記画面空間速度マップの視覚的表現を生成するステップを更に含み、前記視覚的表現はある特定のカラースキームを用いてピクセルの動きの大きさ及び方向をエンコードする請求項8記載のシステム。
【請求項10】
前記操作は、前記第1アニメーションフレームと合成する二次元(2D)画像データを取得するステップと、
前記画面空間速度マップ内の前記1以上の座標の前記動的速度にしたがって、前記特定の時間ステップに亘って2D画像データをアニメーション化するステップを更に含む請求項7記載のシステム。
【請求項11】
3Dグラフィックモデルのジオメトリに対して二次元(2D)シルエットを生成するためのコンピュータで実行される方法であって、
前記3Dグラフィックモデルを表現する前記ジオメトリの少なくとも一部に対して連続するサーフェスパラメタリゼーションを定義するステップであって、前記2Dサーフェスパラメタリゼーションの第1領域は前記3Dグラフィックモデルの表面の一部と交差するステップと、
1以上のフレームに亘るシルエットフィーチャーを追跡するステップを含み、
前記追跡は、
前記サーフェスパラメタリゼーションの前記第1領域上に複数の点を識別するステップと、
識別された点の各々に対して、前記サーフェスパラメタリゼーションの少なくとも1つの第2領域を決定するステップであって、各々はレンダリングカメラの視点に接する前記3Dモデルの前記表面上に接点を提供するステップと、
前記接点を接続するステップであって、これによって前記1以上の各フレーム内で前記3Dグラフィックモデルの前記表面の一部に対して2Dシルエットを定義するジオメトリを生成するステップを含む方法。
【請求項12】
前記2Dサーフェスパラメタリゼーションの前記第1領域は、前記3Dグラフィックモデルの前記表面の一部をラッピングする円筒フィーチャーとして決定される請求項11記載の方法。
【請求項13】
前記円筒フィーチャーの軸に対して概して垂直な複数の閉ループを導出するステップを更に含み、前記サーフェスパラメタリゼーションの少なくとも1つの第2領域を決定するステップは、前記レンダリングカメラの前記視点に接する前記閉ループ上に少なくとも1点を識別するステップを含む請求項12記載の方法。
【請求項14】
前記3Dグラフィックモデルの前記表面と前記レンダリングカメラの視線の両方に垂直な方向に接点を押し出し、これによって前記1以上の各フレーム内に前記3Dグラフィックモデルのエッジを追跡する2Dリボンシルエットを生成するステップを更に含む請求項11記載の方法。
【請求項15】
前記3Dグラフィックモデルの前記エッジを追跡する前記2Dリボンシルエットにグラフィック効果を適用するステップと、
前記1以上の各フレームに亘って起こる前記3Dモデルのオブジェクト上の点の変化に対する前記2Dリボンシルエット内の1以上の座標の動的速度を示す画面空間速度マップを生成するステップと、
前記画面空間速度マップ内の前記1以上の座標の前記動的速度にしたがって、前記1以上の各フレームに亘って前記2Dリボンシルエットをアニメーション化するステップを更に含む請求項14記載の方法。
【請求項1】
1以上のプロセッサによってレンダリングされる第1アニメーションフレームを識別するステップにおいて、前記第1アニメーションフレームは時間内の第1点で三次元(3D)モデルのオブジェクトに対応する3Dジオメトリをレンダリングするステップと、
1以上の特定の時間ステップに亘って起こる前記3Dモデルのオブジェクト上の点の変化に対する前記第1アニメーションフレーム内の1以上の座標の動的速度を示す画面空間速度マップを生成するステップを含むアニメーションフレームを処理するためのコンピュータで実行される方法。
【請求項2】
前記画面空間速度マップ内の前記1以上の座標は、前記第1アニメーションフレーム内のピクセル座標にマッピングされ、各座標の前記動的速度は、ピクセルの動きの大きさ及び方向の両方を含む請求項1記載の方法。
【請求項3】
前記画面空間速度マップの視覚的表現を生成するステップを更に含み、前記視覚的表現はある特定のカラースキームを用いてピクセルの動きの大きさ及び方向をエンコードする請求項2記載の方法。
【請求項4】
前記第1アニメーションフレームと合成する二次元(2D)画像データを取得するステップと、
前記画面空間速度マップ内の前記1以上の座標の前記動的速度にしたがって、前記特定の時間ステップに亘って2D画像データをアニメーション化するステップを更に含む請求項1記載の方法。
【請求項5】
前記1以上の時間ステップは、前記3Dジオメトリのレンダリングされたアニメーションを通って前方に移動する請求項1記載の方法。
【請求項6】
前記1以上の時間ステップは、前記3Dジオメトリのレンダリングされたアニメーションを通って後方に移動する請求項1記載の方法。
【請求項7】
プロセッサと、
アニメーションフレーム内でピクセルを評価するための操作を実行するように構成されるアプリケーションプログラムを含むメモリを含み、前記操作は、
1以上のプロセッサによってレンダリングされる第1アニメーションフレームを識別するステップにおいて、前記第1アニメーションフレームは時間内の第1点で3Dモデルのオブジェクトに対応する三次元(3D)ジオメトリをレンダリングするステップと、
1以上の特定の時間ステップに亘って起こる前記3Dモデルのオブジェクト上の点の変化に対する前記第1アニメーションフレーム内の1以上の座標の動的速度を示す画面空間速度マップを生成するステップを含むシステム。
【請求項8】
前記画面空間速度マップ内の前記1以上の座標は、前記第1アニメーションフレーム内のピクセル座標にマッピングされ、各座標の前記動的速度は、ピクセルの動きの大きさ及び方向の両方を含む請求項7記載のシステム。
【請求項9】
前記操作は、前記画面空間速度マップの視覚的表現を生成するステップを更に含み、前記視覚的表現はある特定のカラースキームを用いてピクセルの動きの大きさ及び方向をエンコードする請求項8記載のシステム。
【請求項10】
前記操作は、前記第1アニメーションフレームと合成する二次元(2D)画像データを取得するステップと、
前記画面空間速度マップ内の前記1以上の座標の前記動的速度にしたがって、前記特定の時間ステップに亘って2D画像データをアニメーション化するステップを更に含む請求項7記載のシステム。
【請求項11】
3Dグラフィックモデルのジオメトリに対して二次元(2D)シルエットを生成するためのコンピュータで実行される方法であって、
前記3Dグラフィックモデルを表現する前記ジオメトリの少なくとも一部に対して連続するサーフェスパラメタリゼーションを定義するステップであって、前記2Dサーフェスパラメタリゼーションの第1領域は前記3Dグラフィックモデルの表面の一部と交差するステップと、
1以上のフレームに亘るシルエットフィーチャーを追跡するステップを含み、
前記追跡は、
前記サーフェスパラメタリゼーションの前記第1領域上に複数の点を識別するステップと、
識別された点の各々に対して、前記サーフェスパラメタリゼーションの少なくとも1つの第2領域を決定するステップであって、各々はレンダリングカメラの視点に接する前記3Dモデルの前記表面上に接点を提供するステップと、
前記接点を接続するステップであって、これによって前記1以上の各フレーム内で前記3Dグラフィックモデルの前記表面の一部に対して2Dシルエットを定義するジオメトリを生成するステップを含む方法。
【請求項12】
前記2Dサーフェスパラメタリゼーションの前記第1領域は、前記3Dグラフィックモデルの前記表面の一部をラッピングする円筒フィーチャーとして決定される請求項11記載の方法。
【請求項13】
前記円筒フィーチャーの軸に対して概して垂直な複数の閉ループを導出するステップを更に含み、前記サーフェスパラメタリゼーションの少なくとも1つの第2領域を決定するステップは、前記レンダリングカメラの前記視点に接する前記閉ループ上に少なくとも1点を識別するステップを含む請求項12記載の方法。
【請求項14】
前記3Dグラフィックモデルの前記表面と前記レンダリングカメラの視線の両方に垂直な方向に接点を押し出し、これによって前記1以上の各フレーム内に前記3Dグラフィックモデルのエッジを追跡する2Dリボンシルエットを生成するステップを更に含む請求項11記載の方法。
【請求項15】
前記3Dグラフィックモデルの前記エッジを追跡する前記2Dリボンシルエットにグラフィック効果を適用するステップと、
前記1以上の各フレームに亘って起こる前記3Dモデルのオブジェクト上の点の変化に対する前記2Dリボンシルエット内の1以上の座標の動的速度を示す画面空間速度マップを生成するステップと、
前記画面空間速度マップ内の前記1以上の座標の前記動的速度にしたがって、前記1以上の各フレームに亘って前記2Dリボンシルエットをアニメーション化するステップを更に含む請求項14記載の方法。
【図1】
【図3】
【図5】
【図6】
【図8】
【図12】
【図2A】
【図2B】
【図2C】
【図4A】
【図4B】
【図7A】
【図7B】
【図9A】
【図9B】
【図10A】
【図10B】
【図11A】
【図11B】
【図3】
【図5】
【図6】
【図8】
【図12】
【図2A】
【図2B】
【図2C】
【図4A】
【図4B】
【図7A】
【図7B】
【図9A】
【図9B】
【図10A】
【図10B】
【図11A】
【図11B】
【公開番号】特開2013−61927(P2013−61927A)
【公開日】平成25年4月4日(2013.4.4)
【国際特許分類】
【外国語出願】
【出願番号】特願2012−15994(P2012−15994)
【出願日】平成24年1月27日(2012.1.27)
【出願人】(504399716)ディズニー エンタープライゼス インコーポレイテッド (73)
【Fターム(参考)】
【公開日】平成25年4月4日(2013.4.4)
【国際特許分類】
【出願番号】特願2012−15994(P2012−15994)
【出願日】平成24年1月27日(2012.1.27)
【出願人】(504399716)ディズニー エンタープライゼス インコーポレイテッド (73)
【Fターム(参考)】
[ Back to top ]