(58)【調査した分野】(Int.Cl.,DB名)
前記ロック解除されたサブセットは、前記ゲームスライスが作成された前記ゲームの完全版において存在するゲームのすべてのオブジェクトまたはすべてに満たないオブジェクトを含み、ゲームの前記オブジェクトは、前記ゲームスライス内で定義される前記ゲームの即時再生に関連性がある、請求項1に記載の方法。
前記複数のゲームスライスのそれぞれは、1人以上のユーザと共有可能であり、前記1人以上のユーザは、前記ゲームスライスのうちの特定のゲームスライスを再生することができ、
前記ゲームスライスのうちの特定の1つにおける前記再生に関する情報を記憶し、
共有するための前記ネットワークは、ソーシャルネットワークまたは前記クラウドゲームネットワークのうちの1つまたは両方である、請求項1に記載の方法。
前記複数のゲームの提示には、ソーシャルネットワーク、前記クラウドゲームネットワーク、またはこれらの組み合わせ内での人気のランキング順に前記ゲームを提示することが含まれれる、請求項1に記載の方法。
能動的選択アクティビティの前記検出は、前記一次ビデオセグメントのレンダリングを停止し、前記ゲームスライスと関連付けられる前記ゲームの前記ロック解除されたサブセットの再生のために、前記クラウドゲームネットワークで前記一次ビデオセグメントと関連付けられる前記ゲームスライスの前記実行可能なコードをロードする、請求項1に記載の方法。
前記一次ビデオセグメントの能動的選択アクティビティの前記検出は、前記クラウドゲームネットワークのユーザのために前記クラウドゲームネットワーク上で処理され、前記クラウドゲームネットワークのそれぞれのユーザは、前記ゲームの前記ロック解除されたサブセットを再生するために、前記ゲームスライスの前記実行可能なコードのインスタンスが提供され、それぞれのユーザのために、前記ロック解除されたサブセットの前記再生を記録して、前記二次ビデオセグメントを生成し、前記二次ビデオセグメントは、前記ゲームスライスの再生の前記ユーザ入力をキャプチャする、請求項1に記載の方法。
ゲームスライスの共有には、ユーザのソーシャルネットワークのユーザと前記ゲームスライスを共有することが含まれ、前記共有は、前記ソーシャルネットワークのフィードにおいて前記一次ビデオセグメントおよび前記二次ビデオセグメントのうちの1つまたは両方を表す静止画像のポスティングを可能にする、請求項1に記載の方法。
ソーシャルネットワーク上で共有されたゲームスライスの場合、能動的選択アクティビティは、前記ソーシャルネットワークを介して受信される、請求項1に記載の方法。
実行可能なコードのロードには、ゲームキャラクタ、グラフィカルオーバーレイ、ゲームオブジェクト、ゲームオブジェクト状態、前記ゲームの前記ゲームスライスの属性および現在の状態データ、またはこれらの1つ以上の組み合わせのうちの1つ以上を有するゲームコードをロードすることが含まれる、請求項1に記載の方法。
前記複数のゲームスライスの提示では、ソーシャルネットワーク、前記クラウドゲームネットワーク、またはこれらの組み合わせから受信される人気データに基づいて、それぞれのゲーム内での人気のランキング順に前記ゲームスライスを提示する、請求項14に記載の方法。
前記ゲームスライスのうちの前記選択されたゲームスライスは、ソーシャルネットワークまたは前記クラウドゲームネットワークの1人以上のユーザと共有可能であり、前記1人以上のユーザは、前記ゲームスライスのうちの前記選択されたゲームスライスを再生することができ、前記ゲームスライスのうちの前記選択されたゲームスライスの前記再生に関する情報は、他のユーザと共有するために記憶される、請求項14に記載の方法。
能動的選択アクティビティの前記検出は、前記一次ビデオセグメントのレンダリングを停止し、前記ゲームスライス内で定義される前記ゲームの前記ロック解除されたサブセットの再生のために、前記一次ビデオセグメントと関連付けられる前記ゲームスライスのうちの前記選択されたゲームスライスの前記実行可能なコードをロードする、請求項14に記載の方法。
【発明の概要】
【発明が解決しようとする課題】
【0004】
拡大する計算能力への対応に加えて、ゲーム開発者は、ユーザとゲーム機との間の対話を増加させるオンラインゲームも開発している。対話型オンラインゲームは、ユーザに、インターネット上で他のユーザを相手に、または他のユーザとともに対話形式でプレイし、かつこのような対話を捕捉あるいはキャプチャする能力を提供する。加えて、クラウドベースのコンピューティングの傾向が高まるにつれ、ゲーム開発者は、既存のレガシーゲームをプレイするための新しい方法、及び、クラウドベースのコンピューティングシステムにおける計算能力及び資源の向上を利用することによる新しいゲームを開発するための新しい方法を開発している。クラウドベースのコンピューティングシステムは、ゲームアプリケーションを実行するリモート処理サーバを含んでもよく、ユーザからの入力を受信し、かつディスプレイ上にビデオをレンダリングするように構成され得るローカルクライアントと通信する。
【0005】
本発明の実施形態は、この状況においてなされたものである。
【課題を解決するための手段】
【0006】
本発明の一実施形態は、クラウドゲームネットワーク上でのゲームへのアクセスを提供し、かつより大きいゲームまたは完全なゲームタイトルから作製または定義されるゲームスライスを処理するための方法およびシステムを提供する。本発明が、プロセス、装置、システム、デバイス、または方法等の多くの手段で、コンピュータ可読媒体上に実装され得ることが理解されるはずである。本発明のいくつかの発明の実施形態が、以下に記載される。
【0007】
一実施形態では、クラウドゲームネットワーク上でゲームのゲームスライスを処理するための方法が提供される。本方法は、ディスプレイ上に複数のゲームを提示することを含む。それぞれのゲームは、初期画像によって識別され、複数のゲームスライスと関連付けられる。それぞれのゲームスライスは、ゲームの全体に満たないゲームの予め選択された部分である。それぞれのゲームスライスは、ゲームのうちの選択されたゲームからユーザ定義される。受動的選択アクティビティが、複数のゲームのうちの1つの初期画像に近似して検出される。受動的選択アクティビティは、ゲームのゲームスライスのうちの1つに対する一次ビデオセグメントのレンダリングを引き起こす。一次ビデオセグメントのレンダリング中に、能動的選択アクティビティが一次ビデオセグメントに対して検出される。能動的選択アクティビティは、ゲームスライスの実行可能なコードをクラウドゲームネットワークでロードさせる。ゲームスライスのロードされた実行可能なコードは、ゲームスライスと関連付けられるゲームのロック解除されたサブセットの即時再生を可能にするようにレンダリングされる。ゲームスライスのうちの選択されたゲームスライスは、ネットワーク上でユーザと共有可能である。ゲームスライス内のゲームのロック解除されたサブセットの再生は記録される。ゲームのロック解除されたサブセットの記録された再生のそれぞれは、二次ビデオセグメントを定義する。二次ビデオセグメントは、ネットワーク上で他のユーザと共有可能である。
【0008】
一実施形態では、ロック解除されたサブセットは、ゲームスライスが作成されたゲームの完全版において存在するゲームのすべてのオブジェクトまたはすべてに満たないオブジェクトを含む。オブジェクトは、ゲームスライス内で定義されるゲームの即時再生に関連性がある。
【0009】
一実施形態では、即時再生は、受動的および能動的選択アクティビティを提供し、かつデバイスの種類と関連付けられる所定の設定パラメータに関する情報を提供するために使用されるデバイスの種類を検出することによって可能にされる。情報は、ゲームスライス内で定義されるゲームの即時再生の制御を定義するために使用される。
【0010】
一実施形態では、複数のゲームスライスのそれぞれは、1人以上のユーザと共有可能であり、この共有は、1人以上のユーザがゲームスライスのうちの特定のゲームスライスを再生することを可能にする。ゲームスライスの再生に関する情報は共有するために記憶される。共有するためのネットワークは、ソーシャルネットワークまたはクラウドゲームネットワークのうちの1つまたは両方である。
【0011】
一実施形態では、記憶された情報は、1つ以上のゲームスライスを再生する提案あるいはサジェスチョンを生成するために分析される。このサジェスチョンは、特定のユーザに1つ以上のゲームスライスのソーシャル関連性にある程度基づいて定義される。1つ以上のゲームスライスのサジェスチョンは、ユーザ選択のためのディスプレイで提示される。
【0012】
一実施形態では、複数のゲームは、ソーシャルネットワーク、クラウドゲームネットワーク、またはこれらの組み合わせ内での人気のランキング順に提示される。
【0013】
一実施形態では、初期画像に近似して検出される受動的選択アクティビティは、クラウドゲームネットワークのユーザのためにクラウドゲームネットワーク上で処理される。クラウドゲームネットワークのそれぞれのユーザは、受動的選択アクティビティの検出に応答して一次ビデオセグメントのレンダリングが提供される。
【0014】
一実施形態では、能動的選択アクティビティの検出は、一次ビデオセグメントのレンダリングを停止し、ゲームスライスと関連付けられるゲームのロック解除されたサブセットの再生のために、クラウドゲームネットワークで一次ビデオセグメントと関連付けられるゲームスライスの実行可能なコードをロードする。
【0015】
一実施形態では、一次ビデオセグメントの能動的選択アクティビティの検出は、クラウドゲームネットワークのユーザのためにクラウドゲームネットワーク上で処理される。クラウドゲームネットワークのそれぞれのユーザは、ゲームのロック解除されたサブセットを再生するために、ゲームスライスの実行可能なコードのインスタンスが提供される。ゲームのロック解除されたサブセットの再生は、それぞれのユーザのために記録されて、二次ビデオセグメントを生成する。二次ビデオセグメントは、ゲームスライスの再生のユーザ入力をキャプチャする。
【0016】
一実施形態では、ゲームスライスの共有は、ユーザのソーシャルネットワークの他のユーザとゲームスライスを共有することを含む。共有は、ソーシャルネットワークのフィードにおいて一次ビデオセグメントおよび二次ビデオセグメントのうちの1つまたは両方を表す静止画像の投稿、いわゆるポスティング、を可能にする。
【0017】
一実施形態では、ソーシャルネットワーク上で共有されたゲームスライスの場合、能動的選択アクティビティは、ソーシャルネットワークを介して受信される。
【0018】
一実施形態では、実行可能なコードをロードすることは、ゲームキャラクタ、グラフィカルオーバーレイ、ゲームオブジェクト、ゲームオブジェクト状態、ゲームのゲームスライスの属性および現在の状態データ、またはこれらの1つ以上の組み合わせのうちの1つ以上を有するゲームコードをロードすることを含む。
【0019】
別の実施形態では、クラウドゲームネットワーク上でゲームスライスを処理するための方法が提供される。本方法は、ディスプレイ上に複数のゲームスライスを提示することを含む。それぞれのゲームスライスは、複数のゲームのうちの1つと関連付けられる。それぞれのゲームと関連付けられたゲームスライスは、ともにグループ化される。それぞれのゲームスライスは、初期画像によって識別される。それぞれのゲームスライスは、ゲーム全体に満たないゲームの予め選択された部分である。それぞれのゲームスライスは、ゲームのうちの選択されたゲームからユーザ定義される。受動的選択アクティビティが、複数のゲームスライスのうちの選択されたゲームスライスの初期画像に近似して検出される。受動的選択アクティビティは、選択されたゲームスライスの一次ビデオセグメントのレンダリングを引き起こす。一次ビデオセグメントのレンダリング中に、能動的選択アクティビティが、一次ビデオセグメントに対して検出される。能動的選択アクティビティは、クラウドゲームネットワークでゲームスライスの実行可能なコードのローディングを引き起こす。ゲームスライスの実行可能なコードは、ゲームスライスと関連付けられるゲームのロック解除されたサブセットの即時再生を可能にするようにレンダリングされる。実行可能なコードのレンダリングは、ネットワーク上でユーザとゲームスライスのうちの選択されたゲームスライスを共有することを可能にする。ゲームのロック解除されたサブセットの1つ以上の再生が記録される。ロック解除されたサブセットのそれぞれの記録された再生は、二次ビデオセグメントを定義する。二次ビデオセグメントは、ネットワーク上で他のユーザと共有される。
【0020】
一実施形態では、複数のゲームスライスの提示は、ソーシャルネットワーク、クラウドゲームネットワーク、またはこれらの組み合わせから受信される人気データに基づいて、それぞれのデータ内の人気のランキング順にゲームを提示することを含む。
【0021】
一実施形態では、ゲームスライスのうちの選択されたゲームスライスの初期画像に近似した受動的選択アクティビティの検出は、クラウドゲームネットワークのユーザのためにクラウドゲームネットワーク上で処理される。クラウドゲームネットワークのそれぞれのユーザは、受動的選択アクティビティの検出に応答して一次ビデオセグメントのレンダリングが提供される。ユーザによる検出された受動的選択アクティビティは、他のユーザへの選択されたゲームスライスの関連性を識別するために使用される。他のユーザは、ソーシャルネットワークのソーシャルグリッドにアクセスすることによってある程度識別される。
【0022】
一実施形態では、即時再生は、クラウドゲームネットワークで受動的および能動的選択アクティビティを提供し、かつデバイスの種類と関連付けられる所定の設定パラメータに関する情報を提供するために使用されるデバイスの種類を検出することによって可能にされる。情報は、ゲームスライス内で定義されるゲームの即時再生の制御を定義するために使用される。
【0023】
一実施形態では、ゲームスライスのうちの選択されたゲームスライスは、ソーシャルネットワークまたはクラウドゲームネットワークの1人以上のユーザと共有可能である。1人以上のユーザは、ゲームスライスの選択されたゲームスライスを再生することができる。ゲームスライスの選択されたゲームスライスの再生に関する情報は、他のユーザと共有するために記憶される。
【0024】
一実施形態では、ゲームスライスのうちの選択されたゲームスライスの共有は、ソーシャルネットワークのフィードにおいて一次ビデオセグメントおよび二次ビデオセグメントのうちの1つまたは両方を表す静止画像のポスティングを可能にする。
【0025】
一実施形態では、能動的選択アクティビティの検出は、一次ビデオセグメントのレンダリングを停止し、ゲームスライスのロック解除されたサブセットの再生のために、一次ビデオセグメントと関連付けられるゲームスライスのうちの選択されたゲームスライスの実行可能なコードをロードする。
【0026】
さらに別の実施形態では、クラウドゲームネットワーク上でゲームスライスを処理するためのシステムが開示される。本システムは、ゲームプロセッサモジュールが実行しているゲームサーバを含む。ゲームサーバは、ホスト上で動作する仮想マシンであってもよく、ホストの物理的なハードウェアを用いて、ゲームプロセッサモジュールを実行する。ゲームプロセッサモジュールは、グラフィカルユーザインターフェース(GUI)において複数のゲームおよび複数のゲームのそれぞれと関連付けられる1つ以上のゲームスライスを識別して、レンダリングのためにクライアントデバイスのディスプレイに戻す処理ロジックを含む。それぞれのゲームは、初期画像によって識別され、それぞれのゲームスライスは、ゲームの全体に満たないゲームの予め選択された部分である。ゲームプロセッサモジュールの処理ロジックはまた、レンダリングするために戻される複数のゲームのそれぞれ内で、ゲームのそれぞれおよびゲームスライスのそれぞれの実行可能なコードおよびゲーム構成要素を識別して、マッピングするように構成される。ゲームプロセッサモジュールの処理ロジックは、複数のゲームのうちの選択されたゲームの初期画像に近似したユーザアクティビティを検出し、ユーザアクティビティの種類を判定し、かつレンダリングするためにゲームのゲームスライスのうちの1つに対する一次ビデオセグメントを戻すか、または検出されたユーザアクティビティに応答してゲームのロック解除されたサブセットの再生を可能にするように、クラウドゲームネットワークでゲームスライスの実行可能なコードをロードするかのいずれかをするようにさらに構成される。ゲームプロセッサモジュールの処理ロジックは、ゲームスライスに対して識別される実行可能なコードをレンダリングして、ゲームのロック解除されたサブセットを再生し、ゲームのロック解除されたサブセットの1つ以上の再生を記録するように構成される。ゲームプロセッサモジュールの処理ロジックは、ゲームのロック解除されたサブセットの記録された再生を使用して、二次ビデオセグメントの1つ以上を生成するように構成される。二次ビデオセグメントは、クラウドゲームネットワークの他のユーザと共有するためにクラウドゲームネットワーク上にポスティングされる。
【0027】
一実施形態では、ゲームプロセッサモジュールは、所定の順にゲームおよびそれぞれのゲーム内のゲームスライスを組織化するようにさらに構成される。
【0028】
一実施形態では、ゲームプロセッサモジュールは、クラウドゲームネットワークで受動的および能動的選択アクティビティを提供し、かつディスプレイ上にレンダリングするためにデバイスの種類と関連付けられる所定の設定パラメータに関する情報を提供するために使用されるデバイスの種類を検出するようにさらに構成される。情報は、ゲームスライス内で定義されるゲームの即時再生の制御を定義するために使用される。
【0029】
一実施形態では、ゲームプロセッサモジュールは、ゲームスライスのうちの選択されたゲームスライスに対する複数の再生のゲームシーケンスを分析し、分析に基づいてゲームスライスのうちの選択されたゲームスライスに対する人工知能グラフィックオーバーレイを生成し、かつゲームスライスでレンダリングするためにAIグラフィックオーバーレイを戻すようにさらに構成される。生成されたAIグラフィックオーバーレイは受動的オーバーレイである。
【0030】
様々な実施形態は、即時再生のためにクラウドゲームネットワーク上にゲームスライスの実行可能なコードをロードし、かつクラウドゲームネットワークまたはソーシャルネットワークなどのネットワークのユーザがゲームスライスを再生することを可能にする制御に関する情報を提供することによって、フリクションレスな手法(Frictionless Manner:FM)でクラウド上の他のユーザとゲームスライスを共有するための手法を定義する。ゲームスライスは、ゲームスライスに対して予め定義される設定パラメータを受け継ぎ、かつ一次ビデオセグメント内に定義されるゲームの一部分のサンプリングを提供する。一実施形態では、ユーザは、ゲームスライスを再生またはサンプリングするために、ゲームにサインアップし、ゲームを購入し、ゲームパラメータを設定するように要求されない。さらに、ゲームスライスは、ニュースフィードまたはソーシャルストリームにおいてゲームスライスへのリンクをポスティングすることによって、ソーシャルネットワークの他のユーザと共有されてもよい。ユーザが再生のためにゲームスライスにアクセスするとき、ゲームスライスの実行可能なコードは、即時再生を可能にするためにクラウドゲームネットワーク上でロードされ、実行され、ゲームスライス再生のレンダリングがクライアントデバイスのディスプレイ上に提供される。あるいは、ゲームスライスは、ユーザがソーシャルネットワークのニュースフィードまたはストリーム内のゲームに直接アクセスし、再生することを可能にするように、ソーシャルネットワークのニュースフィードまたはストリームで提供される。1つ以上のゲームプレイ(ゲーム再生)は、二次ビデオセグメントを生成するために記録され、ネットワークの他のユーザと共有するためにクラウドゲームネットワークにポスティングされ、それによってクラウドゲームネットワーク上に記憶され、ロードされ、かつ実行されるゲームのゲームスライスへの無摩擦アクセスを提供する。
【0031】
本発明の他の態様が、本発明の原理の例示によって示す添付の図面と併せ読むことによって、以下の詳細な説明から明らかになるであろう。
【発明を実施するための形態】
【0034】
以下の実施形態は、ゲームネットワーク上でゲームスライスを処理するための方法およびシステムを説明する。しかしながら、本発明は、これらの特定の詳細のいくつかまたはすべてなしで実践されてもよいことが当業者に明らかであろう。他の例では、周知のプロセス操作が本発明を不必要に分かりにくくしないために詳細に記載されなかった。
【0035】
一般に、様々な実施形態は、クラウドゲームネットワーク上でゲームのゲームスライスを処理し、かつ無摩擦様式で即時再生のために他のユーザとゲームスライスを共有する手法を説明する。それぞれのゲームスライスは、ゲームの全体に満たないゲームの一部分である。いくつかの実施形態では、ゲームスライスは、ゲームプレイ中にユーザによって定義される。1つ以上のゲームにアクセスするためのユーザ要求に応答して、特定のゲームまたは複数のゲームに対する複数のゲームスライスが識別され、クライアントデバイスのディスプレイ上にレンダリングのためにグラフィカルユーザインターフェース(GUI)形式で戻される。レンダリングのために戻された情報はまた、複数のゲームのそれぞれに対する初期画像を含む。GUIで近似したユーザアクティビティが監視される。受動的選択アクティビティがゲームのうちの選択されたゲームの初期画像に近似して検出されるとき、ゲームのゲームスライスのうちの1つに対する一次ビデオセグメントがレンダリングされる。
【0036】
一次ビデオセグメントのレンダリング中に、能動的選択アクティビティがゲームの初期画像に近似またはゲームのゲームスライスの一次ビデオセグメントのいずれかで検出される場合、ゲームスライスの実行可能なコードがクラウドゲームネットワークでロードされる。ロードされた実行可能なコードは、ゲームスライス内で定義されるゲームのロック解除されたサブセットの1つ以上の再生を可能にするようにレンダリングされる。ゲームのロック解除されたサブセットの1つ以上の再生は、1つ以上の二次ビデオセグメントを定義するために記録される。二次ビデオセグメントは、クラウドゲームネットワークにポスティングされ、クラウドゲームネットワークまたはユーザの1つ以上のソーシャルネットワークの他のユーザとゲームスライスに対する二次ビデオセグメントを共有することを可能にする。
【0037】
様々な実施形態の上記の一般的な理解によって、実施形態の例示の詳細が様々な図面を参照しながらこれより記載される。
図1は、本発明の一実施形態に従うクラウドゲームネットワーク上でゲームスライスを処理するために使用されるシステムを示す。いくつかの実施形態では、クラウドゲームネットワークは、ホストマシン(または単純にホスト)のハイパーバイザ上で動作する複数の仮想マシン(VM)を含んでもよく、1つ以上の仮想マシンが、ホストのハイパーバイザに利用可能なハードウェアリソースを利用するゲームプロセッサモジュールを実行するように構成される。図示されるように、システム10は、インターネットなどのネットワーク200上でゲームへのアクセスを要求し、かつディスプレイデバイス12上にゲームサーバ300によって戻されるゲーム/ゲームスライスをレンダリングするために、複数の対話型ビデオゲームおよび関連したゲームスライスならびにゲームクライアント100へのアクセスを提供するゲームプロセッサモジュールを実行するゲームサーバ300を含む。ゲームクライアント100は、少なくともメモリと、ネットワーク200上でゲームサーバ300に接続することができるプロセッサモジュールとを有し、かつビデオゲーム/ゲームスライスのレンダリングされた部分を実行するゲームサーバと対話するための任意の種類のコンピューティングデバイスであることに留意されるべきである。ゲームクライアントデバイスのいくつかの例としては、パーソナルコンピュータ(PC)、ホームシアタPC、汎用コンピュータ、モバイルコンピューティングデバイス、またはビデオゲームを実行するゲームサーバと対話し得る任意の他の種類のコンピューティングデバイスが挙げられる。ゲームサーバは、ホスト上で実行し、かつネットワーク200を介してリモートからアクセスされる仮想マシンを含むクラウドにおいて利用可能な任意の種類のサーバコンピューティングデバイスであってもよい。
【0038】
ゲームクライアント(または単純に「クライアント」)は、クライアント100のディスプレイ上に提供されるユーザインターフェース110を介してゲームへのアクセスを要求する。いくつかの実施形態では、ユーザインターフェース110は、ゲームネットワークからゲームへのアクセスを提供するために要求に対応する前に、ユーザを有効にするユーザ認証モジュールを含んでもよい。要求に応答して、ゲームサーバは、複数のビデオゲームおよび関連したゲームスライスを識別し、複数のビデオゲームおよび関連したゲームスライスの識別されたセットをグラフィカルユーザインターフェース(GUI)に記入し、ディスプレイ12でレンダリングするためにユーザインターフェースをクライアントに戻す。それぞれのビデオゲームは、ビデオゲームを表すそれと関連付けられる初期画像を含んでもよい。GUIには、識別されたビデオゲームおよび関連付けられた初期画像が記入され、GUIは、レンダリングするためにクライアントデバイスに戻される。それぞれのゲームは、複数のゲームスライスと関連付けられる。いくつかの実施形態では、ゲームスライスは、ユーザによって定義される。
【0039】
いくつかの実施形態では、それぞれのユーザ定義されたゲームスライスが、トリガイベント、行われるべきタスク、ステップもしくは移動のシーケンス、または扱われるべき、もしくは克服する課題を含んでもよい。一実施形態では、定義されるそれぞれのゲームスライスは、ゲームの全体に満たない関連したゲームの予め選択された部分を表す。一実施形態では、複数のゲームのそれぞれの複数のゲームスライスのそれぞれが、一次ビデオセグメントおよび他のユーザによって共有される複数の二次ビデオセグメントと関連付けられてもよい。別の実施形態では、複数のゲームスライスのうちのいくつかは、一次ビデオセグメントと関連付けられてもよいが、それと関連付けられる任意の二次ビデオセグメントを有しなくてもよい。一実施形態では、クライアントからの要求に応答して、ビデオゲームおよびゲームスライスで生成されるGUIは、どのゲームスライスがそれと関連付けられる1つ以上の二次ビデオセグメントを有するか、かつどのゲームスライスがそれと関連付けられる二次ビデオセグメントを有しないかを識別する標識を提供してもよい。ビデオゲームおよびゲームスライスの生成されたGUIは、クライアントデバイス100のディスプレイ12でレンダリングされる。ディスプレイ12は、ビデオゲーム/ゲームスライスを識別するGUIインターフェースを視覚的にレンダリングすることができるディスプレイの種類のうちのいずれかであってもよく、LCD、プラズマ、およびDLP技術などの様々な種類のディスプレイ技術のうちのいずれかを利用するモニタまたはテレビなどのデバイスを含む。具体的に示されないが、ディスプレイ12はまた、ディスプレイスクリーン、壁、または視聴するための他の平面上にGUI画像を投影する投影器を利用してもよい。
【0040】
GUIにおけるユーザアクティビティが監視され、GUIで検出されるアクティビティの種類を判定するために分析される。受動的選択アクティビティが複数のゲームのうちの1つの画像に近似して検出されるとき、ゲームのゲームスライスの一次ビデオセグメントが、クライアントデバイスのディスプレイ12でレンダリングするために識別される。一実施形態では、ゲーム内のすべてのゲームスライスまたはゲーム内のゲームスライスのいくつかがそれと関連付けられる一次ビデオセグメントを有するとき、一次ビデオセグメントがレンダリングするために選択されるゲームスライスは、時間ベースの人気ベースである選択基準に基づいてもよい。例えば、関連した一次ビデオセグメントをレンダリングするために選択されるゲームスライスは、クラウドゲームネットワークまたはソーシャルネットワークにおいて人気のゲームスライスであってもよい。あるいは、一次ビデオセグメントをレンダリングするために選択されるゲームスライスは、新たに作成されたゲームスライス、共有用に最近ポスティングされたゲームスライス、ユーザの友人によってポスティングされたゲームスライス、ゲーム内の第1のゲームスライス、ゲーム内のごく最近実行されたゲームスライスなどであってもよい。一次ビデオセグメントがレンダリングするために選択されるゲームスライスの選択基準は、ゲームサーバで定義される選択アルゴリズムで予め定義され、かつクライアントデバイスに戻されるGUIの生成中に使用されてもよい。
【0041】
いくつかの実施形態では、一次ビデオセグメントは、現在の受動的選択アクティビティを提供するユーザによって以前に生成されたゲームスライスの記録された再生であってもよく、あるいはゲームネットワークまたはソーシャルネットワーク内で別のユーザによって生成され、ゲームサーバにポスティングされ、かつ共有するために利用されてもよい。
【0042】
一実施形態では、一次ビデオセグメントのレンダリング中に、ゲームの初期画像、またはディスプレイで現在レンダリングするゲームスライスの一次ビデオセグメントのさらなるユーザアクティビティが監視される。能動的選択アクティビティがゲームの初期画像または一次ビデオセグメントで検出されるとき、一次ビデオセグメントと関連付けられるゲームスライスの実行可能なコードが識別され、実行可能なコードのインスタンスがゲームサーバ上でロードされる。一実施形態では、能動的選択アクティビティは、接触、声、ジェスチャ、1つ以上のタップ、1つ以上のクリック、ゲームコントローラを介する入力などの形態で入力として提供される。上記の入力リストは、例示であり、限定的と見なされるべきではない。クライアントデバイスを介して提供され得る追加の入力の形態が用いられてもよい。
【0043】
一実施形態では、ゲームのゲームスライスの人気に応じて、実行可能なコードのインスタンスが、クラウドゲームネットワークですでにロードされていてもよい。この実施形態では、能動的選択アクティビティに応答して、ゲームスライスのインスタンスは、即時再生のためにレンダリングされる。一実施形態では、即時再生は、ゲームスライスを再生するために関連するゲームオブジェクトを含む実行可能なコードをロードすることによって可能にされる。本出願で使用されるとき、即時再生は、元のゲームプレイから受け継がれるか、またはゲームに対して予め定義される設定パラメータを使用して、ゲームスライス内で定義されるゲームを再生する能力として定義される。一実施形態では、即時再生は、変数パラメータを定義するための設定プロセスを必要としなくてもよいが、ゲームに対して定義される所定の設定パラメータを使用し、それによって従来のゲームプレイと通常関連付けられるレイテンシのいくつかに対処する。別の実施形態では、能動的選択アクティビティに応答して、実行可能なコードのインスタンスは、即時再生のためにロードされ、レンダリングされる。この実施形態では、実行可能なコードのインスタンスのロード中にレイテンシが認められる。一実施形態では、実行可能なコードは、クラウドゲームネットワークの仮想マシン上にロードされ、レンダリングされる。一実施形態では、クラウドゲームネットワークまたはユーザのソーシャルネットワークのゲームスライスの人気に応じて、実行可能なコードのインスタンスは、適切な帯域幅を有する仮想マシン上にロードされ、レンダリングされ、クライアントデバイスの即時再生のためにアクセスを提供する。例えば、ゲームスライスがアクティビティを開始するユーザのソーシャルネットワークのソーシャルグリッド内のユーザ間、またはクラウドゲームネットワークのユーザ間で非常に人気が高いとき、ゲームスライスの即時再生のためにより低いレイテンシおよびより速いアクセスを提供するように、高帯域幅を有する仮想マシンが、クラウドゲームネットワークの実行可能なコードのインスタンスをロードおよびレンダリングするために選択される。
【0044】
あるいは、それほど人気のないゲームスライスの実行可能なコードは、より低い帯域幅を有する仮想マシン上でロードおよびレンダリングするように割り当てられてもよい。したがって、クラウドゲームネットワークのVMは、ゲームプレイ体験が充実したものとなるように、ユーザがゲームスライスを再生することを可能にするべく、ネットワーク/レイテンシ/リソース要件に対処するために選択される。さらに、VMの割り当ては、ゲームスライスの変化する需要に基づいて最適化される。したがって、二次ビデオセグメントを有しない新たに生成されたゲームスライスが即時再生のためにアクセスされるとき、ゲームスライスの実行可能なコードは、より低い帯域幅を有するVM上でロードされ、レンダリングされる。しかしながら、時間とともに、このゲームスライスの人気が高まると、ゲームスライスの実行可能なコードのインスタンスがより大きな帯域幅を有するVM上でロードされ、レンダリングされてもよい。このロードされた実行可能なコードは、即時ゲームプレイのためにユーザに対して利用される。
【0045】
一実施形態では、実行可能なコードは、少なくとも最小限の機能性を提供して、ゲームスライスによって定義されるゲームのロック解除されたサブセットを再生する。したがって、実行可能なコードは、ゲームスライスが作成されたゲームの完全版において存在するゲームのすべてのオブジェクトまたはすべてに満たないオブジェクトを含んでもよい。これらのオブジェクトは、ゲームスライス内で定義されるゲームの即時再生に関連性がある。例えば、実行可能なコードのローディングとしては、ゲームコード、ゲームキャラクタ、グラフィックオーバーレイ、ゲームオブジェクト、オブジェクト状態、オブジェクト属性、現在の状態、およびゲームスライスを再生することを可能にするゲームスライスの他のゲーム属性のローディングが挙げられる。一実施形態では、ゲームスライスは、ゲームスライスがユーザによって作成されたときにゲームの設定パラメータを受け継いでもよい。この実施形態では、ゲームオブジェクト、グラフィックオーバーレイなどは、ユーザがゲームを再生し、かつゲームスライスを定義したときにユーザによって定義されるゲームの設定属性を受け継いでもよい。別の実施形態では、ゲームスライスのためのゲームオブジェクトおよびオーバーレイは、所定の設定パラメータのセットを受け継ぐ。したがって、ゲームスライスの実行可能なコードは、ゲームにサインアップする退屈なプロセスを体験すること、ゲームを購入すること、および/またはゲームスライス内で定義されるゲームを再生する前にゲーム属性/オプションを設定することなく、ユーザがゲームスライスを選択し、かつゲームスライスを即時に再生することを可能にする。本明細書に記載される様々な実施形態は、クラウドゲームネットワーク上で実行するゲームのゲームスライスへの無摩擦アクセスを提供する。ゲームスライスはまた、ソーシャルネットワークまたはクラウドゲームネットワークのうちの1つまたは両方を介して配布され、ユーザによってアクセスされる。ソーシャルネットワークを介する配布およびアクセスは、ソーシャルネットワークのソーシャルグリッド内で定義されるソーシャル関連性に基づいている。本出願で使用されるとき、ソーシャルグリッドは、ソーシャルネットワーク内のユーザ間のソーシャル接続および関係の様々なレベルを定義するソーシャルグラフとして定義される。
【0046】
少なくとも最小限の機能性を提供することに加えて、一実施形態では、実行可能なコードは、受動的および能動的選択アクティビティを提供するために使用されるデバイスの種類に対する所定の設定パラメータに関する情報を提供してもよい。この実施形態では、選択アクティビティを提供するために使用されるデバイスの種類が検出され、適切な所定の設定パラメータに関する情報が実行可能なコードを備える。この情報は、クライアントデバイスにおけるゲームスライスの即時再生の制御を定義するために使用されてもよい。制御を定義する情報は、ポップアップウィンドウ、メニュー、またはクライアントデバイスのディスプレイにおける任意の他の形態で提示されてもよい。
【0047】
一実施形態では、クラウドゲームネットワークは、選択アクティビティを提供するユーザと関連付けられるクライアントデバイスの種類、および/または同様にユーザに対して利用可能なコントローラの種類を検出し、かつクラウドベースのビデオゲームに入力を提供するように構成される。例えば、一実施形態では、ユーザがクラウドゲームネットワークにログインするとき、ユーザは、クラウドゲームネットワークにアクセスしているクライアントデバイスの種類を指定するオプションを提示されてもよい。一実施形態では、一連のクライアントデバイスのオプションは、ユーザがクライアントデバイスに対応する1つを選択することができることから提示される。同様に、ユーザはまた、ユーザがビデオゲームを再生するために使用するコントローラデバイスの種類を指定するオプションを提示されてもよい。一実施形態では、一連のコントローラオプションは、ユーザがコントローラハードウェアに対応するコントローラの種類を指定するために選択することができることからユーザに提示されることが可能である。他の実施形態では、クラウドゲームネットワークは、クライアントデバイスの種類および/またはコントローラデバイスの種類を自動的に検出するように構成されることが可能である。
【0048】
例えば、ログイン時に、クライアントデバイスは、それ自体を識別するゲームサーバならびに接続されたコントローラデバイスに(例えば、ゲームサーバからの要求に応答して)情報を送信してもよい。この情報に基づいて、ゲームサーバ(すなわち、クラウドゲームサーバ)は、適切なビデオゲーム出力構成および入力パラメータ構成を判定して、ユーザのクライアントデバイスおよびコントローラデバイスに最適化されるゲーム体験を提供してもよい。一実施形態では、ルックアップテーブルが用いられて、検出されたクライアントデバイスおよび検出されたコントローラデバイスに基づいてビデオゲーム構成および入力パラメータ構成を判定する。これらの構成および入力パラメータは、所定の設定パラメータを生成するために使用される。
【0049】
所定のビデオゲームが特定のプラットフォームおよび特定の関連したコントローラデバイスのために開発されてもよいことを理解されるべきである。しかしながら、このようなゲームが本明細書に提示されるようにクラウドゲームシステムを介して利用されるとき、ユーザは、異なるコントローラデバイスでビデオゲームにアクセスしてもよい。例えば、ゲームがゲームコンソールおよびその関連したコントローラのために開発され得るが、ユーザは、キーボードおよびマウスを利用するパーソナルコンピュータからゲームのクラウドベース版にアクセスし得る。このような状況では、入力パラメータ構成は、ユーザの利用可能なコントローラデバイス(この場合、キーボードおよびマウス)によって生成され得る入力からビデオゲームの実行に許容可能である入力にマッピングを定義することができ、このような構成は、所定の設定パラメータで提供される。
【0050】
別の例では、ユーザは、タブレットコンピューティングデバイス、タッチスクリーンスマートフォン、または他のタッチスクリーン駆動型デバイスを介してクラウドゲームシステムにアクセスしてもよい。この場合、クライアントデバイスおよびコントローラデバイスは、入力が検出されたタッチスクリーン入力/ジェスチャによって提供される、同じデバイスでともに統合される。このようなデバイスの場合、入力パラメータ構成は、ビデオゲームに対するゲーム入力に対応する特定のタッチスクリーン入力を定義してもよい。例えば、ビデオゲームの動作中に、ボタン、方向パッド、または他の種類の入力素子が表示され、またはオーバーレイされて、ユーザがゲーム入力を生成するために触れることができるタッチスクリーン上の位置を示してもよい。特定の方向または特定の接触動作においてスワイプなどのジェスチャもまた、ゲーム入力として検出されてもよい。一実施形態では、ユーザをタッチスクリーン上の制御の操作に慣れさせるように、例えば、チュートリアルがユーザに提供されて、ビデオゲームのゲームプレイを開始するより前に、ゲームプレイのためのタッチスクリーンを介する入力の提供法を示すことが可能である。
【0051】
いくつかの実施形態では、クライアントデバイスは、コントローラデバイスのための接続ポイントとして機能する。すなわち、コントローラデバイスは、クライアントデバイスとの無線または有線接続を介して通信して、コントローラデバイスからクライアントデバイスに入力を送信する。クライアントデバイスは、これらの入力を順に処理し、次いでネットワークを介して(例えば、ルータなどのローカルネットワークデバイスを介してアクセスされる)入力データをゲームサーバに送信してもよい。しかしながら、他の実施形態では、コントローラはそれ自体、最初にクライアントデバイスを介してこのような入力を通信するのを必要とせずに、ネットワークを介してゲームサーバに入力を直接通信する能力を有するネットワークデバイスであり得る。例えば、コントローラは、ローカルネットワークデバイス(前述のルータなど)に接続し、ゲームサーバからのデータを送受信してもよい。したがって、クライアントデバイスは、クラウドベースのビデオゲームからのビデオ出力を受信し、かつローカルディスプレイ上にそれをレンダリングすることをさらに必要としてもよいが、コントローラがネットワーク上でゲームサーバに入力を直接送信することを可能にすることによって入力レイテンシが低減されることが可能であり、クライアントデバイスをバイパスする。
【0052】
一実施形態では、ネットワークコントローラおよびクライアントデバイスが、コントローラからゲームサーバにある種の入力を直接送信し、他の種類の入力をクライアントデバイスを介して送信するように構成されることが可能である。例えば、検出が任意の追加のハードウェアに依存しないかまたはコントローラから離れて処理する入力がそれ自体、ネットワークを介してコントローラからゲームサーバへ直接送信することが可能であり、クライアントデバイスをバイパスする。このような入力としては、ボタン入力、ジョイスティック入力、埋め込まれた動作検出入力(例えば、加速度計、磁力計、ジャイロスコープ)などが挙げられ得る。しかしながら、追加のハードウェアを利用するかまたはクライアントデバイスによって処理することを必要とする入力は、クライアントデバイスによってゲームサーバに送信されることが可能である。これらは、ゲームサーバに送信する前にクライアントデバイスによって処理され得るゲーム環境からのキャプチャされた映像または音声を含み得る。加えて、コントローラの動作検出ハードウェアからの入力は、コントローラの位置および動作を検出するように、キャプチャされた映像とともにクライアントデバイスによって処理されてもよく、その後、クライアントデバイスによってゲームサーバに通信されるであろう。様々な実施形態に従うコントローラデバイスはまたクライアントデバイスまたはゲームサーバから直接データ(例えばフィードバックデータ)を受信してもよいことが理解されるべきである。
【0053】
一実施形態では、複数のゲームスライスのそれぞれが1人以上のユーザと共有可能である。ゲームスライスの実行可能なコードのインスタンスは、選択されたゲームスライスのゲームプレイに対する他のユーザによって選択されるデバイスの種類に応じて他のユーザによってゲームスライスの即時再生を可能にするように最小限の機能性を提供してもよい。ゲームスライスにおける受動的および能動的選択アクティビティを含むゲームスライスのうちの選択された1つ以上のゲームプレイに関する情報が、クラウドゲームネットワークでキャプチャされ、記憶される。ゲームプレイ情報は、ゲームプレイの記憶された情報、および共有を開始し、かつゲームスライスの再生を開始するユーザのソーシャル関連性に基づいて、ユーザのために1つ以上のゲームスライスを再生するサジェストされたリストを生成することにおいて使用される。例えば、ユーザ1、2、3がそれぞれ、ゲーム1のゲームスライスGS1を再生し、ユーザ4がユーザ1、2、3の1人以上とソーシャル関係を有する場合、ユーザ4は、ユーザ4がゲームシステムまたはユーザ4のソーシャルネットワーク内のフィードにおいてアクセスするときに、GUIにおいてゲームスライスGS1を提示されてもよい。GUIにおいてユーザに提示されるゲームスライスのサジェストされたリストはまた、所定のランキング順に組織化される。一実施形態では、組織化されたゲームスライスのサジェストされたリストは、ゲームスライスへのアクセスを要求するユーザへのゲームスライスの人気を定義するユーザのソーシャル関連性に基づいている。
【0054】
一実施形態では、能動的選択アクティビティは、現在レンダリングする一次ビデオセグメントの停止、およびクラウドゲームネットワークにおける実行可能なコードのインスタンスのローディングを引き起こす。ローディングされた実行可能なコードは、クラウドゲームネットワークでレンダリングされ、ゲームのレンダリングは、ゲームスライス内で定義されるゲームのロック解除されたサブセットの再生を可能にするようにクライアントデバイスのディスプレイで提供される。ゲームのロック解除されたサブセットの再生中に、ゲームプレイが記録される。記録されたゲームプレイは、二次ビデオセグメントを生成するために使用される。二次ビデオセグメントは、ゲームサーバにポスティングされ、共有するために利用される。
【0055】
ゲームサーバ300でゲームスライスの処理に役立つために、ゲームプロセッサモジュール310が提供される。ゲームプロセッサモジュール310は、ゲームサーバ300上で実行するように構成され、ゲームスライスの処理に役立ち、かつクラウドゲームネットワーク上でゲームスライスの一次および二次ビデオセグメントを提供するように、互いにかつクライアントデバイスと対話する複数のモジュールを含む。ゲームプロセッサモジュール310内のモジュールのいくつかは、ゲームマネージャモジュール312と、ゲームコードマッパ314と、アクティビティセレクタ316と、ゲームプレイレコーダ318と、ビデオセグメントジェネレータ320とを含む。上述されたモジュールに加えて、ゲームプロセッサモジュール310はまた、AIキャラクタオーバーレイモジュール317を含んでもよい。上記のモジュールは、例示であり、限定的と見なされるべきではない。本発明の様々な実施形態において、ゲームスライスを処理するためのゲームプロセッサモジュールに、より少ないかまたは追加のモジュールが提供されてもよい。
【0056】
ゲームマネージャモジュール312は、クライアントデバイスでレンダリングするために複数のゲームおよび複数のゲームスライスを識別するように構成される。ゲームマネージャモジュール312は、クライアントデバイスからゲームアクセスに対する要求を受信する。それに応えて、ゲームマネージャモジュール312は、複数のゲームおよびゲームスライスを識別し、クライアントデバイスでゲームおよびゲームスライスを提示するためのグラフィカルユーザインターフェース(GUI)を生成する。一実施形態では、ゲームマネージャモジュール312は、レンダリングするためのゲームおよびゲームスライスを識別するためにゲームの種類またはジャンルのユーザの選好を含むユーザの属性を判定するためにユーザデータベース304と対話し、ユーザの選好に基づいて識別された複数のゲームおよびゲームスライスを取り出すためにゲームデータベース306と対話する。別の実施形態では、ゲームおよびゲームスライスは、ゲームに対する要求が受信されるユーザのゲームネットワークおよび/またはソーシャルネットワークのうちのいずれか1つまたは両方内で人気のあるものに基づいて識別されてもよい。この実施形態では、ゲームマネージャモジュール312は、ソーシャルメディアデータベース308および/またはゲームデータベース306と対話して、ソーシャルメディアネットワークおよび/またはクラウドゲームネットワーク内で人気のあるゲーム/ゲームスライスを識別し、ソーシャルメディアネットワークおよび/またはクラウドゲームネットワークから取得された情報に基づいてゲーム/ゲームスライスを取り出す。取り出された複数のゲームおよびゲームスライスは、レンダリングするためにクライアントに戻されるGUIで提示される。一実施形態では、クラウドゲームネットワーク(または単純に「ゲームネットワーク」)は、1つ以上の仮想マシンがハイパーバイザに利用可能なハードウェアリソースを使用してゲームプロセッサモジュールを実行するように構成される、ホストのハイパーバイザ上で動作する仮想マシンの集積を含むクラウドシステムの一部である。
【0057】
一実施形態では、ゲームマネージャモジュール312はまた、ランカモジュール312−aを含んでもよい。ランカモジュール312−aは、GUIを生成するときに内部で定義される所定のランキング順に基づいて識別された複数のゲームおよびゲームスライスを組織化し、ディスプレイ12でレンダリングするためにクライアントデバイスに組織化されたゲームおよびゲームスライスを戻す。一実施形態では、ランカモジュールは、ソーシャルネットワーク/ゲームネットワークにおけるゲームの人気を判定し、人気に基づいてゲーム/ゲームスライスを組織化してもよい。別の実施形態では、この組織化は、異なる所定のランキング基準に基づいてもよい。
【0058】
図2、3および4は、ユーザ選好に基づいて、および/またはゲームネットワーク/ソーシャルネットワークから取得された情報に基づいてレンダリングするためにクライアントに戻されるゲームマネージャモジュール312によって生成されるGUIの様々な図を示す。
図2に示されるような一実施形態では、ゲームマネージャモジュール312は、ゲームネットワーク/ソーシャルネットワーク内で人気があるかまたは高く評価される様々なゲームを識別し、人気のランキング順に組織化される識別されたゲームを有するGUIを生成する。一実施形態では、GUIにおいて戻されるゲーム/ゲームスライスは、カテゴリに組織化される。
図2は、ゲームがランカモジュール312−aによってゲームマネージャ312内に組織化される様々なカテゴリのサンプリングを示す。
【0059】
「最高評価選択」212、「本日の人気選択」214、「サジェストされた選択」216、「新規追加ゲーム」218などのゲームを組織化するために使用されるカテゴリは、例示であり、限定的と見なされるべきではない。ゲームを組織化する、追加、より少ない、または異なる手法が用いられてもよい。
図2に示されるように、それぞれのカテゴリに提示されるそれぞれのゲームが、ゲームネットワーク内に確立されるようにそれぞれのカテゴリ内のゲームの相対的評価/人気を識別する評価標識を含んでもよい。それぞれのゲーム/ゲームスライスがゲームおよび/またはゲームスライスを表す初期画像と関連付けられ、GUI内にゲーム/ゲームスライスを提示するときにゲームマネージャモジュール312がこれらの初期画像を含むことに本明細書では留意されるべきである。
図2に示される実施形態では、GUIは、それぞれのゲームと関連付けられるゲームスライスではなくゲームのみをレンダリングするように構成される。結果として、レンダリングするために戻されるGUIは、ゲームおよびそれぞれのゲームに対する初期画像を含む。受動的選択アクティビティ215などの選択アクティビティがゲームの初期画像に近似して検出されるとき、ゲームスライスの一次ビデオセグメントが
図2aに示されるように、GUIを介する全面または部分オーバーレイとしてディスプレイでレンダリングするために選択される。受動的選択アクティビティ215を定義するユーザ入力は、ゲーム/ゲームスライスの初期画像「上でホバリングする」、マウスオーバ、指の動作、接触、声、矢印キー、コントローラキー、シングルクリック、ダブルクリック、シングルタップ、ダブルタップ、ジェスチャ(例えば、1本の指、複数の指、または複数の手)、またはクライアントデバイスを介して提供される任意の他のユーザ入力デバイス/制御動作を含むユーザ入力の任意の形態であってもよい。あるいは、受動的選択アクティビティ215に応答して、一次ビデオセグメントは、ポップアップウィンドウとしてレンダリングされてもよい。オーバーレイまたはポップアップウィンドウレンダリングは、例示であり、限定的と見なされるべきではない。一次ビデオセグメントをレンダリングする他の手法が適合されてもよい。選択アクティビティに関する詳細は、アクティビティセレクタモジュール316を参照しながらより詳細に説明される。
【0060】
図3は、一実施形態においてゲームマネージャモジュール312によって組織化され、かつ戻されるGUIの別の図を示す。この実施形態では、ゲームスライスの代表的なセットまたはそれぞれのゲームに対するゲームスライスの完全なセットがそれぞれのゲームの下で組織化され、クライアントデバイスでレンダリングするために戻される。それぞれのゲームスライスがゲームスライスを表す初期画像と関連付けられる。
図3に示されるように、ゲーム1に対するゲームスライスがボックス352内に組織化され、ゲームスライス1−1、ゲームスライス1−2、ゲームスライス1−3、ゲームスライス1−4を含む。同様に、ゲーム2に対するゲームスライスがボックス354内、ゲーム3に対するゲームスライスがボックス356内などに組織化される。受動的選択アクティビティ215などの選択アクティビティがゲームスライスの初期画像に近似して検出されるとき、一実施形態においてゲームスライスの一次ビデオセグメントがディスプレイでレンダリングされる。例えば、
図3に示されるように、ゲームスライス2−2と関連付けられる一次ビデオセグメントは、画像GS2−2に近似した受動的選択アクティビティに応答してレンダリングするために選択される。この実施形態では、一次ビデオセグメントは、ゲームを提示するGUIの上にオーバーレイされてもよい。別の実施形態では、一次ビデオセグメントは、異なるウィンドウまたはポップアップウィンドウなどに提示されてもよい。
【0061】
さらに別の実施形態では、ビデオゲームおよび利用可能なゲームスライスは、
図4に示されるようにGUIにおいて組織化される。この実施形態では、それぞれのゲームのゲームスライスは、一次ビデオセグメントと関連付けられてもよく、任意の二次ビデオセグメントと関連付けられてもよく、またはそうでなくてもよい。ゲームマネージャモジュール312によって生成されるGUIは、異なるビデオセグメントの可用性を示す追加の標識を提供する。
図4に示されるように、ゲーム1は、4つのゲームスライスGS1−1、GS1−2、GS1−3、GS1−4を含み、それぞれのゲームスライスが一次ビデオセグメントおよび複数の二次ビデオセグメントを有する。ゲーム2は、ゲームスライスGS2−1、GS2−2、およびGS2−3を含み、ゲームスライスのそれぞれが一次ビデオセグメントを有し、それと関連付けられる二次ビデオセグメントを有さず、ゲーム3は、ゲームスライスGS3−1およびGS3−2を含み、それぞれのゲームスライスGS3−1が一次ビデオセグメントを含む。しかしながら、ゲームスライスGS3−2は、二次ビデオセグメントを全く有しないが、ゲームスライスGS3−1は、それと関連付けられる複数の二次ビデオセグメントを含む。一実施形態では、二次ビデオセグメントの数は、ソーシャルネットワークおよび/またはゲームネットワーク内のゲームスライスの人気を表してもよい。この実施形態では、受動的選択アクティビティがゲーム2またはゲーム2のゲームスライスのうちのいずれかで検出されるとき、ゲームマネージャモジュールは、ゲーム2の対応するゲームスライスの一次ビデオセグメントをレンダリングする。加えて、ゲームマネージャモジュールは、ボックス420に示されるように、アクティビティセレクタおよびビデオセグメントジェネレータなどの他のモジュールと対話して、ゲームスライスの二次ビデオセグメントの生成を可能にするようにインターフェースおよび制御を提供してもよい。あるいは、受動的選択アクティビティがゲーム3のゲームスライスGS3−2で検出されるとき、ボックス430に示されるように、ゲームスライス3−2からの適切な一次ビデオセグメントは、1つ以上の二次ビデオセグメントを生成するようにオプションでレンダリングされる。同様に、受動的選択アクティビティがゲーム1で検出されるとき、ボックス410に示されるように、ゲームスライスのうちのいずれか1つの一次ビデオセグメントがレンダリングされる。一次ビデオセグメントがレンダリングされるゲームスライスの選択は、アクティビティセレクタに利用可能な選択基準に基づいて定義されてもよい。ボックス410、420、430は、オーバーレイ、ポップアップウィンドウであってもよく、あるいはクライアントデバイスのディスプレイのユーザインターフェースで別個のウィンドウ上にレンダリングされてもよい。
【0062】
図1に戻って、ゲームおよびゲームスライスを有するGUIは、ディスプレイ12上にレンダリングするためにゲームマネージャ312によってクライアントデバイス100に戻される。GUIにおけるユーザアクティビティがアクティビティセレクタモジュール316によって監視される。アクティビティセレクタ316は、受動的選択ディテクタ316−aおよび能動的選択ディテクタ316−bを含む。受動的選択アクティビティがゲームまたはゲームのゲームスライスのうちの1つで検出されるとき、アクティビティセレクタ316内の受動的選択ディテクタ316−aは、検出に応答して動作させられる。ゲームの初期画像またはゲームのゲームスライスの初期画像に近似した受動的選択アクティビティは、上述されるようにホバリング215、マウスオーバなどの形態であってもよい。
【0063】
一実施形態では、GUIにおいて定義されるゲームおよびゲームスライスは、ユーザのソーシャルネットワークを介してクライアントデバイスでアクセスされてもよい。この実施形態では、ゲームにおける選択アクティビティは、ソーシャルネットワークサーバにおけるアクティビティディテクタ319を使用して検出され、処理するためにアクティビティセレクタ316に送信されてもよい。アクティビティセレクタ316は、選択アクティビティを分析して、選択アクティビティが受動的選択アクティビティまたは能動的選択アクティビティであるかどうかを判定し、適切な選択ディテクタ316−aまたは316−bを動作させる。受動的選択アクティビティが検出されるとき、受動的選択ディテクタ316−aは、レンダリングするためにゲームのゲームスライスと関連付けられる一次ビデオセグメントを識別する。一次ビデオセグメントをレンダリングするために選択されるゲームのゲームスライスは、いくつか例を挙げれば、ランキング基準に基づいて選択されるゲームスライス(すなわち、ゲームの最も人気のあるゲームスライス)、最近作成されたゲームスライス、ゲームのために生成された第1のゲームスライス、受動的選択アクティビティを提供したユーザによって生成された第1のゲームスライス、またはユーザのソーシャルネットワーク内で人気のあるゲームスライスのうちの1つであってもよい。一次ビデオセグメントは、ディスプレイ12でレンダリングするためにクライアントデバイスに戻される。
【0064】
クライアントデバイスで一次ビデオセグメント(利用可能であるとき)を受信することに応答して、一次ビデオセグメントは、ディスプレイ12でレンダリングされる。一実施形態では、一次ビデオセグメントのレンダリング中に、追加のユーザ対話が一次ビデオセグメントで監視される。能動的選択アクティビティが一次ビデオセグメントでアクティビティセレクタモジュール316によって検出されるとき、アクティビティセレクタモジュール316は、能動的選択ディテクタ316−bを動作させる。能動的選択ディテクタ316−bは、ゲームコードマッパと対話して、一次ビデオセグメントと関連付けられるゲームおよびゲームスライスの実行可能なゲームコードを識別し、実行可能なゲームコードのインスタンスをゲームサーバにロードする。
【0065】
ゲームコードマッパは、ゲームデータベース306からのゲームおよびゲームのゲームスライスの実行可能なゲームコードをマッピングするように構成される。結果として、ゲームコードマッパは、能動的選択ディテクタ316−bからの要求に応答して、ゲームスライスと関連付けられるマッピングされたゲームコードおよびゲームスライスをレンダリングするのに必要とされる1つ以上の構成要素/オブジェクトのインスタンスを戻す。戻されたゲームコードは、サーバ側コードおよびクライアント側インターフェースを含む。サーバ側コードは、ゲームサーバ上にロードされ、クライアント側インターフェースは、レンダリングするためにクライアントデバイスに戻される。実行可能なゲームコードのローディングは、ゲームサーバ上に、ゲームコード、ゲームキャラクタ、ゲームオブジェクト、ゲームオブジェクト属性、ゲーム属性、現在のゲーム状態データ、ゲームオブジェクト状態、グラフィックオーバーレイなどのローディングを引き起こす。ロードされた実行可能なコードは、一次ビデオセグメントがレンダリングされるゲームスライス内のゲームのロック解除されたサブセットを表す。ゲームスライスの実行可能なコードのインスタンスが、ゲームネットワークおよび/またはソーシャルネットワーク内のゲームスライスの人気に基づいて仮想マシンサーバ上にロードされる。例えば、最も人気のあるゲームスライスは、あまりレイテンシがなくゲームスライスを再生するアクセスを提供するように、より人気のないゲームスライスより大きな帯域幅を有する仮想マシン上にロードされてもよい。いくつかの実施形態では、ゲームスライスの人気に基づいて、実行可能なコードのインスタンスは、仮想マシンサーバ上に予めロードされ、ゲームスライスを再生するためにレイテンシを最小限にするために必要に応じて、かつ必要とされるときにアクセスが提供されてもよい。
【0066】
ゲームスライス内で定義されるゲームのロック解除された部分のそれぞれのゲームプレイは、ゲームプレイレコーダモジュール318を使用して記録される。ゲームプレイは、ゲームスライスにおけるユーザアクティビティおよびユーザ入力を含む。一実施形態では、ゲームのロック解除された部分の記録されたゲームプレイは、ビデオセグメントジェネレータ320を使用して二次ビデオセグメントを生成するために使用される。生成されたビデオセグメント、すなわち二次ビデオセグメントは、ゲームネットワークの他のユーザまたはゲームスライスで選択アクティビティを提供したユーザと関連付けられるソーシャルネットワークの他のユーザと共有するために、ゲームサーバ内のゲームデータベースにポスティングされる。
【0067】
一実施形態では、ゲームスライスジェネレータ322は、AIキャラクタオーバーレイモジュール317と対話して、ゲームスライスに必要とされるキャラクタおよびグラフィックオーバーレイを判定する。AIキャラクタオーバーレイを有するAIキャラクタは、ゲームスライスの元のゲームコードの一部でなくてもよいが、AIオーバーレイモジュールによって追加されて、ゲームスライスをより現実的かつ可能な限りゲームスライスが定義されたゲームの元の部分に類似して見せる。
【0068】
一実施形態では、AIキャラクタオーバーレイを判定するために、AIキャラクタオーバーレイモジュール317は、ゲームスライスに対する複数のゲームプレイのゲームシーケンスを検索して、様々な結果を判定し、様々なゲームシーケンスに基づいてAIキャラクタオーバーレイを生成する。ゲームスライスは、ゲームスライス外にある、あるゲーム動作およびグラフィックをロックアウトして、選択されたゲームスライスに対する実際のグラフィックおよび動作をレンダリングし得ることに本明細書では留意されるべきである。例えば、ゲームスライスの直前および直後のゲーム動作は、ユーザがゲームスライスを超えてゲームプレイにアクセスできないようにロックされる。したがって、AIキャラクタオーバーレイは、ゲームスライスの再生中に現実的なグラフィックを提供するように受動的オーバーレイを提供するにすぎない。ゲーム動作/グラフィックの選択的ロッキングおよび選択されたミニゲームスライスへのアクセスを提供することは、システム/ネットワークリソースを節約するのに役立つ。これはまた、ユーザを完全なゲームで圧することなくゲームのサンプル部分への必要とされるアクセスを提供するのに役立つ。
【0069】
ゲームスライスのゲームプレイがゲームプレイレコーダを使用して記録され、ゲームスライスの二次ビデオセグメントのうちの1つ以上がビデオセグメントジェネレータ320を使用する記録から生成される。生成された二次ビデオセグメントは、ゲームスライスと関連付けられる。二次ビデオセグメントは、ビデオセグメントジェネレータ320によってゲームデータベースにアップロードされて、選択アクティビティを提供するユーザにソーシャル的に関するゲームネットワークおよび/またはソーシャルネットワークの他のユーザと二次ビデオセグメントを共有することを可能にする。
【0070】
選択されたゲームスライスのロードされたゲームコードは、ユーザがゲームスライスを再生すること、ゲームスライスを共有するために使用されたユーザポストに返信すること、1つ以上のソーシャルネットワークにおけるゲームスライスを共有するポストを生成すること、かつ再生の際に選択されたゲームスライスのゲーム得点をポスティングすることを可能にする。一実施形態では、選択されたゲームスライスのゲームはまた、ユーザがゲームのゲームコードの追加部分をロック解除することを可能にして、ユーザがゲームのロック解除された追加部分を再生することを可能にする。
【0071】
一実施形態では、ゲームコードは、ユーザをロックアウトする前に、ユーザがゲームスライスを再生することができる回数を制限することによってゲームスライスへの選択的アクセスを提供してもよい。あるいは、別の実施形態では、ゲームコードは、ゲームスライスへの選択的アクセスを提供し、ユーザにゲームを購入するオプションを提供してもよい。例えば、ゲームコードは、ユーザがゲームの初期画像で能動的選択アクティビティを提供することを可能にして、ユーザをロックアウトする前に所定の回数の選択されたゲームスライスを再生してもよい。この場合、ゲームコードは、ユーザがゲーム得点のポスティングを行い、かつゲームネットワークおよび/またはソーシャルネットワークの他のユーザと共有することを可能にしてもよい。加えて、ゲームコードは、それぞれのユーザによって開始された共有の量に基づいて、ユーザがゲームを再生することを可能にすることによってユーザに報奨を提供してもよい。報奨は、共有のレベルに比例してもよく、報奨としては、ゲームの追加部分、無料トークン、無料再生などをロック解除することが挙げられてもよい。
【0072】
ゲームサーバの様々なモジュールの詳細な説明によって、ゲームネットワーク上でオンラインゲームのゲームスライスを処理するための方法が、本発明の一実施形態に従う
図5を参照しながら次に記載される。
図5は、クライアントデバイス側とゲームサーバ側の両方で関連する操作のプロセスおよびデータの流れを示す。本方法は、ゲームにアクセスするための要求がクライアントデバイスで開始される操作510から開始する。要求に応答して、操作512に示されるように、ゲームアクセス要求通知がゲームサーバに転送される。ゲームサーバは、操作550に示されるように、ゲームサーバの初期化を行い、クライアントデバイスから生じるあらゆる要求に対応する状態にある。
【0073】
一実施形態では、ゲームサーバは、クラウドシステムの一部であり、かつゲームプロセッサを実行するように構成される仮想マシンであってもよい。ゲームサーバは、操作552に示されるように、クライアントからの要求を受信し、ゲームサーバで実行するゲームプロセッサモジュール310内のゲームマネージャを使用して、ユーザ選好を取得するユーザデータベース、ゲーム関連情報を取得するゲームデータベース、ユーザへのゲームおよび/またはゲームスライスのソーシャル関連性に関する情報を取得するソーシャルデータベース、ならびにゲームおよび対応するゲームスライスを識別するユーザのソーシャルネットワーク内のゲーム/ゲームスライスの人気などの適切なデータベースを問い合わせ、識別されたゲームおよびゲームスライスでグラフィカルユーザインターフェース(GUI)を生成し、操作554に示されるように、レンダリングするためにGUIをクライアントに戻す。ゲームマネージャはまた、ゲームおよび/またはゲームスライスの初期画像を識別し、GUIにおいてゲームおよびゲームスライスの初期画像を含む。クライアントデバイスは、GUIを受信し、操作514に示されるように、クライアントデバイスのディスプレイデバイスでGUIをレンダリングする。
【0074】
GUIにおけるユーザアクティビティが、ゲームプロセッサのクライアント側コードによってクライアントデバイスでレンダリングされたゲームおよびゲームスライスで監視される。操作516に示されるように、受動的選択アクティビティがゲームの初期画像に近似して検出されるとき、クライアントデバイスは、操作518に示されるように、受動的選択アクティビティを受動的選択アクティビティのサービスを要求するゲームサーバに通知する。操作556に示されるように、ゲームサーバは、受動的選択アクティビティの通知を受信し、ゲームサーバで実行するゲームプロセッサ310のアクティビティセレクタモジュールは、選択されたゲーム内のゲームスライスの一次ビデオセグメントを識別する。一次ビデオセグメントは、操作558に示されるように、レンダリングするために取り出され、クライアントデバイスに戻される。
【0075】
クライアントデバイスは、操作520に示されるように、一次ビデオセグメントを受信し、クライアントデバイスのディスプレイで同じものをレンダリングする。一次ビデオセグメントは、既存GUI上、ポップアップウィンドウ上、または新しいウィンドウ内にオーバーレイとしてレンダリングされてもよい。一実施形態では、一次ビデオセグメントは、受動的選択アクティビティがゲームの初期画像に近似して検出される限りレンダリングし続ける。一次ビデオセグメントはレンダリングされているが、さらなるユーザアクティビティがクライアントデバイスのGUIで監視される。操作522に示されるように、能動的選択アクティビティがGUIで検出されるとき、操作524に示されるように、ゲームサーバにおけるゲームプロセッサモジュール310は、GUIで検出された能動的選択アクティビティを通知される。能動的選択アクティビティは、ゲームの初期画像に近似して、または一次ビデオセグメントが現在ディスプレイ上でレンダリングされるゲームのゲームスライスの初期画像に近似して一次ビデオセグメントで検出されてもよい。
【0076】
操作560に示されるように、ゲームプロセッサのアクティビティセレクタモジュールは、クライアントデバイスからの通知を受信し、ゲームコードマッパと対話して、一次ビデオセグメントと関連付けられるゲームスライスに対する実行可能なコードを識別する。識別された実行可能なコードは、サーバ側コードおよびクライアント側インターフェースを含む。操作562に示されるように、サーバ側コードは、ゲームサーバにロードされ、クライアント側インターフェースは、クライアントに戻される。ゲームサーバにおけるロードされた実行可能なコードは、ゲームスライス内で定義されるゲームを再生するのに必要とされるゲームコードおよびゲームオブジェクト/キャラクタを含む。
【0077】
加えて、実行可能なコードはまた、ゲームスライス内のゲームのより現実的なレンダリングを提供するように、人工知能(AI)キャラクタおよびAIキャラクタオーバーレイモジュールによって提供されるグラフィックオーバーレイを含んでもよい。クライアント側コードは、ビデオセグメントを再生し、かつ生成するためのゲームスライスにアクセスするように、制御を定義するインターフェースおよび情報を含む。サーバ側コードは、選択アクティビティを提供するクライアントデバイスを検出し、クライアントデバイスの種類を判定し、クライアントデバイスのディスプレイ上にレンダリングするために所定の設定パラメータを取り出す。所定の設定パラメータは、クライアントデバイスでゲームスライスを再生するための制御を定義するために使用される情報を含む。操作564に示されるように、インターフェースおよび制御情報を含むクライアント側コードは、クライアントデバイスに戻される。
【0078】
クライアントデバイスは、操作526に示されるように、クライアント側の実行可能なインターフェースおよび制御情報を受信し、クライアントデバイスで同じものをレンダリングする。レンダリングされたクライアント側の実行可能なインターフェースおよび制御情報は、ユーザがゲームスライス内で定義されるゲームのロック解除されたサブセットにアクセスし、再生することを可能にする。ゲームのロック解除されたサブセットのゲームプレイは、ユーザアクティビティおよび対話を通じて検出され、このようなユーザアクティビティおよび対話は、操作528に示されるように、処理するためにゲームプロセッサのゲームプレイレコーダに送信される。
【0079】
ゲームプレイレコーダは、操作566に示されるように、異なるユーザからの記録されたゲームプレイの形態でアクティビティおよび対話を受信し、操作568に示されるように、記録されたゲームプレイを使用してゲームスライス内で定義されるゲームのロック解除されたサブセットのビデオセグメントを生成する。ゲームプレイレコーダは、ゲームプロセッサ内のビデオセグメントジェネレータと対話して、記録されたゲームプレイのビデオセグメントを生成してもよい。一実施形態では、ビデオセグメントジェネレータは、ゲームスライスにアクセスするユーザの記録されたゲームプレイを使用してゲームスライスに対する二次ビデオセグメントを生成してもよい。この実施形態では、ゲームスライスはすでに、一次ビデオセグメントと関連付けられる。
【0080】
ゲームスライス内で定義されるゲームのロック解除されたサブセットの再生に応答して、ビデオセグメントジェネレータによって生成されたビデオセグメントは、操作570に示されるように、ゲームネットワークの他のユーザまたはユーザと関連付けられる1つ以上のソーシャルネットワークのユーザと供給するためにゲームネットワークにポスティングされる。ゲームスライス内のゲームのロック解除されたサブセットを再生した後、追加のゲームがアクセスされる必要があるかどうかを判定するためにユーザインタラクションが追跡される、決定点530が到達される。追加のゲームがGUI内でアクセスされる必要がある場合、本プロセスは、受動的選択アクティビティが検出され、アクセスを受信し、かつゲーム内のゲームスライスを再生するプロセスが行われる、操作516に戻る。追加のゲームがアクセスされる必要がある場合、本プロセスは、クライアントデバイスがゲームアクセスの要求を受信するのを待つ、操作510に戻る。本プロセスは、タイムアウトイベントが発生するまで、またはユーザがゲームシステムを終了するまで続く。
【0081】
図6は、本発明の別の実施形態においてクラウドゲームネットワーク上でゲームスライスを処理するための別の方法の操作のフローチャートを示す。本方法は、クライアントデバイスから受信されるゲームにアクセスするための要求に応答して、複数のゲームがクライアントデバイスのディスプレイ上にレンダリングするために取り出され、戻される、操作610から開始する。ゲームは、クライアントデバイスでグラフィカルユーザインターフェース(GUI)上に提示される。ゲームは、複数のゲームスライスを含む。それぞれのゲームスライスは、ゲームの全体に満たないゲームの一部分であり、ユーザによって定義される。操作620に示されるように、受動的選択アクティビティが、GUIにおけるゲームのうちの選択されたゲームの初期画像に近似して検出される。受動的選択アクティビティは、クライアントデバイスのディスプレイでレンダリングするために、サーバに、選択されたゲームと関連付けられる複数のゲームスライスのうちの1つに対する一次ビデオセグメントを取り出し、提示させる。一次ビデオセグメントのレンダリング中、操作630に示されるように、能動的選択アクティビティが一次ビデオセグメントに対して検出される。
【0082】
能動的選択アクティビティは、選択されたゲームで、またはゲームの初期画像に近似して一次ビデオセグメントで検出されてもよい。能動的選択アクティビティに応答して、ゲームのゲームスライスの実行可能なコードのインスタンスが、クラウドゲームネットワーク上にロードされる。実行可能なコードは、ゲームコード、ゲームオブジェクト、およびゲームを再生するために必要とされる他の関連情報を含む。実行可能なコードはまた、クライアントデバイスの特定の種類に対する所定の設定パラメータを含んでもよい。所定の設定パラメータは、情報を提供して、ゲームスライス内で定義されるゲームを再生するための制御を定義する。操作640に示されるように、実行可能なコードは、ゲームスライスと関連付けられる選択されたゲームのロック解除されたサブセットの即時再生を可能にするためにレンダリングされる。レンダリングされた実行可能なコードは、ゲームスライス内で定義されるゲームを再生するための制御を定義する情報を含む。ゲームスライスの選択されたゲームスライスはまた、クラウドゲームネットワークまたはソーシャルネットワークなどのネットワーク上で他のユーザと共有するために構成される。操作650に示されるように、ゲームのロック解除されたサブセットの1つ以上の再生は、1つ以上の二次ビデオセグメントを生成するために記録される。二次ビデオセグメントは、ネットワークの他のユーザと共有することを可能にするためにクラウドゲームネットワークにポスティングされる。二次ビデオセグメントを共有するためのネットワークは、クラウドゲームネットワーク、1つ以上のソーシャルネットワーク、またはこれらの組み合わせであってもよい。
【0083】
現在記載された実施形態は、どのようにゲームサーバ内の様々なゲームのゲームスライスがゲームネットワークおよび/またはソーシャルネットワーク内の他のソーシャル的に関連のあるユーザとの無摩擦共有のために処理されるかを実証する。様々な実施形態は、ゲームスライス内で定義されるゲームの必要とされる部分のみへのアクセスを提供し、それによってシステム/ネットワークリソースを節約しながら、ゲームスライス外のゲームの部分に対するゲーム動作/グラフィックを選択的にロックする手法を提供する。これはまた、ユーザを完全なゲームで圧することなくゲームのサンプル部分への必要とされるアクセスを提供するのに役立つ。
【0084】
前述のように、様々な実施形態は、ゲームにサインアップするプロセスを体験すること、設定プロセスを進むこと、様々なゲームレベルなど、および購入プロセスを進むことをユーザに必要とせずに、ゲームの選択された部分への無摩擦アクセスを提供する。無摩擦アクセスは、ゲームの選択された部分への即時再生アクセスをユーザに提供し、ゲームスライスを生成したユーザによって、またはゲーム設定と典型的に関連付けられるレイテンシを低減する所定の設定パラメータを使用して定義される設定パラメータを受け継いでもよい。
【0085】
特定の実施形態が他のユーザとゲームの部分を共有することを実証するように提供されたが、これらは限定するためではなく、例証のために記載される。本開示を読んだ当業者であれば、本発明の趣旨および範囲に入る追加の実施形態を理解するであろう。
【0086】
広い地理的区域上で配信される、現在の実施形態のゲームへのアクセスなどを提供するアクセスサービスがクラウドコンピューティングを使用することが多いことに留意されるべきである。クラウドコンピューティングは、動的にスケーラブルかつしばしば仮想化されたリソースがインターネット上でサービスとして提供される計算の手法である。ユーザは、ユーザをサポートする「クラウド」の技術基盤において専門家である必要はない。クラウドコンピューティングは、Infrastructure as a Service(IaaS)、Platform as a Service(PaaS)、およびSoftware as a Service(SaaS)などの異なるサービスに分けられることが可能である。クラウドコンピューティングサービスは、ウェブブラウザからアクセスされるビデオゲーム、オンラインなどの共通アプリケーションを提供することが多いが、ソフトウェアおよびデータは、クラウドのサーバ上に記憶される。用語クラウドは、どのようにインターネットがコンピュータネットワーク図に示され、かつそれが隠す複雑な基盤の抽象化であるかに基づいてインターネットに対する比喩として使用される。
【0087】
ゲーム処理サーバ(GPS)(または単純に「ゲームサーバ」)は、単独および多人数参加型ビデオゲームを再生するためにゲームクライアントによって使用される。インターネット上で再生される大部分のビデオゲームがゲームサーバへの接続を介して動作する。典型的に、ゲームは、参加者からデータを収集し、それを他の参加者に分配する専用のサーバアプリケーションを使用する。これは、ピアツーピア配置より効率的かつ効果的であるが、サーバアプリケーションをホストする別個のサーバを必要とする。別の実施形態では、GPSは、参加者と参加者それぞれのゲームプレイデバイスとの間の通信を確立して、集中型GPSに依存せずに情報を交換する。
【0088】
専用GPSは、クライアントから独立して動作するサーバである。このようなサーバは通常、データセンタ内にある専用のハードウェア上で動作され、より多くの帯域幅および専用の処理能力を提供する。専用サーバは、大部分のPCベースの多人数参加型ゲームのゲームサーバをホストする好ましい方法である。大規模な多人数参加型オンラインゲームは、ゲームタイトルを所有するソフトウェア会社によって通常ホストされる専用サーバ上で動作し、専用サーバがコンテンツを制御および更新することを可能にする。
【0089】
ユーザは、少なくともCPU、ディスプレイ、およびI/Oを含むクライアントデバイスでリモートサービスにアクセスする。クライアントデバイスは、PC、携帯電話、ネットブック、PDAなどであってもよい。一実施形態では、ゲームサーバ上で実行するネットワークは、クライアントによって使用されるデバイスの種類を認識し、用いられる通信方法を調節する。他の事例では、クライアントデバイスは、HTMLなどの標準通信方法を使用して、インターネット上でゲームサーバ上のアプリケーションにアクセスする。
【0090】
本発明の実施形態は、ハンドヘルドデバイス、マイクロプロセッサシステム、マイクロプロセッサベースまたはプログラマブル家庭用電化製品、ミニコンピュータ、メインフレームコンピュータなどを含む様々なコンピュータシステム構成で実践されてもよい。本発明はまた、タスクが有線ベースまたは無線ネットワークを通じてリンクされるリモート処理デバイスによって行われる分散コンピューティング環境で実践されることも可能である。
【0091】
上記の実施形態を考慮に入れて、本発明は、コンピュータシステム内に記憶されるデータに関する様々なコンピュータ実装操作を用いることができることを理解すべきである。これらの操作は、物理量の物理的操作を必要とするものである。本発明の一部を形成する本明細書に記載される操作のうちのいずれかは、有用なマシン操作である。本発明はまた、これらの操作を行うためのデバイスまたは装置に関する。装置は、必要とされる目的のために特別に構築されることが可能であり、あるいは装置は、コンピュータ内に記憶されるコンピュータプログラムによって選択的に作動させられるかまたは構成される汎用コンピュータであることが可能である。特に、様々な汎用マシンが、本明細書の教示に従って書かれたコンピュータプログラムで使用されることが可能であり、あるいは必要とされる操作を行うより専門化した装置を構築するのにより便利であってもよい。
【0092】
本発明はまた、コンピュータ可読媒体上のコンピュータ可読コードとして具現化され得る。コンピュータ可読媒体は、データを記憶することができる任意のデータ記憶デバイスであり、したがってコンピュータシステムによって読み込まれ得る。コンピュータ可読媒体の例としては、ハードドライブ、ネットワーク接続ストレージ(NAS)、読み取り専用メモリ、ランダムアクセスメモリ、CD−ROM、CD−R、CD−RW、磁気テープ、および他の光学および非光学データ記憶デバイスが挙げられる。コンピュータ可読媒体は、コンピュータ可読コードが分散型様式で記憶され、実行されるように、ネットワーク結合コンピュータシステム上で分散されるコンピュータ可読有形媒体を含むことができる。
【0093】
本方法の操作は、特定の順に記載されたが、他のハウスキーピング操作が操作間で行われてもよく、あるいは操作がわずかに異なる時間に発生し、またはオーバーレイ操作の処理が所望の手法で行われる限り、処理と関連付けられる様々な間隔で処理操作の発生を可能にするシステム内に分散され得るように操作が調節されてもよいことが理解されるべきである。
【0094】
前述の本発明は、明白な理解のために少し詳細に記載されたが、特定の変更および修正が添付の特許請求の範囲の範囲内で実践され得ることが明らかであろう。したがって、本実施形態は、限定的ではなく例示と見なされるべきであり、本発明は、本明細書に規定される詳細に限定されるべきではないが、添付の特許請求の範囲の範囲および均等物内で修正されてもよい。