(57)【要約】【課題】遅い通信リンクを介して、アニメーションデータが迅速にダウンロードされる三次元アニメーションシステムを提供する。【解決手段】三次元キャラクタアニメーションのためのシステム及び方法は、動画化キャラクタの持続性データが、動画化を最初に開始するためにダウンロードされるので、動画化キャラクタの迅速なダウンロードを供給する。キャラクタの最初のダウンロード時間を低減させる一つ以上の振舞いファイルは、必要であればダウンロードされてもよい。本システムは、キャラクタキャッシュに持続性データを記録してもよい。振舞いファイルのサイズを小さくするために、持続性データはキャラクタの各多角形上に、キャラクタにおける各関節の動きを与えるコントリビューションを決定する、キャラクタ上の各多角形に対するモルフリンクをふくんでもよい。【選択図】図１
2010160813.tif 000002
【特許請求の範囲】
【請求項１】
アニメーション・データを使用して、動画化キャラクタを生成するためのコンピュータ実行システム（computer implemented system）であって、前記アニメーション・データは：
一つ以上の骨によって互いに接続される一つ以上の関節と、前記動画化キャラクタの前記関節及び骨を覆う皮膚を形成する複数の多角形と、及び動画化キャラクタ上の各多角形に対するモルフリンクとを具備する前記動画化キャラクタの幾何学的モデルを含む持続性データファイルであって、各モルフリンクは、前記多角形の動きが、前記一つ以上の関節の動きに基づいて決定されるように、前記多角形の動きを、前記幾何学的モデルにおける一つ以上の関節の動きに関連させることを具備する持続性データファイルと；及び
一つ以上の振舞いファイルであって、各振舞いファイルは、前記動画化キャラクタの特定の振舞いについてのデータを含み、及び振舞い中に前記動画化キャラクタにおける一つ以上の関節の位置の変化を一回以上の所定回数だけ特定し、振舞い中の前記動画化キャラクタ上の各多角形の動きは、前記振舞いファイル及び前記モルフリンクによって決定される振舞いファイルとを具備することを特徴とするコンピュータ実行システム。
【請求項２】
請求項１に記載のシステムであって、前記モルフリンクはさらに、前記多角形に影響する各関節に対する付加価値を具備し、前記多角形に影響するすべての関節に対する付加価値は、前記多角形の動きを決定するために一緒に追加されることを特徴とするシステム。
【請求項３】
請求項２に記載のシステムであって、前記幾何学的モデルの各関節はさらに、前記関節を取り囲む内部影響区域と、及び前記内部環境区域を取り囲む外部影響区域とを具備し、前記内部影響区域内の前記多角形の動きは、前記関節の動きに類似し、前記内部影響区域の外側ではあるが、前記外部影響区域の内側にある前記多角形の動きは、前記関節の動きよりも小さく、前記外部影響区域の外側の前記多角形の動きは、前記関節の動きによって影響されないことを特徴とするシステム。
【請求項４】
請求項３に記載のシステムであって、前記外部影響区域における多角形は、前記関節から遠くに配置されるにつれて、関節の動きによってより影響を受けなくなることを特徴とするシステム。
【請求項５】
アニメーション・データを使用して、動画化キャラクタを生成するコンピュータ実行システムであって、前記アニメーション・データは：
一つ以上の骨によって互いに接続される一つ以上の関節と、前記動画化キャラクタの前記関節及び骨を覆う皮膚を形成する複数の多角形と、及び動画化キャラクタ上の各多角形に対するモルフリンクとを具備する前記動画化キャラクタの幾何学的モデルを含む持続性データファイルであって、各モルフリンクは、前記多角形の動きが、前記一つ以上の関節の動きに基づいて決定されるように、前記多角形の動きを、前記幾何学的モデルにおける一つ以上の関節の動きに関連させることを具備する持続性データファイルと；及び
一つ以上の振舞いファイルであって、各振舞いファイルは、前記動画化キャラクタの特定の振舞いについてのデータを含み、及び振舞い中に前記動画化キャラクタにおける一つ以上の関節の位置の変化を一回以上の所定回数だけ特定し、振舞い中の前記動画化キャラクタ上の各多角形の動きは、前記振舞いファイル及び前記モルフリンクによって決定される前記振舞いファイルとを具備することを特徴とするコンピュータ実行システム。
【請求項６】
アニメーション・データを使用して、動画化キャラクタを生成するコンピュータ実行システムであって、前記アニメーション・データは：
前記動画化キャラクタにおける関節を含む前記動画化キャラクタについての情報を含む持続性データファイルと；及び
一つ以上の振舞いファイルであって、各振舞いファイルは前記動画化キャラクタの特定の振舞いについてのデータを含み、及び振舞い中の前記動画化キャラクタの動きを特定し、各振舞いファイルは、前記動画化キャラクタの動きについてのデータを含む振舞いオブジェクト及び前記振舞いの予め決められた部分と関連した一つ以上のデータのチャンク（chunk, かたまり）を含み、各チャンクは、前記動画化キャラクタの各関節と関連した振舞いデータを含む一つ以上のトラックを具備する前記振舞いファイルとを具備することを特徴とするコンピュータ実行システム。
【請求項７】
コンピュータ上でキャラクタを動画化するためのシステムであって、：
特定の動画化キャラクタと関連した一つ以上のデータを記録するための第一のコンピュータであって、前記データは、持続性データファイルと及び一つ以上の振舞いファイルを含み、前記振舞いファイルは、振舞いオブジェクトを具備する前記動画化キャラクタの特定の振舞いについてのデータと、及び前記振舞いの予め決められた部分に関連した一つ以上のデータのチャンクを具備する第一のコンピュータと；
通信ネットワークによって前記第一のコンピュータに接続される第二のコンピュータであって、前記第二のコンピュータはさらに、前記動画化キャラクタの動画を開始するために、前記持続性データファイルをサーバコンピュータ（server computer）から最初にダウンロード（downloading）するための手段と、及び前記第二のコンピュータによる前記動画化キャラクタの振舞いの実行の直前に、振舞いファイルを前記第一のコンピュータからダウンロードするための手段とを含み、前記振舞いのダウンロードはさらに、前記振舞いを実行するために、前記振舞いオブジェクトと、及び前記振舞いデータの第一のチャンクとを最初にダウンロードするための手段と、及び前記振舞い実行中に、前記振舞いデータの他のかたまりを非同期にダウンロードするための手段とを具備する第二のコンピュータとを具備することを特徴とするシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的には、コンピュータ画面上でコンピュータ画像を動画化するためのシステム及び方法に関し、特定的には、低帯域幅通信ネットワークを介して、オブジェクトの現実的な（realistic）三次元アニメーションを生成するためのシステム及び方法に関する。
【背景技術】
【０００２】
コンピュータ画面上で三次元オブジェクトのアニメーションを生成するための多くの異なる技術がある。本来、アニメーションはそれほど良くなかったので、動画化された図（figure）は棒の形やブロック（block）の形のように見えた。特に、ユーザは、腕を表すブロックが、前腕（forearm）を表すブロックに関連して動くのを見るであろう。問題は、ブロックを覆う皮膚がなかったので、図が非現実的に見え、生きているようには見えなかったことである。最近では、アニメーションの図は大変改良されたので、より現実的な動画化図を供給するために、図の骨を皮膚が覆ってもよい。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
いくつかの技術及びシステム、例えば映画用に三次元アニメーションを生成するために使用されるものは、とても高性能であり高価である。さらに、これらの高性能三次元アニメーションは、例えば映画の画面で消費者によって鑑賞されてもよいが、例えば、どうしても対話することはできない。特に、消費者は映画等で物語る三次元アニメーションを鑑賞してもよいが、消費者はどうしてもアニメーションと対話することができない。これらの高性能アニメーション・システムは、映画には大変有用であるが、システムの費用のために、一般大衆によって容易に使用されることはできない。
【０００４】
他のアニメーション・システム、例えば、ソフトウェア・アプリケーションを実行する専用ゲームプレイシステム（dedicated game playing systems）又はパーソナル・コンピュータ等によって、ユーザはアニメーションと対話することができる。しかしながら、これらのシステムは、現実的な三次元アニメーションを製作するために、アニメーションデータを記録するための大量のメモリ、及びかなり最新式のプロセッサ又はグラフィック・プロセッサを必要とする。専用ゲームプレイシステムの問題は、それが他のコンピュータ関連のタスクのために使用されることができないことであり、それゆにそれらが実行する限定的機能のために、比較的高価である。ほとんどのパーソナル・コンピュータの問題は、パーソナルコンピュータは、アニメーションを製作するために最適化されておらず、それゆえに、通常高価なグラフィック・コプロセッサ（co-processor）及び音声ボード（sound board）を必要とすることである。上述の従来のアニメーション・システムにおいては、ユーザは、ゲームのプレイ中、アニメーションと対話してもよいが、グラフィック及びアニメーションを有するゲーム全体は、カートリッジ又はハードディスク又はパーソナル・コンピュータのＣＤに記録される。
【０００５】
最近では、アニメーション・データをユーザと通信させるために、インターネット又はワールド・ワイド・ウェブ（ＷＷＷ）（ウェブ）を利用する多くのアニメーション・システムが導入されている。特に、ユーザは、ブラウザ・ソフトウェア・アプリケーションを実行しているパーソナル・コンピュータを使用してもよい。ユーザは、ウェブサイトの特定のＵＲＬに、前記ウェブサイトからアニメーション・データをダウンロードしてもよいブラウザ・アプリケーションを送ってもよい。問題は、ウェブサイトは通常、アニメーション・データ全体をダウンロードするので、ダウンロードされたアニメーション・データの総量が大きくなることである。この種類のアニメーション・システムの一例は、仮想現実マーク付け言語（VRML, virtual reality markup language）プロトコルを使用する。遅い通信リンク、例えばインターネット又はウェブ及びモデムを有するユーザにとって、大量のアニメーション・データは、大変遅いダウンロードを招く。さらに遅いダウンロード時間は、アニメーションを鑑賞する前に、消費者を長時間待たせることになる。人々は、待ち時間の間に飽きてしまい、アニメーションを取り消し、そしてアニメーションが表示されるのを見ることがなくなってしまうので、アニメーションの前の長い待ち時間は、受け入れ難い。しかしながら、大変遅い通信リンクを介して、アニメーション・データが迅速にダウンロードされる三次元アニメーション・システムが供給されることが望ましく、これが、本発明が向かう目的である。
【課題を解決するための手段】
【０００６】
本発明の上記課題は、コンピュータ上でキャラクタを動画化するためのシステムであって、特定の動画化キャラクタと関連した一つ以上のデータを記録するための第一のコンピュータで、前記データは、前記動画化キャラクタの幾何学的モデルと、前記動画化キャラクタと関連したテクスチャと及び前記動画化キャラクタと関連した音声のうちの一つ以上を具備する持久性データファイルを含み、前記データはさらに一つ以上の振舞いファイルを具備し、各振舞いファイルは前記動画化キャラクタの特定の振舞いについてのデータを具備し、各振舞いは前記モデルの動きを特定する前記第一のコンピュータと；及び通信ネットワークによって前記第一のコンピュータに接続される第二のコンピュータで、前記動画化キャラクタのアニメーションを開始するために、前記持続性データファイルをサーバ・コンピュータから最初にダウンロードするための手段と、及び前記第二のコンピュータによる前記動画化キャラクタの振舞いの実行の直前に、振舞いファイルを前記第一のコンピュータから非同期にダウンロードするための手段とを含む前記第二のコンピュータとを具備するシステムによって達成される。
【０００７】
本発明のシステムでは、持続性データはさらに、動画化キャラクタに対するアイドル（idle）振舞いを具備し、アイドル振舞いは、第二のコンピュータによって動画化キャラクタのために実行される振舞いが他にない場合に、実行されるように構成してもよい。
【０００８】
本発明のシステムでは、第二のコンピュータがさらに、アニメーションは完了した後に、持続性データがまだ第二のコンピュータに存在するように、動画化キャラクタについての持続性データを記録するキャラクタ・キャッシュ（character cache）を含む持続性記録装置を具備するように構成してもよい。
【０００９】
本発明のシステムでは、幾何学的モデルはさらに、一つ以上の骨で互いに接続されている一つ以上の関節並びに前記関節及び骨の覆う皮膚を形成している複数の多角形を具備し、及び持続性データはさらに、動画化キャラクタ上で各多角形のためのモルフリンクを具備し、モルフリンクは、多角形の動きが、一つ以上の関節の動きに基づいて決定されるように、幾何学的モデルにおける一つ以上の関節の動きに、多角形の動きを関連させることを具備するように構成してもよい。
【００１０】
本発明のシステムでは、モルフリンクはさらに、多角形に影響する各関節に対するコントリビューション値を具備し、多角形に影響する関節のすべてに対するコントリビューション値は、多角形の動きを決定するために、一緒に加えられるように構成してもよい。
【００１１】
本発明のシステムでは、幾何学的モデルにおける各関節はさらに、前記関節を取り囲む内部影響区域及び内部影響区域を取り囲む外部影響区域を具備し、内部影響区域内の多角形の動きは、関節の動きに類似し、内部影響区域の外側ではあるが、外部影響区域の内側にある多角形の動きは、関節の動きより小さく、外部影響区域の外側の多角形の動きは、関節の動きに影響されないように構成してもよい。
【００１２】
本発明のシステムでは、外部影響区域における多角形は、関節から遠くに配置されるにつれて、関節の動きによってより影響を受けなくなるように構成してもよい。
【００１３】
本発明のシステムでは、持続性データはさらに、動画化キャラクタのための照明環境地図を具備し、照明環境地図は、動画化キャラクタ上の特定の位置における各多角形への照明が、球上の対応する位置から探せるように、球の表面に照らし出された照明モデルを具備するように構成してもよい。
【００１４】
本発明のシステムでは、幾何学的モデルは、動画化キャラクタの各関節を表すオブジェクト（object）を具備し、及び振舞いファイルは、特定の振舞いの間の各関節の動きについてのデータを具備する各関節に対するオブジェクトを具備し、動画化キャラクタの多角形は、振舞いファイル及びモルフリンクに基づいて動くように構成してもよい。
【００１５】
本発明のシステムでは、振舞いファイルはさらに、振舞いの間の一つ以上のキー期間を含み、各関節は各キー期間中に動くことができるように構成してもよい。
【００１６】
本発明のシステムでは、振舞いファイルはさらに、振舞いと関連した音声トラックを具備し、音声トラックは一つ以上のキー期間と同期をとるように構成してもよい。
【００１７】
本発明のシステムでは、振舞いファイルはさらに、動画化キャラクタと関連した複数の個別の振舞いと、及び予め決められた入力に基づいた、動画化キャラクタのために実行される個別の振舞いの一つを選択するための手段とを具備するように構成してもよい。
【００１８】
本発明のシステムでは、各振舞いファイルはさらに、ストリーミング振舞いについての振舞いデータを具備するストリーム・ファイル（stream file）を具備し、及びストリーム・ファイル全体が第二のコンピュータにダウンロードされる前に、ストリーム・ファイルに関連した振舞いが実行されるように、第二のコンピュータはさらに、ストリーム・ファイルを、第一のコンピュータからストリームさせるための手段を具備することを特徴とするシステム。
【００１９】
本発明のシステムでは、ストリーミング手段はさらに、振舞いが選択される場合に、振舞いオブジェクト及びストリーム・ファイルの予め決められた部分をダウンロードする手段と、及び振舞いが実行中には、ストリーム・ファイルの１つ以上の他の予め決められた部分をダウンロードするための手段とを具備するように構成してもよい。
【００２０】
本発明のシステムでは、ストリーミング手段はさらに、ダウンロードされる振舞いデータが、予め決められた秒数以上に実行中の振舞いデータの先である場合に、ストリーム・ファイルのダウンロードを停止させるための手段を具備するように構成してもよい。
【００２１】
また、本発明の上記課題は、コンピュータ上でキャラクタを動画化するための方法であって、第一のコンピュータ上の特定の動画化キャラクタと関連した一つ以上のデータを記録することであって、データは動画化キャラクタの幾何学的モデルと、動画化キャラクタと関連するテクスチャと、及び動画化キャラクタと関連した音声のうちの一つ以上を含む持続性データ含み、データはさらに、１つ以上の振舞いファイルを具備し、各振舞いファイルは、動画化キャラクタの特定の振舞いについてのデータを具備し、各振舞いは前記モデルの動きを特定し；動画化キャラクタのアニメーションが第二のコンピュータ上で開始するように、持続性データファイルを、第一のコンピュータから第二のコンピュータへ、通信ネットワークを介して最初にダウンロードし；及び第二のコンピュータによる動画化キャラクタの振舞いの実行の直前に、振舞いファイルを第一のコンピュータから第二のコンピュータへ非同期にダウンロードする段階とを具備する方法によって達成される。
【００２２】
本発明の方法では、持続性データはさらに、動画化キャラクタに対するアイドル振舞いを具備し、アイドル振舞いは、第二のコンピュータによって動画化キャラクタのために実行される振舞いが他にない場合に、実行されるように構成してもよい。
【００２３】
本発明の方法では、さらにアニメーションが完了した後に、持続性データがまた第二のコンピュータに存在するように、持続性記録装置を使用して、持続性データを第二のコンピュータに記録する段階を具備するように構成してもよい。
【００２４】
本発明の方法では、幾何学的モデルはさらに、一つ以上の骨によって互いに接続される一つ以上の関節並びに関節及び骨を覆う皮膚を形成する複数の多角形を具備し、及び持続性データはさらに、動画化キャラクタ上の各多角形に対するモルフリンクを具備し、各モルフリンクは、多角形の動きが、一つ以上の関節の動きに基づいて決定されるように、多角形の動きを幾何学的モデルにおける一つ以上の関節の動きに関連させるように構成してもよい。
【００２５】
本発明の方法では、モルフリンクはさらに、多角形に影響する各関節に対する付加価値を具備し、多角形に影響するすべての関節に対する付加価値は、多角形の動きを決定するために一緒に追加されるように構成してもよい。
【００２６】
本発明の方法では、幾何学的モデルの各関節はさらに、関節を取り囲む内部影響区域と、及び内部環境区域を取り囲む外部影響区域とを具備し、内部影響区域内の多角形の動きは、関節の動きに類似し、内部影響区域の外側ではあるが、外部影響区域の内側にある多角形の動きは、関節の動きよりも小さく、外部影響区域の外側の多角形の動きは、関節の動きによって影響されないように構成してもよい。
【００２７】
本発明の方法では、外部影響区域における多角形は、関節から遠くに配置されるにつれて、関節の動きによってより影響を受けなくなるように構成してもよい。
【００２８】
本発明の方法では、持続性データはさらに、動画化キャラクタのための照明環境地図を具備し、照明環境地図は、動画化キャラクタ上の特定の位置における各多角形への照明が、球上の対応する位置から探せるように、球の表面に照らし出された照明モデルを具備するように構成してもよい。
【００２９】
本発明の方法では、幾何学的モデルは、動画化キャラクタの各関節を表すオブジェクト（object）を具備し、及び振舞いファイルは、特定の振舞いの間の各関節の動きについてのデータを具備する各関節に対するオブジェクトを具備し、動画化キャラクタの多角形は、振舞いファイル及びモルフリンクに基づいて動くように構成してもよい。
【００３０】
本発明の方法では、振舞いファイルはさらに、振舞いの間の一つ以上のキー期間を含み、各関節は各キー期間中に動くことができるように構成してもよい。
【００３１】
本発明の方法では、振舞いファイルはさらに、振舞いと関連した音声トラックを具備し、音声トラックは１つ以上のキー期間と同期をとるように構成してもよい。
【００３２】
本発明の方法では、振舞いファイルはさらに、動画化キャラクタと関連した複数の個別の振舞いと、及び予め決められた入力に基づいた、動画化キャラクタのために実行される個別の振舞いの一つを選択するための段階とを具備するように構成してもよい。
【００３３】
本発明の方法では、各振舞いファイルはさらに、ストリーミング振舞い（streaming behavior）についての振舞いデータを具備するストリーム・ファイル（stream file）を具備し、及びストリーム・ファイル全体が第二のコンピュータにダウンロードされる前に、ストリーム・ファイルに関連した振舞いが実行されるように、さらにストリーム・ファイルを、第一のコンピュータからストリームさせる段階を具備するように構成してもよい。
【００３４】
本発明の方法では、ストリーミング段階はさらに、振舞いが選択される場合に、振舞いオブジェクト及びストリーム・ファイルの予め決められた部分をダウンロードし、及び、振舞いが実行中には、ストリーム・ファイルの１つ以上の他の予め決められた部分をダウンロードする段階とを具備するように構成してもよい。
【００３５】
本発明の方法では、ストリーミング段階はさらに、ダウンロードされる振舞いデータが、予め決められた秒数以上に実行中の振舞いデータの先である場合に、ストリーム・ファイルのダウンロードを停止させる段階を具備するように構成してもよい。
【００３６】
また、本発明の上記課題は、他の遠隔コンピュータに具備されたアニメーション・データに基づいて、コンピュータ上のキャラクタを動画化するための装置であって、遠隔コンピュータからアニメーション・データをダウンロードするために、遠隔コンピュータと通信するための手段であって、アニメーション・データは動画化キャラクタの幾何学的モデルと、動画化キャラクタと関連したテクスチャと、及び動画化キャラクタと関連した音声のうちの一つ以上を含む持続性データ・ファイルを具備し、データはさらに、一つ以上の振舞いファイルを具備し、各振舞いファイルは、動画化キャラクタの特定の振舞いについてのデータを含み、各振舞いはモデルの動きを特定する前記手段と；コンピュータ上で、動画化キャラクタのアニメーションを開始するために、持続性データ・ファイルを遠隔コンピュータから最初にダウンロードするための手段と；及びコンピュータによる動画化キャラクタの振舞いの実行の直前に、振舞いファイルを遠隔コンピュータから非同期でダウンロードするための手段とを具備するように構成してもよい。
【００３７】
本発明の装置では、持続性データはさらに、動画化キャラクタのアイドル振舞いを具備し、アイドル振舞いは、第二のコンピュータによって動画化キャラクタのために実行される振舞いが他にない場合に、実行されるように構成してもよい。
【００３８】
本発明の装置では、アニメーションが完了した後に、持続性データがまだコンピュータに存在するように、コンピュータはさらに、動画化キャラクタについての持続性データを記録するキャラクタ・キャッシュを含む持続性記録装置を具備するように構成してもよい。
【００３９】
本発明の装置では、幾何学的モデルはさらに、１つ以上の骨によって互いに接続される一つ以上の関節並びに関節及び骨を覆う皮膚を形成する複数の多角形を具備し、及び持続性データはさらに、動画化キャラクタ上の各多角形に対するモルフリンクを具備し、各モルフリンクは、多角形の動きが、一つ以上の関節の動きに基づいて決定されるように、多角形の動きを、幾何学的モデルにおける一つ以上の関節の動きに関連させるように構成してもよい。
【００４０】
本発明の装置では、モルフリンクはさらに、多角形に影響する各関節に対する付加価値を具備し、多角形に影響するすべての関節に対する付加価値は、多角形の動きを決定するために一緒に追加されるように構成してもよい。
【００４１】
本発明の装置では、幾何学的モデルの各関節はさらに、関節を取り囲む内部影響区域と、及び内部環境区域を取り囲む外部影響区域とを具備し、内部影響区域内の多角形の動きは、関節の動きに類似し、内部影響区域の外側ではあるが、外部影響区域の内側にある多角形の動きは、関節の動きよりも小さく、外部影響区域の外側の多角形の動きは、関節の動きによって影響されないように構成してもよい。
【００４２】
本発明の装置では、外部影響区域における多角形は、関節から遠くに配置されるにつれて、関節の動きによってより影響を受けなくなるように構成してもよい。
【００４３】
本発明の装置では、持続性データはさらに、動画化キャラクタのための照明環境地図を具備し、照明環境地図は、動画化キャラクタ上の特定の位置における各多角形への照明が、球上の対応する位置から探せるように、球の表面に照らし出された照明モデルを具備するように構成してもよい。
【００４４】
本発明の装置では、幾何学的モデルは、動画化キャラクタの各関節を表すオブジェクト（object）を具備し、及び振舞いファイルは、特定の振舞いの間の各関節の動きについてのデータを具備する各関節に対するオブジェクトを具備し、動画化キャラクタの多角形は、振舞いファイル及びモルフリンクに基づいて動くように構成してもよい。
【００４５】
本発明の装置では、振舞いファイルはさらに、振舞いの間の一つ以上のキー期間を含み、各関節は各キー期間中に動くように構成してもよい。
【００４６】
本発明の装置では、振舞いファイルはさらに、振舞いと関連した音声トラックを具備し、音声トラックは１つ以上のキー期間と同期をとるように構成してもよい。
【００４７】
本発明の装置では、振舞いファイルはさらに、動画化キャラクタと関連した複数の個別の振舞いと、及び予め決められた入力に基づいた、動画化キャラクタのために実行される個別の振舞いの一つを選択するための段階とを具備するように構成してもよい。
【００４８】
本発明の装置では、各振舞いファイルはさらに、ストリーミング振舞いについての振舞いデータを具備するストリーム・ファイルを具備し、及びストリーム・ファイル全体が第二のコンピュータにダウンロードされる前に、ストリーム・ファイルに関したる振舞いが実行されるように、第二のコンピュータはさらに、ストリーム・ファイルを、第一のコンピュータからストリームさせるための手段を具備するように構成してもよい。
【００４９】
本発明の装置では、ストリーミング手段はさらに、振舞いが選択される場合に、振舞いオブジェクト及びストリーム・ファイルの予め決められた部分をダウンロードする手段と、及び振舞いが実行中には、ストリーム・ファイルの１つ以上の他のあらかじめ決められた部分をダウンロードするための手段を具備するように構成してもよい。
【００５０】
本発明の装置であって、ストリーミング手段はさらに、ダウンロードされる振舞いデータが、予め決められた秒数以上に実行中の振舞いデータの先である場合に、ストリーム・ファイルのダウンロードを停止させるための手段を具備するように構成してもよい。
【００５１】
また、本発明の上記課題は、遠隔コンピュータ上でキャラクタを動画化するために、サーバ・コンピュータに接続された遠隔コンピュータに、アニメーション・ファイルをダウンロードするためのサーバ・コンピュータであって、特定の動画化キャラクタと関連した一つ以上のアニメーション・データを記録するための手段で、アニメーション・データは、動画化キャラクタの幾何学的モデルと、動画化キャラクタと関連したテクスチャと及び動画化キャラクタと関連した音声のうちの一つ以上を具備する持久性データファイルを具備し、データはさらに一つ以上の振舞いファイルを具備し、各振舞いファイルは動画化キャラクタの特定の振舞いについてのデータを具備し、各振舞いはモデルの動きを特定する手段と；及び遠隔コンピュータによる要求に応答して、遠隔コンピュータ上で動画化キャラクタのアニメーションを開始するために、持続性データ・ファイルを遠隔コンピュータに最初にダウンロードするための手段と；及び遠隔コンピュータによる要求に応答して、遠隔コンピュータによる動画化キャラクタの振舞いの実行の直前に、振舞いファイルを遠隔コンピュータに非同期でダウンロードするための手段とを具備するサーバによって達成される。
【００５２】
本発明のサーバでは、持続性データはさらに、動画化キャラクタに対するアイドル振舞いを具備し、アイドル振舞いは、第二のコンピュータによって動画化キャラクタのために実行される振舞いが他にない場合に、実行されるように構成してもよい。
【００５３】
本発明のサーバでは、アニメーションが完了した後に、持続性データがまだ第二のコンピュータに存在するように、第二のコンピュータはさらに、動画化キャラクタについての持続性データを記録するキャラクタ・キャッシュを含む持続性記録装置を具備するように構成してもよい。
【００５４】
本発明のサーバでは、幾何学的モデルはさらに、１つ以上の骨によって互いに接続される一つ以上の関節並びに関節及び骨を覆う皮膚を形成する複数の多角形を具備し、及び持続性データはさらに、動画化キャラクタ上の各多角形に対するモルフリンクを具備し、各モルフリンクは、多角形の動きが、一つ以上の関節の動きに基づいて決定されるように、多角形の動きを、幾何学的モデルにおける一つ以上の関節の動きに関連させるように構成してもよい。
【００５５】
本発明のサーバでは、モルフリンクはさらに、多角形に影響する各関節に対する付加価値を具備し、多角形に影響するすべての関節に対する付加価値は、多角形の動きを決定するために一緒に追加されるように構成してもよい。
【００５６】
本発明のサーバでは、幾何学的モデルの各関節はさらに、関節を取り囲む内部影響区域と、及び内部環境区域を取り囲む外部影響区域とを具備し、内部影響区域内の多角形の動きは、関節の動きに類似し、内部影響区域の外側ではあるが、外部影響区域の内側にある多角形の動きは、関節の動きよりも小さく、外部影響区域の外側の多角形の動きは、関節の動きによって影響されないように構成してもよい。
【００５７】
本発明のサーバでは、外部影響区域における多角形は、関節から遠くに配置されるにつれて、関節の動きによってより影響を受けなくなるように構成してもよい。
【００５８】
本発明のサーバでは、持続性データはさらに、動画化キャラクタのための照明環境地図を具備し、照明環境地図は、動画化キャラクタ上の特定の位置における各多角形への照明が、球上の対応する位置から探せるように、球の表面に照らし出された照明モデルを具備するように構成してもよい。
【００５９】
本発明のサーバでは、幾何学的モデルは、動画化キャラクタの各関節を表すオブジェクトを具備し、及び振舞いファイルは、特定の振舞いの間の各関節の動きについてのデータを具備する各関節に対するオブジェクトを具備し、動画化キャラクタの多角形は、振舞いファイル及びモルフリンクに基づいて動くように構成してもよい。
【００６０】
本発明のサーバでは、振舞いファイルはさらに、振舞いの間の一つ以上のキー期間を含み、各関節は各キー期間中に動くことができるように構成してもよい。
【００６１】
本発明のサーバでは、振舞いファイルはさらに、振舞いと関連した音声トラックを具備し、音声トラックは１つ以上のキー期間と同期をとるように構成してもよい。
【００６２】
本発明のサーバでは、振舞いファイルはさらに、動画化キャラクタと関連した複数の個別の振舞いと、及び予め決められた入力に基づいた、動画化キャラクタのために実行される個別の振舞いの一つを選択するための段階とを具備するように構成してもよい。
【００６３】
また、本発明の上記課題は、アニメーション・データを使用して、動画化キャラクタを生成するためのコンピュータ実行システムであって、前記アニメーション・データは、一つ以上の骨によって互いに接続される一つ以上の関節と、動画化キャラクタの関節及び骨を覆う皮膚を形成する複数の多角形と、及び動画化キャラクタ上の各多角形に対するモルフリンクとを具備する動画化キャラクタの幾何学的モデルを含む持続性データファイルであって、各モルフリンクは、多角形の動きが、一つ以上の関節の動きに基づいて決定されるように、多角形の動きを、幾何学的モデルにおける１つ以上の関節の動きに関連させることを具備する持続性データファイルと；及び一つ以上の振舞いファイルであって、各振舞いファイルは、動画化キャラクタの特定の振舞いについてのデータを含み、及び振舞い中に動画化キャラクタにおける一つ以上の関節の動きを特定し、振舞い中の動画化キャラクタ上の多角形の動きは、振舞いファイル及びモルフリンクによって決定される振舞いファイルとを具備するシステムによって達成される。
【００６４】
本発明のシステムでは、モルフリンクはさらに、多角形に影響する各関節に対する付加価値を具備し、多角形に影響するすべての関節に対する付加価値は、多角形の動きを決定するために一緒に追加されるように構成してもよい。
【００６５】
本発明のシステムでは、幾何学的モデルの各関節はさらに、関節を取り囲む内部影響区域と、及び内部環境区域を取り囲む外部影響区域とを具備し、内部影響区域内の多角形の動きは、関節の動きに類似し、内部影響区域の外側ではあるが、外部影響区域の内側にある多角形の動きは、関節の動きよりも小さく、外部影響区域の外側の多角形の動きは、関節の動きによって影響されないように構成してもよい。
【００６６】
本発明のシステムでは、外部影響区域における多角形は、関節から遠くに配置されるにつれて、関節の動きによってより影響を受けなくなるように構成してもよい。
【００６７】
また、本発明の上記課題は、アニメーション・データを使用して、動画化キャラクタを生成するコンピュータ実行システムであって、前記アニメーション・データは、一つ以上の骨によって互いに接続される一つ以上の関節と、動画化キャラクタの関節及び骨を覆う皮膚を形成する複数の多角形と、及び動画化キャラクタ上の各多角形に対するモルフリンクとを具備する動画化キャラクタの幾何学的モデルを含む持続性データファイルであって、各モルフリンクは、多角形の動きが、一つ以上の関節の動きに基づいて決定されるように、多角形の動きを、幾何学的モデルにおける１つ以上の関節の動きに関連させることを具備する持続性データファイルと；及び一つ以上の振舞いファイルであって、各振舞いファイルは、動画化キャラクタの特定の振舞いについてのデータを含み、及び振舞い中に動画化キャラクタにおける一つ以上の関節の動きを特定し、振舞い中の動画化キャラクタ上の多角形の動きは、振舞いファイル及び前記モルフリンクによって決定される振舞いファイルとを具備するシステムによって達成される。
【００６８】
また、本発明の上記課題は、アニメーション・データを使用して、動画化キャラクタを生成するコンピュータ実行システムであって、前記アニメーション・データは、動画化キャラクタにおける関節を含む動画化キャラクタについての情報を含む持続性データファイルと；及び一つ以上の振舞いファイルであって、各振舞いファイルは動画化キャラクタの特定の振舞いについてのデータを含み、及び振舞い中の動画化キャラクタの動きを特定し、各振舞いファイルは、動画化キャラクタの動きについてのデータを含む振舞いオブジェクト及び振舞いの予め決められた部分と関連した一つ以上のデータのチャンクを含み、各チャンクは、動画化キャラクタの各関節と関連した振舞いデータを含む一つ以上のトラックを具備する振舞いファイルとを具備するシステムによって達成される。
【００６９】
また、本発明の上記課題は、コンピュータ上でキャラクタを動画化するためのシステムであって、特定の動画化キャラクタと関連した一つ以上のデータを記録するための第一のコンピュータであって、データは、持続性データファイルと及び一つ以上の振舞いファイルを含み、振舞いファイルは、振舞いオブジェクトを具備する動画化キャラクタの特定の振舞いについてのデータと、及び振舞いの予め決められた部分に関連した一つ以上のデータのチャンクを具備する第一のコンピュータと；通信ネットワークによって第一のコンピュータに接続される第二のコンピュータであって、第二のコンピュータはさらに、動画化キャラクタの動画を開始するために、持続性データファイルをサーバ・コンピュータから最初にダウンロードするための手段と、及び第二のコンピュータによる動画化キャラクタの振舞いの実行の直前に、振舞いファイルを前記第一のコンピュータからダウンロードするための手段とを含み、振舞いのダウンロードはさらに、振舞いを実行するために、振舞いオブジェクトと、及び振舞いデータの第一のチャンクとを最初にダウンロードするための手段と、及び振舞い実行中に、振舞いデータの他のチャンクを非同期にダウンロードするための手段とを具備する第二のコンピュータとを具備するシステムによって達成される。
【図面の簡単な説明】
【００７０】
【図１】本発明に従って三次元アニメーション・システムを示したブロック図である。
【図２】本発明に従って三次元キャラクタファイルをダウンロードするための方法を示したフローチャートである。
【図３】本発明に従ってオブジェクト階層の一例を示したダイアグラム図である。
【図４Ａ】本発明に従って三次元オブジェクトの一例を示したダイアグラム図である。
【図４Ｂ】本発明に従って三次元オブジェクトの一例を示したダイアグラム図である。
【図５】関節の連結方法（articulation）を示したダイアグラム図である。
【図６】本発明に従ってモルフリンクを示したダイアグラム図である。
【図７】本発明に従って関節の影響区域の一例を示したダイアグラム図である。
【図８Ａ】本発明に従ってモデルの中の骨の一例を示したダイアグラム図である。
【図８Ｂ】本発明に従ってモデルの中の骨の一例を示したダイアグラム図である。
【図９】本発明に従って骨及び多角形を有するモデルの一例を示したダイアグラム図である。
【図１０】本発明に従って骨及び多角形を有するモデルの一例を示したダイアグラム図である。
【図１１】本発明に従ってレンダリングされた、照明を当てられていないモデルの一例を示したダイアグラム図である。
【図１２】本発明に従ってレンダリングされた、照明を当てられたモデルの一例を示したダイアグラム図である。
【図１３】本発明に従って環境地図照明モデルの一例を示したダイアグラム図である。
【図１４】図１１及び１２に記載のレンダリングされたモデルの一例を示したダイアグラム図である。
【図１５】本発明に従って脚のモデルにおける骨を示したダイアグラム図である。
【図１６】本発明に従って脚のモデルにおける骨を示したダイアグラム図である。
【図１７】各関節に対する影響区域を示す図１５及び１６に記載の脚を示したダイアグラム図である。
【図１８】本発明に従って振舞いの一例を示したダイアグラム図である。
【図１９Ａ】本発明に従って振舞いの他の一例を示したダイアグラム図である。
【図１９Ｂ】本発明に従って振舞いの他の一例を示したダイアグラム図である。
【図１９Ｃ】本発明に従って振舞いの他の一例を示したダイアグラム図である。
【図２０】本発明に従って振舞いをストリームするための方法を示したフローチャートである。
【図２１】本発明に従って振舞いをストリームする詳細を示したダイアグラム図である。
【図２２】図２１に記載の振舞いをストリームするさらなる詳細を示したダイアグラム図である。
【図２３】本発明に従ってストリームされた振舞いの一部を示したダイアグラム図である。
【図２４】本発明に従ってプレーヤのオペレーションを示したフローチャートである。
【図２５】本発明に従ってプレーヤのオペレーションを示したフローチャートである。
【発明を実施するための形態】
【００７１】
本発明は、アニメーション・データが比較的遅い通信リンク、例えばインターネット又はウェブ及びモデムを介して、比較的短時間でローカル・コンピュータにダウンロードされてもよい三次元アニメーション・システム及び方法を供給する。前記ローカル・コンピュータは、オブジェクトを動画化するためにダウンロードされたソフトウェア・アプリケーションを実行してもよい。前記ローカル・コンピュータのユーザは、動画化オブジェクトと対話し（すなわち、その振舞い又は動作を変更し）てもよい。好ましい実施例においては、前記システムの主部は、複数のソフトウェア・アプリケーションとしてウェブ・サーバ上に存在してもよく、及びクライアント・コンピュータ（client computer）は、アニメーションをダウンロードするために、ウェブ・サーバにアクセスしてもよい。より短いダウンロード時間を達成するために、前記システムは、実際のオブジェクトについてのデータ（例えば持続性データ）及び前記オブジェクトのいくつかの基本動作についてのデータ（例えば振舞いデータ）を含む初期アニメーション・ダウンロード・パッケージ（initial animation download package）を生成してもよい。例えば、各ダウンロードされたオブジェクトは、それと関連した、オブジェクトが他の振舞いを実行させられない場合はいつでも実行されるアイドル振舞いを具備してもよい。オブジェクトに対する追加動作又は振舞い又は音声トラックが要求されると、前記システムは、振舞いが非同期にダウンロードされるように、動作が要求される前に振舞いデータをクライアント・コンピュータにストリームしてもよい（すなわち、三次元動画化オブジェクトに対する振舞いは、三次元動画化オブジェクトがダウンロードされるのと同時にダウンロードされる必要はない）。この方法によって、他の必要ない動作又は振舞いがダウンロードされている間にも、クライアント・コンピュータは、より迅速にアニメーションを開始してもよい。例えば、動画化オブジェクトが景色の中を動くと、前記オブジェクトは、必要な場合に動作が使用できるように、クライアント・コンピュータに迅速にダウンロードされる必要がある動作を生じさせる文字枠（bounding box）を横切って（cross）もよい。特定のオブジェクトに対する一つ以上の振舞い又は動作ファイルは、特定の振舞い、及び振舞いを実行するために必要な他のあらゆるデータに対応するオブジェクトにおける関節の動きについての情報を含んでもよい。例えば、うなずく（head nod）振舞いは、首の関節の動きを伴ってもよい。他の例として、オブジェクトに対する音声トラック、例えば「こんにちは」と言うことは、唇の様々な動き及び唇の動きに同期をとる音声トラックに伴ってもよい。
【００７２】
本発明に従って、クライアント・コンピュータにダウンロードされる各振舞いの合計サイズも比較的小さいので、比較的遅い通信リンクを介した振舞いのダウンロード時間は、それほど遅くない。各振舞いのサイズを低減させるためには、クライアント・コンピュータにダウンロードされる初期オブジェクトは、オブジェクトの各部についてのデータを含むオブジェクト・ツリーを含んでもよい。例えば、ある人は脚オブジェクトを含むだろう。そして、前記オブジェクト上の皮膚の各部（例えば各多角形）は、オブジェクトにおける各関節、例えば膝又は足首を列挙するコントリビューション・チャート（contribution chart）及び、各関節の動きが特定の多角形の動き与えるコントリビューションを含んでもよい。例えば、膝関節の近くの多角形は、膝の動きによって通常最も影響を受けるであろう一方で、膝と足首の中間の多角形は、足首及び膝の両方の動きによって影響を受けるであろう。このように、振舞いがオブジェクトの膝に動くように命令する場合、クライアント・コンピュータは、オブジェクトのモデル及び関節の動きに基づいて、各特定の多角形に対する動きを簡単に決定してもよい。このように、モデルの皮膚の各部分の動きは、関節の動きに基づいてモデルによって決定されてもよいので、ダウンロードされたあらゆる振舞いに対して、オブジェクトにおける関節の動きのみが、ダウンロードされた振舞いファイルにおいて特定される必要がある。このように、モデルが１２の関節及び６０００の多角形を有する場合、ダウンロードされたファイルは１２の関節の動きについてのデータを含んでもよい一方で、振舞いは、モデル上の６０００の多角形が動くようにしてもよい。
【００７３】
本発明に従って、前記システムは、ダウンロードされた振舞いが、ユーザのコンピュータ上に存在するプレーヤ・アプリケーション（player application）にストリームされるようにもする。特に、振舞い全体がダウンロードされる前に、前記振舞いはプレーヤ・アプリケーション上で実行を開始する。例えば、振舞いが５分間である場合、プレーヤ・アプリケーションのユーザは、振舞いがダウンロードされる五分間を待たないであろう。それゆえに、本発明に従って本システムは、振舞いが振舞いデータの第一の予め決められた部分を実行し始める一方で、振舞いデータの第二の及びそれに続く部分がダウンロードされるように、予め決められた量の振舞い（例えば２秒分の振舞いデータ）を一度にダウンロードする。このようにプレーヤ・アプリケーションにダウンロードされている長い振舞いは、動画化キャラクタの振舞いが開始されるのを妨げない。
【００７４】
また本システムにより、ユーザは一つ以上の動作及び動作又は振舞いを含むスクリプトを使用して、様々な異なる方法で動画化オブジェクトと対話することができるようにしてもよい。オブジェクトとの各対話に対して、前記対話と関連する動作又は振舞いがあってもよい。例えば、ユーザが、ユーザに表示されている動画化ドアをクリックする場合、ドアを開け、きしむ音声トラックとともにドアがゆっくり開いていく様子を示す振舞いが、クライアント・コンピュータにダウンロードされ、実行されてもよい。クライアント・コンピュータにおいて、ユーザは、ドアがゆっくりと開くのを見て、ドアが開く時にきしむ音を聞いてもよい。他の例では、ユーザがオブジェクト、例えば灰色のナイフの上のカーソル（cursor）をドラグする（drag）場合、ユーザがカーソルをその上に置く場合にナイフが赤くなるように、ナイフを赤くするための振舞いがダウンロードされ、及び実行されるであろう。ユーザがナイフからカーソルをどかせた場合、ナイフは灰色になるようなアイドル振舞いに戻る。
【００７５】
照明モデルを使用して動画化オブジェクトに陰をつけるために、本発明は球形の環境地図（spherical environmental map）を使用する。特に、特定の照明条件から生まれる画素は、半球に対して決定され、オブジェクトに対応する照明は、前記半球における画素に基づいて決定される。オブジェクトの各画素に対して、クライアント・コンピュータは前記半球における対応する点を探し、及び前記半球の該部分における画素値をオブジェクトに適用するように、前記半球に対する照明モデルは、クライアント・コンピュータにダウンロードされてもよい。このように、本発明に従って、本システムは、オブジェクトに対する照明をリアルタイムで算出しようと試みない。本システムは、キャラクタ・データが絶えず更新される必要がないように、キャラクタ・データをクライアント・コンピュータに記録されるようにするクライアント・コンピュータにおけるキャラクタ・キャッシュも供給してもよい。反対に、従来のウェブベース三次元システム、例えばVRMLにおいては、キャラクタは、周期的にフラッシュされる（flushed）ブラウザ・アプリケーションのキャッシュに記録されてもよい。
【００７６】
このように本発明に従って、コンピュータ上のキャラクタを動画化するための、第一のコンピュータ及び第一のコンピュータに接続された第二のコンピュータを具備するシステムが供給される。前記第一のコンピュータは、特定の動画化キャラクタと関連する一つ以上のデータを記録してもよい。前記データは、動画化キャラクタの幾何学的モデル、動画化キャラクタと関連したテクスチャ、及び動画化キャラクタと関連した音声のうちの一つ以上を含む持続性データファイルを含んでもよい。前記データはさらに、各振舞いファイルが、動画化キャラクタの特定の振舞いについてのデータを含み、及び各振舞いはモデルの動きを特定することを特徴とする一つ以上の振舞いファイルを具備してもよい。前記第二のコンピュータは、動画化キャラクタのアニメーションを前記第二のコンピュータ上で開始するために、持続性データファイルを第一のコンピュータから最初にダウンロードし、及び前記第二のコンピュータによる動画化キャラクタの振舞いの実行の直前に、振舞いファイルを前記第一のコンピュータから非同期にダウンロードしてもよい。
【実施例】
【００７７】
本発明は特に、ウェブベースの三次元アニメーション・システム及び方法に適用され、及びこれに関連して本発明は説明されるであろう。しかしながら、本発明に従った本システム及び方法は、より大きな実用性、例えばスタンド・アロン・コンピュータ・システム（stand-alone computer system）等を含む他の種類の三次元アニメーション・システムに対する実用性を有することは、評価されるであろう。
【００７８】
図１は、本発明に従って三次元アニメーション・システム４０を示したブロック図である。本システム４０は、キャラクタ・クリエータ（character creator）４２、サーバ４４及び一つ以上のクライアント・コンピュータ（クライアント＃１乃至クライアント＃Ｎ）４６を含んでもよい。この例においては、様々な通信又はコンピュータ・ネットワーク、例えばインターネット、ワールド・ワイド・ウェブ（ウェブ）地域ネットワーク、広域ネットワーク又はコンピュータ・システムを互いに接続する他の類似の通信ネットワークを含んでもよい通信ネットワーク４８によって、クライアント・コンピュータはサーバに接続されてもよい。クリエータ４２は、以下に説明される三次元動画化キャラクタを生成するために使用されてもよい。好ましい実施例においては、クリエータ４２は、コンピュータ・システムによって実行されているソフトウェア・アプリケーションでもよい。クリエータ４２は、サーバ４４に記録されてもよいし、又は図１に記載の個別のコンピュータ・システムによって実行されてもよい。クリエータ４２は、以下で説明されるが、各クライアント・コンピュータがウェブ・ファイルをサーバからダウンロードしてもよいように、サーバ４４にダウンロードされてもよい一つ以上のウェブ・ファイルを生成してもよい。各クライアント・コンピュータは、ダウンロードされたウェブ・ファイルを翻訳し、及び以下に詳細に説明されているように、ウェブ・ファイルに基づいて三次元アニメーションを生成してもよい。ここで、本システム４０の各部がより詳細に説明される。
【００７９】
クリエータ４２は、本システムを使用して動画化されてもよい三次元の現実的オブジェクト又はキャラクタを生成するために、ユーザ入力又は他の外部ファイルから様々な情報を受け入れてもよい。例えばクリエータは、例えばサード・パーティのモデリング・システム（a third party modeling system）によって生成されるオブジェクトのワイヤ・フレーム・モデルでもよい三次元モデル５０を受信してもよい。三次元オブジェクトからの三次元ワイヤ・フレーム・モデルの生成は公知であるので、ここでは説明されない。クリエータ４２はまた、三次元オブジェクトにペイントされた多角形の上にテクスチャを配置するために使用されてもよいテクスチャ地図情報５２を受信してもよい。前記テクスチャは、例えば人間のキャラクタの皮膚又は現実の一組の歯に対する現実的な鮮やかな色又はテクスチャを供給してもよい。クリエータ４２はまた、本発明に従って音声トラックが振舞いファイルに統合されるように音声ファイル５４を受信してもよい。音声ファイルは、音声を受信し、及びファイルに統合されてもよい音声のデジタル表示を生成する第三者システムによって生成されてもよい。クリエータはまた、振舞いファイル５６を受信してもよい。振舞いファイルは、本発明に従って、三次元アニメーションに対する振舞いを生成するためのあらゆる音声ファイルと結合されてもよい。振舞いファイルは、クリエータ４２の個別のソフトウェア・モジュールを使用して、ユーザによって生成されてもよい。クリエータ４２は、三次元モデル情報、テクスチャ情報、音声ファイル及び振舞いファイルを、サーバに記録される一つ以上のウェブ・ファイルに結合してもよい。
【００８０】
本発明に従って、クリエータ４２は、各動画化オブジェクトに対して一つ以上のファイルを生成してもよい。特に、クリエータは持続性データ５８を含むファイル及び振舞いデータ６０を含む一つ以上のファイルを生成してもよい。持続性データは、オブジェクトのアニメーションを開始するために、クライアント・コンピュータに最初にダウンロードされてもよく、及び一つ以上の三次元オブジェクト（関節及び多角形を含む）と、あらゆるテクスチャと、下記に説明されるあらゆるモルフリンクと、及び三次元オブジェクトに対するアイドル振舞いとを含んでもよい。実行中の振舞いが他にない場合には、アイドル振舞いは、動画化オブジェクトの動作又は動きでもよい。例えば、動画化された怪物に対するアイドル振舞いは、前記怪物が呼吸をすることで、その胸部が拡張したり収縮したりすることでもよい。
【００８１】
持続性データ・ファイルはまた、本発明に従ってモデルにおける各多角形と関連したモルフリンク・データを含んでもよい。前記モデルは、一つ以上の骨によって互いに接続された一つ以上の関節と、並びに前記骨及び関節を覆う多角形の皮膚を含んでもよい。前記モデル上の各多角形に対して、モルフリンク・データによって、クライアント・コンピュータは、オブジェクトの関節の動きに基づいて、多角形の動きを簡単に決定することができる。従来のアニメーション・システムにおいては、各多角形の動きは個別に算出されなければならず、それは大変遅い。モデルが生成される場合、関節の動きに基づいた特定の多角形の動きは、ユーザによって決定されるように、クリエータのユーザはモルフリンクを定義する。このように、モデルの関節の動きと関連した各多角形の動きは、持続性データにおいて定義される。それゆえに、三次元アニメーションの振舞いが実行される場合、前記振舞いは、モデルにおける各関節の動きについての情報のみを含んでもよく、及びモルフリンクに基づいて、クライアント・コンピュータは、モデル上の各多角形の動きを決定してもよい。このように、本発明に従って各クライアント・コンピュータにダウンロードされた振舞いファイルのサイズは低減され、それは各振舞いのダウンロード速度を速める。さらに、クライアント・コンピュータは、振舞いが発生する度に三次元オブジェクト又はキャラクタ上の各多角形の動きを算出する必要がないので、三次元アニメーションが動画化される速度は速まる。持続性データ・ファイル５８はまた、さらに持続性データのサイズを低減させるために圧縮されてもよい。例として、本発明に従った持続性記録ファイルの圧縮及びストラクチャのために、持続性記録ファイルが、三次元アニメーションの複雑さによって、およそ１０乃至２００Ｋｂでもよい一方で、通常のアニメーション・ファイルはおよそ１Ｍｂである。
【００８２】
一つ以上の振舞いファイル６０はそれぞれに、振舞い中の三次元オブジェクト又はキャラクタにおける各関節の動きを特定するデータ及び特定の振舞いに関連するあらゆる音声ファイルを具備するデータ・ストラクチャを含んでもよい。本発明に従って、三次元アニメーションの各異なる振舞い、例えば微笑んだり、特定の事柄について話したり、座ったりすること等は、個別の振舞いファイルに含まれてもよい。本発明に従って、各振舞いファイルは、振舞いが要求される場合にのみ、クライアント・コンピュータにダウンロードされてもよい。例えば、ゲーム・プレーヤが地面からオブジェクトを拾う振舞いは、ゲーム・プレーヤが、拾われる物に近づく場合にのみダウンロードされてもよい。他の例として、「さようなら」と言う振舞いは、ユーザが、ユーザ・インターフェースのさようならボタンをクリックする場合にのみ、クライアント・コンピュータにダウンロードされる。このように本システムは、持続性データ・ファイルとは非同期に振舞いファイルをダウンロードしてもよい。持続性データにおけるモルフリンクのために、上述の通り、振舞いファイルのサイズは大変小さい。しかしながら、（振舞いのストラクチャ及び持続性記録装置は、互いにつながっているので）各振舞いファイルは、特定の持続性データ・ファイルのみと関連しており、それゆえに、二つの個別のモデルに対する歩行振舞いは、やや異なるであろう。振舞いファイルは、ユーザ入力に応答して、クリエータ４２によって生成されてもよい。振舞い中の予め決められた時間内は動かない関節に対するデータが、クライアント・コンピュータにダウンロードされないように、振舞いファイルは圧縮されてもよい。
【００８３】
振舞い及び持続性データ・ファイルが生成されると、それらはサーバ４４にダウンロードされてもよいし、及び持続性記録装置、例えばハード・ディスク・ドライブ（hard disk drive）、テープ・ドライブ（tape drive）でもよいキャラクタ及び振舞い記録装置６２に記録されてもよい。サーバ４４はまた、プレーヤ・ウェブ・ファイル（player web file）を含むプレーヤ・ストア（player store）６４を含んでもよい。プレーヤ・ウェブ・ファイルは、クライアント・コンピュータが持続性データ・ファイルを、振舞いファイルと同様に翻訳してもよいように、最初にクライアント・コンピュータにダウンロードされるソフトウェア・アプリケーションである。このようにサーバ４４は、最初にプレーヤ・ソフトウェア・アプリケーションをクライアント・コンピュータに（必要であれば）ダウンロードし、それからアニメーションが開始するように、ウェブ・ユーザ・インターフェース・アプリケーション６６へのユーザ入力に基づいて、持続性データ・ファイルをダウンロードしてもよい。そして、三次元アニメーションの振舞いがクライアント・コンピュータによって必要とされると、サーバは、クライアント・コンピュータ上のプレーヤによって実行される適切な振舞いファイルをダウンロードしてもよい。
【００８４】
各クライアント・コンピュータ４６は、ＣＰＵ６８、ＣＰＵ６８によって実行される一つ以上のソフトウェア・アプリケーションを含むメモリ７０、クライアント・コンピュータの持続性記録装置に存在してもよいキャラクタ・キャッシュ７４及び画面７６を含んでもよい。キャラクタ・キャッシュ７４は、特定のクライアント・コンピュータが再度同じアニメーションを見たい場合に、持続性データを再度ダウンロードする必要がないように、持続性データが最初にクライアント・コンピュータにダウンロードされる場合に、持続性データ５８を記録してもよい。キャラクタ・データが周期的にフラッシュされるように、キャラクタ・データがブラウザ・アプリケーションのキャッシュに記録される従来のアニメーション・システムとは異なり、本システムは自らのキャラクタ・キャッシュを有する。
【００８５】
メモリ７０は、ハイパーテキスト転送プロトコル（hypertext transfer protocol）（ＨＴＴＰ）を使用して、サーバに記録されたウェブ・ファイルを受信するために、サーバの統一リソース・ロケータ（uniform resource locator）（ＵＲＬ）を特定することによって、クライアント・コンピュータが、サーバ４４と対話できるようにするブラウザ・アプリケーション７８を記録してもよい。メモリはまた、持続性データ・ファイル及び振舞いファイルを翻訳するための、及び動画化オブジェクト、前記持続性データ・ファイルから生成されたキャラクタ・ファイル８２、アイドル振舞いを含む第一の振舞いファイル８４及びまもなく実行されるであろう振舞いを含んでもよい第二の振舞いファイルを生成するためのプレーヤ・ソフトウェア・アプリケーション６４を記録してもよい。このように、キャラクタ・ファイル及び現在の振舞いファイルは両方とも、プレーヤによって実行されている間にメモリ７０に記録される。新しい振舞いが必要になると、前記振舞いはクライアント・コンピュータにダウンロードされ、古い振舞いの一つは、新しい振舞いから空きを作るために削除されてもよい。いつでもクライアント・コンピュータに記録されている振舞いの数は、アニメーション・システムのために利用可能な空きメモリの総量に依存する。持続性データ及び振舞いファイルに基づいて、プレーヤ６４によって生成されるアニメーションは、画面７６に表示されてもよい。ここで、本発明に従って三次元キャラクタ・ファイルをダウンロードするための方法が説明される。
【００８６】
図２は、本発明に従って、三次元キャラクタ・ファイルを特定のクライアント・コンピュータにダウンロードするための方法１００を示したフローチャートである。ダウンロード時間は、振舞いファイル及び持続性データ・ファイルの非同期ダウンロードによって低減されるので、本ダウンロード方法によって、アニメーションは迅速に開始することができる。段階１０２においては、サーバは、プレーヤ・アプリケーションが以前にクライアント・コンピュータにダウンロードされたことがあるかを決定してもよいし、及びプレーヤ・アプリケーションがまだダウンロードされていない場合には、段階１０４においてプレーヤ・ソフトウェアをダウンロードしてもよい。プレーヤがクライアント・コンピュータにダウンロードされると、サーバは、段階１０６において、（キャラクタ・ファイル及びアイドル振舞いファイルを含んでもよい）持続性データ・ファイルをクライアント・コンピュータにダウンロードしてもよい。クライアント・コンピュータは、キャラクタ・キャッシュが一つも存在しない場合には、キャラクタ・キャッシュを生成してもよく、及びキャラクタ・キャッシュにキャラクタ・ファイル及びアイドル振舞いファイルを記録してもよい。次に、プレーヤ・アプリケーションは、クライアント・コンピュータによって実行され、及びプレーヤ・アプリケーションは、段階１０８においてキャラクタを動画化するため、及びアイドル振舞いを実行するために、持続性データを使用してもよい。本発明に従って、持続性データのダウンロード時間が低減され、及びアニメーションがより迅速に開始するように、動画化オブジェクトに対する振舞いのすべてが最初にダウンロードされる必要はない。次に、プレーヤ・アプリケーションは、段階１１０において動画化オブジェクトに対する新しい振舞いが必要であるか決定してもよく、及び新しい振舞いが必要とされない場合は、段階１１２においてアイドル振舞いを実行し続けてもよい。新しい振舞いが必要な場合には、プレーヤ・アプリケーションによる要求に応答して、段階１１４においてサーバは新しい振舞いをダウンロードしてもよい。プレーヤ・アプリケーションは、段階１１６において新しい振舞いがダウンロードを終了したかを決定してもよく、及び新しい振舞いがダウンロードされるまで、以前の振舞いを実行し続けてもよい。新しい振舞いがダウンロードされた場合、プレーヤは、段階１１８において新しい振舞いを実行し、及び段階１０８に戻ってもよい。本発明に従って、アニメーションの開始時間が低減されるように、振舞いは必要とされる場合にクライアント・コンピュータにダウンロードされる。さらに、振舞いファイルのサイズはモルフリンクのために小さいので、あらゆる振舞いファイルに対するダウンロードの合計時間も短い。ここで、三次元アニメーション・システムにおけるオブジェクト階層の一例が説明される。
【００８７】
図３は、本発明に従ってオブジェクト階層の一例１３０を示したダイアグラム図である。図のとおり、オブジェクト階層は、根ノード（root node）１３２の下に編成されたオブジェクトのツリーを含んでもよい。三次元アニメーション・システムにおいて使用されるオブジェクトは、テクスチャ・オブジェクト（texture object）１３４、音声オブジェクト（sound object）１３６、ジオメトリ・オブジェクト（geometry object）１３８及び振舞いオブジェクト（behavior object）１４０を含んでもよい。これらのオブジェクトの各々は、ジオメトリ及び振舞いオブジェクトに対する、図示されたサブ・オブジェクト（sub-object）を含んでもよい。特に、ジオメトリ・オブジェクト１３８は、特定のモデルと関連した多角形を含む多角形オブジェクト１４２、モデルにおける各多角形と関連したモフルリンクを含むモルフリンク・オブジェクト１４４、ロケット船（rocket ship）の排気等、より小さいオブジェクトを記録するためのパーティクル（particle）・システム・オブジェクト１４６及びモデルに対するカメラの位置及び角度についての情報を記録するためのカメラ・オブジェクト１４８を含んでもよい。ジオメトリ・オブジェクトはさらに、図４Ｂに記載のモデルについての追加の情報を含んでもよい。
【００８８】
振舞いオブジェクト１４０は、オブジェクトを変換するための、オブジェクトの関節に対する動き情報を含む変換オブジェクト１５０、モデルの動画化テクスチャを含むテクスチャ・トラック・オブジェクト１５２、振舞いと関連した音声トラックを含む音声オブジェクト１５４及び新しい振舞いを形成するために互いに結合した一連の振舞いを含むスクリプト・オブジェクト１５６を含んでもよい。例えば、スクリプトは、動画化キャラクタと対話するためのものであってもよいし、及びユーザ入力に応答して、キャラクタがユーザにする各応答に対する振舞いを含んでもよい。各動画化オブジェクトは、上述のオブジェクトの一つ以上を含んでもよい。ここで、特定のキャラクタ／モデルに対するオブジェクトの一例が説明される。
【００８９】
図４Ａ及び４Ｂは、本発明に従って、オブジェクトに関連したキャラクタ・オブジェクト及び三次元オブジェクトの例を示したダイアグラム図である。図４Ａは、オブジェクトがキャラクタの関節を模する人間のキャラクタに対するジオメトリ・オブジェクト１６０を示したダイアグラム図である。例えば、図示されたオブジェクトは、頭首、二つの肘、二つの手首、臀部、二つの膝、及び二つの足首の関節を含む。上述のとおり、キャラクタの動きは、モルフリンクに基づいたモデルの多角形の動きになってもよいキャラクタの関節の動きによって特定される。この人間キャラクタを模する図４Ｂに記載の三次元オブジェクト・ツリー１６２は、類似のストラクチャを有する。特にオブジェクト・ツリー１６２は、カメラ・ノード（CAMERA node）に接続されたワールド・ノード（WORLD node）及び体部ノード（BODY node）を含んでもよい。体部ノードはさらに、体の様々な関節を模する様々なオブジェクトを含んでもよい。図示されたとおり、体部ノードは、臀部関節ノード（HIP JOINT node）、臀部関節ノードに接続された左膝オブジェクト（LFT KNEE object）及び右膝オブジェクト（RT KNEE object）及び適切な膝ノードに接続された左足首（LFT ANKLE）及び右足首（RT ANKLE）ノードを含んでもよい。ツリーにおいてその上位のオブジェクトに接続されたオブジェクト・ツリーにおける各オブジェクトは、その上位のオブジェクトの属性を継承する。例えば、左膝オブジェクトのあらゆる動きによって、左足首オブジェクトは同じ動きを継承してもよい。この、足首による膝の動きの継承は、人体の良い模型を供給する。同様に、臀部関節オブジェクトが動く場合、両膝オブジェクト及び両足首オブジェクトは、臀部関節オブジェクトの動きを継承する。それゆえに、臀部関節オブジェクトの動きが振舞いで特定されると、臀部関節の動きによって発生した（caused）膝及び足首の動きは、特定される必要はない。ここで、本発明に従って関節の連結方法（articulation）が説明される。
【００９０】
図５は、キャラクタの関節の連結方法の一例を示したダイアグラム図である。特に、三次元キャラクタの腕１７０は、例示的な目的で示されている。腕は肩関節１７２、肘関節１７４、手首関節１７６、上腕１７８、前腕１８０及び手１８２を含んでもよい。人の腕と同様に、各関節は正又は負のＸ方向、正又は負のＹ方向及び／又は正又は負のＺ方向に動いてもよいので、各関節には６段階の自由（six degrees of freedom）がある。キー期間と称される予め決められた各時間帯に対して、各関節は、６つの各方向に動いてよい。キー期間は、好ましくは１０分の１秒でよく、及びプレーヤは、各関節の動きが円滑であることを確証するために、キー期間の間に各方向への関節の動きを挿入してもよい。キー期間は、ユーザによって設定されてもよい。各関節が動くと、該関節の近くの体部の部分も動いてもよい。本発明に従った三次元アニメーション・キャラクタにおいては、キャラクタの関節を有する体部の皮膚を作る体部及び多角形の動きの同期をとることは、ここでより詳細に説明される、本発明に従ったモルフリンクによって達成される。
【００９１】
図６は、本発明に従って、図５に記載の上腕１７８に対するモルフリンクを示したダイアグラム図である。この例では、上腕を覆う多角形は、肩関節１７２及び肘関節１７４によって影響されてもよい。この例では、肩関節及び肘関節の動きに基づいた上腕の外側の多角形１８４の動きが説明される。多角形の動き１８４が肩関節の動きによってのみ影響される場合、多角形１８４はｘ1の位置に動いてもよい。多角形１８４の動きが肘関節の動きによってのみ影響される場合、多角形はｘ2の位置に動いてもよい。しかしながら、多角形の動きを現実的に模擬するためには、上述の位置はいずれも正確ではなく、動画化キャラクタを見ているユーザによって、異常であると理解されるであろう。それゆえに、両方の関節の影響が使用される場合に多角形１８４がｘ3の位置に動くように、多角形１８４は肩関節及び肘関節の両方によって影響されるべきである。本発明に従って、キャラクタ上の各多角形の、キャラクタにおける関節への関係は、持続性データ・ファイルとともに記録されるモルフリンク・データに記録される。モルフリンク・データによって、振舞いファイルは、キャラクタにおける関節の動き（少しのデータ量）を特定することのみでき、クライアント・コンピュータ上のプレーヤ・アプリケーションは、モルフリンク・データに基づいてキャラクタの各多角形の動きを決定してもよい。キャラクタが生成されるとキャラクタ上の各多角形はキャラクタの関節について固定した動きの関係を有するように、三次元オブジェクトの特定の多角形上の各関節の実際の影響区域は、三次元キャラクタの生成の間、ユーザによって制御される。ここで関節の影響区域の例が供給される。
【００９２】
図７は、本発明に従って関節の影響区域の一例を示したダイアグラム図である。この例において、関節１９０は、内部影響区域１９２及び外部影響区域１９４を有してもよい。関節１９０を取り囲む体部１９６は、点線で示されている。内部影響区域１９２内の体部上の多角形に対して、関節１９０は、その動きの１００％をそれら多角形の動きに与える。この例において、多角形Ａ及びＢの動きは、例えば、関節１９０が正のＸ方向に１”動く場合、多角形Ａ及びＢも正のＸ方向に１”動くように、関節１９０から１００％与えられている。そして、他の関節がＹ方向に１”動き、多角形Ａ及びＢの動きに１００％与える場合、多角形Ａ及びＢもまた、Ｘ方向への動きに加えて、Ｙ方向に１”動く。外部影響区域１９４における多角形に対して、特定の多角形上の影響量は、多角形が関節から遠くなるほど減少する。このように、内部及び外部影響区域の間の周辺部において、付与は１００％である一方で、外部影響区域の外縁部における多角形に対する付与は、０％である。このように、この例における多角形Ｃに対しては、関節が正のＸ方向に１”動く場合、多角形Ｃは、正のＸ方向に１／２動くように、関節は多角形Ｃの動きに５０％与える。この例における多角形Ｄ及びＥに対して、関節の動きがそれら多角形に影響しないように、関節１９０は０％の動きを与える。このように、三次元キャラクタ上の各多角形に対して、モデルにおける各関節に対するコントリビューションは、クリエータ・ユーザ・インターフェースを使用して、ユーザによって設定され、そして本発明に従って、システムによってモルフリンクに記録される。ここで本発明に従って、クリエータを使用して三次元動画化キャラクタを生成するための処理の例が説明される。
【００９３】
図８Ａ及び８Ｂは、本発明に従って、モデル内の骨の一例を示したダイアグラム図である。モデルにおける骨は、クリエータ・アプリケーションにおけるユーザ・インターフェース２００を使用して生成される。ユーザ・インターフェース２００はオブジェクト、例えば生成されている特定の三次元キャラクタと関連したジオメチル及び素材（テクスチャ）等を列挙するオブジェクト・ウィンドウ（object window）２０２を含んでもよい。ユーザ・インターフェース２００はまた、特定の三次元キャラクタに関連したジオメトリのすべて、例えば首、左肩（ShouldL）、左上脚（UpLegL）等を列挙するジオメトリ・ウィンドウ（geometry window）２０４を含んでもよい。人がキャラクタを生成するのを手助けするために、ジオメトリはオブジェクト・オーダで列挙されるので、他のオブジェクトとオブジェクトの関連及び特徴の属性（例えば左上腕部と左肩との関連）は、ジオメトリウィンドウを見ることによって、調べられてもよい。またジオメトリ・ウィンドウによって、ユーザが望む場合、ユーザはキャラクタの一定の部分を見えないようにすることができる。ユーザ・インターフェース２００はまた、ユーザに、キャラクタの現在の図を示す三次元キャラクタ表示ウィンドウ２０６を含んでもよい。この例において、キャラクタの２０８の一つ以上の骨及び一つ以上の関節２１０のみが、ジオメトリ・ウィンドウにおける、適切な位置をクリックすることによって示される。三次元モデルの骨及び関節は、クリエータ・アプリケーションによって、又は公知であるサードパーティのソフトウェアによって生成されてもよい。キャラクタの骨がユーザによってレイアウトされ、及び設定されると、ユーザは、図９を参照してこれから説明される、多角形の「皮膚」を、骨を覆うように置いてもよい。
【００９４】
図９及び１０はそれぞれ、本発明に従って骨及び多角形を有するモデルの一例及び多角形のみを伴って表示されたキャラクタの一例を示したダイアグラム図である。再度、ユーザは、クリエータのユーザ・インターフェース２００を使用して、三次元動画化キャラクタを生成してもよい。この図においては、ユーザは、多角形皮膚２１２を伴ってウィンドウ２０６に示された骨２０８及び関節２１０が、骨及び関節を覆うように置かれることを選択した。多角形皮膚は、クリエータ・アプリケーションによって、又はサードパーティ・ソフトウェアによって生成されてもよい。多角形皮膚２１２は、三次元動画化キャラクタ及びこれらの多角形にマッピングされたあらゆるテクスチャを見る場合に、人によって見られる実際の表面を形成する。図１０は、ユーザ・インターフェース２００においてユーザに表示されている多角形２１２のみを有するキャラクタを示している。図１０に記載のキャラクタは、多角形に置かれているテクスチャを除き、三次元動画化キャラクタがどのように見えるのかを正確に示す。多角形に置かれたテクスチャを含む三次元動画化キャラクタは、図１１及び１２を参照して説明される。
【００９５】
図１１は、本発明に従って表示ウィンドウ２０６の中にあるレンダリングされ、照明が当てられていないキャラクタ２２０の一例を示したダイアグラム図であり、図１２は、本発明に従ってレンダリングされ、照明を当てられたキャラクタ２３０の一例を示したダイアグラム図である。図１１に記載のとおり、例えばキャラクタが長い髪、眉毛、鼻、唇のついた口、及び目を有するように、三次元キャラクタは、テクスチャされた多角形によって覆われている。テクスチャは、サードパーティ・ソフトウェアによって生成されてもよく、及びクリエータ・アプリケーションを使用して、ユーザによって動画化キャラクタに配置されてもよい。照明を当てられていないキャラクタ２２０の全体は、図１４に記載されている。
【００９６】
図１２では、同じキャラクタがクロム・テクスチャを有し、及び特定の照明モデルで照明を当てられている。キャラクタにクロム表面の質感を出すために、ユーザが素材／テクスチャを選択することができる素材ウィンドウ２３２が表示されてもよい。記載されたこの例では、クロム素材が選択された。素材ウィンドウは、多角形を覆ってもよい素材のパレット２３４、例えば体部素材、下歯素材、クロム素材、髪素材及び上歯素材を含んでもよい。照明は、キャラクタに対する照明モデルを特定することによって、キャラクタに適用されてもよい。照明モデルの一例は、図１３を参照して説明される。
【００９７】
図１３は、本発明に従って、三次元キャラクタ、例えば図１２に記載のものに適用されてもよい環境地図照明モデル２４０の一例を示したダイアグラム図である。環境地図２４０は、選択された照明選択に、球の表面を照らさせることによって生成される。このように、図１３に記載のとおり、特定の照明モデルによって、球の表面は異なる彩度を有する個別の画素でできている特定の外観を有する。照明モデルを三次元キャラクタに転送するために、特定の場所にあるキャラクタの外観は、同じ場所の球の外観と同じである。例えば、球の左側が光沢部分２４２を有すると、図１２に記載のとおり、キャラクタもキャラクタの左側に光沢部分２４２を有する。同様に、球が球の頂上近くに、照明影２４６を有すると、キャラクタ２３０は対応する照明影（light shadow）２４８を有する。このように本発明に従って、キャラクタに対する照明モデルは、球上の特定の位置の照明モデルの外観を検索することによって、及び特定の位置の球の照明を、同じ特定の位置にある動画化キャラクタの多角形にマッピングすることによって生成されてもよい。本発明に従って、キャラクタの各画素に対する照明を算出する必要はない。通常の三次元動画化システムにおいては、照明モデルは、遅い処理であるキャラクタ上の各画素の照明を算出することにより、キャラクタに転送されてもよい。ここで、キャラクタの脚に関連するモルフリンクの例が説明される。
【００９８】
図１５及び１６は、本発明に従って、脚における骨及び脚に関連するモルフリンクの一例を示したダイアグラム図である。特に、図１６は、キャラクタの下半分２５０を有するクリエータの表示ウィンドウ２０６を示している。この例においては、臀部関節２５２、膝関節２５４、及び足首関節２５６が、キャラクタの内側に示されている。キャラクタの「皮膚」を形成している各多角形の各画素は、特定の画素の動きを、キャラクタにおける各関節からのコントリビューションと関連させるモルフリンクを設定することによって、キャラクタのクリエータによって決定される動きを有する。
【００９９】
図１６は、主部ウィンドウ（main window）２０２、ジオメトリ・ウィンドウ２０４及び表示ウィンドウ２０６を有するユーザ・インターフェース２００を示している。キャラクタにおけるモルフリンクを観察すると、ユーザ・インターフェースはまた、多角形の動きに対する各関節の動きのコントリビューションを伴って、キャラクタにおける各多角形のリストを含むモルフリンク・ウィンドウ２５８も含んでよい。この例においては、右脚は上方に動き、多角形２６０が選択される。モルフリンク・ウィンドウ２５８は、この例では７７．６２％である膝関節からのコントリビューションを伴って、選択された多角形（この例では、Body_Geo Vert 188）を強調してもよい。このように膝が正のＸ方向に１”動く場合、選択された多角形は、正のＸ方向に７．７６２”動く。上述のとおり、各多角形は一つ以上の関節によって影響され、及び各関節のコントリビューションが、前記多角形の動きを決定する為に、ともに追加される。モルフリンクによって、ダウンロードされた振舞いファイルは各関節の動きのみを特定することができ、クライアント・コンピュータ上のプレーヤは、関節及びモルフリンクの動きに基づいて、各多角形の動きを決定してもよい。ここで、図１５及び１６に記載のキャラクタを使用して、関節の影響区域がより詳細に説明される。
【０１００】
図１７は、各関節に対する影響区域を示している図１５及び１６のキャラクタ２５０を示したダイアグラム図である。各関節に対する影響区域は、内部区域（inner region）２７０及び外部区域（outer region）２７２を含んでもよい。キャラクタの生成中に、クリエータのユーザは、該関節の影響を調節するこれらの内部及び外部区域を調節してもよい。この例においては、臀部関節２５２、膝関節２５４、及び足首関節２５６に対する影響区域が示されている。影響区域についての詳細は上述されており、ここでは説明されない。ここで、振舞いの一例が説明される。
【０１０１】
図１８は、本発明に従って、クライアント・コンピュータにダウンロードされてもよい振舞い２８０の一例を示したダイアグラム図である。図示の通り、振舞いのストラクチャは、キャラクタ内のオブジェクトのストラクチャに従ってもよい。特に、振舞いは根ノード２８２、ダンス（dance）振舞いの間のキャラクタの臀部の動きを特定するダンス臀部ノード（dance hips node）２８４、ダンス振舞いの間の膝の動き等を特定するダンス右膝及びダンス左膝ノード２８６、２８８を含んでもよい。このように振舞いにおけるオブジェクトは、キャラクタにおけるオブジェクトの動きを特定するので、振舞いにおけるオブジェクトは、キャラクタにおけるオブジェクトにマッピングする。動きに加えて、振舞いはまた、振舞いに関連した音声トラックを特定してもよい。オーバー・タイムで（over time）発生するほとんどの振舞いに対して、振舞い中の各オブジェクトの動きが、各新しいキー期間で変更し、及びシステムがキー期間の間に挿入するように、振舞いは一つ以上のキー期間に分割されてもよい。オブジェクトであれば、例えば頭が動いておらず、又はオブジェクトが振舞い中にその動きを変更していない場合、振舞いはそれに圧縮されてもよく、プレーヤは振舞いファイルにない関節は、以前にしていたのと同じ時にするとみなすので、頭に対するオブジェクトは、振舞いファイルから削除されてもよい。振舞いをより理解するために、振舞い内のオブジェクトの一例がより詳細に説明される。
【０１０２】
説明のために、ダンス臀部オブジェクト（dance-hips object）２８４がより詳細に説明されるが、各オブジェクトが異なる方法で動く場合、振舞いにおける各オブジェクトは、類似のデータ・ストラクチャを有してもよい。このように各キー期間（図１８では０．１秒の間隔として示されている）に対して、オブジェクト２８４は、三次元（Ｘ，Ｙ，Ｚ）におけるオブジェクトの動きを特定してもよい。図示されているとおり、各次元における動きは、各キー期間の間に変更してもよい。キー期間の間に、プレーヤは円滑な動きを確証するために、挿入を使用してもよい。振舞いの他の例がここで説明される。
【０１０３】
図１９Ａ、１９Ｂ及び１９Ｃは、本発明に従って振舞いの他の例を示したダイアグラム図である。この例では、振舞いはキャラクタの口に「アー（Ａｈ）」という音節を形成させ、及び対応する音声トラックは、キャラクタが音節「アー」と言うようにシミュレートするために実行されている。図１９Ａは、各キー期間における振舞いとキャラクタの同期を確証するために、一つ以上の時間フレーム２９２を含んでもよい、振舞いに対するストラクチャ２９０を示している。以下の各時間フレームは、各オブジェクトの位置変更、各オブジェクトの方向変更、及び各オブジェクトの比率変更を含む前記キー期間の間の、キャラクタにおける各オブジェクトの動きについてのデータである。図１９Ｂは、振舞い中に動く口における各オブジェクト（関節）へのリンクを含む「アー」振舞いに対する振舞いオブジェクト２９４を示している。図１９Ｃは、「アー」振舞いに関連した音声トラック２９６を示している。本発明に従って、振舞いはまた、ユーザの動作を含む様々な要素に基づいて選択されてもよい複数の振舞いを含んでもよい。このように、本発明によって、一つのクラスの振舞いが一度にプレーヤにダウンロードされることができる。ここで、本発明に従って振舞いをストリームするための方法が説明される。
【０１０４】
本発明に従って、プレーヤ・アプリケーションのユーザができるだけ早くアニメーションの観察を開始してもよいように、その振舞いを含む動画化キャラクタのアニメーションをできるだけ早く開始することが望ましい。大きな振舞いファイルが、プレーヤ・アプリケーションにダウンロードされることが必要である場合、従来のアニメーション・システムでは、動画化キャラクタのアニメーションが遅れる可能性があり、それは受け入れ難い。例えば、振舞いが音声トラックを含む場合、音声データは、振舞いが実行するのと同じくらい長い時間をダウンロードに必要とするのに充分な大きさになるかもしれない。２８，８００ビット毎秒を転送するモデムでは、圧縮された音声データでも、音声データのダウンロードに１３，０００ビット毎秒を必要とし、及び振舞いキー・フレームは、残りの帯域を必要とする。振舞いが実行される前に、５分間の振舞いをダウンロードするためにユーザを５分間待たせることは、妥当ではない。本発明に従って、アニメーションシステム及び特にプレーヤ・アプリケーションは、振舞いがまだ、振舞いストリーミングとして公知であるかもしれないプレーヤ・アプリケーションへダウンロードされている間に、振舞いの実行を開始してもよい。
【０１０５】
図２０は、本発明に従って振舞いをストリームさせるための方法３００を示したフローチャートである。段階３０２において、例えばウェブページ上のボタン又はアイコンをクリックすることによって、ユーザは振舞いを選択し、及び／又は振舞いの実行を開始してもよい。段階３０４において、動画化キャラクタと関連した各振舞いがストリーミング振舞いとして、又はそうではないとして識別されるので、プレーヤ・アプリケーションは、振舞いがストリーミング振舞いであるか決定する。振舞いが予め決められた以上のダウンロード時間を必要とする場合、例えば振舞いが音声データを含む場合、振舞いはストリーミング振舞いとして識別されてもよい。振舞いがストリーミング振舞いではない場合、前記方法は完了する。振舞いがストリーミング振舞いである場合、プレーヤ・アプリケーションは、以下で説明されるとおり、段階３０６において振舞いオブジェクトをダウンロードしてもよく、及び段階３０８において振舞いデータの第一の予め決められたサイズのチャンクをダウンロードする。好ましい実施例において、振舞いデータの前記チャンクは、１０秒の振舞いに対する充分なデータでもよい。残りの振舞いデータは、プレーヤ・アプリケーションが以前にダウンロードされた振舞いデータのチャンクを実行しているのに同期をとってダウンロードされてもよい。合計で５分間続く振舞いに対して、ストリーミング振舞いは、たった１０秒後に実行を開始し、及び残りの振舞いデータは、振舞いが実行されているときにダウンロードされてもよい。本発明に従って、プレーヤ・アプリケーションにダウンロードされている前記かたまりは、常に、現在実行している部分の振舞いより、予め決められた秒数（好ましい実施例では１０秒）だけ先でもよい。
【０１０６】
好ましい実施例において、振舞いを開始する前にダウンロードされる、振舞いデータの予め決められたチャンクは、振舞い時間の１０秒でもよい。残りのストリーミング振舞いデータのダウンロードもまた、現在実行している振舞いデータの１０秒先でもよい。１０秒という時間は、インターネットが時々混雑に苦しみ、及びそれゆえに振舞いデータを届けるのが遅れるということを考慮に入れている。プレーヤ・アプリケーションが、ストリーミング振舞いがダウンロードされるとすぐにそれの実行を開始する場合、ユーザは、アニメーションの割り込みを経験するかもしれない。このように、インターネットが混雑している場合を補ういくつかの能力をシステムが有するように、１０秒の間隔はデータのバッファを供給する。稼動するための振舞いデータのストリーミングに対して、振舞いデータがインターネットから、少なくともプレーヤ・アプリケーションが振舞いデータを実行するのと同じくらいの速度でダウンロードされてもよいように、振舞いデータは圧縮されなければならない。例えば、ユーザが振舞いデータをダウンロードするためにモデムを使用する場合、１秒分の振舞いデータをダウンロードするために１秒以下を必要とするように、振舞いデータは高度に圧縮される。
【０１０７】
フローチャートに戻ると、振舞いデータの最初のチャンクがダウンロードされた後、段階３１０において、プレーヤ・アプリケーションは前記振舞いを実行してもよい。前記振舞いの最初のチャンクが実行されている間、プレーヤアプリケーションは、ダウンロードされた振舞いデータが、段階３１２において現在実行されている振舞いデータより、予め決められ秒数よりも先であるか決定してもよい。ダウンロードされた振舞いデータが、現在実行されている振舞いデータの２０秒以上先である場合、新しい振舞いデータが現在実行している振舞いデータの予め決められた時間（好ましい実施例においては１０秒）より短い時間だけ先になるまで、段階３１４において、プレーヤ・アプリケーションはさらなるダウンロードを中止する。そして段階３１６において、プレーヤ・アプリケーションは振舞いデータの次のチャンクをダウンロードしてもよい。段階３１８において、プレーヤ・アプリケーションは、ダウンロードされるべき振舞いデータがあるか決定してもよく、及びダウンロードされるべき振舞いデータがない場合に、振舞いデータの次のチャンクをダウンロードするために段階３０８にループ・バック（loop back）するか、又は前記方法を完了してもよい。ここで、本発明に従ってストリーミング振舞いファイルが説明される。
【０１０８】
図２１は、本発明に従ってストリーム・ファイル３３０を示したダイアグラム図である。特に、上述のクリエータは、ストリーム・ファイルとして知られている、振舞いをストリームするための特別なファイルを生成してもよい。ストリーム・ファイル３３０は、振舞いオブジェクト３３２並びにキー・フレーム及び音声データ３３４の一つ以上のチャンクを含んでもよい。振舞いオブジェクトは、振舞いの構造、例えば振舞い中の動画化キャラクタにおける各関節のジオメトリ及び動き等を記述するすべてのデータを含んでもよい。振舞いオブジェクトは、音声データ等、振舞いデータのキー・フレームをまったく含まない。振舞いデータ３３４の一つ以上のチャンクの各々は、予め決められた量の振舞いデータ（例えば好ましい実施例においては、２秒の振舞いデータ）を含んでもよい。例えば、振舞いデータの第一のチャンクは、振舞いの第一の予め決められた時間間隔の間に実行する音声データを伴って、前記第一の予め決められた時間間隔の間に発生する振舞いトラックのすべてからのキー・フレームのすべてを含んでもよい。振舞いデータの各チャンクは、初期チャンクが振舞いの開始時に開始するように、振舞いにおける対応する時間と同じ時間に開始する。ここで、振舞いデータの各チャンクに対するストラクチャの一例が説明される。
【０１０９】
図２２は、振舞いデータ３３４の各チャンクのストラクチャの一例を示したダイアグラム図である。各チャンク３３４は、各トラックが、動画化キャラクタの特定の部分についてのデータを含む一つ以上のトラック３３６に分割されてもよい。この例においては、図２２に記載され、それぞれ動画化キャラクタ・ジオメトリの頭、胴、及び膝と関連している頭トラック３３８、胴トラック３４０、及び膝トラック３４２がある。図示されたとおり、チャンクは振舞いデータの前記特定の部分に対する音声データ３４４も含む。
【０１１０】
図２３は、振舞いデータのチャンク３３４のより詳細を示したダイアグラム図である。特に、振舞いデータのチャンクは、トラック３３８、３４０及びタイムスタンプ（timestamp）３５０を含む。タイムスタンプは、振舞い内のチャンクの時間、例えばチャンクは振舞いの時間ｔから時間ｔに２秒を加えた時間を網羅することを示してもよい。各トラック３３８，３４０は、特定のトラックが関連した振舞いオブジェクトを識別する識別子３５２、トラックにおけるデータの長さを示すデータ長フィールド３５４（len）、並びに前記トラックに対するキーフレーム及び振舞いデータを含むデータ・フィールド３５６を含んでもよい。各チャンク３３４は、振舞いデータの特定のチャンクの終わりを示すゼロのトラック識別（id-0）で終了してもよい。ここでプレーヤのオペレーションが説明される。
【０１１１】
図２４及び２５は、本発明に従ってプレーヤのオペレーションを示したフローチャートである。図２４は、クライアント・コンピュータのユーザに対して表示されている画像の各フレームに対するプレーヤのオペレーション４００を示したフローチャートである。段階４０２において、プレーヤは、あらゆるユーザ入力を読み取り、及び前記ユーザ入力に従って反応してもよい。次に、プレーヤは、現在実行しているあらゆる振舞いに基づいて、段階４０４においてキャラクタにおけるあらゆるジオメトリ変化を決定してもよい。次にプレーヤは、先に決定されたジオメトリにおける変化及び上述のモルフリンクに基づいて、段階４０６においてキャラクタの多角形を生成してもよい。多角形が生成されると、キャラクタ及び多角形が表示画面に表示されてもよいように、キャラクタの多角形についてのデータは、段階４０８においてスキャン変換（scan converted）されてもよい。段階４１０においては、キャラクタがユーザに表示されるように、例えば公知であるＢＬＴＢＬＫルーチンを使用することによって、キャラクタは、画面表示メモリに転送されてもよい。ここでジオメトリ変化を決定することについての詳細が説明される。
【０１１２】
図２５は、本発明に従って、ジオメトリ変化を決定するための方法４２０を示したフローチャートである。段階４２２において、プレーヤは実行されている現在の振舞いについてのコマンドを含んでもよいあらゆる更新スクリプトを呼び出してもよい。実行中の振舞いが他にない場合、プレーヤはアイドル振舞いを実行してもよい。段階４２４においては、プレーヤは、更新スクリプトがあらゆる新しい振舞いを含むかを決定し、及び新しい振舞いが必要とされる場合には、段階４２６において新しい振舞いのダウンロードを要求する。次に段階４２８においては、プレーヤは、現在実行している振舞いに基づいて、キャラクタに対するジオメトリ変化を決定する。
【０１１３】
前述の内容が、本発明の特定の実施例を参照している一方で、当業者には、本発明の概念及び精神、添付の請求の範囲によって定義される範疇から逸脱することなく、この実施例に変更がされてもよいことが理解されるであろう。
【図１】
2010160813.tif 000003
【図２】
2010160813.tif 000004
【図３】
2010160813.tif 000005
【図４Ａ】
2010160813.tif 000006
【図４Ｂ】
2010160813.tif 000007
【図５】
2010160813.tif 000008
【図６】
2010160813.tif 000009
【図７】
2010160813.tif 000010
【図８Ａ】
2010160813.tif 000011
【図８Ｂ】
2010160813.tif 000012
【図９】
2010160813.tif 000013
【図１０】
2010160813.tif 000014
【図１１】
2010160813.tif 000015
【図１２】
2010160813.tif 000016
【図１３】
2010160813.tif 000017
【図１４】
2010160813.tif 000018
【図１５】
2010160813.tif 000019
【図１６】
2010160813.tif 000020
【図１７】
2010160813.tif 000021
【図１８】
2010160813.tif 000022
【図１９Ａ】
2010160813.tif 000023
【図１９Ｂ】
2010160813.tif 000024
【図１９Ｃ】
2010160813.tif 000025
【図２０】
2010160813.tif 000026
【図２１】
2010160813.tif 000027
【図２２】
2010160813.tif 000028
【図２３】
2010160813.tif 000029
【図２４】
2010160813.tif 000030
【図２５】
2010160813.tif 000031