(57)【要約】  クライアント装置について映像コンテンツの描画に係る描画命令セットを生成し、少なくともいくつかの描画命令セットが各描画リソースに導かれるように、描画命令セットの各々を少なくとも２つの描画リソースの集合のうちの少なくとも１つの描画リソースに導くことを含む方法が提供される。導くことの動作は、クライアント装置について割り当てられた描画リソースとして指定される、少なくとも２つの描画リソースのうちの１つの描画リソースに描画命令セットの各々を導くことを含む。さらに方法は、少なくとも２つの描画リソースのうちのいずれがクライアント装置についての割り当てられた描画リソースとして指定されるかを変更することを含む。
2015523886.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータ実装された方法であって、
クライアント装置について映像コンテンツの描画に係る描画命令セットを生成し、
少なくともいくつかの前記描画命令セットが各描画リソースに導かれるように、前記描画命令セットの各々を、少なくとも２つの描画リソースの集合のうちの少なくとも１つの描画リソースに導くこと含む方法。
【請求項２】
前記導くことは、前記クライアント装置について割り当てられた描画リソースとして指定された、前記少なくとも２つの描画リソースのうちの１つの描画リソースに描画命令セットの各々を導くこと含む請求項１に記載のコンピュータ実装された方法。
【請求項３】
前記少なくとも２つの描画リソースのいずれが前記クライアント装置についての前記割り当てられた描画リソースとして指定されるかを変更することをさらに含む請求項２に記載のコンピュータ実装された方法。
【請求項４】
前記割り当てられた描画リソースと前記クライアント装置との間の伝送距離を判断することをさらに含み、
前記変更は、前記判断された伝送距離に基づいて実行される請求項３に記載のコンピュータ実装された方法。
【請求項５】
前記割り当てられた描画リソースと前記クライアント装置との間の通信遅延を判断することをさらに含み、
前記変更は、前記判断された通信遅延に基づいて実行される請求項３に記載のコンピュータ実装された方法。
【請求項６】
前記割り当てられた描画リソースの計算負荷を判断することをさらに含み、
前記変更は、前記判断された計算負荷に基づいて実行される請求項３に記載のコンピュータ実装された方法。
【請求項７】
前記割り当てられた描画リソースと前記クライアント装置との間の通信リンクの品質を判断することをさらに含み、
前記変更は、前記判断された通信リンクの品質に基づいて実行される請求項３に記載のコンピュータ実装された方法。
【請求項８】
前記クライアント装置の地理的位置を判断し、
地理的位置と各描画リソースとの関係を特定するデータベースを参照することをさらに含み、
前記変更は、前記判断された地理的位置及び前記データベースの内容に基づいて実行される請求項３に記載のコンピュータ実装された方法。
【請求項９】
前記変更は、条件が満たされたと判断したことに応じて実行され、
前記条件が満たされたとの判断に先立って、前記少なくとも２つの描画リソースのうちの第１の描画リソースが前記クライアント装置についての前記割り当てられた描画リソースとして指定され、
前記変更は、前記少なくとも２つの描画リソースのうちの第２の描画リソースを、前記クライアント装置についての前記割り当てられた描画リソースとして指定することを含む請求項３に記載のコンピュータ実装された方法。
【請求項１０】
前記条件が満たされたと判断したことに応じて、前記第１及び第２の描画リソースの両方に、１以上の描画命令セットを重複して送信し、
次の描画命令セットは第２の描画リソースのみに送信することをさらに含む請求項９に記載のコンピュータ実装された方法。
【請求項１１】
前記クライアント装置からトリガを受信することをさらに含み、
前記変更は前記トリガの受信を検出したことに応じて実行される請求項１に記載のコンピュータ実装された方法。
【請求項１２】
前記ビデオゲーム内の進行を判断することをさらに含み、
前記変更は、前記ビデオゲームにおける進行が該ゲーム内の休止であると判断した場合に実行される請求項３に記載のコンピュータ実装された方法。
【請求項１３】
前記ビデオゲームが停止しているかを判断することをさらに含み、
前記変更は、前記ビデオゲームが停止していると判断した場合に実行される請求項３に記載のコンピュータ実装された方法。
【請求項１４】
演算エンティティにより実行された場合に、
クライアント端末について映像コンテンツの描画に係る描画命令セットを生成し、
少なくともいくつかの前記描画命令セットが各描画リソースに導かれるように、前記描画命令セットの各々を少なくとも２つの描画リソースの集合のうちの少なくとも１つの描画リソースに導く
ことを含む方法を該コンピュータエンティティに実行させるコンピュータ読み取り可能な命令を有するコンピュータ読み取り可能な記録媒体。
【請求項１５】
クライアント装置について割り当てられた描画サーバとして指定されている間に受信された第１の描画命令セットに基づいて、前記クライアント装置についての第１の映像フレームを生成し、前記クライアント装置に該第１の映像フレームを送信する第１の描画サーバと、
前記クライアント装置について割り当てられた描画サーバとして指定されている間に受信された第２の描画命令セットに基づいて、前記クライアント装置についての第２の映像フレームを生成し、前記クライアント装置に該第２の映像フレームを送信する第２の描画サーバと、を有するサーバシステム。
【請求項１６】
インターネットを介したセッションにおいて制御サーバと協働するクライアント装置の処理エンティティにより実行される方法であって、
前記インターネットを介して前記制御サーバに入力を送信し、
前記入力に応じて、第１の描画リソースから前記インターネットを介して第１の映像コンテンツを受信し、前記第１の描画リソースと異なる第２の描画リソースから前記インターネットを介して第２の映像コンテンツを受信し、
前記クライアント装置の表示手段を介して前記第１の映像コンテンツと前記第２の映像コンテンツを表示する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明のいくつかの態様は、概してビデオゲームに関し、特にクラウド型ゲームシステムにおける描画リソースの割り当てに関する。
【背景技術】
【０００２】
ビデオゲーム産業は、スタンドアロン型アーケードゲームの導入から、家庭用コンピュータゲーム、専門コンソール用に作られたゲームの出現まで、目覚ましい発展が見受けられる。そして、インターネットの大衆化により、次の主要な発展、所謂「クラウドゲーミング」が可能である。クラウド型ゲーミングシステムでは、プレイヤはインターネットを介してビデオゲームサーバに接続するスマートフォンやタブレットのような、一般的なインターネット対応電子機器を使用することが可能である。ビデオゲームサーバは、プレイヤについてセッションを開始し、複数のプレイヤについてそのようにしてもよい。ビデオゲームサーバは、プレイヤ行動（例えば移動、選択）及びゲームについての他の属性に基づいて、プレイヤについての映像コンテンツのフレームの描画、及び音声の生成を行う。符号化された映像及び音声は、インターネットを介してプレイヤの装置に配信され、視聴可能な画像及び音声として再生される。このようにして、世界中のあらゆる場所のプレイヤは、専用のビデオゲームコンソール、ソフト、描画処理ハードウェアを使用せずに、ビデオゲームをプレイすることができる。
【０００３】
特に移動端末を使用するような、プレイヤへの有意義な体験を保証するために、クラウド型ゲームシステムにおける映像コンテンツの描画リソースの好適な管理が必要である。
【発明の概要】
【０００４】
本発明の第１の広義な態様は、クライアント装置について映像コンテンツの描画に係る描画命令セットを生成し、少なくともいくつかの描画命令セットが各描画リソースに導かれるように、描画命令セットの各々を、少なくとも２つの描画リソースの集合のうちの少なくとも１つの描画リソースに導くこと含むコンピュータ実装された方法を提供しようとする。
【０００５】
本発明の第２の広義な態様は、演算エンティティにより実行された場合に、クライアント端末について映像コンテンツの描画に係る描画命令セットを生成し、少なくともいくつかの描画命令セットが各描画リソースに導かれるように、描画命令セットの各々を少なくとも２つの描画リソースの集合のうちの少なくとも１つの描画リソースに導くことを含む方法を該コンピュータエンティティに実行させるコンピュータ読み取り可能な命令を有するコンピュータ読み取り可能な記録媒体を提供しようとする。
【０００６】
本発明の第３の広義な態様は、クライアント装置について映像コンテンツの描画に係る描画命令セットを生成する制御モジュールと、少なくともいくつかの描画命令セットが各描画リソースに導かれるように、描画命令セットの各々を、少なくとも２つの描画リソースの集合のうちの少なくとも１つの描画リソースに導く出力制御器と、を有する装置を提供しようとする。
【０００７】
本発明の第４の広義な態様は、クライアント装置について割り当てられた描画サーバとして指定されている間に受信された第１の描画命令セットに基づいて、クライアント装置についての第１の映像フレームを生成し、クライアント装置に該第１の映像フレームを送信する第１の描画サーバと、を提供しようとする。クライアント装置について割り当てられた描画サーバとして指定されている間に受信された第２の描画命令セットに基づいて、クライアント装置についての第２の映像フレームを生成し、クライアント装置に該第２の映像フレームを送信する第２の描画サーバと、を有するサーバシステムを提供しようとする。
【０００８】
本発明の第５の広義な態様は、インターネットを介したセッションにおいて制御サーバと協働するクライアント装置の処理エンティティにより実行される方法であって、インターネットを介して制御サーバに入力を送信し、入力に応じて、第１の描画リソースからインターネットを介して第１の映像コンテンツを受信し、第１の描画リソースと異なる第２の描画リソースからインターネットを介して第２の映像コンテンツを受信し、クライアント装置の表示手段を介して第１の映像コンテンツと第２の映像コンテンツを表示する方法を提供しようとする。
【０００９】
これらの及び他の態様及び本発明の特徴は、以下の発明の特有の実施形態の記載及び図面を参照することにより、本技術分野に属する当業者に明らかとなるだろう。
【００１０】
添付の図面は以下。
【００１１】
発明の詳細な説明及び図面が、発明の任意の実施形態を示す目的のみのものであり、かつ理解を助けるためのものであることは明確に理解されよう。これらは、発明の限定の定義を目的とするものではない。
【図面の簡単な説明】
【００１２】
【図１】本発明の非限定的な実施形態に係る、クラウド型ビデオゲームシステムアーキテクチャのブロック図
【図２Ａ】本発明の非限定的な実施形態に係る、図１のアーキテクチャの様々な物理的構成要素を示したブロック図
【図２Ｂ】図２Ａの変形例
【図２Ｃ】図２Ａ及び２Ｂの物理的構成要素により実現されうる、図１のアーキテクチャの様々な機能モジュールを示したブロック図
【図３Ａ】、
【図３Ｂ】、
【図３Ｃ】本発明の非限定的な実施形態に係る、ビデオゲームの実行中に行われる処理セットの実行を示したフローチャート
【図４Ａ】、
【図４Ｂ】本発明の非限定的な実施形態に係る、受信した映像及び音声の各々を処理するためのクライアント装置の動作を示したフローチャート
【図５Ａ】本発明の非限定的な実施形態に係る、分散型描画環境における複数の描画リソースの仕様を示したブロック図
【図５Ｂ】描画命令セットのシーケンスに関する詳細及び動的描画リソース割り当ての結果生成された映像コンテンツのフレームを示した図
【図６Ａ】、
【図６Ｂ】クライアント装置について割り当てられた描画リソースとして指定される、描画リソースのアイデンティティの変化を知らせるために該クライアント装置に送信される警告メッセージの変形例を示した図
【図６Ｃ】、
【図６Ｄ】新たに割り当てらら描画リソースへの遷移をスムーズにするために、複数の描画命令セットが映像コンテンツの複数フレーム生成する変形例を示した図
【図７】クライアント装置によりなされる描画リソースの割り当て決定の後に、該クライアント装置から制御サーバに送信されるトリガを示した図
【図８】クライアント装置により検出されたゲームにおける動作レベルについての制御サーバによる使用を示したブロック図
【発明を実施するための形態】
【００１３】
《１．クラウドゲーミングアーキテクチャ》
図１は、本発明の非限定的な実施形態に係るクラウド型ビデオゲームシステムアーキテクチャを概略的に示している。該アーキテクチャは、インターネット１３０を介してクラウドゲームサーバシステム１００に接続された複数のクライアント装置１２０、１２０Ａを含む。クライアント装置１２０、１２０Ａの各々は、各々のローカルアクセスネットワーク（不図示）を介することを含む、あらゆる好適な方式でインターネット１３０に接続していてもよい。また、クラウドゲームサーバシステム１００は、ローカルアクセスネットワーク（不図示）を介してインターネット１３０に接続してもよいが、サーバシステム１００はローカルアクセスネットワークの媒介なく、インターネット１３０と直接接続してよい。クラウドゲームサーバシステム１００と１以上のクライアント装置１２０、１２０Ａとの接続は、１以上のチャネルを含んでいてもよい。これらのチャネルは、物理的及び／または論理的リンクによりなされ、無線周波数、光ファイバ、光空間（free-space optical）、同軸ケーブル、及びツイストペアを含む様々な物理的媒体を回遊してもよい。チャネルはＵＤＰやＴＣＰ／ＩＰのようなプロトコルに従ってもよい。また、１以上のチャネルが、仮想プライベートネットワーク（ＶＰＮ）でサポートされていてもよい。いくつかの実施形態では、１以上の接続はセッションベースでなされてもよい。
【００１４】
クラウドゲームサーバシステム１００は、クライアント装置１２０、１２０Ａのユーザが、ビデオゲームを個々に（即ち、シングルプレイヤ用ビデオゲーム）または集団で（即ち、マルチプレイヤ用ビデオゲーム）プレイすることを可能にする。ビデオゲームの非限定的な例は、レジャー、教育及び／またはスポーツについてプレイされるゲームを含みうる。しかし、ビデオゲームは貨幣損益の可能性を参加者に提示する必要はない。２つのクライアント装置１２０、１２０Ａのみが示されているが、クラウド型ビデオゲームシステムアーキテクチャ内のクライアント装置の数が特に限定されるものでないことは理解されるべきである。
【００１５】
クライアント装置１２０、１２０Ａのうちの１つのユーザは、ビデオゲーム内の参加者としてクラウドゲームサーバシステム１００に登録していてもよい。ユーザは「プレイヤ」として登録してもよく、ビデオゲームにより維持される仮想世界内のキャラクタ、アバター、レースカー、コックピット等を制御する機会を得るだろう。マルチプレイヤ用ビデオゲームの場合、仮想世界は２以上のプレイヤにより共有され、１人のプレイヤのゲームプレイが他のプレイヤに影響を及ぼし得る。いくつかの実施形態では、クライアント装置１２０、１２０Ａのうちの１つのユーザは、プレイヤではない「観戦者」として登録してもよく、これにより該ユーザはプレイヤのゲームプレイを観戦できるが、ゲーム内のアクティブキャラクタは制御できないことになる。別段の指示がない限り、「参加者」との文言が用いられる場合、プレイヤ及び観戦者に等しく適用されることを意味する。
【００１６】
様々なプレイヤ及び観戦者に関連するパラメータは、クラウドゲームサーバシステム１００の一部であってもよいし、クラウドゲームサーバシステム１００とは離れて存在するものであってもよい参加者データベース１０に格納されうる。
【００１７】
クライアント装置１２０、１２０Ａのうちの任意の１つの構成は、特に限定されるものではない。いくつかの実施形態において、１以上のクライアント装置１２０、１２０Ａは、例えばパーソナルコンピュータ（ＰＣ）、家庭用ゲーム機（ＸＢＯＸ（登録商標）、ＰＳ３（登録商標）、Ｗｉｉ（登録商標）等のコンソール）、携帯ゲーム機、スマートテレビ、セットトップボックス（ＳＴＢ）等であってもよい。他の実施形態において、１以上のクライアント装置１２０、１２０Ａは、携帯電話、電子手帳（ＰＤＡ）、タブレットのような通信または計算装置であってもよい。
【００１８】
クライアント装置１２０、１２０Ａのうちの任意の１つは、該任意のクライアント装置のユーザが入力を提供し、ビデオゲームに参加することを可能ならしめるために、１以上の入力装置（タッチスクリーン、キーボード、ゲームコントローラ、ジョイスティック等）が備えられていてもよい。他の実施形態において、ユーザは身体動作を行う、外部オブジェクトを振る等してもよく、これらの動作はカメラや他のセンサ（例えばＫｉｎｅｃｔ（登録商標））により検出され、該任意のクライアント装置で動作するソフトウェアは、ユーザが該任意のクライアント装置に対して入力を提供しようとしているか、もしそうであれば該入力の本質を正確に推測することを試みる。任意のクライアント装置は、受信したユーザ入力及び検出されたユーザ動作を、インターネット１３０を介してクラウドゲームサーバシステム１００に送信される「クライアント装置入力」に変換する。図示されている実施形態では、クライアント装置１２０はクライアント装置入力１４０を生成し、クライアント装置１２０Ａはクライアント装置入力１４０Ａを生成する。
【００１９】
クラウドゲームサーバシステム１００は、様々なクライアント装置１２０、１２０Ａから受信したクライアント装置入力１４０、１４０Ａを処理し、該様々なクライアント装置１２０、１２０Ａについての「メディア出力」を生成する。メディア出力は、符号化された映像コンテンツのフレーム（即ち、スクリーン上に再生された場合に画像として知覚される）及び音声（即ち再生された場合に音として知覚される）を含みうる。メディア出力は、パケットの形でインターネット１３０を介して送信される。クライアント装置１２０、１２０Ａの特定の１つに向けられたパケットは、インターネット１３０を介して該装置にルートされるように、このような方法でアドレスされうる。クライアント装置１２０、１２０Ａの各々は、クラウドゲームサーバシステム１００から受信したパケット内のメディア出力をバッファして処理する電気回路、画像を表示するためのディスプレイ、及び音声を出力する振動子（例えばスピーカ）を含んでいてもよい。また、追加の出力装置は、動作を誘導するための電気機械システム等を提供してもよい。
【００２０】
ここでは、「フレーム」との文言は映像コンテンツのフレームとスクリーン上に知覚される画像との間の１対１対応の存在を要求するものではないことは理解されるべきである。即ち、各フレームについて、表示される各画像の全体を示すデータを含めることも可能であるし、１つのフレームについて、画像の一部のみを示すデータを含めること、及び適切に再構成されて表示されるために、画像についてさらに２以上のフレームを要求することも可能である。同様に、１つのフレームは、Ｍ＜ＮであるＮ個の画像がＭ個のフレームを用いて示される等、１以上の完全な画像を示すデータを含んでいてもよい。
【００２１】
《２．クラウドゲームサーバシステム１００（分散型アーキテクチャ）》
図２Ａは、クラウドゲームサーバシステム１００の構成要素の非限定的な物理的構成の第１の態様を示している。本実施形態では、クラウドゲームサーバシステム１００の個々のサーバが、専用の機能を実行するよう構成されている。例えば、計算サーバ２００Ｃは、ユーザ入力に基づいてビデオゲーム内の状態変化の追跡についての役割を担い、描画サーバ２００Ｒは、グラフィック（映像コンテンツ）の描画についての役割を担い得る。
【００２２】
以下に記載される実施形態の例のために、クライアント装置１２０及びクライアント装置１２０Ａの両方は、プレイヤまたは参加者としてビデオゲームに参加しているものとする。しかしながら、いくつかのケースでは１人のプレイヤと観戦者なし、複数のプレイヤと１人の観戦者、１人のプレイヤと複数の観戦者、及び複数のプレイヤと複数の観戦者等で構成されてもよいことは理解されるべきである。
【００２３】
簡単のため、以下の説明では単一の描画サーバ２００Ｒに単一の計算サーバ２００Ｃが接続されているものとする。しかしながら、１以上の描画サーバ２００Ｒが同一の計算サーバ２００Ｃに接続される、あるいは１以上の計算サーバ２００Ｃが同一の描画サーバ２００Ｒに接続されるものであってもよいことは理解されるべきである。複数の描画サーバ２００Ｒが存在する場合、あらゆる適切な地理的領域に分散されるものであってもよい。
【００２４】
図２Ａの構成要素の非限定的な物理的構成に示されるように、計算サーバ２００Ｃは１以上の中央演算装置（ＣＰＵ）２２０Ｃ、２２２Ｃ及びランダムアクセスメモリ（ＲＡＭ）２３０Ｃを有する。ＣＰＵ２２０Ｃ、２２２Ｃは、例えば通信バスアーキテクチャを介してＲＡＭ２３０Ｃにアクセス可能である。２つのＣＰＵ２２０Ｃ、２２２Ｃのみが示されているが、計算サーバ２００Ｃのいくつかの実装例では、より多数のＣＰＵあるいは単一のＣＰＵのみが提供されてもよい。また、計算サーバ２００Ｃは、ビデオゲームに参加しているクライアント装置の各々から、インターネット１３０を介してクライアント装置入力を受信する、ネットワークインタフェース要素（ＮＩＣ）２１０Ｃ２を有する。以下に記載される実施形態の例では、クライアント装置１２０及び１２０Ａの両方は、ビデオゲームに参加しているものとし、従って、受信したクライアント装置入力はクライアント装置入力１４０及びクライアント装置入力１４０Ａが含まれうる。
【００２５】
さらに計算サーバ２００Ｃは、複数の描画命令セット２０４を出力する他のネットワークインタフェース要素（ＮＩＣ）２１０Ｃ１を有する。ＮＩＣ２１０Ｃ１を介して計算サーバ２００Ｃから出力された描画命令セット２０４は、描画サーバ２００Ｒに送信されうる。一実施形態において計算サーバ２００Ｃは、描画サーバ２００Ｒに直接接続されてもよい。他の実施形態では計算サーバ２００Ｃは、インターネット１３０であってもよいし、その他のネットワークであってもよいネットワーク２６０を介して描画サーバ２００Ｒに接続されてもよい。仮想プライベートネットワーク（ＶＰＮ）は、ネットワーク２６０を介して計算サーバ２００Ｃと描画サーバ２００Ｒとの間に確立されてもよい。
【００２６】
描画サーバ２００Ｒにおいて、計算サーバ２００Ｃにより送信された描画命令セット２０４は、ネットワークインタフェース要素（ＮＩＣ）２１０Ｒ１において受信され、１以上のＣＰＵ２２０Ｒ、２２２Ｒに対して導かれる。ＣＰＵ２２０Ｒ、２２２Ｒは、複数のグラフィック処理装置（ＧＰＵ）２４０Ｒ、２５０Ｒに接続される。非限定的な例として、ＧＰＵ２４０Ｒは、ＧＰＵコア２４２Ｒのセット及びビデオランダムアクセスメモリ（ＶＲＡＭ）２４６Ｒを含んでもよい。同様に、ＧＰＵ２５０ＲはＧＰＵコア２５２Ｒのセット及びビデオランダムアクセスメモリ（ＶＲＡＭ）２５６Ｒを含んでもよい。ＣＰＵ２２０Ｒ、２２２Ｒの各々は、ＧＰＵ２４０Ｒ、２５０Ｒの各々に接続されていてもよいし、ＧＰＵ２４０Ｒ、２５０Ｒの集合に接続されていてもよい。ＣＰＵ２２０Ｒ、２２２ＲとＧＰＵ２４０Ｒ、２５０Ｒとの間の通信は、例えば通信バスアーキテクチャを用いて確立されてよい。２つのＣＰＵ及び２つのＧＰＵのみが示されるが、描画サーバ２００Ｒの特定の実装例では、２以上のＣＰＵ及びＧＰＵがあってもよいし、単一のＣＰＵまたはＧＰＵだけであってもよい。
【００２７】
ＣＰＵ２２０Ｒ、２２２Ｒは、描画命令セット２０４を参加するクライアント装置用の複数のグラフィック出力ストリームに変換するために、ＧＰＵ２４０Ｒ、２５０Ｒと協働する。本実施形態では、クライアント装置１２０、１２０Ａの各々について２つのグラフィック出力ストリーム２０６、２０６Ａがある。このことは、さらに詳細が後述されるだろう。さらに描画サーバ２００Ｒは、これを介してグラフィック出力ストリーム２０６、２０６Ａがクライアント装置１２０、１２０Ａの各々に送信される、ネットワークインタフェース要素（ＮＩＣ）２１０Ｒ２を有する。
【００２８】
《３．クラウドゲームサーバシステム１００（ハイブリッドアーキテクチャ）》
図２Ｂは、クラウドゲームサーバシステム１００の構成要素の非限定的な物理的構成の第２の態様を示している。本実施形態ではハイブリッドサーバ２００Ｈは、ユーザ入力に基づいてビデオゲーム内の状態変化の追跡とグラフィック（映像コンテンツ）の描画の両方の役割を担う。
【００２９】
図２Ｂの構成要素の非限定的な物理的構成に示されるように、ハイブリッドサーバ２００Ｈは１以上の中央演算装置（ＣＰＵ）２２０Ｈ、２２２Ｈ及びランダムアクセスメモリ（ＲＡＭ）２３０Ｈを有する。ＣＰＵ２２０Ｈ、２２２Ｈは、例えば通信バスアーキテクチャを介してＲＡＭ２３０Ｈにアクセスできる。２つのＣＰＵ２２０Ｈ、２２２Ｈのみが示されているが、より多数のＣＰＵまたは単一のＣＰＵのみがハイブリッドサーバ２００Ｈのいくつかの実装例において提供されてもよいことは理解されるべきである。またハイブリッドサーバ２００Ｈは、ビデオゲームに参加するクライアント装置の各々からインターネット１３０を介してクライアント装置入力が受信されるネットワークインタフェース要素（ＮＩＣ）２１０Ｈを有する。以下に記載される実施形態の例では、クライアント装置１２０及びクライアント装置１２０Ａの両方は、ビデオゲームに参加しているものとし、故に受信したクライアント装置入力は、クライアント装置入力１４０及びクライアント装置入力１４０Ａを含んでもよい。
【００３０】
また、ＣＰＵ２２０Ｈ、２２２Ｈは、複数の描画処理装置（ＧＰＵ）２４０Ｈ、２５０Ｈに接続されている。非限定的な例ではＧＰＵ２４０Ｈは、ＧＰＵコア２４２のセット及びビデオランダムアクセスメモリ（ＶＲＡＭ）２４６Ｈを含んでいてもよい。同様にＧＰＵ２５０Ｈは、ＧＰＵコア２５２Ｈのセット及びビデオランダムアクセスメモリ（ＶＲＡＭ）２５６Ｈを含んでいてもよい。ＣＰＵ２２０Ｈ、２２２Ｈの各々は、ＧＰＵ２４０Ｈ、２５０Ｈの各々またはＧＰＵ２４０Ｈ、２５０Ｈの集合に接続されていてもよい。ＣＰＵ２２０Ｈ、２２２ＨとＧＰＵ２４０Ｈ、２５０Ｈとの通信は、例えば通信バスアーキテクチャを用いて確立されてもよい。２つのＣＰＵと２つのＧＰＵのみが示されているが、ハイブリッドサーバ２００Ｈの特定の実装例では、２以上のＣＰＵがあってもよいし、ＣＰＵまたはＧＰＵが単一のみであってさえよい。
【００３１】
描画命令セット２０４を参加しているクライアント装置のためのグラフィック出力ストリームに変換するために、ＣＰＵ２２０Ｈ、２２２ＨはＧＰＵ２４０Ｈ、２５０Ｈと協働する。本実施形態では、参加しているクライアント装置１２０、１２０Ａの各々に対して、２つのグラフィック出力ストリーム２０６、２０６Ａが存在している。グラフィック出力ストリーム２０６、２０６Ａは、ＮＩＣ２１０Ｈを介してクライアント装置１２０、１２０Ａの各々に送信される。
【００３２】
《４．クラウドゲームサーバシステム１００（機能概要）》
以下、さらに図２Ｃを参照すると、上述した計算サーバ２００Ｃと描画サーバ２００Ｒ（図２Ａ）及び／またはハイブリッドサーバ２００Ｈ（図２Ｂ）の物理的構成要素が、ビデオゲーム機能モジュール２７０、描画機能モジュール２８０、及び映像符号化器２８５を含む機能モジュールセットを実現している。図２Ａの非限定的な実施形態に関しては、ビデオゲーム機能モジュール２７０は計算サーバ２００Ｃにより実現され、描画機能モジュール２８０及び映像符号化器２８５は描画サーバ２００Ｒにより実現される。図２Ｂの非限定的な実施形態に関しては、ハイブリッドサーバ２００Ｈはビデオゲーム機能モジュール２７０、描画機能モジュール２８０、及び映像符号化器２８５を実現する。
【００３３】
本実施形態の例は、図を簡略化するために単一のビデオゲーム機能モジュール２７０について議論する。しかしながら、クラウドゲームサーバシステム１００の実際の実装において、ビデオゲーム機能モジュール２７０と同様の多くのビデオゲーム機能モジュールが平行に実行されうる。したがって、クラウドゲームサーバシステム１００は、同一のビデオゲームの複数の独立したインスタンス化または複数の異なるビデオゲームの同時のインスタンス化をサポートしうる。また、ビデオゲームは、あらゆる種類の１人プレイヤ用ビデオゲームまたはマルチプレイヤ用ゲームであってもよいことは理解されるべきである。
【００３４】
ビデオゲーム機能モジュール２７０は、計算サーバ２００Ｃまたはハイブリッドサーバ２００Ｈの所定の物理的構成要素により実現されてもよい。具体的には、ビデオゲーム機能モジュール２７０は、ビデオゲーム機能モジュール２７０は、（計算サーバ２００ＣのＣＰＵ２２０Ｃ、２２２Ｃやハイブリッドサーバ２００ＨのＣＰＵ２２０Ｈ、２２２Ｈのような）ＣＰＵにより実行可能なコンピュータ読み取り可能な命令として符号化されうる。該命令は、（計算サーバ２００Ｃの）ＲＡＭ２３０Ｃ、（ハイブリッドサーバ２００Ｈの）ＲＡＭ２３０Ｈ、あるいは他の記憶領域に、ビデオゲーム機能モジュール２７０により使用される定数、変数及び／または他のデータとともに明白に（tangibly）格納されうる。いくつかの実施形態においてビデオゲーム機能モジュール２７０は、（計算サーバ２００ＣのＣＰＵ２２０Ｃ、２２２Ｃやハイブリッドサーバ２００ＨのＣＰＵ２２０Ｈ、２２２Ｈのような）ＣＰＵにより実行されているオペレーティングシステムによりサポートされうる、 バーチャルマシンの環境において実行されてもよい。
【００３５】
描画機能モジュール２８０は描画サーバ２００Ｒ（図２Ａ）あるいはハイブリッドサーバ２００Ｈ（図２Ｂ）の所定の物理的構成要素により実現されてもよい。一実施形態において、描画機能モジュール２８０は、１以上のＧＰＵ（図２Ａの２４０Ｒ、２５０Ｒ、図２Ｂの２４０Ｈ、２５０Ｈ）が引き受けてもよいし、ＣＰＵリソースを利用してもよいししなくてもよい。
【００３６】
映像符号化器２８５は、描画サーバ２００Ｒ（図２Ａ）またはハイブリッドサーバ２００Ｈ（図２Ｂ）の所定の物理的構成要素により実現されてよい。本技術分野に属する当業者は、映像符号化器２８５を実現する種々の手法があることは容易に理解するだろう。図２Ａの実施形態において、映像符号化器２８５はＣＰＵ２２０Ｒ、２２２Ｒ及び／またはＧＰＵ２４０Ｒ、２５０Ｒにより実現されうる。図２Ｂの実施形態では、映像符号化器２８５はＣＰＵ２２０Ｈ、２２２Ｈ及び／またはＧＰＵ２４０Ｈ、２５０Ｈにより実現されうる。その他の実施形態では、映像符号化器２８５は、分離された符号化チップ（不図示）により実現されてもよい。
【００３７】
動作において、ビデオゲーム機能モジュール２７０は、受信したクライアント装置入力に基づいて描画命令セット２０４を生成する。受信したクライアント装置入力は、行き先となるビデオゲーム機能モジュールを示すデータ（例えばアドレス）、及び由来するユーザ及び／またはクライアント装置を示すデータを運ぶものであってよい。クライアント装置１２０、１２０Ａのユーザは、ビデオゲームに参加（即ちプレイヤまたは観戦者）しており、受信したクライアント装置入力は、クライアント装置１２０、１２０Ａから受信したクライアント装置入力１４０、１４０Ａを含む。
【００３８】
描画命令は、映像コンテンツのフレームまたは映像コンテンツの一連のフレームを生成するように専用グラフィック生成装置（ＧＰＵ）に導くために用いられうる命令を示す。図２Ｃを参照すると、描画命令セット２０４は、描画機能モジュール２８０により最終的に生成される映像コンテンツのフレームを定義する。これらのフレームにより示される画像は、ビデオゲーム機能モジュール２７０にプログラムされた、クライアント装置入力１４０、１４０Ａに応じた機能として変更される。例えば、ビデオゲーム機能モジュール２７０は、所定の特定の要因に応じてユーザに（将来のインタラクションが異なる、より挑戦的とさせる、あるいはより刺激的とさせる）進行体験を提供するような方法でプログラムされ得、一方で、他の特定の要因への応答は、回帰や終了の体験をユーザに与えるだろう。ビデオゲーム機能モジュール２７０への指示はバイナリ実行可能なファイルの形式で固定され得るが、クライアント装置入力１４０、１４０Ａは対応するクライアント装置１２０、１２０Ａを使用するプレイヤのインタラクション動作があるまで不明である。結果として、提供される特定のクライアント装置入力に応じて、様々な種類の生じ得る結果が存在してもよい。プレイヤ／観戦者とビデオゲーム機能モジュール２７０の間のクライアント装置１２０、１２０Ａを介した該インタラクションは、「ゲームプレイ」や「ビデオゲームをプレイしている」等として言及されうる。
【００３９】
描画機能モジュール２８０は、複数の映像コンテンツストリーム２０５を生成するために複数の描画命令セット２０４を処理する。一般に、参加者ごとに（あるいはクライアント装置ごとにも同等）、１つの映像コンテンツストリーム２０５が存在するだろう。描画が実行されている場合、３次元空間（例えば物理オブジェクト）あるいは２次元空間（例えばテキスト）に示される１以上のオブジェクトについてのデータは、特定のＧＰＵ２４０Ｒ、２５０Ｒ、２４０Ｈ、２５０Ｈのキャッシュメモリ（不図示）に展開される。該データは、ＧＰＵ２４０Ｒ、２５０Ｒ、２４０Ｈ、２５０Ｈにより、適切なＶＲＡＭ２４６Ｒ、２５６Ｒ、２４６Ｈ、２５６Ｈに格納されうる２次元画像を示すデータに変換されうる。このようにして、ＶＲＡＭ２４６Ｒ、２５６Ｒ、２４６Ｈ、２５６Ｈは、ゲーム画面についての画素（ピクセル）値の一時的な格納領域を提供しうる。
【００４０】
映像符号化器２８５は、映像コンテンツストリーム２０５を圧縮された映像フレームのストリームに圧縮及び符号化する。グラフィック出力ストリームとして言及される、圧縮された映像フレームの結果であるストリームは、クライアント装置基準で生成される。本実施形態の例では映像符号化器２８５は、クライアント装置１２０についてのグラフィック出力ストリーム２０６及びクライアント装置１２０Ａについてのグラフィック出力ストリーム２０６Ａを生成する。追加の機能モジュールが、インターネット１３０を介して送信可能なように映像フレームをパケット形式にするよう提供されてもよい。
【００４１】
《５．描画命令の生成》
以下、ビデオゲーム機能モジュール２７０による描画命令の生成が、図２Ｃ、３Ａ及び３Ｂを参照してより詳細に説明される。具体的には、ビデオゲーム機能モジュール２７０の実行は、いかに詳細が説明されるメインゲームプロセス３００Ａと１以上のグラフィック制御プロセス３００Ｂを含むいくつかのプロセスを伴う。
【００４２】
〈メインゲームプロセス〉
メインゲームプロセスとして言及される第１のプロセスは、図３Ａを参照して説明される。メインゲームプロセス３００Ａは、継続的に実行する。メインゲームプロセス３００Ａの一部として、実行中、クライアント装置入力が受信されうる動作３１０Ａが提供される。ビデオゲームが観戦の可能性がない１人プレイヤ用ビデオゲームである場合、単一のクライアント装置（例えばクライアント装置１２０）からのクライアント装置入力（例えばクライアント装置入力１４０）が動作３１０Ａの一部として受信される。ビデオゲームがマルチプレイヤ用ビデオゲームまたは観戦の可能性がある１人プレイヤ用ゲームである場合、１以上のクライアント装置（例えばクライアント装置１２０及び１２０Ａ）からのクライアント装置入力（例えばクライアント装置入力１４０及び１４０Ａ）が、動作３１０Ａの一部として受信されうる。
【００４３】
非限定的な例示の目的で、任意のクライアント装置からの入力は、該任意のクライアント装置のユーザが、制御下にあるキャラクタに対して移動、ジャンプ、キック、旋回、揺動、押す、引く等をさせることを所望していることを伝送しうる。代替的あるいは追加的に、該任意のクライアント装置からの入力は、１以上の音声、映像またはゲームプレイ設定を変更する、ゲームをロード／セーブする、あるいはネットワークセッションの作成やセッションへの参加を行うために、該任意のクリア案と装置のユーザによりなされたメニュー選択を伝送しうる。代替的あるいは追加的に、該任意のクライアント装置からの入力は、該任意のクライアント装置のユーザが特定のカメラ視野（例えば１人称または３人称）の選択、あるいは仮想世界内の視野の再配置を所望していることを伝送しうる。
【００４４】
動作３２０Ａで、ゲーム状態は、動作３１０Ａにおいて受信したクライアント装置入力の少なくとも一部及び他のパラメータに基づいて更新されうる。ゲーム状態の更新は、次の動作を伴いうる。
【００４５】
第１に、ゲーム状態の更新は、クライアント装置入力が受信されうるクライアント装置に関連付けられた参加者（プレイヤまたは観戦者）の所定の特性（property）を更新することを伴いうる。これらの特性は、参加者データベース１０に格納されうる。参加者データベース１０に保持されて動作３２０において更新されうる参加者特性の例は、カメラ視野の選択（例えば１人称、３人称）、プレイモード、選択された音声または映像の設定、スキルレベル、顧客グレード（例えばゲスト、プレミアム等）を含みうる。
【００４６】
第２に、ゲーム状態の更新は、クライアント装置入力の解釈に基づいて、仮想世界内の所定のオブジェクトの属性を更新することを伴いうる。属性が更新されるオブジェクトは、いくつかのケースでは２次元または３次元モデルにより示されてもよいし、プレイキャラクタ、非プレイキャラクタ及び他のオブジェクトを含みうる。プレイヤキャラクタである場合、更新されうる属性はオブジェクトの位置、強さ、武器／防具、経過した寿命、特殊能力、速さ／方向（速度）、アニメーション視覚的効果、エネルギ、弾薬等を含みうる。他のオブジェクト（背景、植物、建物、乗り物、スコアボード等）である場合、更新されうる属性は、該オブジェクトの位置、速度、アニメーション、ダメージ／体力、視覚的効果、テキスト内容等を含みうる。
【００４７】
クライアント装置入力とは別のパラメータは、上述した（参加者の）特性及び（仮想世界オブジェクトの）属性に影響を与えうることは理解されるべきである。例えば、様々なタイマー（経過時間、特定のイベントからの時間、一日の仮想時刻、プレイヤ総数、参加者地理的位置等）が、ゲーム状態の様々な態様に影響を及ぼしてもよい。
【００４８】
動作３２０Ａの実行に加えてゲーム状態が更新されると、メインゲームプロセス３００Ａは動作３１０Ａに戻り、前回のメインゲームプロセスを終了してから受信した新たなクライアント装置入力が収集され、処理される。
【００４９】
〈グラフィック制御プロセス〉
以下、グラフィック制御プロセスとして言及される第２のプロセスについて、図３Ｂを参照して説明する。グラフィック制御プロセス３００Ｂは継続的に実行し、各々が描画命令セット２０４それぞれの結果である、分離された複数のグラフィック制御プロセス３００Ｂが存在しうる。観戦の可能性がない１人プレイヤ用ビデオゲームの場合、１人のプレイヤのみが存在し、そして描画命令セット２０４の結果は１つのみであり、故にグラフィック制御プロセス３００Ｂは上述したメインゲームプロセス３００Ａの延長として実行しうる。マルチプレイヤ用ビデオゲームの場合、複数の独立した描画命令セットが複数のプレイヤについて生成されることが必要であり、従って複数のグラフィック制御プロセス３００Ｂが並行して実行しうる。観戦の可能性がある１人プレイヤ用ゲームの場合、また単一の描画命令セット２０４のみが存在し得、従って単一のグラフィック制御プロセス３００Ｂがビデオゲーム機能モジュール２７０において実行しうるが、結果である映像コンテンツストリームは、描画機能モジュール２８０により複数の観戦者にも複製されうる。もちろん、これらはただの実装の例であり、限定として取られるべきものではない。
【００５０】
独立の映像コンテンツストリームを要求する任意の参加者についてのグラフィック制御プロセス３００Ｂの動作３１０Ｂで、ビデオゲーム機能モジュール２７０は該任意の参加者について描画されるオブジェクトを決定する。この動作は、以下の種類のオブジェクトを識別することを含む。
【００５１】
第１に、この動作は、仮想世界から任意の参加者についての「ゲーム画面描画範囲」（「シーン」としても知られる）内にある、これらのオブジェクトを識別することを含みうる。ゲーム画面描画範囲は、任意の参加者のカメラの画角（perspective）から「観ることが可能」な、仮想世界の一部を含む。これは、仮想世界内のオブジェクトに関連するカメラの位置及び方向に依る。動作３１０Ｂの非限定的な実装例において、錐台が仮想世界に適用され、該錐台内のオブジェクトが保持またはマークされる。錐台は、任意の参加者のカメラの位置に置かれた頂点を有し、該カメラの方向性により方向が規定されるものであってもよい。
【００５２】
第２に、この動作は、仮想世界内に現れないが、それにも関わらず任意の参加者について描画される追加のオブジェクトを識別することを含みうる。例えば、これらの追加のオブジェクトは、非限定的な２〜３の可能性を挙げると、テキストメッセージ、グラフィック警告及びダッシュボードインジケータを含んでもよい。
【００５３】
動作３２０Ｂで、ビデオゲーム機能モジュール２７０は、動作３１０Ｂにおいて識別されたオブジェクトを、グラフィック（映像コンテンツ）に描画変換するための命令セットを生成する。描画は、視野及び適用される照明状態に従って、１つのオブジェクトまたはオブジェクト群の３次元または２次元座標の、表示可能な画像を示すデータへの変換を参照してもよい。これは、例えばここに参照により組み込まれる「"Computer Graphics and Geometric Modelling: Implementation & Algorithms", Max K. Agoston, Springer-Verlag London Limited, 2005」に記載されるような、あらゆるアルゴリズム及び技術を用いて達成されうる。
【００５４】
動作３３０Ｂで、動作３２０Ｂにおいて生成された描画命令は描画機能モジュール２８０に出力される。これは、描画機能モジュール２８０に送信する描画命令セット２０４への、生成された描画命令のパケット化を伴いうる。
【００５５】
上述したグラフィック制御プロセス３００Ｂの複数のインスタンス化が実行されることにより複数の描画命令セット２０４が得られることは、本技術分野に属する当業者には理解されよう。
【００５６】
《６．グラフィック出力の生成》
描画機能モジュール２８０は、複数の描画命令セット２０４を解釈し、参加しているクライアント装置ごとに１つである、複数の映像コンテンツストリーム２０５のセットを生成する。描画は、（図２Ａの）ＣＰＵ２２０Ｒ、２２２Ｒまたは（図２Ｂの）ＣＰＵ２２０Ｈ、２２２Ｈの制御の下、ＧＰＵ２４０Ｒ、２５０Ｒ、２４０Ｈ、２５０Ｈにより実現されうる。１つの参加者のクライアント装置に係る映像コンテンツのフレームが生成されるレートは、フレームレートとして参照されうる。
【００５７】
Ｎの参加者が存在する実施形態において、Ｎ個の描画命令セット２０４（各参加者について１つ）が存在し、Ｎ個の映像コンテンツストリーム２０５（各参加者について１つの）が存在し得る。この場合、描画機能は参加者間で共有されない。しかしながら、２〜３の描画命令セットが描画機能モジュール２８０により処理される必要があるように、Ｍ個（Ｍ＜Ｎ）の描画命令セット２０４からＮ個の映像コンテンツストリーム２０５が生成されてもよい。この場合、少ない数の描画命令セット２０４からより多い数の映像コンテンツストリーム２０５を生成するために、描画機能モジュール２８０は共有または複製を行ってもよい。このような共有または複製は、複数の参加者（例えば観戦者）が同一のカメラ画角を観ることを所望した場合に普及するものであってもよい。故に、描画機能モジュール２８０は、生成された映像コンテンツストリームが１以上の観戦者に複製されるように機能を実行してもよい。
【００５８】
次に、映像コンテンツストリーム２０５の各々における映像コンテンツは、映像符号化器２８５により符号化され、グラフィック出力ストリームとして参照される、各クライアント装置に関連付けられた一連の符号化映像コンテンツが得られる。図２Ａ〜２Ｃの実施形態の例において、クライアント装置１２０についての一連の符号化映像コンテンツはグラフィック出力ストリーム２０６として参照され、クライアント装置１２０Ａについての一連の符号化映像コンテンツはグラフィック出力ストリーム２０６Ａとして参照されてもよい。
【００５９】
映像符号化器２８５は、デジタル映像についての映像圧縮または展開を可能にする、実行する、または定義する装置（またはコンピュータ読み取り可能な命令セット）であってもよい。映像圧縮は、（画素位置、色値等で表現される）デジタル画像データのオリジナルストリームを、より少ないビットを用いるが実質的に同一の情報を伝送するデジタル画像データの出力ストリームに変換する。あらゆる適切な圧縮アルゴリズムが用いられてよい。データ圧縮に加え、映像コンテンツの特定のフレームの符号化に用いられる符号化処理は、暗号化を適用してもよいし、しなくてもよい。
【００６０】
上述の手法で生成されたグラフィック出力ストリーム２０６、２０６Ａは、インターネット１３０を介して各クライアント装置に送信される。非限定的な例示目的で、グラフィック出力ストリームは、各々がヘッダ及びペイロードを有するパケットに、セグメント化あるいは形式化されてもよい。任意の参加者についての映像コンテンツに含まれるパケットのヘッダは、該任意の参加者に関連付けられたクライアント装置のネットワークアドレスを含んでもよく、ペイロードは全部または一部として映像コンテンツを含んでもよい。非限定的な実施形態において、所定の映像コンテンツを符号化するために用いられる圧縮アルゴリズムの身元（identity）及び／またはバージョンが、該映像コンテンツを伝送する１以上のパケットのコンテンツ内に符号化されてもよい。符号化映像コンテンツの他の送信手法は、本技術分野に属する当業者には思い当たるだろう。
【００６１】
本開示は個々が２Ｄ画像を示す映像コンテンツの描画にフォーカスするものであるが、本発明は３次元効果を生成するために、フレームごとに複数の２Ｄ画像を示す映像コンテンツの描画の可能性を除外するものではない。
【００６２】
《７．クライアント装置におけるゲーム画面再生》
以下、非限定的な例示の目的で、クライアント装置１２０またはクライアント装置１２０Ａたり得る、任意の参加者に関連付けられたクライアント装置の動作を示す図４Ａを参照する。
【００６３】
動作４１０Ａで、（グラフィック出力ストリーム２０６、２０６Ａの１つに含まれる）映像コンテンツの符号化されたフレームは、実施形態により描画サーバ２００Ｒ（図２Ａ）から、あるいはハイブリッドサーバ２００Ｈ（図２Ｂ）から、インターネット１３０を介して受信される。
【００６４】
動作４２０で、映像コンテンツの符号化されたフレームは、符号化処理に用いられた圧縮アルゴリズムを補間する展開アルゴリズムに従って復号される。非限定的な実施形態において、映像コンテンツの符号化に用いられた圧縮アルゴリズムの身元またはバージョンは、予め知らされていてもよい。他の実施形態において、映像コンテンツの符号化に用いられた圧縮アルゴリズムの身元またはバージョンは、映像コンテンツ自体が添付されてもよい。
【００６５】
動作４３０Ａで、映像コンテンツの（復号された）フレームが処理される。これは、バッファへの映像コンテンツの復号されたフレームの配置、誤り訂正、複数の連続するフレームにおけるデータの順序付け及び／または合成、アルファブレンディング、欠損したデータの一部の補間等を含みうる。該結果は、毎フレーム基準でユーザに提示される最終画像を示す映像コンテンツとなり得る。
【００６６】
動作４４０Ａで、最終画像がクライアント装置の出力機構を介して出力される。例えば、コンポジット映像フレームが、クライアント装置のディスプレイに表示されうる。
【００６７】
《８．音声生成》
以下、音声生成処理として言及される３番目の処理が、図３Ｃを参照して説明される。音声生成処理は、知覚可能な音声ストリームを要求する各参加者について、継続的に実行される。一実施形態において、音声生成処理はグラフィック制御プロセス３００Ｂと無関係に実行されてよい。他の実施形態において、音声生成処理及びグラフィック制御処理の実行が連動されてもよい。
【００６８】
動作３１０Ｃで、ビデオゲーム機能モジュール２７０は、生成される音声を決定する。具体的に該動作は、音量（音の強さ）及び／または仮想世界内において参加者への近さに応じて、地形音響特性に影響を及ぼす仮想世界内のオブジェクトに関連付けられたこれらの音声を特定することを含みうる。
【００６９】
動作３２０Ｃで、ビデオゲーム機能モジュール２７０は音声セグメントを生成する。音声セグメントの継続期間は映像フレームの継続期間に及んでもよいし、いくつかの実施形態では音声セグメントは映像フレームよりも少ない頻度で生成されてもよいし、他の実施形態では音声セグメントは映像フレームよりも高い頻度で生成されてもよい。
【００７０】
動作３３０Ｃで、音声セグメントは例えば音声符号化器により符号化され、符号化音声セグメントが得られる。音声符号化器は、音声圧縮または展開アルゴリズムを可能にする、実行する、または定義する装置（または命令セット）であってもよい。音声圧縮は、（徐々に振幅及び位相が変化する音波として表現される）デジタル音声のオリジナルストリームを、より少ないビットを使用するが実質的に同一の情報を伝送するデジタル音声データの出力ストリームに変換する。あらゆる適切な圧縮アルゴリズムが用いられてよい。音声圧縮に加え、特定の音声セグメントの符号化に用いられる符号化処理は暗号化を適用してもよいし、しなくてもよい。
【００７１】
いくつかの実施形態において、音声セグメントは計算サーバ２００Ｃ（図２Ａ）またはハイブリッドサーバ２００Ｈ（図２Ｂ）のいずれかの専用ハードウェア（例えばサウンドカード）により生成されてもよいことは理解されるべきである。図２Ａの分散型構成に適用可能な代替的実施形態において、音声セグメントはビデオゲーム機能モジュール２７０によりスピーチパラメータ（例えばＬＰＣパラメータ）にパラメータ化されてもよく、スピーチパラメータは描画サーバ２００Ｒにより、配信先のクライアント装置（例えばクライアント装置１２０またはクライアント装置１２０Ａ）に再配信されうる。
【００７２】
上述した方式で生成された符号化された音声は、インターネット１３０を介して送信される。非限定的な例示を目的として、符号化された音声入力は、各々がヘッダ及びペイロードを有するパケットに分解及び形式化されうる。ヘッダは、音声生成処理が実行される参加者に関連付けられたクライアント装置のアドレスを伝送してもよく、ペイロードは符号化された音声を含んでいてもよい。非限定的な実施形態において、任意の音声セグメントの符号化に用いられる圧縮アルゴリズムの身元及び／またはバージョンは、該任意のセグメントを伝送する１以上のパケットのコンテンツ内に符号化されてもよい。符号化された音声を送信する他の手法は、本技術分野に属する当業者には思い当たるだろう。
【００７３】
以下、非限定的な例示を目的として、クライアント装置１２０またはクライアント装置１２０Ａであってよい、任意の参加者に関連付けられたクライアント装置の動作を示す図４Ｂを参照する。
【００７４】
動作４１０Ｂで、符号化された音声セグメントが（実施形態に応じて）計算サーバ２００Ｃ、描画サーバ２００Ｒ、またはハイブリッドサーバ２００Ｈから受信される。動作４２０Ｂで、符号化処理に用いられた圧縮アルゴリズムを補間する展開アルゴリズムに従って、符号化された音声は復号される。非限定的な実施形態において、音声セグメントの符号化に用いられた圧縮アルゴリズムの身元またはバージョンは、音声セグメントを伝送する１以上のパケットのコンテンツ内で特定されてもよい。
【００７５】
動作４３０Ｂで、（復号された）音声セグメントが処理される。これは、バッファ内への復号された音声セグメントの配置、誤り訂正の実行、複数の連続する波形合成等を含みうる。該結果は、毎フレーム基準でユーザに提示される最終音声となり得る。
【００７６】
動作４４０Ｂで、最終的に生成された音声は、クライアント装置の出力機構を介して出力される。例えば、音声はクライアント装置のサウンドカードまたはスピーカを介して再生される。
【００７７】
《９．非限定的な実施形態の具体的開示》
以下、本発明の所定の非限定的な実施形態のより詳細な開示が与えられる。
【００７８】
参照は、制御サーバ５１０、複数の描画リソース５０１及びクライアント装置５２０が示される図５Ａについてなされる。描画リソース５０１は、制御サーバ５１０から描画命令セットを受信し、符号化された映像コンテンツを生成し、インターネット１３０等のネットワークを介して送信する。その結果、１以上の描画リソース５０１は、図２Ａの描画サーバ２００Ｒと概して類似し得、クライアント装置５２０は上述のクライアント装置１２０、１２０Ａのいずれであってもよい。描画リソース５０１は、例えば複数の建物や都市等、地理的に分散されてよい。代わりに、２以上の描画リソース５０１が、同一の建物や都市等、同一の物理的位置に配置されてもよい。
【００７９】
非限定的な実施形態において、制御サーバ５１０の設計は図２Ａの計算サーバ２１０Ｃに基づいていてもよい。故に、制御サーバ５１０はゲーム制御サーバであってもよいし、そのソフトウェア構成は描画命令のセット（または「描画命令セット」）を生成する、上述したビデオゲーム機能モジュール２７０を含みうる。描画命令セットは、（例えばインターネットを介してサーバに到達可能な）描画リソースにより解釈され、映像コンテンツの１以上のフレームの生成が結果として得られる。現在図示されている例示の目的で、ビデオゲーム機能モジュール２７０により生成された描画命令セットは５３０1、５３０2で示される。また、現在図示されている例では、描画命令セット５３０1、５３０2等の各々は、描画リソース５０１により最終的に生成される、（各々５４０1、５４０2等により示される）映像コンテンツの１フレームに対応している。しかしながら、一般的に言えば描画命令セットは最終的に生成された映像コンテンツの１以上のフレームに対応し得るため、この１対１対応は、本発明の限定として理解されるべきではない。
【００８０】
制御サーバ５１０は、ビデオゲーム機能モジュール２７０により生成される描画命令セット５３０1、５３０2等を傍受する出力制御器５１２を実現するための適切なハードウェア、ソフトウェア及び／または制御論理を含み、どこに描画命令セットの各々を送信すべきか決定する。換言すれば、時間内の特定の瞬間において、描画命令セット５３０1、５３０2等の各々は、該瞬間において「割り当てられた」描画リソースと指定されている描画リソース５０１の１つに送信される。徐々に変化する「割り当てられた描画リソース」の識別子は、描画リソース割り当てモジュール５１４により出力制御器５１２に提供されうる。故に、（クライアント装置５２０のような）任意のクライアント装置についての出力制御器５１２の機能は、１つの入力と複数の出力を有し、描画リソース割り当てモジュール５１４により制御されるデマルチプレクサと同様であってよい。
【００８１】
描画リソース割り当てモジュール５１４は、制御サーバ５１０のハードウェア／ソフトウェア／制御論理リソースを用いて実現されてもよい。機能的な観点から、描画リソース割り当てモジュール５１４は１以上のパラメータを監視し、監視したパラメータに基づいて描画リソースの再割り当ての決定を行う。いずれの描画リソースを割り当てられた描画リソースとして指定するかを変更するための決定は、参加者毎（あるいはクライアント装置毎）基準になされてよい、即ち、メモリには参加者／クライアント装置のリストが格納されており、各参加者／クライアント装置には、その瞬間において該参加者／クライアント装置について割り当てられた描画リソースに指定された特定の描画リソースが関連付けられている。クライアント装置５２０のような任意のクライアントについて割り当てられた描画リソースの身元は、様々な動作状況及び制約に適応するために、動的に（即ち徐々に）変更してよい。
【００８２】
いずれの描画リソースをクライアント装置５２０について割り当てられた描画リソースとして指定するかを変更するための決定が描画リソース割り当てモジュール５１４によりなされると、該決定は制御信号５１６の形式で出力制御器５１２と直接通信されうる。制御信号５１６は、新たに割り当てられた描画リソースを具体的に識別し得る。割り当てられた描画リソースの識別子は、例えば各サーバのＩＰアドレスとして符号化されてよい。あるいは、該決定は非直接的な手法で通信されうる。例えば、現在割り当てられている描画リソースの識別子（例えばサーバのＩＰアドレスまたは他の識別子）は、制御サーバ５１０において、少なくとも出力制御器５１２により読み取り可能で、かつ少なくとも描画リソース割り当てモジュール５１４により書き込み可能なメモリ位置（不図示）に格納されうる。出力制御器５１２は、標準的な基準において、該メモリ位置をポーリングするよう構成されていてもよい。この場合、描画リソース割り当てモジュール５１４は新たに割り当てられた描画リソースの識別子を上述したメモリ位置に単純に書き込み得、該最新の情報は、メモリ位置から読み出した場合に出力制御器５１２により利用可能であろう。もちろん、出力制御器５１２への描画リソースの再割り当ての決定を伝送する他の機構が可能である。
【００８３】
図５Ｂに示される現在の例示の目的で、動作中、ビデオゲーム機能モジュール２７０は描画命令セット５３０1、５３０2、５３０3、５３０4、５３０5、及び５３０6をその順番で含むものとする一連の描画命令セットを生成する。６つの描画命令セットのみが示されるが、本発明の限定としてこれが理解されるべきではない。また、クラウドゲームシステムにおいて２つの描画リソース５０１Ａ及び５０１Ｂが存在するものとしているが、本発明の実用化において採用される描画リソース５０１の数は特に制限ないことは理解されるべきである。
【００８４】
以下さらに、描画命令セット５３０1が送信された際にクライアント装置５２０に割り当てられた描画リソースが描画リソース５０１Ａであるものとする。割り当てられた描画リソースの識別子は、描画リソース５０１Ａに描画命令セット５３０1を導く出力制御器５１２により知られる。また、描画命令セット５３０2及び５３０3が同様に描画リソース５０１Ａに送信されることが可能なように、この状況はしばらくの間維持されるものとする。描画リソース５０１Ａは、描画命令セット５３０1、５３０2及び５３０3を、映像コンテンツの各フレーム５４０1、５４０2及び５４０3に変換する。フレーム５４０1、５４０2及び５４０3は、描画リソース５０１Ａにより符号化及び／または圧縮された後、クライアント装置５２０に送信される。本例では各描画命令セットは映像コンテンツの単一のフレームの各々に対応しているが、この１対１対応は限定するものではなく、任意の描画命令セットについて映像コンテンツの複数のフレームの生成が結果であるものとしてもよい。
【００８５】
以下、描画リソース５０１Ｂがクライアント装置５２０について割り当てられた描画リソースとして指定されるように、描画リソース割り当てモジュール５１４はいずれの描画リソースがクライアント装置５２０について割り当てられた描画リソースであるかを変更するかを決定するものとする。クライアント装置５２０について割り当てられた描画リソースの身元を変更するための決定は、論理回路や格納されたプログラムにより実現される描画リソース割り当てアルゴリズムの結果であってもよい。ここから、出力制御器５１２は、新たに割り当てられた描画リソース、即ち描画リソース５０１Ｂに対して描画命令セットの送信を開始する。従って、描画命令セット５３０4、５３０5、５３０6は、該描画命令セット５３０4、５３０5、５３０6を映像コンテンツの各フレーム５４０4、５４０5及び５４０6に変換する描画リソース５０１Ｂに送信される。、映像コンテンツのフレーム５４０4、５４０5及び５４０6は、クライアント装置５２０に送信される前に、描画リソース５０１Ｂによりこの時点で符号化及び／または圧縮されうる。
【００８６】
一方、クライアント装置５２０は２つの描画リソース５１０Ａ、５０１Ｂの各々から、任意の描画リソース（５０１Ａまたは５１０Ｂ）がクライアント装置５２０について割り当てられた描画リソースである時間に概して対応する異なる時間において、映像コンテンツのフレームを受信する。具体的にはクライアント装置５２０は、描画リソース５０１Ａから、（描画リソース５０１Ａがクライアント装置５２０についての割り当てられた描画リソースである期間に送信された）映像コンテンツのフレーム５４０1、５４０2及び５４０3を受信する。またクライアント装置５２０は、描画リソース５０１Ｂから、（描画リソース５０１Ｂがクライアント装置５２０についての割り当てられた描画リソースである期間に送信された）映像コンテンツのフレーム５４０4、５４０5及び５４０6を受信する。
【００８７】
クライアント装置５２０における受信に応じて、映像コンテンツの受信されたフレームは、バッファ５２２に配置され、復号される。例えばフレーム５４０3が５４０4より前に受信される保証はないため、クライアント装置５２０により連続して表示される画像が正しい順序で表示されることを保障する役割を担う順序付け機能部５２４が実装されることが好ましい。そのようなものとして、バッファ５２２及び順序付け機能部５２４が前述した図４Ａの動作４３０Ａを実現しうる。映像コンテンツの受信したフレーム５４０1、５４０2、５４０3、５４０4、５４０5及び５４０6が（必要であれば）クライアント装置５２０において順序付けされると、それらはフレームバッファ５２６に配置されうる。フレームバッファ５２６は、図４の動作４４０Ａとの関連で、クライアント装置５２０のディスプレイに表示される画像のソースとなり得る。
【００８８】
描画命令セット５３０1、５３０2、５３０3、５３０4、５３０5及び５３０6の各々に埋め込まれ、あるいは出力制御器５１２により描画命令セット５３０1、５３０2、５３０3、５３０4、５３０5及び５３０6とは別送されることで描画リソース５０１Ａ、５０１Ｂによりクライアント装置５２０に伝送されるシーケンス識別子の形に描画命令セット５３０1、５３０2、５３０3、５３０4、５３０5及び５３０6の順序（及び映像コンテンツの対応するフレーム５４０1、５４０2、５４０3、５４０4、５４０5及び５４０6の順序）は符号化されうる。図示の目的で、図５Ｂではシーケンス識別子ID_1、ID_2、ID_3、ID_4、ID_5及びID_6は、描画命令セット５３０1、５３０2、５３０3、５３０4、５３０5及び５３０6の各々と共に、出力制御器５１２により送信される。これらのシーケンス識別子は、いずれの描画リソースが特定のフレームの生成の役割を担うかに関わらず、映像コンテンツのフレーム５４０1、５４０2、５４０3、５４０4、５４０5及び５４０6とともに再送される。もちろん、適切な順序付けを実現する他の技術が存在することを、当業者は理解するだろう。
【００８９】
映像コンテンツのフレームの生成の担当が動的な方式で描画リソース５０１群において移動されてもよいことは、上述の記載から明らかであろう。
【００９０】
いくつかの実施形態において、映像コンテンツのフレームを、受信を期待し得るあらゆる新たに割り当てられた描画リソースの識別子、及び該新たに割り当てられた描画リソースから受信されることが期待される先頭フレームのシーケンス識別子について、クライアント装置５２０に警告することは有用でありうる。前述の動作例においてこれを達成するために、出力制御器５１２は、クライアント装置５２０に送信されたメッセージによる新たに割り当てられた描画リソースの担当下において、最初の描画命令セットの送信を先行して行うことも可能である。
【００９１】
図６Ａは、出力制御器５１２が描画リソース５０１Ａに送信する描画命令セット（本例では描画命令セット５３０3）に警告６１０を挿入する場合を示している。警告６１０は、描画リソース５０１Ｂの識別子及びシーケンス識別子ID_4を含む。一般的に、警告は新たに割り当てられた描画リソースへ送信されるようスケジュールされた１以上の描画命令セットのシーケンス識別子を含みうる。描画リソース５０１Ａは、シーケンス識別子ID_4を有するフレーム（即ちフレーム５４０4）で始まる、連続したフレームが描画リソース５０１Ｂから受信されることを必然的に知るであろうクライアント装置５２０に対して、警告６１０を伝送する。
【００９２】
図６Ｂは、上述した警告６１０内と同様の情報が、インターネット１３０を介して描画リソース割り当てモジュール５１４とクライアント装置５２０との間に確立された制御リンク６３０を介して帯域外メッセージ６２０として送信される場合を示している。
【００９３】
図６Ｃは、遷移を実行する、即ち、出力制御器５１２を有することにより描画リソース５０１Ａ、５０１Ｂの両方に、割り当てられた描画リソースの身元を変更することに先立つ１以上の描画命令セットで開始する描画命令セットを複製して送信する他の方法を示している。この場合、描画命令セット５３０1が描画リソース５０１Ａのみに送信され、次の２つの描画命令セット５３０2、５３０3が、元々割り当てられていた描画リソース（描画リソース５０１Ａ）及び新たに割り当てられた描画リソース（描画リソース５０１Ｂ）の双方に送信される。その後、描画命令セット５３０4、５３０5及び５３０6は、元の通り描画リソース５０１Ｂのみに送信される。描画リソース５０１Ａ、５０１Ｂは映像コンテンツの対応するフレームの生成により対応することで、いくつかの複製フレーム（即ち、シーケンス識別子ID_2及びID_3を伝送するフレーム６００2及び６００3）がクライアント装置５２０に送信される。クライアント装置５２０において、順序付け機能部５２４は入力バッファ５２２から複製映像コンテンツを削除する機能を備えていてもよい。
【００９４】
逆に、割り当てられた描画リソースの身元の変更の後の（むしろ先立つ）１以上の描画命令セットで始まる描画命令セットを、制御サーバ５１０Ａ、５１０Ｂの両方に複製して送信する出力制御器５１２を有することによる送信の実行も、本発明の範囲に含まれる。このことは、描画命令セット５３０1、５３０2及び５３０3が描画リソース５０１Ａのみに送信され、描画命令セット５３０4及び５３０5が元々割り当てられた描画リソース（描画リソース５０１Ａ）と新たに割り当てられた描画リソース（描画リソース５０１Ｂ）に送信されるものとして示されている図６Ｄに示されている。最終的に描画命令セット５３０6は描画リソース５０１Ｂにのみ送信される。描画リソース５０１Ａ、５０１Ｂが映像コンテンツの対応するフレームの生成により対応することで、いくつかの複製フレーム（即ち、シーケンス識別子ID_4及びID_5を伝送するフレーム６００4及び６００5）がクライアント装置５２０に送信さえる。クライアント装置５２０において、順序付け機能部５２４は、入力バッファ５２２から複製フレームを削除する機能を備えていてもよい。
【００９５】
他の実施形態において、特定のフレームが受信された場合に、いずれの描画リソースが該フレームを送信したかをクライアント装置５２０が認識できるように、該特定のフレームをクライアント装置５２０に送信する際に、描画リソース５０１Ａ、５０１Ｂの各々は固有のシグニチャを追加してもよい。
【００９６】
元々割り当てられていた描画リソースから新たに割り当てられた描画リソースへの遷移に係るさらに他の技術が本発明の範囲に含まれることは、本技術分野に属する当業者により理解されよう。
【００９７】
〈描画リソース割り当てアルゴリズム〉
現在割り当てられている描画リソースから新たに割り当てられた描画リソースへの、割り当てられた描画リソースの身元の変更に係る適切な瞬間の決定である、描画リソース再割り当て決定を行うために、描画リソース割り当てモジュール５１４は描画リソース割り当てアルゴリズムを実装する。クライアント装置基準で実行される該決定は、種々の条件に基づくものであってよい。
【００９８】
描画リソース再割り当ての決定を行うために用いられる条件の第１の例は、クライアント装置５２０と現在割り当てられている描画リソースとの間の伝送距離に関するものであってよい。具体的には、クライアント装置５２０と現在割り当てられている描画リソース（例えば描画リソース５０１Ａ）との間の伝送距離、及びクライアント装置５２０と１以上の他の描画リソース（例えば描画リソース５０１Ｂ）との間の伝送距離が監視されることを考える。本例において、再割り当てを導く条件は、クライアント装置５２０と現在割り当てられている描画リソース（例えば描画リソース５０１Ａ）との間の伝送距離が、該クライアント装置と他の描画リソース（例えば描画リソース５０１Ｂ）との間の伝送距離を超えた場合に、満たされたものとみなされるものであってよい。そして、該他の描画リソース（例えば描画リソース５０１Ｂ）が、クライアント装置５２０についての新たに割り当てられた描画リソースとなる。
【００９９】
上述した第１の例によれば、（車、電車、あるいは飛行機のような）乗り物内におり、移動装置の無線通信（例えば携帯／ＷｉＭａｘ／ＷｉＦｉ）を使用しているプレイヤを考える。また、現在割り当てられている描画リソース（例えば描画リソース５０１Ａ）から離れ、映像コンテンツのフレームを生成してストリーミングするために使用可能な近隣サーバ（例えば描画リソース５０１Ｂ）に近づいていること発見するプレイヤを考える。いくつかの点として、移動装置と近隣サーバ（描画リソース５０１Ｂ）との間の通信遅延が、現在割り当てられている描画リソース（例えば描画リソース５０１Ａ）を使用して体験している通信遅延よりも良好（即ち、より小さい）な場合であり得る。このことは、新たに割り当てる描画リソースとして該近隣サーバ（例えば描画リソース５０１Ｂ）に変更する正当な理由となり得る。
【０１００】
なお、クライアント装置５２０について割り当てられた描画リソースの身元に係る偏光は、クライアント装置の無線通信とは無関係に生じてもよい。即ち、同一の無線通信が維持されうるが、該接続における映像コンテンツのフレームのソースは動的に変化する。逆に、無線通信は様々な理由で変化し得るが、このことは、割り当てられた描画リソースの身元が変化しなければならないことを意味するものではない。即ち、描画リソース間の遷移の決定は、無線接続をハンドオフするための決定とは無関係であってよい。
【０１０１】
同様に、描画リソースがクライアント装置５２０について割り当てられた描画リソースであることの変更は、クライアント装置のインターネット接続とは無関係に生じうる。即ち、該インターネット接続を介した映像コンテンツのフレームのソースが描画リソース５０１Ａから描画リソース５０１Ｂに変化する間、同一のインターネット接続が継続的に維持されてもよい。あるいは、様々なインターネット接続が、映像コンテンツのフレームが様々なソースから受信されるように確立されてもよい。
【０１０２】
描画リソース再割り当ての決定を行うために用いられる条件の第２の例は、クライアント装置５２０と現在割り当てられている描画リソースとの間で計測された通信遅延に関する。具体的には、クライアント装置５２０と現在割り当てられている描画リソース（例えば描画リソース５０１Ａ）との間の通信遅延、及び該クライアント装置５２０と１以上の他の描画リソース（例えば描画リソース５０１Ｂ）との間の通信遅延が監視されることを考える。本例では、再割り当てを導く条件は、クライアント装置５２０と現在割り当てられている描画リソース（例えば描画リソース５０１Ａ）との間の通信遅延が、クライアント装置５２０と他の描画リソース（例えば描画リソース５０１Ｂ）との間の通信遅延を超え始めた場合に満たされたものとみなされるものであってよい。そして、該他の描画リソース（例えば描画リソース５０１Ｂ）が、クライアント装置５２０についての新たに割り当てられた描画リソースとなる。
【０１０３】
上述した第２の例によれば、プレイヤのクライアント装置が有効な速度で物理的に移動していない場合でさえも、ネットワークの混雑条件のような通信遅延に影響を及ぼす要因があり得る。一方、クライアント装置は、現在割り当てられている描画リソース（例えば描画リソース５０１Ａ）に対して通信遅延が小さい第２の描画リソース（例えば描画リソース５０１Ｂ）にアクセスしてもよい。このように、このことは、クライアント装置に割り当てられた描画リソースとして第２の描画リソース（例えば描画リソース５０１Ｂ）を指定する正当な理由となり得る。
【０１０４】
描画リソース再割り当ての決定を行うために用いられる条件の第３の例は、現在割り当てられている描画リソースの計算負荷に関するものであってよい。具体的には、現在割り当てられている描画リソース（例えば描画リソース５０１Ａ）の計算負荷、及び１以上の他の描画リソース（例えば描画リソース５０１Ｂ）の計算負荷が監視されることを考える。本例では、再割り当てを導く条件は、現在割り当てられている描画リソース（例えば描画リソース５０１Ａ）の計算負荷が、これらの他の描画リソースのうちの１つ（例えば描画リソース５０１Ｂ）の計算負荷を所定の期間超え始めた場合に満たされたものとみなされるものであってよい。そして、該他の描画リソース（例えば描画リソース５０１Ｂ）が新たに割り当てられた描画リソースになる。
【０１０５】
描画リソース再割り当ての決定を行うために用いられる条件の第４の例は、クライアント装置５２０と現在割り当てられている描画リソースとの間の通信リンクの品質に関するものであってよい。具体的には、クライアント装置５２０と現在割り当てられている描画リソース（例えば描画リソース５０１Ａ）との間の通信リンクの品質、及びクライアント装置５２０と１以上の他の描画リソース（例えば描画リソース５０１Ｂ）との間の通信リンクの品質が監視されることを考える。品質の非限定的なインジケータは、信号強度、誤り率、再送率等であってよい。本例では、再割り当てを導く条件は、クライアント装置５２０と現在割り当てられている描画リソース（例えば描画リソース５０１Ａ）との間の通信リンクの品質が、クライアント装置５２０と他の描画リソース（例えば描画リソース５０１Ｂ）との間の通信リンクの品質以下に低下した場合に満たされたものとみなされるものであってよい。そして、該他の描画リソース（例えば描画リソース５０１Ｂ）が新たに割り当てられた描画リソースになる。
【０１０６】
描画リソース再割り当ての決定を行うために用いられる条件の第５の例は、クライアント装置５２０が配置されている地理領域に関するものであってよい。具体的には、クライアント装置５２０が配置されている位置または管轄が監視されることを考え、描画リソースと割り当てられた地理領域との対応の存在を考える。個の対応は、出力制御器５１２にアクセス可能なデータベースに維持され得、制御サーバ５１０のローカルに、あるいはインターネット１３０を介して利用可能なように格納されてよい。本例では、再割り当てを導く条件は、クライアント装置５２０が現在割り当てられているものとは異なる描画リソースが割り当てられた地理領域に移動した場合に満たされたものとみなされるものであってよい。そして、該他の描画リソース（例えば描画リソース５０１Ｂ）がクライアント装置について新たに割り当てられた描画リソースになる。
【０１０７】
このことが、ただ新たな描画リソースが特定された、あるいは再割り当てについての条件が満たされたという理由で、直ちに再割り当てが行われなければならないことを意味するものではないことは、本技術分野に属する当業者には理解されるべきである。具体的には、追加の条件（または予めの必要条件）が再割り当てが行われる前に満たされる必要があってもよい。
【０１０８】
第１の例において、ゲーム内の動作のレベルが、割り当てられた描画リソースの身元の変更が行われる前に十分に低いことを、出力制御器５１２は保証する。従って、ゲーム内の動作のレベルが判断され、予め設定された閾値と比較される。図８に示される一実施形態において、動作判断器８００はクライアント装置８２０に配置され、動作のレベルを伝送するメッセージ８０５が制御サーバ８１０の出力制御器８１２にフィードバックされる。動作判断器８００は、動作のレベル８０５を出力するために、映像コンテンツのフレームを処理する。動作のレベル８０５は、１つのフレームから次のフレームまでの画素変化の相対的な数／度合い、音量（クレッシェンド等のニュアンスを含む）等を含む、検出された視覚的または聴覚的な特性に基づいて計測されうる。またパターン検出は、映像シーケンス内のグラフィック要素の動き（または速さ）の検出に用いられうる。また、様々な処理アルゴリズムが、ショット境界検出を実行するために用いられうる。他の実施形態において、動作のレベルは描画命令の解析により判断され得、故に計測は制御サーバ５１０または描画リソース５０１Ａ、５０１Ｂによりなされてもよい。さらに他の実施形態では、動作のレベルはクライアント装置５２０から受信した入力のレートに基づいて判断されてもよい。例えば、クライアント装置５２０から受信した入力の高度が、ビデオゲーム内の相応の高いレベルの動作であることを推測するための代用物として用いられうる。
【０１０９】
第２の例において、割り当てられた描画リソースの身元の変更を行う前にゲームが通常の中断点にあることを、出力制御器５１２は保証する。従って、プレイヤがレベルをちょうど完了した、レベルをちょうど開始した、ある程度のレベルである、主要戦闘の処理内にあるか否か等の観点から、ゲーム内の進行が監視される。プレイヤがゲーム内のいずれに配置されているかの情報が、ビデオゲーム機能モジュール２７０により提供されうる。
【０１１０】
第３の例において、割り当てられた描画リソースの身元の変化を許可する前に、プレイヤがゲームを停止するまで描画リソース割り当てモジュール５１４は待機する。このことは、描画リソースが割り当てられた描画リソースとして指定される、途切れのない変化を保証しうる。例えば、明確に（ビデオゲーム機能モジュール２７０への命令の発行を引き起こす）あるいは黙示的に（例えば戦闘前に移動装置が遮断することにより）プレイヤがゲームを停止することを考える。該停止状態は、出力制御器５１２に情報を提供するビデオゲーム機能モジュール２７０により検出される。この時点で、出力制御器５１２は、割り当てられた描画リソースの身元の変更を開始しうる。しかしながら、プレイヤが行先に到着した際に移動装置の電源を入れるまで該変更の効果はなくともよい。
【０１１１】
また、割り当てられた描画リソースの身元が変化した後に、そのうち変更が再び必要になってもよいことは理解されるべきである。従って、現在割り当てられている描画リソースから更に新たに割り当てられた描画リソースへの、割り当てられた描画リソースの身元を変更するために、後の描画リソース再割り当ての決定は上述した様々な条件に基づいてなされてもよい。該更に新たに割り当てられた描画リソースは、最近の変更の前に割り当てられていた描画リソースと同一の描画リソースであってもよいし、全く異なる描画リソースであってもよい。
【０１１２】
故に、制御サーバが、クライアント装置についての映像コンテンツを描画するための描画命令セットを生成し、各描画リソースが指定された少なくともいくつかの描画命令セットを有するように、少なくとも２つの描画リソースの集合から、少なくとも１つの描画リソースに該描画命令セットの各々を指定することによる方法を説明したことは理解されよう。
【０１１３】
[変形例（共同／分散型の決定の実行）]
描画リソース割り当ての決定に用いられるパラメータ（２〜３の非限定的な可能性を示すと、伝送距離、通信遅延、計算負荷及び／または通信リンク品質）が、描画リソース５０１Ａ、５０１Ｂにより計測され、処理するため及び描画リソース割り当てモジュール５１４により補間するために制御サーバ５１０に返送されてもよい。あるいは、パラメータは、ネットワーク方向等の様々な情報ソースに基づいて、制御サーバ５１０により推定または推測されてもよい。さらに別の実施形態では、所定のパラメータはクライアント装置５２０により計測され、決定の実行のために描画リソース割り当てモジュール５１４に報告されるものであってさえよい。
【０１１４】
図７に示した、さらに別の実施形態において、描画リソース割り当てアルゴリズムは、クライアント装置の描画リソース割り当てモジュール７１４に、完全にあるいは部分的に組み込まれてもよい。故に、クライアント装置７２０の２以上の描画リソースのために利用可能なパラメータ（例えば信号強度、通信遅延等）に基づいて、描画リソース割り当てモジュール７１４は、割り当てた描画リソースの身元を変更するための適切な時期がいつであるかの決定を行い、該情報はトリガ７５０の形で、制御サーバ７１０の出力制御器５１２に送り返されてもよい。トリガ７５０は、クライアント装置７２０についての新たに割り当てられた描画リソースとして指定される描画リソースの識別子を提供するものであってもよい。このような実装において、描画リソース割り当てモジュール７１４がクライアント装置７２０に実装される等、描画リソース割り当てモジュールが制御サーバ７１０にある必要はない。また、描画リソース割り当てアルゴリズムが制御サーバとクライアント装置（あるいは描画リソース５０１Ａ、５０１Ｂ）との間に分散されることによるハイブリッド実装も、本発明の範囲内に含まれる。
【０１１５】
[変形例（冗長性）]
変形例において、描画命令セットの各々は、描画リソース５０１に含まれる少なくとも２つの描画リソースの各々に送信される。クライアント装置５２０において、複製映像コンテンツが複数の描画リソースから受信されるだろう。受信したフレームはバッファされうる（及び順序が異なっている場合には記録される）。もちろん所定の映像コンテンツの複数の複製が存在するため、これらは順序付ける前に、格納しない、あるいは破棄されてもよい。
【０１１６】
この種のアプローチを用いることで、描画命令セットを複製のみすればよいため、クライアント装置５２０について割り当てる描画リソースの指定を自身に負荷をかけることがなく、制御サーバ５１０の描画リソース割り当てモジュール５１４の設計は簡素化される。トレードオフは、描画命令セット（及び結果のフレーム）の複製があるため、より多くの帯域がインターネット１３０上で消費されることである。つまり、複製した描画コマンドセットを取り扱う描画リソースの数が多くなるほど、要求される帯域は多くなる。また本変形例において、クライアント装置５２０は、複数の描画リソースから受信する複製された映像フレームを削除する構成を組み込まれて設計されるべきである。
【０１１７】
上述した実施形態が例示を目的としたものであり、制限するものではないことは、本技術分野に属する当業者によって理解されるべきである。また、本発明の所定の実施形態の動作に必要であってもよい、説明されていない図示されていない追加の要素が、本技術分野に属する当業者の視野内にあってもよいことは理解されるべきである。さらに、本発明の所定の実施形態は、個々に具体的に記載されていないあらゆる要素について、該要素が免除される、該要素がない、及び／または該機能なしに機能しうるものであってもよい。
【０１１８】
最後に、本発明の所定の実施形態は、特許請求の範囲ではない以下の列挙される記載により表される態様が存在してもよい。
【０１１９】
１．コンピュータ実装された方法であって、
クライアント装置についての映像コンテンツを描画するための描画命令セットを生成し、
少なくともいくつかの前記描画命令セットが各描画リソースに導かれるように、前記描画命令セットの各々を、少なくとも２つの描画リソースの集合の少なくとも１つの描画リソースに導くことを含む方法。
【０１２０】
２．前記導くことは、前記クライアント装置について割り当てられた描画リソースとして指定された、前記少なくとも２つの描画リソースのうちの１つの描画リソースに描画名声セットの各々を導くことを含む１の記載に規定されたコンピュータ実装された方法。
【０１２１】
３．前記少なくとも２つの描画リソースのいずれが前記クライアント装置についての前記割り当てられた描画リソースとして指定されるかを変更することをさらに含む２の記載に規定されたコンピュータ実装された方法。
【０１２２】
４．前記割り当てられた描画リソースと前記クライアント装置との間の伝送距離を判断することをさらに含み、
前記変更は、前記判断された伝送距離に基づいて実行される３の記載に規定されたコンピュータ実装された方法。
【０１２３】
５．前記変更は、前記判断された伝送距離が予め設定された閾値を超える場合に実行される４の記載に規定されたコンピュータ実装された方法。
【０１２４】
６．前記少なくとも２つの描画リソースのうちの第１の描画リソースが前記クライアント装置についての前記割り当てられた描画リソースとして指定されている期間に、前記第１の描画リソースよりも前記装置との伝送距離がより短い、前記少なくとも２つの描画リソースのうちの第２の描画リソースを識別することをさらに含み、
前記変更は、前記クライアント装置についての前記割り当てられた描画リソースとして前記第２の描画リソースを指定することを含む３の記載に規定されたコンピュータ実装された方法。
【０１２５】
７．前記割り当てられた描画リソースと前記クライアント装置との間の通信遅延を判断することをさらに含み、
前記変更は、前記判断された通信遅延に基づいて実行される３の記載に規定されたコンピュータ実装された方法。
【０１２６】
８．前記変更は、前記判断された通信遅延が予め定められた閾値を超える場合に実行される７の記載に規定されたコンピュータ実装された方法。
【０１２７】
９．前記少なくとも２つの描画リソースのうちの第１の描画リソースが前記クライアント装置についての前記割り当てられた描画リソースとして指定されている期間に、前記第１の描画リソースよりも前記装置への通信遅延がより少ない、前記少なくとも２つの描画リソースのうちの第２の描画リソースを識別することをさらに含み、
前記変更は、前記クライアント装置についての前記割り当てられた描画リソースとして前記第２の描画リソースを指定することを含む３の記載に規定されたコンピュータ実装された方法。
【０１２８】
１０．前記割り当てられた描画リソースの計算負荷を判断することをさらに含み、
前記変更は、前記判断された計算負荷に基づいて実行される３の記載に規定されたコンピュータ実装された方法。
【０１２９】
１１．前記変更は、前記判断された計算負荷が予め定められた閾値を超える場合に実行される１０の記載に規定されたコンピュータ実装された方法。
【０１３０】
１２．前記少なくとも２つの描画リソースのうちの第１の描画リソースが前記クライアント装置についての前記割り当てられた描画リソースとして指定されている期間に、前記第１の描画リソースよりも計算負荷がより低い、前記少なくとも２つの描画リソースのうちの第２の描画リソースを識別することをさらに含み、
前記変更は、前記クライアント装置についての前記割り当てられた描画リソースとして前記第２の描画リソースを指定することを含む９の記載に規定されたコンピュータ実装された方法。
【０１３１】
１３．前記割り当てられた描画リソースと前記クライアント装置との間の通信リンクの品質を判断することをさらに含み、
前記変更は、前記判断された通信リンクの品質に基づいて実行される３の記載に規定されたコンピュータ実装された方法。
【０１３２】
１４．前記変更は、前記判断された品質が予め定められた閾値以下になった場合に実行される１３の記載に規定されたコンピュータ実装された方法。
【０１３３】
１５．前記少なくとも２つの描画リソースのうちの第１の描画リソースが前記クライアント装置についての前記割り当てられた描画リソースとして指定されている期間に、前記装置と前記第１の描画リソースとの通信リンクよりも高い品質を有する通信リンクの終点である、前記少なくとも２つの描画リソースのうちの第２の描画リソースを識別することをさらに含み、
前記変更は、前記クライアント装置についての前記割り当てられた描画リソースとして前記第２の描画リソースを指定することを含む１４の記載に規定されたコンピュータ実装された方法。
【０１３４】
１６．前記クライアント装置の地理的位置を判断し、
地理的位置と各描画リソースとの関係を特定するデータベースを参照することをさらに含み、
前記変更は、前記判断された地理的位置及び前記データベースの内容に基づいて実行される３の記載に規定されたコンピュータ実装された方法。
【０１３５】
１７．前記変更は、前記クライアント装置についての前記割り当てられた描画リソースとして指定されたリソースと異なる描画リソースに関連付けられた地理領域に移動したと前記装置が判断された場合に実行される１６の記載に規定されたコンピュータ実装された方法。
【０１３６】
１８．前記変更は、条件が満たされたと判断したことに応じて実行される３の記載に規定されたコンピュータ実装された方法。
【０１３７】
１９．前記条件が満たされたとの判断に先立って、前記少なくとも２つの描画リソースのうちの第１の描画リソースが前記クライアント装置についての前記割り当てられた描画リソースとして指定され、
前記変更は、前記少なくとも２つの描画リソースのうちの第２の描画リソースを、前記クライアント装置についての前記割り当てられた描画リソースとして指定することを含む１８の記載に規定されたコンピュータ実装された方法。
【０１３８】
２０．前記条件が満たされたと判断したことに応じて、前記第１及び第２の描画リソースの両方に、１以上の描画命令セットを重複して送信し、
次の描画命令セットは第２の描画リソースのみに送信することをさらに含む１９の記載に規定されたコンピュータ実装された方法。
【０１３９】
２１．前記条件が満たされたと判断されたことに応じて、前記クライアント装置に前記第２の描画リソースを示すメッセージを送信することをさらに含む１９の記載に規定されたコンピュータ実装された方法。
【０１４０】
２２．他の描画命令セットと相対的な、各描画命令セットの位置を示すシーケンス識別子を、各描画命令セットとともに送信することをさらに含み、
前記メッセージは、前記第２の描画リソースに導かれるようにスケジュールされた１以上の描画命令セットの前記シーケンス識別子を伝送する２１の記載に規定されたコンピュータ実装された方法。
【０１４１】
２３．前記メッセージは、前記第１の描画リソースに導かれた少なくとも１つの描画命令セットとともに送信される２２の記載に規定されたコンピュータ実装された方法。
【０１４２】
２４．前記メッセージは、帯域外メッセージで前記装置に送信される２２の記載に規定されたコンピュータ実装された方法。
【０１４３】
２５．前記クライアント装置と前記第１及び第２の描画リソースの各々との伝送距離を判断することをさらに含み、
前記第１の描画リソースよりも前記第２の描画リソースとの伝送距離がより短いと前記装置が判断された場合に、前記条件が満たされたものと考慮される１９の記載に規定されたコンピュータ実装された方法。
【０１４４】
２６．前記クライアント装置と前記第１及び第２の描画リソースの各々との間の通信遅延を判断することをさらに含み、
前記第２の描画リソースに係る通信遅延が前記第１の描画リソースに係る通信遅延よりも少ない場合に、前記条件が満たされたものと考慮される１９の記載に規定されたコンピュータ実装された方法。
【０１４５】
２７．前記第１及び第２の描画リソースの各々の計算負荷を判断することをさらに含み、
前記第２の描画リソースの計算負荷が前記第１の描画リソースの計算負荷よりも低い場合に、前記条件が満たされたものと考慮される１９の記載に規定されたコンピュータ実装された方法。
【０１４６】
２８．前記クライアント装置と前記第１及び第２の描画リソースの各々との間の通信リンクの品質を判断することをさらに含み、
前記第２の描画リソースに係る前記リンクの品質が前記第１の描画リソースに係る前記リンクの品質よりも高い場合に、前記条件が満たされたものと考慮される１９の記載に規定されたコンピュータ実装された方法。
【０１４７】
２９．前記変更は、トリガの受信を検出したことに応じて実行される１の記載に規定された方法。
【０１４８】
３０．前記クライアント装置から前記トリガを受信することをさらに含む１の記載に規定された方法。
【０１４９】
３１．前記トリガは、前記少なくとも２つの描画リソースのいずれが前記割り当てられた描画リソースとして指定されるかを変更する指示を伝送する３０の記載に規定された方法。
【０１５０】
３２．前記トリガは、前記割り当てられた描画リソースとして指定される第２の描画リソースの識別子を伝送する３０の記載に規定された方法。
【０１５１】
３３．前記割り当てられた描画リソースとして指定された描画リソースの識別子をメモリに保持することをさらに含む３の記載に規定された方法。
【０１５２】
３４．描画命令セットの各々は、他の描画命令セットにより規定される他の画像と相対的な時間的位置を有する画像を規定する３の記載に規定されたコンピュータ実装された方法。
【０１５３】
３５．前記クライアント装置についての映像コンテンツに対応して生成するために、前記割り当てられた描画リソースにより前記描画命令セットを処理することをさらに含む３４の記載に規定された方法。
【０１５４】
３６．インターネットを介して前記映像コンテンツが前記クライアント装置に送信されるようにすることをさらに含む３５の記載に規定された方法。
【０１５５】
３７．前記映像コンテンツは、ビデオゲーム画像を示すデータを含む３６の記載に規定されたコンピュータ実装された方法。
【０１５６】
３８．制御サーバにより実現され、
前記少なくとも２つの描画リソースは、前記制御サーバから遠離した描画サーバを含む１の記載に規定された方法。
【０１５７】
３９．インターネットを介して前記クライアント装置から制御入力を受信することをさらに含む３８の記載に規定された方法。
【０１５８】
４０．前記クライアント装置についてビデオゲームプログラムを実行することをさらに含む３９の記載に規定されたコンピュータ実装された方法。
【０１５９】
４１．前記クライアント装置からの前記制御入力に基づいて、前記ビデオゲームのゲーム状態を更新することをさらに含む４０の記載に規定された方法。
【０１６０】
４２．前記ゲーム状態の更新は、３Ｄ仮想環境におけるオブジェクトの更新を含む４１の記載に規定された方法。
【０１６１】
４３．前記描画命令セットは、前記クライアント装置に関連付けられた画角からの前記３Ｄ仮想環境の投影に基づいて生成される４２の記載に規定された方法。
【０１６２】
４４．前記ビデオゲーム内の動作のレベルを判断することをさらに含み、
前記ビデオゲーム内の動作のレベルが低いと判断される場合に、前記変更が実行される３の記載に規定されたコンピュータ実装された方法。
【０１６３】
４５．前記ビデオゲーム内の進行を判断することをさらに含み、
前記変更は、前記ビデオゲームにおける進行が該ゲーム内の休止であると判断した場合に実行される３の記載に規定されたコンピュータ実装された方法。
【０１６４】
４６．前記ビデオゲームが停止しているかを判断することをさらに含み、
前記変更は、前記ビデオゲームが停止していると判断した場合に実行される３の記載に規定されたコンピュータ実装された方法。
【０１６５】
４７．前記少なくとも２つの描画リソースのいずれが前記割り当てられた描画リソースとして指定されるかの変更は、第２の条件が満たされたとの判断に応じて、前記少なくとも２つの描画リソースのうちのいずれが前記クライアント装置についての前記割り当てらえた描画リソースとして指定されるかの第２の変更をさらに含む１９の記載に規定されたコンピュータ実装された方法。
【０１６６】
４８．前記第２の変更は、前記少なくとも２つの描画リソースから新たな描画リソースを、前記クライアント装置についての前記割り当てられた描画リソースとして指定することを含む４７の記載に規定されたコンピュータ実装された方法。
【０１６７】
４９．前記新たな描画リソースは、前記第１の描画リソースでも前記第２の描画リソースでもない第３の描画リソースである４８の記載に規定されたコンピュータ実装された方法。
【０１６８】
５０．前記新たな描画リソースは前記第１の描画リソースである４８の記載に規定されたコンピュータ実装された方法。
【０１６９】
５１．前記導くことは、前記少なくとも２つの描画リソースの各々に前記描画命令セットの少なくともいくつかを導く１の記載に規定されたコンピュータ実装された方法。
５２．前記導くことは、前記少なくとも２つの描画リソースのうちの１つにしか前記描画命令セットの各々を導かない１の記載に規定された方法。
【０１７０】
５３．前記導くことは、条件を満たしたとの判断に先立って前記描画リソースのうちの第１の描画リソースに前記描画命令セットのうちの第１の描画命令セットを導き、前記条件を満たしたとの判断の後、前記描画リソースのうちの第２の描画リソースに前記描画命令セットのうちの第２の描画命令セットを導く１の記載に規定された方法。
【０１７１】
５４．演算エンティティにより実行された場合に、
クライアント端末について映像コンテンツの描画に係る描画命令セットを生成し、
少なくともいくつかの前記描画命令セットが各描画リソースに導かれるように、前記描画命令セットの各々を少なくとも２つの描画リソースの集合のうちの少なくとも１つの描画リソースに導く
ことを含む方法を該コンピュータエンティティに実行させるコンピュータ読み取り可能な命令を有するコンピュータ読み取り可能な記録媒体。
【０１７２】
５５．前記導くことは、前記少なくとも２つの描画リソースの中から、参加者について割り当てられた描画リソースとして指定される描画リソースに、描画命令セットの各々を導くことを含む５４の記載に規定されたコンピュータ読み取り可能な記録媒体。
【０１７３】
５６．前記方法はさらに、前記少なくとも２つの描画リソースのうちのいずれが前記参加者についての前記割り当てられた描画リソースとして指定されるかを変更することを含む５５の記載に規定されたコンピュータ読み取り可能な記録媒体。
【０１７４】
５７．前記変更は、条件が満たされたとの判断に応じて実行される５５の記載に規定されたコンピュータ読み取り可能な記録媒体。
【０１７５】
５８．前記条件が満たされたとの判断に先立ち、前記少なくとも２つの描画リソースのうちの第１の描画リソースが前記クライアント装置についての前記割り当てられた描画リソースとして指定され、
前記変更は、前記少なくとも２つの描画リソースのうちの第２の描画リソースを前記クライアント装置についての前記割り当てられた描画リソースとして指定することを含む５７の記載に規定されたコンピュータ読み取り可能な記録媒体。
【０１７６】
５９．前記導くことは、前記少なくとも２つの描画リソースの各々に前記描画命令セットの少なくともいくつかを導くことを含む５４の記載に規定されたコンピュータ読み取り可能な記録媒体。
【０１７７】
６０．前記導くことは、前記少なくとも２つの描画リソースのうちの１つにしか前記描画命令セットの各々を導かないことを含む５４の記載に規定されたコンピュータ読み取り可能な記録媒体。
【０１７８】
６１．前記導くことは、条件が満たされたとの判断に先立ち前記描画リソースのうちの第１の描画リソースに前記描画命令セットのうちの第１の描画命令セットを導き、前記条件が満たされたとの判断の後、前記描画リソースのうちの第２の描画リソースに前記描画目入れセットのうちの第２の描画命令セットを導くことを含む５４の記載に規定されたコンピュータ読み取り可能な記録媒体。
【０１７９】
６２．クライアント装置について映像コンテンツの描画に係る描画命令セットを生成する制御モジュールと、
各描画リソースが導かれた前記描画命令セットの少なくともいくつかを有するように、前記描画命令セットの各々を、少なくとも２つの描画リソースの集合のうちの少なくとも１つの描画リソースに導く出力制御器と、を有する装置。
【０１８０】
６３．前記導くことは、前記少なくとも２つの描画リソースのうち、参加者について割り当てられた秒リソースとして指定される描画リソースに、描画命令セットの各々を導くことを含み、
前記サーバはさらに、前記描画リソースのいずれが前記指定された描画リソースであるかの決定を行い、前記決定を前記出力制御器に通知する描画リソース割り当て論理をさらに有する６２の記載に規定された装置。
【０１８１】
６４．クライアント装置について割り当てられた描画サーバとして指定されている間に受信された第１の描画命令セットに基づいて、前記クライアント装置についての第１の映像フレームを生成し、前記クライアント装置に該第１の映像フレームを送信する第１の描画サーバと、
前記クライアント装置について割り当てられた描画サーバとして指定されている間に受信された第２の描画命令セットに基づいて、前記クライアント装置についての第２の映像フレームを生成し、前記クライアント装置に該第２の映像フレームを送信する第２の描画サーバと、を有するサーバシステム。
【０１８２】
６５．前記第１及び第２の描画サーバはそれぞれ、前記第１及び第２の描画命令セットの各々とともにシーケンス識別子を受信し、前記クライアント装置に送信される、対応する１以上の前記第１及び第２の映像フレームの各々とともに、受信したシーケンス識別子の各々を伝送する６４の記載に規定されたサーバシステム。
【０１８３】
６６．条件が満たされたとの判断に先立ち前記第１の描画サーバに前記第１の描画命令セットを送信し、前記条件が満たされたとの判断の後、前記第２の描画サーバに前記第２の描画命令セットを送信する６４の記載に規定されたサーバシステム。
【０１８４】
６７．インターネットを介したセッションにおいて制御サーバと協働するクライアント装置の処理エンティティにより実行される方法であって、
前記インターネットを介して前記制御サーバに入力を送信し、
前記入力に応じて、第１の描画リソースから前記インターネットを介して第１の映像コンテンツを受信し、前記第１の描画リソースと異なる第２の描画リソースから前記インターネットを介して第２の映像コンテンツを受信し、
前記クライアント装置の表示手段を介して前記第１の映像コンテンツと前記第２の映像コンテンツを表示する方法。
【０１８５】
６８．前記第２の映像コンテンツの少なくともいくつかは、前記第１の映像コンテンツの少なくともいくつかの後に受信される６７の記載に規定された方法。
【０１８６】
６９．前記第１の映像コンテンツは前記第１の描画リソースにより生成される６７の記載に規定された方法。
【０１８７】
７０．前記第２の映像コンテンツは、前記第２の描画リソースにより生成される６９の記載に規定された方法。
【０１８８】
７１．前記第１及び第２の映像コンテンツは、単一のソースから受信した描画命令セットに基づいて生成される７０の記載に規定された方法。
【０１８９】
７２．前記第１の映像コンテンツを受信している間、前記クライアント装置が前記第１の描画リソースからよりも前記第２の描画リソースからの距離がより短いかを判断し、
前記制御サーバにトリガを送信することをさらに含み、
前記第２の映像コンテンツの受信は、前記トリガの送信後に開始する６７の記載に規定された方法。
【０１９０】
７３．前記第１の映像コンテンツを受信している間、前記クライアント装置と前記第２の描画リソースとの間の通信遅延が前記クライアント装置と前記第１の描画リソースとの間の通信遅延より低いかを判断し、
前記制御サーバにトリガを送信することをさらに含み、
前記第２の映像コンテンツの受信は、前記トリガの送信後に開始する６７の記載に規定された方法。
【０１９１】
７４．前記第１の映像コンテンツを受信している間、前記第２の描画リソースからの信号強度が前記第１の描画リソースからの信号強度よりも大きいかを判断し、
前記制御サーバにトリガを送信することを含み、
前記第２の描画コンテンツの受信は、前記トリガの送信後に開始する６７の記載に規定された方法。
【０１９２】
７５．前記クライアント装置のユーザから外部入力を受信し、
前記外部入力を前記制御サーバに送信される前記入力に変換することをさらに含む６７の記載に規定された方法。
【０１９３】
７６．前記第１及び第２の映像コンテンツは、同一の、継続的に維持されたインターネット接続を介して受信される６７の記載に規定された方法。
【０１９４】
７７．前記第１の映像コンテンツは、前記第１のインターネット接続を介して受信され、
前記第２の映像コンテンツは、前記第１のインターネット接続とは異なる第２のインターネット接続を介して受信される６７の記載に規定された方法。
【０１９５】
７８．前記第１及び第２の映像コンテンツは符号化された形式で受信され、
前記方法はさらに、復号された映像コンテンツを取得するために前記映像コンテンツを復号することを含み、
前記表示された映像コンテンツは前記復号された映像コンテンツである６７の記載に規定された方法。
【０１９６】
７９．前記第１及び第２の映像コンテンツは複数のフレームに分割され、
前記方法はさらに、
前記受信したフレームの各々とともにシーケンス識別子を受信し、
前記シーケンス識別子に関連付けられた前記受信したフレームを順序付けることを含む６７の記載に規定された方法。
【０１９７】
また、上述した実施形態の付加的な適応及び変形がなされうることは、本技術分野に属する当業者は理解するだろう。故に、発明の範囲は上述の特定の実施形態により限定されるものでなく、以下に添付の特許請求の範囲により規定される。
【図１】
2015523886.tif 000003
【図２Ａ】
2015523886.tif 000004
【図２Ｂ】
2015523886.tif 000005
【図２Ｃ】
2015523886.tif 000006
【図３Ａ】
2015523886.tif 000007
【図３Ｂ】
2015523886.tif 000008
【図３Ｃ】
2015523886.tif 000009
【図４Ａ】
2015523886.tif 000010
【図４Ｂ】
2015523886.tif 000011
【図５Ａ】
2015523886.tif 000012
【図５Ｂ】
2015523886.tif 000013
【図６Ａ】
2015523886.tif 000014
【図６Ｂ】
2015523886.tif 000015
【図６Ｃ】
2015523886.tif 000016
【図６Ｄ】
2015523886.tif 000017
【図７】
2015523886.tif 000018
【図８】
2015523886.tif 000019
【国際調査報告】
2015523886.tif 000020
2015523886.tif 000021