(57)【要約】ヘッドマウントディスプレイ（ＨＭＤ）のスクリーン上でオブジェクトを提示する方法及びシステムは、ＨＭＤを身に着けているユーザに近接した実世界環境の画像を受信することを含む。画像は、ＨＭＤの１つ以上の前向きカメラから受信され、ＨＭＤ内のプロセッサによってＨＭＤのスクリーン上でレンダリングするために処理される。ＨＭＤを身に着けているユーザの注視方向は、ユーザの片目又は各々の目に向けられたＨＭＤの１つ以上の注視検出カメラを使用して検出される。前向きカメラによってキャプチャされた画像は、ユーザの注視方向と合致する実世界環境内でキャプチャされたオブジェクトを識別するように分析され、オブジェクトの画像は、ユーザに提示されるときに、オブジェクトが焦点から外れたように見えるようにする第１の仮想距離においてレンダリングされる。オブジェクトに焦点を合わせるように１つ以上の前向きカメラのレンズに対するズーム比を調節するための信号が生成される。ズーム比の調節は、ユーザによってオブジェクトを識別可能にする第２の仮想距離において、オブジェクトの画像をＨＭＤのスクリーン上で提示させる。【選択図】図３
2019531550.tif 000002
【特許請求の範囲】
【請求項１】
ヘッドマウントディスプレイ（ＨＭＤ）によって、スクリーン上の実世界環境からのオブジェクトを提示する方法であって、
前記ＨＭＤを身に着けているユーザに近接した前記実世界環境の画像を受信し、前記画像は、前記ＨＭＤの１つ以上の前向きカメラから受信され、前記スクリーン上でレンダリングするために前記ＨＭＤのプロセッサによって処理され、
前記ユーザの片目又は各々の目に向けられた前記ＨＭＤの１つ以上の注視検出カメラを使用して、前記ＨＭＤを身に着けている前記ユーザの注視方向を検出し、
前記ユーザの前記注視方向と相関付ける前記実世界環境の前記画像内でキャプチャされたオブジェクトを識別するように前記画像を分析し、前記識別された画像は、前記ユーザに対して前記オブジェクトが焦点から外れたように見えるようにする第１の仮想距離において現在レンダリングされており、
前記オブジェクトの画像に焦点を合わせるように前記１つ以上の前向きカメラのレンズに対するズーム比を調節するための信号を生成し、ズーム比の調節では、前記ユーザによって前記オブジェクトを識別可能にする第２の仮想距離において、前記ＨＭＤによって前記オブジェクトの前記画像を前記スクリーン上で提示させる、方法。
【請求項２】
前記信号は、前記ユーザの注視が少なくとも所定の時間長の間に前記オブジェクトに向けられていたと判定した後に生成される、請求項１に記載の方法。
【請求項３】
所定の期間の間に前記オブジェクトに焦点が合わされ、前記所定の期間が満了すると、前記実世界環境からの画像をレンダリングすることを再開する、請求項１に記載の方法。
【請求項４】
前記ズーム比は、前記第２の仮想距離においてレンダリングされるとき、前記オブジェクトの前記画像が前記ユーザに対して識別可能となるように、前記ＨＭＤを身に着けている前記ユーザの視覚特性を考慮して調節される、請求項１に記載の方法。
【請求項５】
前記ズーム比を調節するための前記信号は、前記オブジェクトの前記画像が前記ＨＭＤの前記１つ以上の前向きカメラによってキャプチャされる深さへの調節を生じさせるように、前記１つ以上の前向きカメラにおけるレンズの開口設定を調節するための信号を含む、請求項１に記載の方法。
【請求項６】
前記ズーム比を調節するための前記信号は、前記実世界環境内の前記オブジェクトの前記画像をキャプチャするときに前記１つ以上の前向きカメラのレンズの焦点長さを調節するための信号を含み、前記レンズの前記焦点長さへの前記調節は、前記オブジェクトのズームインを生じさせる、請求項１に記載の方法。
【請求項７】
前記ズーム比を調節するための前記信号は更に、ズームの速度を制御するための信号を含み、ズームの前記速度は、キャプチャされた前記実世界環境の前記画像のタイプ、前記オブジェクトの属性、又は前記ユーザに基づいて制御される、請求項１に記載の方法。
【請求項８】
前記信号は更に、前記スクリーン上でレンダリングされるときに前記オブジェクトの前記画像の輝度レベルを調節するための信号を含む、請求項１に記載の方法。
【請求項９】
前記ＨＭＤの前記前向きカメラによってキャプチャされた前記画像を使用して、前記実世界環境の３次元デジタルモデルを構築することを更に含み、前記３次元デジタルモデルは、前記画像の複数のフレーム内でキャプチャされた異なるポイントを追跡し、前記異なるポイントを３次元空間に相関付けることによって構築される、請求項１に記載の方法。
【請求項１０】
前記オブジェクトを識別することは更に、前記注視方向に一致する前記画像内でキャプチャされた前記オブジェクトの輪郭を描くことと、前記ＨＭＤを身に着けている前記ユーザから前記オブジェクトの識別に関する確認を受信することとを含む、請求項１に記載の方法。
【請求項１１】
前記確認は、前記ＨＭＤ上のボタン押下、前記ＨＭＤに通信可能に接続されたコントローラ上のボタン押下、前記ＨＭＤの前記スクリーン上でレンダリングされたユーザインタフェース内で提供されたオプションの選択、音声コマンド、ジェスチャ確認、又はそれらの２つ以上の組み合わせのうちのいずれか１つを通じて取得される、請求項１０に記載の方法。
【請求項１２】
前記オブジェクトの前記確認は、前記オブジェクトと関連付けられたタグに基づいている、請求項１０に記載の方法。
【請求項１３】
前記ＨＭＤによって提示されたビューを第１の部分及び第２の部分に分割することを更に含み、前記オブジェクトの前記画像は、前記第１の部分内で提示されたズーム比に調節され、前記実世界環境の前記画像は、前記第２の部分内でレンダリングされる、請求項１に記載の方法。
【請求項１４】
前記第１の部分は、第１の表示面上で定義され、前記第２の部分は、第２の表示面上で定義される、請求項１３に記載の方法。
【請求項１５】
前記第１の表示面は、前記実世界環境の前記画像が前記ＨＭＤによって投影される外部表示面であり、前記第２の表示面は、前記ＨＭＤのディスプレイスクリーンである、請求項１３に記載の方法。
【請求項１６】
ヘッドマウントディスプレイ（ＨＭＤ）のスクリーン上でレンダリングされた実世界環境からのオブジェクトを提示する方法であって、
前記ＨＭＤを身に着けているユーザに近接した実世界環境の画像を受信し、前記画像は、前記ＨＭＤの１つ以上の前向きカメラから受信され、前記ＨＭＤの前記スクリーン上でレンダリングするために前記ＨＭＤ内のプロセッサによって処理され、
第１の仮想距離においてレンダリングされた前記実世界環境の前記画像内でキャプチャされたオブジェクトを識別し、前記第１の仮想距離は、前記ユーザに対して前記オブジェクトが焦点から外れたように見えるようにし、
前記オブジェクトが前記ユーザによって識別可能であるように、前記オブジェクトに焦点を合わせるように前記１つ以上の前向きカメラのズーム比を調節するための信号を生成する、方法。
【請求項１７】
前記オブジェクトは、前記ＨＭＤにおいて提供された視覚的又は聴覚的通知、前記ＨＭＤの前記スクリーン上で提供された視覚的刺激、又は所定のイベントの発生に基づいて識別される、請求項１６に記載の方法。
【請求項１８】
ヘッドマウントディスプレイ（ＨＭＤ）のスクリーン上でオブジェクトをレンダリングする方法であって、
前記ＨＭＤの前記スクリーン上でレンダリングするために仮想現実（ＶＲ）シーンからの画像を受信し、
前記ＨＭＤの前記スクリーン上でレンダリングされた前記画像からのオブジェクトの選択を検出し、前記オブジェクトは、前記ＨＭＤを身に着けているユーザに対して前記オブジェクトが焦点から外れたように見えるようにする第１の仮想距離において現在レンダリングされ、
前記オブジェクトに近接した前記ＶＲシーン内の新たな所定の領域を識別し、前記新たな所定の領域は、前記ＶＲシーンを見る間、前記オブジェクトに関連して前記ユーザについての移動の区域を定義するように識別され、
前記ユーザを前記ＶＲシーン内で第１の所定の領域から前記新たな所定の領域に仮想的テレポートするための信号を生成し、前記ユーザの前記仮想的テレポートでは、前記ユーザによって前記オブジェクトを識別可能にする第２の仮想距離において、前記オブジェクトを前記ＨＭＤの前記スクリーン上で提示させる、方法。
【請求項１９】
前記オブジェクトは、前記仮想的テレポートのために前記ＶＲシーンの前記画像内で識別された複数のオブジェクトのうちの１つであり、前記オブジェクトは、前記ＨＭＤ上で提供されたオプションを使用して、又は前記ＨＭＤに通信可能に接続されたコントローラ上のボタンを使用して選択される、請求項１８に記載の方法。
【請求項２０】
前記オブジェクトは、前記ＨＭＤの１つ以上の注視検出カメラを使用して前記ユーザの注視方向を検出することによって選択される、請求項１８に記載の方法。
【請求項２１】
前記オブジェクトは、前記ユーザの注視方向が少なくとも所定の期間の間、前記オブジェクト上にあったと判定した後に選択される、請求項２０に記載の方法。
【請求項２２】
前記信号は、前記画像の画像特性を調節するためのコマンドを含み、前記画像特性は、前記オブジェクト上でデジタル的にズームインするために使用される、請求項１８に記載の方法。
【請求項２３】
前記仮想現実（ＶＲ）シーンの前記画像は、前記ＨＭＤに通信可能に接続されたコンピュータによって提供される、請求項１８に記載の方法。
【請求項２４】
前記第１の所定の領域及び前記新たな所定の領域は、前記画像内で提示された前記ＶＲシーンの地形属性に基づいて定義される、請求項１８に記載の方法。
【請求項２５】
前記第１の所定の領域及び前記新たな所定の領域は、前記ＨＭＤを身に着けている前記ユーザが操作している利用可能な物理空間にマッピングされる、請求項１８に記載の方法。
【請求項２６】
前記利用可能な物理空間内の前記ユーザの移動を、前記第１の所定の領域及び前記新たな所定の領域内での移動に相関付けることを更に含む、請求項２５に記載の方法。
【請求項２７】
前記ユーザが操作している前記物理世界内の異なるオブジェクトの輪郭を更に提供し、前記輪郭は、前記ＶＲシーンの前記画像上のオーバレイとして提供され、前記オーバレイは、前記ＶＲシーン内の前記第１の所定の領域及び前記新たな所定の領域に関連していて前記物理世界内のユーザの位置の視覚的インジケーションを提供し、前記物理世界内のユーザの移動は、前記ＶＲシーンのビューにおける対応する変化を生じさせる、請求項２５に記載の方法。
【請求項２８】
前記ユーザ、前記ＨＭＤ、又は前記ユーザによって操作されるコントローラが前記オブジェクトに近接した前記領域の予め設定された境界に近づくにつれて、前記ユーザに警告するための信号を提供することを更に含む、請求項２７に記載の方法。
【請求項２９】
前記信号は、視覚的信号であり、前記視覚的信号には、前記物理世界内の前記異なるオブジェクトの前記輪郭の強度の増大、及び前記ＶＲシーンの前記画像の強度の減少が含まれ、前記強度の増大は、前記ユーザが前記予め設定された境界に近づいていることを警告する視覚的インジケータとして提供される、請求項２８に記載の方法。
【請求項３０】
前記信号は、音声信号であり、前記音声信号は、前記ユーザが前記物理世界内の前記領域の前記予め設定された境界に近づくにつれて強度が増大するように設計される、請求項２８に記載の方法。
【請求項３１】
前記ユーザが前記ＶＲシーン内の前記オブジェクトに近接した前記領域内の周囲を移動するにつれて、前記ＶＲシーン内の前記オブジェクト及び前記オブジェクトを囲む領域のビューを調節することを更に含む、請求項１８に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、ヘッドマウントディスプレイ上で拡張現実を使用してオブジェクトを提示するシステム及び方法に関する。
【背景技術】
【０００２】
コンピューティング及びビデオゲーミング産業が数年にわたって多くの変更を経験してきた。計算能力が拡大するにつれて、ビデオゲームアプリケーションなどの様々なインタラクティブアプリケーションの開発者は、計算能力におけるそれらの増大を利用したアプリケーションソフトウェアを作り出してきた。この目的のために、ビデオゲーム開発者などのアプリケーション開発者は、非常に現実的なゲームプレイ経験を生じさせるように、ユーザとゲーミングシステムとの間のインタラクションあるいは対話を増大させるために洗練された操作を組み込んだゲームを開発してきた。
【０００３】
一般的に言えば、ジェスチャ入力は、コンピューティングシステム、ビデオゲームコンソール、スマート機器などの電子デバイスに、プレイヤによって行われ、電子デバイスによってキャプチャされた何らかのジェスチャに応答させることを指す。よりリッチなインタラクティブ体験を達成する１つの方法は、ジェスチャ入力を提供するために無線ゲームコントローラを使用することである。プレイヤの移動を追跡し、プレイヤによって提供されたジェスチャ入力を判定し、ゲームの状態に影響を与えるための入力としてそれらの移動及びジェスチャ入力を使用するために、無線ゲームコントローラの移動は、ゲーミングシステムによって追跡される。
【０００４】
より没入できるインタラクティブ体験を達成するための別の方法は、ヘッドマウントディスプレイを使用することである。ヘッドマウントディスプレイ（ＨＭＤ）は、プレイヤによって身に着けられ、ＨＭＤのディスプレイスクリーン上で、仮想シーンのビューなどの様々なグラフィックを提示するように構成されることがある。ヘッドマウントディスプレイのスクリーン上で提示されたグラフィックは、プレイヤの視界の大部分又は全てさえもカバーすることができる。ヘッドマウントディスプレイは、実世界シーンのビューを遮断することによって、プレイヤに、視覚的に没入できる経験を提供することができる。
【０００５】
いつでもプレイヤに対する没入できる経験を更に高めるために、ＨＭＤは、例えば、コンピュータ／コンピューティングデバイスによって生成された仮想ゲームのゲームシーン、又は実世界環境、若しくは実世界環境及び仮想ゲームシーンの両方の組み合わせからのライブ映像をまさにレンダリングするように構成されることがある。しかしながら、ＨＭＤのディスプレイスクリーンにおいてレンダリングされた実世界環境の画像内で提供された全てのオブジェクト又は詳細は、プレイヤによって完全に識別可能でないことがある。
【０００６】
それは、本発明の実施形態が生まれるこのコンテキスト内にある。
【発明の概要】
【０００７】
本発明の実施形態は、ユーザが見るためのヘッドマウントディスプレイ（ＨＭＤ）のスクリーン上でオブジェクトに焦点を合わせることによって、実世界環境からのオブジェクトを提示するために使用される方法、システム、及びコンピュータ可読媒体を開示する。一部の実装態様では、ＨＭＤは、実世界環境又は仮想現実（ＶＲ）シーンからの画像を受信し、ＨＭＤのスクリーン上で画像をレンダリングするように構成される。画像をレンダリングする間、ＨＭＤ内の１つ以上のセンサによって提供された情報は、ＨＭＤを身に着けているユーザの注視方向（gaze direction: GD）を検出するために使用される。注視方向を検出したことに応答して、ユーザの注視方向と合致する実世界環境の画像からのオブジェクトが識別され、ＨＭＤに配置された１つ以上の前向きカメラのレンズに対するズーム比を調節するための信号が生成される。ズーム比の調節は、ＨＭＤのスクリーン上でレンダリングされるとき、オブジェクトを含む実世界環境の画像に焦点を合わせさせる。一部の実装態様では、ＨＭＤは、ＨＭＤのレンズに対するズーム比を判定するときに、ユーザの目の視覚特性を考慮してもよい。一部の実装態様では、センサは、ＨＭＤのレンズに対するズーム比を調節するための信号を生成する前に、少なくとも所定の閾値期間の間にユーザがオブジェクトを注視しているかどうかを判定する。一部の実装態様では、画像のズーム比を調節するための命令を含む信号は、オブジェクトの画像の光学ズームを可能にするようにレンズの光学設定を調節するための情報を含んでもよい。他の実装態様では、ズーム比を調節するための命令を含む信号は、画像のデジタルズームを実行するための命令を含んでもよい。よって、レンダリングされている画像のタイプに応じて、ズーム比は、光学ズーム又はデジタルズームのいずれかを可能にするための命令又は情報を含んでもよい。
【０００８】
実装態様は、実世界環境の画像内でキャプチャされた特定のポイント又はオブジェクトの特定の１つが操作され、ユーザに提示されることを可能にし、それによって、ユーザが特定のポイント又はオブジェクトを明確に区別することができるようにすることによって、実世界環境の拡張現実を提示する方法を提供する。実施形態は、ＶＲシーンの特定のオブジェクトに焦点を合わせることによって、ＨＭＤのスクリーン上でレンダリングされたＶＲシーンの拡張されたビューを提示するように拡大されてもよい。一部の実施形態では、生成された信号は、ズーム比を調節するときにユーザの目の視覚特性を考慮してもよい。実世界環境を拡張し、又はＶＲシーンを拡張することは、ＨＭＤを身に着けているユーザが、満足する没入できる経験を有するようにＨＭＤのスクリーン上でレンダリングされている様々なオブジェクト又はシーンの一部を区別することを可能にする。
【０００９】
ＶＲシーンからの画像は通常、予め記録された画像／ビデオである。一部の実施形態では、ＶＲシーンからの画像がＨＭＤにおいてレンダリングされているとき、ＶＲシーンの画像を見ていた他のユーザからの履歴的な入力は、ズーム比を調節するための信号を生成するときに考慮されてもよい。例えば、一部の実施形態では、他のユーザからの履歴的な入力は、他のユーザに目眩、乗り物酔いなどを経験させた特定のズーム比設定を判定するために、ＶＲシーンからのコンテンツと相関付けられてもよい。この情報は、そのようなコンテンツをレンダリングするときに、１つ以上の前向きカメラのレンズに対するズーム比調節を改善し、それによって、ユーザは、ＶＲシーンからの画像がＨＭＤを身に着けているユーザに提示されるときに、乗り物酔い、目眩などを経験しないようにするために使用されてもよい。一部の実施形態では、特定のズーム比設定によりコンテンツを見ることを可能にするために、そのような改善を無効にするオプションがユーザ（例えばスリル感を好む人）に提供されてもよい
【００１０】
本発明の実施形態は、画像キャプチャデバイスのレンズのズーム比を調節することによりズームインされる、ＶＲシーン又は実世界環境の画像の特定の部分をＨＭＤが提示することを可能にすることによって、ＨＭＤが仮想双眼鏡としての役割を果たすことを可能にする。ＨＭＤの様々なコントローラ及びセンサからの入力は、ユーザがコンテンツを十分に明確に見ることを可能にするように１つ以上の前向きカメラのレンズの特定の設定を動的に活性化又は非活性化するために使用されてもよい。代替的な実装態様では、画像の特定の特徴又は部分は、特定の特徴を含むオブジェクト又は特定の部分内のオブジェクトに焦点を合わせることを可能にするように調節されてもよい。一部の実装態様では、ＨＭＤは、ユーザをＶＲシーン又は実世界環境内の１つの位置から別の位置に仮想的にテレポートする役割を果たし、そのようなテレポートは、ＶＲシーン又は拡張現実（ＡＲ）世界のユーザの経験を拡張するために行われる。例えば、ＶＲシーンの特定の領域又は部分は、ユーザが特定の領域又は部分に近接した位置にテレポートされると見せるように焦点が合わせられてもよい。
【００１１】
１つの実施形態では、ヘッドマウントディスプレイ（ＨＭＤ）のスクリーン上の実世界環境からのオブジェクトを提示する方法が提供される。方法は、ＨＭＤを身に着けているユーザに近接した実世界環境の画像を受信することを含む。画像は、ＨＭＤの１つ以上の前向きカメラから受信され、ＨＭＤのスクリーン上でレンダリングするためにＨＭＤ内のプロセッサによって処理される。ＨＭＤを身に着けているユーザの注視方向は、ユーザの片目又は各々の目に向けられたＨＭＤの１つ以上の注視検出カメラを使用して検出される。前向きカメラによってキャプチャされた画像は、ユーザの注視方向と相関付ける実世界環境内でキャプチャされたオブジェクトを識別するように分析される。オブジェクトの画像は、ユーザに提示されるときにオブジェクトが焦点から外れたように見えるようにする第１の仮想距離においてレンダリングされる。オブジェクトに焦点を合わせるように１つ以上の前向きカメラのレンズに対するズーム比を調節するための信号が生成される。ズーム比の調節は、ユーザによってオブジェクトを識別可能にする第２の仮想距離において、オブジェクトの画像をＨＭＤのスクリーン上で提示させる。
【００１２】
一部の実装態様では、信号は、ユーザの注視方向が所定の時間長の間にオブジェクトに向けられていると判定した後に生成される。
【００１３】
一部の実装態様では、所定の期間の間にオブジェクトに焦点が合わされる。所定の期間が満了すると、実世界環境からの画像がレンダリングされる。
【００１４】
一部の実装態様では、ズーム比は、ＨＭＤを身に着けているユーザの目の視覚特性を考慮するように調節される。
【００１５】
一部の実装態様では、ズーム比を調節するための信号は、オブジェクトの画像がＨＭＤの１つ以上の前向きカメラによってキャプチャされる深さへの調節を生じさせるように、１つ以上の前向きカメラにおけるレンズの開口設定を調節するための信号を含む。
【００１６】
一部の実装態様では、ズーム比を調節するための信号は、実世界環境内のオブジェクトの画像をキャプチャするときに、１つ以上の前向きカメラのレンズの焦点長さを調節するための信号を含む。レンズの焦点長さへの調節は、オブジェクトのズームインを生じさせる。
【００１７】
一部の実装態様では、ズーム比を調節するための信号は、ズームの速度を制御するための信号を含み、ズームの速度は、キャプチャされる実世界環境の画像のタイプ、又はユーザに基づいて制御される。
【００１８】
一部の実装態様では、ズーム比を調節するための信号は更に、ＨＭＤのスクリーンの輝度レベルを調節するための信号を含む。
【００１９】
一部の実装態様では、実世界環境の３次元デジタルモデルは、ＨＭＤの前向きカメラによってキャプチャされた画像を使用して構築される。３次元デジタルモデルは、１つよりも多いカメラを使用して画像の複数のフレーム内でキャプチャされた異なるポイントを追跡し、カメラによってキャプチャされた異なるポイントを３次元空間に相関付けることによって構築される。
【００２０】
一部の実装態様では、オブジェクトを識別することは、注視方向に一致する画像内でキャプチャされたオブジェクトの輪郭を描くことと、ＨＭＤを身に着けているユーザからオブジェクトの確認を受信することとを含む。
【００２１】
一部の実装態様では、ヘッドマウントディスプレイ（ＨＭＤ）のスクリーン上でオブジェクトをレンダリングする方法が開示される。方法は、ＨＭＤのスクリーン上でレンダリングするために仮想現実（ＶＲ）シーンからの画像を受信することを含む。ＨＭＤのスクリーン上でレンダリングされたＶＲシーンの画像からのオブジェクトの選択が検出される。選択されたオブジェクトは、ＨＭＤを身に着けているユーザに対してオブジェクトが焦点から外れたように見えるようにする第１の仮想距離においてレンダリングされると判定される。オブジェクトに近接したＶＲシーン内の領域が識別される。識別された領域は、オブジェクトを見るときにオブジェクトに関連するユーザについての移動の自由を定義する。選択されたオブジェクトに近接した領域にユーザを仮想的にテレポートするための信号が生成される。ユーザを仮想的にテレポートすることは、ユーザによってオブジェクトを識別可能にする第２の仮想距離において、オブジェクトをＨＭＤのスクリーン上で提示させる。
【００２２】
本発明の他の態様及び利点は、本発明の原理を例として例示する添付図面を併用して、以下の詳細な説明から明らかになるであろう。
【００２３】
添付図面と併用される以下の説明を参照することによって、本発明と共にそれらの更なる利点を最良に理解することができる。
【図面の簡単な説明】
【００２４】
【図１】本発明の一実施形態に従った、実世界又は仮想世界からキャプチャされたオブジェクトに焦点を合わせる際に使用されるヘッドマウントディスプレイの通信アーキテクチャの簡易ブロック図を例示する。
【図２】本発明の一実施形態に従った、ＨＭＤの１つ以上の前向きカメラのズーム比を調節するための信号を生成する際に使用されるＨＭＤのモジュールの特定の１つを例示する。
【図３】本発明の一実施形態に従った、ＨＭＤを身に着けているユーザに識別可能にするように実世界環境からのオブジェクトの画像を調節するために使用されるシステムの例示的なアーキテクチャを例示する。
【図４Ａ】本発明の一部の実施形態における、ユーザの注視方向を検出したことに応答して、オブジェクトに焦点を合わせることを含む様々な段階を例示する。
【図４Ｂ】本発明の一部の実施形態における、ユーザの注視方向を検出したことに応答して、オブジェクトに焦点を合わせることを含む様々な段階を例示する。
【図４Ｃ】本発明の一部の実施形態における、ユーザの注視方向を検出したことに応答して、オブジェクトに焦点を合わせることを含む様々な段階を例示する。
【図５Ａ】本発明の一部の実施形態における、ＨＭＤのスクリーン上で提示されており、ユーザの検出された注視方向に基づいて、ＨＭＤによってキャプチャされた実世界環境内の異なる位置にユーザをテレポートしている実世界環境の画像を例示する。
【図５Ｂ】本発明の一部の実施形態における、ＨＭＤのスクリーン上で提示されており、ユーザの検出された注視方向に基づいて、ＨＭＤによってキャプチャされた実世界環境内の異なる位置にユーザをテレポートしている実世界環境の画像を例示する。
【図６】本発明の一部の実施形態における、実世界環境又は仮想世界シーンの拡張したビューの提示の間のスクリーンの遷移のグラフィカル表現を例示する。
【図７】本発明の一実施形態に従った、実世界環境内のオブジェクト又は仮想シーンからのオブジェクトの画像を提供するために使用される方法の動作フローを例示する。
【図８】本発明の一実施形態に従った、地理的に分散され、ネットワークを介して接続されたユーザに情報コンテンツ及びサービスを配信するための例示的な情報サービスプロバイダアーキテクチャを例示する。
【図９】本発明の様々な実施形態に従った、例示的なゲームシステムの簡易ブロック図を例示する。
【発明を実施するための形態】
【００２５】
以下の説明では、本発明の完全な理解を提供するために、多数の特定の詳細が示される。しかしながら、本発明がそれらの特定の詳細の一部又は全てなしに実施されてもよいことが当業者にとって明らかであろう。他の例では、本発明を曖昧にしないために、公知の処理ステップは詳細に説明されない。
【００２６】
様々な実装態様に従って、ヘッドマウントディスプレイ（ＨＭＤ）を身に着けているユーザは、ＨＭＤのスクリーン上で実世界環境又は仮想現実（ＶＲ）シーンの画像が提供されてもよい。実世界環境の画像は、ＨＭＤの１つ以上の前向きカメラによってキャプチャされてもよい。代わりに、ＶＲシーンからの画像は、ビデオゲームの一部であってもよく、又はＨＭＤに通信可能に接続されたコンピューティングデバイスから伝送された予め記録されたビデオであってもよい。ＨＭＤ内の様々な構成要素（例えば、センサ、カメラなど）は、ＨＭＤを身に着けているユーザの視線方向あるいは注視方向を検出するために使用される。ユーザの注視方向は、ユーザに関心のある画像内のオブジェクトであり、又はユーザの注意を捉えた画像内のオブジェクトを識別するために使用される。オブジェクト内のユーザの連続した関心を検出すると、ＨＭＤの光学素子を調節して光学ズームを実行し、又はデジタルズームを介して画像を調節し、それによって、ユーザに関心があり、又はユーザの注意を捉えたオブジェクトに焦点が合わされるようにするための信号がＨＭＤのプロセッサによって生成される。
【００２７】
一部の実装態様では、ＨＭＤは、ユーザの関心を捉えたオブジェクト、又は領域若しくはシーンにより近い領域にＨＭＤを身に着けているユーザが動的にテレポートされたと見せるようにするように、画像がスクリーン上でどのようにレンダリングされるかを調節することによって仮想テレポータとしての役割を果たす。ユーザのテレポート又は遷移の速度は、レンダリングされているコンテンツのタイプに依存することがあり、また、そのような遷移がユーザにいずれの苦痛を生じさせないことを保証するように調節されてもよい。ユーザがオブジェクト又はシーンにより近い領域に仮想的に遷移すると、ユーザは、コントローラを使用して、又はジェスチャを通じて入力を提供してもよく、物理又は仮想世界内で提供されたそのような入力は、ＨＭＤのスクリーン上でレンダリングされているコンテンツを調節するために解釈及び使用される。一部の実装態様では、オブジェクトにより近い領域は、物理環境と相関付けられ、物理環境内で、ユーザはＨＭＤを操作する。そのような実施形態では、ユーザがそれにテレポートされたオブジェクトにより近い領域の境界は、ユーザの物理世界環境の範囲と相関付けられる。ユーザがＨＭＤ上でレンダリングされた画像とインタラクションを行うにつれて、そのようなインタラクションは、ＨＭＤシステムによって実世界環境と関連して解釈され、適切なフィードバックがユーザに提供される。例えば、テレポートすることがシーンの縁（例えば、仮想崖、仮想ビルディング、物理壁、実世界の障害物の縁）にあるようにユーザをさせ、又は潜在的にユーザに悪影響を与えることがあり、若しくはユーザに混乱を感じさせることがある状況にユーザをさせる場合、フィードバックは、適切な警告を提供してもよい。フィードバックは、視覚形式、音声形式、触覚形式、テキスト形式、光学形式、又はそれらのいずれかの組み合わせにおいて提供されてもよい。
【００２８】
本発明の全体的な理解と共に、様々な図面を参照して特定の実施形態が説明される。本開示において説明される様々な実施形態は、本明細書で説明される特定の詳細の一部又は全てなしに実施されてもよいことに留意されるべきである。他の例では、本開示において説明される様々な実施形態を不必要に曖昧にしないために、公知の処理動作は詳細に説明されない。
【００２９】
図１は、様々な実施形態を実装するために使用されるシステム１００の例示的な構成の実施形態である。システムは、ユーザの頭部上で身に着けられたヘッドマウントディスプレイ（ＨＭＤ）１０４、及びコンピュータ１７２を含む。一部の実装態様では、システムはまた、ユーザがＨＭＤ１０４のディスプレイスクリーン上でレンダリングするために提供されたコンテンツとインタラクションを行い、ユーザ入力を生成することを可能にするためのハンドヘルドコントローラ（ＨＨＣ）１０６を含んでもよい。様々な実装態様では、コンピュータ１７２は、汎用コンピュータ、特殊目的コンピュータ、ゲームコンソール、携帯電話、タブレットデバイス、又はＨＭＤ１０４のディスプレイスクリーン上でレンダリングするためのコンテンツを提供する、ビデオゲームなどのインタラクティブアプリケーションの１つ以上の部分を実行するように構成された他のそのようなデバイスであってもよい。インタラクティブアプリケーションは、複数のユーザによってプレイされるマルチユーザゲームアプリケーション１１７、又はユーザによってプレイされるシングルユーザゲームアプリケーションであってもよい。一部の実施形態では、ゲームアプリケーションの少なくとも部分１１７ｂは、コンピュータ上で実行している。そのような実施形態では、インタラクティブゲームアプリケーションのいずれかの残りの部分１１７ａは、ゲームクラウドシステム１０２などのクラウドシステム、例えば、１つ以上の仮想マシン（ＶＭ）上で実行されてもよく、そこでは、ゲームコンテンツ及びユーザインタラクションがインターネットなどのネットワーク１１０を通じて交換される。一部の実施形態では、コンピュータ１７２は、ゲームクラウドシステム１０２の一部であってもよく、ＨＭＤ及びハンドヘルドコントローラ（ＨＨＣ）は、ネットワーク１１０を介してゲームクラウドシステム１０２に配置されたコンピュータと直接通信する。そのような実施形態では、インタラクティブアプリケーションの一部は、ゲームクラウドシステム上でコンピュータによって実行され、インタラクティブアプリケーションの残りの部分は、ＨＭＤ１０４上で実行される。
【００３０】
ＨＭＤ１０４は、ユーザの頭部上で直接身に着けられ、又はヘルメットの一部として身に着けられたデバイスである。ＨＭＤ１０４は、ユーザの片目又は各々の目の前にある小型ディスプレイ光学、例えば、レンズ、眼鏡、導波管を有する。一部の実施形態では、シーン、例えば、仮想シーン、拡張仮想現実シーン、拡張実世界環境などは、ＨＭＤのディスプレイスクリーン上で表示され、ユーザの片目又は各々の目の前で提供されたディスプレイ光学を通じて見られる。ディスプレイ光学がユーザの各々の目の前にある例では、両目が１つのシーンを見る。
【００３１】
一部の実施形態では、ＨＭＤ１０４は、コンピュータ及び／又はゲームクラウドシステムなどのクラウドシステム上で実行するアプリケーションからのビデオ出力を受信及びレンダリングすることが可能である。様々な実施形態では、ＨＨＣ及び／又はＨＭＤは、これが有線接続よりも大きなＨＨＣ及び／又はＨＭＤの移動の自由を提供するので、コンピュータと無線で通信する。代替的な実施形態では、ＨＨＣ及び／又はＨＭＤは、有線接続を通じてコンピュータと通信する。
【００３２】
ＨＨＣ１０６は、ボタン、慣性センサ、追跡可能ＬＥＤライト、タッチスクリーン、入力制御を有するジョイスティック、方向性パッド、トリガ、タッチパッド、タッチスクリーンなどの様々な特徴のいずれかを含んでもよく、ハンドジェスチャ、発声入力、又はインタラクティブアプリケーションに入力を提供するための他のタイプの入力機構を検出及び解釈するための回路／ロジックを有してもよい。更に、ＨＨＣは、コントローラを移動させることによって、ユーザとインタラクティブプログラムとのインタフェースとなって、インタラクティブプログラムへの入力を可能にするモーションコントローラであってもよい。
【００３３】
同じように、ＨＭＤ１０４は、ＨＭＤを移動させることによって、ユーザがインタラクティブアプリケーションとインタフェースし、インタラクティブアプリケーションに入力を提供することを可能にするユーザ入力回路を含んでもよい。ＨＭＤ及び／又はＨＭＤに通信可能に結合されたモーションコントローラの位置及び移動を検出するため様々な技術が採用されてもよい。例えば、ＨＭＤのモーションコントローラ及び／又はユーザ入力回路は、加速度計、ジャイロスコープ、及び磁気計などの様々なタイプの慣性センサ回路を含んでもよい。一部の実施形態では、モーションコントローラは、グローバルポジショニングシステム（ＧＰＳ）、コンパスなどを含んでもよい。一部の実施形態では、加速度計は、６軸低待ち時間加速度計である。一部の実施形態では、モーションコントローラ及び／又はユーザ入力回路は、画像キャプチャデバイスを使用して追跡することができる、１つ以上の固定された参照オブジェクト（他に、「指標素子」と称される）、例えば、発光ダイオード（ＬＥＤ）、色付きポイント、光反射器などを含むことができる。例えば、固定された参照オブジェクトの画像は、ＨＭＤを身に着けているユーザに対向し、ユーザ、ＨＭＤ、及び／又はＨＨＣの位置を追跡するように配置されたシステムの１つ以上のデジタルカメラ（図示せず）によってキャプチャされる。ユーザのジェスチャアクション及び移動、ＨＭＤ及び／又はＨＨＣはまた、デジタルカメラによってキャプチャされる。一部の実施形態では、デジタルカメラは、単一の電荷結合素子（ＣＣＤ）、ＬＥＤインジケータ、及びハードウェアに基づくリアルタイムデータ圧縮及び符号化装置を更に含むビデオカメラを含み、それによって、圧縮されたビデオデータを、画像内を基礎にしたＭｏｔｉｏｎ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔ  Ｇｒｏｕｐ（ＭＰＥＧ）標準フォーマットなどの適切なフォーマットにおいて伝送することができる。ユーザの位置及び移動、モーションコントローラ及び／又はＨＭＤは、１つ以上のデジタルカメラによってキャプチャされた画像の分析を通じて判定されてもよい。
【００３４】
１つの実施形態では、ＨＭＤ１０４は、インターネット１１０と通信するためのルータ１５２を含む。代替的な実施形態では、ＨＭＤ１０４は、ＨＭＤ１０４の外部にあるルータ１５２を使用して、インターネット１１０を通じてクラウドシステムと通信してもよい。一部の実施形態では、ゲームクラウド１０２は、本明細書でゲームクラウドシステムと称される。ＨＭＤ１０４は、ヘルメット上にユーザが置いているのと同様の方式でユーザによって頭部に置かれ、それによって、ＨＭＤ１０４のレンズは、ユーザの片目又は両目の前に位置付けられる。一部の実施形態では、ＨＭＤ１０４は、眼鏡のように身に着けられる（例えば、度付き眼鏡、ゴーグルなど）。ＨＨＣ１０６は、ユーザ１０８によってユーザの手に保持される。
【００３５】
様々な実施形態では、ＨＨＣ１０６の代わりに、ユーザ１０８の手は、ＨＭＤ１０４内のインタラクティブアプリケーション及び／又はロジックによって解釈することができるジェスチャ、例えば、手のジェスチャ、指のジェスチャなどを提供するために使用されてもよい。一部の実施形態では、ユーザは、触覚フィードバックを提供するために、センサとのインタラクティブグローブを身に着けてもよい。インタラクティブグローブは、ユーザによって身に着けられるときにＨＨＣとしての役割を果たし、インタラクティブプログラム及び／又はＨＭＤにインタラクティブジェスチャ／アクションの形式で入力を提供する。ＨＨＣと同様に、インタラクティブグローブは、例えば、様々な移動の検出を可能にするためのＬＥＤ、光反射器などの指標素子を含んでもよい。インタラクティブグローブは、ＨＭＤ及び／又はインタラクティブプログラムに入力を提供するために使用され、他の形式のウェアラブルクロージング／デバイスも従事することができるウェアラブルデバイスの１つの形式である。ＨＭＤ１０４のデジタルカメラ１０１は、ユーザによって提供されたジェスチャの画像をキャプチャし、ＨＭＤ１０４内のプロセッサは、ＨＭＤ１０４内で表示されたゲームがジェスチャによって影響を受けるかどうかを判定するようにジェスチャを分析する。
【００３６】
１つの実施形態では、デジタルカメラ１０１は、ユーザによって提供されたジェスチャを含む実世界画像をキャプチャするために、前を向いたＨＭＤ１０４の面板上に位置付けられる。一部の実施形態では、１つよりも多いデジタルカメラは、実世界画像の異なる角度を捉えるために、ＨＭＤ１０４の面板上に設けられてもよい。一部の実施形態では、デジタルカメラは、ステレオカメラ、ＩＲカメラ、単一のレンズカメラなどであってもよい。本明細書で使用されるように、ＨＭＤのプロセッサは、マイクロプロセッサ、プログラマブル論理回路、特定用途向け集積回路（ＡＳＩＣ）、又はそれらの組み合わせであってもよい。
【００３７】
システム１００は、ローカルエリアネットワーク（ＬＡＮ）、ワイドエリアネットワーク（ＷＡＮ）、又はそれらの組み合わせとすることができる、ネットワーク１１０を含む。ネットワーク１１０の例は、インターネット、イントラネット、又はそれらの組み合わせを含む。一部の実施形態では、ネットワーク１１０は、ゲームクラウド１０２とＨＭＤ１０４又はＨＨＣ１０６との間でネットワーク１１０を介してメディアデータを通信するために、伝送制御プロトコル（ＴＣＰ）／インターネットプロトコル（ＩＰ）又はユーザデータグラムプロトコル／ＩＰ（ＵＤＰ／ＩＰ）を使用する。実施形態は、ＴＣＰ／ＩＰ又はＵＤＰ／ＩＰプロトコルに限定されないが、ネットワークを介してメディアデータを通信するための他の形式の通信プロトコル（いずれかのプロプライエタリ又は非プロプライエタリプロトコルを含む）を従事させることもできる。様々な実施形態では、ネットワークは、ゲームクラウド１０２とＨＭＤ１０４又はＨＨＣ１０６との間でネットワーク１１０を介してメディアデータを通信するために、イーサネット（登録商標）及びＴＣＰ／ＩＰプロトコルの組み合わせを使用する。
【００３８】
ゲームクラウド１０２は、コーダ／デコーダ（コーデック）１１２及びストリームバッファ１１４を含む。ストリームバッファ１１４は、ゲームプログラム１１７が実行されると生成される、メディアデータ１１６のストリームを記憶する。メディアデータ１１６は、仮想環境データ、仮想ゲームオブジェクトデータ、それらの組み合わせなどを含む。仮想環境データは、ゲームの仮想環境を生成するために使用され、仮想ゲームオブジェクトデータは、１つ以上の仮想ゲームオブジェクト、例えば、仮想ゲームキャラクタ、仮想ゲームオブジェクト、仮想ポイント、仮想プライズ、ゲームインタフェースなどを生成するために使用される。仮想環境の例は、仮想地理的領域、例えば、仮想都市、仮想道路、仮想湖、仮想海などを含む。ゲームプログラム１１７は、ゲームクラウド１０２の１つ以上のサーバによって実行されるインタラクティブアプリケーションの例である。コーデック１１２は、不可逆圧縮、可逆圧縮などを使用してメディアデータを符号化／復号するために、圧縮器／圧縮解除器を使用する。
【００３９】
ＨＭＤ１０４は、ＨＭＤ１０４のプロセッサによって実行されるオペレーティングシステム（ＯＳ）にアクセスするために使用される。例えば、ＨＭＤ１０４内のボタンの選択及び活性化は、ＨＭＤ１０４のプロセッサがＯＳを実行することを可能にする。同様に、ＨＨＣ１０６は、ＨＨＣ１０６のプロセッサによって実行されるＯＳにアクセスするために使用されてもよい。ＨＨＣ１０６上のボタンは、ＨＨＣ１０６のプロセッサにＯＳを実行させるために使用されてもよい。
【００４０】
一部の実施形態では、ＯＳは、ＨＭＤ１０４がネットワーク１１０に直接アクセスすることを可能にする。例えば、ユーザは、ネットワークアクセスアイコン、ネットワークアクセスシンボルなどを使用して、ＯＳのトップでＨＭＤ１０４のプロセッサによって実行されるネットワークアクセスアプリケーションを選択してもよい。ネットワークアクセスアプリケーションは、ネットワークのリストを提供し、ネットワークのリストから、ネットワーク１１０にアクセスするためのネットワークを選択する。ユーザ認証は、ネットワークアクセスプロトコルに従って、ネットワーク１１０にアクセスするために要求されることがある。ネットワーク１１０へのアクセスは、ユーザが選択し、ユーザ認証が成功すると（必要な場合）有効にされる。ＨＭＤ１０４内の内蔵ルータ（図示せず）は、ゲームクラウドとのインタラクションを行ってゲームデータを交換するためにネットワーク１１０を使用する。それらの実施形態では、ネットワーク１１０とＨＭＤ１０４との間の通信は、無線通信プロトコルに従う。同じように、ＨＨＣ１０６は、ネットワークアクセスアプリケーションを使用してネットワークを選択することによって、ネットワーク１１０へのアクセスを取得し、ＨＨＣ１０６とネットワークとの間の通信は、無線通信プロトコルに従う。
【００４１】
ネットワーク１１０がアクセスされると、ＯＳは、ネットワークの選択と同様の方式で、ＨＭＤ１０４がゲームプログラム１１７にアクセスすることを可能にする。例えば、ユーザがゲームアクセスアイコン、ゲームアクセスシンボルなどを通じてＯＳのトップでＨＭＤ１０４のプロセッサによって実行されるゲームアクセスアプリケーションを選択するとき、ゲームアクセスアプリケーションは、ユーザに表示するために、ネットワーク及びＨＭＤ１０４のプロセッサを介してゲームプログラム１１７へのアクセスを要求する。
【００４２】
ゲームプログラム１１７へのアクセスを取得すると、ＨＭＤ１０４のマイクロコントローラは、ＨＭＤ１０４のディスプレイスクリーン上でゲームのゲームシーンを表示する。一部の実施形態では、ＨＭＤ１０４のディスプレイスクリーンは、ＨＭＤ１０４が高速で移動するときに不鮮明さを削減するための高性能ミニチュアスクリーンである。１つの実施形態では、ディスプレイスクリーンは、液晶ディスプレイ（ＬＣＤ）スクリーン、リキッドクリスタルオンシリコン（ＬＣｏＳ）、若しくは有機発光ダイオード（ＯＬＥＤ）、又は陰極線管などである。画像は、ディスプレイスクリーン上でＨＭＤのディスプレイ光学のレンズによって投影される。ディスプレイ光学のレンズ又はディスプレイスクリーンに対して調節が行われてもよく、そのような調節は、ＨＭＤのディスプレイスクリーン上でレンダリングされた画像に影響を与える。ユーザは、１つ以上の頭部及び／又は目の動き、例えば、頭を傾けること、瞬きすること、注視すること、移動して注視すること、じろじろ見ることなどを行い、各々の頭部又は目の動きは、ゲームをプレイするために使用することができる入力を生成するようにユーザ入力回路をトリガする。それらの実施形態では、ゲームプログラム１１７は、ゲームクラウド１０２上で実行し、ゲームプログラム１１７とＨＭＤ１０４との間の通信は、内蔵ルータ及びネットワーク１１０を通る。ＨＭＤ１０４のディスプレイスクリーン上でレンダリングされた画像は、目の短焦点を提供するディスプレイ光学を通じて見られる。
【００４３】
一部の実施形態では、ゲームアクセスアプリケーションは、ゲームプログラム１１７にアクセスするためにユーザから、ユーザ名及び／又はパスワードなどのユーザ認証情報を要求する。ゲームクラウド１０２から成功した認証を受信すると、ゲームアクセスアプリケーションは、ユーザにゲームプログラム１１７のアクセスを許可する。
【００４４】
様々な実施形態では、ゲームアプリケーション／プログラムにアクセスする代わりに、ユーザは、ネットワーク１１０にアクセスすると、ウェブページへのアクセスを要求し、ウェブページは、ユーザがゲームプログラム１１７にアクセスすることを可能にする。例えば、ユーザは、ウェブページにアクセスするために、ユーザ入力回路又はＨＨＣ１０６を介してウェブブラウザアプリケーションを選択する。ウェブページにアクセスすると、ユーザは、ウェブページ上で表示されたゲームをプレイし、又はその中で提供されたリンクを使用してゲームにアクセスする。ゲームは、ゲームプログラム１１７がゲームクラウド１０２上で実行されるときにレンダリングされる。一部の実施形態では、ユーザ認証は、ゲームプログラム１１７がゲームクラウド１０２上で実行されるときに表示されたゲームをプレイするために、ウェブページへのアクセスを提供する前に要求されてもよい。ユーザ名及び／又はパスワードは、ユーザがゲームアクセスアプリケーションを介してゲームにアクセスするとき、上記説明された方式と同様の方式で認証される。
【００４５】
ゲームプログラム１１７がアクセスされるとき、コーデック１１２は、ネットワーク１１０を介してＨＭＤ１０４に符号化されたメディアデータのストリームを送信するために、メディアデータ１１６のデジタルデータストリームを符号化する、例えば、圧縮などをする。一部の実施形態では、符号化されたメディアデータのデジタルデータストリームは、ネットワーク１１０を介して送信するためのパケットの形式にある。
【００４６】
ＨＭＤ１０４は、ネットワーク１１０を介してコーデック１１２から、選択されたゲームプログラムについての符号化されたメディアデータのデジタルデータストリームを受信し、デジタルデータストリームは、処理され、例えば、パケット解除され、復号されるなどであり、処理されたストリームは、ＨＭＤ１０４のディスプレイスクリーン上でゲームシーンを表示するために使用される。ゲームシーンがＨＭＤ１０４のディスプレイスクリーン上で表示されているので、ＨＭＤ１０４の外部カメラ１０１は、ユーザの視点から、ユーザに直に近接した実世界環境の１つ以上の画像をキャプチャする。一部の実施形態では、外部カメラ１０１は、ビデオカメラである。実世界環境の例は、ユーザがそこからゲームにアクセスしている部屋、ユーザが位置する地理的領域、ユーザの周囲の実世界オブジェクトなどを含む。地理的領域の例は、公園、道路、通り、湖、都市、ランドマークなどを含む。実世界オブジェクトの例は、バス停留所、コーヒーショップ、店舗、オフィス、車両、部屋、デスク、テーブル、椅子、ボールなどを含む。実世界環境の１つ以上の画像を含む実世界環境データは、１つの実施形態では、ＨＭＤにローカルに処理及び記憶され、ＨＭＤのスクリーン上で後にレンダリングするために使用される。ユーザ入力は、ＨＭＤ１０４によって処理、パケット化、及び符号化されてもよく、内蔵ルータ及びネットワーク１１０を通じてゲームクラウド１０２内のコーデック１１２に送信されてもよい。一部の実施形態では、ユーザ入力に加えて、実世界環境データはまた、ＨＭＤ１０４によってパケット化及び符号化されてもよく、ＨＭＤ１０４の内蔵ルータ、ネットワーク１１０を介してゲームクラウド１０２内のコーデック１１２に、符号化された環境データのストリームとして送信されてもよい。
【００４７】
ユーザ入力は、ＨＭＤ１０４及び／又はＨＨＣ１０６を通じて提供されてもよい。例えば、ユーザは、ＨＭＤ１０４内で提供された入力インタフェース／機構を使用して入力を提供してもよい。代わりに、ユーザは、ＨＨＣを使用して、手の動き、例えば、ボタンの押下、ジョイスティックの移動、手のジェスチャ、指のジェスチャ、それらの組み合わせなどを行ってもよく、ＨＨＣ１０６において提供されたそのようなユーザ入力は、ＨＭＤ１０４の通信回路に送信するためにＨＨＣ１０６の通信回路によって入力信号に変換される入力データを生成する。当然に、ＨＨＣは、ハンドヘルドコントローラ、ジョイスティック、モーションコントローラ、ウェアラブル衣料品、ウェアラブルデバイスなどを含む。ＨＨＣ１０６及びＨＭＤ１０４から発する入力信号は、ＨＭＤ１０４の通信回路によってアナログ形式からデジタル形式に変換され、ＨＭＤ１０４によってパケット化、符号化され、ネットワーク１１０を介してコーデック１１２に送信される。ＨＭＤの通信回路の例は、送受信機、送信／受信回路、ネットワークインタフェースコントローラなどを含む。
【００４８】
一部の実施形態では、ゲームプログラム１１７は、ＨＭＤ１０４上で表示されたゲームの状態を変更するかどうかを判定するために、ＨＭＤによって生成された入力データをＨＨＣにおいて生成された入力データ（例えば、手の動きに基づいた）とマッピングする。例えば、ＨＭＤからの入力が、ＨＨＣ１０６上のボタンの押下など、ＨＨＣ１０６において生成された入力と共にネットワーク１１０を介して受信されるとき、ゲームプログラム１１７は、ゲームの状態を変更すると判定する。そうでない場合、ゲームプログラム１１７は、ゲームの状態を変更しないと判定する。
【００４９】
手の動き及び／又はハンドヘルドコントローラの動きに基づいて生成された入力の入力データは、ＨＨＣ１０６の通信回路、例えば、送受信機、送信／受信回路などによって、ＨＭＤ１０４の通信回路、例えば、送受信機、送信／受信回路などに通信される。ＨＭＤに通信される入力データ及び／又はＨＭＤによって生成された入力データは、ＨＭＤ１０４によってパケット化及び符号化され、ネットワーク１１０を介してコーデック１１２に、符号化された入力データのストリームとして送信される。例えば、入力データは、ネットワーク１１０を介して内蔵ルータを使用して、ＨＭＤ１０４からゲームクラウド１０２に直接送信されてもよい。いくつかの実施形態では、ユーザは、ＨＭＤにおいてレンダリングされた仮想オブジェクトの位置及び／又は方位を変更するために、手の動きを行い、ＨＭＤからのユーザ入力を提供する。
【００５０】
コーデック１１２は、ネットワーク１１０を介してＨＭＤ１０４から受信された、符号化された入力データのストリームを復号、例えば、圧縮解除し、復号された入力データは、パケット解除し、ゲームプログラム１１７に送信するためにストリームバッファ１１４にバッファされる。ゲームクラウド１０２の１つ以上のサーバは、復号された入力データのストリームをパケット解除し、ゲームプログラム１１７に入力データを送信する。入力データを受信すると、ゲームプログラム１１７は、次のメディアデータのストリームを生成するために、ゲームクラウド１０２の１つ以上のサーバによってパケット化された次のメディアデータを生成する。追加のメディアデータは、例えば、ＨＭＤ上でレンダリングされた仮想ゲーム環境を更新するために使用される、仮想ゲームオブジェクト、例えば、コンピュータ生成オブジェクトなどへの修正を含む、ゲームプレイへの修正を含んでもよい。次のメディアデータのストリームは、ストリームバッファ１１４に記憶され、コーデック１１２によって符号化され、ネットワーク１１０を介してＨＭＤ１０４に、符号化された次のメディアデータのストリームとして送信される。ＨＭＤ１０４は、ＨＭＤ１０４のマイクロコントローラに次のメディアデータを提供するために、符号化された次のメディアデータのストリームを受信し、ストリームをパケット解除し、符号化された次のメディアデータを復号する。ＨＭＤ１０４のマイクロコントローラは、次のメディアデータに基づいて、ＨＭＤのスクリーン上でレンダリングされたゲームシーンの表示を変更する。例えば、マイクロコントローラは、実世界環境の１つ以上の画像上でオーバレイされ、又はＨＭＤ１０４のスクリーン上で単純にレンダリングされたかのいずれかである仮想ゲームオブジェクトの外見、位置、及び／又は方位を変更する。ＨＨＣ及び／又はＨＭＤにおいて生成された入力データは、ゲームの状態を変更することに留意されるべきである。一部の実施形態では、ゲームシーンの表示は、本明細書でゲームプログラム１１７と関連付けられた対話性あるいはインタラクティビティの一部と称される。
【００５１】
様々な実施形態では、手の動きに基づいて生成された入力データをＨＨＣ１０６からＨＭＤ１０４に通信する代わりに、入力データは、ネットワーク１１０を介してＨＨＣ１０６からコーデック１１２に直接通信される。ＨＨＣ１０６において生成された入力データは、ＨＭＤ１０４による通信と同様の方式でＨＨＣ１０６によって通信される。例えば、ＨＨＣ１０６からの手の動きに基づいて生成された入力データは、ＨＨＣ１０６によって符号化及びパケット化され、ネットワーク１１０を介してコーデック１１２に、符号化された入力データのストリームとして送信される。
【００５２】
図１に例示される実施形態では、ＨＭＤ及びＨＨＣは個々に、ゲームコンソール又は外部ルータを通ることなく、ネットワーク１１０と直接通信することに留意されるべきである。代替的な実施形態では、ＨＨＣは、ＨＨＣにおいて生成された入力データを伝送するためにＨＭＤと通信してもよく、ＨＭＤは、ＨＨＣ及び／又はＨＭＤから発するデータをネットワーク１１０と直接通信してもよい。それらの実施形態の両方では、メディアデータ１１６、追加のメディアデータ、次のデータなどは、ネットワーク１１０及び内蔵ルータを介してゲームクラウド１０２のコーデック１１２によって、ＨＭＤ１０４の無線アクセスカード（ＷＡＣ）に直接ストリーム化される。更に、それらの実施形態では、データ、例えば、入力データ、実世界環境データなどは、内蔵ルータ及びネットワーク１１０を介してＨＭＤ１０４のＷＡＣによって、ゲームクラウド１０２のコーデック１１２に直接ストリーミングされる。ＨＭＤの内蔵ルータと共にＷＡＣは、ＨＭＤから及びＨＭＤに、ストリーミングメディアデータ及び入力データを伝送することが可能である。
【００５３】
一部の実施形態では、別個のルータ１５２は、ＨＭＤ１０４とネットワーク１１０との間に設けられる。ルータ１５２はまた、ＨＨＣ１０６とネットワーク１１０との間のインタフェースとしての役割を果たす。この実施形態では、ＨＭＤ１０４のＷＡＣは、ネットワーク１１０と通信するためにルータ１５２と相互作用する。一部の実施形態では、ＨＭＤ１０４は、無線接続、例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）接続又はＷｉ−Ｆｉ接続などを介してルータ１５２に結合される。更に、ＨＨＣ１０６は、無線接続を介してルータ１５２に結合される。一部の実施形態では、ルータ１５２は、有線接続を介してネットワーク１１０に結合される。ルータが設けられるとき、符号化されたデータのストリームは、ＨＭＤ１０４又はＨＨＣ１０６からルータ１５２に送信される。ルータ１５２は、ゲームクラウド上でコーデック１１２にストリームを送信することを促進するために、ネットワーク１１０内の経路に符号化されたデータのストリームをルーティング、例えば、経路指定などする。ルータ１５２は、コーデック１１２に符号化されたデータのストリームをルーティングするために、コーデック１１２のＩＰアドレスを使用する。一部の実施形態では、ルータ１５２は、ネットワークトラフィック因子、例えば、ネットワーク経路上のパケットトラフィック、ネットワーク経路上の混雑度などに基づいてネットワーク１１０のネットワーク経路を判定する。
【００５４】
ルータ１５２は、ネットワーク１１０を介してゲームクラウド１０２から符号化されたデータのストリームを受信し、ＨＭＤ１０４に符号化されたデータのストリームをルーティングする。例えば、ルータ１５２は、ＨＭＤ１０４のＩＰアドレスに基づいて、ネットワーク１１０を介してＨＭＤ１０４に、ゲームクラウド１０２から受信された符号化されたデータのストリームをルーティングする。システム１００を使用する一部の実施形態では、ゲームの実行は、ゲームクラウド１０２上でほとんど行われる。一部の実施形態では、ゲームの一部は、ＨＭＤ１０４上で実行してもよく、残りの部分は、ゲームクラウド１０２上で実行してもよい。
【００５５】
一部の実施形態では、無線ネットワークのリストは、ユーザ選択のためにＨＭＤ１０４のスクリーン上でレンダリングされる。代わりに、一部の他の実施形態では、無線ネットワークのリストは、コンピュータ１７２と関連付けられたディスプレイスクリーン上で提示される。例えば、コンピュータ１７２が携帯電話であるとき、携帯電話は、無線ネットワークのリストを表示するためのディスプレイスクリーンを含む。別の例として、コンピュータ１７２がテレビディスプレイスクリーンに結合されるとき、無線ネットワークのリストは、テレビディスプレイスクリーン上で表示される。それらの実施形態では、無線ネットワークのリストは、コンピュータ１７２のプロセッサがネットワーク１１０にアクセスするためにコンピュータ１７２のメモリデバイスに記憶された無線アクセスアプリケーションを実行するときにアクセスされる。プロセッサ１７６は、ユーザが頭部の動き及び／又は手の動きを行うことによってＨＭＤ１０４又はＨＨＣ１０６を介して入力データを生成するときに、無線アクセスアプリケーションを実行する。頭部の動き及び／又は手の動きに基づいて生成された入力データは、ＨＭＤ１０４又はＨＨＣ１０６の通信回路からコンピュータ１７２に送信される。コンピュータ１７２のプロセッサが入力データを受信するとき、無線アクセスアプリケーションは、ネットワーク１１０にアクセスするユーザ選択のための無線ネットワークのリストを生成するように実行される。
【００５６】
一部の実施形態では、コンピュータ１７２は、ゲームクラウド１０２からゲームプログラム１１７の一部を要求するネットワークインタフェースコントローラ（ＮＩＣ）１７４を含む。ＮＩＣの例は、ネットワークインタフェースカード及びネットワークアダプタを含む。ゲームプログラム１１７の一部は、コーデック１１２によって符号化され、ネットワーク１１０を介してコンピュータ１７２のＮＩＣ１７４にストリーミングされる。コンピュータ１７２のプロセッサ１７６は、メディアデータを生成するようにゲームプログラム１１７の一部を実行し、メディアデータは、ＨＭＤ１０４のディスプレイスクリーン上で表示するために、コンピュータ１７２の通信回路１７８、例えば、送受信機、送信／受信回路、ネットワークインタフェースコントローラからＨＭＤ１０４に送信される。ＨＭＤ１０４の通信回路は、ゲームシーンを含むメディアデータを処理し、ＨＭＤ１０４のディスプレイスクリーン上で表示するために、コンピュータ１７２からメディアデータを受信し、ＨＭＤ１０４のマイクロコントローラにメディアデータを送信する。
【００５７】
更に、コンピュータ１７２の通信回路１７８は、ＨＭＤ１０４からの頭部の動き及び／若しくはＨＨＣ１０６からの手の動き、又はＨＭＤ１０４において行われたアクションに基づいて生成された入力データを受信し、プロセッサ１７６に入力データを送信する。１つの実施形態では、入力データは、ＨＭＤ１０４の外部面に配置された外部カメラ１０１によってキャプチャされ、ＨＭＤ１０４の通信回路に伝送される実世界環境データであってもよい。プロセッサ１７６は、追加のメディアデータを生成するように、コンピュータ１７２に記憶されたゲームプログラム１１７ｂの一部を実行し、追加のメディアデータは、通信回路１７８からＨＭＤ１０４の通信回路に送信される。追加のメディアデータを受信する前又は後、頭部の動き及び／又は手の動きを使用したゲームプレイの一部として生成されたＨＭＤ１０４及び／又はＨＨＣ１０６からの入力データは、通信回路１７８を介してＨＭＤ１０４の通信回路によってプロセッサ１７６に送信される。入力データに応答して、プロセッサ１７６は、次のメディアデータを生成するように、コンピュータ１７２に記憶されたゲームプログラム１１７ｂの一部を実行し、次のメディアデータは、通信回路１７８からＨＭＤ１０４の通信回路に送信される。次のメディアデータは、ゲームプログラム１１７の実行によって表示されたゲームの仮想ゲームオブジェクト及び／又は仮想環境を変更／更新することを含む、ゲームプレイを変更するためにＨＭＤ１０４の通信回路に送信される。ゲームオブジェクト、例えば、実世界オブジェクト、仮想ゲームオブジェクトなど、及び／又は仮想環境が変化するとき、ゲームプログラム１１７の実行によって表示されたゲームのゲーム状態は変化する。
【００５８】
一部の実施形態では、ゲーム状態は、ゲームクラウドの１つ以上のサーバに現在のゲーム状態を通知して、ゲームクラウド１０２上のゲームのゲーム状態をコンピュータ１７２上のゲーム状態と同期させるために、ルータ１５２及びネットワーク１１０を介してコンピュータ１７２のＮＩＣ１７４によってゲームクラウド１０２に送信される。そのような実施形態では、ゲームの実行のほとんどは、コンピュータ１７２上で行われる。
【００５９】
様々な実施形態では、メディアデータ１１６、追加のメディアデータ、次のメディアデータなどは、ゲームプログラム１１７の一部がゲームクラウド１０２からコンピュータ１７２にダウンロードされるまで、ネットワーク１１０及びルータ１５２を介してコーデック１１２からＨＭＤ１０４に最初に送信される。例えば、最初に、ユーザは、ゲームプログラム１１７にアクセスするためにゲームアクセスアプリケーションを使用する。ゲームプログラム１１７がアクセスされるとき、メディアデータ１１６、追加のメディアデータ、次のメディアデータなどは、ＨＭＤ１０４のディスプレイスクリーン上で表示するために、ネットワーク１１０及びルータ１５２を介してコーデック１１２からＨＭＤ１０４に送信される。ＨＭＤ１０４上で表示するためにゲームクラウド１０２からのメディアデータのアクセスの時間の間、コンピュータ１７２のＮＩＣ１７４は、ネットワーク１１０及びルータ１５２を介してゲームクラウド１０２からゲームプログラム１１７の一部をダウンロードする。
【００６０】
一部の実施形態では、ゲームプログラム１１７がコンピュータ１７２によってアクセスされるとき、メディアデータ、例えば、メディアデータ１１６、追加のメディアデータ、次のメディアデータなどは、コンピュータがダウンロードのためにゲームクラウド上のゲームプログラムにアクセスする間、コンピュータ１７２をバイパスすることによって、ＨＭＤ１０４のディスプレイスクリーン上で表示するためにネットワーク１１０を介してコーデック１１２からＨＭＤ１０４に直接送信される。受信されたメディアデータは、ＨＭＤ１０４のディスプレイ上でレンダリングされる。一方で、コンピュータ１７２のＮＩＣ１７４は、ネットワーク１１０及びルータ１５２を介してゲームクラウド１０２からゲームプログラム１１７の一部をダウンロードする。
【００６１】
いくつかの実施形態では、頭部の動き及び／若しくは手の動きに基づいて生成された入力データの一部、並びに／又は実世界環境データの一部は、ルータ１５２及びネットワーク１１０を介して、ＨＭＤ１０４からゲームクラウド１０２のコーデック１１２に送信され、入力データの残りの部分及び／又は実世界環境データの残りの部分は、ＨＭＤ１０４の通信回路からコンピュータ１７２の通信回路１７８に送信される。
【００６２】
様々な実施形態では、手の動きに基づいて生成された入力データの一部は、ルータ１５２及びネットワーク１１０を介して、ＨＨＣ１０６の通信回路からゲームクラウド１０２のコーデック１１２に送信され、入力データの残りの部分は、ＨＭＤを通じて、又は直接のいずれかで、ＨＨＣ１０６の通信回路からコンピュータ１７２の通信回路１７８に送信される。
【００６３】
様々な実施形態では、コンピュータ／ＨＭＤ／ＨＨＣから受信されたユーザ入力を使用してゲームプログラム１１７を実行することによって生成されたメディアデータ、例えば、メディアデータ１１６、追加のメディアデータ、次のメディアデータは、ＨＭＤ１０４のディスプレイスクリーン上でゲームプレイの一部としてレンダリングするために、ネットワーク１１０及びルータ１５２を介して、ゲームクラウド１０２のコーデック１１２からＨＭＤ１０４に送信され、コンピュータ１７２のプロセッサ１７６によってゲームプログラム１１７の一部の実行によって生成されたメディアデータは、ディスプレイスクリーン上で表示するために、コンピュータ１７２の通信回路１７８からＨＭＤ１０４に送信される。それらの実施形態では、ゲームクラウド１０２及びコンピュータ１７２は、ゲーム状態を同期させている。例えば、コーデック１１２は、コンピュータ１７２にゲーム状態を通知するために、ネットワーク１１０及びルータ１５２を介してコンピュータ１７２のＮＩＣ１７４に、ゲームプログラム１１７の実行によって生成されたゲーム状態を送信する。別の例として、コンピュータ１７２のＮＩＣ１７４は、１つ以上のゲームクラウドサーバにゲーム状態を通知するために、ルータ１５２及びネットワーク１１０を介してゲームクラウド１０２のコーデック１１２に、コンピュータ１７２上のゲームプログラム１１７の一部の実行によって生成されたゲーム状態を送信する。ゲームクラウド１０２のコーデック１１２とコンピュータのＮＩＣとの間の通信は、両側で同期されたゲーム状態を維持するように定期的に行われる。
【００６４】
いくつかの実施形態では、ゲームプログラム１１７を実行することによって生成され、ゲームクラウド１０２のコーデック１１２からＨＭＤ１０４に送信されるメディアデータ、例えば、メディアデータ１１６、追加のメディアデータ、次のメディアデータなどは、コンピュータ１７２のプロセッサ１７６によって生成されたメディアデータよりも多くの量のグラフィックを有する。明らかなように、実施形態の一部では、コンピュータ１７２は、メディアデータがネットワーク１１０を介してゲームクラウド１０２のコーデック１１２からＨＭＤ１０４に送信されるときにバイパスされる。
【００６５】
一部の実施形態では、コンピュータ１７２は、ＮＩＣ１７４を介してゲームクラウド１０２からゲームプログラム１１７の一部を要求し、それに応答して、コーデック１１２によって符号化されたゲームプログラム１１７の部分１１７ｂは、ネットワーク１１０を介してコンピュータ１７２のＮＩＣ１７４にストリーミングされる。一部の実施形態では、ゲームクラウドは、ゲームデータベース１３１を含み、ゲームデータベース１３１からゲームプログラム１１７が取り出され、コンピュータ１７２にダウンロードされる。一部の実施形態では、ゲームプログラム１１７の部分１１７ａは、ゲームデータベース１３１からゲームサーバ１０２にダウンロードされ、ゲームプログラム１１７の残りの部分１１７ｂは、コンピュータ１７２にダウンロードされる。一部の実施形態では、コンピュータ１７２にダウンロードされた部分１１７ｂは、ゲーム全体である。コンピュータ１７２のプロセッサ１７６は、ＨＭＤ１０４のディスプレイスクリーン上で表示するためにコンピュータ１７２の通信回路１７８、ネットワークインタフェースコントローラなどからＨＭＤ１０４に送信されるメディアデータ、追加のメディアデータ、及び次のメディアデータ（総称して「メディアデータ」）を生成するように、ゲームプログラム１１７の部分１１７ｂを実行する。
【００６６】
先に言及されたように、追加のメディアデータ及び次のメディアデータは、ＨＭＤ１０４から受信された頭部の動き／他のユーザ入力、手の動きなどを含む入力データに応答して提供されてもよい。頭部の動き及び／又は手の動きに加えて、１つの実施形態では、入力データはまた、ＨＭＤ１０４の外部面に配置された外部カメラ１０１によってキャプチャされ、ＨＭＤ１０４の通信回路によって伝送される実世界環境データを含んでもよい。
【００６７】
一部の実施形態では、外部カメラ１０１によってキャプチャされた実世界環境データは、ＨＭＤにローカルに記憶され、ＨＭＤスクリーン上でレンダリングする際に使用される。追加のメディアデータは、ＨＭＤ上で仮想ゲームシーンをレンダリングするために仮想現実関連データをもたらし、次のメディアデータは、ゲームプレイの間に仮想ゲームシーン内で表示された仮想ゲームオブジェクト及び／又は仮想現実データへの変更をもたらす。ＨＭＤ１０４の通信回路は、コンピュータ１７２からメディアデータをメディアストリームとして受信し、ＨＭＤ１０４のディスプレイスクリーン上で解釈及び表示するためにＨＭＤ１０４のマイクロコントローラにメディアデータを送信する。ゲームオブジェクト、例えば、実ゲームオブジェクト、仮想ゲームオブジェクトなど、及び／又は仮想環境が変化するとき、ゲームプログラム１１７の実行によって表示されたゲームのゲーム状態は変化する。
【００６８】
一部の実施形態では、ゲームプログラム１１７の部分１１７−ａは、ゲームプログラム１１７がコンピュータ１７２にダウンロードされている間にゲームクラウド１０２上で実行される。したがって、ゲームクラウド１０２上のゲームプログラム１１７の部分１１７−ａの実行と関連付けられたメディアデータは、ゲームプログラム１１７の部分１１７−ｂがゲームクラウド１０２からコンピュータ１７２にダウンロードされるまで、ＨＭＤ上でレンダリングするために、ネットワーク１１０及びルータ１５２を介して、コーデック１１２からＨＭＤ１０４に直接送信される。１つの実施形態では、ゲームプログラム１１７の部分１１７−ｂは、コンピュータ１７２のローカル記憶装置１１３にダウンロード及び記憶され、プロセッサ１７６によって実行される。部分１１７−ｂがダウンロードされ、コンピュータ１７２のプロセッサ１７６がゲームの部分１１７−ｂを実行することを開始すると、ゲームプログラム１１７の部分１１７−ｂについてのメディアデータは、コンピュータ１７２からＨＭＤ１０４に伝送される。一部の実施形態では、ゲームプログラムについての全てのメディアデータは、レンダリングするためにコンピュータ１７２からＨＭＤ１０４に直接伝送される。コンピュータ１７２はまた、ゲームクラウド１０２上のゲームプログラムのゲーム状態をコンピュータ１７２上のゲーム状態と同期させるために、ゲームクラウド１０２にメディアデータを定期的に伝送してもよい。
【００６９】
いくつかの実施形態では、頭部の動き及び／又は手の動きに基づいた入力データの一部は、コンピュータ１７２に接続された観察カメラ（図示せず）によってキャプチャされる。一部の実施形態では、観察カメラとコンピュータ１７２との間の接続は、有線接続であってもよい。他の実施形態では、観察カメラとコンピュータ１７２との間の接続は、無線接続であってもよい。一部の実施形態では、観察カメラは、ステレオカメラ、ＩＲカメラ、又はモノラルカメラのうちのいずれか１つ又は組み合わせである。一部の実施形態では、観察カメラは、ビデオカメラ又は静止−動きカメラのうちの１つである。観察カメラによってキャプチャされた画像は、ＨＭＤ及びＨＨＣの位置及び動きを判定するために使用されてもよい。例えば、観察カメラの画像は、ＨＭＤの位置の座標及びＨＨＣの位置の座標を識別するために使用されてもよい。座標面の座標に加えて、観察カメラの画像は、ピッチ、ヨー、及びロールを判定してＨＭＤ及びＨＨＣについての６軸データを生成するために使用されてもよい。一部の実施形態では、ＨＭＤ及びＨＨＣにおいて生成された頭部及び／又は手の動きは、観察カメラによってキャプチャされ、ＨＭＤ１０４のマイクロコントローラに６軸データとして伝送される。ＨＭＤ１０４及び／又はＨＨＣ１０６からの６軸データは、入力データを生成するように解釈される。解釈された入力データは、ゲームプログラムの結果に影響を与えるために、ＨＭＤ１０４からコンピュータ１７２に伝送される。一部の実施形態では、観察カメラによってキャプチャされた頭部及び／又は手の動きは、プロセッサ１７６に直接伝送され、そこでは、それは、６軸データを生成するように解釈される。観察カメラは、ユーザの動き（頭部及び／又は手）を観察し、この情報は、ゲーム状態の変化に影響を与えるためにゲームプログラムにフィードバックを提供する際に使用される。この実施形態では、ゲームプログラム１１７に関連するいずれかの他の入力データは、ＨＭＤ１０４によってプロセッサに伝送され、プロセッサ１７６は、ゲームのゲーム状態が変更される必要があるかどうかを判定するために、６軸データと共に他の入力データを解釈する。解釈に基づいて、ゲームのゲーム状態が変更される。一部の実施形態では、ＨＭＤ１０４からの入力データは、外部カメラ１０１によってキャプチャされ、ＨＭＤ１０４の通信回路からコンピュータ１７２の通信回路１７８に送信される実世界環境データを含む。実世界環境データは、ＨＭＤ１０４のスクリーンの特定の部分においてレンダリングされた仮想ゲームシーンに影響を与えるために使用されてもよい。様々な実施形態では、ＨＭＤ１０４は、２次元又は３次元画像を表示するために使用される。
【００７０】
一部の実施形態では、観察カメラは、ＨＭＤ及びＨＨＣにおいて提供された動きを追跡するビデオカメラであってもよい。観察カメラは、ＨＭＤ及びＨＨＣの面板に配置された様々な指標素子の画像をキャプチャし、ＨＭＤ及びＨＨＣの指標素子の位置を３次元空間に相関付ける。各々の指標素子は、発光ダイオード、赤外線光、色、反射材料、画像分析を介して容易に認識される特殊な特徴又は特性を有するオブジェクトなどであってもよい。加えて、ＨＭＤ１０４はまた、特定の幾何学的形状の反射領域、特定の色を有する領域（例えば、青い長方形など）、又はマーキング（例えば、ＨＭＤの表面上の３つの平行線）などの特殊な視覚的指標（図示せず）を含んでもよい。一部の実施形態では、ＨＭＤはまた、それぞれの光又は視覚的指標を検出することによってＨＭＤの位置を更に視覚的に追跡するための、ＨＭＤの側面及び／又は背面（すなわち、頭部の背面に接触するＨＭＤの一部）上の追加の指標素子を含む。
【００７１】
様々な実施形態では、観察カメラは、モバイルビデオカメラであってもよい。例えば、ビデオカメラ（図示せず）は、ロボティックデバイス、例えば、マルチコプタ、ロボティックアーム、ロボット、ロボティック車両、ロボティック車、クアッドコプタなどに取り付けられてもよい。例えば、ビデオカメラは、ＨＭＤ及び／又はＨＨＣの画像をキャプチャするためにロボティックデバイスの下、上部、側面に取り付けられてもよい。ＨＭＤは、ユーザ１０８の頭部の移動と共に移動する。いくつかの実施形態では、ビデオカメラの代わりに、デジタルカメラが使用されてもよい。
【００７２】
一部の実施形態では、観察カメラは、レンズごとに別個の画像センサを有する２つ以上のレンズを含むカメラである、ステレオカメラであってもよい。別個の画像センサは、ステレオカメラが、深さの錯覚をもたらすオブジェクトの３次元画像をキャプチャすることを可能にする。
【００７３】
別の実施形態では、観察カメラは、ＨＭＤ上で提供された赤外線光を分析するために使用される赤外線（ＩＲ）カメラであってもよい。赤外線光は、人間の目には見えないが、赤外線カメラによって容易に検出することができる。ＨＭＤは、ＨＭＤの外観において散乱を回避するための赤外線ライトを含んでもよい。一部の環境では（例えば、微光又は鮮明光）、ＨＭＤにおける位置、形状、及び／又は特徴を検出するために他のタイプの光よりも赤外線光を追跡することが容易である。赤外線（ＩＲ）カメラは、ＨＭＤなどのオブジェクトを追跡する拡張した撮像及び熱撮像をもたらす。ＩＲカメラはまた、ユーザの注視方向を検出するために注視検出カメラとして使用されてもよい。
【００７４】
更なる別の実施形態では、観察カメラは、標準カメラであってもよい。一部の実施形態では、観察カメラは、モノラルカメラであってもよく、そこでは、レンズ（すなわち、単一のレンズ）は、視覚的追跡のために構成されたＨＭＤ内の光又は他の指標素子を追跡するために使用される。標準カメラによりプレイの視野内のＨＭＤの深さを判定するために、ＨＭＤ上の特徴の一部のサイズが分析される。特徴が小さいと、特徴がＨＭＤのカメラから更に遠いと仮定される。一部の実施形態では、プレイの視野内のＨＭＤの深さは、１つよりも多い観察カメラを使用することによって判定されてもよい。加えて、視覚的追跡はまた、慣性動き追跡、デッドレコニング、ＨＭＤとコンピューティングデバイスとの間の超音波通信など、他のタイプの追跡と組み合わされてもよい。
【００７５】
観察カメラは、ＨＭＤの１つ以上の指標素子を追跡することによって、ＨＭＤ１０４の画像をキャプチャする。ユーザ１０８の頭部が傾き又は移動するとき、ＨＭＤの指標素子の位置及び配置が座標系内で変化する。デジタルカメラは、指標素子の画像をキャプチャし、コンピュータ１７２に画像を送信する。指標素子の画像は、入力データの例である。３次元空間（Ｘ，Ｙ，Ｚ）内のＨＭＤ１０４の位置は、画像内の指標素子の位置に基づいてコンピュータ１７２のプロセッサ１７６によって判定されてもよい。更に、ＨＭＤ１０４の慣性動き、例えば、ヨー、ピッチ、及びロールなどは、指標素子の移動に基づいてコンピュータ１７２のプロセッサ１７６によって判定される。コンピュータ１７２が利用可能でないケースでは、観察カメラからの指標素子の画像は、ＨＭＤ１０４のプロセッサに送信され、ＨＭＤのプロセッサは、指標素子の座標を使用してＨＭＤの位置を判定する。
【００７６】
一部の実施形態では、観察カメラは、ＨＨＣ１０６の画像をキャプチャする。ユーザ１０８の手が傾き又は移動するとき、ＨＨＣ上の指標素子の位置及び配置は、座標系内で変化する。観察カメラは、ＨＨＣ上の指標素子の画像をキャプチャし、コンピュータ１７２又はＨＭＤ１０４のプロセッサに画像を送信する。ＨＨＣ上の指標素子の画像は、入力データの例である。３次元空間（Ｘ，Ｙ，Ｚ）内のＨＨＣ１０６の位置は、コンピュータ１７２のプロセッサ１７６又はＨＭＤ１０４のプロセッサによって、画像内のＨＨＣ上の指標素子の位置を分析することによって判定されてもよい。更に、ＨＭＤ１０４の慣性動き、例えば、ヨー、ピッチ、及びロールなどは、ＨＨＣの指標素子の移動に基づいてコンピュータ１７２のプロセッサ１７６又はＨＭＤ１０４のプロセッサによって判定される。
【００７７】
一部の実施形態では、ＨＭＤ１０４が有線接続を使用してコンピュータ１７２に通信可能に接続されるとき、ＨＭＤは、有線接続における切断を検出して、ＨＭＤ１０４のスクリーン上でレンダリングされた仮想ゲームシーンを中断するように構成される。ＨＭＤは、通信接続における切断を検出し、それに従って信号を生成し、コンピュータ１７２にゲームプログラムの実行を中断させ、ゲームについてのセッションのためにゲーム状態及びゲームシーンを記憶させるための信号をコンピュータ１７２に中継する。ＨＭＤのバッテリからの電力は、通信接続における切断の間に、コンピュータ１７２と接続の状態を通信するための電力を提供するために使用されてもよい。ゲームプログラムの実行は、コンピュータ１７２がＨＭＤ１０４から有線接続が再確立されたことの信号を取得するとすぐに再開してもよい。一部の実施形態では、ＨＭＤとコンピュータ１７２との間の接続が再開すると、コンピュータ１７２は、途絶のポイントからゲームシーンをストリーミングすることを開始してもよい。別の実施形態では、コンピュータ１７２は、接続の途絶によって生じた中断の前のポイント（例えば、中断の前の数百フレーム）からゲームシーンをストリーミングすることを開始してもよく、それによって、ユーザは、ゲームに没入する何らかの時間を得ることができる。この実施形態では、コンピュータ１７２は、ユーザがゲームに入り込むことを可能にするゲームの一部をユーザが再実行することを可能にすることができる。ＨＨＣとＨＭＤとの間の通信及びＨＨＣとコンピュータ１７２との間の通信は、無線通信プロトコルに従ってもよい。
【００７８】
一部の実施形態では、ＨＭＤ１０４は、ユーザの目の移動、注視方向、注視パターンなどにおける変化を検出するための１つ以上の内部カメラ（例えば、注視検出カメラ）１０３を含んでもよい。内部カメラ１０３はまた、ゲームへのアクセスを提供する前にユーザを識別／認証するために使用されてもよい。
【００７９】
ゲーミング環境に関する詳細な説明が提供されるが、コンピュータシステムとのインタラクティブ通信の間に相互作用も行われてもよいことが想定される。コンピュータシステムは、ユーザが空間内で、アイコン、入力、選択、テキスト、及び他のコマンドを制御するジェスチャを提供し、ジェスチャを行うことを可能にするグラフィカルユーザインタフェースを有する汎用コンピュータであってもよい。
【００８０】
以下の指標付けされたオブジェクトについての方法に関する更なる情報について、２０１１年８月１５日に出願され、２０１２年３月２２日に公開された米国特許出願公開第２０１２−００７２１１９号、及び２００８年１０月２７に出願され、２０１０年４月２９日に公開された米国特許出願公開第２０１０−０１０５４７５号についての参照がなされてもよく、その両方が全体を参照することによって本明細書に組み込まれる。
【００８１】
一部の実施形態では、ステレオカメラの１つ以上のペア、１つ以上の赤外線カメラ、及び／若しくは１つ以上の標準カメラ、又はそれらの組み合わせは、ユーザの頭部の動きと共に、入力データを提供するために使用されるウェアラブル品／デバイスを身に着けているユーザの手を含むコントローラによって提供された、ＨＭＤの相対位置及びＨＭＤの動きを判定するために使用されてもよい。
【００８２】
１つ以上の内部カメラ（例えば、注視検出カメラなど）は、ユーザに関連する画像をキャプチャし、通信モジュールに画像を供給してＨＭＤにユーザ特有及び環境特有データを提供するために、ＨＭＤ上に及びユーザの内部に面して据え付けられてもよい。内部カメラ（複数可）は、ＨＭＤを身に着けているユーザを識別するために使用されてもよく、ＨＭＤは、ユーザのユーザプロファイルを取得するために使用されてもよい。したがって、内部カメラは、ユーザの網膜又は虹彩をスキャンするための網膜スキャニング技術及び／又は虹彩スキャニング技術を従事させ、ユーザの少なくとも１つの生体ＩＤを生成するために、スキャニングからのデータを使用するように構成されてもよい。ユーザの生体ＩＤは、ユーザのプロファイルの一部であってもよい。内部カメラはまた、ユーザの注視の方向を検出し、検出に基づいてＨＭＤのスクリーン上でレンダリングされた画像データを調節するための注視検出器アルゴリズムを備えた注視検出カメラを含んでもよい。一部の実施形態では、内部カメラは、ＩＲカメラである。注視検出技術はまた、ユーザを認証するために使用されてもよい。例えば、ユーザは、スクリーン上でレンダリングされたオブジェクトを辿り、又はスクリーン上でレンダリングされた、ランダムに生成された文字、オブジェクト、若しくはパターン（例えば、円形、三角形、長方形など）を追跡することを依頼されてもよい。一部の実施形態では、口頭又はテキストコマンドは、ユーザがスクリーン上の文字、オブジェクト、又はパターン、及び注視検出技術を使用することによって認証されたユーザを追跡するために提供されてもよい。ユーザの認証は、ユーザアカウント、ゲーム、ゲームの特定の部分又はレベルにアクセスすることを許可するために使用されてもよい。
【００８３】
ＨＭＤの内部カメラ及び外部カメラは、ユーザの注視を判定し、ユーザの注視の視線内のオブジェクトに注視を関連付けるために手を携えて作用する。ＨＭＤのゲーム処理モジュールは、ユーザの注視の方向を計算し、計算された方向の視野内のオブジェクトにそれを相関付けるためのソフトウェアを含む。
【００８４】
例えば、内部カメラ１０９は、ユーザの目の移動及び注視を検出及び追跡する。内部カメラ１０９は、或る期間の間にユーザの注視方向を判定し（例えば、ユーザが、何らかの期間の間に、ディスプレイスクリーン上でレンダリングされた画像内の特定のオブジェクト若しくはポイントを見ているとき）、或る期間にわたって注視パターンを検出し（例えば、ユーザがオブジェクトを辿り、パターンを追跡するなど）、並びに／又は注視方向における変化を検出する（例えば、特に、高度な集中力のゲームにおいてユーザが目眩若しくは疲労を経験している兆候となることがある、目の後方及び前方移動、目の揺れなど）ために使用されてもよい。ＨＭＤの内部カメラは、検出された目の移動若しくは注視に応答して、又はゲーム若しくはＨＭＤを身に着けているユーザに直に近接した環境内で発生したトリガイベントに基づいて、ＨＭＤのスクリーン上でレンダリングするために提供されたデータが調節される必要があるかどうかを判定するために、ＨＭＤの外部に据え付けられたカメラ及び観察カメラと通信する。
【００８５】
図２は、ＨＭＤ１０４の通信アーキテクチャのブロック図である。ＨＭＤ１０４は、ビデオ音声セパレータ２５４、ビデオデコーダ２５５、メモリデバイス２５６、ＷＡＣ２５８、ストリームバッファ２５９、１つ以上のスピーカ２６０、バッテリ２６１、ユーザ入力回路２６２、ディスプレイスクリーン２６６、マイクロコントローラ２６８、音声バッファ２７２、観察デジタルカメラ２７４、外部デジタルカメラ２７４、音声コーデック２７６、内部デジタルカメラ２７８、ビデオバッファ２８０、ビデオ音声シンクロナイザ２８２、マイクロフォン２８４、ＬＥＤ２８５及びＩＲライト２８７、コントローラ／コンピュータ通信回路２８９など、一部の例示的な制御モジュール又はセンサを含む。ＬＥＤ２８５及びＩＲライト２８７は、ＨＭＤの位置を追跡するために使用される指標素子を表す。
【００８６】
いくつかの実施形態では、スピーカ２６０は、音声回路を形成する。様々な実施形態では、音声コーデック２７６、音声バッファ２７２、及び／又はスピーカ２６０は、音声回路を形成する。様々な実施形態では、マイクロコントローラ２６８は、ディスプレイスクリーン上でレンダリングされた画像を制御するディスプレイ回路の一部である。ディスプレイスクリーン２６６の例は、ＬＥＤスクリーン、液晶ディスプレイ（ＬＣＤ）スクリーン、リキッドクリスタルオンシリコン（ＬＣｏＳ）スクリーン、有機ＬＥＤ（ＯＬＥＤ）スクリーン、プラズマスクリーンなどを含む。外部デジタルカメラの例は、Ｓｏｎｙ  Ｃｏｍｐｕｔｅｒ  Ｅｎｔｅｒｔａｉｎｍｅｎｔ，Ｉｎｃ．によって製造されたＰｌａｙｓｔａｔｉｏｎ  Ｅｙｅ（登録商標）などのアイカメラを含む。
【００８７】
マイクロコントローラ２６８は、レンダリングプログラム２８６及びオペレーティングシステム２８８を記憶する。レンダリングプログラム２８６及びオペレーティングシステム２８８は、マイクロコントローラ２６８のメモリデバイスに記憶され、マイクロコントローラ２６８のマイクロプロセッサによって実行される。マイクロコントローラ２６８の例は、要素（例えば、ＬＣＤなど）を検出して、ディスプレイスクリーン２６６上で表示するためのメディアデータを提供するための信号を生成するドライバ、例えば、ＬＣＤドライバを含む、低コストマイクロコントローラを含む。マイクロコントローラの別の例は、ＧＰＵ及びメモリデバイスを含む。
【００８８】
一部の実施形態では、マイクロコントローラのメモリデバイスは、フラッシュメモリ又はランダムアクセスメモリ（ＲＡＭ）以外である。例えば、マイクロコントローラのメモリデバイスは、バッファである。様々な実施形態では、マイクロコントローラのメモリデバイスは、フラッシュメモリ又はＲＡＭである。ユーザ入力回路２６２の例は、ジャイロスコープ、磁気計、及び加速度計を含む。一部の実施形態では、ユーザ入力回路２６２はまた、グローバルポジショニングシステム（ＧＰＳ）、コンパス、又はいずれかの位置追跡デバイスを含む。ＷＡＣ２５８の例は、ＮＩＣを含む。一部の実施形態では、ＷＡＣ２５８は、本明細書で通信回路と称される。
【００８９】
符号化されたメディアデータのストリームは、ネットワーク１１０又はルータ１５２からストリームバッファ２５９に受信される。ルータ１５２がコンピュータ１７２に結合されるとき、コンピュータ１７２から受信されたデータは、ストリームバッファ２５９に記憶されずに、ＨＭＤ２５０のバッファ（図示せず）又はメモリデバイス２５６に記憶されることに留意されるべきである。
【００９０】
ＷＡＣ２５８は、コンピュータ又はコーデック１１２から受信されたストリームバッファ２５９からの符号化されたメディアデータのストリームにアクセスし、ストリームをパケット解除する。ＷＡＣ２５８はまた、符号化されたメディアデータを復号するためのデコーダを含む。
【００９１】
符号化されたメディアデータのストリームがルータ１５２を介してコンピュータ１７２によって受信される実施形態では、コンピュータ１７２のＮＩＣ１７４は、復号されたデータを生成するために符号化されたメディアデータのストリームをパケット解除及び復号し、復号されたデータは、ＨＭＤ２５０のバッファ（図示せず）に記憶される。
【００９２】
復号されたデータは、ＷＡＣ２５８又はバッファ（図示せず）からビデオ音声セパレータ２５４によってアクセスされる。ビデオ音声セパレータ２５４は、ビデオデータからの復号されたデータ内の音声データを分離する。
【００９３】
ビデオ音声セパレータ２５４は、音声バッファ２７２に音声データを送信し、ビデオバッファ２８０にビデオデータを送信する。ビデオデコーダ２５５は、アナログビデオ信号を生成するために、例えば、ビデオデータを復号し、及び／又はビデオデータをデジタル形式からアナログ形式に変更する。ビデオ音声シンクロナイザ２８２は、ビデオバッファ２８０に記憶されたビデオデータを音声バッファ２７２に記憶された音声データと同期させる。例えば、ビデオ音声シンクロナイザ２８２は、ビデオデータを音声データと同期させるために、ビデオデータ及び音声データの再生の時間を使用する。
【００９４】
音声コーデック２７６は、音声信号を生成するために、同期された音声データをデジタル形式からアナログ形式に変換し、音声信号は、サウンドを生成するためにスピーカ２６０によって再生される。マイクロコントローラ２６８は、ビデオデコーダ２５５によって生成されたアナログビデオ信号に基づいて、ディスプレイスクリーン２６６上でゲームを表示するようにレンダリングプログラム２８６を実行する。一部の実施形態では、ディスプレイスクリーン２６６上で表示されたゲームは、音声信号の再生と同期して表示される。
【００９５】
更に、ユーザは、サウンド信号を電気信号、例えば、音声信号に変換するマイクロフォン２８４に話しかける。音声コーデック２７６は、音声バッファ２７２に記憶される音声信号を生成するために、音声信号をアナログ形式からデジタル形式に変換する。音声バッファ２７２に記憶された音声データは、ユーザのサウンドに基づいて生成された入力データの例である。音声データはまた、ＨＭＤにおいて生成され、又はＨＭＤ内のスピーカによって検出された他の音声信号を含んでもよい。音声データは、ネットワーク１１０を介してゲームクラウド１０２のコーデック１１２に送信するために、音声バッファ２７２からＷＡＣ２５８によってアクセスされる。例えば、ＷＡＣ２５８は、ネットワーク１１０を介してコーデック１１２に送信するために、音声バッファ２７２からアクセスされた音声データをパケット化及び符号化する。
【００９６】
一部の実施形態では、音声データは、ルータ１５２及びネットワーク１１０を介してゲームクラウド１０２のコーデック１１２に送信するために、音声バッファ２７２からＷＡＣ２５８によってアクセスされる。例えば、ＷＡＣ２５８は、ルータ１５２及びネットワーク１１０を介してコーデック１１２に送信するために、音声バッファ２７２からアクセスされた音声データをパケット化及び符号化する。
【００９７】
内部デジタルカメラ２７８は、画像データを生成するために、ＨＭＤを身に着けているユーザの目の動きの１つ以上の画像をキャプチャし、画像データは、頭部のアクション及び／又は目の移動に基づいて、ＨＭＤにおいて生成された入力データの例である。同様に、ＨＭＤ上で据え付けられた観察デジタルカメラ２７４及び／又は外部デジタルカメラ２７４は、画像データを生成するために、ユーザ１０８の手、並びに／又はＨＭＤ２５０及び／若しくはユーザ１０８のＨＨＣ／グローブ／手の上に位置する指標、ＨＭＤを身に着けているユーザの頭部の動き、の１つ以上の画像をキャプチャし、画像データは、手／頭部の動きに基づいて生成された入力データの例である。デジタルカメラ２７４、２７５、及び２７８によってキャプチャされた画像データは、ビデオバッファ２８０に記憶される。
【００９８】
一部の実施形態では、デジタルカメラ２７４、２７５、及び２７８によってキャプチャされた画像データは、ＨＭＤ２５０のバッファに記憶され、バッファは、ビデオバッファ２８０以外である。様々な実施形態では、デジタルカメラ２７４、２７５、及び２７８によってキャプチャされた画像データは、ディスプレイスクリーン２６６上で画像を表示するために、ビデオデコーダ２５５によって復号され、マイクロコントローラ２６８に送信される。
【００９９】
デジタルカメラ２７４、２７５、及び２７８によってキャプチャされた画像データは、ネットワーク１１０を介してゲームクラウド１０２のコーデック１１２に送信するために、ビデオバッファ２８０からＷＡＣ（無線アクセスカード）２５８によってアクセスされる。例えば、ＷＡＣ２５８は、ネットワーク１１０を介してコーデック１１２に送信するために、ビデオバッファ２８０からアクセスされた画像データをパケット化及び符号化する。
【０１００】
一部の実施形態では、ビデオデータは、ルータ１５２及びネットワーク１１０を介してゲームクラウド１０２のコーデック１１２に送信するために、ビデオバッファ２８０からＷＡＣ２５８によってアクセスされる。例えば、ＷＡＣ２５８は、ルータ１５２及び／又はネットワーク１１０を介してコーデック１１２に送信するために、ビデオバッファ２８０からアクセスされたビデオデータをパケット化及び符号化する。
【０１０１】
コントローラ／コンソール通信回路２８９は、バッファ（図示せず）に記憶するために、コンピュータ１７２からメディアデータを受信する。更に、コントローラ／コンソール通信回路２８９は、ＨＨＣ１０６から入力信号を受信し、入力データを生成するために入力信号をアナログ形式からデジタル形式に変換し、入力データは、ネットワーク１１０を介してゲームクラウド１０２のコーデック１１２に送信するためにＷＡＣ２５８によってアクセスされる。例えば、ＷＡＣ２５８は、ネットワーク１１０を介してコーデック１１２に送信するために、コントローラ／コンソール通信回路２８９からアクセスされた入力データをパケット化及び符号化する。
【０１０２】
一部の実施形態では、入力データは、ルータ１５２及びネットワーク１１０を介してゲームクラウド１０２のコーデック１１２に送信するために、コントローラ／コンソール通信回路２８９からＷＡＣ２５８によってアクセスされる。例えば、ＷＡＣ２５８は、ルータ１５２及びネットワーク１１０を介してコーデック１１２に送信するために、ビデオバッファ２８０からアクセスされたビデオデータをパケット化及び符号化する。
【０１０３】
コントローラ／コンソール通信回路２８９の代わりに、２つの別個の通信回路が使用されてもよく、１つがコンピュータ１７２とデータを通信する、例えば、受信、送信するためのものであり、もう１つがＨＨＣ１０６データと通信するためのものであることに留意されるべきである。
【０１０４】
いくつかの実施形態では、デコーダは、ＷＡＣ２５８の外部に位置付けられる。様々な実施形態では、ストリームバッファ２５９は、ＷＡＣ２５８内に位置付けられる。
【０１０５】
一部の実施形態では、ＨＭＤ１０４は、観察デジタルカメラ２７４を含まない。いくつかの実施形態では、ＨＭＤ１０４は、いずれかの数のマイクロコントローラ、いずれかの数のバッファ、及び／又はいずれかの数のメモリデバイスを含む。
【０１０６】
様々な実施形態では、ＨＭＤ１０４は、構成要素、例えば、ビデオ音声セパレータ２５４、メモリデバイス２５６、無線アクセスカード２５８、ストリームバッファ２５９、１つ以上のスピーカ２６０、ユーザ入力回路２６２、ディスプレイスクリーン２６６、マイクロコントローラ２６８、音声バッファ２７２、外部デジタルカメラ２７４、音声コーデック２７６、内部デジタルカメラ２７８、ビデオバッファ２８０、ビデオ音声シンクロナイザ２８２、マイクロフォン２８４、及びコントローラ／コンピュータ通信回路２８９に電力を提供する１つ以上のバッテリ２６１を含む。１つ以上のバッテリ２６１は、交流電流コンセントにプラグインすることができる充電器（図示せず）により充電される。
【０１０７】
いくつかの実施形態では、入力データ及び／又はメディアデータは、本明細書で対話型メディアあるいはインタラクティブメディアと称される。
【０１０８】
一部の実施形態では、ＨＭＤ１０４は、ペアリングを介してローカルユーザの間のピアツーピアマルチチャネル通信を促進するための通信回路を含む。例えば、ＨＭＤ１０４は、マイクロフォン２８４から受信されたサウンド信号を変調し、チャネルを介して別のＨＭＤ（図示せず）の送受信機に変調された信号を送信する送受信機を含む。他のＨＭＤの送受信機は、ユーザの間の通信を促進するために他のＨＭＤのスピーカに提供する信号を復調する。
【０１０９】
様々な実施形態では、異なる他のＨＭＤと通信するために、異なるチャネルがＨＭＤ１０４の送受信機によって使用される。例えば、それを通じて変調された信号が第１の他のＨＭＤに送信されるチャネルは、それを通じて変調された信号が第２の他のＨＭＤに送信されるチャネルとは異なる。
【０１１０】
一部の実施形態では、ＷＡＣ２５８、ユーザ入力回路２６２、マイクロコントローラ２６８、及びビデオデコーダ２５５は、１つ以上の個々の回路チップに統合される。例えば、ＷＡＣ２５８、ビデオデコーダ２５５、及びマイクロコントローラ２６８は、１つの回路チップに統合され、ユーザ入力回路２６２は、別の回路チップに統合される。別の例として、ＷＡＣ２５８、ユーザ入力回路２６２、マイクロコントローラ２６８、及びビデオデコーダ２５５の各々は、別個の回路チップに統合される。
【０１１１】
ＨＭＤにおいてユーザの注視方向及び／又はアクションを検出し、検出された注視方向及び／又はアクションに一致するようにＨＭＤのディスプレイスクリーン上で提示された画像を調節するために、ＨＭＤの様々なモジュールが使用される。
【０１１２】
図３は、一部の実施形態において、ユーザによって提供された注視方向及び／又はアクションを検出し、ＨＭＤのディスプレイスクリーンにおいて提示された画像を調節するために、ＨＭＤ及びコンピュータに含まれる様々な通信モジュールの概観を例示する。モジュールのいくつかのみがＨＭＤのディスプレイスクリーンにおいて提示されている画像を調節する際に関与するとして示されるが、実際には、ＨＭＤ内の他のモジュールがＨＭＤ上で提示された画像を調節する処理に関与してもよいことに留意されるべきである。実施形態は、ＨＭＤ上で据え付けられた１つ以上の前向きカメラによってキャプチャされた実世界環境の画像の一部を拡張することによって、実世界環境の拡張現実を提供するために使用されてもよい。代わりに、実施形態は、ＨＭＤにおいて提示された仮想現実（ＶＲ）シーンを調節するために使用されてもよい。ＶＲシーンは、ユーザのゲームプレイの予め記録されたビデオ、場所又はイベントの予め記録されたビデオ、ビデオゲームのゲームシーンなどからであってもよい。
【０１１３】
１つの実施形態では、実世界環境を拡張するためにＨＭＤが使用される。この実施形態では、ＨＭＤ１０４の様々な構成要素は、ユーザの注視方向を検出し、ユーザの検出された注視方向と合致するＨＭＤのスクリーン上でレンダリングされた画像の特定の部分（複数可）を拡張するために、コンピュータ１７２の構成要素と共に作用する。
【０１１４】
この実施形態では、ＨＭＤ１０４のコントローラ／コンソール通信回路（又は、単純に本明細書で「ＣＣ通信回路」と称される）２８９は、１つ以上の前向きカメラ２７４によって、ＨＭＤ１０４を身に着けているユーザの近辺からキャプチャされた実世界環境の画像を画像フレームとして受信する。画像フレームは、ＣＣ通信回路２８９によって処理される。処理の一部として、画像フレームは、ＨＭＤとコンピュータ１７２との間の通信接続のために確立された通信プロトコルに従って暗号化されてもよく、コンピュータ１７２にストリーミングされてもよい。
【０１１５】
コンピュータ１７２の通信デバイス１７８は、ストリーミング画像フレームを受信し、データを復号し、プロセッサに復号された画像データを転送する。プロセッサは、画像分析モジュール（図示せず）を含み、画像分析モジュールは、本産業において公知である異なるモデリングツールを使用して（例えば、複数の立体カメラを使用して）画像内でキャプチャされた実世界環境の３次元モデルを構築することによって、画像データを分析するように構成される。３次元モデルは、メモリ内で維持され、新たなデータがＨＭＤから受信されるにつれて、及び新たなデータがＨＭＤから受信されるときに更新される。一部の実施形態では、プロセッサは、ＨＭＤのディスプレイスクリーン上でレンダリングするために、２次元形式の画像を生成してもよく、ＨＭＤにそれを転送してもよい。画像データを３次元形式から２次元形式に変換することに関する更なる情報について、２０１４年３月２０日に出願された、「Ｓｈａｒｉｎｇ  Ｔｈｒｅｅ−Ｄｉｍｅｎｓｉｏｎａｌ  Ｇａｍｅｐｌａｙ」と題する特許出願第１４／２２０，４２０号への参照がなされてもよく、それは、その全体を参照することによって本明細書に組み込まれる。実世界環境を見る間、注視検出カメラからの画像は、ＣＣ通信回路によって同時に受信、処理されてもよく、コンピュータに注視画像フレームとして転送されてもよい。画像分析モジュールは、ユーザの注視方向を識別するために注視画像フレームを分析する。ユーザの注視がＨＭＤのディスプレイスクリーンの特定の部分に向けられると判定されるとき、画像分析モジュールは、ユーザの注意を捉えたオブジェクト又はポイントを識別するために、ユーザの検出された注視方向を実世界環境の生成されたモデル内のオブジェクト又はポイントと相関付ける。
【０１１６】
画像分析モジュールは、実世界環境を見る期間にわたってユーザの注視方向を追跡することを続ける。ユーザの注視が所定の期間の間にオブジェクト又はポイントに向けられたと判定されるとき、画像分析モジュールは、１つ以上の前向きカメラのレンズに対するズーム比を調節し、それによって、ユーザに関心のあるオブジェクト又はポイントをズームインすることをＨＭＤに指示する信号を生成してもよい。一部の実施形態では、ズーム比を調節するための信号は、カメラにオブジェクト上でズームインさせるように前向きカメラのレンズの焦点長さを調節するための信号を含んでもよい。一部の実施形態では、焦点長さを調節するための信号は、焦点長さを調節する速度を制御するための信号を含んでもよい。焦点長さの調節の速度は、実世界環境内でキャプチャされているタイプのコンテンツによって駆動されてもよく、又はユーザに依存してもよい。例えば、ユーザがより高速なズームインを扱うことが可能である場合、焦点長さを調節する速度は、より高速なズームインを扱うことができないユーザとは反対に高く設定されてもよい。一部の実施形態では、ズーム比を調節するための信号はまた、オブジェクトの画像がキャプチャされる深さに影響を与えるように、１つ以上の前向きカメラのレンズの開口設定を調節するための信号を含んでもよい。焦点長さ及び速度を調節するための信号を提供することに加えて、信号はまた、スクリーン（すなわち、ＨＭＤのスクリーン又は外部ディスプレイ面）の輝度レベルを調節し、それによって、スクリーン上でレンダリングされたオブジェクトが明確且つ焦点が合っているように見えるようにするための信号を含んでもよい。
【０１１７】
一部の実施形態では、実世界環境の画像フレーム内でキャプチャされた音声成分を拡張するための信号が生成されてもよい。そのような実施形態では、音声成分のみを調節するための信号が生成されてもよい。例えば、音声成分を調節するための信号は、ＨＭＤを身に着けているユーザがＶＲシーンの縁若しくは物理環境内のユーザに対して定義されたインタラクティブ領域の境界に近づいており、又は物理環境内でオブジェクト若しくは人に近接して到着していると判定されるときに生成されてもよい。
【０１１８】
代替的な実施形態では、ビデオ成分のみが拡張されてもよい。一部の実施形態では、画像フレームの、音声成分、ビデオ成分、又は音声成分及びビデオ成分の両方を拡張するためのコマンドは、ユーザによって提供されてもよい。そのような実施形態では、ＣＣ通信回路は、ユーザからコマンドを受信してもよく、コンピュータにコマンドを転送してもよく、それによって、コンピュータ内の画像分析モジュールは、拡張される必要がある適切な成分又は実世界画像の一部を識別することができる。一部の実施形態では、コマンドは、音声コマンドを通じて提供されてもよく、そのような音声コマンドは、マイクロフォンコントローラ２８４を通じて受信されてもよく、ＣＣ通信回路２８９によって処理されてもよく、更なる処理のためにコンピュータに転送されてもよい。コンピュータは、拡張されたコンテンツを提供するように関連するコンテンツレンダリング成分を調節することができるように、コマンドを処理し、ＨＭＤへの適切な信号を生成する。
【０１１９】
図４Ａ〜４Ｃは、１つの実施形態において、ユーザの注視方向を検出したことに応答して、ＨＭＤにおいてレンダリングされた実世界環境の画像を調節する例を例示する。図４Ａは、時間ｔ０に、ＨＭＤの前向きカメラによってキャプチャされ、ＨＭＤのディスプレイスクリーン上でレンダリングされた実世界の湖のシーンを見ているユーザを例示する。湖のシーンをレンダリングする間、注視検出カメラは、ユーザの注視がディスプレイスクリーン上でレンダリングされたポイント又はオブジェクト上で固定されるかどうかを判定するために、ユーザの注視方向を記録する。１つの実施形態では、注視検出カメラ（複数可）によってキャプチャされた画像は、ユーザの注視方向が実際にディスプレイスクリーンの特定の部分又はポイントに向けられていると特定するために分析される。次いで、ディスプレイスクリーンの特定の部分又はポイントへのユーザの注視方向が少なくとも所定の期間の間に続くかどうかが判定される。ユーザの注視がシフトしたと判定される場合、トリガイベントがＨＭＤによって開始されず、ＨＭＤは、湖のシーンからの画像をレンダリングすることを続ける。しかしながら、ユーザの注視が少なくとも所定の期間の間に（例えば、４秒、６秒など）ディスプレイスクリーンの特定の部分又はポイントに向けられることが続くと判定される場合、トリガイベントがＨＭＤにおいて開始される。トリガイベントを開始することの一部として、注視検出カメラからの画像は、１つの実施形態では、処理のために、コンピュータに注視検出画像フレームとして転送される。別の実施形態では、ディスプレイスクリーンの特定の部分又はポイントの座標は、ＨＭＤにおいて計算され、更なる処理のためにコンピュータにユーザ注視データとして転送される。
【０１２０】
注視検出画像フレームが提供される実施形態では、コンピュータにおいて利用可能な画像分析モジュールは、注視検出画像フレームを分析し、画像分析モジュールによって生成された湖のシーンの３次元モデルに注視方向をマッピングすることによって、ユーザの注視方向を湖のシーン内の特定のオブジェクト又はポイントに相関付けるために使用される。図４Ｂに示されるように、分析に基づいて、ユーザの注視方向が湖のシーン内の桟橋の端にあるメッセージボードに対応すると判定される。更に、分析は、オブジェクト（すなわち、メッセージボード）が、ディスプレイスクリーン上の仮想距離Ｄ１においてレンダリングされ、メッセージをユーザが読むのを困難にすると特定する。
【０１２１】
座標を識別するユーザ注視データがディスプレイスクリーンの特定の部分又はポイントを識別するために提供される実施形態では、コンピュータにおいて利用可能な画像分析モジュールは、ユーザ注視データ内で提供された座標を湖のシーン内の特定のオブジェクト又はポイントに相関付ける。一部の実施形態では、座標が３次元形式において提供され、画像分析モジュールは、座標を湖のシーンに対して生成された３次元モデルに相関付けてもよい。一部の実施形態では、座標が２次元形式において提供され、画像分析モジュールは、座標を湖のシーンに対して生成された２次元モデルに相関付けてもよい。
【０１２２】
関心の特定のポイント又はオブジェクトを識別すると、コンピュータは、ＨＭＤに、前向きカメラのレンズのズーム比を調節するための信号を転送し、それによって、図４Ｃ例示されるように、湖のシーン内でキャプチャされたオブジェクトがズームインされる。信号に応答してオブジェクトはここで、仮想距離Ｄ２において提示され、Ｄ２は、Ｄ１未満であり、それによって、ユーザが警告メッセージを読むことができるようにメッセージボードを大きくする。ズームの速度は、ズームインすることがユーザにいずれの不快感又は認識不能を生じさせないことを保証するように調節される。様々な実施形態が前向きカメラによってキャプチャされた実世界シーンの画像成分の一部を拡張することを議論するが、実施形態は、実世界環境内でキャプチャされた音声部分又はビデオ部分をも拡張するように拡大されてもよい。一部の実施形態では、ズーム比を調節するための信号は、前向きカメラのレンズの焦点長さを調節するための信号を含んでもよい。他の実施形態では、焦点長さを調節するための信号に加え又はそれに代えて、拡張されたオブジェクト又はポイントが鮮明に見えるようにレンズの開口を調節するための信号が含まれてもよい。これには、十分な光が画像センサを通ってユーザの関心を捉えたオブジェクトの明確且つ拡張されたビューを提供することを保証するために、レンズ開口を調節することが伴ってもよい。信号はまた、ユーザにいずれかの不快感を与えることなく、又は認識不能、目眩、若しくは乗り物酔いを生じさせることなく、ユーザにオブジェクトの拡張された画像を提供するように、そのような調節の速度を指定することができる。
【０１２３】
一部の実施形態では、ＨＭＤ及びコンピュータは、ＨＭＤのディスプレイスクリーン上で現在レンダリングしている、ビデオゲームのゲームシーンなどの仮想現実シーンの一部を拡張するために使用されてもよい。そのような実施形態では、ＨＭＤ１０４のコントローラ／コンソール通信回路（又は、単純に本明細書で「ＣＣ通信回路」と称される）２８９は、コンピュータ１７２からメディアストリームにおいてゲームデータを受信し、画像処理モジュール２９０にメディアストリームを転送し、メディアストリームは、ゲームデータを生成するために暗号化される。画像処理モジュール２９０は、ゲームデータの異なる成分を処理するようにＨＭＤの他の構成要素を従事させる。処理されたゲームデータは、ＨＭＤの対応する構成要素に転送される。例えば、画像処理モジュール２９０は、ゲームデータの別個のビデオ及び音声成分にビデオ／音声セパレータ２５４を従事させてもよい。画像処理モジュール２９０は次いで、ゲームデータのビデオ成分を復号してビデオフレームを識別し、ディスプレイスクリーン上でレンダリングするためにディスプレイコントローラにビデオフレームを転送するように、ビデオデコーダ２５５（図２）を従事させる。ビデオデコーダ２５５は、レンダリングのためにディスプレイコントローラ（すなわち、ディスプレイスクリーン２６６）に転送される前に、ゲームデータのビデオ成分のバッファリングを提供するためにビデオバッファ２８０を使用してもよい。ビデオのバッファリングは、ディスプレイスクリーン２６６上で提示されたゲームデータについての待ち時間を最小化するためのものである。同様に、画像処理モジュール２９０は、ＨＭＤの１つ以上のスピーカ上で音声データをレンダリングする前に、ゲームデータの音声成分を復号するように音声デコーダ２７６（図２）を従事させてもよい。音声デコーダ２７６は、ＨＭＤのスピーカに音声部分を転送する前に、ゲームデータの音声成分に対するバッファリングを提供するために音声バッファ２７２を使用してもよい。当然に、音声成分及びビデオ成分は、ＨＭＤのそれぞれの構成要素において提示されるときに同期される。
【０１２４】
一部の実施形態では、ゲームデータの提示の間、ユーザの動き及びアクションは、トリガイベントが開始される必要があるかどうかを判定するためにＨＭＤにおいて追跡される。例えば、トリガイベントは、ユーザの注視が少なくとも所定の期間の間に（例えば、２秒、５秒など）ディスプレイスクリーン上の特定のオブジェクト又はポイントに向けられると判定されるときにＨＭＤにおいて開始されてもよい。１つ以上の注視検出カメラ２７８は、ユーザの注視方向を判定するために、ユーザの注視を監視するように従事する。注視検出カメラは、ユーザの注視を追跡し、ユーザの注視を、ＨＭＤのディスプレイスクリーン上でレンダリングされたコンテンツの対応する部分にマッピングすることによって注視方向を判定する。ユーザの注視が所定の期間の間にスクリーン上でレンダリングされたコンテンツの特定のポイント、部分、又はオブジェクトに向けられていたと判定されるとき、注視検出カメラは、ユーザの目の画像をキャプチャし、処理のためにＣＣ通信回路２８９に画像フレーム内の画像を転送する。ＣＣ通信回路２８９は、ユーザの注視方向を検出するために入力を分析し、ユーザの注視が少なくとも所定の期間の間にコンテンツの特定のポイント又はオブジェクト上で固定されると判定されるときにトリガイベントを開始し、コンピュータ１７２の通信デバイス１７８に、ユーザの注視に関連するデータ（例えば、座標、画像など）を転送する。コンピュータ１７２は、ユーザの関心を捉えたゲームデータの特定のポイント又はオブジェクトを識別するために、注視方向データを使用し、データを、ＨＭＤのスクリーン上でレンダリングするために現在提供されているビデオ画像にマッピングする。
【０１２５】
一部の実施形態では、ユーザの注視方向は、ゲームデータ若しくは実世界環境により又はゲームデータ若しくは実世界環境内で提供された視覚的刺激によって影響されることがある。例えば、視覚的刺激は、関心のオブジェクト若しくはポイントにおける、又は関心のオブジェクト若しくはポイントの近くの、ビーコン、標識、ハイライト、又はカラーフラッシュなどの形式にあることがある。視覚的刺激は、仮想距離においてレンダリングされたオブジェクトに向かったユーザの注視方向におけるシフトにつながるユーザの注意を捉えることができる。代わりに、ユーザの注視方向は、ＨＭＤ１０４のディスプレイスクリーンでレンダリングされるとき、仮想距離にあるように見える特定のオブジェクトに焦点を合わせることを試みるユーザの目を細めることなど、ユーザの注視特性における変化によって影響されることがある。関心のオブジェクト又はポイントは、例えば、ユーザが明確に見ることが困難であることがある。一部の実施形態では、開始されたトリガイベントに応答して、コンピュータ１７２は、オブジェクトに焦点を合わせるようにゲームデータを調節することをゲームロジックに指示する信号を生成してもよい。代替的な実施形態では、信号は、ＶＲシーン内の関心のオブジェクト又はポイント上でデジタル的にズームインするように画像のレンダリングを調節するための命令をＨＭＤに提供することができる。
【０１２６】
一部の他の実施形態では、注視検出によって生じるトリガイベントの発生に応答して、コンピュータによって生成された信号は、ＨＭＤのレンズの光学設定を調節するための命令を含んでもよい。例えば、信号は、ＨＭＤのレンズに対するズーム比を調節し、それによって、スクリーン上でレンダリングされたオブジェクトをズームインし、スクリーン上でレンダリングされたオブジェクトに焦点を合わせることができるための命令を含んでもよい。ズーム比への調節は、仮想距離における変化を生じさせ、仮想距離において、オブジェクトは、第１の仮想距離から第２の仮想距離にＨＭＤのディスプレイスクリーン上でレンダリングされ、第２の仮想距離は、第１の仮想距離よりも短い。仮想距離における調節は、オブジェクトがＶＲシーン内でユーザの相対位置に対してより近くに持って行かれると見せる。
【０１２７】
一部の実施形態では、ＶＲシーンは、ユーザに関心のあるポイント又はオブジェクトとすることができる１つ以上のポイント又はオブジェクトを含んでもよい。先に言及されたように、ＶＲシーンは、ユーザ又はコンテンツプロバイダによって提供された予め記録されたビデオ、ユーザのビデオゲームプレイの記録などであってもよい。予め記録されたビデオは、他のユーザ又はコンテンツプロバイダによって関心があるとして識別されていたことがある関心の１つ以上のオブジェクト又はポイントを含んでもよい。オブジェクトは、タグ、ビーコン、ハイライト、カラーフラッシュ、又は視覚的若しくは音声的刺激を使用して識別されてもよい。ＶＲシーン内のそれらの視覚的刺激は、特定の方向においてユーザが注視するのに影響を与えることがある。コンピュータ内の画像分析モジュールは、ユーザの注視方向を判定し、前に識別され、注視方向と合致するＶＲシーン内のオブジェクト又はポイントの１つを識別する。
【０１２８】
一部の実施形態では、関心のオブジェクト又はポイントが識別されると、ユーザは、関心のオブジェクト又はポイントのＩＤを確認するオプションが提供されてもよい。例えば、オプションは、ユーザ選択のためにＨＭＤに通信可能に結合されたＨＭＤ又はＨＨＣ上のボタン、ＨＨＣ又はＨＭＤ内で提供された制御を使用して選択することができるＨＭＤのディスプレイスクリーンにおいてユーザインタフェース上で提示されたオプション、音声オプション、ジェスチャオプション（例えば、外部画像キャプチャデバイスによってキャプチャされた頷き又は手の振り、ユーザによって提供され、ＨＭＤの画像キャプチャデバイスによって検出されたウインク又は瞬き、ＨＨＣ又はＨＭＤの入力パッド上のタップ、ＨＨＣ又はＨＭＤの入力パッド上のスワイプアクションなど）として提供されてもよい。オプションにおいて提供されたユーザ選択及び／又はアクションは、ユーザ入力回路２６２を使用してキャプチャされ、ＣＣ通信回路２８９によって処理される。ユーザ選択に基づいて、ＨＭＤのレンズのズーム比を調節し、又はＶＲシーンの画像を調節し、それによって、オブジェクトが明確、鮮明、及びユーザの目の近くに見えるようにしてそれを識別可能にする仮想距離において、選択されたオブジェクトに焦点を当てるようにすることができるようにするための信号は、ＨＭＤへのコンピュータによって生成されてもよい。
【０１２９】
一部の実施形態では、コンピュータにおいて利用可能な画像処理アルゴリズムは、様々なユーザによってＶＲシーン内で識別された関心のポイントを使用し、ユーザをテレポートすることができる関心のポイントに近接した領域を定義する。領域は、関心のポイントの近く又は周囲の地形属性を考慮するように予め定義される。例えば、山のシーンがＨＭＤのディスプレイスクリーン上で提示されている場合、関心の様々なポイントは、山の異なる高度において潜在的な景色のポイントとして識別されてもよい。関心のそれらのポイントは、一部の実施形態では、ユーザをテレポートするための仮想領域を定義するために使用される。関心のオブジェクト又はポイントの周囲又は近接した仮想領域が定義されるとき、画像処理アルゴリズムは、ＶＲシーンの地形又は他の特徴を考慮する。一部の実施形態では、ＶＲシーン内の関心のオブジェクト又はポイントの近く又は周囲の所定の仮想領域は、ユーザを「テレポート」するために使用されてもよい。それらの仮想領域は、ＨＭＤを身に着けているユーザが操作している物理空間にマッピングされ、ＶＲシーンを見る間にユーザとのインタラクションが行われる物理空間内の移動の区域を定義する。
【０１３０】
ユーザをテレポートすることは、１つの実施形態では、ＨＭＤのディスプレイスクリーン上で提示されたＶＲシーンの画像を調節することを含んでもよい。ＶＲシーンの画像の調節は、例えば、注視方向によって定義されたように、ユーザの関心又は注意をキャプチャしたＶＲシーン内のオブジェクト又はポイントと関連付けられた所定の仮想領域によって定義された新たな位置にユーザが移動したように見せるような方式で行われる。一部の実施形態では、ユーザをテレポートすることの一部として、ＶＲシーンの画像は、ＨＭＤにおいてレンダリングされたＶＲシーンが所定の仮想領域からのビューを反映するように調節される。例えば、山のシーン内で、ユーザが景色のポイントに近い所定の領域にテレポートされるので、ＨＭＤのディスプレイスクリーン上でレンダリングされたコンテンツは、景色ポイントから見えるような山のシーンのビューである。調節されたコンテンツをレンダリングした後、物理空間内のユーザによるいずれかの移動は、景色のポイントにおいてテレポートされた所定の仮想領域内のユーザの移動に転換され、仮想シーンのコンテンツは、検出されたユーザの移動に従って調節される。例えば、ユーザが頭部を右に移動させる場合、仮想シーンの右側からのシーンがレンダリングされ、ユーザが頭部を左に移動させる場合、ユーザの注視方向と合致する谷のシーンがレンダリングされる。一部の実施形態では、ＶＲシーンへの調節は、所定の期間の間に実行され、所定の期間の満了の後、調節の前のＶＲシーンの画像がレンダリングされる。
【０１３１】
図５Ａ及び５Ｂは、１つの実施形態において、様々な景色のポイント、又は他のユーザ若しくはそれにユーザをテレポートすることができるコンピュータによって識別された関心のオブジェクト／ポイントを識別するＶＲシーンの１つのそのような例を特定する。図５Ａは、１つの実施形態において、シーンの画像を分析することによって、ユーザのＨＭＤのディスプレイスクリーン上でレンダリングされた観光ルートに沿った休憩所のシーンと共に、他のユーザ又はコンピュータのいずれかによって識別された休憩所における関心の異なるオブジェクト又はポイントを例示する。この実施形態では、シーンは、ユーザ又はシステムによってキャプチャされ、他のユーザに利用可能とされた予め記録された実世界シーンである。一部の実施形態では、シーンは、例えば、ゲームアプリケーションなどのインタラクティブアプリケーションによって提供された仮想シーンであってもよい。一部の実施形態では、関心の識別されたオブジェクト又はポイントは、タグと関連付けられ、又は視覚的若しくは聴覚的刺激を使用して識別される。例えば、観光ドライブに沿って休憩所のシーン内で識別された関心のポイントの一部は、鴨池、ピクニック場、ガスステーション、山道上の１つ以上の景色のポイント、遊び場、小川の上の橋、及び休憩室を含んでもよい。関心のそれらのポイントの各々は、ＨＭＤにおいて提示されるとき、ハイライト、ビーコン、輪郭、矢印、フラッシングライトなどを使用して、又はサウンド若しくは他の聴覚的刺激によって識別されてもよい。簡易化を目的として、関心のポイントは、図５Ａにおいて参照符号１〜９を使用して識別される。一部の実施形態では、シーン内の（ＶＲ又は実世界シーンのいずれか）関心のオブジェクト又はポイントは、ＨＭＤにおけるＶＲシーンの表現の間に自動的に識別される（例えば、視覚的に又は聴覚的に）。他の実施形態では、ＶＲシーン内の関心のオブジェクト又はポイントが視覚的に又は聴覚的に識別されるように、ＶＲシーンの表現の間にＨＭＤにおけるユーザインタラクションが必要とされることがある。例えば、現在のＶＲシーンと関連付けられた関心のポイントが強調されるように、ＨＭＤ上でボタン押下が必要とされることがある。ＨＭＤ上でレンダリングされたシーンはまた、シーン内で識別された関心の異なるポイントにおける所定の仮想領域、又は関心の異なるポイントの近くの所定の仮想領域を識別することができる。図５Ａに例示されるシーンでは、ＨＭＤを身に着けているユーザは、鴨が存在する池の近くで識別されたポイント１の近くの所定の仮想領域からＶＲシーンを見ている。
【０１３２】
図５Ｂは、１つの実施形態において、関心のポイント又はオブジェクトの周囲又は近くで識別された他の所定の仮想領域を例示する。仮想領域は、仮想領域がそれと関連付けられた関心のオブジェクト又はポイントの地形及び性質又はタイプに基づいて識別されてもよい。図５Ｂでは、参照符号によって識別される関心のポイント（１〜９）の各々は、それと関連付けられた対応する所定の仮想領域（１’〜９’）を有する。池の近くの所定の仮想領域（参照符号１によって表される）は、ユーザにとってアクセス可能な池を囲む通路１’であってもよく、それは、仮想空間内でユーザの移動を阻止することがある障害物（木、潅木、構造など）が存在しないことを意味する。同様に、ガスステーションについての仮想領域（参照符号３によって表される）は、ガスポンプを含むガスステーションの前にあり、ガスステーションの側に向かう領域（参照符号３’によって表される）であると識別されてもよい。更に、関心の様々なポイントの近くで利用可能な所定の仮想領域は、一部の実施形態では、ユーザが操作する物理空間にマッピングされ、それによって、物理空間内のいずれかの移動を仮想空間内のユーザの移動と相関付けることができる。
【０１３３】
物理空間内のユーザの移動は、ＶＲシーン内のユーザのアクションに相関付けられてもよく、それは、ＨＭＤ上でレンダリングされたシーンにおける変化を生じさせる役割を果たす。例えば、ユーザは、ポイント１の近くで定義された所定の領域１’から、図５Ａに例示される観光ルートに沿った、休憩所を含むＶＲシーンを見ることに最初に（すなわち、時間ｔ０）取りかかってもよい。ＶＲシーンを見る間、ユーザの注視が監視されてもよい。ユーザの注視方向が時間ｔ３〜ｔ８から（例えば、少なくとも４秒の所定の期間）ポイント２に向けられているとシステムが検出するとき、ユーザは、所定の期間の満了の後にポイント２の周囲で定義された所定の領域２’に「テレポート」される（すなわち、ユーザは、時間ｔ７〜ｔ８にテレポートされる）。テレポートは、突然であってもよく、又は徐々に行われてもよく、テレポートの速度は、ユーザの好み、レンダリングされているコンテンツのタイプなどに依存する。テレポートは、ＨＭＤのディスプレイスクリーンにおいてレンダリングされた画像を、所定の領域２’によって定義された新たな位置におけるユーザの視点からレンダリングされた新たなビューに、ＨＭＤにおいてレンダリングされたＶＲシーンのビューを変化させるように調節する。テレポートの一部として、ポイント２の周囲のＶＲシーンの特定の部分は、より大きく又はより近くに見え、ポイント２の近辺内のその他は、或る距離において提示される。ＶＲシーンの方向は、ユーザの注視方向に基づいており、ＶＲシーンは、ユーザの視点から提示される。新たな位置２’にユーザをテレポートした後、システムは、ユーザのアクション、動き、及び注視方向を監視することを続ける。ユーザの注視方向がポイント７にシフトしたと検出されるとき、システムは、ユーザの注視方向が少なくとも所定の期間（例えば、４秒の）の間にポイント７の上にあるかどうかを判定する。ユーザの注視が少なくとも所定の期間の間にポイント７の上にあったと判定されるとき、システムは、ポイント７と関連付けられた所定の領域７’にユーザをテレポートし、ユーザの新たな位置の視点からＶＲシーンの画像をレンダリングする。新たな位置（所定の領域７’）にユーザをテレポートした後、ユーザが或る期間の間に注視方向を変化させなかったと判定されるとき、１つの実装態様では、ユーザは、変化が検出されるまで新たな位置に残ってもよい。代替的な実装態様では、ユーザは、或る期間の後にポイント１の近くの所定の領域にユーザをテレポートすることによって、元のビューに戻ってもよく、ユーザは、ポイント１の近くの所定の領域からのＶＲシーンを提示される。
【０１３４】
図６は、１つの実施形態において、ユーザの注視方向に基づいて、ユーザのＨＭＤのディスプレイスクリーン上でレンダリングされた画像を調節するための遷移ポイントを識別するグラフィカル表現を例示する。時間ｔ０に、ユーザは、他のオブジェクトの中のオブジェクトＡ及び関心のポイント（グラフ内のポイント１）を含むＶＲシーンを現在見ていることがある。時間ｔ３に、システムは、ユーザの注視方向がＶＲシーン内のオブジェクトＡ（グラフ内のポイント２）に焦点を合わせていると検出してもよい。システムは、ユーザの注視方向を監視することを続け、時間ｔ４に、システムは、ユーザの注視方向が所定の期間の間にオブジェクトＡの上にあるままであり、所定の期間の間にオブジェクトＡを選択、強調する（グラフ内のポイント３）と判定してもよい。一部の実施形態では、強調することの一部として、関心のオブジェクト又は関心のポイントは、ユーザの注意を捉えた関心のオブジェクト又はポイントを識別するために輪郭が描かれてもよい。
【０１３５】
関心のオブジェクト又はポイントの輪郭を描き又は強調することに加え、関心の選択されたオブジェクト又はポイントが実際にユーザの関心を掴んだ関心のオブジェクト又はポイントであることの確認を取得する要求がシステムによって生成されてもよく、ユーザに提示されてもよい。確認は、所定の期間の間に提示されてもよい。ユーザは、要求に応答して、ＨＭＤにおけるアクションを通じて（例えば、ボタン押下、ＨＭＤにおいて設けられたタッチインタフェース上のスワイプなど）、又はコントローラを使用して（例えば、コントローラを使用して若しくは音声コマンドを介してのボタン押下若しくはスワイプジェスチャ）確認を提供してもよい。ユーザアクションは、ユーザアクションを関心のオブジェクト又はポイントのタグと関連付けることによって、関心のオブジェクト又はポイントと関連付けられる。所定の期間の満了の後、又はユーザから確認を取得した後、ユーザの注視方向がオブジェクトＡの上にあるままである場合、システムは、オブジェクトＡがズームインされるようにオブジェクトＡの画像を調節するための信号を生成する。ディスプレイスクリーンにおいてオブジェクトＡの画像を調節する速度は、レンダリングされているコンテンツのタイプ（例えば、高度な集中力のビデオゲームシーン、低い集中力の仮想ツアーなど）、オブジェクト（静止又は移動）のタイプ、属性によって、及びユーザの快適性レベルによって駆動されてもよい。例えば、オブジェクトＡが、図４Ａ〜４Ｃに例示されるメッセージボードなどの静止オブジェクトであり、及び／又は（ＨＭＤ上でレンダリングされた様々なコンテンツ（移動オブジェクトを含む）に対するユーザの反応に基づいて）ユーザが高速なズームインを扱うことが可能である場合、オブジェクトＡは次いで、グラフ内のポイント４によって例示されるように、高速でズームインされてもよい。しかしながら、ユーザが低速な調節を好む場合、オブジェクトＡは、ポイント４’によって例示されるように、適度な速度でズームインされてもよく、又はポイント４”によって例示されるように、より低速でズームインされてもよい。
【０１３６】
一部の実施形態では、ＨＭＤによって提示されたビューは、ＶＲシーンからの画像が背景内でレンダリングされ、ズームインされたオブジェクトの画像がＶＲシーンの上部でオーバレイとして提供されるように調節される。一部の実施形態では、ズームインされたオブジェクトＡを有するＶＲシーンは、或る期間の間に（例えば、３秒、４秒など）レンダリングされ、ＨＭＤのディスプレイスクリーンは、ポイント５によって例示されるように、オブジェクトＡのズームインの前にユーザに示されていたＶＲシーンからの画像を見るために再度戻される。一方で、オブジェクトＡが所定の期間未満の期間の間に強調されている間、ユーザの注視方向がオブジェクトＡからシフトした場合、システムは、オブジェクトＡの点線上のポイント３’によって例示されるように、ＶＲシーンの現在のビューを保持してもよい。
【０１３７】
ズームインされているオブジェクトの画像を有するＨＭＤのディスプレイスクリーン上でレンダリングされているＶＲシーン又は実世界環境の画像に関して詳細に説明された様々な実施形態はまた、ＶＲシーン又は実世界環境の画像がＨＭＤの外部にある表示面上でＨＭＤによって投影される実施形態に拡大されてもよい。このケースでは、ズームインされたオブジェクトの画像はまた、ＶＲシーン又は実世界環境の画像がＨＭＤによって投影されている表示面上で提示される。代替的な実施形態では、オブジェクトがズームインされるとき、ズームインされたオブジェクトは、ＶＲシーンが表示面上で投影されている間にＨＭＤのディスプレイスクリーン上で提示されてもよく、又は逆もそうである。
【０１３８】
別の実施形態では、ユーザの注意を捉えたオブジェクト（ユーザの注視方向に基づいて）は、移動オブジェクト、オブジェクトＢであってもよい。そのような実施形態では、移動オブジェクトＢへの調節は、オブジェクトＢが移動している速度を考慮した方式で実行されてもよい。図６に示されるように、ユーザの注視方向が移動オブジェクトＢ上にある（ポイント１０において）と検出されるとき、オブジェクトＢは、ポイント１１によって例示されるように、選択及び強調される。ユーザの注視方向が少なくとも所定の期間の間にオブジェクトＢの上に残り続けると判定されるとき、ポイント１２によって例示されるように、ユーザの注視方向は監視され続け、オブジェクトＢはズームインされる。オブジェクトＢ上でのズームインの速度は、オブジェクトＢを十分に明確且つ焦点を合わせて提示することを続ける間、ユーザにいずれの不快感を生じさせることなく、オブジェクトＢの拡張された画像を提示するようにオブジェクトＢが移動している速度を考慮してもよい。一部の実施形態では、ＨＭＤのディスプレイスクリーンと関連付けられた、見る深さは、ユーザに対してオブジェクトＢの拡張された画像をレンダリングするとき、オブジェクトの移動及び／又はＨＭＤを身に着けているユーザの頭部の移動の速度に基づいて動的に調節されてもよい。ディスプレイスクリーンの見る深さの動的な調節は、乗り物酔いを減少させ、及び／又はユーザを慣れさせることを支援するようにユーザに提示された視野を調節するためのものである。調節されたオブジェクトＢは、オブジェクトＢが存在するＶＲシーンの現在のビューを再開する前に、ポイント１３によって例示されるように、或る期間の間にレンダリングされる。
【０１３９】
一部の実施形態では、オブジェクトがズームインされる速度、ズームの量などは、ＨＭＤを身に着けているユーザの目の視覚特性を考慮してもよい。視覚特性は、ユーザによって変わり、ユーザの視覚の明確さに影響を与えるユーザの目における変則性を検出するために使用される光学因子を識別する。一部のケースでは、視覚特性は、矯正眼鏡又はレンズを使用して矯正することができる、一般に生じる目の屈折異常を判定するために使用される。ユーザと関連付けられたそれらの視覚特性の詳細は、オブジェクトのズームインの速度又は量を判定するときに考慮されてもよい。
【０１４０】
一部の実施形態では、オブジェクトの画像を調節するための信号は、実世界環境からのオブジェクトの画像をキャプチャするときの、前向きカメラのレンズの焦点長さを調節するための信号、オブジェクトの深さへの調節を生じさせるようにレンズの開口設定を調節するための信号、又はユーザがオブジェクトを明確に見ることができるようにオブジェクトの輝度レベルを調節するための信号などを含んでもよい。一部の実施形態では、オブジェクトの画像がレンダリングされているスクリーンの輝度レベルはまた、スクリーン上でレンダリングされるときにオブジェクトを見ることを可能にするように調節されてもよい（輝度レベルを高くし、及び低くすることのいずれかによって）。
【０１４１】
一部の実施形態では、ＨＭＤのディスプレイスクリーンは、第１の部分及び第２の部分に分割されてもよい。ユーザの関心を捉えたオブジェクトは、第１の部分内でレンダリングされてもよく、残りのコンテンツ（実世界環境又はＶＲシーン）は、第２の部分内でレンダリングされてもよい。ディスプレイスクリーンは、ユーザが中断することなくＶＲシーンを見ることを可能にするのと同時に、ズーム比によって調節された関心のオブジェクト又はポイントがレンダリングされることを可能にするように、水平に、垂直に、対角線上に、放射状になど、又はいずれかの他の方向に分割されてもよい。例えば、スクリーンは、ユーザの注意を生じさせたオブジェクトが移動している（例えば、投げたボール又は跳ねたボールなど）方向に従って分割されてもよい。
【０１４２】
一部の実施形態では、ＨＭＤによって提供された実世界環境／ＶＲシーン及びオブジェクトの画像のビューは、信号に応答して分割されてもよく、それによって、実世界環境又はＶＲシーンの画像は、第１のスクリーン上でレンダリングされ、オブジェクトの画像は、第２のスクリーン上でレンダリングされる。例えば、ＶＲシーンは、オブジェクトの拡張された画像がＨＭＤのディスプレイスクリーン（すなわち、第２のスクリーン）上でレンダリングされる間、ＨＭＤ内で利用可能なプロジェクタ機構を使用して、ＨＭＤの外部にある表示面（すなわち、第１のスクリーン）上で投影されてもよい。一部の実施形態では、プロジェクタ機構は、ＨＭＤの外部にあってもよいが、ＨＭＤ、又はＨＭＤに通信可能に結合されたコントローラにおいて提供された入力を使用して制御されてもよい。別の例では、ＨＭＤの外部にある表示面は、ＶＲシーンからの画像がＨＭＤのディスプレイスクリーン上でレンダリングされる間、オブジェクトの拡張された画像を投影するために使用されてもよい。
【０１４３】
一部の実施形態では、物理空間内のユーザ移動は、ＨＭＤ上でレンダリングされたＶＲシーン内の画像を調節するために使用される。物理空間内のユーザの移動は、ＶＲシーン内の所定の領域（複数可）内で利用可能な空間の量によって制御されてもよい。一部の実施形態では、ＨＭＤにおいて提示されたＶＲシーンは、検出された移動に基づいてユーザの相対的位置を識別し、検出された移動と相関付けるようにＶＲシーン内の画像を調節する。ユーザが物理世界内の利用可能な空間を判定することを支援するために、システムは、また線識別子として、又は他の識別技術を使用して強調又は提示されたＶＲシーン内のユーザの初期位置と共に、物理世界内のオブジェクトの輪郭をＶＲシーン上のオーバレイとして提供してもよい。ユーザが周囲を移動するにつれて、ユーザの移動は、ＶＲシーン内のオブジェクト（複数可）の近くの所定の仮想領域内で反映される。ユーザが所定の仮想領域の境界の近くに移動するとき、ユーザは、視覚的又は聴覚的警告が提供される。一部の実施形態では、山の崖のシーンについての視覚的警告は、ユーザが境界の近くに移動していることをユーザに示す。同様に、物理世界内のユーザの移動は、物理世界内のユーザの移動に対して利用可能な空間にマッピングされてもよい。物理世界内で利用可能な空間は、物理オブジェクト、他のユーザなどによって境界が定められてもよい。ユーザが物理オブジェクト又は他のユーザのいずれかに近づくにつれて、ＶＲシーン内の画像は、ユーザに警告を提供するように調節されてもよい。一部の実施形態では、警告は、ユーザについての移動の境界及び境界へのユーザの近接性を識別する視線として提示されてもよい。一部の実施形態では、視線の強度は、ユーザが境界に近づくにつれて増大する。一部の実施形態では、視覚的刺激に代えて又は加えて、ユーザは、ユーザが物理オブジェクト又はＶＲシーン内で定義された境界に近づくにつれて増大するそのような警告の強度を有する触覚的又は聴覚的警告が提示されてもよい。安全条件に基づいてユーザに警告を提供することに関する更なる情報について、２０１４年４月１６日に出願された、「Ｓｙｓｔｅｍｓ  ａｎｄ  Ｍｅｔｈｏｄｓ  ｆｏｒ  Ｔｒａｎｓｉｔｉｏｎｉｎｇ  Ｂｅｔｗｅｅｎ  Ｔｒａｎｓｐａｒｅｎｔ  Ｍｏｄｅ  ａｎｄ  Ｎｏｎ−Ｔｒａｎｓｐａｒｅｎｔ  Ｍｏｄｅ  ｉｎ  ａ  Ｈｅａｄ  Ｍｏｕｎｔｅｄ  Ｄｉｓｐｌａｙ」と題する特許出願第１４／２５４，８８１号への参照がなされてもよく、それは、その全体を参照することによって本明細書に組み込まれる。
【０１４４】
本明細書で議論される様々な実施形態は、ＨＭＤが、ユーザの注視方向に基づいて画像が調節されることを可能にする仮想双眼鏡としての役割を果たすことを可能にする。画像は、ユーザがユーザに関心があるオブジェクトにより近い新たな位置にテレポートされていると見せるようにする方式で調節される。
【０１４５】
図７は、本発明の実施形態に従った、ヘッドマウントディスプレイ（ＨＭＤ）のスクリーン上で実世界環境からの関心のオブジェクトを提示する方法の動作を例示する。方法は、動作７１０において開始し、そこでは、ＨＭＤを身に着けているユーザに近接した実世界環境の画像がＨＭＤにおいて受信される。画像は、例えば、ＨＭＤの面に配置された１つ以上の前向きカメラから受信される。画像は、画像内でキャプチャされた様々なオブジェクト及びシーンを判定するために、ＨＭＤのプロセッサによって処理される。
【０１４６】
ＨＭＤは次いで、動作７２０に例示されるように、ＨＭＤを身に着けているユーザの注視方向を判定する。注視方向は、ＨＭＤの内面に設けられ、ユーザの両目のうちの１つ以上に向けられた注視検出カメラ又は他の内向き画像キャプチャデバイスなどの１つ以上のカメラを使用して、ユーザの注視を追跡することによって判定される。注視方向は、座標のセットによって識別されてもよい。キャプチャされた画像は、分析のためにＨＭＤのプロセッサにカメラ（複数可）によって転送される。
【０１４７】
ＨＭＤのプロセッサは、動作７３０に例示されるように、カメラから受信された画像を分析し、ユーザの関心を捉えた実世界環境内のオブジェクト又はポイントを判定する。関心のオブジェクト又はポイントは、注視方向から識別された座標のセットをディスプレイスクリーンの特定の領域と一致させ、その特定の領域内でレンダリングされたオブジェクト又はポイントを識別することによって判定される。これは、関心のオブジェクト又はポイントを識別する１つの方法であり、関心のオブジェクト又はポイントを識別する他の方法も使用されてもよい。例えば、実世界環境の画像は、環境内で発見された様々なポイント、オブジェクトの座標を取得し、注視方向の座標を環境内の対応するポイント、オブジェクトにマッピングするために分析されてもよい。マッピングは、実世界環境の画像の２次元又は３次元表現を使用して実行されてもよい。画像分析はまた、関心のオブジェクト又はポイントがレンダリングされている仮想距離を判定する。
【０１４８】
ＨＭＤのプロセッサは次いで、動作７４０に例示されるように、実世界環境の画像をキャプチャするように従事した１つ以上の前向きカメラのレンズに対するズーム比を調節し、それによって、関心のオブジェクト又はポイントの画像がズームインされ、関心のオブジェクト又はポイントに焦点が合わされるようにするための信号を生成する。ズームインは、オブジェクトの画像が、元の画像よりもユーザに対して近くに見える第２の仮想距離においてレンダリングされるようにする。更に、ズームインは、オブジェクトの画像に焦点を合わせると共に画像を鮮明且つ明確に維持するような方式で行われる。
【０１４９】
図８は、異なるゲームにアクセスを提供する際に使用することができる情報サービスプロバイダアーキテクチャの実施形態を例示する。情報サービスプロバイダ（ＩＳＰ）１０７０は、地理的に分散され、ネットワーク１０５０を介して接続されたユーザ１０８２に多数の情報サービスを配信する。様々な実施形態がゲームに高速なアクセスを提供することに関連して議論されてきたが、実施形態は、１つ以上のタイプの他のサービスを提供するように拡大されてもよい。例えば、ＩＳＰは、ゲームなどのちょうど１つのタイプのサービスを配信することができ、又はゲーム、株価更新、放送メディア、ニュース、スポーツ、ゲーミングなどの様々なサービスを配信することができる。加えて、各々のＩＳＰによって供給されるサービスは、動的であってもよく、すなわち、サービスは、いずれかの時点で追加されてもよく、又は取り除かれてもよい。よって、特定の個人に特定のタイプのサービスを提供するＩＳＰは、時間と共に変化することができる。例えば、ユーザは、ユーザが故郷にいる間にユーザに近接した近くのＩＳＰによってサービスされてもよく、ユーザは、ユーザが異なる都市に旅行に行くときに異なるＩＳＰによってサービスされてもよい。故郷のＩＳＰは、必要とされる情報及びデータを、接続モジュールを通じてユーザのゲーミング又はアクセスプロファイルから新たなＩＳＰに転送し、それによって、ユーザ情報は新たな都市へのユーザに「従い」、データをユーザにより近くにし、アクセスすることを容易にする。別の実施形態では、ユーザについての情報を管理するマスタＩＳＰと、マスタＩＳＰからの制御の下にユーザと直接相互作用するサーバＩＳＰとの間で、マスタ−サーバ関係が確立されてもよい。別の実施形態では、データは、クライアントが世界の周囲を移動するにつれて、１つのＩＳＰから別のＩＳＰに転送され（すなわち、ユーザに割り当てられたデータセンタの切り替えの間）、そのような転送は、ユーザにサービスするためにより良好な位置にあるＩＳＰを、それらのサービスを配信する１つにするために、それぞれのＩＳＰによって提供されたサービスの適合性に基づいてもよい。
【０１５０】
ＩＳＰ１０７０は、ネットワークを通じて顧客に、コンピュータに基づくサービスを提供するアプリケーションサービスプロバイダ（ＡＳＰ）１０７２を含む。ＡＳＰモデルを使用して供給されるソフトウェアはまた、オンデマンドソフトウェア又はソフトウェアアズアサービス（ＳａａＳ）と称されることがある。特定のアプリケーションプログラム（顧客関係管理など）へのアクセスを提供する単純な形式は、ＨＴＴＰなどの標準プロトコルを使用することによってである。アプリケーションソフトウェアは、例えば、ベンダのシステムに存在し、ＨＴＭＬを使用してウェブブラウザを通じて、ベンダによって提供された特殊目的クライアントソフトウェアによって、又はシンクライアントなどの他のリモートインタフェースを介してユーザによってアクセスされる。
【０１５１】
広範囲の地理的領域にわたって配信されるサービスは、クラウドコンピューティングを使用することが多い。クラウドコンピューティングは、動的に拡張可能であり、仮想化されたリソースがインターネットを通じてサービスとして提供されることが多いコンピューティングのスタイルである。ユーザは、それらをサポートする「クラウド」内の技術インフラストラクチャにおいて専門家である必要はない。クラウドコンピューティングは、インフラストラクチャアズアサービス（ＩａａＳ）、プラットフォームアズアサービス（ＰａａＳ）、及びソフトウェアアズアサービス（ＳａａＳ）などの異なるサービスに分割されてもよい。クラウドコンピューティングサービスは、ウェブブラウザからアクセスされる共通ビジネスアプリケーションオンラインを提供することが多く、ソフトウェア及びデータは、サーバに記憶される。クラウドという用語は、インターネット（例えば、サーバ、記憶装置、及びロジックを使用した）がコンピュータネットワーク図においてどのように記述されるかに基づいて、インターネットについてのメタファとして使用され、それが隠蔽する複合インフラストラクチャについての抽象概念である。
【０１５２】
更に、ＩＳＰ１０７０は、シングルプレイヤ及びマルチプレイヤビデオゲームをプレイするためにゲームクライアントによって使用されるゲーム処理サーバ（ＧａＰＳ）１０７４を含む。インターネットを通じてプレイされるほとんどのビデオゲームは、ゲームサーバへの接続を介して動作する。典型的には、ゲームは、プレイヤからデータを収集し、他のプレイヤにそれを分散する専用サーバアプリケーションを使用する。これは、ピアツーピアの配置よりも効率的且つ効果的であるが、別個のサーバがサーバアプリケーションをホストすることを必要とする。別の実施形態では、ＧａＰＳは、プレイヤの間の通信を確立し、それぞれのゲームプレイングデバイスは、集中化ＧａＰＳに依存することなく情報を交換する。
【０１５３】
専用ＧａＰＳは、クライアントとは独立して稼働するサーバである。そのようなサーバは通常、データセンタに位置付けられた専用ハードウェア上で稼働し、より多くの帯域幅及び専用処理力をもたらす。専用サーバは、ほとんどのＰＣに基づくマルチプレイゲームに対してゲームサーバをホストする好ましい方法である。大規模マルチプレイヤオンラインゲームは、ゲームタイトルを保有するソフトウェア会社によって通常ホストされる専用サーバ上で稼働し、それらがコンテンツを制御及び更新することを可能にする。
【０１５４】
ブロードキャスト処理サーバ（ＢＰＳ）１０７６は、観衆に音声又はビデオ信号を分散する。観衆の非常に狭い範囲へのブロードキャスティングは、ナローキャスティングと称されることがある。ブロードキャスト分散の最終区間は、信号をどのようにリスナ又はビューワに到達させるかであり、それは、無線基地局若しくはＴＶ基地局のように無線でアンテナ及び受信機に届くことができ、又は基地局を介して、若しくはネットワークから直接、ケーブルＴＶ若しくはケーブル無線（つまり、「無線ケーブル」）を通じて届くことができる。インターネットはまた、特に、信号及び帯域幅が共有されることを可能にするマルチキャスティングにより、受信者に無線又はＴＶのいずれかを搬送することができる。歴史的に、ブロードキャストは、国内放送又は地域放送など、地理的領域によって区分けされてきた。しかしながら、高速なインターネットの拡散に伴い、ブロードキャストは、コンテンツが世界のほとんどのいずれの国に到達することができるので、地形によって定義されない。
【０１５５】
記憶サービスプロバイダ（ＳＳＰ）１０７８は、コンピュータ記憶空間及び関連する管理サービスを提供する。ＳＳＰはまた、定期的なバックアップ及びアーカイビングを供給する。記憶をサービスとして供給することによって、ユーザは、必要に応じて更なる記憶を注文することができる。別の主要な利点は、ＳＳＰがバックアップサービスを含み、コンピュータのハードドライブが機能しない場合にユーザが全てのデータを失わないことである。更に、複数のＳＳＰは、ユーザデータの完全な複製又は部分的な複製を有することができ、ユーザがどこに位置しているか、又はデータにアクセスするためにデバイスが使用されているかとは独立した効率的な方法でユーザがデータにアクセスすることを可能にする。例えば、ユーザは、ホームコンピュータ内の個人ファイルにアクセスすることができると共に、ユーザが移動中は携帯電話内の個人ファイルにアクセスすることができる。
【０１５６】
通信プロバイダ１０８０は、ユーザに接続性を提供する。１つの種類の通信プロバイダは、インターネットへのアクセスを供給するインターネットサービスプロバイダ（ＩＳＰ）である。ＩＳＰは、ダイヤルアップ、ＤＳＬ、ケーブルモデム、ファイバ、無線、又は専用高速相互接続など、インターネットプロトコルデータグラムを配信するために適切なデータ伝送技術を使用してその顧客を接続する。通信プロバイダはまた、電子メール、インスタントメッセージング、及びＳＭＳテキスティングなどのメッセージングサービスを提供することができる。別のタイプの通信プロバイダは、インターネットへの直接バックボーンアクセスを提供することによって、帯域幅又はネットワークアクセスを販売するネットワークサービスプロバイダ（ＮＳＰ）である。ネットワークサービスプロバイダは、電気通信会社、データキャリア、無線通信プロバイダ、インターネットサービスプロバイダ、高速インターネットアクセスを供給するケーブルテレビオペレータなどから構成されることがある。
【０１５７】
データ交換１０８８は、ＩＳＰ１０７０の内部でいくつかのモジュールを相互接続し、ネットワーク１０８６を介してユーザ１０８２にそれらのモジュールを接続する。データ交換１０８８は、ＩＳＰ１０７０の全てのモジュールが近接する小さな領域をカバーすることができ、又は異なるモジュールが地理的に分散された大きな地理的領域をカバーすることができる。例えば、データ交換１０８８は、データセンタのキャビネット内の高速ギガビットイーサネット（若しくは、より高速な）、又は大陸間仮想領域ネットワーク（ＶＬＡＮ）を含むことができる。
【０１５８】
ユーザ１０８２は、クライアントデバイス１０８４によりリモートサービスにアクセスし、クライアントデバイス１０８４は、少なくともＣＰＵ、メモリ、ディスプレイ、及びＩ／Ｏを含む。クライアントデバイスは、ＰＣ、携帯電話、ネットブック、タブレット、ゲーミングシステム、ＰＤＡなどであってもよい。１つの実施形態では、ＩＳＰ１０７０は、クライアントによって使用されるデバイスのタイプを認識し、採用される通信方法を調節する。他のケースでは、クライアントデバイスは、ＩＳＰ１０７０にアクセスするために、ＨＴＭＬなどの標準通信方法を使用する。
【０１５９】
図９は、本発明の様々な実施形態に従った、ゲームシステム１４００のブロック図である。ゲームシステム１４００は、ネットワーク１４１５を介して１つ以上のクライアント１４１０にビデオストリームを提供するように構成される。ネットワークは、図１に例示されたネットワーク２００と同様である。ゲームシステム１４００は典型的には、ビデオサーバシステム１４２０及び任意選択のゲームサーバ１４２５を含む。ビデオサーバシステム１４２０は、最小の品質のサービスにより１つ以上のクライアント１４１０にビデオストリームを提供するように構成される。例えば、ビデオサーバシステム１４２０は、ビデオゲーム内のビューの状態又はビューのポイントを変更するゲームコマンドを受信してもよく、クライアント１４１０に、最小の時間差によりこの変更を瞬時に反映する更新されたビデオストリームを提供してもよい。ビデオサーバシステム１４２０は、まだ定義されていないフォーマットを含む、広範囲の代替的なビデオフォーマットにおいてビデオストリームを提供するように構成されてもよい。更に、ビデオストリームは、広範囲のフレームレートでユーザに提示するために構成されたビデオフレームを含んでもよい。典型的なフレームレートは、３０フレーム／秒、６０フレーム／秒、及び１４２０フレーム／秒である。しかしながら、より高いフレームレート又はより低いフレームレートが本発明の代替的な実施形態に含まれる。
【０１６０】
本明細書で個々に１４１０Ａ、１４１０Ｂなどと称されるクライアント１４１０は、ヘッドマウントディスプレイ、端末、パーソナルコンピュータ、ゲームコンソール、タブレットコンピュータ、電話、セットトップボックス、キオスク、無線デバイス、デジタルパッド、スタンドアロンデバイス、及び／又はハンドヘルドゲームプレイングデバイスなどを含んでもよい。典型的には、クライアント１４１０は、符号化されたビデオストリームを受信し、ビデオストリームを復号し、ユーザ、例えば、ゲームのプレイヤに結果として生じるビデオを提示するように構成される。符号化されたビデオストリームを受信し、及び／又はビデオストリームを復号する処理は典型的には、クライアントの受信バッファに個々のビデオフレームを記憶することを含む。ビデオストリームは、クライアント１４１０に不可欠なディスプレイ、又はモニタ若しくはテレビなどの別個のデバイス上でユーザに提示されてもよい。クライアント１４１０は任意選択で、１人よりも多いゲームプレイヤをサポートするように構成される。例えば、ゲームコンソールは、２人、３人、４人、又はそれよりも多い同時プレイヤをサポートするように構成されてもよい。それらのプレイヤの各々は、別個のビデオストリームを受信してもよく、又は単一のビデオストリームは、特にプレイヤごとに生成された、例えば、各々のプレイヤのビューのポイントに基づいて生成された、フレームの領域を含んでもよい。クライアント１４１０は任意選択で、地理的に分散される。ゲームシステム１４００に含まれるクライアントの数は、１人又は２人から数千人、数万人、又はそれ以上に広く変化してもよい。本明細書で使用されるように、用語「ゲームプレイヤ」は、ゲームをプレイする人間を指すために使用され、用語「ゲームプレイングデバイス」は、ゲームをプレイするために使用されるデバイスを指すために使用される。一部の実施形態では、ゲームプレイングデバイスは、ユーザにゲーム経験を配信するように協働する複数のコンピューティングデバイスを指してもよい。例えば、ゲームコンソール及びＨＭＤは、ＨＭＤを通じて見られるゲームを配信するためにビデオサーバシステム１４２０と協働してもよい。１つの実施形態では、ゲームコンソールは、ビデオサーバシステム１４２０からビデオストリームを受信し、ゲームコンソールは、レンダリングするためにＨＭＤにビデオストリームを転送し、又はビデオストリームを更新する。
【０１６１】
クライアント１４１０は、ネットワーク１４１５を介してビデオストリームを受信するように構成される。ネットワーク１４１５は、電話ネットワーク、インターネット、無線ネットワーク、パワーラインネットワーク、ローカルエリアネットワーク、ワイドエリアネットワーク、及び／又はプライベートネットワークなどを含むいずれかのタイプの通信ネットワークであってもよい。典型的な実施形態では、ビデオストリームは、ＴＣＰ／ＩＰ又はＵＤＰ／ＩＰなどの標準プロトコルを介して通信される。代わりに、ビデオストリームは、プロプライエタリ標準を介して通信される。
【０１６２】
クライアント１４１０の典型的な例は、プロセッサ、不揮発性メモリ、ディスプレイ、復号ロジック、ネットワーク通信能力、及び入力デバイスを含むパーソナルコンピュータである。復号ロジックは、ハードウェア、ファームウェア、及び／又はコンピュータ可読媒体に記憶されたソフトウェアを含んでもよい。ビデオストリームを復号する（及び、符号化する）システムは、本分野において公知であり、使用される特定の符号化スキームに応じて変わる。
【０１６３】
クライアント１４１０は更に、受信されたビデオを修正するために構成されたシステムを含んでもよいが、それが必要となるわけではない。例えば、クライアントは、別のビデオ画像上の１つのビデオ画像をオーバレイし、及び／又はビデオ画像を切り取るなどのために更なるレンダリングを実行するように構成されてもよい。例えば、クライアント１４１０は、Ｉフレーム、Ｐフレーム、及びＢフレームなどの様々なタイプのビデオフレームを受信し、ユーザに表示するためにそれらのフレームを処理して画像にするように構成されてもよい。一部の実施形態では、クライアント１４１０のメンバは、ビデオストリーム上で、更なるレンダリング、シェーディング、３Ｄへの変換、又は同様の動作を実行するように構成される。クライアント１４１０のメンバは任意選択で、１つよりも多い音声又はビデオストリームを受信するように構成される。クライアント１４１０の入力デバイスは、例えば、片手のゲームコントローラ、両手のゲームコントローラ、ジェスチャ認識システム、注視認識システム、発声認識システム、キーボード、ジョイスティック、ポインティングデバイス、力フィードバックデバイス、動き及び／若しくは位置感知デバイス、マウス、タッチスクリーン、ニューラルインタフェース、カメラ、並びに／又はまだ開発されていない入力デバイスなどを含んでもよい。
【０１６４】
クライアント１４１０によって受信されたビデオストリーム（及び、任意選択で音声ストリーム）は、ビデオサーバシステム１４２０によって生成及び提供される。本明細書で他に更に説明されるように、このビデオストリームは、ビデオフレーム（及び、音声フレームを含む音声ストリーム）を含む。ビデオフレームは、ユーザに表示された画像に有意義に貢献するように構成される（例えば、それらは、適切なデータ構造にある画素情報を含む）。本明細書で使用されるように、用語「ビデオフレーム」は、ユーザに示された画像に貢献する、例えば、影響を与えるように構成された情報を主に含むフレームを指すために使用される。「ビデオフレーム」に関する本明細書における教示のほとんどはまた、「音声フレーム」に適用されてもよい。
【０１６５】
クライアント１４１０は典型的には、ユーザから入力を受信するように構成される。それらの入力は、ビデオゲームの状態を変更し、又はそうでない場合、ゲームプレイに影響を与えるように構成されたゲームコマンドを含んでもよい。ゲームコマンドは、入力デバイスを使用して受信されてもよく、及び／又はクライアント１４１０上で実行するコンピューティング命令によって自動的に生成されてもよい。受信されたゲームコマンドは、ネットワーク１４１５を介して、クライアント１４１０からビデオサーバシステム１４２０及び／又はゲームサーバ１４２５に通信される。例えば、一部の実施形態では、ゲームコマンドは、ビデオサーバシステム１４２０を介してゲームサーバ１４２５に通信される。一部の実施形態では、ゲームコマンドの別個の複製は、クライアント１４１０からゲームサーバ１４２５及びビデオサーバシステム１４２０に通信される。ゲームコマンドの通信は任意選択で、コマンドの同一性に依存する。ゲームコマンドは任意選択で、クライアント１４１０Ａに音声又はビデオストリームを提供するために使用される異なるルート又は通信チャネルを通じてクライアント１４１０Ａから通信される。
【０１６６】
ゲームサーバ１４２５は任意選択で、ビデオサーバシステム１４２０とは異なるエンティティによって操作される。例えば、ゲームサーバ１４２５は、マルチプレイヤゲームのパブリッシャによって操作されてもよい。この例では、ビデオサーバシステム１４２０は任意選択で、ゲームサーバ１４２５によってクライアントとして見られ、任意選択で、ゲームサーバ１４２５のビューのポイントから、従来技術のゲームエンジンを実行する従来技術のクライアントであるように見えるように構成される。ビデオサーバシステム１４２０とゲームサーバ１４２５との間の通信は任意選択で、ネットワーク１４１５を介して行われる。そのようにして、ゲームサーバ１４２５は、その１つがゲームサーバシステム１４２０である、複数のクライアントにゲーム状態情報を送信する従来技術のマルチプレイヤゲームサーバであってもよい。ビデオサーバシステム１４２０は、ゲームサーバ１４２５の複数のインスタンスと同時に通信するように構成されてもよい。例えば、ビデオサーバシステム１４２０は、異なるユーザに複数の異なるビデオゲームを提供するように構成されてもよい。それらの異なるビデオゲームの各々は、異なるゲームサーバ１４２５によってサポートされてもよく、及び／又は異なるエンティティによって発行されてもよい。一部の実施形態では、ビデオサーバシステム１４２０のいくつかの地理的に分散されたインスタンスは、複数の異なるユーザにゲームビデオを提供するように構成される。ビデオサーバシステム１４２０のそれらのインスタンスの各々は、ゲームサーバ１４２５の同一のインスタンスと通信してもよい。ビデオサーバシステム１４２０と１つ以上のゲームサーバ１４２５との間の通信は任意選択で、専用通信チャネルを介して行われる。例えば、ビデオサーバシステム１４２０は、それらの２つのシステムの間の通信に専用となる高帯域幅チャネルを介してゲームサーバ１４２５に接続されてもよい。
【０１６７】
ビデオサーバシステム１４２０は、少なくともビデオソース１４３０、Ｉ／Ｏデバイス１４４５、プロセッサ１４５０、及び非一時的記憶装置１４５５を含む。ビデオサーバシステム１４２０は、１つのコンピューティングデバイスを含んでもよく、又は複数のコンピューティングデバイスの間で分散されてもよい。それらのコンピューティングデバイスは任意選択で、ローカルエリアネットワークなどの通信システムを介して接続される。
【０１６８】
ビデオソース１４３０は、ビデオストリーム、例えば、動画を形成するストリーミングビデオ又は一連のビデオフレームを提供するように構成される。一部の実施形態では、ビデオソース１４３０は、ビデオゲームエンジン及びレンダリングロジックを含む。ビデオゲームエンジンは、プレイヤからゲームコマンドを受信し、受信されたコマンドに基づいてビデオゲームの状態の複製を維持するように構成される。このゲーム状態は、ゲーム環境内のオブジェクトの位置と共に、典型的にはビューのポイントを含む。ゲーム状態はまた、オブジェクトの所有物、画像、色、及び／又は特性を含んでもよい。
【０１６９】
ゲーム状態は典型的には、ゲームルールと共に、移動する、回転する、攻撃する、焦点を定める、インタラクションを行う、及び／又は使用するなどのゲームコマンドに基づいて維持される。ゲームエンジンの一部は任意選択で、ゲームサーバ１４２５内に配置される。ゲームサーバ１４２５は、地理的に分散されたクライアントを使用して、複数のプレイヤから受信されたゲームコマンドに基づいてゲームの状態の複製を維持してもよい。それらのケースでは、ゲーム状態は、ビデオソース１４３０にゲームサーバ１４２５によって提供され、ビデオソース１４３０では、ゲーム状態の複製が記憶され、レンダリングが実行される。ゲームサーバ１４２５は、ネットワーク１４１５を介してクライアント１４１０からゲームコマンドを直接受信してもよく、及び／又はビデオサーバシステム１４２０を介してゲームコマンドを受信してもよい。
【０１７０】
ビデオソース１４３０は典型的には、レンダリングロジック、例えば、ハードウェア、ファームウェア、及び／又は記憶装置１４５５などのコンピュータ可読媒体に記憶されたソフトウェアを含む。このレンダリングロジックは、ゲーム状態に基づいてビデオストリームのビデオフレームを作成するように構成される。レンダリングロジックの全て又は一部は任意選択で、グラフィックプロセシングユニット（ＧＰＵ）内に配置される。レンダリングロジックは典型的には、オブジェクトの間の３次元空間関係を判定し、並びに／又はゲーム状態及びビューポイントに基づいて適切な特性を適用するなどのために構成された処理段階を含む。レンダリングロジックは、生のビデオを作成し、生のビデオは次いで、クライアント１４１０への通信の前に通常符号化される。例えば、生のビデオは、Ａｄｏｂｅ  Ｆｌａｓｈ（登録商標）標準、ｗａｖ、Ｈ．２６４、Ｈ．２６３、Ｏｎ２、ＶＰ６、ＶＣ−１、ＷＭＡ、Ｈｕｆｆｙｕｖ、Ｌａｇａｒｉｔｈ、ＭＰＧ−ｘ．Ｘｖｉｄ．ＦＦｍｐｅｇ、ｘ２６４、ＶＰ６−８、ｒｅａｌｖｉｄｅｏ、又はｍｐ３などに従って符号化されてもよい。符号化処理は、リモートデバイス上のデコーダに配信するために任意選択でパッケージ化されるビデオストリームを作成する。ビデオストリームは、フレームサイズ及びフレームレートによって特徴付けられる。典型的なフレームサイズは、８００×６００、１２８０×７２０（例えば、７２０ｐ）、１０２４×７６８を含むが、いずれかの他のフレームサイズが使用されてもよい。フレームレートは、毎秒のビデオフレームの数である。ビデオストリームは、異なるタイプのビデオフレームを含んでもよい。例えば、Ｈ．２６４標準は、「Ｐ」フレーム及び「Ｉ」フレームを含む。Ｉフレームは、ディスプレイデバイス上で全てのマクロブロック／画素をリフレッシュするための情報を含み、Ｐフレームは、それらのサブセットをリフレッシュするための情報を含む。Ｐフレームは典型的には、Ｉフレームよりもデータサイズにおいて小さい。本明細書で使用されるように、用語「フレームサイズ」は、フレーム内の画素の数を指すことが意味される。用語「フレームデータサイズ」は、フレームを記憶するために必要とされるバイトの数を指すために使用される。
【０１７１】
代替的な実施形態では、ビデオソース１４３０は、カメラなどのビデオ記録デバイスを含む。このカメラは、コンピュータゲームのビデオストリームに含めることができる遅延したビデオ又はライブビデオを生成するために使用されてもよい。結果として生じるビデオストリームは任意選択で、レンダリングされた画像、及び静止カメラ又はビデオカメラを使用して記録された画像の両方を含む。ビデオソース１４３０はまた、ビデオストリームに含まれる、前に記録されたビデオを記憶するように構成された記憶装置を含んでもよい。ビデオソース１４３０はまた、オブジェクト、例えば、人間の動き又は位置を検出するように構成された動き又は位置検知デバイスと、検出された動き及び／又は位置に基づいて、ゲーム状態を判定し又はビデオを作成するように構成されたロジックとを含んでもよい。
【０１７２】
ビデオソース１４３０は任意選択で、他のビデオ上に配置されるように構成されたオーバレイを提供するように構成される。例えば、それらのオーバレイは、コマンドインタフェース、ログイン命令、ゲームプレイヤへのメッセージ、他のゲームプレイヤの画像、他のゲームプレイヤのビデオフィード（例えば、ウェブ画像ビデオ）を含んでもよい。タッチスクリーンインタフェース又は注視検出インタフェースを含むクライアント１４１０Ａの実施形態では、オーバレイは、仮想キーボード、ジョイスティック、及び／又はタッチパッドなどを含んでもよい。オーバレイの１つの例では、プレイヤの発声は、音声ストリーム上でオーバレイされる。ビデオソース１４３０は任意選択で、１つ以上の音声ソースを更に含む。
【０１７３】
ビデオサーバシステム１４２０が１人よりも多いプレイヤからの入力に基づいてゲーム状態を維持するように構成される実施形態では、各々のプレイヤは、ビューの位置及び方向を含むビューの異なるポイントを有してもよい。ビデオソース１４３０は任意選択で、ビューのそれらのポイントに基づいてプレイヤごとに別個のビデオストリームを提供するように構成される。更に、ビデオソース１４３０は、クライアント１４１０の各々に、異なるフレームサイズ、フレームデータサイズ、及び／又は符号化を提供するように構成されてもよい。ビデオソース１４３０は任意選択で、３Ｄビデオを提供するように構成される。
【０１７４】
Ｉ／Ｏデバイス１４４５は、ビデオサーバシステム１４２０がビデオ、コマンド、情報についての要求、ゲーム状態、注視情報、デバイスの動き、デバイスの位置、ユーザの動き、クライアントＩＤ、プレイヤＩＤ、ゲームコマンド、セキュリティ情報、及び／又は音声などの情報を送信及び／又は受信するように構成される。Ｉ／Ｏデバイス１４４５は典型的には、ネットワークカード又はモデムなどの通信ハードウェアを含む。Ｉ／Ｏデバイス１４４５は、ゲームサーバ１４２５、ネットワーク１４１５、及び／又はクライアント１４１０と通信するように構成される。
【０１７５】
プロセッサ１４５０は、本明細書で議論されるビデオサーバシステム１４２０の様々な構成要素に含まれるロジック、例えば、ソフトウェアを実行するように構成される。例えば、プロセッサ１４５０は、ビデオソース１４３０、ゲームサーバ１４２５、及び／又はクライアントクォリファイア１４６０の機能を実行するために、ソフトウェア命令によりプログラムされてもよい。ビデオサーバシステム１４２０は任意選択で、プロセッサ１４５０の１つよりも多いインスタンスを含む。プロセッサ１４５０はまた、ビデオサーバシステム１４２０によって受信されたコマンドを実行し、又は本明細書で議論されるゲームシステム１４００の様々な要素の動作を調整するために、ソフトウェア命令によりプログラムされてもよい。プロセッサ１４５０は、１つ以上のハードウェアデバイスを含んでもよい。プロセッサ１４５０は、電子プロセッサである。
【０１７６】
記憶装置１４５５は、非一時的アナログ及び／又はデジタル記憶装置を含む。例えば、記憶装置１４５５は、ビデオフレームを記憶するように構成されたアナログ記憶装置を含んでもよい。記憶装置１４５５は、コンピュータ可読デジタル記憶装置、例えば、ハードドライブ、光学ドライブ、又はソリッドステート記憶装置を含んでもよい。記憶装置１４５５は、ビデオフレーム、人工フレーム、ビデオフレーム及び人工フレームの両方を含むビデオストリーム、音声フレーム、並びに／又は音声ストリームなどを記憶するように構成される（例えば、適切なデータ構造又はファイルシステムによって）。記憶装置１４５５は任意選択で、複数のデバイスの間で分散される。一部の実施形態では、記憶装置１４５５は、本明細書で他に議論されるビデオソース１４３０のソフトウェア構成要素を記憶するように構成される。それらの構成要素は、必要なときにプロビジョニングされる準備ができているフォーマットにおいて記憶されてもよい。
【０１７７】
ビデオサーバシステム１４２０は任意選択で、クライアントクォリファイア１４６０を更に含む。クライアントクォリファイア１４６０は、クライアント１４１０Ａ又は１４１０Ｂなどのクライアントの能力をリモートに判定するために構成される。それらの能力は、クライアント１４１０Ａ自体の能力と共に、クライアント１４１０Ａとビデオサーバシステム１４２０との間の１つ以上の通信チャネルの能力の両方を含むことができる。例えば、クライアントクォリファイア１４６０は、ネットワーク１４１５を通じて通信チャネルを検査するように構成されてもよい。
【０１７８】
クライアントクォリファイア１４６０は、クライアント１４１０Ａの能力を手動又は自動で判定することができる（例えば、発見する）。手動判定は、クライアント１４１０Ａのユーザと通信すること、及び能力を提供するようにユーザに依頼することを含む。例えば、一部の実施形態では、クライアントクォリファイア１４６０は、クライアント１４１０Ａのブラウザ内で画像及び／又はテキストなどを表示するように構成される。１つの実施形態では、クライアント１４１０Ａは、ブラウザを含むＨＭＤである。別の実施形態では、クライアント１４１０Ａは、ＨＭＤ上で表示することができるブラウザを有するゲームコンソールである。表示されたオブジェクトは、クライアント１４１０Ａのオペレーティングシステム、プロセッサ、ビデオデコーダタイプ、ネットワーク接続のタイプ、表示解像度などの情報をユーザが入力することを要求する。ユーザによって入力された情報は、クライアントクォリファイア１４６０に再度通信される。
【０１７９】
自動判定は、クライアント１４１０Ａ上のエージェントの実行によって、及び／又はクライアント１４１０Ａにテストビデオを送信することによって行われてもよい。エージェントは、ウェブページに組み込まれ、又はアドオンとしてインストールされた、ｊａｖａスクリプトなどのコンピューティング命令を含んでもよい。エージェントは任意選択で、クライアントクォリファイア１４６０によって提供される。様々な実施形態では、エージェントは、クライアント１４１０Ａの処理能力、クライアント１４１０Ａの復号及び表示能力、クライアント１４１０Ａとビデオサーバシステム１４２０との間の通信チャネルの遅延時間の信頼性及び帯域幅、クライアント１４１０Ａのディスプレイタイプ、クライアント１４１０Ａ上に存在するファイアウォール、クライアント１４１０Ａのハードウェア、クライアント１４１０Ａ上で実行するソフトウェア、並びに／又はクライアント１４１０Ａ内のレジストリのエントリを調査することができる。
【０１８０】
クライアントクォリファイア１４６０は、ハードウェア、ファームウェア、及び／又はコンピュータ可読媒体に記憶されたソフトウェアを含む。クライアントクォリファイア１４６０は任意選択で、ビデオサーバシステム１４２０の１つ以上の他の要素とは別個のコンピューティングデバイスに配置される。例えば、一部の実施形態では、クライアントクォリファイア１４６０は、クライアント１４１０とビデオサーバシステム１４２０の１つよりも多いインスタンスとの間の通信チャネルの特性を判定するように構成される。それらの実施形態では、クライアントクォリファイアによって発見された情報は、ビデオサーバシステム１４２０のどのインスタンスがクライアント１４１０の１つへのストリーミングビデオの配信に最も適切であるかを判定するために使用されてもよい。
【０１８１】
上記実施形態を考慮して、本発明は、コンピュータシステムに記憶されたデータを伴う様々なコンピュータにより実施される動作を採用することができることを理解されるべきである。それらの動作は、物理量の物理的な操作を必要とする動作を含む。本発明の一部を形成する本明細書で説明される動作のいずれかは、有用な機械的動作である。本発明はまた、それらの動作を実行するためのデバイス又は装置に関する。装置は、必要とされる目的のために特に構築されてもよく、又は装置は、選択的に活性化され、若しくはコンピュータに記憶されたコンピュータプログラムによって構成された汎用コンピュータであってもよい。特に、様々な汎用機械は、本明細書における教示に従って記述されたコンピュータプログラムと共に使用されてもよく、又は必要とされる動作を実行するために更なる専用装置を構築することが更に利便性が高いことがある。
【０１８２】
上記説明された発明は、ハンドヘルドデバイス、マイクロプロセッサシステム、マイクロプロセッサベース又はプログラム可能家庭用電化製品、ミニコンピュータ、及びメインフレームコンピュータなどを含む他のコンピュータシステム構成により実施されてもよい。本発明はまた、通信ネットワークを通じてリンクされたリモート処理デバイスによってタスクが実行される分散コンピューティング環境において実施されてもよい。
【０１８３】
本発明はまた、コンピュータ可読媒体上でコンピュータ可読コードとして具体化されてもよい。代わりに、コンピュータ可読コードは、上記説明されたデータ交換相互接続を使用してサーバからダウンロードされてもよい。コンピュータ可読媒体は、データを記憶することができるいずれかのデータ記憶装置であり、データはその後、電磁気波キャリアを含む、コンピュータシステムによって読み込まれてもよい。コンピュータ可読媒体の例は、ハードドライブ、ネットワークアッタチドストレージ（ＮＡＳ）、リードオンリメモリ、ランダムアクセスメモリ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、並びに他の光学及び非光学データ記憶装置を含む。コンピュータ可読媒体はまた、ネットワーク結合されたコンピュータシステムを通じて分散されてもよく、それによって、コンピュータ可読コードは、分散形式で記憶及び実行される。
【０１８４】
先述の発明は理解を明確にする目的で或る程度詳細に説明されてきたが、添付の特許請求の範囲内で特定の変更及び修正が実施されてもよいことが明らかである。したがって、本実施形態は、例示的であり、限定的ではないと見なされ、本発明は、本明細書で与えられた詳細に限定されないが、添付の特許請求の範囲の範囲及びその同等物の範囲内で修正されてもよい。
【図１】
2019531550.tif 000003
【図２】
2019531550.tif 000004
【図３】
2019531550.tif 000005
【図４Ａ】
2019531550.tif 000006
【図４Ｂ】
2019531550.tif 000007
【図４Ｃ】
2019531550.tif 000008
【図５Ａ】
2019531550.tif 000009
【図５Ｂ】
2019531550.tif 000010
【図６】
2019531550.tif 000011
【図７】
2019531550.tif 000012
【図８】
2019531550.tif 000013
【図９】
2019531550.tif 000014
【国際調査報告】
2019531550.tif 000015
2019531550.tif 000016
2019531550.tif 000017
2019531550.tif 000018