(57)【要約】【解決手段】ビデオゲームの三次元ゲームプレイをソーシャルネットワークに共有する方法を提供する。方法は、三次元記録ビデオによって規定された記録されたゲームプレイ部分をソーシャルネットワークに共有する要求を受信することと、三次元記録ビデオに基づいて、二次元ビデオクリップを生成することと、二次元ビデオクリップをソーシャルネットワークに共有することと、を含む。【選択図】図８
2018143777.tif 000002
【特許請求の範囲】
【請求項１】
ヘッドマウンテッドディスプレイ（ＨＭＤ）にレンダリングされるビデオゲームの三次元ゲームプレイをソーシャルネットワークに共有する方法であって、
前記ＨＭＤの双方向使用によって駆動されるビデオゲームの三次元ゲームプレイから生成された三次元ビデオクリップを、ＨＭＤが接続されたコンピュータによって、ストレージに記録することと、
前記三次元ビデオクリップをソーシャルネットワークに共有する要求を、前記ＨＭＤが接続されたコンピュータによって、受信することと、
前記三次元ビデオクリップを二次元フォーマットに変換することによって二次元ビデオクリップを、前記ＨＭＤが接続されたコンピュータによって、生成することと、
前記二次元ビデオクリップを、前記ＨＭＤが接続されたコンピュータによって、前記ソーシャルネットワークに共有することとを含み、
前記二次元ビデオクリップを生成することは、前記ビデオゲームの前記三次元ゲームプレイ中に生じるゲームプレイアクティビティを分析して、前記二次元ビデオクリップのフレームに対して適用されるべき焦点深度、被写界深度、ズームのレベル、視聴方向、視界の１つまたは複数を決定することを含む、方法。
【請求項２】
前記三次元ビデオクリップを前記ソーシャルネットワークに共有することをさらに含み、
前記ソーシャルネットワークは、クライアントデバイスが三次元フォーマットの再生をサポートする場合に前記三次元ビデオクリップを前記クライアントデバイスに供給するように構成され、前記ソーシャルネットワークはさらに、前記クライアントデバイスが前記三次元フォーマットの再生をサポートしない場合に前記クライアントデバイスに前記二次元ビデオクリップを供給するように構成される、請求項１に記載の方法。
【請求項３】
前記要求を受信することは、ユーザのアクティブゲームプレイセッションから規定される、請求項１に記載の方法。
【請求項４】
前記要求を受信することは、前記ユーザの前記アクティブゲームプレイセッション中のコントローラデバイスのボタンの押し下げから規定される、請求項３に記載の方法。
【請求項５】
前記二次元ビデオクリップを前記ソーシャルネットワークに共有することは、前記ソーシャルネットワークのユーザに関連付けられたソーシャルグラフへの投稿であって、前記二次元ビデオを含むように規定された投稿を生成することを含む、請求項１に記載の方法。
【請求項６】
前記二次元ビデオクリップを前記ソーシャルネットワークに共有することは、前記ソーシャルネットワークのＡＰＩにアクセスして前記ソーシャルネットワークの投稿ロジックを起動し、前記二次元ビデオクリップを参照する前記ソーシャルネットワークへの前記投稿を規定することを含む、請求項５に記載の方法。
【請求項７】
前記二次元ビデオクリップを生成することは、前記ビデオゲームの前記三次元ゲームプレイ中に生じるプレイヤの視線情報を分析して、前記二次元ビデオクリップのフレームに対して適用されるべき焦点深度、被写界深度、ズームのレベル、視聴方向、視界の１つまたは複数を決定することを含む、請求項１に記載の方法。
【請求項８】
前記プレイヤの視線情報は、前記ＨＭＤによって生成された入力データから処理される、請求項７に記載の方法。
【請求項９】
ヘッドマウンテッドディスプレイ（ＨＭＤ）にレンダリングされる三次元ビデオをソーシャルネットワークに共有する方法であって、
前記ＨＭＤの双方向使用によって駆動される三次元仮想空間との双方向性から生成された三次元ビデオクリップを、ＨＭＤが接続されたコンピュータによって、ストレージに記録することと、
前記三次元ビデオクリップをウェブサイト経由で共有する要求を、前記ＨＭＤが接続されたコンピュータによって、受信することと、
前記三次元ビデオクリップを二次元フォーマットに変換することによって二次元ビデオクリップを、前記ＨＭＤが接続されたコンピュータによって、生成することと、
前記三次元ビデオクリップと前記二次元ビデオクリップを、前記ＨＭＤが接続されたコンピュータによって、前記ウェブサイトに供給することとを含み、
前記二次元ビデオクリップを生成することは、前記三次元仮想空間との双方向性中に生じるユーザの視線情報を分析して、前記二次元ビデオクリップのフレームに対して適用されるべき焦点深度、被写界深度、ズームのレベル、視聴方向、視界の１つまたは複数を決定することを含み、
前記ウェブサイトは、クライアントデバイスが三次元レンダリングをサポートする場合に前記三次元ビデオクリップを前記クライアントデバイスに供給するように構成され、前記ウェブサイトはさらに、前記クライアントデバイスが三次元レンダリングをサポートしない場合に前記クライアントデバイスに前記二次元ビデオクリップを供給するように構成される、方法。
【請求項１０】
前記要求を受信することは、ユーザのアクティブ仮想現実セッションから規定される、請求項９に記載の方法。
【請求項１１】
前記要求を受信することは、前記ユーザの前記アクティブ仮想現実セッション中のコントローラデバイスのボタンの押し下げから規定される、請求項１０に記載の方法。
【請求項１２】
前記二次元ビデオクリップを生成することは、前記三次元仮想空間との双方向性中に生じるアクティビティを分析して、前記二次元ビデオクリップのフレームに対して適用されるべき焦点深度、被写界深度、ズームのレベル、視聴方向、視界の１つまたは複数を決定することを含む、請求項９に記載の方法。
【請求項１３】
ヘッドマウンテッドディスプレイ（ＨＭＤ）にレンダリングされるビデオゲームの三次元ゲームプレイをソーシャルネットワークに共有する方法であって、
前記ＨＭＤの双方向使用によって駆動されるビデオゲームの三次元ゲームプレイから生成された三次元ビデオクリップを、ＨＭＤが接続されたコンピュータによって、ストレージに記録することと、
前記三次元ビデオクリップをソーシャルネットワークに共有する要求を、前記ＨＭＤが接続されたコンピュータによって、受信することと、
前記三次元ビデオクリップを二次元フォーマットに変換することによって二次元ビデオクリップを、前記ＨＭＤが接続されたコンピュータによって、生成することと、
前記二次元ビデオクリップを、前記ＨＭＤが接続されたコンピュータによって、前記ソーシャルネットワークに共有することとを含み、
前記二次元ビデオクリップを生成することは、前記ビデオゲームの前記三次元ゲームプレイ中に生じるプレイヤの視線情報を分析して、前記二次元ビデオクリップのフレームに対して適用されるべき焦点深度、被写界深度、ズームのレベル、視聴方向、視界の１つまたは複数を決定することを含む、方法。
【請求項１４】
前記プレイヤの視線情報は、前記ＨＭＤによって生成された入力データから処理される、請求項１３に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、三次元ゲームプレイを共有する方法とシステムに関する。
【背景技術】
【０００２】
ビデオゲーム業界では、ここ何年かの間に多くの変化があった。演算能力の拡大に応じて、ビデオゲーム開発者は、その演算能力の向上を利用するゲームソフトウェアを作成してきた。この目的のために、ビデオゲーム開発者は、非常にリアルなゲーム体験を生み出す高度な操作及び数学を組み込んだゲームをコーディングしてきた。
【０００３】
ゲームプラットフォームの例は、ソニープレイステーション（登録商標）、ソニープレイステーション２（登録商標）（ＰＳ２）、及び、ソニープレイステーション３（登録商標）（ＰＳ３）であってよく、それらはそれぞれ、ゲームコンソールの形で販売されている。周知のように、ゲームコンソールは、モニタ（通常は、テレビ）に接続して、ハンドヘルドコントローラを介してユーザインタラクションが可能なように設計されている。ゲームコンソールは、ＣＰＵ、インテンシブなグラフィック操作を処理するためのグラフィックスシンセサイザ、ジオメトリ変換を行うベクトルユニット、及び、他のグルーハードウェアを含む専用処理ハードウェア、ファームウェア、並びに、ソフトウェアで設計される。ゲームコンソールは、ゲームコンソールを介してローカルでプレイするためにゲームコンパクトディスクを受け入れる光ディスクトレイを有するように、さらに設計される。オンラインゲームも可能であり、オンラインゲームでは、ユーザは、インターネット経由でインタラクティブに、他のユーザと対戦したり、他のユーザと共にプレイしたりできる。ゲームの複雑さがプレイヤーの興味を引き付け続けるので、ゲームやハードウェアの製造者は、追加の双方向性及びコンピュータプログラムが可能になるように革新し続けてきた。
【０００４】
コンピュータゲーム業界において増えている傾向は、ユーザとゲームシステムのインタラクションを増加させるゲームの開発である。より豊かな双方向体験を達成する１つの方法は、プレイヤーの動きを追跡し、その動きをゲームへの入力として用いるために、無線ゲームコントローラを使用して、ゲームコントローラの動きをゲームシステムが追跡することである。一般的に言うと、ジェスチャ入力は、プレイヤーが行い、電子デバイスが捕捉したジェスチャに、コンピュータシステム、ビデオゲームコンソール、スマート装置等の電子デバイスを反応させることを指す。
【０００５】
より没入型の双方向体験を達成する別の方法は、ヘッドマウンテッドディスプレイ（ＨＭＤ）の使用である。ヘッドマウンテッドディスプレイは、ユーザが着用して、仮想空間のビュー等の様々なグラフィックスを提示するように構成することができる。ヘッドマウンテッドディスプレイ上に提示されたグラフィクスは、ユーザの視界の大部分または全てをカバーすることができる。よって、ヘッドマウンテッドディスプレイは、視覚的に没入型の体験をユーザに提供することができる。
【０００６】
同業界で増えている別の傾向は、クラウドベースのゲームシステムの開発を伴う。このようなシステムは遠隔処理サーバを含んでよく、遠隔処理サーバは、ゲームアプリケーションを実行し、ローカルシンクライアントと通信する。ローカルシンクライアントは、ユーザからの入力を受信し、ディスプレイにビデオをレンダリングするように構成することができる。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ビデオゲーミングを通して社会的交流を進めるために、ユーザは、自分のゲームプレイのビデオクリップを記録して、友達と共有することができる。ユーザが、ＨＭＤを用いてビデオゲームをすると、ＨＭＤは、ゲームプレイ中、高度に没入型の体験を提供することができる。しかしながら、他者が視聴するユーザのゲームプレイのビデオクリップは、元のゲームプレイ体験を再現することができるハードウェアに提示されない場合がある。代わりに、ビデオクリップは、ウェブサイトに埋め込まれたビデオプレイヤ内等、あまり没入型でない文脈で提示されるかもしれない。従って、元のゲームプレイの提示と、記録されたゲームプレイのビデオクリップの提示との間にミスマッチが起こり得る。このミスマッチが原因で、ユーザのゲームプレイを記録したビデオクリップは、視聴者にとって最適な視聴体験を提供しない場合がある。
【０００８】
この文脈で発明の実施形態を記載する。
【課題を解決するための手段】
【０００９】
本発明の実施形態は、ビデオゲームの三次元ゲームプレイを共有する方法及びシステムを提供する。本発明は、コンピュータ可読媒体上でプロセス、装置、システム、デバイス、または、方法等の多くの手段で実施することができることは、理解されよう。本発明の幾つかの実施形態を以下に記載する。
【００１０】
一実施形態においては、ビデオゲームの三次元ゲームプレイをソーシャルネットワークに共有する方法を提示する。方法は、三次元記録ビデオによって規定された記録されたゲームプレイ部分をソーシャルネットワークに共有する要求を受信することと、三次元記録ビデオに基づいて、二次元ビデオクリップを生成することと、二次元ビデオクリップをソーシャルネットワークに共有することと、を含む。方法は、プロセッサによって行われる。
【００１１】
一実施形態においては、要求を受信することは、ユーザのアクティブゲームプレイセッションから規定される。
【００１２】
一実施形態においては、要求を受信することは、コントローラデバイスのボタンを押すことによって規定される。
【００１３】
一実施形態においては、二次元ビデオクリップを生成することは、記録されたゲームプレイ部分中に生じているゲームプレイアクティビティを分析して、二次元ビデオクリップのフレームを規定する焦点深度を決定することを含む。
【００１４】
一実施形態においては、二次元ビデオクリップを生成することは、記録されたゲームプレイ部分中に生じているゲームプレイアクティビティを分析して、二次元ビデオクリップのフレームを規定する被写界深度を決定することを含む。
【００１５】
一実施形態においては、二次元ビデオクリップをソーシャルネットワークに共有することは、ソーシャルネットワークのユーザに関連付けられたソーシャルグラフへの投稿を生成することを含み、投稿は２次元ビデオを含むように規定される。
【００１６】
別の実施形態においては、三次元ゲームプレイのビデオクリップを視聴する方法を提供する。方法は、三次元フォーマットで規定されたゲームプレイビデオクリップを再生する要求を受信することと、ゲームプレイビデオクリップを三次元フォーマットから二次元フォーマットに変換するプラグインを起動することと、変換したゲームプレイビデオクリップを提示することと、を含む。方法は、プロセッサによって実行される。
【００１７】
一実施形態においては、要求を受信することは、ソーシャルネットワークのインタフェースから規定される。
【００１８】
一実施形態においては、ソーシャルネットワークのインタフェースは、ソーシャルネットワークへの１つまたは複数の投稿を規定する。
【００１９】
一実施形態においては、プラグインは、当該プラグインを実行する装置のハードウェア構成を検出するように構成される。
【００２０】
一実施形態においては、ゲームプレイビデオクリップを三次元フォーマットから二次元フォーマットに変換することは、記録されたゲームプレイデータを分析することを含む。
【００２１】
一実施形態においては、記録されたゲームプレイデータは、ゲーム状態データ、入力データ、動作データ、視線方向データの１つまたは複数を含む。
【００２２】
別の実施形態においては、記録されたゲームプレイビデオクリップを三次元フォーマットから二次元フォーマットに変換する方法を提供する。方法は、記録されたゲームプレイビデオクリップが生成されたゲームプレイセッションから記録されたゲームプレイデータを分析することと、記録されたゲームプレイビデオクリップを、記録されたゲームプレイデータに基づいて、三次元フォーマットから二次元フォーマットに変換することと、を含む。方法は、プロセッサによって実行される。
【００２３】
一実施形態においては、ゲームプレイデータは、ゲーム状態データを含む。
【００２４】
一実施形態においては、ゲームプレイデータは、入力データまたは動作データの１つまたは複数を含む。
【００２５】
一実施形態においては、ゲームプレイデータは、ゲームプレイセッション中、ユーザの眼の視線方向を規定する視線方向データを含む。
【００２６】
一実施形態においては、記録されたゲームプレイデータを分析することは、記録されたゲームプレイビデオクリップによって規定された三次元空間から焦点深度を識別することを含む。
【００２７】
一実施形態においては、記録されたゲームプレイデータを分析することは、識別された焦点深度の被写界深度を識別することを含む。
【００２８】
発明の他の態様は、例を挙げて発明の原理を示す以下の詳細な記載を添付図面と共に、読むと明らかとなろう。
【図面の簡単な説明】
【００２９】
発明は、添付図面と共に以下の記載を参照することによってよく理解されよう。
【００３０】
【図１】発明の実施形態に係る、ビデオゲームの双方向ゲームプレイのシステムを示す図である。
【００３１】
【図２】発明の実施形態に係る、ヘッドマウンテッドディスプレイ（ＨＭＤ）を示す図である。
【００３２】
【図３】発明の実施形態に係る、実行中のビデオゲームに関連してＨＭＤの機能を概念的に示す図である。
【００３３】
【図４】発明の実施形態に係る、記録されたゲームプレイビデオクリップを生成して、ソーシャルネットワークに共有するシステムを示す図である。
【００３４】
【図５Ａ−５Ｄ】発明の実施形態に係る、ゲームプレイビデオクリップの作成と、ゲームプレイビデオクリップのソーシャルネットワークへの共有を可能にするためにユーザに提示される様々なビューを示す図である。
【００３５】
【図６】発明の実施形態に係る、ソーシャルネットワークサイトのビューを示す。
【００３６】
【図７】発明の実施形態に係る、３Ｄゲームプレイビデオクリップのソーシャルネットワークサイトでの共有を示す図である。
【００３７】
【図８】発明の実施形態に係る、３Ｄゲームプレイビデオクリップを２Ｄゲームプレイビデオクリップに変換するシステムを示す。
【００３８】
【図９】発明の実施形態に係る、２Ｄ画像を生成する元になる３Ｄ画像を示す図である。
【００３９】
【図１０】発明の実施形態に係る、ヘッドマウンテッドディスプレイのコンポーネントを示す図である。
【００４０】
【図１１】発明の様々な実施形態に係る、ゲームシステムのブロック図である。
【発明を実施するための形態】
【００４１】
以下の実施形態は、ビデオゲームの三次元ゲームプレイを共有する方法及び装置を記載する。
【００４２】
しかしながら、これらの具体的な詳細の一部または全てを用いずに、本発明を実施してよいことは当業者には明らかである。他の例においては、周知のプロセスの動作については、本発明を不必要に曖昧にしないために、詳細には記載しなかった。
【００４３】
図１は、発明の実施形態に係る、ビデオゲームの双方向ゲームプレイのシステムを示す。ヘッドマウンテッドディスプレイ（ＨＭＤ）１０２を装着しているユーザ１００が示されている。ＨＭＤ１０２は、眼鏡、ゴーグル、または、ヘルメットと同じように装着され、ビデオゲームまたは他のコンテンツをユーザ１００に表示するように構成される。ＨＭＤ１０２は、ユーザの眼のごく近くにディスプレイ機構を設けることによって、高度に没入型の体験をユーザに提供する。従って、ＨＭＤ１０２は、ユーザの各眼に、ユーザの視界の大部分または全体を占める表示領域を提供することができる。
【００４４】
一実施形態においては、ＨＭＤ１０２は、コンピュータ１０６に接続することができる。コンピュータ１０６への接続は、有線であっても無線であってもよい。コンピュータ１０６は、ゲームコンソール、パーソナルコンピュータ、ラップトップ、タブレットコンピュータ、モバイルデバイス、携帯電話、タブレット、シンクライアント、セットトップボックス、メディアストリーミングデバイス等を含むが、それらに限られない、当分野で既知の任意の汎用または専用コンピュータであってよい。一実施形態においては、コンピュータ１０６は、ビデオゲームを実行し、ＨＭＤ１０２でレンダリングするために、ビデオゲームからビデオ及び音声を出力するように構成することができる。
【００４５】
ユーザ１００は、コントローラ１０４を操作して、ビデオゲームに入力を行ってよい。さらに、カメラ１０８は、ユーザ１００がいる双方向環境の画像を撮影するように構成することができる。これらの撮影した画像を分析して、ユーザ１００、ＨＭＤ１０２、及び、コントローラ１０４の位置と動きを決定することができる。一実施形態においては、コントローラ１０４はライトを備え、そのライトを追跡してコントローラ１０４の位置と向きを決定することができる。さらに、以下に詳細に記載するように、ＨＭＤ１０２は、１つまたは複数のライトを備えてよく、そのライトを追跡してＨＭＤ１０２の位置と向きを決定することができる。カメラ１０８は、１つまたは複数のマイクロフォンを備えて、双方向環境からの音を捕捉することができる。マイクロフォンアレイが捕捉した音を処理して、音源の位置を識別してよい。識別された位置からの音を選択的に利用または処理して、識別した位置以外の他の音を除くことができる。さらに、カメラ１０８は、複数の撮像装置（例えば、ステレオペアカメラ）、ＩＲカメラ、デプスカメラ、及び、それらの組み合わせを含むように規定することができる。
【００４６】
別の実施形態においては、コンピュータ１０６は、クラウドゲームプロバイダ１１２とネットワークを介して通信するシンクライアントとして機能する。クラウドゲームプロバイダ１１２は、ユーザ１０２がプレイしているビデオゲームを維持、実行する。コンピュータ１０６は、ＨＭＤ１０２、コントローラ１０４、及び、カメラ１０８からの入力を、クラウドゲームプロバイダに送信し、クラウドゲームプロバイダは、その入力を処理して、実行中のビデオゲームのゲーム状態に影響を与える。ビデオデータ、オーディオデータ、及び、触覚フィードバックデータ等の実行中のビデオゲームからの出力は、コンピュータ１０６に送信される。コンピュータ１０６は、送信前にデータをさらに処理してもよく、または、データを関連する装置に直接送信してもよい。例えば、ビデオストリーム及びオーディオストリームは、ＨＭＤ１０２に提供され、振動フィードバックコマンドは、コントローラ１０４に提供される。
【００４７】
一実施形態においては、ＨＭＤ１０２、コントローラ１０４、及び、カメラ１０８は、それ自体、ネットワーク１１０に接続して、クラウドゲームプロバイダ１１２と通信するネットワーク化された装置であってよい。例えば、コンピュータ１０６は、そうでなければ、ビデオゲーム処理を行わず、通路ネットワークトラフィックを促進するルータ等のローカルネットワーク装置であってよい。ＨＭＤ１０２、コントローラ１０４、及び、カメラ１０８のネットワークへの接続は、有線であっても無線であってもよい。
【００４８】
図２は、発明の実施形態に係る、ヘッドマウンテッドディスプレイ（ＨＭＤ）を示す。図に示すように、ＨＭＤ１０２は、複数のライト２００Ａ〜２００Ｈを備える。これらのライトはそれぞれ、特定の形を有するように構成されてよく、同じまたは異なる色を有するように構成することができる。ライト２００Ａ、２００Ｂ、２００Ｃ、２００Ｄは、ＨＭＤ１０２の前面に配置される。ライト２００Ｅ、２００Ｆは、ＨＭＤ１０２の側面に配置される。ライト２００Ｇ、２００Ｈは、ＨＭＤ１０２の前面と側面に及ぶように、ＨＭＤ１０２のコーナーに配置される。ライトは、ユーザがＨＭＤ１０２を使用する双方向環境を撮影した画像で識別できることは、理解されよう。ライトの識別及び追跡に基づいて、双方向環境におけるＨＭＤ１０２の位置と向きを決定することができる。それらのライトの一部は、撮像装置に対するＨＭＤ１０２の個々の向きに応じて、見える場合もあり、見えない場合もあることも理解されよう。また、異なる部分のライト（例えば、ライト２００Ｇ、２００Ｈ）が、撮像装置に対するＨＭＤ１０２の向きに応じて、撮像のために露出されてよい。
【００４９】
一実施形態においては、ライトは、近くにいる他者に対してＨＭＤの現在の状態を示すように構成することができる。例えば、ライトの一部または全ては、一定の配色、強度の組み合わせを有するように構成されてよく、点滅、一定のオン／オフ構成、または、ＨＭＤ１０２の現在の状況を示す他の取り決めを有するように構成されてよい。例を挙げると、ライトは、ビデオゲームのゲームプレイがアクティブな間（一般的に、ゲームプレイがアクティブタイムライン中またはゲームシーン内で行われている）と、メニューインタフェースのナビゲートまたはゲーム設定の構成等のビデオゲームの他の非アクティブなゲームプレイ態様（この間、ゲームのタイムラインまたはシーンは非アクティブまたは一時停止）とは、異なる構成を表示するように構成することができる。ライトは、ゲームプレイの相対強度レベルを示すように構成されてもよい。例えば、ゲームプレイの強度が増加すると、ライトの強度、または、点滅速度が増加してよい。こうすると、ユーザの外部の人は、ＨＭＤ１０２のライトを見て、ユーザが、積極的にゲームプレイに没頭しており、今は邪魔されたくないであろうことを理解し得る。
【００５０】
ＨＭＤ１０２は、さらに、１つまたは複数のマイクロフォンを備えてよい。図示の実施形態においては、ＨＭＤ１０２は、ＨＭＤ１０２の前面に規定されたマイクロフォン２０４Ａ、２０４Ｂと、ＨＭＤ１０２の側面に規定されたマイクロフォン２０４Ｃとを備える。マイクロフォンアレイを利用することによって、各マイクロフォンからの音を処理して、音源の位置を決定することができる。この情報は、不要な音源を除くこと、音源を視覚的識別と関連付けることを含む、様々な方法で利用することができる。
【００５１】
ＨＭＤ１０２は、また、１つまたは複数の撮像装置も含んでよい。図示の実施形態においては、撮像装置２０２Ａ、２０２Ｂを備えるＨＭＤ１０２が示されている。ステレオペアの撮像装置を利用することによって、環境の三次元（３Ｄ）の画像及びビデオをＨＭＤ１０２の視点から撮影することができる。ＨＭＤ１０２を装着したユーザにこのようなビデオを提示して、ユーザに「ビデオシースルー」能力を提供することができる。すなわち、ユーザは、厳密な意味では、ＨＭＤ１０２を通して見ることはできないが、撮像装置２０２Ａ、２０２Ｂが撮影したビデオは、ＨＭＤ１０２を通して見るようにＨＭＤ１０２の外部の環境を見ることができる機能的に同等のものを提供することができる。このようなビデオは、仮想要素を用いて拡張されて、拡張現実体験を提供することができる、または、他の点においては、仮想要素と結合または融合させてもよい。図示の実施形態においては、２つのカメラは、ＨＭＤ１０２の前面に示されているが、任意の数の外向きのカメラをＨＭＤ１０２上に任意の向きで設置してよいことは理解されよう。例えば、別の実施形態においては、環境の追加のパノラマ画像を撮影するためにＨＭＤ１０２の側面に搭載されたカメラがあってよい。
【００５２】
図３は、発明の実施形態に係る、実行中のビデオゲームに関連してＨＭＤ１０２の機能を概念的に示す図である。実行中のビデオゲームは、入力を受信してビデオゲームのゲーム状態を更新するゲームエンジン３２０によって規定される。ビデオゲームのゲーム状態は、オブジェクトの存在及び位置、仮想環境の条件、イベントのトリガ、ユーザプロフィール、ビューの遠近等の、現在のゲームプレイの様々な側面を規定するビデオゲームの様々なパラメータの値によって少なくとも部分的に規定することができる。
【００５３】
図示の実施形態においては、ゲームエンジンは、例として、コントローラ入力３１４、オーディオ入力３１６、及び、動作入力３１８を受信する。コントローラ入力３１４は、コントローラ１０４等の、ＨＭＤ１０２とは別個のゲームコントローラの操作から規定されてよい。例として、コントローラ入力３１４は、方向入力、ボタンの押し下げ、トリガ起動、動き、または、ゲームコントローラの操作から処理される他の種類の入力を含んでよい。オーディオ入力３１６は、ＨＭＤ１０２のマイクロフォン３０２、または、撮像装置１０８に含まれるマイクロフォンから処理できる。動作入力２１８は、ＨＭＤ１０２に含まれる動作センサ３００、または、撮像装置１０８がＨＭＤ１０２の画像を撮影すると撮像装置１０８から処理できる。ゲームエンジン３２０は、入力を受信し、入力は、ゲームエンジンの構成に従って処理されて、ビデオゲームのゲーム状態を更新する。ゲームエンジン３２０は、ゲーム状態データを様々なレンダリングモジュールに出力し、レンダリングモジュールは、ゲーム状態データを処理して、ユーザに提示するコンテンツを規定する。
【００５４】
図示の実施形態においては、ビデオレンダリングモジュール３２２は、ＨＭＤ１０２に提示するためのビデオストリームをレンダリングすると規定される。ビデオストリームは、ディスプレイ／プロジェクタ機構３１０によって提示され、ユーザの眼３０６によってオプティクス３０８を介して見られてよい。オーディオレンダリングモジュール３０４は、ユーザが聞くために、オーディオストリームをレンダリングするように構成される。一実施形態においては、オーディオストリームは、ＨＭＤ１０２に関連付けられたスピーカ３０４を介して出力される。スピーカ３０４は、オープンエアスピーカ、ヘッドフォーン、または、音声を出すことができる任意の他の種類のスピーカの形をとってよいことは、理解されたい。
【００５５】
一実施形態においては、視線追跡カメラ３１２が、ユーザの視線を追跡できるようにＨＭＤ１０２に備えられている。視線追跡カメラは、ユーザの眼の画像を撮影し、その画像は分析されて、ユーザの視線方向が決定される。一実施形態においては、ユーザの視線方向に関する情報を利用して、ビデオレンダリングに影響を与えることができる。例えば、ユーザの眼が特定の方向を見ていると決定されると、ユーザが見ている領域をより詳細に提供またはより速く更新することによって、その方向のビデオレンダリングを優先または強調することができる。
【００５６】
さらに、触覚フィードバックモジュール３２６は、ＨＭＤ１０２またはコントローラ１０４等、ユーザが操作する別の装置に備えられた触覚フィードバックハードウェアに信号を供給するように構成される。触覚フィードバックは、振動フィードバック、温度フィードバック、圧力フィードバック等、様々な種類の触感の形態をとってよい。
【００５７】
図４は、発明の実施形態に係る、記録されたゲームプレイビデオクリップを生成して、ソーシャルネットワークに共有するシステムを示す。図では、ユーザ４５０は、ＨＭＤ４５２を使用しており、ＨＭＤ４５２は、コンピュータ４５４と通信している。コンピュータ４５４は、ネットワーク４４０を介してクラウドゲーミングプロバイダ４００と通信する。クラウドゲーミングプロバイダ４００は、ゲームライブラリ４０２を規定し、ゲームライブラリ４０２は、クラウドゲーミングプロバイダのストリーミングゲームサービスにアクセスするユーザがプレイしてよい複数のゲームタイトルを含む。ユーザプロフィールストレージ４０４は、クラウドゲーミングサービスの個別のユーザに関連付けられたユーザプロフィールを記憶する。一実施形態においては、ゲームセッション４０６は、クラウドゲーミングプロバイダによって規定される。ゲームセッション４０６は、ユーザ４５０によってプレイされていると、ビデオゲームのアクティブなゲームエンジンを規定することができる。ゲームセッション４０６の進行とともに、ゲームプレイは、記録ゲームプレイストレージ４０８に記録及び記憶される。記録されたゲームプレイは、ユーザに提示される記録されたビデオ及び音声と、ビデオゲームのゲームプレイ中に生じる記録された入力、イベント、パラメータ、または、他のゲーム状態データと、を含むことができる。
【００５８】
共有ロジック４１０が、ユーザのゲームプレイのビデオクリップをソーシャルネットワークに共有するために定義される。共有ロジック４１０は、クリップジェネレータ４１２を起動するように構成されてよい。クリップジェネレータ４１２は、ビデオクリップを生成するためのゲームプレイの一部をユーザが選択するためのインタフェースを提示してよく、ビデオクリップを生成し、ゲームプレイクリップストレージ４１４に記憶してよい。クリップジェネレータは、ゲーム入力、ユーザの視線方向データ、及び、ビデオゲームの様々なゲーム状態データ等、他の記録されたゲームプレイデータと共に、記録されたゲームプレイビデオに基づいて、ビデオクリップを生成してよいことは、理解されよう。
【００５９】
共有ロジック４１０は、ゲームプレイビデオクリップをソーシャルネットワーク４２０に共有するように構成される。図の実施形態に示すように、ソーシャルネットワークは、ユーザの設定、プリファレンス、パーソナルデータ等を含む、ユーザプロフィールデータ４２２を含む。さらに、ユーザグラフデータ４２４は、ソーシャルネットワークの様々なユーザのソーシャルグラフを規定するデータを含む。一般的に、このデータは、ソーシャルネットワークのユーザ間のつながりを規定する。
【００６０】
一実施形態においては、ソーシャルネットワークは、ソーシャルネットワークへの投稿を生成する投稿ロジック４２６を含む。一実施形態においては、投稿ロジック４２６には、ソーシャルネットワークのＡＰＩを介してアクセスすることができる。投稿ロジック４２６は、クラウドゲーミングプロバイダ４００が生成、記憶したビデオクリップのソーシャルネットワーク４２０への共有を容易にするように、クラウドゲーミングプロバイダ４００の共有ロジック４１０によって起動されてよい。ソーシャルネットワーク４２０の投稿ロジック４２６は、ソーシャルネットワークへの投稿を規定するように構成することができる。投稿を規定するデータは、投稿データストレージ４２８に記憶することができる。所与の投稿を規定するデータは、テキスト、ネットワーク化されたリソース（例えば、ハイパーリンクまたはＵＲＬ、ゲームプレイビデオクリップへの参照）への参照と、画像、音声、及び、ビデオコンテンツ（例えば、ゲームプレイビデオクリップ）等の様々な種類のメディアコンテンツと、を含むことができる。
【００６１】
セッションマネージャ４３２は、装置４６０を介してソーシャルネットワークにアクセスするユーザ４６２によってソーシャルネットワーク上のセッションを管理するように構成される。装置４６０は、ソーシャルネットワークにアクセスするように構成された任意のコンピュータ装置であってよく、ウェブブラウザや専用アプリケーション等のアプリケーション、または、アプリを介してアクセスしてよいことは理解されたい。ユーザ４６２のセッションは、ソーシャルネットワークに投稿のフィードを提供するように規定されてよく、投稿のフィードは、ユーザグラフデータ４２４によって規定されるように、ユーザ４６２のソーシャルグラフにユーザの投稿を含んでよい。この目的のために、フィードロジック４３０は、投稿のフィードを生成するよう構成される。投稿のフィードは、ユーザ４６２に固有で、ユーザ４６２のソーシャルグラフもしくはソーシャルグラフのサブグループのメンバーシップ、ユーザのプリファレンス、ソーシャルネットワーク上での活動履歴、投稿の最新性、または、投稿への任意のコメント等の様々な特徴に従って、優先順位を付けられる。
【００６２】
従って、一実施形態においては、自分のゲームプレイのビデオクリップを生成したユーザ４５０は、ソーシャルネットワーク上のユーザ４６２のソーシャルグラフのメンバーでもある。ユーザ４５０は、ソーシャルネットワークの投稿の一部として、ソーシャルネットワークへのゲームプレイビデオクリップを共有することができる。ソーシャルネットワークにアクセスすると、新しく作成された投稿が、ユーザ４６２のために生成されたフィードに現れる。このように、ユーザ４６２は、ユーザ４５０のビデオゲームのゲームプレイ体験を視聴、共有することができる。
【００６３】
図示の実施形態においては、クラウドゲーミングプロバイダは、ゲームプレイビデオクリップを生成して、ソーシャルネットワークに共有する機能を規定するとして記載してあるが、他の実施形態においては、このような機能は、コンピュータ４５４もしくはＨＭＤ４５２、または、ネットワーク４４０に接続されて上述のビデオクリップ生成及び共有の機能を行うように構成された任意の他の装置（単数または複数）上で規定できることを理解されたい。
【００６４】
さらに、ビデオゲームのゲームプレイは、ＨＭＤ４５２に提示される時、三次元（３Ｄ）ビデオコンテンツによって規定することができる。しかしながら、ソーシャルネットワークにアクセスするユーザは、３Ｄビデオコンテンツを適切に視聴する能力を持たない場合がある。従って、一実施形態においては、クリップジェネレータ４１２は、３Ｄで記録されたゲームプレイビデオを二次元（２Ｄ）ビデオフォーマットに変換するように構成される。２Ｄビデオコンテンツは、ソーシャルネットワークの他者とより容易に共有することができる。
【００６５】
ソーシャルネットワーク４２０は、当分野で既知の任意のソーシャルネットワークであってよいことは理解されたい。ソーシャルネットワークは、ビデオゲームのゲームプレイと、ビデオクリップ生成を容易にするプロバイダまたはエンティティとは別個のプロバイダまたはエンティティによって提供されてよい。別の実施形態においては、ソーシャルネットワークは、クラウドゲーミングプロバイダ、または、ビデオゲームのゲームプレイを容易にするプロバイダ、によって提供されるゲーミングに固有のソーシャルネットワークであってよい。
【００６６】
図５Ａ、５Ｂ、５Ｃ、５Ｄは、発明の実施形態に係る、ゲームプレイビデオクリップの作成と、そのゲームプレイビデオクリップのソーシャルネットワークへの共有を可能にするためにユーザに提示される様々なビューを示す。図５Ａにおいては、ユーザは、ビデオゲームのゲームプレイのレベルを完了したところである。ゲームプレイのレベルを完了すると、ユーザは、ユーザのゲームプレイのビデオをソーシャルネットワークの他のユーザと共有するオプションを提示される。ユーザがゲームプレイビデオの共有を選択すると、図５Ｂに示すように、ユーザの記録されたゲームプレイビデオからシーンを選択するインタフェースが提示される。各シーンは、ユーザの記録されたゲームプレイビデオの識別された部分である。図示の実施形態においては、特定のシーン５００がビュー内で強調表示される。
【００６７】
ビデオゲームとユーザのゲームプレイの様々な側面に基づいて、ユーザが選択するためのシーンを事前に規定することは理解されよう。例えば、線形のストーリー展開のビデオゲームは、ユーザが線形に進まなければならないセクション（時間的及び／または地理的）を規定しておいてよい。事前に規定されるシーンは、このようなセクションに基づいて生成することができる。他の実施形態においては、事前に規定されるシーンは、ビデオゲームの重要なイベントまたはゴールの達成、強度の高いゲームプレイ領域等の、ユーザのゲームプレイの他の局面（facets）に基づいて生成することができる。
【００６８】
事前に規定されたシーンを選択すると、図５Ｃに示すように、事前に規定されたシーンのビデオをトリミングするためのインタフェースが提供される。例として、事前に規定されたシーンの長さを示すスライダーバー５０４が示されており、スライダー５０６、５１０が、スライダーバー５０４に沿って移動可能で、それぞれ、生成するゲームプレイビデオクリップの所望のスタート時点と終了時点を示す。ビデオからの代表画像フレームを、スライダー５０８を動かすことによって選択してよい。ビデオクリップまたは代表画像のプレビューは、インタフェースの領域５０２に表示することができる。
【００６９】
事前に規定されたシーンのトリミングを行うと、ゲームプレイビデオクリップは、共有のための規定及び準備ができる。図５Ｄに示す共有インタフェースが提示される。共有インタフェースにおいては、参照番号５１２でビデオクリップのプレビューが示される。コメントフィールド５１４が、共有されるビデオクリップに添付するテキストコメントをユーザが入力するために備えられる。メニュー５１６は、ビデオクリップを共有するユーザまたは友達の特定のグループをユーザが選択できるように備えられている。さらに、チェックボックス５１８、５２０は、ビデオクリップを２Ｄで共有するか３Ｄで共有するかのオプションを示す。
【００７０】
一実施形態においては、記録されたゲームプレイビデオは、３Ｄビデオコンテンツによって規定される。従って、ユーザが、選択されたビデオクリップを２Ｄで共有することを選択する場合、変換プロセスを行うことによって、３Ｄビデオコンテンツは２Ｄビデオコンテンツに変換されてゲームプレイビデオクリップを規定する。記録されたゲームプレイビデオが２Ｄビデオコンテンツで規定されており、ユーザの要求により３Ｄビデオコンテンツに変換するという、逆の場合も起こり得る。
【００７１】
図６は、発明の実施形態に係る、ソーシャルネットワークサイト６００のビューを示す。ソーシャルネットワークサイト６００は、例として、現在のユーザのプロフィール写真６０２と、ソーシャルネットワークで検索を行うためにテキストを入力する検索フィールド６０４と、ユーザのプロフィール、ユーザの友達リスト、写真／ビデオ（例えば、ユーザによって投稿または記憶された、ユーザと共有した、ユーザがタグ付けされた等）、イベント、設定等のソーシャルネットワークの具体的な特徴にアクセスするための様々なオプション６０６と、を含む。
【００７２】
ソーシャルネットワークサイト６００は、ソーシャルネットワークで共有された投稿に優先順位をつけてユーザに表示するフィードセクション６０８をさらに含む。図示の実施形態においては、ゲームプレイビデオクリップ６１２を含む投稿６１０が示されている。ゲームプレイビデオクリップ６１２は、投稿を生成したユーザ（「ボブ」）のプロフィール写真と名前、ビデオクリップをソーシャルネットワークに投稿した時刻、及び、投稿６１０に対するコメント６１８等の、テキスト及び他の情報を伴う。コメントフィールド６１４は、現在のユーザが投稿に応答してコメントを入力するために備えられ、エンドースメント（推薦）ボタン６１６は、ユーザがソーシャルネットワーク上で投稿のエンドースメント（推薦）を示すために提供される。
【００７３】
一実施形態においては、ビデオクリップ６１２ は、３Ｄソースビデオから変換された２Ｄビデオクリップである。従って、ビデオクリップ６１２の再生を起動すると、参照番号６２０で示すように、２Ｄで表示される。一実施形態においては、ビデオクリップ６１２は、３Ｄバージョンや対応する３Ｄビデオクリップをホストする他のサイトへの埋め込みリンク／参照を介して等、ゲームプレイビデオの３Ｄバージョンへのアクセスを提供するように構成することができる。図示の実施形態においては、２Ｄビデオクリップ６１２の提示６２０は、埋め込みリンクを備え、埋め込みリンクを起動すると、ユーザはゲーミングサイト６２２にリダイレクトされる。ゲーミングサイト６２２上では、ビデオクリップ６１２の３Ｄバージョンを含むクリップが視聴可能である。図示の実施形態においては、３Ｄビデオクリップ６２４は、２Ｄビデオクリップ６１２の３Ｄバージョンで、同じユーザ（「ボブ」）からの追加のビデオクリップ６２６、６２８と共に、ゲーミングサイト６２２においてアクセス可能である。
【００７４】
図７は、発明の実施形態に係る、ソーシャルネットワークサイトでの３Ｄゲームプレイビデオクリップの共有を示す。図示の実施形態においては、３Ｄゲームプレイビデオクリップ７０２は、ソーシャルネットワークサイト７００上で共有されている。３Ｄゲームプレイビデオクリップ７０２は、ネイティブでない符号化スキームに従って規定されてよく、ウェブブラウザ等の所与の装置またはアプリケーションによってネイティブにプレイされなくてよい。さらに、３Ｄビデオが利用可能な所与の装置は、３Ｄ再生をサポートしていない場合がある。従って、一実施形態においては、参照番号７０４で示すように、３Ｄビデオクリップの再生を容易にするためにプラグインをロードすることができる。プラグインは、ユーザの装置で、３Ｄビデオクリップの再生を可能にするコーデックまたは他の復号スキームを規定してよい。
【００７５】
一実施形態においては、プラグインは、参照番号７０６に示すように３Ｄビデオクリップ７０２を２Ｄフォーマットに変換するように構成することができ、その結果、２Ｄビデオクリップ７０８が再生される。２Ｄビデオコンテンツへの変換は、当分野で既知の適切なバッファリングを用いて、ビデオ視聴中にリアルタイムで行えることは、理解されたい。または、２Ｄビデオ７０８の再生を開始する前に、部分的または全体的に変換を行うことができる。
【００７６】
別の実施形態においては、プラグインは、ユーザが３Ｄビデオクリップにアクセスしているユーザ装置を識別するように構成することができる。ユーザ装置の識別は、装置を識別するハードウェア検出に基づいて自動であってよく、または、ユーザが手動で入力することもできる。ユーザ装置が、３Ｄ再生をサポートすると判定された場合、３Ｄビデオクリップは、参照番号７１２で示されるように３Ｄで提示することができる。例えば、元のユーザのゲームプレイは、ＨＭＤ上に提示されていたかもしれないが、ビデオクリップにアクセスする装置は、別のＨＭＤであってよく、従って、ビデオクリップにアクセスしているユーザは、元のユーザがゲームプレイ中に体験したのと同じように、３Ｄゲームプレイビデオを視聴、体験してよい。装置が３Ｄ再生をサポートしていないとして識別された場合、３Ｄビデオは、ユーザ装置で再生されるために上記に示すように２Ｄに変換される。
【００７７】
別の実施形態においては、３Ｄビデオクリップ７０２は、ゲームプレイを記録した元のユーザにゲームプレイを提示した元の３Ｄフォーマットとは異なる３Ｄフォーマットに従って規定されてよい。例えば、元のユーザは、ＨＭＤを介して、そのＨＭＤに固有の第１の３Ｄフォーマットで記録された３Ｄビデオでビデオゲームをプレイしたかもしれない。より広い共有を促進するためには、記録されたゲームプレイビデオは、第２の３Ｄフォーマットに変換されてよく、ビデオクリップは、この第２の３Ｄフォーマットで共有されてよい。しかしながら、別のユーザは、第１の３Ｄフォーマットをサポートしている別のＨＭＤからビデオクリップにアクセスしてよく、従って、ビデオクリップは、ビデオクリップにアクセスしているユーザのＨＭＤ上での視聴のために、第２の３Ｄフォーマットから第１の３Ｄフォーマットに戻すように再変換することができる。
【００７８】
図８は、発明の実施形態に係る、３Ｄゲームプレイビデオクリップを２Ｄゲームプレイビデオクリップに変換するシステムを示す。図示のように、記録ゲームプレイデータストレージ８００は、ビデオゲームのゲームプレイから様々なデータを記憶する。例として、ゲームプレイデータは、ゲーム状態データ８０２、入力データ８０４、動作データ８０６、及び、視線データ８０８を含むことができる。ゲーム状態データ８０２は、ゲーム状態を規定する変数及び他のパラメータの値等、ユーザのゲームプレイの最中にビデオゲームのゲーム状態を規定するデータを含む。入力データ８０４は、ゲームプレイ中に供給された、ユーザが生成した入力を記述するデータを含むことができる。動作データ８０６は、ＨＭＤやコントローラ等の様々なハードウェアの動きと、ユーザや他の追跡されるオブジェクトの動きと、を記述するデータを含むことができる。視線データ８０８は、ゲームプレイ中、ユーザの眼の視線方向を規定するデータを含むことができる。
【００７９】
３Ｄ記録ゲームプレイビデオストレージ８１０は、ユーザのゲームプレイを３Ｄで記録したゲームプレイビデオを記憶する。３Ｄで記録されたゲームプレイビデオは、共有のために別々のクリップまたはセグメントで規定することができる。３Ｄ−２Ｄコンバータ８１２は、３Ｄで記録されたゲームプレイビデオを２Ｄフォーマットに変換するために備えられる。２Ｄへの変換は、上記に規定の記録されたゲームプレイデータに部分的に基づいてよい。一実施形態においては、焦点深度判定モジュール８１４は、３Ｄで記録されたゲームプレイビデオによって規定された３Ｄ空間内で、２Ｄビデオコンテンツの１つまたは複数のフレームを規定する焦点深度を判定する。被写界深度判定モジュール８１６は、２Ｄビデオコンテンツの１つまたは複数のフレームの焦点深度に関連付けられた被写界深度特性を決定するように構成される。焦点深度及び被写界深度特性は、様々な記録されたゲームプレイデータに基づいてよいことは理解されたい。
【００８０】
例えば、ユーザが所与の焦点深度に存在するオブジェクトを見ていたことが、視線方向データ及びゲーム状態データに基づいて決定されると、２Ｄビデオ変換の焦点深度をオブジェクトのその焦点深度に設定することができる。シーンの性質に応じて、被写界深度は、所与の焦点深度もしくはその焦点深度の近くのオブジェクトに焦点を合わせて視聴者の注意を引き付ける映画のような効果を与えるように、より浅く決定することができる。または、被写界深度は、シーンのより多くの部分に焦点を合わせて視聴者が視聴、理解できるように、より広く決定してもよい。焦点深度と被写界深度は、記録されたゲームプレイデータの分析に基づいて決定される様々な考慮事項に基づいて決定してよいことは理解されたい。
【００８１】
２Ｄレンダリングモジュール８１８は、選択した焦点深度と被写界深度を３Ｄ記録ビデオに適用して２Ｄビデオデータをレンダリングし、２Ｄ記録ゲームプレイビデオストレージ８２０に記憶される２Ｄ記録ビデオをレンダリングする。
【００８２】
図９は、発明の実施形態に係る、２Ｄ画像を生成する元の３Ｄ画像を示す。３Ｄ画像９００は、犬９０２、キャラクタ９０４及び木９０６等の様々なオブジェクトを示す３Ｄ空間を規定する。焦点深度９１０は、３Ｄ空間内の一定の奥行の平面によって概念的に規定される。２Ｄへの変換のために選択された被写界深度に応じて、キャラクタ９０４の前後のオブジェクトに焦点が合う場合もあれば合わない場合もある。例えば、浅い被写界深度を選ぶと、人９０４には焦点が合うが、犬９０２及び／または木９０６に焦点は合わない。広い被写界深度を選ぶと、犬９０２と木９０６は両方とも、人９０４と共に焦点が合う。
【００８３】
本明細書に記載の様々な実施形態に従って、記録されたゲームプレイビデオクリップの生成は、元のゲームプレイ中に収集されたデータに基づいて最適化できることを、理解されよう。このようなデータを考慮せずにゲームプレイビデオを生成すると、ビデオは、ビデオを視聴する文脈に適さない場合があり、その結果、視聴者にとって準最適な視聴体験となる。ＨＭＤデバイスは、（例えば、携帯電話、タブレット、ラップトップ、ＰＣディスプレイ等で）ゲームプレイビデオを視聴する文脈と大きく異なり得る高度に没入型の体験を提供することができるので、元のゲームプレイをＨＭＤデバイス上に提示した時、この影響は、より顕著になり得る。元のゲームプレイの提示に用いられるハードウェアの能力と、記録されたゲームプレイビデオの視聴に用いられるハードウェアの能力が大きく相違し得るので、記録されたゲームプレイビデオを生成する時、様々なゲームプレイ関連のデータを考えると役に立つ。
【００８４】
一部の実施形態においては、ゲームプレイ中に記録された視線追跡情報を適用して、ゲームプレイビデオクリップを最適化することができる。例えば、プレイヤーがゲームプレイ中に見ていたゲームプレイビデオの特定の領域を視線追跡情報に基づいて識別してよい。このような領域を、ユーザが直視していなかった他の領域より忠実に符号化することができる（例えば、解像度、詳細度、リフレッシュレートを上げる）。一実施形態においては、仮想環境内の特定のオブジェクトを、ゲームプレイ中にプレイヤーが見ていたオブジェクトとして視線追跡情報から識別してよく、これらのオブジェクトは、ゲームプレイビデオクリップ内でより忠実にレンダリングされてよい。コンピュータグラフィックスとアニメーションの分野で既知の様々なオブジェクトレンダリングパラメータは、このようなオブジェクトの総体的な出現を、ユーザがゲームプレイ中に特に見ていなかった他のオブジェクトに対して、増やすように調整できることは理解されよう。
【００８５】
別の実施形態においては、仮想環境の所与の領域に関してレンダリングされるオブジェクトの数は、視線追跡情報に基づいて調整し得る。例えば、一実施形態においては、プレイヤーが見ていた領域では、ゲームプレイビデオクリップでレンダリングするオブジェクトの最大許容数は、プレイヤーが見ていなかった領域の最大許容数より大きい。ビデオゲーム内で規定されるオブジェクトの異なるクラス／タイプがあってよく、最大許容数は、オブジェクトの各クラス／タイプに関して規定され、ゲームプレイビデオクリップを生成するために、視線追跡情報に基づいて調整されてよいことは、理解されたい。
【００８６】
このように、ゲームプレイビデオは最適化されて、プレイヤーが見ていたオブジェクトまたは領域はグラフィカルな忠実度を上げて強調されてゲームプレイビデオに提示されることによって、ゲームプレイ中にプレイヤーが見ていたエリアを視聴者に強調表示する。
【００８７】
さらに、追加の実施形態においては、焦点及び被写界深度は、視線追跡情報に基づいて調整することができる。プレイヤーの視線方向は、ＨＭＤデバイス自体の向き／位置の検出と組み合わせて、ＨＭＤデバイス内のプレイヤーの眼の向き／位置の検出に基づいて追跡してよいことは理解されよう。ＨＭＤデバイスの動きは、プレイヤーの頭の動きに相関しており、ＨＭＤデバイスの位置／向きと組み合わせたプレイヤーの眼の相対的な位置を利用して、物理的空間におけるプレイヤーの視線方向を決定することができる。この視線方向をビデオゲームのゲームプレイ中に利用して、ビデオゲームの仮想環境のプレイヤーに適切なビューを提供することができる。例えば、プレイヤーが様々な方向を見るように頭及び／または眼を動かすと、ＨＭＤデバイス上のビューによって、プレイヤーが仮想環境内にいるかのように、自然に仮想環境を見回している効果が与えられる。ＨＭＤデバイスの動きは、ＨＭＤデバイス内に備えられた慣性センサ（例えば、加速度計、ジャイロスコープ、磁力計）による検出、または、ＨＭＤデバイスを外部的に追跡すること（例えば、画像の撮影と認識を通してＨＭＤデバイス上の照明特徴を追跡すること）によって等、様々な方法で検出できることは理解されよう。
【００８８】
本明細書に記載の実施形態においては、ＨＭＤデバイスの動きに関するデータ等、ＨＭＤデバイスデータを利用して、ゲームプレイビデオクリップの生成に影響を与えることができる。ＨＭＤデバイスの動きを記述するデータは、単独で、または、ゲームプレイビデオの側面を変更する他の種類のデータと共に利用できることは理解されたい。
【００８９】
一部の実施形態においては、プレイヤーがゲームプレイ中に見ていたと判定されるオブジェクトは、焦点を当てられて出現してよく、または、焦点距離は、このようなオブジェクトがゲームプレイビデオクリップ内に焦点を当てられて出現するように、調整されてよい。結果として生じる効果として、プレイヤーが見ていた様々なオブジェクトがゲームプレイビデオの間、焦点を当てられる。さらに、被写界深度は、視線追跡情報に基づいて調整されてよい。例えば、一実施形態においては、プレイヤーが長い時間、所与のオブジェクトを見る場合、所与のオブジェクトに焦点を当てたままで、被写界深度を減少させることができる。この結果、他のオブジェクト（例えば、背景及び前景のオブジェクト）がぼやけることがあり、結果として生じるゲームプレイビデオクリップにおいて、プレイヤーが長い時間見ていたオブジェクトが強調される。一実施形態においては、被写界深度の低減は、所与のオブジェクトへのプレイヤーの視線が閾値時間を超えると、適用されてよい。別の実施形態においては、被写界深度の変化速度は、最小被写界深度に達するまで、所与のオブジェクトにプレイヤーの視線が維持されている時間と共に増加するように規定することができる。結果、プレイヤーがオブジェクトを見続ける時、被写界深度は最初ゆっくりと減少し、次に、時間の経過に従ってより速い速度で加速度的に減少し、最後に、最小被写界深度に達して止まる。
【００９０】
プレイヤーがＨＭＤデバイスを通してビデオゲームを体験している時、ＨＭＤデバイスの表示は、プレイヤーの視野の非常に広範な部分を占めてよい。しかしながら、視聴者がプレイヤーのゲームプレイのビデオクリップを見るとき、視聴者は、モバイルデバイス、テレビ、または、パーソナルコンピュータディスプレイ等のユーザの視野よりずっと小さい部分を占める装置で、ビデオクリップを見ている可能性がある。本開示の目的のために、プレイヤーの「視野（field of vision）」は、プレイヤーの「視界(field of view)」と区別されるべきであることは理解されたい。プレイヤーの視野は、プレイヤーの中心視線エリア及び周辺視野エリアを含む、プレイヤーの眼が理解できる物理的エリアである。人間は、典型的に、ほぼ１８０度の最大水平視野範囲（と典型的な１３５度の垂直視野範囲）を有する。他方、プレイヤーの視界は、ゲームプレイ中にプレイヤーに提示される仮想環境の部分によって規定される。従って、プレイヤーに提示される視界は、所与の方向（例えば、水平または垂直）において、３６０度までの任意の量であってよい。
【００９１】
従って、ゲームプレイ中にＨＭＤデバイスのディスプレイによって占められるプレイヤーの視野部分は、記録されたゲームプレイビデオがレンダリングされる視聴者の装置が占める視聴者の視野部分よりずっと大きくてよい。従って、ゲームプレイ中にＨＭＤデバイスを通して提供されたビデオゲームの仮想環境の視界は、視聴者にとって適切でない可能性がある。よって、一部の実施形態においては、ビデオクリップで提示される視界は、元のゲームプレイ中にプレイヤーに提示された視界と異なるように調整することができる。例えば、一実施形態においては、ビデオクリップで提示された視界は、元のゲームプレイ中に提示された視界より小さく設定される。さらに、ビデオクリップに提示される視界の方向は、ゲームプレイ中にプレイヤーの見ている方向を追跡して、ゲームプレイ中にプレイヤーが見た領域を確実に提示するように、視線追跡情報に基づいて決定することができる。
【００９２】
他の実施形態においては、ゲームプレイビデオクリップに提示される視界は、ゲームプレイデータに基づいて調整される。例えば、一実施形態においては、プレイヤーの視線の動きが大きいと判定されると、ビデオクリップの視界は広げられる。逆に、プレイヤーの視線の動きが小さいと判定されると、ビデオクリップの視界は狭められる。結果として生じる効果は、ビデオクリップにおける仮想環境の提示はプレイヤーの視線方向の動きが増加すると、ズームアウトされ、プレイヤーの視線方向の動きが減少すると、ズームインされる。プレイヤーの視線方向の動きが増加してズームアウトされることによって、ゲームプレイビデオクリップは、プレイヤーの動きが大きい間、あまりぶれずに見えて、視聴者によりスムーズな視聴体験を提供することができる。
【００９３】
プレイヤーの視聴方向の動きは、様々な方法で規定、定量化できることは理解されたい。例えば、動きは、方向の変化の速度、方向の変化の大きさ、所与の速度または大きさの動きが生じる時間長等に基づいて、規定することができる。動きとズームの間の相関は、様々な方法で規定できることは理解されたい。例えば、一実施形態においては、プレイヤーの視聴方向の動きが所定の閾値を超えると、視界はズームアウトするように調整される。逆に、視界は、その動きが所定の閾値未満になると、ズームインするように調整されてよい。その概念を組み合わせて、ズームのデフォルトレベルを提供することができる。デフォルトレベルは、プレイヤーの動きのレベルが第１の閾値を超えるか否かまたは第２の閾値未満になるか否かに応じて、それぞれ、ズームアウトまたはズームインするように調整してよい。
【００９４】
さらに、プレイヤーの動きのデータは、プレイヤーのゲームプレイ中に捕捉されるので、記録されたゲームプレイビデオを分析してぶれる部分を識別する必要がないことに留意する。むしろ、プレイヤーの動きのデータを分析して、プレイヤーの動きが多い期間または少ない期間を識別することができる。上記のように、動きのデータは、ゲームプレイ中のＨＭＤデバイスの位置／向き及び動きに関するデータと、ゲームプレイ中のプレイヤーの眼の位置／向き及び動きに関するデータと、を含むことができる。
【００９５】
別の実施形態においては、視界またはズームをプレイヤーの動きのレベルに応じて調整できるだけでなく、ゲームプレイビデオクリップ用にビデオを生成するための仮想環境の視点の位置を移動させることができる。例えば、プレイヤーの動きが多い期間は、ビデオを生成するための視点は、実際のゲームプレイ中に適用された視点より後方及び／または上方にシフトされてよい。ゲームプレイ中に適用された（プレイヤーに提示された）視点から離れるように視点をシフトすることによって、視点は、場合によっては、一人称視点から三人称視点に変化してよいことは理解されよう。さらに、視点の位置の変化は、ゲームプレイ中にプレイヤーの視聴方向が動くレベルに基づいて、視界の変化と共に適用できることに留意する。
【００９６】
さらに、（元のゲームプレイ中に適用されたものとは異なるゲームプレイビデオクリップに適用される）視界／ズーム、視点、焦点、被写界深度、または、他のビデオパラメータの変化は、（ゲーム状態データから決定することができる）実際のゲームプレイ内で生じたアクティビティに基づいて決定することができる。一部の実施形態においては、ビデオパラメータは、ゲームプレイ中に、プレイヤー（例えば、プレイヤーのキャラクタ）が行っているアクティビティの種類に基づいて調整することができる。例えば、一人称視点のシューティングゲームにおいては、プレイヤーのキャラクタが、闘っていない時、ビデオクリップに適用されるビューは、三人称視点にズームアウトまたはシフトされてよく、プレイヤーのキャラクタが戦闘中の時は、ビューは一人称視点にズームインまたはシフトされてよい。別の実施形態においては、ビデオパラメータは、プレイヤーのキャラクタの近くにいる他の関心オブジェクト（例えば、他のキャラクタ）の存在に基づいて、調整することができる。例えば、他のキャラクタがプレイヤーのキャラクタの近くにいるとき、他のキャラクタを示すようにビューをズームアウトするのが望ましく、プレイヤーのキャラクタに近くに他のキャラクタがいないとき、プレイヤーの実際のゲームプレイ中に適用されたビューと同じようにビューをズームインして維持してよい。
【００９７】
ビデオパラメータの調整に関して実施形態を記載してきたが、プレイヤーのゲームプレイ中に提示された音声もゲームプレイビデオクリップの目的で、調整または維持してよいことは理解されよう。例えば、ゲームプレイ中に提示される３Ｄ音声は、ゲームプレイビデオクリップに対しては適切でない可能性がある。一実施形態においては、３Ｄ音声は、適切な方法で２Ｄ音声に変換される。例えば、ビデオクリップで提供された視界が、ゲームプレイ中のプレイヤーに本来、提示された視界より小さい場合、音声は、ビデオクリップのより小さい視界からの音声を強調するように調整してよい。別の実施形態においては、３Ｄ音声効果は、ビデオクリップで維持される。さらに他の実施形態においては、３Ｄ音声は、視界／ズーム、視点、焦点、被写界深度等に行われた変更に基づいて調整される。例えば、視点をシフトすると、音声は、元のゲームプレイ中に本来プレイヤーに提示された視点からではなく、シフトされた視点から提示される。同様に、視界を広げると、音声は、広げられた視界にあるオブジェクトからの音声を含むまたはさらに強調するように調整されてよい。別の実施例においては、焦点を特定のオブジェクトに合わせるように調整すると、そのオブジェクトからの音声が強調される。
【００９８】
ゲームプレイビデオクリップのソーシャルネットワークへの共有に関して実施形態を記載してきたが、ゲームプレイビデオクリップは、任意の文脈、及び、ビデオクリップの再生をサポートすることができる任意の種類の装置で、共有、配信、投稿、または、他の方法で、視聴者が利用できるようにされることは理解されよう。例として、様々な文脈には、任意の種類のウェブサイト、専用アプリケーション、モバイルデバイスアプリ、ストリーミングビデオプレイヤ、ゲーミングコンソールインタフェース等を含み得るが、それらに限られない。ビデオクリップを提示することができる装置は、携帯電話、ＰＤＡ、ポータブルゲーミングデバイス、タブレット、ラップトップコンピュータ、パーソナルコンピュータ、テレビ、プロジェクタ、ＨＭＤデバイス、スマートウォッチ等を含み得るが、それらに限られない。
【００９９】
図１０を参照すると、本発明の実施形態に係る、ヘッドマウンテッドディスプレイ１０２のコンポーネントを表す図が示されている。ヘッドマウンテッドディスプレイ１０２は、プログラム命令を実行するプロセッサ１３００を備える。メモリ１３０２が記憶のために提供され、メモリ１３０２は、揮発性及び不揮発性のメモリの両方を含んでよい。ユーザが見ることが可能な視覚的インタフェースを提供するディスプレイ１３０４を備える。バッテリ１３０６が、ヘッドマウンテッドディスプレイ１０２の電源として備えられる。動作検出モジュール１３０８は、磁力計１３１０、加速度計１３１２、及び、ジャイロスコープ１３１４等の様々な種類の動作検知ハードウェアのうちの任意のハードウェアを備えてよい。
【０１００】
加速度計は、加速度と、重力によって引き起こされた反力を測定する装置である。１つまたは複数の軸モデルが、異なる方向の加速度の大きさ及び方向の検出に利用できる。加速度計を用いて、傾き、振動、及び、衝撃を感知する。一実施形態においては、３つの加速度計１３１２を用いて、２つの角度（ワールド空間のピッチ角とワールド空間のロール角）に絶対参照を与える重力の方向を提供する。
【０１０１】
磁力計は、ヘッドマウンテッドディスプレイの近くの磁場の強さと方向を測定する。一実施形態においては、３つの磁力計１３１０をヘッドマウンテッドディスプレイ内で用いて、ワールド空間のヨー角に対する絶対参照を確保する。一実施形態においては、磁力計は、±８０マイクロテスラである地球の磁場に及ぶように設計される。磁力計は、金属の影響を受け、実際のヨーに対して単調なヨー測定を提供する。磁場は、環境に金属があるとゆがむ可能性があり、ヨー測定でゆがみをもたらす。必要に応じて、このゆがみは、ジャイロスコープまたはカメラ等の他のセンサからの情報を用いて較正することができる。一実施形態においては、加速度計１３１２を磁力計１３１０と共に用いて、ヘッドマウンテッドディスプレイ１０２の傾きと方位角を取得する。
【０１０２】
ジャイロスコープは、角運動量の原理に基づいて、向きを測定または維持する装置である。一実施形態においては、３つのジャイロスコープ１３１４が、慣性感知に基づいて、各軸（ｘ、ｙ、ｚ）に関する動きの情報を提供する。ジャイロスコープは、速い回転の検出を支援する。しかしながら、ジャイロスコープは、絶対参照が存在しなければ、時間と共にドリフトし得る。これは、ジャイロスコープの周期的なリセットを必要とし、リセットは、オブジェクトの視覚的追跡、加速度計、磁力計等に基づいた位置／向きの決定等、他の入手可能な情報を用いて行うことができる。
【０１０３】
カメラ１３１６が、実環境の画像及び画像ストリームを撮影するために備えられている。後ろ向き（ユーザがヘッドマウンテッドディスプレイ１０２の表示を見ている時、ユーザから離れる方向）のカメラと、前向き（ユーザがヘッドマウンテッドディスプレイ１０２の表示を見ている時、ユーザの方に向かう方向）のカメラを含む複数のカメラをヘッドマウンテッドディスプレイ１０２に備えてよい。さらに、デプスカメラ１３１８が、実環境のオブジェクトの奥行情報を感知するためにヘッドマウンテッドディスプレイ１０２に備えられてよい。
【０１０４】
ヘッドマウンテッドディスプレイ１０２は、音声出力を行うスピーカ１３２０を備える。また、実環境から、周囲環境の音、ユーザの発話等を含む、音声を捕捉するためにマイクロフォン１３２２を備えてよい。ヘッドマウンテッドディスプレイ１０２は、触覚フィードバックをユーザに提供する触覚フィードバックモジュール１３２４を備える。一実施形態においては、触覚フィードバックモジュール１３２４は、触覚フィードバックをユーザに提供するように、ヘッドマウンテッドディスプレイ１０２の動き、及び／または、振動を引き起こすことができる。
【０１０５】
ＬＥＤ１３２６は、ヘッドマウンテッドディスプレイ１０２の状態を視覚的に示すものとして備えられている。例えば、ＬＥＤは、バッテリレベル、電源オン等を示してよい。カードリーダ１３２８は、ヘッドマウンテッドディスプレイ１０２がメモリーカードから情報を読み取ったり、メモリーカードに情報を書き込んだりできるように備えられている。ＵＳＢインタフェース１３３０は、周辺装置の接続、または、他のポータブルデバイス、コンピュータ等の他の装置への接続を可能にするインタフェースの一例として、備えられている。ヘッドマウンテッドディスプレイ１０２の様々な実施形態において、様々な種類のインタフェースのうちの任意のインタフェースをヘッドマウンテッドディスプレイ１０２の接続性を向上させるために、備えてよい。
【０１０６】
ＷｉＦｉ（登録商標）モジュール１３３２は、無線ネットワーク技術を介してインターネットへの接続を可能にするために備えられる。また、ヘッドマウンテッドディスプレイ１０２は、他の装置への無線接続を可能にするブルートゥース（登録商標）モジュール１３３４を備える。通信リンク１３３６が、他の装置への接続のために含まれてもよい。一実施形態においては、通信リンク１３３６は、無線通信のために赤外線伝送を利用する。他の実施形態においては、通信リンク１３３６は、他の装置との通信のために、様々な無線または有線の送信プロトコルのうちの任意のプロトコルを利用してよい。
【０１０７】
入力ボタン／センサ１３３８は、入力インタフェースをユーザに提供するために備えられている。ボタン、タッチパッド、ジョイスティック、トラックボール等の様々な種類の入力インタフェースの任意のインタフェースを備えてよい。超音波技術を介した他の装置との通信を容易にするために、超音波通信モジュール１３４０をヘッドマウンテッドディスプレイ１０２に備えてよい。
【０１０８】
バイオセンサ１３４２が、ユーザから生理学的データの検出を可能にするために備えられている。一実施形態においては、バイオセンサ１３４２は、ユーザの皮膚を通してユーザの生体電気信号を検出するために１つまたは複数のドライ電極を備える。
【０１０９】
ヘッドマウンテッドディスプレイ１０２の上記コンポーネントは、ヘッドマウンテッドディスプレイ１０２に備えられてよい単に例示のコンポーネントとして記載した。本発明の様々な実施形態において、ヘッドマウンテッドディスプレイ１０２は、様々な上記コンポーネントの一部を備えてもよく、備えなくてもよい。ヘッドマウンテッドディスプレイ１０２の実施形態は、本明細書に記載の本発明の態様を容易にするために、ここに記載していないが当分野では既知の他コンポーネントをさらに備えてよい。
【０１１０】
発明の様々な実施形態において、上記ハンドヘルドデバイスは、様々なインタラクティブ機能を提供するためにディスプレイに表示されたインタラクティブアプリケーションと共に利用されてよいことを、当業者は理解されよう。本明細書に記載の例示の実施形態は、例として記載しており、制限のために記載しているのではない。
【０１１１】
図１１は、本発明の様々な実施形態に係る、ゲームシステム１４００のブロック図である。ゲームシステム１４００は、ネットワーク１４１５を介してビデオストリームを１つまたは複数のクライアント１４１０に提供するように構成される。ゲームシステム１４００は、ビデオサーバシステム１４２０と、オプションのゲームサーバ１４２５とを典型的に備える。ビデオサーバシステム１４２０は、最小限の品質のサービスで、ビデオストリームを１つまたは複数のクライアント１４１０に提供するように構成されている。例えば、ビデオサーバシステム１４２０は、ビデオゲーム内のビューの状態または視点を変えるゲームコマンドを受信し、この状態の変化を反映した更新済みビデオストリームを最小の時間の遅れでクライアント１４１０に提供してよい。ビデオサーバシステム１４２０は、今後定義されるフォーマットを含む、多種多様の代替ビデオフォーマットのビデオストリームを提供するように構成されてよい。さらに、ビデオストリームは、多種多様なフレームレートでユーザに提示されるように構成されたビデオフレームを含んでよい。典型的なフレームレートは、毎秒３０フレーム、毎秒６０フレーム、及び、毎秒１２０フレームであるが、より高いまたはより低いフレームレートが発明の代替実施形態に含まれる。
【０１１２】
ここでは、それぞれ、１４１０Ａ、１４１０Ｂ等として呼ばれるクライアント１４１０は、ヘッドマウンテッドディスプレイ、ターミナル、パーソナルコンピュータ、ゲームコンソール、タブレットコンピュータ、電話、セットトップボックス、キオスク、無線装置、デジタルパッド、スタンドアロンデバイス、ハンドヘルドゲームプレイデバイス等を含んでよい。典型的には、クライアント１４１０は、符号化されたビデオストリームを受信し、そのビデオストリームを復号し、結果として生じるビデオをユーザ、例えば、ゲームのプレイヤーに提示するように構成される。符号化されたビデオストリームの受信、及び／または、そのビデオストリームの復号のプロセスは、典型的には、クライアントの受信バッファに個々のビデオフレームを記憶することを含む。ビデオストリームは、クライアント１４１０に一体化されたディスプレイ上で、または、モニタまたはテレビ等の別個の装置上でユーザに提示されてよい。クライアント１４１０は、オプションで、複数のゲームプレイヤーをサポートするように構成される。例えば、ゲームコンソールは、２人、３人、４人、または、それ以上のプレイヤーを同時にサポートするように構成されてよい。これらのプレイヤーはそれぞれ、別個のビデオストリームを受信してよい、または、単一のビデオストリームは、特に各プレイヤー用に生成されたフレームの領域、例えば、各プレイヤーの視線に基づいて生成されたフレームの領域を備えてよい。クライアント１４１０は、オプションで、地理的に分散している。ゲームシステム１４００に含まれるクライアントの数は、１または２、何千、何万、それ以上まで大きく異なってよい。本明細書では、「ゲームプレイヤー」という語は、ゲームをする人を指し、「ゲームプレイデバイス」という語は、ゲームをするのに用いるデバイスを指す。一部の実施形態においては、ゲームプレイデバイスは、ゲーム体験をユーザに与えるために協働する複数のコンピュータ装置を指してよい。例えば、ゲームコンソールとＨＭＤは、ＨＭＤを通して見るゲームを配信するビデオサーバシステム１４２０と協働してよい。一実施形態においては、ゲームコンソールは、ビデオサーバシステム１４２０からビデオストリームを受信する、そして、ゲームコンソールは、ビデオストリームまたはビデオストリームへの更新をレンダリングのためにＨＭＤに転送する。
【０１１３】
クライアント１４１０は、ネットワーク１４１５を介してビデオストリームを受信するように構成される。ネットワーク１４１５は、電話網、インターネット、無線ネットワーク、パワーラインネットワーク、ローカルエリアネットワーク、ワイドエリアネットワーク、プライベートネットワーク等を含む、任意の種類の通信ネットワークであってよい。典型的な実施形態においては、ビデオストリームは、ＴＣＰ／ＩＰまたはＵＤＰ／ＩＰ等の標準プロトコルを介して通信される。あるいは、ビデオストリームは、プロプリエタリ規格を介して通信される。
【０１１４】
クライアント１４１０の典型的な例は、プロセッサ、不揮発メモリ、ディスプレイ、復号ロジック、ネットワーク通信能力、及び、入力装置を備える、パーソナルコンピュータである。復号ロジックは、ハードウェア、ファームウェア、及び／または、コンピュータ可読媒体に記憶されたソフトウェアを含んでよい。ビデオストリームを復号（及び符号化）するためのシステムは、当分野で周知であり、使用される具体的な符号化スキームに応じて変わる。
【０１１５】
クライアント１４１０は、受信したビデオを修正するように構成されたシステムをさらに備えることを必要とはされないが、備えてよい。例えば、クライアントは、１つのビデオ画像を別のビデオ画像に重ね合わせる、ビデオ画像をトリミングする等、のために、さらなるレンダリングを行うように構成されてよい。例えば、クライアント１４１０は、Ｉフレーム、Ｐフレーム、及び、Ｂフレーム等の様々な種類のビデオフレームを受信し、これらのフレームを処理してユーザに表示する画像にするように構成されてよい。一部の実施形態においては、クライアント１４１０のメンバーは、レンダリング、シェーディング、３Ｄへの変換等のさらなる操作をビデオストリームに対して行うよう構成される。クライアント１４１０のメンバーは、オプションで、複数のオーディオストリームまたはビデオストリームを受信するように構成される。クライアント１４１０の入力装置は、例えば、片手ゲームコントローラ、両手ゲームコントローラ、ジェスチャ認識システム、視線認識システム、音声認識システム、キーボード、ジョイスティック、ポインティングデバイス、力フィードバックデバイス、動作及び／または位置検出装置、マウス、タッチスクリーン、神経インタフェース、カメラ、今後開発される入力装置等を含んでよい。
【０１１６】
クライアント１４１０が受信するビデオストリーム（及び、オプションで、オーディオストリーム）は、ビデオサーバシステム１４２０によって生成、提供される。本明細書の他の箇所でさらに記載するように、このビデオストリームは、ビデオフレームを含み（そして、オーディオストリームはオーディオフレームを含む）。ビデオフレームは、ユーザに表示される画像に有意義に寄与するように構成される（例えば、ビデオフレームは、適切なデータ構造で画素情報を含む）。本明細書では、「ビデオフレーム」という語は、ユーザに示される画像に寄与、例えば、影響を与えるように構成される情報を大部分に含むフレームを指す。「ビデオフレーム」に関する本明細書の教示の大部分は、「オーディオフレーム」にも適用できる。
【０１１７】
クライアント１４１０は、典型的に、ユーザから入力を受信するように構成される。これらの入力は、ビデオゲームの状態を変更、そうでなければ、ゲームプレイに影響を与えるように構成されるゲームコマンドを含んでよい。ゲームコマンドは、入力装置を用いて受信することができる、及び／または、クライアント１４１０上で実行されるコンピュータ命令によって自動的に生成されてもよい。受信されたゲームコマンドは、クライアント１４１０からネットワーク１４１５を介して、ビデオサーバシステム１４２０及び／またはゲームサーバ１４２５に通信される。例えば、一部の実施形態においては、ゲームコマンドは、ビデオサーバシステム１４２０を介してゲームサーバ１４２５に通信される。一部の実施形態においては、ゲームコマンドの別個のコピーは、クライアント１４１０からゲームサーバ１４２５及びビデオサーバシステム１４２０に通信される。ゲームコマンドの通信は、オプションで、コマンドＩＤに依存する。ゲームコマンドは、オプションで、オーディオストリームまたはビデオストリームをクライアント１４１０Ａに提供するのに使用されるのと異なるルートまたは通信チャネルを介してクライアント１４１０Ａから通信される。
【０１１８】
ゲームサーバ１４２５は、オプションで、ビデオサーバシステム１４２０とは異なるエンティティによって運営される。例えば、ゲームサーバ１４２５は、マルチプレイヤーゲームの出版社によって運営されてよい。この実施例においては、ビデオサーバシステム１４２０は、オプションで、ゲームサーバ１４２５から見るとクライアントであり、オプションで、ゲームサーバ１４２５の視点からは、先行技術のゲームエンジンを実行する先行技術のクライアントに見えるように構成される。ビデオサーバシステム１４２０とゲームサーバ１４２５間の通信は、オプションで、ネットワーク１４１５を介して行われる。従って、ゲームサーバ１４２５は、ゲーム状態情報を複数のクライアントに送る先行技術のマルチプレイヤーゲームサーバであってよく、その複数のクライアントの１つは、ゲームサーバシステム１４２０である。ビデオサーバシステム１４２０は、ゲームサーバ１４２５の複数のインスタンスと同時に通信するように構成されてよい。例えば、ビデオサーバシステム１４２０は、複数の異なるビデオゲームを異なるユーザに提供するように構成することができる。これらの異なるビデオゲームのそれぞれは、異なるゲームサーバ１４２５によってサポートされてよく、及び／または、異なるエンティティが出版してよい。一部の実施形態においては、ビデオサーバシステム１４２０の幾つかの地理的に分散したインスタンスが、複数の異なるユーザにゲームビデオを提供するように構成される。ビデオサーバシステム１４２０のこれらのインスタンスのそれぞれは、ゲームサーバ１４２５の同じインスタンスと通信してよい。ビデオサーバシステム１４２０と１つまたは複数のゲームサーバ１４２５との間の通信は、オプションで、専用通信チャネルを介して生じる。例えば、ビデオサーバシステム１４２０は、これらの２つのシステム間の通信に専用の高帯域チャネルを介してゲームサーバ１４２５に接続されてよい。
【０１１９】
ビデオサーバシステム１４２０は、少なくともビデオソース１４３０、Ｉ／Ｏ装置１４４５、プロセッサ１４５０、及び、非一時的ストレージ１４５５を備える。ビデオサーバシステム１４２０は、１つのコンピュータ装置を含んでよい、または、複数のコンピュータ装置に分散されてよい。これらのコンピュータ装置は、オプションで、ローカルエリアネットワーク等の通信システムを介して接続される。
【０１２０】
ビデオソース１４３０は、ビデオストリーム、例えば、ストリーミングビデオ、または、動画を形成する一連のビデオフレームを提供するように構成される。一部の実施形態においては、ビデオソース１４３０は、ビデオゲームエンジン及びレンダリングロジックを備える。ビデオゲームエンジンは、プレイヤーからゲームコマンドを受信し、受信したコマンドに基づいてビデオゲームの状態のコピーを維持するように構成される。このゲーム状態は、ゲーム環境内のオブジェクトの位置と、典型的には視点を含む。ゲーム状態は、オブジェクトのプロパティ、画像、色、及び／または、テクスチャも含んでよい。ゲーム状態は、典型的には、ゲーム規則と、移動（ｍｏｖｅ）、回転（ｔｕｒｎ）、攻撃（ａｔｔａｃｋ）、〜にフォーカス設定（ｓｅｔ  ｆｏｃｕｓ  ｔｏ）、インタラクト（ｉｎｔｅｒａｃｔ）、使用（ｕｓｅ）等のゲームコマンドと、に基づいて維持されてよい。ゲームエンジンの一部は、オプションで、ゲームサーバ１４２５内に置かれる。ゲームサーバ１４２５は、地理的に分散したクライアントを用いて、複数のプレイヤーから受信したゲームコマンドに基づいて、ゲームの状態のコピーを維持してよい。これらの場合、ゲーム状態は、ゲームサーバ１４２５によってビデオソース１４３０に提供され、そこで、ゲーム状態のコピーが記憶され、レンダリングが行われる。ゲームサーバ１４２５は、クライアント１４１０からネットワーク１４１５を介して直接ゲームコマンドを受信してよく、及び／または、ビデオサーバシステム１４２０を介してゲームコマンドを受信してよい。
【０１２１】
ビデオソース１４３０は、典型的には、レンダリングロジック、例えば、ハードウェア、ファームウェア、及び／または、ストレージ１４５５等のコンピュータ可読媒体に記憶されたソフトウェアを備える。このレンダリングロジックは、ゲーム状態に基づいてビデオストリームのビデオフレームを作成するように構成される。レンダリングロジックの全てまたは一部は、オプションで、グラフィックスプロセッシングユニット（ＧＰＵ）内に配置される。レンダリングロジックは、典型的には、ゲーム状態及び視点に基づいて、オブジェクト間の三次元空間関係を決定するために、及び／または、適切なテクスチャ等を適用するために、構成された処理段階を含む。レンダリングロジックは、未加工のビデオを生成し、通常、それらは、クライアント１４１０に通信する前に符号化される。例えば、未加工のビデオは、Ａｄｏｂｅ  Ｆｌａｓｈ（登録商標）規格、．ｗａｖ、Ｈ．２６４、Ｈ．２６３、Ｏｎ２、ＶＰ６、ＶＣ−１、ＷＭＡ、Ｈｕｆｆｙｕｖ、Ｌａｇａｒｉｔｈ、ＭＰＧ−ｘ．Ｘｖｉｄ．ＦＦｍｐｅｇ、ｘ２６４、ＶＰ６−８、リアルビデオ、ｍｐ３等に従って、符号化してよい。符号化プロセスによって、遠隔装置上のデコーダに送るためにオプションでパッケージ化されるビデオストリームを生成する。ビデオストリームは、フレームサイズ及びフレームレートによって特徴付けられる。任意の他のフレームサイズを使用してよいが、典型的なフレームサイズは、８００ｘ６００、１２８０ｘ７２０（例えば、７２０ｐ）、１０２４ｘ７６８を含む。フレームレートは、秒あたりのビデオフレームの数である。ビデオストリームは、異なる種類のビデオフレームを含んでよい。例えば、Ｈ．２６４規格は、「Ｐ」フレームと「Ｉ」フレームを含む。Ｉフレームは、表示装置上の全てのマクロブロック／画素をリフレッシュする情報を含み、Ｐフレームは、そのサブセットをリフレッシュする情報を含む。Ｐフレームは、典型的に、Ｉフレームよりデータサイズが小さい。本明細書においては、「フレームサイズ」という語はフレーム内の画素数を指し、「フレームデータサイズ」という語は、フレームを記憶するのに必要なバイト数を指す。
【０１２２】
代替実施形態においては、ビデオソース１４３０は、カメラ等のビデオ記録装置を備える。このカメラを用いて、コンピュータゲームのビデオストリームに含むことができる遅延ビデオまたはライブビデオを生成してよい。結果として生じるビデオストリームは、オプションで、レンダリングされた画像と、静止カメラまたはビデオカメラを用いて記録された画像の両方を含む。ビデオソース１４３０は、ビデオストリームに含むために以前記録されたビデオを記憶するように構成された記憶装置も備えてよい。ビデオソース１４３０は、オブジェクト、例えば、人、の動作と位置を検出するように構成された動作または位置検出装置と、検出された動作及び／または位置に基づいて、ゲーム状態を決定、または、ビデオを生成するように構成されたロジックも備えてよい。
【０１２３】
ビデオソース１４３０は、オプションで、他のビデオ上に配置するように構成されたオーバーレイを提供するように構成される。例えば、これらのオーバーレイは、コマンドインタフェース、ログイン命令、ゲームプレイヤーへのメッセージ、他のゲームプレイヤーの画像、他のゲームプレイヤーのビデオフィード（例えば、ウェブカムビデオ）を含んでよい。タッチスクリーンインタフェースまたは視線検出インタフェースを備えるクライアント１４１０Ａの実施形態においては、オーバーレイは、仮想のキーボード、ジョイスティック、タッチパッド等を含んでよい。オーバーレイの一実施例においては、プレイヤーの音声がオーディオストリーム上に重ねられる。ビデオソース１４３０は、オプションで、１つまたは複数のオーディオソースをさらに含む。
【０１２４】
ビデオサーバシステム１４２０が複数のプレイヤーからの入力に基づいてゲーム状態を維持するように構成される実施形態においては、各プレイヤーは、ビューの位置及び方向を含む異なる視点を有してよい。ビデオソース１４３０は、オプションで、各プレイヤーに、各プレイヤーの視点に基づいて別個のビデオストリームを提供するように構成される。さらに、ビデオソース１４３０は、異なるフレームサイズ、フレームデータサイズ、及び／または、符号化を各クライアント１４１０に提供するように構成されてよい。ビデオソース１４３０は、オプションで、３Ｄビデオを提供するように構成される。
【０１２５】
Ｉ／Ｏ装置１４４５は、ビデオ、コマンド、情報のリクエスト、ゲーム状態、視線情報、装置の動き、装置の位置、ユーザの動作、クライアントＩＤ、プレイヤーＩＤ、ゲームコマンド、セキュリティ情報、音声等の情報をビデオサーバシステム１４２０が送信及び／または受信するように構成される。Ｉ／Ｏ装置１４４５は、典型的には、ネットワークカードまたはモデム等の通信ハードウェアを備える。Ｉ／Ｏ装置１４４５は、ゲームサーバ１４２５、ネットワーク１４１５、及び／または、クライアント１４１０と通信するように構成される。
【０１２６】
プロセッサ１４５０は、本明細書に記載のビデオサーバシステム１４２０の様々なコンポーネント内に含まれるロジック、例えば、ソフトウェア、を実行するように構成される。例えば、プロセッサ１４５０は、ビデオソース１４３０、ゲームサーバ１４２５、及び／または、クライアントクオリファイア（Client Qualifier）１４６０の機能を行うために、ソフトウェア命令でプログラムされてよい。ビデオサーバシステム１４２０は、オプションで、プロセッサ１４５０の複数のインスタンスを含む。プロセッサ１４５０も、ビデオサーバシステム１４２０が受信したコマンドを実行するために、または、本明細書に記載のゲームシステム１４００の様々な要素の動作を調整するために、ソフトウェア命令でプログラムされてよい。プロセッサ１４５０は、１つまたは複数のハードウェア装置を備えてよい。プロセッサ１４５０は電子プロセッサである。
【０１２７】
ストレージ１４５５は、非一時的なアナログ及び／またはデジタル記憶装置を含む。例えば、ストレージ１４５５は、ビデオフレームを記憶するように構成されたアナログ記憶装置を含んでよい。ストレージ１４５５は、コンピュータ可読デジタルストレージ、例えば、ハードドライブ、光学式ドライブ、または、半導体ストレージを含んでよい。ストレージ１４１５は、（例えば、適切なデータ構造またはファイルシステムによって）ビデオフレーム、疑似フレーム（artificial frames）、ビデオフレーム及び疑似フレームの両方を含むビデオストリーム、オーディオフレーム、オーディオストリーム等を記憶するように構成される。ストレージ１４５５は、オプションで、複数の装置に分散される。一部の実施形態においては、ストレージ１４５５は、本明細書の他の箇所に記載のビデオソース１４３０のソフトウェアコンポーネントを記憶するように構成される。これらのコンポーネントは、必要時にすぐに供給できるフォーマットで記憶されてよい。
【０１２８】
ビデオサーバシステム１４２０は、オプションでクライアントクオリファイア１４６０をさらに備える。クライアントクオリファイア１４６０は、クライアント１４１０Ａ、１４１０Ｂ等のクライアントの能力を遠隔で判定するように構成される。これらの能力は、クライアント１４１０Ａ自体の能力と、クライアント１４１０Ａとビデオサーバシステム１４２０との間の１つまたは複数の通信チャネルの能力の両方を含むことができる。例えば、クライアントクオリファイア１４６０は、ネットワーク１４１５を介して通信チャネルをテストするように構成されてよい。
【０１２９】
クライアントクオリファイア１４６０は、クライアント１４１０Ａの能力を手動または自動で判定（例えば、発見）することができる。手動の判定は、クライアント１４１０Ａのユーザと通信することと、ユーザに能力を提供するように依頼することと、を含む。例えば、一部の実施形態においては、クライアントクオリファイア１４６０は、クライアント１４１０Ａのブラウザ内に、画像、テキスト等を表示するように構成される。一実施形態においては、クライアント１４１０Ａは、ブラウザを備えるＨＭＤである。別の実施形態においては、クライアント１４１０Ａは、ブラウザを有するゲームコンソールであり、ブラウザは、ＨＭＤ上に表示されてよい。表示されたオブジェクトは、クライアント１４１０Ａのオペレーティングシステム、プロセッサ、ビデオデコーダの種類、 ネットワーク接続の種類、ディスプレイ解像度等の情報をユーザが入力することを要求する。ユーザが入力した情報は、クライアントクオリファイア１４６０に返信される。
【０１３０】
例えば、クライアント１４１０Ａ上でエージェントを実行することにより、及び／または、テストビデオをクライアント１４１０Ａに送信することにより、自動で判定してよい。エージェントは、ウェブページに埋め込まれた、または、アドオンとしてインストールされたＪＡＶＡ（登録商標）スクリプト等のコンピュータ命令を含んでよい。エージェントは、オプションで、クライアントクオリファイア１４６０によって提供される。様々な実施形態において、エージェントは、クライアント１４１０Ａの処理能力、クライアント１４１０Ａの復号及び表示能力、クライアント１４１０Ａとビデオサーバシステム１４２０の間の通信チャネルの遅延時間信頼性（lag time reliability）と帯域幅、クライアント１４１０Ａのディスプレイの種類、クライアント１４１０Ａに存在するファイヤフォール、クライアント１４１０Ａのハードウェア、クライアント１４１０Ａ上で実行されるソフトウェア、クライアント１４１０Ａ内のレジストリエントリ等を見つけることができる。
【０１３１】
クライアントクオリファイア１４６０は、ハードウェア、ファームウェア、及び／または、コンピュータ可読媒体に記憶されたソフトウェアを含む。クライアントクオリファイア１４６０は、オプションで、ビデオサーバシステム１４２０の１つまたは複数の他の要素とは別個のコンピュータ装置に配置される。例えば、一部の実施形態においては、クライアントクオリファイア１４６０は、クライアント１４１０と、ビデオサーバシステム１４２０の複数のインスタンスとの間の通信チャネルの特性を判定するように構成される。これらの実施形態においては、クライアントクオリファイアによって発見された情報を用いて、クライアント１４１０の１つにストリーミングビデオを配信するのに最も適しているのはビデオサーバシステム１４２０のどのインスタンスかを決定することができる。
【０１３２】
本発明の実施形態は、ハンドヘルドデバイス、マイクロプロセッサシステム、マイクロプロセッサベースまたはプログラム可能な家庭用電化製品、ミニコンピュータ、メインフレームコンピュータ等を含む様々なコンピュータシステム構成で実践されてよい。発明は、有線または無線ネットワークを介してリンクされる遠隔処理装置によってタスクを行う分散コンピュータ環境で実践することもできる。
【０１３３】
上記実施形態に留意して、発明は、コンピュータシステムに記憶されたデータを伴う様々なコンピュータで実施される操作を採用することができることは理解されたい。これらの操作は、物理量の物理的操作を必要とする操作である。発明の一部を形成する本明細書に記載の操作はいずれも、有用な機械操作である。発明は、これらの操作を行うデバイスまたは装置にも関する。装置は、必要な目的のために特に構築することができる。または、装置は、コンピュータに記憶されたコンピュータプログラムによって選択的に起動または構成される汎用コンピュータであってよい。詳細には、様々な汎用機械が、本明細書の教示に従って書かれたコンピュータプログラムと共に用いることができる、または、要求された操作を行うためにより専門化した装置を構築するとより便利であろう。
【０１３４】
発明は、コンピュータ可読媒体上で、コンピュータ可読コードとして具体化することもできる。コンピュータ可読媒体は、データを記憶することができる任意のデータ記憶装置で、そのデータは、後にコンピュータシステムによって読み取ることができる。コンピュータ可読媒体の例には、ハードドライブ、ネットワーク接続型ストレージ（ＮＡＳ）、リードオンリメモリ、ランダムアクセスメモリ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、及び、他の光学データ記憶装置や非光学式のデータ記憶装置が含まれる。コンピュータ可読媒体は、コンピュータ可読コードが分散して記憶、実行されるように、ネットワーク接続されたコンピュータシステムを介して分散されたコンピュータ可読有形媒体を含むことができる。
【０１３５】
方法操作を特定の順で記載したが、オーバーレイ操作の処理が所望のように行われる限り、他のハウスキーピング操作を操作と操作の間に行ってよく、操作は、少し時間を違えて生じるように調整されてよく、または、操作は、処理に関連付けられた様々な間隔で処理操作が行われるのを可能にするシステムに分散されてよいことは理解されたい。
【０１３６】
上記発明は理解しやすいように詳細に記載したが、請求項の範囲内で一定の変更及び修正を行ってよいことは明らかである。従って、本実施形態は、例証的で、非制限的であるとみなすべきで、かつ、発明は、本明細書に記載の詳細に制限されず、請求項の範囲及び同等物の範囲内で修正してよい。
【図１】
2018143777.tif 000003
【図２】
2018143777.tif 000004
【図３】
2018143777.tif 000005
【図４】
2018143777.tif 000006
【図５Ａ】
2018143777.tif 000007
【図５Ｂ】
2018143777.tif 000008
【図５Ｃ】
2018143777.tif 000009
【図５Ｄ】
2018143777.tif 000010
【図６】
2018143777.tif 000011
【図７】
2018143777.tif 000012
【図８】
2018143777.tif 000013
【図９】
2018143777.tif 000014
【図１０】
2018143777.tif 000015
【図１１】
2018143777.tif 000016