JP6272864B6 - ゲーム移動 - Google Patents

ゲーム移動 Download PDF

Info

Publication number
JP6272864B6
JP6272864B6 JP2015528544A JP2015528544A JP6272864B6 JP 6272864 B6 JP6272864 B6 JP 6272864B6 JP 2015528544 A JP2015528544 A JP 2015528544A JP 2015528544 A JP2015528544 A JP 2015528544A JP 6272864 B6 JP6272864 B6 JP 6272864B6
Authority
JP
Japan
Prior art keywords
game
client
server
video
play
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2015528544A
Other languages
English (en)
Other versions
JP2015531629A (ja
JP6272864B2 (ja
JP2015531629A6 (ja
Inventor
ジャスティス,ジョン・レイモンド
ロブ,ケネス・アラン
デーヴィス,レイ・ウェイン
カラムフィロフ,クラシミール・エミロフ
モリソン,フランク
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2015531629A publication Critical patent/JP2015531629A/ja
Publication of JP6272864B2 publication Critical patent/JP6272864B2/ja
Application granted granted Critical
Publication of JP6272864B6 publication Critical patent/JP6272864B6/ja
Publication of JP2015531629A6 publication Critical patent/JP2015531629A6/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/45Controlling the progress of the video game
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/355Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an MPEG-stream for transmitting to a mobile phone or a thin client
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/358Adapting the game course according to the network or server load, e.g. for reducing latency due to different connection speeds between clients
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/45Controlling the progress of the video game
    • A63F13/49Saving the game status; Pausing or ending the game
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/77Game security or game management aspects involving data related to game devices or game servers, e.g. configuration data, software version or amount of memory
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/53Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing
    • A63F2300/534Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing for network load management, e.g. bandwidth optimization, latency reduction
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/53Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing
    • A63F2300/538Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing for performing operations on behalf of the game client, e.g. rendering
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/55Details of game data or player data management
    • A63F2300/5526Game data structure
    • A63F2300/554Game data structure by saving game or status data

Description

本願発明の一実施例は、例えば、ゲーム移動に関する。
[0001]ビデオゲームは、オンラインで購入され、プレイするためにビデオゲーム機にダウンロードされることが可能である。プレイヤーは、ゲーム全体がダウンロードされるまで、ゲームのプレイを開始するのを待つ必要がある。ビデオゲームは、実行可能ゲームコードをクライアントデバイスにダウンロードせずに、サーバー上でプレイされることも可能である。
[0002]本概要は、詳細な説明において下でさらに説明される、精選された概念を簡素化された形で紹介するために提供される。本概要は、特許請求される主題の主要な特徴または重要な特徴を識別することが意図されず、特許請求される主題の範囲を判断する際の助けとして単独で使用されることも意図されない。
[0003]本発明の実施形態は、ゲームプレイがサーバー実行ビデオゲームとクライアント実行ビデオゲームとの間を往復して移動するのを可能にする。例えば、ユーザーは、サーバー上で実行するビデオゲームのプレイを開始し、次いで、プレイをゲーム機などのクライアントデバイスに移動することができる。ゲームがサーバー上で実行しているとき、サーバーはゲームコードを実行して、ビデオ画像をレンダリングして、画像をクライアントに伝達する。クライアントは、ゲーム制御コマンドをサーバーに伝達することができる。
[0004]クライアントがゲーム実行を引き継ぐ前に、ゲームファイルはクライアントデバイスにアクセス可能であることが必要である。一実施形態では、サーバーは、ゲームプレイの間、ゲームファイルをクライアントデバイスにダウンロードする。ダウンロード速度をゲームプレイによって消費されないユーザーの帯域幅部分に限定することによって、進行中のゲーム経験の中断または劣化を防ぐために、ダウンロードはスロットル調整され得る。ゲームファイル、またはゲームファイルの第1のブロックがダウンロードされると、ゲームプレイはクライアントに切り替えることができる。
[0005]ゲームプレイは、クライアント上で開始して、サーバーに遷移することもできる。例えば、ユーザーは、ユーザーがゲームファイルをクライアント上に記憶していない、ゲーム内のあるポイントに達することができる。例えば、ユーザーは、第1のゲームブロックの一部である第1のレベルをプレイしており、次いで、まだダウンロードされていない第4のゲームブロックの一部である第6のレベルにスキップすることを望む場合がある。この場合、第4のゲームブロックがダウンロードされるまで、ゲームプレイはクラウドに遷移して戻ることができる。第4のブロックのダウンロードが完了すると、ユーザーはゲーム機上でのプレイに遷移して戻ることができる。一実施形態では、ゲーム内の非中断切替えポイント(nondisruptive switching point)に達するとき、ユーザーはクライアントとサーバーとの間で遷移される。あるレベルの終点に達することは、非中断切替えポイントの一例である。
[0006]添付の図面を参照して、本発明の実施形態が下で詳細に説明される。
[0007]本発明の実施形態を実施するのに適した、例示的なコンピューティング環境のブロック図である。 [0008]本発明のある実施形態による、オンラインゲーム環境の図である。 [0009]本発明のある実施形態による、ゲーム移動環境の図である。 [0010]本発明のある実施形態による、ゲームサーバーからゲームクライアントへのゲームプレイの移動を促すゲーム環境内の伝達を示すシーケンス図である。 [0011]本発明のある実施形態による、クライアント・ゲーム・デバイスからサーバー配置ゲームサービス(server located gaming service)へのゲームの移動の間にゲーム環境内で生じる伝達を示すシーケンス図である。 [0012]本発明のある実施形態による、ゲームプレイをゲームサーバーからクライアントデバイスに移動する方法を示す流れ図である。 [0013]本発明のある実施形態による、ゲームプレイをクライアントデバイスからゲームサーバーに移動する方法を示す流れ図である。 [0014]本発明のある実施形態による、クライアントとゲームサーバーとの間のビデオゲームの移動実行の方法を示す流れ図である。
[0015]本発明の実施形態の主題は、法定要件を満たすための特異性を用いて本明細書で説明される。しかし、この説明自体は、本特許の範囲を限定することが意図されない。むしろ、本発明者らは、他の現在もしくは今後の技術に関して、異なるステップまたは本書で説明されるステップに類似したステップの組合せを含めるために、特許請求される主題が他の様式で実施されることも可能であることを企図している。さらに、「ステップ」および/または「ブロック」という用語は、本明細書で、用いられる方法の異なる要素を暗示するために使用される場合があるが、個々のステップの順序が明示的に説明されていない限り、かつ個々のステップの順序が明示的に説明されている場合を除いて、これらの用語は本明細書で開示される様々なステップ間の何らかの特定の順序を暗示するとして解釈されるべきではない。
[0016]本発明の実施形態は、ゲームプレイがサーバー実行ビデオゲームとクライアント実行ビデオゲームとの間を往復して移動するのを可能にする。例えば、ユーザーは、サーバー上で実行するビデオゲームを開始し、次いで、ゲーム機などのクライアントデバイスにプレイを移動させることができる。ゲームがサーバー上で実行しているとき、サーバーは、ゲームコードを実行して、ビデオ画像をレンダリングして、画像をクライアントに伝達する。クライアントは、ゲーム制御コマンドをサーバーに伝達することができる。
[0017]本出願で使用される場合、ゲームを実行することは、ビデオゲーム画像をレンダリングすることを含む。レンダリングは、ゲーム・シーン・ファイルからビデオゲーム画像を生成するプロセスである。シーンファイルは、形状と、照明と、テキストと、ゲームオブジェクトを記述する他の情報とを含む。例示的なゲームオブジェクトは、背景オブジェクトおよび前景オブジェクトと、ゲームキャラクターと、ゲームウエポン(game weapon)と、ゲーム特殊効果と、ビデオ・ゲーム・シーンの他の特徴とを含む。オブジェクト自体は、カメラによって拾い上げられたジェスチャ、タッチスクリーン上のタッチ入力、ゲームコントローラー上のジョイスティック入力およびボタン入力、キーストローク、音声コマンド、ならびに他の入力など、ユーザー入力に応答して操作され得る。レンダリングは、グラフィックス・プロセシング・ユニット(GPU)に関連するグラフィックス・パイプラインを介して行われ得る。レンダリングされると、画像は表示のために出力され得る。
[0018]本発明に対する実施形態は、サーバーまたはクライアントのいずれかの上で実行するゲームを説明する場合がある。デバイスがゲーム画像をレンダリングするとき、ゲームはそのデバイス上で実行するが、他のデバイスはゲームプレイの一部である処理ステップを実行することが可能である。例えば、クライアントは、制御入力を前処理して、それらの制御入力を、ゲームコードを実行して、クライアントに伝達し戻される画像をレンダリングするサーバーに伝達することができる。加えて、クライアントデバイスは、レンダリングされた画像を表示のためにスケーリングすることができる。この場合、サーバーはゲームを実行するとして説明されるが、クライアントデバイスは何らかのゲームプレイ関係の処理および表示関係の処理を実行する。複数のプレイヤーがネットワークを介して接続されるマルチプレイヤーゲームでは、サーバーは、レンダリングするために、形状および他のゲーム情報をクライアントに送信することができる。
[0019]一実施形態では、ユーザーはサーバー上でゲームのプレイを開始する。述べたように、サーバー上でゲームをプレイするとして説明されるが、画像は、サーバーから、その画像が表示されるクライアントデバイスに送信され得る。同様に、制御およびゲーム入力は、クライアントから、ゲームを操作して、ビデオゲーム画像をレンダリングするためにそれらの制御およびゲーム入力が使用されるサーバーにアップロードされ得る。ある時点で、移動プロセスの開始を引き起こすトリガ事象が生じ得る。例えば、ユーザーは、プレイされているゲームの完全版を購入することを選択することができる。この時点で、ゲームサービスがゲームコードのブロックをクライアントデバイスにダウンロードするためにどの程度の帯域幅が利用可能であるかを判断する間、ユーザーはサーバー上でゲームのプレイを継続する。ゲームセッションが12Mbps接続の6Mbpsを現在利用している場合、ゲーム移動構成要素は、利用可能な他の6Mbps内でゲーム機への全ゲームのダウンロードを開始することができる。ゲームサービスは、帯域幅使用を継続的に監視して、ダウンロードをスロットル調整して、ゲーム経験の劣化を防ぐことができる。例えば、ゲームセッションに加えて、ユーザーがミュージック・ストリーミング・サービスにアクセスして、利用可能な帯域幅が4Mbpsに削減された場合、それに応じて、ダウンロードは4Mbpsにスロットル調整されることになる。
[0020]クライアントがゲーム実行を引き継ぐ前に、ゲームファイルはクライアントデバイスにアクセス可能であることが必要である。一実施形態では、サーバーはゲームプレイの間、ゲームファイルをクライアントデバイスにダウンロードする。ダウンロード速度をゲームプレイによって消費されないユーザーの帯域幅部分に制限することによって、進行中のゲーム経験の中断または劣化を防ぐために、ダウンロードはスロットル調整され得る。ゲームファイル、またはゲームファイルの第1のブロックがダウンロードされると、ゲームプレイはクライアントに切り替えることができる。
[0021]ゲームプレイは、クライアント上で開始して、サーバーに遷移することもできる。例えば、ユーザーは、ユーザーがゲームファイルをクライアント上に記憶していない、ゲーム内のあるポイントに達することができる。ユーザーは、第1のゲームブロックの一部である第1のレベルをプレイしており、次いで、まだダウンロードされていない第4番目のゲームブロックの一部である第6のレベルにスキップすることを望む場合がある。この場合、第4のゲームブロックがダウンロードされるまで、ゲームプレイはクラウドに遷移して戻ることができる。ダウンロードが完了すると、ユーザーはゲーム機上でのプレイに遷移して戻ることができる。一実施形態では、ゲーム内の非中断切替えポイントに達するとき、ユーザーはクライアントとサーバーとの間で遷移される。あるレベルの終点に達することは、非中断切替えポイントの一例である。
[0022]本発明の実施形態の概要を手短に説明してきたが、本発明の実施形態を実装する際に使用するのに適したある例示的な動作環境が下で説明される。
例示的な動作環境
[0023]図面全体を参照し、当初、特に図1を参照すると、本発明の実施形態を実装するための例示的な動作環境の全体が示され、コンピューティングデバイス100と呼ばれる。コンピューティングデバイス100は、適切なコンピューティング環境の単なる一例であり、本発明の使用または機能の範囲に関する何らかの限定を示唆することが意図されない。また、コンピューティングデバイス100は、例示される構成要素のうちのいずれか1つもしくはそれらの組合せに関する何らかの依存性または要件を有するとして解釈されるべきでない。
[0024]本発明は、コンピュータコードあるいは、コンピュータ、または、情報携帯端末もしくは他のハンドヘルドデバイスなど、他の機械によって実行されている、プログラム構成要素など、コンピュータ実行可能命令を含む機械使用可能命令の一般的な文脈で説明される場合がある。全体に、ルーチン、プログラム、オブジェクト、構成要素、データ構造などを含めて、プログラム構成要素は、特定のタスクを実行するか、または特定の抽象データタイプを実装するコードを指す。本発明の実施形態は、ハンドヘルドデバイス、家庭用電化製品、汎用コンピュータ、専用コンピューティングデバイスなどを含めて、様々なシステム構成で実践され得る。本発明の実施形態は、タスクが通信ネットワークを介して連結される遠隔処理デバイスによって実行される分散型コンピューティング環境でも実践され得る。
[0025]図1を引き続き参照すると、コンピューティングデバイス100は、以下のデバイス、すなわち、メモリ112と、1つまたは複数のプロセッサ114と、1つまたは複数の提示構成要素116と、入出力(I/O)ポート118と、I/O構成要素120と、例示的な電源122を直接的または間接的に結合するバス110を含む。バス110は(アドレスバス、データバス、またはそれらの組合せなど)1つもしくは複数のバスであってよいものを表す。図1の様々なブロックは、分かりやすいように、ラインを用いて示されるが、実際には、様々な構成要素を描写することはそれほど明瞭ではなく、例えて言えば、ラインはより正確にはグレイおよび曖昧になる。例えば、ディスプレイデバイスなどの提示構成要素はI/O構成要素120であると見なすことができる。また、プロセッサはメモリを有する。本発明の発明者らは、そういうものが本技術分野の性質であることを認識し、図1の略図は本発明の1つまたは複数の実施形態に関して使用され得る例示的なコンピューティングデバイスの単なる例であることを繰り返し表明する。「ワークステーション」、「サーバー」、「ラップトップ」、「ハンドヘルドデバイス」などの範疇は区別されないが、これは、これらすべてが図1の範囲内であると企図され、かつ「コンピュータ」または「コンピューティングデバイス」を指すためである。
[0026]コンピューティングデバイス100は、典型的には、様々なコンピュータ可読媒体を含む。コンピュータ可読媒体は、コンピューティングデバイス100によってアクセスされ得る任意の利用可能な媒体であってよく、揮発性媒体と不揮発性媒体、取外し可能媒体と取外し不可能媒体の両方を含む。限定ではなく、例として、コンピュータ可読媒体は、コンピュータ記憶媒体と通信媒体とを含み得る。コンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、もしくは他のデータなど、情報を記憶するための任意の方法または技術で実装される揮発性媒体と不揮発性媒体、取外し可能媒体と取外し不可能媒体の両方を含む。
[0027]コンピュータ記憶媒体は、RAMと、ROMと、EEPROMと、フラッシュメモリまたは他のメモリ技術と、CD−ROMと、デジタル多用途ディスク(DVD)または他の光ディスクストレージと、磁気カセットと、磁気テープと、磁気ディスクストレージまたは他の磁気記憶媒体とを含む。コンピュータ記憶媒体は、伝搬データ信号を含まない。
[0028]通信媒体は、典型的には、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータを、搬送波もしくは他の移送機構など、変調データ信号の形で実施し、任意の情報配信媒体を含む。「変調データ信号」という用語は、その特性セットのうちの1つもしくは複数を有する信号、または信号内の情報を符号化するような形で変更される信号を意味する。限定ではなく、例として、通信媒体は、配線ネットワークまたは直接配線接続など、ワイヤード媒体と、音響媒体、RF媒体、赤外線媒体、および他のワイヤレス媒体などのワイヤレス媒体とを含む。上記のうちのいずれかの組合せもコンピュータ可読媒体の範囲内に含まれるべきである。
[0029]メモリ112は、揮発性メモリおよび/または不揮発性メモリの形でコンピュータ記憶媒体を含む。メモリ112は、取外し可能であってよく、取外し不可能であってよく、またはそれらの組合せであってもよい。例示的なメモリは、固体メモリ、ハードドライブ、光ディスクドライブなどを含む。コンピューティングデバイス100は、バス110、メモリ112、またはI/O構成要素120など、様々なエンティティからデータを読み取る、1つもしくは複数のプロセッサ114を含む。提示構成要素116は、データ表示をユーザーまたは他のデバイスに提示する。例示的な提示構成要素116は、ディスプレイデバイス、スピーカ、印刷構成要素、振動構成要素などを含む。I/Oポート118は、コンピューティングデバイス100が、そのうちのいくつかは内蔵型であり得る、I/O構成要素120を含む他のデバイスに論理的に結合されるのを可能にする。例示的なI/O構成要素120は、マイクロフォン、ジョイスティック、ゲームパッド、サテライトディッシュ、スキャナ、プリンタ、ワイヤレスデバイスなどを含む。
例示的なオンラインゲーム環境
[0030]次に図2を参照すると、本発明のある実施形態によるオンラインゲーム環境200が示される。オンラインゲーム環境200は、ネットワーク220を介してゲームサービス230に接続された様々なゲームクライアントを含む。例示的なゲームクライアントは、ゲーム機210と、タブレット212と、パーソナルコンピュータ214とを含む。スマートフォンなど、他のゲームクライアントの使用も可能である。ゲーム機210は、ゲーム機210に通信可能に結合された、1つまたは複数のゲームコントローラーを有することが可能である。一実施形態では、タブレット212は、ゲーム機210またはパーソナルコンピュータ214用の入力デバイスとして機能し得る。別の実施形態では、タブレット212は、独立型ゲームクライアントである。ネットワーク220は、インターネットなど、広域ネットワークであってよい。
[0031]ゲームサービス230は、互いに通信可能に結合された複数のコンピューティングデバイスを含む。一実施形態では、ゲームサービス230は1つまたは複数のサーバーファームを使用して実装される。サーバーファームは、世界中の都市を含めて、様々な地理的領域にわたって広がり得る。このシナリオでは、ゲームクライアントは、最も近接するサーバーファームに接続することができる。本発明の実施形態は、このセットアップに限定されない。
[0032]ゲームサービス230は、ゲームがゲームサービス230によって提供されるコンピューティングデバイス内で実行されるのを可能にする。ゲームサービスとゲームクライアントとの間の通信セッションは、入力トラフィックをゲームサービス230に搬送して、レンダリングされたゲーム画像を戻す。この実施形態では、ゲームサービスの一部であるコンピューティングデバイスは、様々なゲームクライアントに関連する入力デバイスによって生成された制御ストリームを使用して、ビデオゲームコードを実行する。レンダリングされたビデオゲームは、次いで、ネットワークを介して、レンダリングされたゲームが表示のために出力されるゲームクライアントに伝達される。
ゲーム移動のための例示的なゲームクライアントおよびゲームサービス
[0033]次に図3を参照すると、本発明のある実施形態による、例示的なゲーム移動環境300が示される。ゲーム移動環境300は、ネットワーク330を介してゲームサーバー340に通信可能に結合されたゲームクライアント310を含む。一実施形態では、ネットワークはインターネットであってよい。ゲームクライアント310は、第1のゲーム入力デバイス312と、第2のゲーム入力デバイス314と、ディスプレイ316とに接続される。例示的なゲーム入力デバイスは、ゲームコントローラーと、キーボードと、マウスと、タッチパッドと、タッチスクリーンと、音声コマンドを受信するためのマイクロフォンと、デプスカメラと、ビデオカメラと、キーボードと、トラックボールとを含む。本発明の実施形態は、これらの入力デバイスに限定されない。ディスプレイデバイス316は、ビデオ・ゲーム・コンテンツを表示することができる。例えば、ディスプレイ316は、テレビジョンまたはコンピュータスクリーンであってよい。別の実施形態では、ディスプレイ316は、ゲームクライアント310に統合されたタッチスクリーンである。
[0034]ゲームクライアント310は、ビデオゲームを実行することが可能なコンピューティングデバイスである。ゲームクライアント310は、タブレットまたはラップトップコンピュータであってよい。別の実施形態では、ゲームクライアント310はゲーム機であり、ディスプレイ316はゲーム機に通信可能に接続された遠隔ディスプレイである。ゲームクライアント310は、動作環境320と、ゲーム移動構成要素321と、ゲーム実行環境322と、ゲーム・データ・ストア324と、ゲーム・サービス・クライアント326と、プレイヤー・プロファイル・データ・ストア328とを含む。
[0035]動作環境320は、ハードウェアを管理して、ゲームクライアント310上で実行するアプリケーションにサービスを提供するオペレーティングシステムによって提供され得る。動作環境は、クライアントリソースを、ゲーム移動の一環として、異なるアプリケーションに割り振ることができる。例えば、ゲームプレイがゲームクライアント310に移動すると、動作環境はディスプレイの制御をゲーム実行環境322に与えることができる。
[0036]ゲーム移動構成要素321は、クライアント310によって実行されるゲーム移動機能を管理する。ゲーム移動構成要素321は、クライアント310からゲームサーバー340へのゲームプレイの移動を開始することができる。ゲーム移動構成要素321は、ゲームプレイをゲームサーバー340からクライアント310に移動させるのに参加することも可能である。ゲーム移動構成要素321は、ゲームサーバー340上で実行するゲームサービスに連絡して、ゲームセッションをゲームサーバー340に移動することを要求することが可能である。この要求は、その要求が関連する特定のゲーム、ならびに現在のゲームがゲーム実行環境322内で実行している場合、現在のゲームの状態を含み得る。ゲームプレイは、サーバーから受信された命令またはトリガ事象の検出に応答して移動され得る。ゲーム移動構成要素321はトリガ事象を検出することができる。
[0037]いくつかのトリガ事象が可能である。ゲームの次の部分がクライアント上でプレイするために利用可能になるまで、部分的にダウンロードされたゲームの終点に達することがプレイをサーバー340に移動させるトリガである、いくつかのシナリオが存在する。1つのシナリオでは、ユーザーはユーザーがレベル1から3までをプレイするのを可能にするブロックなど、ブロックの形でゲームの第1の部分をダウンロードする。ユーザーがレベル3の終点に近づき、次のブロックがまだダウンロードされていないと、トリガ事象が認識され得る。レベル3の終点に達したとき、ユーザーがサーバー上でレベル4をプレイするのを可能にするゲーム移動が生じることになる。
[0038]別の実施形態では、ゲーム購入事象がトリガである。ゲームのデモ部分が終わるとき、ゲームの残りの部分をまずダウンロードさせずに、ゲームの完全版を購入するとすぐに、ゲームプレイをゲームクライアント310からサーバー340に移動することができる。別のシナリオでは、ゲーム機に完全にダウンロードされたゲームすら、サーバーによってだけ提供されるゲーム経験またはゲームレベルを有することが可能である。例えば、ゲームは、非常に大型で、サーバー上でだけ利用可能な最終レベルを有することが可能である。例えば、最終レベルは、ユーザーが数千人の悪人のうちの1人としてプレイするのを可能にし得る。
[0039]ゲーム実行環境322は、ゲームのインスタンスを実行するために必要とされる、クライアント310上のゲームリソースを含む。ゲーム実行環境322は、コンピューティングおよびビデオ処理とともにアクティブメモリを含む。ゲーム実行環境322は、ゲーム制御を受信して、そのプログラミングに従って、ゲームを操作および進展させる。一実施形態では、ゲーム実行環境322は、ゲームクライアントに伝達される、レンダリングされたビデオストリームを出力する。他の実施形態では、ゲーム実行環境322は、ゲームビデオをレンダリングするために、ゲームクライアント上のローカルオブジェクトと組み合わされることが可能なゲーム形状、または他の提示を出力する。
[0040]ゲーム・データ・ストア324は、ダウンロードされたゲームと、部分的にダウンロードされたゲームとを記憶する。ゲームは、プレイ可能ブロックの形でダウンロードされ得る。例えば、第1のプレイ可能ブロックは、プレイヤーが第1のレベルをプレイするのを可能にし得る。一実施形態では、ブロックは分割され、これは、レベル変更など、ゲーム遷移ポイントで開始および終了する。ゲームをプレイするために、ゲームはゲーム・データ・ストア324からゲーム実行環境322に関連するアクティブメモリ内にロードされることが必要であり得る。
[0041]ゲーム・サービス・クライアント326は、サーバー340上で実行するゲームサービスから受信された、レンダリングされたビデオゲーム画像を表示するクライアントアプリケーションである。ゲーム・サービス・クライアント326は、ゲーム入力を処理して、それを、サーバー340に伝達される、容易にアップロード可能なフォーマットに変更することも可能である。ゲーム・サービス・クライアント326は、サーバー340から受信された、レンダリングされたビデオゲーム画像をディスプレイ316のために最適化されたサイズにスケーリングすることも可能である。
[0042]プレイヤー・プロファイル・データ・ストア328は、個々のゲームに関するプレイヤープロファイル情報を記憶する。プレイヤープロファイル情報は、個々のゲームに関するツームストーン(tombstone)、またはゲーム保存データを保存することも可能である。このプレイヤー・プロファイル・データまたはゲーム進展データは、ゲーム移動プロセスの一環として往復して伝達され得る。例えば、ゲームがサーバー340からゲームクライアント310に移動されるとき、ゲーム保存ファイル、またはツームストーンはゲームクライアント310に伝達され得る。ゲーム保存ファイルとツームストーンは両方ともゲーム進展を記録する。ゲーム実行環境322は、次いで、ゲーム保存データを読み取って、プレイヤーがサーバー上に残されたとき、ゲームを開始する。ゲームプレイがクライアントからサーバーに移動するとき、ゲーム保存データおよびプレイヤープロファイル情報がゲームクライアント310からサーバー340にアップロードされる逆のシナリオも可能である。
[0043]ゲームサーバー340は、接続マネージャ342と、プレイヤー・プロファイル・データ・ストア344と、ゲーム移動マネージャ346と、ゲーム実行環境348と、ゲーム・データ・ストア350と、ゲームマネージャ352と、ゲーム販売促進マネージャ354とを含む。単一のボックスとして示されるが、ゲームサーバー340は、多数の機械を備えた1つのサーバーファームであり得るか、またはいくつかのサーバーファームであることすら可能である。
[0044]接続マネージャ342はクライアント310とサーバー340との間の接続を構築する。接続マネージャ342は、ユーザーがサーバー340によって提供されるゲームサービスにアクセスすることが許可されることを確実にするために、様々な認証機構を提供することも可能である。接続マネージャ342は、接続内で利用可能な帯域を解析して、ゲームプレイが劣化しないことを確実にするために、ゲームプレイの間、ゲームのダウンロードをスロットル調整することも可能である。
[0045]プレイヤー・プロファイル・データ・ストア344は、プレイヤー情報を構築および記憶するために、接続マネージャ342と共働することができる。プレイヤープロファイルの一部は、プレイヤーの名前、アドレス、およびクレジットカード情報など、人口統計情報および金融情報、またはゲームサービスによって提供されるゲームおよび経験の代金を支払うため、もしくは購入するための他の機構を含み得る。
[0046]加えて、プレイヤー・プロファイル・データ・ストア344は、個々のゲーム内のプレイヤーの進展を記録することができる。プレイヤーがゲームを進めると、プレイヤーの得点と、ゲームレベルへのアクセスとが記憶され得る。さらに、プレイヤー・プロファイル・データ・ストア344は、言語選択など、個々のプレイヤー選択に関する情報を記憶することができる。プレイヤーのゲームクライアント、およびネットワーク接続の速度に関する情報が記憶されて、ゲーム経験を最適化するために利用されることも可能である。例えば、一実施形態では、地理的に近接するサーバーファームが使用中であるとき、より高い遅延のインターネット接続を有するプレイヤーが近接するサーバーファームに優先的に接続され得るのに対して、より低い遅延の接続を有するプレイヤーはさらに遠いサーバーファームに接続され得る。このようにして、追加の遅延に対処することが最も可能なネットワーク接続を有するプレイヤーが、その位置により、追加の遅延を生み出すサーバーファームに接続される。
[0047]プレイヤー・プロファイル・データ・ストア344は、個々のプレイヤーに関する使用履歴を記憶することも可能である。プレイヤーのゲーム購入履歴、ゲームサンプリング履歴、またはゲームの購入を必要としない、ゲームサービスを通したゲームプレイ履歴が記憶され得る。この使用情報は、個々のプレイヤーに関心あるゲームを示唆するために解析され得る。一実施形態では、購入履歴は、ゲームサービスを通して購入されないゲームを含み得る。例えば、購入履歴は、プレイヤーが小売店で購入されたゲームからのキーを入力することによって増大され得る。いくつかの実施形態では、プレイヤーがもはやそのゲームクライアントでないとき、プレイヤーは、次いで、そのゲームクライアント310上と、ゲームサービスを通じての両方で、そのゲームに対するアクセスを有することが可能である。
[0048]ゲーム移動マネージャ346は、サーバー340からクライアント310へのゲームプレイの移動を管理して、クライアント310からサーバー340へのゲームプレイの移動を助けることができる。ゲーム移動構成要素321同様、ゲーム移動マネージャ346は、トリガ事象を検出して、応答して、ゲーム移動を開始することができる。先に述べたトリガ事象に加えて、サーバー340上で現在プレイされているゲームに関するコードを含むゲームブロックの成功裏のダウンロードは、サーバー340からクライアント310へのゲーム移動を開始することができるトリガ事象である。例えば、ユーザーは、サーバー上で実行する第1のゲームをプレイしている場合がある。ゲーム移動マネージャ346(または、他の構成要素)は、ゲームの第1の部分をプレイするのに必要とされるデータのブロックをクライアントに伝達する。データのこのブロックが成功裏にダウンロードされると、ゲームプレイをサーバー340からクライアント310に移動するための命令が送信され得る。ゲームが成功裏に移動されると、サーバー上でゲームをプレイするために前に使用されている帯域幅は、ゲームの残りをクライアント310にダウンロードするための専用にされ得る。
[0049]ゲーム実行環境348は、ゲームのインスタンスを実行するために必要とされるゲームリソースを含む。これらはゲームマネージャ352および他の構成要素によって管理される、前に説明されたリソースである。ゲーム実行環境348は、コンピューティングおよびビデオ処理とともにアクティブメモリを含む。ゲーム実行環境348は、I/Oチャネルを介してゲーム制御を受信して、そのプログラミングに従って、ゲームを操作および進展させる。一実施形態では、ゲーム実行環境348は、ゲームクライアントに伝達される、レンダリングされたビデオストリームを出力する。他の実施形態では、ゲーム実行環境348は、ゲームビデオをレンダリングするために、ゲームクライアント上でローカルオブジェクトと組み合わされることが可能なゲーム形状、または他の表現を出力する。
[0050]ゲーム・データ・ストア350は利用可能なゲームを記憶する。ゲームは、データストアから検索されて、アクティブメモリを介してアクティブ化され得る。ゲーム・データ・ストア350は、受動メモリ、すなわち、二次メモリとして説明され得る。一般に、ゲームは、ゲーム・データ・ストア350からプレイされ得ない。しかし、いくつかの実施形態では、二次メモリは仮想メモリとして利用されることが可能であり、この場合、ゲーム・データ・ストア350の一部は、アクティブメモリとしても機能し得る。これは、アクティブメモリは特定のハードウェア構成要素によって定義されるとは限らず、ゲームリソースが、ゲームを実行するために、メモリ内のオブジェクトをアクティブに操作して、それらのオブジェクトにアクセスするための能力によって定義されることを示す。
[0051]ゲームマネージャ352は、アクティブゲームへのプレイヤーの接続を管理する。一実施形態では、ゲームサービスを介して利用可能な各ゲームに関する個々のゲームマネージャが存在する。単一のゲームを例にとると、ゲームマネージャは、プレイヤーを要求されたゲーム内にドロップする(drop)ことになる。ゲームマネージャ352はアクティブゲームをやはり管理する。一実施形態では、プレイヤーは、ゲームマネージャ352を介してゲームに接続することができる。すなわち、ゲームマネージャ352は、個々のゲームインスタンス同士の間の伝達および接続に関するゲートキーパー(gatekeeper)として機能し得る。プレイヤーがゲームから抜けるとき、プレイヤーの進展を検索して、プレイヤー・プロファイル・データ・ストア344内のプレイヤーのプロファイル内に保存するための命令がゲームマネージャに達し得る。プレイヤーがゲームから抜けると、ゲームはゲームマネージャ352によって中断され得る。
[0052]ゲーム販売促進マネージャ354は、ゲームサンプルまたはゲームデモを提供するゲームのブロックをゲームクライアント310にプリエンプティブに(preemptively)ダウンロードすることになる。ゲームブロックは、ゲーム全体の第1の部分、または特別に設計されたデモであってよい。いずれにしても、ゲーム販売促進マネージャ354は、プレイヤーの考えられるゲーム関心を識別して、ゲームクライアント310にダウンロードするために関連するゲームを選択することができる。ダウンロードされると、ユーザーは、ゲームサンプルまたはゲームデモがプレイされることが可能であることを通知され得る。ユーザーには、ゲームプレイの間、トリガ事象であり得る、ゲームを購入するオプションが与えられることが可能である。購入すると、ゲームの残りがダウンロードされることが可能であり、ユーザーは、必要な場合、ダウンロードが生じる間に、ゲームの完全サーバー版に移動され得る。
[0053]次に図4を参照すると、本発明のある実施形態による、ゲームサーバーからゲームクライアントへのゲームプレイの移動を促す、ゲーム環境400内の伝達を示すシーケンス図が示される。ゲーム環境400は、場合によっては、ゲームクライアント310に類似した、ゲームクライアント上で動作する構成要素、ならびにゲームサーバー340に類似し得る、ゲームサーバー上で動作する構成要素を含む。
[0054]ゲームクライアント上に配置された構成要素は、ゲームコントローラー410と、クライアントディスプレイ412と、ゲーム・サービス・クライアント・アプリケーション414と、クライアント移動構成要素416と、クライアント・ゲーム・ストア418と、クライアントゲーム環境420とを含む。ゲームサービス内に配置された構成要素は、ゲーム・サービス・ゲーム環境422と、ゲームサービス移動構成要素424と、ゲーム・サービス・データ・ストア426と、ゲーム・サービス・プレイヤー・プロファイル・データ・ストア428とを含む。クライアントとゲームサービスは両方とも、分かりやすいように、図4に示されない追加の構成要素を含み得る。
[0055]当初、ゲームコントローラー410からの制御入力430は、クライアントデバイス上で実行するゲーム・サービス・クライアント・アプリケーション414に伝達される。制御入力430は、ゲーム・サービス・サーバー上で実行するゲーム・サービス・ゲーム環境422によって使用可能な形態に前処理され得る(432)。この前処理は、いくつかの実施形態では必要とされず、その場合、未加工信号が伝達され得る。前処理された制御入力434がゲーム・サービス・クライアント414からゲーム・サービス・ゲーム環境422に伝達され、ここで、前処理された制御入力434はゲームオブジェクトを操作する(436)ために使用される。制御入力434に応答して、新しいゲーム画像438がレンダリングされて、ゲーム・サービス・クライアント414に伝達される。必要な場合、レンダリングされたゲーム画像438は、クライアントディスプレイ412に適したサイズにスケーリングされる(440)。スケーリングされたビデオ画像442は、ユーザーに表示するために、クライアントディスプレイ412に伝達される。
[0056]ゲーム状態情報446が生成され(444)、次いで、ゲーム・サービス・プレイヤー・プロファイル・データ・ストア428に伝達される。ユーザーがゲーム内のあるポイントに戻ることができるように、ゲーム状態は周期的に保存される。他の構成要素が、トリガ事象に関するゲーム状態情報を監視することも可能である。
[0057]移動トリガとは異なるダウンロードトリガがステップ450で検出される。ダウンロードトリガは、進行中のゲームセッション内でプレイされているゲームの残りを購入するためのユーザー決定であり得る。例えば、ユーザーは、販売促進またはデモの一環としてダウンロードされた、ゲームの第1のブロックのプレイを開始することができる。別の実施形態では、ユーザーは、予めゲームを購入したが、ゲームの次のブロックをダウンロードするために利用可能な帯域幅を有していなかった。ダウンロード事象450は、ダウンロード可用性を提供するためのユーザーの帯域幅または帯域幅使用の変化を検出することであり得る。
[0058]ダウンロード要求またはダウンロード命令452がゲームサービス移動構成要素424からゲーム・データ・ストア426に伝達される。ゲーム・データ・ストアは、ダウンロードされることになる、ゲームの次のブロックを準備して(454)、ゲームブロック456をクライアント・ゲーム・ストア418にダウンロードする。クライアント・ゲーム・ストア418はゲームブロック456を保存する(458)。単一のメッセージとして示されるが、シーケンス図に示されるゲームブロック456および他のメッセージは、実際には、経時的に生じる一連のメッセージであり得る。例えば、状況によっては、ユーザーの接続内で利用可能な帯域幅に応じて、ゲームブロック456をクライアント・ゲーム・ストア418にダウンロードするために20分から30分かかる場合がある。保存されると、ゲームブロックが使用できる状態にあることを示す通知460がクライアント移動構成要素416に送信される。ステップ462で、ダウンロード完了メッセージ464が生成されて、ゲームサービス移動構成要素424に伝達される。
[0059]ステップ466で、ゲーム移動トリガが検出される。この場合、クライアントデバイスに対するゲームブロックの完全なダウンロードはトリガ事象を構成する。トリガを検出する(466)とすぐ、移動に必要な情報が収集される。この場合、ゲーム状態情報468に関する要求が生成されて、ゲームサービスのプレイヤー・プロファイル・データ・ストア428に伝達される。ゲーム状態が検索されて(470)、現在のプレイヤー進展および他のゲームパラメータを記述するゲーム状態メッセージ471がクライアント移動構成要素416に伝達される。ゲーム状態情報を使用して、ゲーム移動メッセージ473が生成されて(472)、クライアント移動構成要素416またはクライアントデバイス上の他の構成要素に伝達される。ゲーム移動メッセージは、サーバー上で残されたゲームプレイをクライアント上で開始するために必要とされる情報をクライアントデバイスに提供する。
[0060]状態情報と移動命令とを受信するとすぐ、ステップ474で、クライアント移動構成要素416は、クライアント側からのゲーム移動プロセスを開始する。レンダリングされたビデオゲーム画像を予め受信しているゲーム・サービス・クライアント414上での活動を終了するメッセージ476が伝達される。この終了は即時でなくてよい。クライアントゲーム環境420が進行中のゲームをアクティブメモリ内にロードして、引き継ぐ準備ができると、ゲーム・サービス・クライアント414は終了される(477)。終了されることは、ゲーム・サービス・アプリケーションが終了されたか、または単に最小化されたことを示す場合がある。いずれにしても、ひとたび終了されると、ゲーム・サービス・クライアント414は、ゲームサーバーから受信された情報の処理または表示にアクティブに関与しない。
[0061]アクティブ化メッセージ478は、クライアント側ゲーム環境420にも送信される。ゲームアクティブ化480は、アクティブ化メッセージ478に応答して開始する。アクティブ化480の一環として、クライアントゲーム環境420はクライアント・ゲーム・ストア418からゲームコードを要求する(482)。ゲームコードが準備されて(484)、クライアントゲーム環境420に伝達し戻される(486)。ゲームデータは、次いで、アクティブメモリ内にロードされて(488)、ゲームプレイのために準備される。予め受信されたゲーム状態情報は、ユーザーがそのゲームを要求したポイントにゲームを設定するために使用される。一実施形態では、ゲームプレイがゲームサーバー上で続き、レンダリングされた画像がゲーム・サービス・クライアント414を介して表示される間に、ゲーム環境420はゲームをアクティブ化して、プレイのために準備している。切替えレベルなど、ゲーム内の遷移ポイントに達するとすぐに、ゲームプレイはゲーム・サービス・クライアント414からクライアントゲーム環境420に遷移する。
[0062]遷移すると、ゲーム制御データ490は、ゲームオブジェクトが操作されて(492)、新しいビデオゲーム画像がレンダリングされるクライアントゲーム環境420に伝達される。新しいビデオゲーム画像494はクライアントディスプレイ412に伝達され、ここで、新しいビデオゲーム画像494がユーザーに表示される。
[0063]次に図5を参照すると、本発明のある実施形態による、クライアント・ゲーム・デバイスからサーバー配置ゲームサービスへのゲームの移動の間、ゲーム環境500内で生じる伝達を示すシーケンス図が示される。ゲーム環境500は、場合によっては、ゲームクライアント310類似した、ゲームクライアントで動作する構成要素、ならびにゲームサーバー340に類似し得るゲームサーバー上で動作する構成要素を含む。ゲームクライアント上に配置された構成要素は、ゲームコントローラー510と、クライアントディスプレイ512と、ゲーム・サービス・クライアント・アプリケーション314と、クライアント移動構成要素516と、クライアントゲーム環境518とを含む。ゲームサービス内に配置された構成要素は、ゲーム・サービス・ゲーム環境520と、ゲームサービス移動構成要素522と、ゲーム・サービス・データ・ストア524とを含む。クライアントとゲームサービスは両方とも、分かりやすいように、図5に示されない追加の構成要素を含み得る。
[0064]当初、ユーザーはクライアントのゲーム環境518内で実行するゲームをプレイしている。ゲーム信号530はゲームコントローラー510からクライアントゲーム環境518に伝達され、ここで、信号530に応答して、ゲームオブジェクトが操作されて、ビデオゲームがレンダリングされる(532)。レンダリングされたビデオゲーム画像534はディスプレイデバイス512に伝達され、ここで、レンダリングされたビデオゲーム画像534がユーザーに表示される。
[0065]ステップ536で、クライアントゲーム環境518はゲーム状態更新メッセージ538をクライアント移動構成要素516に伝達する。ゲーム状態更新メッセージ538は、ゲーム内のユーザーの現在の進展、ならびに、ユーザーによって行われる他の命令または要求を記述することができる。例えば、ユーザーは、新しいレベルに関するメニュー要求を入力した可能性がある。
[0066]ステップ540で、クライアント移動構成要素516は、ゲーム状態メッセージ538を解析して、トリガ事象が生じたことを判断する。例えば、ユーザーは、新しいレベルを要求した可能性があるか、またはゲームクライアントにまだダウンロードされていない新しいレベルがアクセスされる、ゲーム内のあるポイントに達した可能性がある。この時点で、クライアント移動構成要素516は、移動プロセスを開始するために一連の伝達を生成する。
[0067]トリガを検出するとすぐに、クライアント移動構成要素516は、移動要求542をゲームサービス移動構成要素522に伝達する。これは、ゲームサービスとの伝達セッションがまだアクティブ化されていない場合、その伝達セッションを開始することをまず必要とする。伝達セッションを開始するプロセスは図5に示されず、ゲームサービスがゲーム移動要求を受け入れるために必要とされ得る認証プロセスまたは他のプロセスも図5に示されない。
[0068]ステップ550で、ゲーム移動構成要素522は、542で、移動要求を解析する。この要求は、リソース可用性に関して解析され得る。例えば、ゲームサービス移動構成要素522は、利用可能なリソースに問い合わせて、特定のレベルのゲームのインスタンスが利用可能であるか、またはユーザーに利用可能にされ得るかを判断する。ゲームサービス移動構成要素は、他の構成要素に問い合わせて、ユーザーが要求されたゲームレベルに関して適切なアクセスを有することを確実にすることもできる。示されないが、必要な場合、ゲームサービス移動構成要素522は、追加の情報に関して、クライアント側移動構成要素516に問い合わせることができる。
[0069]トリガ事象の検出時にクライアント移動構成要素516によって発行されたゲーム伝達に戻ると、ステップ540で、クライアント移動構成要素516は、アクティブ化要求544をゲーム・サービス・クライアント・アプリケーション514に送信することができる。アクティブ化要求544は、ゲーム・サービス・クライアント・アプリケーション514を起動させて、レンダリングされたビデオゲームを受信する準備をさせる。加えて、クライアント移動構成要素516は、ゲーム実行の終了を命令する終了メッセージ546をクライアントゲーム環境518に送信して、ゲーム・サービス・サーバーに対する移動を保留する。
[0070]移動要求542を受信することに応答して、ゲームサービス移動構成要素522は、アクティブ化メッセージ552をゲーム・サービス・ゲーム環境520に伝達する。アクティブ化メッセージ552に応答して、ゲーム・サービス・ゲーム環境520は、ユーザーによって要求されたゲーム内のあるポイントで、要求されたゲームのインスタンスをアクティブ化する。ゲーム・サービス・ゲーム環境520は、アクティブ化メッセージ552内でプレイヤープロファイルとゲーム状態情報とを受信することができる。この情報は、移動要求542内で伝達されているか、または図5のシーケンス図に示されない別個のメッセージを介して伝達されている可能性がある。
[0071]アクティブ化554の一環として、ゲーム・サービス・ゲーム環境520はゲームデータ要求556をゲーム・データ・ストア524に送信することができる。応答して、ゲームデータパッケージが準備されて(558)、ゲーム・サービス・ゲーム環境520に伝達される(560)。ステップ562で、ゲーム・サービス・ゲーム環境520はゲームデータをアクティブメモリ内にロードして、I/O接続およびデータをゲーム・サービス・クライアント・アプリケーション514またはゲームクライアントに関連する他の構成要素から受信するために準備する。
[0072]アクティブ化されると、ゲーム・サービス・ゲーム環境520は、ビデオゲームのレンダリングされた画像をゲーム・サービス・クライアント・アプリケーション514に送信する。レンダリングされた画像は、メッセージ564として示される。受信するとすぐに、ゲーム・サービス・クライアント・アプリケーション514は、画像をクライアントディスプレイ512に伝達することができる。
[0073]ゲームコントローラー510から受信されたゲーム制御データは、ゲーム・サービス・クライアント・アプリケーション514に伝達される。制御データ566は、ステップ568で、ゲーム・サービス・ゲーム環境520によって処理されることになる、容易にアップロード可能なフォーマットに前処理される。前処理されたゲーム制御570は、ゲームサービス環境520に伝達される。ステップ572で、制御570に応答して、ゲームオブジェクトが操作される。新しいレンダリングされたゲーム画像574は、次いで、ゲーム・サービス・クライアント・アプリケーション514に伝達し戻されて、ここで、ステップ576で、新しいレンダリングされたゲーム画像574はクライアントディスプレイ512用にスケーリングされ得る。適切にスケーリングされると、レンダリングされた画像はクライアントディスプレイ512に伝達され(578)、ここで、レンダリングされた画像はユーザーに出現する。
[0074]次に図6を参照すると、本発明のある実施形態による、ゲームプレイをゲームサーバーからクライアントデバイスに移動する方法600が示される。ゲームサーバーは、ゲームを遠隔でプレイするのを可能にするゲームサービスに関連し得る。クライアントデバイスは、ゲーム機、パーソナルコンピュータ、タブレット、スマートフォン、または他の適切なデバイスであってよい。
[0075]ステップ610で、ビデオゲームは、遠隔ゲームセッション内でサーバーにおいて実行される。遠隔ゲームセッションの一環として、データ接続を介して、制御入力がクライアントデバイスから受信される。例えば、ジョイスティックなどのゲームコントローラーは、インターネット上で生じるデータ接続を介して制御入力をゲームサーバーに渡すクライアントデバイスに制御入力を送信することができる。ゲームセッションの一環として、制御入力に応答して、ゲームオブジェクトが操作されて、ビデオゲームのレンダリングされた画像がデータ接続を介してクライアントに伝達される。これにより、制御入力と組み合わされてゲームコードが実行されて、ビデオゲーム画像がレンダリングされて、クライアントに伝達される。
[0076]ステップ620で、ビデオゲームに関するゲーム移動トリガ事象がゲームサーバーにおいて検出される。いくつかのゲーム移動トリガが前に説明されている。一実施形態では、ゲーム移動トリガは、ビデオゲームに関するゲームブロックをクライアントデバイスにダウンロードするプロセスを完了する。ゲームブロックは、ゲームサーバーがビデオゲーム画像をレンダリングする必要なしに、現在プレイされているビデオゲームがクライアントデバイス上でプレイされるのを可能にし得る。別の実施形態では、ゲーム移動トリガ事象は、ユーザーがゲーム内の遷移ポイントに達することをやはり必要とする。遷移ポイントは、ゲームプレイを中断せずに、ビデオゲーム実行およびレンダリングがサーバーからクライアントに転送される、ゲーム内のあるポイントである。例えば、ユーザーは、ゲームメニュー内のあるレベルの終点にいる可能性があり、またはゲームを一時的に休止した可能性もある。したがって、トリガ事象は、複数の基準を満たすことを必要とする場合がある。例えば、第1の基準は現在のゲームブロックの完全なダウンロードであり得、第2の基準はゲームプレイが遷移ポイントに達したことであり得る。トリガ事象は、ダウンロードの進行とゲームプレイの進行とを監視することによって検出され得る。
[0077]ゲームブロックは、ダウンロードトリガ事象の検出に応答して、ゲームクライアントにダウンロードされ得る。ダウンロードトリガ事象は全ゲームの購入であり得る。別のダウンロードトリガ事象は、ダウンロードするために帯域幅を利用可能にするための、現在のユーザーのデータ接続内の使用の変更である。例えば、ユーザーのゲームプレイおよび他の活動は、ユーザーのデータ接続内で利用可能な帯域の100%近くを消費している可能性がある。例えば、クライアント上のストリーミング・ミュージック・アプリケーションを閉じることによって、使用を変更するとすぐに、ダウンロードのために帯域幅が利用可能にされ得る。利用可能になると、次のゲームブロックのダウンロードがトリガされ得る。
[0078]ステップ630で、ゲーム移動トリガ事象を検出することに応答して、ゲーム移動命令がクライアントデバイスに伝達される。ゲーム移動命令は、ゲームサーバーからゲームクライアントへのゲーム実行の切替えを開始するようにクライアントデバイスに要求する。
[0079]ゲームサーバーからゲームクライアントにゲーム実行を切り替えることは、様々なステップを必要とし得る。例えば、ゲームサーバーから受信されたゲーム画像は、移動プロセスの一環として終了されるゲーム・サービス・クライアント・デバイス内に表示され得る。所望のビデオゲームに関するゲームコードは、クライアントのネイティブゲーム実行環境内でアクティブメモリ内にロードされることが必要な場合がある。これは、ゲームをアクティブメモリ内にロードすることに加えて、1つまたは複数のアプリケーションを起動することを必要とし得る。クライアント上で実行するゲームインスタンス内の設定を調整するために、様々なゲーム選択または現在のゲームに関する設定を説明するプレイヤープロファイル情報が使用される。加えて、ゲームがサーバー上で進展したポイントにビデオゲームをロードするために、サーバーから受信されたゲーム保存情報が使用され得る。
[0080]これらの制御は、クライアント上のローカルゲーム環境内に経路指定されて、サーバーから離される。ユーザーが局所的に関与するためにゲームの準備が完全に整うと、ステップ640で、サーバー上でのビデオゲームの実行は終了される。サーバーによってレンダリングされたビデオゲーム画像が終了されると、クライアントゲーム環境によってレンダリングされたビデオゲーム画像がユーザーに示される。遷移の間、インターフェースが遷移されると同時に、待機スクリーンもしくはゲーム要約スクリーン、広告、または他の特徴がユーザーに短く示されることが可能である。ゲーム移動が完了すると、ゲームサーバーによって確認メッセージが受信され得る。このメッセージに応答して、ゲームサーバーは、ゲームインスタンスを分解して、別のプレイヤーによる使用のために、サーバーリソースを解放することができる。
[0081]いくつかのマルチプレイヤーゲームの場合、マルチプレイヤーゲームの一部である伝達は、サーバーベースのインスタンスからクライアントに再び経路指定され得る。伝達は、他のプレイヤーによって生成されたテキストまたは音声を含み得る。伝達は、クライアントが他のプレイヤーによって行われたゲーム変更をレンダリングするのを可能にするゲーム制御であってもよい。例えば、伝達は、他のゲームキャラクターがどこに移動したか、および仮想オブジェクトを移動させるなど、仮想ゲーム界を変更する、それらのキャラクターがとる他の動作を説明することが可能である。
[0082]一実施形態では、ゲームブロックは、ゲームセッションに関して使用される帯域幅を奪わずに、利用可能な帯域幅の大部分を使用するために計算された速度でクライアントデバイスに伝達される。ゲームセッションは、帯域幅を使用して、レンダリングされたビデオゲーム画像をクライアントにダウンロードして、制御入力をクライアントからサーバーにアップロードする。一実施形態では、ダウンロード速度は、利用可能な帯域幅と、ビデオゲーム経験の間に使用される最大帯域幅速度との間の差である。別の実施形態では、ビデオゲーム経験の間に使用される平均帯域幅は、データ接続上で利用可能な帯域幅とビデオゲーム経験に起因する使用との間の差を計算するために使用される。ゲームセッションによって使用される帯域幅は、異なる制御が使用されると変更し得る。例えば、ジョイスティック制御信号に音声コマンドが追加されるとき、帯域幅使用は上昇することになる。
[0083]次に図7を参照すると、本発明のある実施形態による、ゲームプレイをクライアントデバイスからゲームサーバーに移動する方法700を示す流れ図が示される。ステップ710で、ビデオゲームはゲームクライアントにおいて実行される。実行の一環として、制御入力がゲームクライアントに通信可能に結合されたローカル・ゲーム・コントローラーから受信される。例えば、ジョイスティックまたはデプスカメラは、ハード接続を介して、もしくはワイヤレス接続を介して、ゲームクライアントに接続され得る。いずれにしても、制御入力に応答して、ゲームオブジェクトが操作されて、ビデオゲームのレンダリングされた画像がクライアントによって生成されて、ゲームクライアントに関連するディスプレイデバイスを介してクライアントに表示される。ゲームクライアントに統合されるディスプレイデバイス、またはテレビジョンなど、別個の独立形デバイス。
[0084]したがって、ステップ710で、ビデオゲームはゲームクライアントにおいて実行される。これは、ビデオゲームコードがクライアントのゲーム実行環境内でアクティブメモリ内にロードされることと、ゲームコードを処理して、それに応じて、ビデオゲーム画像をレンダリングするために、グラフィックス・プロセッシング・ユニットおよび中央処理装置など、ローカル・クライアント・リソースを利用することとを必要とする場合がある。
[0085]ステップ720で、ビデオゲームに関するゲーム移動トリガ事象がゲームクライアントにおいて検出される。ゲーム移動トリガ事象の例は、それに関するコードが、現在、クライアントデバイスにダウンロードされていないレベルのビデオゲームをプレイするための要求を含む。別の例では、ゲーム移動トリガ事象は、クライアントデバイス上でプレイするためにビデオゲームの次のレベルが利用可能でないとき、ユーザーがビデオゲーム内のあるレベルの終了からしきい値期間に達することである。次のレベルはサーバー上でプレイするように設計され、クライアントにダウンロードするように設計されていないため、次のレベルは利用可能でない場合がある。別の実施形態では、次のレベルは、いくつかの理由で、クライアントにまだダウンロードされていないため、次のレベルは利用可能でない。例えば、ビデオゲームの次のレベルはまだ購入されていない場合がある。別の実施形態では、ビデオゲームの次の部分またはブロックは、ゲームプレイの間、またはそれ以外の理由でダウンロードされる機会を有さなかった。
[0086]ステップ730で、トリガ事象を検出することに応答して、クライアントからゲームサーバーへのゲーム実行の切替えを開始するためのゲーム移動命令がゲームサーバーに伝達される。このプロセスの一環として、クライアントデバイス、またはそのクライアントデバイスに関連するユーザーがゲームサービスに対する、かつゲームの複数のレベルに対するアクセスを有することを確認するために、サーバー認証機能が実行され得る。ユーザーがゲームの次のレベルに対するゲームサービスへのアクセスを有さない場合、ユーザーに、そのアクセスを購入する機会、あるいは認証情報を提供する機会が提供されてよい。例えば、ゲームの完全版を購入することによって、ユーザーがこの情報を提供すると、ゲーム移動プロセスは続いて、ユーザーがサーバー上でゲームプレイを継続するのを可能にする。一実施形態では、ゲームプレイがサーバー上で即時開始するのに対して、ビデオゲームの次のブロックは利用可能な帯域幅内でクライアントデバイスにダウンロードされる。そのダウンロードの終わりに、ゲームプレイはクライアントデバイスに移動して戻ることができる。
[0087]ステップ740で、クライアント上でのビデオゲームの実行が終了される。これは、ユーザーがゲームプレイをゲームサーバー上に転送する準備ができたことを示す確認メッセージに応答して行われることが可能である。ステップ750で、ローカル・ゲーム・コントローラーから受信された追加の制御入力がゲームサーバーに伝達される。一実施形態では、これらの制御入力は、ゲームサーバーにアップロードするために好都合なフォーマットに前処理される。一実施形態では、ゲームサーバーで実行するビデオゲームに関するコードは、ゲームクライアント上で実行する同じコードである。一実施形態では、これは、制御入力が、変更なしに、ゲームサーバーに直接的に伝達されることを可能にする。
[0088]ステップ760で、ビデオゲームのレンダリングされた画像がゲームサーバーから受信される。レンダリングされた画像は、クライアントデバイス上で実行するゲーム・サービス・クライアントによって表示され得る。レンダリングされた画像は、追加の制御入力に応答して行われたゲームに対する変更を反映する。この場合も、ゲームプレイが進行している間、ビデオゲームの次のブロックが受信されて、保存される。ビデオゲームの次のブロックのダウンロードが完了すると、ゲームの実行およびレンダリングは、クライアントデバイスに移動して戻ることが可能である。
[0089]次に図8を参照すると、本発明のある実施形態による、クライアントとゲームサーバーとの間でビデオゲームの実行を移動する方法800を示す流れ図が示される。ステップ810で、クライアント上に保存された部分的なゲームをプレイするためのユーザーからの要求が受信される。一実施形態では、ゲームサービスは、ゲームの部分版であり得るサンプルゲームまたはデモゲームをゲームクライアントにプリエンプティブにダウンロードすることができる。ユーザーに何のゲームがサンプリングされ得るかを知らせるためのインターフェースがクライアント上に示されることが可能である。一実施形態では、この部分は、第1のレベルなど、ビデオゲームの第1の部分である。この部分は、ゲーム機能への完全なアクセスを有してよく、または限定されたアクセスを有してもよい。
[0090]ステップ815で、部分的なゲームがクライアント上のゲーム実行環境内にロードされる。これは、ゲームをクライアントデバイスのアクティブメモリ内にロードするステップと、プレイヤープロファイル情報をゲームに追加するステップと、ゲームがクライアント上で実行されるために必要とされる他のタスクを実行するステップとを含み得る。
[0091]ステップ820で、クライアントにおいて、部分的ゲームが実行される。ゲームの一部として、制御入力が、音声コマンドを受信するためのマイクロフォン、ジェスチャを受信するためのデプスカメラ、ジョイスティック、キーボード、タッチスクリーン、または他のゲームコントローラーなど、ローカル・ゲーム・コントローラーから受信される。入力に応答して、ゲームオブジェクトが操作されて、ビデオゲームのレンダリングされた画像がクライアントによって生成される。ステップ825で、部分的ゲームの完全版を購入するための要求がクライアントにおいて受信される。ステップ830で、部分的ゲームの完全版に関する購入要求がゲームサーバーに伝達される。ステップ835で、ゲームの完全版に関する追加の実行可能ゲームコンテンツがゲームサーバーから受信される。ステップ840で、ゲームクライアントにおいて、部分的ゲームに関するゲーム移動トリガ事象が検出される。一実施形態では、トリガ事象は、ダウンロードの完了である。追加の実行可能ゲームコードは、ゲームプレイの進行中に、またはゲームプレイの進行と同時に受信され得る。
[0092]ステップ845で、トリガ事象を検出することに応答して、クライアントからゲームサーバーへのゲーム実行の切替えを開始するためのゲーム移動命令がゲームサーバーに伝達される。この実施形態では、ゲームトリガ事象は、プレイヤーが、その後、ゲームクライアント上でゲームコードが利用不可能になる部分的ゲームの終点またはあるレベルの終点に達することであり得る。
[0093]ステップ850で、クライアント上での部分的ゲームの実行が終了される。ステップ855で、ローカルゲーム制御から受信された追加の制御入力がゲームサーバーに伝達され、ステップ860で、ビデオゲームのレンダリングされた画像がゲームサーバーから受信される。レンダリングされた画像は、前に受信および伝達された追加の制御入力を反映する。
[0094]一実施形態では、複数の部分的ゲームがゲームサービスから受信される。部分的ゲームは、クライアントデバイス上でプレイされるゲームのタイプに基づいて選択され得る。
[0095]本発明の実施形態は、限定的ではなく、例示的であるとして説明されてきた。ある種の特徴およびサブコンビネーションは実用的なものであり、他の特徴およびサブコンビネーションを参照せずに用いられることが可能であることを理解されよう。これは請求項によって企図され、かつ請求項の範囲内である。

Claims (10)

  1. コンピューティングデバイスによって実行されるとき、ゲームプレイをゲームサーバーからクライアントに移動する方法を実行するコンピュータ実行可能命令を実施させる命令を記憶した、1つまたは複数のコンピュータ記憶媒体であって、前記方法が、
    ゲームサーバーにおいて、遠隔ゲームセッション内でビデオゲームを実行するステップであって、データ接続(data connection)を介して制御入力が前記クライアントから受信され、前記データ制御入力に応答して、ゲームオブジェクトが操作され、前記ビデオゲームのレンダリングされた画像が前記データ接続を介して前記クライアントに伝達される、実行するステップと、
    前記ゲームサーバーにおいて、前記ビデオゲームに関するゲーム移動(game-migration)トリガ事象を検出するステップと、
    検出する前記ステップに応答して、前記ゲームサーバーから前記クライアントへのゲーム実行の切替えを開始するためのゲーム移動命令(game-migration instruction)を前記クライアントに伝達するステップと、
    前記ゲームサーバー上での前記ビデオゲームの実行を終了するステップと
    を含む、コンピュータ記憶媒体。
  2. 前記実行するステップの進行と同時に、前記ビデオゲームに関する実行可能ゲームコードの第1のブロックを前記クライアントに伝達するステップをさらに含む、請求項1に記載の媒体。
  3. 前記第1のブロックが、前記ゲームサーバーによって現在実行されている前記ビデオゲームの一部をプレイするために実行可能である、請求項2に記載の媒体。
  4. コンピューティングデバイスによって実行されるとき、ゲームプレイをクライアントからゲームサーバーに移動する方法を実行するコンピュータ実行可能命令を実施させる命令を記憶した、1つまたは複数のコンピュータ記憶媒体であって、前記方法が、
    クライアントにおいて、ビデオゲームを実行するステップであって、制御入力がローカル・ゲーム・コントローラーから受信され、前記データ制御入力に応答して、ゲームオブジェクトが操作され、前記ビデオゲームのレンダリングされた画像が前記クライアントによって生成される、実行するステップと、
    前記クライアントにおいて、前記ビデオゲームに関するゲーム移動トリガ事象を検出するステップと、
    検出する前記ステップに応答して、前記クライアントから前記ゲームサーバーへのゲーム実行の切替えを開始するためのゲーム移動命令をゲームサーバーに伝達するステップと、
    前記クライアント上での前記ビデオゲームの実行を終了するステップと、
    ローカル・ゲーム・コントローラーから受信された追加の制御入力を前記ゲームサーバーに伝達するステップと、
    前記クライアントにおいて、前記ビデオゲームのレンダリングされた画像を前記ゲームサーバーから受信するステップと
    を含む、コンピュータ記憶媒体。
  5. 前記クライアントにおいて、前記レンダリングされた画像を、前記ゲームサーバーから受信するステップと同時に、前記ビデオゲームに関する実行可能ゲームコードのブロックを受信するステップをさらに含む、請求項4に記載の媒体。
  6. 前記ゲーム移動トリガ事象が、ユーザーが前記ビデオゲーム内で、あるレベルを終了することを含む、請求項4に記載の媒体。
  7. 前記データ制御入力よりも少ないデータを含むアップロードフォーマットに前記データ制御入力を前処理するステップをさらに含む、請求項4に記載の媒体。
  8. クライアントとゲームサーバーとの間でビデオゲームの実行を移動する方法であって、
    前記クライアント上に保存されたゲームの部分版(partial version)をプレイするための要求を受信するステップであって、前記部分版が、前記ゲームの完全版(full version)をプレイするために必要とされるすべてのゲームコンテンツに満たないゲームコンテンツを含む、受信するステップと、
    前記ゲームの前記部分版を前記クライアント上のゲーム実行環境内にロードするステップと、
    前記クライアントにおいて、前記ゲームの前記部分版を実行するステップであって、制御入力がローカル・ゲーム・コントローラーから受信され、前記データ制御入力に応答して、ゲームオブジェクトが操作され、前記ゲームの前記部分版のレンダリングされた画像が前記クライアントによって生成される、実行するステップと、
    前記ゲームの前記完全版を購入するための要求を受信するステップと、
    前記ゲームの前記完全版に関する購入要求を前記ゲームサーバーに伝達するステップと、
    前記ゲームの前記完全版に関する追加の実行可能ゲームコンテンツを前記ゲームサーバーから受信するステップと、
    前記クライアントにおいて、前記ゲームの前記部分版に関するゲーム移動トリガ事象を検出するステップと、
    検出する前記ステップに応答して、前記クライアントから前記ゲームサーバーへのゲーム実行の切替えを開始するためのゲーム移動命令をゲームサーバーに伝達するステップと、
    前記クライアント上での前記ゲームの前記部分版の実行を終了するステップと、
    ローカル・ゲーム・コントローラーから受信された追加の制御入力を前記ゲームサーバーに伝達するステップと、
    前記ゲームの前記部分版のレンダリングされた画像を前記ゲームサーバーから受信するステップとを含む方法。
  9. 前記ゲームの前記完全版に関する追加の実行可能ゲームコンテンツを前記ゲームサーバーから受信する前記ステップが、前記クライアント上で進行中の前記ゲームの前記部分版のゲームプレイと同時に生じる、請求項8に記載の方法。
  10. 前記クライアント上での前記ゲームの前記部分版の実行を終了する前記ステップが、中断を引き起こさない、ゲームプレイ内のあるポイントで生じる、請求項8に記載の方法。
JP2015528544A 2012-08-24 2013-08-16 ゲーム移動 Active JP6272864B6 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/593,843 2012-08-24
US13/593,843 US9381432B2 (en) 2012-08-24 2012-08-24 Game migration
PCT/US2013/055234 WO2014031460A1 (en) 2012-08-24 2013-08-16 Game migration

Publications (4)

Publication Number Publication Date
JP2015531629A JP2015531629A (ja) 2015-11-05
JP6272864B2 JP6272864B2 (ja) 2018-01-31
JP6272864B6 true JP6272864B6 (ja) 2018-02-28
JP2015531629A6 JP2015531629A6 (ja) 2018-06-07

Family

ID=49117938

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015528544A Active JP6272864B6 (ja) 2012-08-24 2013-08-16 ゲーム移動

Country Status (6)

Country Link
US (1) US9381432B2 (ja)
EP (1) EP2888018A1 (ja)
JP (1) JP6272864B6 (ja)
KR (1) KR101993953B1 (ja)
CN (1) CN104582806A (ja)
WO (1) WO2014031460A1 (ja)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10456686B2 (en) 2012-09-05 2019-10-29 Zynga Inc. Methods and systems for adaptive tuning of game events
US20140256420A1 (en) * 2013-03-11 2014-09-11 Microsoft Corporation Univied game preview
WO2015097726A1 (ja) * 2013-12-26 2015-07-02 株式会社スクウェア・エニックス 描画システム、制御方法、プログラム、及び記録媒体
JP5878938B2 (ja) * 2014-01-29 2016-03-08 株式会社ソニー・コンピュータエンタテインメント 配信システム、配信方法、配信プログラム
US9998562B1 (en) 2014-06-19 2018-06-12 Amazon Technologies, Inc. Service-oriented system optimization using partial service relocation
US9998328B1 (en) * 2014-06-19 2018-06-12 Amazon Technologies, Inc. Service-oriented system optimization using client device relocation
US10561944B2 (en) 2014-09-10 2020-02-18 Zynga Inc. Adjusting object adaptive modification or game level difficulty and physical gestures through level definition files
US9675889B2 (en) 2014-09-10 2017-06-13 Zynga Inc. Systems and methods for determining game level attributes based on player skill level prior to game play in the level
US9795879B2 (en) * 2014-12-31 2017-10-24 Sony Interactive Entertainment America Llc Game state save, transfer and resume for cloud gaming
US10315108B2 (en) * 2015-08-19 2019-06-11 Sony Interactive Entertainment America Llc Local application quick start with cloud transitioning
US9993729B2 (en) 2015-08-19 2018-06-12 Sony Interactive Entertainment America Llc User save data management in cloud gaming
KR20180096693A (ko) * 2015-12-21 2018-08-29 고릴라박스 게엠베하 아이. 지. 클라우드로부터 애플리케이션을 재생하기 위한 방법, 특정 텔레통신 시스템을 통해 애플리케이션(app)을 스트리밍하고 재생하기 위한 텔레통신 네트워크 및 애플리케이션(app)을 스트리밍하고 재생하기 위한 텔레통신 네트워크의 사용
CN109152955B (zh) * 2015-12-30 2022-09-23 索尼互动娱乐美国有限责任公司 云游戏中的用户保存数据管理方法
CN105727556B (zh) * 2016-01-29 2019-05-31 腾讯科技(深圳)有限公司 一种图像绘制的方法、相关设备及系统
JP6061115B1 (ja) * 2016-08-17 2017-01-18 株式会社セガゲームス 情報処理装置及びプログラム
KR101897704B1 (ko) * 2017-09-25 2018-10-29 넷마블 주식회사 게임 서비스 제공 장치 및 방법
US20190205108A1 (en) * 2017-12-29 2019-07-04 Cognant Llc System and method for providing software applications
US11383164B2 (en) 2018-02-23 2022-07-12 Rovi Guides, Inc. Systems and methods for creating a non-curated viewing perspective in a video game platform based on a curated viewing perspective
CN110989940B (zh) * 2019-12-17 2022-05-31 联想(北京)有限公司 迁移方法和迁移装置
CN111084985B (zh) * 2019-12-23 2023-05-26 上海米哈游天命科技有限公司 一种输入设备的参数调节方法、装置、终端设备及介质
JPWO2021235226A1 (ja) * 2020-05-22 2021-11-25
CN112402979B (zh) * 2020-12-02 2023-11-17 网易(杭州)网络有限公司 游戏数据处理方法、装置和电子设备
CN112619135B (zh) * 2020-12-22 2023-03-17 上海米哈游天命科技有限公司 一种游戏资源对象控制方法、装置、电子设备和存储介质
US20230097716A1 (en) * 2021-09-25 2023-03-30 FiveGen, LLC Authenticating Individuals Based on Game Decisions and Behaviors
US20240042313A1 (en) * 2022-08-02 2024-02-08 Sony Interactive Entertainment Inc. Multi-user cross-device synchronization of metaverse instantiation

Family Cites Families (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5838909A (en) 1996-05-23 1998-11-17 Sandcastle, Inc. Reducing latency when synchronizing access to a multi-user database over a network
US6758755B2 (en) 1996-11-14 2004-07-06 Arcade Planet, Inc. Prize redemption system for games executed over a wide area network
US6038599A (en) 1997-04-23 2000-03-14 Mpath Interactive, Inc. Latency server and matchmaker
US6356288B1 (en) 1997-12-22 2002-03-12 U.S. Philips Corporation Diversion agent uses cinematographic techniques to mask latency
US6415317B1 (en) 1999-10-01 2002-07-02 Joshua Michael Yelon Software system for reducing the appearance of latency in a multi-user environment
US6377257B1 (en) 1999-10-04 2002-04-23 International Business Machines Corporation Methods and apparatus for delivering 3D graphics in a networked environment
AU1593401A (en) 1999-11-16 2001-05-30 Sony Electronics Inc. System and method for leveraging data into a game platform
US6884172B1 (en) 2000-10-25 2005-04-26 Ngame Limited Electronic game system
US6475090B2 (en) 2001-03-29 2002-11-05 Koninklijke Philips Electronics N.V. Compensating for network latency in a multi-player game
JP2003103059A (ja) * 2001-09-28 2003-04-08 Io:Kk ゲームサーバ、ゲーム処理方法およびゲームプログラムを記録した記録媒体
US7392390B2 (en) 2001-12-12 2008-06-24 Valve Corporation Method and system for binding kerberos-style authenticators to single clients
US7277946B2 (en) 2002-06-28 2007-10-02 Microsoft Corporation Distributed session listing and content discovery
US7603406B2 (en) * 2002-07-25 2009-10-13 Sony Corporation System and method for wireless software download and remote transaction settlement
US20040030882A1 (en) 2002-08-08 2004-02-12 Forman George Henry Managed application pre-launching
US20040082388A1 (en) 2002-10-23 2004-04-29 Simsek Burc A. Apparatus and method for incorporation of external digital or analog information in computer and console gaming environments
US20090118019A1 (en) 2002-12-10 2009-05-07 Onlive, Inc. System for streaming databases serving real-time applications used through streaming interactive video
US9032465B2 (en) * 2002-12-10 2015-05-12 Ol2, Inc. Method for multicasting views of real-time streaming interactive video
US20040135805A1 (en) * 2003-01-10 2004-07-15 Gottsacker Neal F. Document composition system and method
US7076616B2 (en) 2003-03-24 2006-07-11 Sony Corporation Application pre-launch to reduce user interface latency
JP3632963B2 (ja) 2003-05-29 2005-03-30 コナミ株式会社 ネットワーク対戦型端末装置、方法及びプログラム
KR20060121207A (ko) 2003-12-19 2006-11-28 코닌클리케 필립스 일렉트로닉스 엔.브이. 인터랙티브 비디오
KR100475881B1 (ko) 2004-04-08 2005-03-14 엔에이치엔(주) 사용자별 행태에 따라 게임 채널을 랜덤하게 할당하는인터넷 게임 서비스 시스템 및 그 방법
CN101023658A (zh) 2004-08-31 2007-08-22 椎名一博 伴有通话的推送型信息通信系统
US20060063590A1 (en) * 2004-09-21 2006-03-23 Paul Abassi Mechanism to control game usage on user devices
US20060135258A1 (en) 2004-12-17 2006-06-22 Nokia Corporation System, network entity, client and method for facilitating fairness in a multiplayer game
US20080207322A1 (en) 2005-03-21 2008-08-28 Yosef Mizrahi Method, System and Computer-Readable Code For Providing a Computer Gaming Device
US8038535B2 (en) 2005-05-17 2011-10-18 Electronic Arts Inc. Collaborative online gaming system and method
US9566522B2 (en) 2005-05-27 2017-02-14 Nokia Technologies Oy Device, method, and computer program product for customizing game functionality using images
US20110157196A1 (en) 2005-08-16 2011-06-30 Exent Technologies, Ltd. Remote gaming features
US7889669B2 (en) 2005-09-26 2011-02-15 Alcatel Lucent Equalized network latency for multi-player gaming
US20070093297A1 (en) 2005-10-26 2007-04-26 Waterleaf Ltd. On-line, real-time game playing with search facility
US20070173325A1 (en) 2006-01-20 2007-07-26 Microsoft Corporation Join in-progress on-line game session
EP2044543A4 (en) 2006-04-13 2012-07-04 Yosef Mizrachi METHOD AND DEVICE FOR PROVIDING GAME SERVICES AND MOVING WITH VIDEO CONTENT
US8087017B1 (en) 2007-04-09 2011-12-27 Moka5, Inc. Trace-assisted prefetching of virtual machines in a distributed system
US8166131B2 (en) * 2007-09-21 2012-04-24 Sony Computer Entertainment Inc. Network delivery of entertainment software
US9142097B2 (en) 2007-10-26 2015-09-22 Igt Gaming system and method for providing play of local first game and remote second game
US8979647B2 (en) 2007-10-26 2015-03-17 Microsoft Technology Licensing, Llc Method of providing player status and ability to join games
JP4408929B2 (ja) 2007-11-22 2010-02-03 株式会社スクウェア・エニックス オンラインゲームシステム
US9211473B2 (en) * 2008-12-15 2015-12-15 Sony Computer Entertainment America Llc Program mode transition
US8613673B2 (en) 2008-12-15 2013-12-24 Sony Computer Entertainment America Llc Intelligent game loading
US20090215538A1 (en) 2008-02-22 2009-08-27 Samuel Jew Method for dynamically synchronizing computer network latency
US20090247295A1 (en) 2008-03-31 2009-10-01 Weldon Marcus K Network-Based Methods and Apparatus for Rendering Images to an End User
US8264493B2 (en) 2008-05-12 2012-09-11 Playcast Media Systems, Ltd. Method and system for optimized streaming game server
US8926435B2 (en) 2008-12-15 2015-01-06 Sony Computer Entertainment America Llc Dual-mode program execution
US8430755B2 (en) 2008-12-15 2013-04-30 Tetris Online, Inc. Interactive asynchronous game play architecture
US8444490B2 (en) 2008-12-15 2013-05-21 Tetris Online, Inc. Interactive asynchronous game offline play architecture
US20100199231A1 (en) 2009-01-30 2010-08-05 Microsoft Corporation Predictive determination
US8719336B2 (en) 2009-02-03 2014-05-06 Microsoft Corporation Method and apparatus for thwarting traffic analysis in online games
US8151199B2 (en) 2009-02-09 2012-04-03 AltEgo, LLC Computational delivery system for avatar and background game content
US8506402B2 (en) 2009-06-01 2013-08-13 Sony Computer Entertainment America Llc Game execution environments
US20110025689A1 (en) 2009-07-29 2011-02-03 Microsoft Corporation Auto-Generating A Visual Representation
EP2319597A1 (en) 2009-10-13 2011-05-11 Crytek GmbH A system of providing data for entertaining presentations to at least one audience
US8313377B2 (en) 2009-10-14 2012-11-20 Sony Computer Entertainment America Llc Playing browser based games with alternative controls and interfaces
US8325187B2 (en) 2009-10-22 2012-12-04 Samsung Electronics Co., Ltd. Method and device for real time 3D navigation in panoramic images and cylindrical spaces
US20110162004A1 (en) 2009-12-30 2011-06-30 Cevat Yerli Sensor device for a computer-controlled video entertainment system
US9486701B2 (en) 2009-12-30 2016-11-08 Crytek Gmbh Computer-controlled video entertainment system
US9400695B2 (en) 2010-02-26 2016-07-26 Microsoft Technology Licensing, Llc Low latency rendering of objects
EP2365470A1 (en) * 2010-03-09 2011-09-14 Crytek GmbH A multi-user computer-controlled advertisement presentation system and a method of providing user and advertisement related data
US20110250971A1 (en) 2010-04-07 2011-10-13 Van Os Marcel Methods and systems for providing a game center having customized notifications
US8366526B2 (en) 2010-04-16 2013-02-05 Disney Enterprises, Inc. Power play game mechanics
CN110336850B (zh) 2010-09-13 2022-08-09 索尼互动娱乐美国有限责任公司 附加组件管理
US8668582B1 (en) 2010-09-17 2014-03-11 Amazon Technologies, Inc. Accommodating latency in a server-based application
US20120079095A1 (en) 2010-09-24 2012-03-29 Amazon Technologies, Inc. Cloud-based device synchronization
GB201102128D0 (en) 2011-02-08 2011-03-23 Mustafa Bilal I Method and system for providing video game content
JP5076132B1 (ja) 2011-05-25 2012-11-21 株式会社スクウェア・エニックス・ホールディングス 描画制御装置、その制御方法、プログラム、記録媒体、描画サーバ、及び描画システム
US8823745B2 (en) 2011-06-02 2014-09-02 Yoostar Entertainment Group, Inc. Image processing based on depth information and color data of a scene
US8850075B2 (en) 2011-07-06 2014-09-30 Microsoft Corporation Predictive, multi-layer caching architectures
US8176437B1 (en) 2011-07-18 2012-05-08 Google Inc. Responsiveness for application launch
US9250966B2 (en) 2011-08-11 2016-02-02 Otoy, Inc. Crowd-sourced video rendering system
US9864632B2 (en) * 2011-08-17 2018-01-09 Open Invention Network, Llc System and method for transfer of an application state between devices
US20130225287A1 (en) 2012-02-28 2013-08-29 Zynga Inc. Synchronous and asynchronous game modes
US8661491B1 (en) * 2012-08-02 2014-02-25 Ericsson Television Inc. Methods using base content and additive content and related client devices and network server devices

Also Published As

Publication number Publication date
EP2888018A1 (en) 2015-07-01
JP2015531629A (ja) 2015-11-05
US20140057722A1 (en) 2014-02-27
CN104582806A (zh) 2015-04-29
KR20150044903A (ko) 2015-04-27
JP6272864B2 (ja) 2018-01-31
US9381432B2 (en) 2016-07-05
KR101993953B1 (ko) 2019-09-30
WO2014031460A1 (en) 2014-02-27

Similar Documents

Publication Publication Date Title
JP6272864B2 (ja) ゲーム移動
JP2015531629A6 (ja) ゲーム移動
US11752429B2 (en) Multi-user demo streaming service for cloud gaming
JP6841952B2 (ja) クラウドゲーミングに関するゲームステートセーブ、転送および再開
JP6972015B2 (ja) サーバによって実行される方法、クラウドゲームシステム、クライアントデバイス及びコンピュータ可読媒体
JP5987060B2 (ja) ゲームシステム、ゲーム装置、制御方法、プログラム及び記録媒体
JP6310073B2 (ja) 描画システム、制御方法、及び記憶媒体
US8961302B2 (en) Game browsing
CN109152955B (zh) 云游戏中的用户保存数据管理方法
US20140256420A1 (en) Univied game preview
US20230381675A1 (en) In-game location based game play companion application with triggered message from friend
JP5947876B2 (ja) 情報処理システム、情報処理方法、情報処理プログラム、情報処理プログラムを記録したコンピュータ読み取り可能な記録媒体、情報処理装置
US20130084985A1 (en) Gaming assistance system and method
JP2023515948A (ja) 予測されるゲーミングアクティビティと観客特性に基づく仮想インフルエンサの動作に関する方法
US20240042313A1 (en) Multi-user cross-device synchronization of metaverse instantiation

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160802

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170703

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170630

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170922

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20171201

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180104

R150 Certificate of patent or registration of utility model

Ref document number: 6272864

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R154 Certificate of patent or utility model (reissue)

Free format text: JAPANESE INTERMEDIATE CODE: R154

R150 Certificate of patent or registration of utility model

Ref document number: 6272864

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250