专利摘要:
フルレンダリングされた3次元のキャラクタがネットワークを介してクライアントに配信される。論理ファイル及びプリレンダリングされたブリーフビデオクリップがサーバからダウンロードされる。ビデオクリップは一度だけダウンロードされ、後の使用のために局所的にキャッシュされる。ソフトウェアアプリケーションが論理ファイルを用いてビデオクリップをシームレスにつなぎ合わせて生きているようなキャラクタを表示する。キャラクタは、論理ファイルにより指示されるユーザ操作、期間の経過及び準ランダム事象などの種々のトリガイベントに応答する。
公开号:JP2011512582A
申请号:JP2010546143
申请日:2009-02-12
公开日:2011-04-21
发明作者:ホーンベイカー,ロン,エイ.
申请人:フーモジョ,インク.;
IPC主号:G06F13-00
专利说明:

[0001] 関連出願の相互参照
本発明は、2008年2月12日出願の米国仮出願番号第61/018,152号の優先権を主張するものであり、その全内容は参照することにより本書に組み込まれる。]
[0002] 本発明は、一般にはビデオコンテンツのネットワーク配信に関し、特にはインタラクティブなフルレンダリングされた3次元キャラクタのネットワーク配信に関する。]
背景技術

[0003] 1990年代に多くの会社がアニメーション化されたキャラクタとのますます洗練されたインタラクション方法をユーザに提供するにつれて、仮想ペットが人気を博している。当初は、仮想ペットは、例えばバンダイ社(日本国、東京所在)により製造されているタナゴッチ及びタイガーエレクトロニクス社(現在ハズブロ社の一部門)により製造されているギガペットのように、小さな携帯ガジェットに入れられていた。これらのガジェットの計算能力、電池寿命及び表示能力は可視効果及びこれらのペットのインタラクティビティを制限していた。]
[0004] 別のクラスの仮想ペットはソフトウェアベースの仮想ペット、例えばアニメーション化された動物の世話、飼育、繁殖又は展示に焦点を当てたコンソールベースのビデオゲームにおける仮想ペットである。ビデオゲートコンソールの方がガジェットベースのディジタルペットより計算能力が高いため、通常このクラスの仮想ペットはより高レベルの視覚効果及びインタラクティビティを達成することができる。]
[0005] 仮想ペットを含むフルレンダリングされアニメーション化されたインタラクティブな3次元キャラクタのウェブブラウザへのネットワーク配信は歴史的にネットワークに対する帯域幅制約及びクライアントのウェブブラウザに対する処理能力制約により制限されていた。]
[0006] インタラクティブなフルアニメーション化された3次元キャラクタをクライアントのプレーヤにネットワークを介して配信する方法、システム及びコンピュータ読取可能な記憶媒体が提供される。論理ファイル及びブリーフプリレンダリングビデオクリップがサーバからダウンロードされる。ここでは「プレーヤ」というソフトウェアアプリケーションは、論理ファイルを用いてビデオクリップをシームレスにつなぎ合わせて生きているようなキャラクタを表示する。キャラクタは、論理ファイルにより指示されるユーザ操作、期間の経過及び準ランダム事象などの種々のトリガイベントに応答する。本方法によれば、ビデオクリップはプレーヤにより一度だけダウンロードされ、そのときその後のプレーヤでの使用のために局所的にキャッシュされるため、帯域幅が節約される。本方法によれば、ビデオクリップはプリレンダリングされ、平易なビデオフォーマットでプレーヤに配信されるため、プロセッササイクルも節約される。]
[0007] 本発明は、本発明の以下の詳細な説明及び添付の請求項の記載を図面とともに参照するとより容易に明らかになる他の利点及び特徴も有する。]
図面の簡単な説明

[0008] 一実施例によるコンピュータ環境の高レベルブロック図である。
サーバ及び/又はクライアント用としてのコンピュータの一例を示す高レベルブロック図である。
一実施例によるサーバのモジュールを示す説明図である。
本発明によるクライアントのモジュールを示す説明図である。
一実施例によるループクリップ及びトランジションクリップの説明図である。
一実施例による種々のトリガイベントに応答して発生し得るコア位置からの変化の説明図である。
本発明によるフルレンダリングされたキャラクタをネットワークを介して配信する方法を示すフローチャートである。
一実施例によるクライアント上のプレーヤの動作を示すフローチャートである。]
実施例

[0009] 図面は本発明のいくつかの実施例を説明のためのみに示している。当業者は、以下の記載から、ここに記載する構成及び方法の代替実施例がここに記載する本発明の原理から離れることなく使用可能であることを容易に認識されよう。]
[0010] 1. システム概説
本発明の実施例は、インタラクティブな3次元のアニメーション化されたキャラクタをネットワークを介して配信するシステム、方法及びコンピュータ読取可能な記憶媒体を含む。図1は、本発明の一実施例によるコンピュータ環境100の高レベルブロック図である。コンピュータ環境100は、ネットワーク110に接続されたサーバ104及び一以上のクライアント106を含む。各クライアント106はプレーヤ108及びブラウザ107を含む。] 図1
[0011] サーバ104は、多数のキャラクタを記述するデータを格納し、該データは様々な位置における各キャラクタの動作のアニメーション化されたシーケンスのブリーフ(簡易)ビデオファイルを含む。サーバ104は、各キャラクタの状態、例えば空腹状態、怒っている状態、眠い状態、遊んでいる状態なども格納する。サーバ104は、ネットワーク110を介してプレーヤ108に、ビデオファイル、キャラクタの状態及び論理ファイルを配信し、論理ファイルはプレーヤ108にビデオファイル及びトリガイベントに対する応答を再生するように順に命令するものである。サーバ104は、ネットワーク110を介してプレーヤ108から情報を随意に受信して、アニメーション化されたキャラクタとのユーザインタラクションからのインタラクティビティイベントデータの測定及び収集を許可することができる。アニメーション化されたキャラクタとのユーザのインタラクションは図6と関連して後に記載される。] 図6
[0012] クライアント106は任意のタイプのクライアント装置、例えばパーソナルコンピュータ、携帯情報端末(PDA)又は携帯電話などとすることができる。クライアントは、インターネットのようなネットワーク110を介してリモートデータ及びファイルの閲覧を可能にするウェブブラウザ、例えばインターネットエクスプローラ(INTERNET EXPLORER)、ファイアフォックス(FIREFOX)、サファリ(SAFARI)、オペラ(OPERA)又は同様のソフトウェアツールなどを含む。クライアントはビデオクリップを再生できるプレーヤ108も含む。一実施例では、プレーヤ108は、フラッシュ(FLASH)、シルバーライト(SILVERLIGHT)又は同様のマルチメディア配信機構などのウェブブラウザベースのプラットフォーム上で動作するソフトウェアアプリケーションである。一実施例では、クライアント106はプレーヤ108をショックウェーブフラッシュファイル(SWF)としてダウンロードする。SWFはアドブフレックス(Adobe Flex)又はアドブフラッシュ(Adobe Flash)を用いてプログラムすることができ、例えばアクションスクリプト(Action Script)のようなコードで書き込むことができる。]
[0013] ネットワーク110は、サーバ104とクライアント106との間の通信通路を表す。一実施例では、ネットワーク110はインターネットである。ネットワーク110は、必ずしもインターネットの一部でない専用プライベート通信リンクを使用することもできる。一実施例では、ネットワーク110は標準の通信記述及び/又はプロトコルを使用する。従って、ネットワーク110は、イーサネット(登録商標)、ワイファイ(802.11)、統合サービスディジタルネットワーク(ISDN)、ディジタル加入者線(DSL)、非同期転送モード(ATM)などの技術を用いるリンクを含むことができる。同様に、ネットワーク110上で使用されるネットワークプロトコルは、マルチプロトコルラベルスイッチング(MPLS)、トランスミッションコントロールプロトコル/インターネットプロトコル(TCP/IP)、ハイパーテキストトランスポートプロトコル(HTTP)、簡易メール転送プロトコル(SMTP)、ファイル転送プロトコル(FTP)などを含むことができる。ネットワーク110を介して交換されたデータは、ハイパーテキストマークアップ言語(HTML)及び拡張可能マークアップ言語(XML)を含む技術及び/又はフォーマットを用いて表現することができる。更に、すべての又は一部のリンクは、セキュアソケットレイヤ(SSL)、セキュアHTTP及び/又はバーチャルプライベートネットワーク(VPN)などの慣例の暗号化技術を用いて暗号化することができる。別の実施例では、エンティティは、上述したものに代えて又は加えて、カスタム及び/又は専用データ通信技術を使用することができる。]
[0014] 図2はサーバ104及び/又はクライアント106用としてのコンピュータ200の一例を示す高レベルブロック図である。チップセット204に結合された少なくとも一つのプロセッサ202が示されている。チップセット204はメモリコントローラハブ220及び入力/出力(I/O)コントローラハブ222を含む。メモリ206及びグラフィックアダプタ212がメモリコントローラハブ220に結合され、ディスプレイ装置218がグラフィックアダプタ212に結合される。記憶装置208、キーボード210、ポインタ装置214及びネットワークアダプタ216がI/Oコントローラハブ222に結合される。コンピュータ200の他の実施例は異なるアーキテクチャを有する。例えば、いくつかの実施例ではメモリ206はプロセッサ202に直接結合される。] 図2
[0015] 記憶装置208は、ハードドライブ、コンパクトディスクリードオンリメモリ(CD−ROM)、DVD又は固体メモリ装置のようなコンピュータ読取可能な記憶媒体である。メモリ206はプロセッサ202で使用される命令及びデータを保持する。ポインタ装置214は、マウス、トラックボール又は他のタイプのポインタ装置であり、キーボード210と共同してデータをコンピュータシステム200に入力するために使用される。グラフィックアダプタ212は画像及び他の情報をディスプレイ装置218に表示する。ネットワークアダプタはコンピュータシステム200をネットワーク110に結合する。コンピュータ200のいくつかの実施例は図2に示すものと異なる及び/又は以外のコンポーネントを有する。] 図2
[0016] コンピュータ200は、ここに記載する機能を提供するためのコンピュータプログラムモジュールを実行するように構成される。ここで使用する語「モジュール」は指定の機能を提供するために使用されるコンピュータプログラム命令及び他のロジックをいう。従って、モジュールはハードウェア、ファームウェア及び/又はソフトウェアで実現できる。一実施例では、実行可能なコンピュータプログラム命令からなるプログラムモジュールは記憶装置208に格納され、メモリ206にロードされ、プロセッサ202で実行される。]
[0017] 図1のエンティティにより使用されるコンピュータ200のタイプはエンティティにより使用される実施例及び処理能力に依存して変えることができる。例えば、携帯電話であるクライアント106は、典型的には限定処理能力、小さなディスプレイ218を持つが、ポインタ装置214を持たないかもしれない。これに対し、サーバ104はここに記載する機能を提供するために一緒に働く複数のブレードサーバを備えることができる。] 図1
[0018] 図3は本発明の一実施例によるサーバ104のモジュールの説明図である。サーバ104は、データベース330、クライアントインタラクションモジュール310、論理ファイル生成モーション320及びキャラクタ訓練モジュール340を含む。] 図3
[0019] デバイスベース330はアニメーション化されたキャラクタのプリレンダリングされたビデオクリップ及び各キャラクタのレコードを格納する。一つの実施例では、各キャラクタは、誕生日などの種々の個体特性、種々の物理的特性(例えば品種、サイズ、性別、外観など)、性格及び状態(空腹、怒ってる、眠そう、遊んでるなど)を有し、これらの特性はすべてキャラクタごとにデータベースレコードに格納される。データベース330はユーザ活動ログ及びキャラクタとのユーザインタラクションに関する他の情報も格納する。]
[0020] クライアントインタラクションモジュール310は、アニメーション化されたキャラクタ及びビデオクリップに対するクライアント106からのリクエストに対して適切なファイルを供給することによって応答する。クライアントインタラクションモジュール310は、クライアント106からインタラクティビティ報告も受け取り、それらをキャラクタ訓練モジュール340に渡す。]
[0021] 論理ファイル生成モジュール320は、クライアント106上のプレーヤ108からあるキャラクタに対するリクエストを受信するとき駆動される。一実施例では、このリクエストは一意の識別子を含み、この一意の識別子を論理ファイル生成モジュール320が使用して、この一意の識別子に対応するデータベース330内の情報を読み出し、当該キャラクタとその状態を識別する。論理ファイル生成モジュール320は、プレーヤ108に所定の状態の当該キャラクタに対する適切なビデオクリップをダウンロードさせて再生させる論理ファイルを構成する。例えば、平均的に大きいロットワイヤー犬は、一般に攻撃的にうなり、ほえるビデオクリップを再生するようにプログラムされるが、あまり動かないバセット犬は眠っているビデオクリップを再生するようにプログラムされるかもしれない。一実施例では、論理ファイルは拡張可能マークアップ言語(XML)で通信される。]
[0022] キャラクタ訓練モジュール340はユーザ活動ログを更新し、データベース330に格納されているキャラクタ状態を維持する。キャラクタ訓練モーション340はインタラクティビティ報告を、それらがプレーヤ108からクライアントインタラクションモジュール310を経て受信されるとき受信する。一つの実施例では、キャラクタ訓練モジュール340はインタラクティビティ報告を用いて、データベース330内のキャラクタ状態、性格及びケアスケジュールを更新する。]
[0023] 図4は本発明の一実施例によるクライアント106のモジュールの説明図である。ブラウザ107及びプレーヤ108については上で概説した。プレーヤ108は、キャッシュモジュール410、サーバインタラクションモジュール420、ユーザインタラクションモジュール430、ディスプレイモジュール440及び論理ファイル455を用いてキャラクタを制御する制御モジュール450も含む。] 図4
[0024] キャッシュモジュール410はサーバ104から受信されるアニメーション化されたキャラクタのビデオクリップを格納する。ビデオクリップが必要とされるとき、それがクライアント106のローカルメモリ内で入手可能である場合、キャッシュモジュール410がそれを供給する。ビデオクリップがローカルキャッシュから入手できない場合には、サーバインタラクションモジュール420がサーバ104からビデオクリップをフェッチする。いくつかの実施例では、サーバインタラクションモジュール420は、上述したように、ユーザ活動報告もキャラクタ訓練モーション340のためにサーバ104に送る。]
[0025] ユーザインタラクションモジュール430は訓練及び状態管理のためのユーザインタラクションをサポートする。ユーザインタラクションモジュール430はユーザによるキャラクタの動作の指示を可能にし、この指示は典型的にはキーボード入力、コンピュータマウス入力、リモコン入力、音声入力又はタッチスクリーン機能で達成される。キャラクタが応答するユーザインタラクションの例は図6を参照して後に記載される。] 図6
[0026] ディスプレイモジュール440はビデオクリップをモニタ又は他のディスプレイ218に表示させる。ディスプレイモジュールは表示用のビデオクリップをキャッシュモジュール410から受信する。]
[0027] 制御モジュール450はサーバ104から受信される論理ファイル455を用い、ユーザのためにどのビデオクリップを表示すべきか及び生きている応答するキャラクタをどの順序でシミュレートするかを決定する。論理ファイル455は、ビデオクリップの再生リスト及びビデオクリップの再生リストをトリガイベントに応答して変更するロジックを指定し、この点については後に詳細に説明する。制御モジュール450は、キャラクタを途切れることなく表示するために、ビデオクリップの再生終了を検出し、直ちに再生リストの次のビデオクリップの再生を開始させることができる。]
[0028] 2.プリレンダリングされたビデオクリップ
ネットワークを介するインタラクティブな3次元アニメーション化されたキャラクタの配信は、ビデオクリップをシームレスにつなぎ合わせて生きているようなキャラクタをシミュレートするためにプレーヤ108により使用される論理ファイル455と一緒にサーバ104からダウンロードされるプリレンダリングされたブリーフビデオクリップの配信により達成される。これらのプリレンダリングされたビデオクリップは図5−6を参照して後に記載する。] 図5
[0029] 図5は、本発明の一実施例によるループクリップ及び遷移クリップを含むビデオクリップ例の説明図である。ビデオクリップは3Dモデリング及びアニメーションソフトウェアツール、例えば当業者に知られているMAYA,MAX3D,BLENDERや任意の他の類似のソフトウェアツールを用いて3Dアーチストによって生成される。ビデオクリップはビデオデータを含み、オーディオデータも随意に含むことができる。ビデオデータは様々な動作を行うアニメーション化された3次元のキャラクタを含むものである。一実施例では、キャラクタをできるだけ生きているようにするために、呼吸している、立っている、座っている、腹ばい、寝ている、歩いている、遊んでいる、食べている、飲んでいる及びその他の様々な動きをしている約200のアニメーション化されたキャラクタのビデオクリップが使用される。他の実施例では、もっと多数の又は少数のビデオクリップが使用され得る。] 図5
[0030] ループクリップの生成においては、アーチストは、キャラクタは同じ位置から動き始め同じ位置で終わるようにする。ループクリップがオーディオデータを含む場合には、アーチストは、音声はループの終わりからループの始めへときれいに遷移するようにする。従って、ループクリップは滑らかに無限に繰り返し連続的に再生することができる。各ループクリップはキャラクタの3次元ブリーフアニメーションを含む。各ブリーフループクリップに対するプリレンダリング処理は典型的には数分間のワークステーション処理能力を要するが、この処理は完成ループを生成するために1度だけ実行すればよい。典型的なループクリップは、立っている状態で一度呼吸するキャラクタの0.5秒間のアニメーションである。このループクリップは、巡回させると滑らかに繰り返すように、同じ位置で始まり終わる一呼吸サイクル中のキャラクタの胸の動き及びしっぽ振りを示すことができる。キャラクタの最も共通の一組の姿勢を「コア位置」として設定する。一実施例では、コア位置は、立っている位置501、座っている位置502、腹ばい位置503及び寝ている位置504である。他の実施例では、もっと少ない又は多いコア位置を設定でき、図5に示す例とは異なるものとすることができる。コア位置は、キャラクタがより生きているように見えるように様々なキャラクタの位置に滑らかにつながることができる出発点となるキャラクタ姿勢を表す。ループクリップの変形は同様の立ち姿勢ループであるが、目のまばたきを追加したものとすることができ、このループは典型的には10ループごとに準ランダム的に含めてキャラクタが時々まばたきする錯覚を与えることができる。] 図5
[0031] 遷移クリップの生成においては、アーチストは、キャラクタはコア位置の一つから動き始め、別のコア位置で終わるようにする。従って、キャラクタは立っている位置501から座っている位置502へ又は2つの他のコア位置501−504の間で滑らかに移ることができる。いくつかの実施例では、コア位置からコア位置への自然な進行が存在する。例えば、キャラクタは立っている位置501から寝ている位置504へ遷移するには、キャラクタは座っている位置502及び腹ばい位置503を通過する。立っているコア位置のキャラクタのようなループクリップは繰り返し再生できるが、遷移クリップは2つの位置の間で動かして1度再生できるだけである。]
[0032] 図5は、2つのコア位置501,503の2つのバリエーション510,530も示す。具体的には、フレーム510は本例では小形犬であるキャラクタのクローズアップ位置を示す。フレーム530はキャラクタの腹を上に向けた(あお向け)位置を示す。フレーム511,512,513は立っている位置501からクローズアップ位置510への遷移クリップのアニメーションフレームを示す。フレーム531,532,533は腹ばい位置503からあお向け位置530への遷移クリップのアニメーションフレームを示す。クローズアップ位置510及びあお向け位置530からの遷移はこれらの位置に至る遷移とは異なる遷移とすることができるが、簡単のためにそれらは図5に示されていない。] 図5
[0033] ビデオクリップが生成されたら、それらを標準ファイルフォーマット、例えばクイックタイムムービーフォーマットにレンダリングする。次に、クイックタイムを用いてこのファイルをその最終フォーマット、例えばフラッシュビデオファイル(FLV)又はショックウェーブフラッシュファイル(SWF)のいずれかに変換する。これらのFLV又はSWFファイルはビデオクリップの最終フォームであり、サーバ104のデータベース330に格納される。]
[0034] 図6は、本発明の一実施例における、様々なトリガイベントに応答して発生し得るコア位置601からのバリエーションの説明図である。フレーム602,603,604及び605の各々は様々なトリガイベントに応答するキャラクタ動作のブリーフビデオクリップからのフレームをそれぞれ示す。] 図6
[0035] フレーム602は立っているコア位置601からの準ランダムな変形により生じる耳かきフレームである。論理ファイル455に含まれるロジックは、準ランダム耳かきループ602を実行する頻度を、立っているコア位置601からの他の重み付けされたバリエーションと一緒に設定することができる。]
[0036] フレーム605は、ロジック内で追跡される期間終了により生じる座る動作を示す。論理ファイル455に含まれるロジックは、キャラクタがユーザ命令なしでどのくらい長く立ったままでいるかを指定することができる。時間しきい値に到達したら、立っているコア位置から座っているコア位置への遷移クリップが再生される。]
[0037] フレーム603及び604はユーザによりトリガされるキャラクタの動作を示す。フレーム603は背中かきクリップを示し、例えばユーザがポインタ装置214を用いてカーソルを猫の背中の上にドラッグすることによってトリガされる。フレーム604はねずみハントクリップを示し、ユーザがメニュー640内のねずみのアイコンをクリックすることによって開始される。いくつかの実施例では、キャラクタに餌をやったりキャラクタと遊んだりするなどの動作を開始するために、様々なユーザインタフェースメニュー項目640がユーザに使用可能である。これらのメニュー項目のどれかが選択されると、プレーヤ108がリクエストされた動作を実行するキャラクタの適切なビデオクリップをダウンロードし、再生する。プレーヤ108はキーボード210、ポインタ装置214又は音声/オーディオ、リモートコントローラ、タッチスクリーンなどの他の入力装置からのユーザ入力に応答する。]
[0038] 3.インタラクティブな3Dアニメーション化されたキャラクタのネットワーク配信
インタラクティブな3Dアニメーション化されたキャラクタをネットワークを介して配信する方法を図7−8を参照して以下に説明する。] 図7
[0039] 図7は、本発明の一実施例による、インタラクティブなフルレンダリングされた3次元キャラクタをネットワークを介して配信する方法700を示すフローチャートである。ステップ701において、サーバ104のクライアントインタラクションモジュール310がクライアント106上のプレーヤ108のサーバインタラクションモジュール420からアニメーション化されたキャラクタに対するリクエストを受信する。このリクエストはプレーヤ識別子及び/又はアニメーション化されたキャラクタの識別子を含むことができる。よって、ユーザは、自身が前にインタラクトしたアニメーション化されたキャラクタをリクエストすることができる。キャラクタ識別子がリクエスト内に存在しない場合には、サーバ104の論理ファイル生成モジュール320が新しいアニメーション化キャラクタを生成し、それに新しいキャラクタ識別子を指定し、データベース330にそのレコードを格納することができる。] 図7
[0040] ステップ702において、アニメーション化されたキャラクタの状態が論理ファイル生成モジュール320により検査される。上述したように、キャラクタは、空腹、怒っている、寝ている、遊んでいる、病気、幸せそう又は時々刻々と準ランダムに又はユーザ活動に応答して変化する様々な他の一時的状態であるとすることができる。キャラクタの状態はサーバ104によってデータベース330に格納される。]
[0041] ステップ703において、リクエストされたアニメーション化されたキャラクタのための論理ファイル455が論理ファイル生成モジュール320により生成される。論理ファイル455はキャラクタの状態を含み、更にビデオクリップの再生リスト及びユニバーサルリソース識別子を含み、該識別子はそこから各ビデオクリップを必要に応じダウンロードしプレーヤ108でのその後の使用のためにキャッシュすることができる場所を指定する。]
[0042] ステップ704において、論理ファイルはクライアント106上のプレーヤ108に送られる。クライアント106上のプレーヤ108の動作は図6を参照して後に説明される。] 図6
[0043] ステップ705において、リクエスト時に、サーバ104のクライアントインタラクションモジュール310はプレーヤ108によりリクエストされたブリーフフルレンダリングビデオクリップをデータベース330から送る。プレーヤ108は、論理ファイルに従って必要とされるビデオクリップであってまだローカルメモリにキャッシュされていないビデオクリップをサーバ104からリクエストするだけである。]
[0044] ステップ706において、サーバ104のクライアントインタラクションモジュール310はプレーヤ108からユーザ活動の通知を随意に受信することができる。この通知はインタラクティブイベントデータの測定及び収集を許可する。これは、ユーザの活動をサーバ104のキャラクタ訓練モジュール340で追跡することによりキャラクタをユーザにより訓練することも可能にする。それゆえ、ユーザ活動の通知がステップ706において受信される場合には、ステップ707において、それに応じてデータベース330内のユーザ活動ログをキャラクタ訓練モジュール340により更新することができる。例えば、ユーザがキャラクタの「給餌」を選択する場合、サーバ104のクライアントインタラクションモジュール310はプレーヤ108のサーバインタラクションモジュール420によってこの給餌命令のHTTPで通知される。クライアントインタラクションモジュール310はこの通知をキャラクタ訓練モジュール340に送り、データベース330内のキャラクタ状態はキャラクタ訓練モジュール340によって、キャラクタが再び空腹になる十分な時間が経過するまで、「空腹」から「空腹でない」へと変化される。]
[0045] 図8は、本発明の一実施例による、クライアント106上のプレーヤ108の動作方法800を示すフローチャートである。方法800はステップ801において開始し、プレーヤ108の制御モジュール450がサーバ104から受信された論理ファイル455にアクセスする。上述したように、論理ファイル455はアニメーション化されたキャラクタの状態を含み、更にビデオクリップの再生リスト及びその場所から各ビデオクリップを必要に応じダウンロードしプレーヤ108でのその後の使用のためにキャッシュすることができる場所を指定するユニバーサルリソース識別子を含む。] 図8
[0046] ステップ802において、論理ファイル455からキャラクタの状態がプレーヤ108の制御モジュール450により決定される。上述したように、キャラクタは空腹、怒っている、寝ている、遊んでいる、病気、幸せそう又は時々刻々と準ランダムに又はユーザ活動に応答して変化する様々な他の一時的状態であるとすることができる。]
[0047] ステップ803において、プレーヤ108のサーバインタラクションモジュール420が論理ファイル455内の再生リストから、まだ局所的にキャッシュされてないビデオクリップをフェッチする。例えば、論理ファイル455に基づくキャラクタの状態が「空腹」であり、「空腹」状態に対応するビデオクリップがまだ局所的にキャッシュされていない場合には、適切なビデオクリップは、論理ファイル455からのこれらのビデオクリップに対するユニバーサルリソース識別子を用いて、サーバ104からダウンロードされる。方法800によれば、ビデオクリップはプレーヤにより一度だけダウンロードされ、プレーヤ108でのその後の使用のために局所的にキャッシュされるため、帯域幅の節約が得られる。方法800によれば、ビデオクリップはプリレンダリングされ、平易なビデオフォーマットでプレーヤ108に配信されるため、プロセッササイクルの節約が得られる。]
[0048] ステップ804において、プレーヤ108は決定された状態に対応するローカルキャッシュからのビデオクリップを再生する。例えば、キャラクタが空腹であるとき、キャラクタが空の餌入れを持ち上げ床に落とすようなビデオクリップが再生される。]
[0049] 方法800は、ステップ805においてプレーヤ108がトリガイベントを受信するまで、上述したように進行する。論理ファイル455は、再生されるビデオクリップの順序を変更することによってプレーヤ108をトリガイベントに応答させ、これはキャラクタが生きているような知覚を増進する。トリガイベントは準ランダム動作、期間の終了又は上述のごとき任意のユーザインタラクションの発生とすることができる。トリガイベントは、論理ファイル455に内蔵された命令に従ってキャラクタの状態の変化を生じさせることができる。例えば、ユーザがメニュー640を選択してキャラクタに餌を与える場合には、論理ファイル455は、妥当な時間の終了(別のトリガイベント)までキャラクタの状態は「空腹でない」に変化することを指示することができる。時間終了トリガイベントの後に、キャラクタは再び「空腹」状態になる。別の例として、トリガイベントは論理ファイル455により指定される準ランダム事象、例えばキャラクタの病気発生とすることができる。]
[0050] このように、ステップ805でのトリガイベントの受信後に、キャラクタの状態は変化し得る。この場合、プレーヤ108はステップ802においてキャラクタが示す状態の更なる決定を行い、決定された状態に対してステップ803−805を上述したように進める。]
[0051] 方法800は、ユーザ活動の通知をサーバ104に送るステップ806を随意に含むことができる。いくつかの実施例では、この通知はキャラクタとのユーザインタラクションの間中プレーヤ108のサーバインタラクションモジュール420から周期的に送られる。別の実施例では、この通知はキャラクタとのユーザインタラクションの終了時に送られる。この随意のステップは図7のフローチャートに示す方法のステップ706に対応する。このステップの実行時に、この通知はインタラクティビティイベントデータの測定及び収集を許可する。これはまた、ユーザの活動をデータベース330内のユーザ活動ログ内で時間とともに追跡することによりキャラクタをユーザにより訓練することを可能にする。これにより、ユーザが一つのインタラクティブセッションを越えて持続するキャラクタへの効果を感じれば、ユーザがキャラクタに対し感じる絆が更に高められることになる。] 図7
[0052] 以上の記載は本発明の実施例の動作を説明するためであり、本発明の範囲を限定することを意図するものではない。以上の考察から、多くの変形が当業者に明らかであり、これらの変形も本発明の精神及び範囲に包含される。当業者は、また、本発明は他の形態に具体化できることが認識されよう。まず、種々のコンポーネントの特定の名前、用語の大文字表記、属性、データ構造又は任意の他のプログラミング又は構造的特徴は必須又は重要でなく、本発明を実現するメカニズム又はその特徴は異なる名前、フォーマット又はプロトコルを有するものとすることができる。更に、システムは上述したハードウェア及びソフトウェアの組み合わせで又はすべてをハードウェア素子で実現することができる。また、ここに記載する機能の種々のシステムコンポーネント間の特定の分割は単なる例示であり、必須ではなく、単一のシステムコンポーネントにより実行される機能を多数のコンポーネントにより実行することができ、多数のコンポーネントにより実行される機能を単一のコンポーネントにより実行することができる。]
[0053] 上記のいくつかの部分は本発明の方法の形態の特徴及び情報処理の象徴を提示している。これらの記載及び説明は、データ処理技術の当業者がそれらの作業の本質を他の当業者に最も効果的に伝えるために使用する手段である。機能的に又は論理的に記載されるこれらの処理は、コンピュータプログラムにより実施されるものと理解されたい。更に、時には、これらの処理の構成をモジュールとして又は機能名で記述することは便利であることも証明されている。]
[0054] 以上の考察から明らかなように、特に断らない限り、明細書を通して、「決定」などの語を使用する考察は、コンピュータシステムメモリ、レジスタ又は他の情報記憶、伝送又は表示装置内の物理的(電子的)量として表されたデータを操作し変換するコンピュータシステム又は同様の電子計算装置の動作及び処理に関するものと理解されたい。]
[0055] 本発明の所定の特徴はここに方法の形で記載される処理ステップ及び命令を含む。本発明の処理ステップ及び命令は、ソフトウェア、ファームウェア又はハードウェアで具体化することができ、ソフトウェアで具体化される場合、リアルタイムネットワークオペレーティングシステムで使用される種々のプラットフォームからダウンロードして存在させ、動作させることができる点に注意されたい。]
[0056] 本発明はここに記載する処理を実行する装置にも関する。この装置は所要の目的のために具体的に構成することができ、コンピュータがアクセスできるコンピュータ読み取り可能な媒体に記憶されたコンピュータプログラムにより選択的に駆動される又は再構成される汎用コンピュータを備えることができる。このようなコンピュータプログラムは、コンピュータ読み取り可能な記憶媒体に格納することができるが、フロッピー(登録商標)ディスク、光ディスク、CD−ROM、磁気光学ディスクを含む任意のタイプのディスク、リードオンリーメモ(ROM)、ランダムアクセスメモリ(RAM)、EPROM、EEPROM、磁気又は光カード、特定用途向け集積回路(ASIC)、又はコンピュータシステムバスに結合される電気的命令を格納するのに適切な任意のタイプのメディアに限定されない。更に、本明細書でいうコンピュータは単一プロセッサ又は増大した計算能力のためのマルチプロセッサ設計を用いるアーキテクチャとすることができる。加えて、本発明は任意の特定のプログラミング言語について記載していない。本明細書に記載された本発明の教えは様々なプログラミング言語を用いて実施することができることを理解されたい。]
权利要求:

請求項1
インタラクティブなフルレンダリングされた3次元キャラクタをクライアント上のプレーヤにネットワークを介して配信する方法であって、該方法は、各自キャラクタのアニメーションシーケンスを示す複数のプリレンダリングされたブリーフビデオクリップを格納するステップと、キャラクタの状態を記述する状態情報を格納するステップと、前記プレーヤからの第1のリクエストに応答して、前記キャラクタの状態及び前記複数の格納されたビデオクリップからのビデオクリップの再生リストを含むとともに、前記再生リストに従って前記プレーヤにビデオクリップを再生させて生きているようなキャラクタをシミュレートさせる命令を出す論理ファイルを生成するステップと、前記論理ファイルを前記プレーヤに送るステップと、前記論理ファイル及び前記キャラクタとのユーザインタラクションに応答して、前記プレーヤから、前記再生リスト内の一つのビデオクリップに対する第2のリクエストを受信するステップと、前記第2のリクエストに応答して前記一つのビデオクリップを前記プレーヤに送るステップと、を備える方法。
請求項2
前記プレーヤにおける前記キャラクタとのユーザインタラクションを記述する情報を受信するステップと、該受信情報に応答してデータベースに格納されている前記状態情報を更新するステップとを更に備える、請求項1記載の方法。
請求項3
前記論理ファイルは、更に、トリガイベントに応答して前記プレーヤにビデオクリップを再生させる命令を出し、前記トリガイベントは準ランダム事象、期間終了及びユーザインタラクションを含む、請求項1記載の方法。
請求項4
前記複数のプリレンダリングされたブリーフビデオクリップ内の各ビデオクリップは動作を行う3次元のキャラクタのアニメーションである、請求項1記載の方法。
請求項5
インタラクティブなフルレンダリングされた3次元キャラクタをクライアント上のプレーヤにネットワークを介して配信する方法であって、該方法は、前記プレーヤからの第1のリクエストに応答して、各自キャラクタのアニメーションシーケンスを示す複数のプリレンダリングされたブリーフビデオクリップの再生リストを含むとともに、前記再生リスト及びユーザインタラクションに従って前記プレーヤにビデオクリップを再生させる命令を出す論理ファイルを受信するステップと、前記論理ファイルを実行するステップと、前記再生リストに応答して前記キャラクタのビデオクリップをダウンロードするステップと、前記ダウンロードしたキャラクタのビデオクリップを前記論理ファイルの命令に従って表示させて生きているようなキャラクタをシミュレートするステップと、前記キャラクタとのユーザインタラクションを受信するステップと、前記論理ファイルの実行及び前記キャラクタとのユーザインタラクションに応答して、前記再生リスト内の前記キャラクタの一つのビデオクリップをリクエストするステップと、前記リクエストされたビデオクリップ及び前記論理ファイル命令に応答して、前記リクエストされたキャラクタのビデオクリップを表示するステップと、を備える方法。
請求項6
前記論理ファイルは、更に、トリガイベントに応答して前記プレーヤにビデオクリップを再生させる命令を出し、前記トリガイベントは準ランダム事象、期間終了及びユーザインタラクションを含む、請求項5記載の方法。
請求項7
前記複数のプリレンダリングされたブリーフビデオクリップ内の各ビデオクリップは動作を行う3次元のキャラクタのアニメーションである、請求項5記載の方法。
請求項8
前記再生リストに応答して前記キャラクタのビデオクリップをダウンロードするステップは、ダウンロードしたビデオクリップをローカルキャッシュに格納するステップと、前記再生リスト内のビデオクリップがローカルキャッシュ内にないことが決定されたら前記ビデオクリップをダウンロードするステップと、を備える請求項5記載の方法。
請求項9
インタラクティブなフルレンダリングされた3次元キャラクタをクライアント上のプレーヤにネットワークを介して配信するための実行可能なコンピュータプログラム命令を記憶したコンピュータ読み取り可能な記憶媒体であって、該コンピュータプログラム命令は、各自キャラクタのアニメーションシーケンスを示す複数のプリレンダリングされたブリーフビデオクリップを格納する命令と、キャラクタの状態を記述する状態情報を格納する命令と、前記プレーヤからの第1のリクエストに応答して、前記キャラクタの状態及び前記複数の格納されたビデオクリップからのビデオクリップの再生リストを含むとともに、前記再生リストに従って前記プレーヤにビデオクリップを再生させて生きているようなキャラクタをシミュレートさせる命令を出す論理ファイルを生成する命令と、前記論理ファイルを前記プレーヤに送る命令と、前記論理ファイル及び前記キャラクタとのユーザインタラクションに応答して、前記プレーヤから、前記再生リスト内の一つのビデオクリップに対する第2のリクエストを受信する命令と、前記第2のリクエストに応答して前記一つのビデオクリップを前記プレーヤに送る命令と、を備えるコンピュータ読み取り可能な記憶媒体。
請求項10
前記コンピュータプログラム命令は、前記プレーヤにおける前記キャラクタとのユーザインタラクションを記述する情報を受信する命令と、該受信情報に応答してデータベースに格納されている前記状態情報を更新する命令とを更に備える、請求項9記載のコンピュータ読み取り可能な記憶媒体。
請求項11
前記論理ファイルは、更に、トリガイベントに応答して前記プレーヤにビデオクリップを再生させる命令を出し、前記トリガイベントは準ランダム事象、期間終了及びユーザインタラクションを含む、請求項9記載のコンピュータ読み取り可能な記憶媒体。
請求項12
前記複数のプリレンダリングされたブリーフビデオクリップ内の各ビデオクリップは動作を行う3次元のキャラクタのアニメーションである、請求項9記載のコンピュータ読み取り可能な記憶媒体。
請求項13
インタラクティブなフルレンダリングされた3次元キャラクタをクライアント上のプレーヤにネットワークを介して配信するための実行可能なコンピュータプログラム命令を記憶したコンピュータ読み取り可能な記憶媒体であって、該コンピュータプログラム命令は、前記プレーヤからの第1のリクエストに応答して、各自キャラクタのアニメーションシーケンスを示す複数のプリレンダリングされたブリーフビデオクリップの再生リストを含むとともに、前記再生リスト及びユーザインタラクションに従って前記プレーヤにビデオクリップを再生させる命令を出す論理ファイルを受信する命令と、前記論理ファイルを実行する命令と、前記再生リストに応答して前記キャラクタのビデオクリップをダウンロードする命令と、前記ダウンロードしたキャラクタのビデオクリップを前記論理ファイル命令に従って表示させて生きているようなキャラクタをシミュレートする命令と、前記キャラクタとのユーザインタラクションを受信する命令と、前記論理ファイルの実行及び前記キャラクタとのユーザインタラクションに応答して、前記再生リスト内の前記キャラクタの一つのビデオクリップをリクエストする命令と、前記リクエストされたビデオクリップ及び前記論理ファイル命令に応答して、前記リクエストされたキャラクタのビデオクリップを表示する命令と、を備えるコンピュータ読み取り可能な記憶媒体。
請求項14
前記論理ファイルは、更に、トリガイベントに応答して前記プレーヤにビデオクリップを再生させる命令を出し、前記トリガイベントは準ランダム事象、期間終了及びユーザインタラクションを含む、請求項13記載のコンピュータ読み取り可能な記憶媒体。
請求項15
前記複数のプリレンダリングされたブリーフビデオクリップ内の各ビデオクリップは動作を行う3次元のキャラクタのアニメーションである、請求項13記載のコンピュータ読み取り可能な記憶媒体。
請求項16
前記再生リストに応答して前記キャラクタのビデオクリップをダウンロードするコンピュータプログラム命令は、ダウンロードしたビデオクリップをローカルキャッシュに格納する命令と、前記再生リスト内のビデオクリップがローカルキャッシュ内にないことが決定されたら前記ビデオクリップをダウンロードする命令と、を備える請求項13記載のコンピュータ読み取り可能な記憶媒体。
类似技术:
公开号 | 公开日 | 专利标题
US20200226842A1|2020-07-16|Interactive virtual thematic environment
US10369460B1|2019-08-06|Systems and methods for generating a compilation reel in game video
US9473758B1|2016-10-18|Methods and systems for game video recording and virtual reality replay
US10143924B2|2018-12-04|Enhancing user experience by presenting past application usage
US9930308B2|2018-03-27|Platform-agnostic video player for mobile computing devices and desktop computers
US20190238919A1|2019-08-01|Video broadcast system and a method of disseminating video content
CN102591418B|2015-07-01|具有qos保证的可缩放多媒体计算机系统体系结构
US8627212B2|2014-01-07|System and method for embedding a view of a virtual space in a banner ad and enabling user interaction with the virtual space within the banner ad
KR102000618B1|2019-10-21|부가기능의 관리
US8115772B2|2012-02-14|System and method of customizing animated entities for use in a multimedia communication application
US8990693B2|2015-03-24|System and method for distributed media personalization
US8328640B2|2012-12-11|Dynamic advertising system for interactive games
US8572177B2|2013-10-29|3D social platform for sharing videos and webpages
US7441020B2|2008-10-21|Media plug-in registration and dynamic loading
US9706010B2|2017-07-11|Systems and methods for triggering user notifications of media content items
US8233005B2|2012-07-31|Object size modifications based on avatar distance
JP6533368B2|2019-06-19|情報処理装置、情報処理システム、情報処理プログラム及び情報処理方法
ES2704660T3|2019-03-19|Procedimiento y dispositivo para la renderización en línea de archivos de juego
JP6563627B2|2019-08-21|共有されたクラウドで実行されるミニゲームのコンテンツのタグ付け、およびタグ共有制御のシステムおよび方法
US9669310B2|2017-06-06|Gaming assistance system and method
US10668377B2|2020-06-02|System and method for capturing and sharing console gaming data
US20170249785A1|2017-08-31|Virtual reality session capture and replay systems and methods
JP3932461B2|2007-06-20|クライアント装置、画像表示制御方法、共有仮想空間提供装置および方法、並びに記録媒体
US8600220B2|2013-12-03|Systems and methods for loading more than one video content at a time
KR101978180B1|2019-05-14|클라이언트 장치에서 어플리케이션의 사용자 경험을 제어하는 방법 및 시스템
同族专利:
公开号 | 公开日
CA2714192A1|2009-08-20|
EP2255272A1|2010-12-01|
WO2009102879A1|2009-08-20|
US20090204909A1|2009-08-13|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题
法律状态:
优先权:
申请号 | 申请日 | 专利标题
[返回顶部]