(57)【要約】  仮想世界内の仮想カメラのビューを制御するための方法およびシステム。仮想世界を目視するユーザのビューを、ユーザの頭位置を確認しながら、制御する、または変化させることがある。例えば、仮想カメラは、コンテナの回転がグローバル座標系に対する仮想カメラの回転を引き起こすようにコンテナ内にラップされていることがある。ヘッドマウントディスプレイの位置に基づいて、仮想世界のグローバル座標系に対する初期仮想カメラ回転角度を識別することがある。目視することを特定の方向に変化させるための指示を受信することがある。特定の方向に対応するビューに対する、グローバル座標系に対する望まれる回転角度を、次いで決定する。コンテナを、次いで、少なくとも、望まれる回転角度と初期仮想カメラ回転角度の両方に基づく回転値だけ回転させる。
2020518077.tif 000002
【特許請求の範囲】
【請求項１】
仮想世界内の仮想カメラのビューを制御するための方法であって、
ヘッドマウントディスプレイ（ＨＭＤ）の位置に基づいて、前記仮想世界のグローバル座標系に対する初期仮想カメラ回転角度を識別するステップであって、前記仮想カメラは、コンテナの回転が前記グローバル座標系に対する前記仮想カメラの回転を引き起こすように前記コンテナ内にラップされている、識別するステップと、
前記ビューを特定の方向に変化させるための指示を受信するステップと、
前記特定の方向に対応するビューに対する、前記グローバル座標系に対する望まれる回転角度を識別するステップと、
前記コンテナを、少なくとも前記望まれる回転角度と前記初期仮想カメラ回転角度の両方に基づく回転値だけ回転させるステップと
を含む、方法。
【請求項２】
前記コンテナを回転させることにより、最終仮想カメラ回転角度が、前記グローバル座標系に対する前記望まれる回転角度に等しくなる、請求項１に記載の方法。
【請求項３】
前記ＨＭＤのディスプレイスクリーン上で、前記初期仮想カメラ角度に従って前記仮想カメラの前記ビューを表示するステップと、
前記ビューを特定の方向に変化させるための指示を受信するステップに基づいて、前記スクリーンを、黒に次第に変えるステップと、
前記スクリーンを黒から次第に変えて、最終仮想カメラ回転角度に従って前記仮想カメラの前記ビューを表示するステップと
をさらに含む、請求項１に記載の方法。
【請求項４】
前記指示を受信するステップは、ロコモーションマーカの選択を受信するステップを含む、請求項１に記載の方法。
【請求項５】
選択可能なロコモーションマーカを表示するステップをさらに含み、前記選択可能なロコモーションマーカの前記表示は、前記特定の方向を指示する、請求項１に記載の方法。
【請求項６】
前記回転角度は、ピッチ角度、ヨー角度、またはロール角度のうちの少なくとも１つを含む、請求項１に記載の方法。
【請求項７】
前記初期仮想カメラ回転角度を３６０度から減算して、中間値を生成するステップと、
前記中間値を、前記望まれる回転角度に加算して、前記回転値を生成するステップと
により、前記回転値を決定するステップをさらに含む、請求項１に記載の方法。
【請求項８】
ヘッドマウントディスプレイ（ＨＭＤ）と、
前記ＨＭＤに動作的に接続される少なくとも１つのプロセッサと、
前記少なくとも１つのプロセッサにより実行されるときに、動作のセットを実施する命令を記憶するメモリと
を備え、動作の前記セットは、
前記ＨＭＤの位置に基づいて、仮想世界のグローバル座標系に対する、仮想カメラの初期仮想カメラ回転角度を識別することであって、前記仮想カメラは、コンテナの回転が前記グローバル座標系に対する前記仮想カメラの回転を引き起こすように前記コンテナ内にラップされている、識別することと、
ビューを特定の方向に変化させるための指示を受信することと、
前記特定の方向に対応するビューに対する、前記グローバル座標系に対する望まれる回転角度を識別することと、
前記コンテナを、少なくとも前記望まれる回転角度と前記初期仮想カメラ回転角度の両方に基づく回転値だけ回転させることと
を含む、システム。
【請求項９】
前記コンテナを回転させることにより、最終仮想カメラ回転角度が、前記グローバル座標系に対する前記望まれる回転角度に等しくなる、請求項８に記載のシステム。
【請求項１０】
仮想世界内の仮想カメラのビューを制御するための方法であって、
ヘッドマウントディスプレイの位置に基づいて、仮想カメラの初期仮想カメラ回転角度を識別するステップであって、前記仮想カメラは、コンテナの回転がグローバル座標系に対する前記仮想カメラの回転を引き起こすように前記コンテナと関連付けられる、識別するステップと、
前記ＨＭＤのディスプレイスクリーン上で、前記初期仮想カメラ角度に従って前記仮想カメラの前記ビューを表示するステップと、
前記ＨＭＤの前記ディスプレイスクリーン上で、ロコモーションマーカを表示するステップと、
前記ロコモーションマーカの選択を受信するステップと、
前記選択されたロコモーションマーカに対応するビューに対する、特定の方向を識別するステップと、
前記特定の方向に対応するビューに対する、望まれる回転角度を識別するステップと、
前記コンテナを、少なくとも前記望まれる回転角度と前記初期仮想カメラ回転角度の両方に基づく回転値だけ回転させるステップと
を含む、方法。
【請求項１１】
前記コンテナを回転させることにより、最終仮想カメラ回転角度が、前記グローバル座標系に対する前記望まれる回転角度に等しくなる、請求項１０に記載の方法。
【請求項１２】
前記回転角度は、ピッチ角度、ヨー角度、またはロール角度のうちの少なくとも１つを含む、請求項１０に記載の方法。
【請求項１３】
動作は、
前記初期仮想カメラ回転角度を３６０度から減算して、中間値を生成することと、
前記中間値を、前記望まれる回転角度に加算して、前記回転値を生成することと
により、前記回転値を決定するステップをさらに含む、請求項１０に記載の方法。
【請求項１４】
ユーザのビューが、あらかじめ決定されたエリアの中であるかどうかを決定するステップをさらに含み、前記ロコモーションマーカを表示するステップは、前記ユーザの前記ビューが、前記あらかじめ決定されたエリアの中であることに基づく、請求項１０に記載の方法。
【請求項１５】
スナップゾーンおよびビュー方向マーカを表示するステップをさらに含む、請求項１０に記載の方法。
【発明の詳細な説明】
【背景技術】
【０００１】
[0001]パブリッシングサイトは、ウェブ上で情報を共有および消費するための主要な手立てであり続けている。ウェブサイト作成を大衆的なものにする少数のサービスが存在する。しかしながら、３Ｄコンテンツの多くの潜在能力を現実化するサイトを作成することの問題を解決するためのサービスは存在しない。容易な３Ｄコンテンツを作成するための取組みが増えていることもあり、３Ｄコンテンツの消費を手助けするためのツールおよび／またはサービスに対する必要性がある。実例として、仮想世界の中で使用によって、仮想現実デバイスを動かすことは、しばしば骨の折れることである。一部の事例において、ユーザは、どのように仮想世界を利用すべきか、または、仮想世界と相互作用すべきかを理解しないことがある。さらに、仮想世界を通してユーザを自動的に動かすことは、達成するのが難しいことがあり、ユーザの不快感または動揺病を引き起こすことがある。
【０００２】
[0002]これらおよび他の一般的な考察に関して、実施形態を説明している。さらには、比較的に具体的な問題について論じているが、実施形態は、背景技術において特定される具体的な問題を解決することに制限されるべきでないということを理解すべきである。
【発明の概要】
【課題を解決するための手段】
【０００３】
[0003]本技術は、仮想３Ｄ空間などの仮想世界内のユーザのビューを制御することに関する。例えば、ユーザは、仮想世界の仮想現実ビューを提供するヘッドマウントディスプレイ（ＨＭＤ）を装着していることがある。ユーザが、ＨＭＤを通して仮想世界を目視している一方で、ユーザは、仮想世界内のオブジェクトと相互作用することを希望することがある。仮想世界との相互作用を手助けするために、本技術は、仮想カメラをコンテナ内で関連付ける、またはラップすることにより、ユーザのビューを変える。仮想カメラおよびコンテナを、コンテナの方位に対する変更が、仮想カメラの方位における変化を引き起こすような様式で関連付ける。そのようなものとして、コンテナの方位を制御することにより、プログラムは、ユーザにより体験されるビューを制御することができる。本技術は、さらには、最終ビューが、仮想世界を提示するプログラムにより望まれるビューとなるように、デバイスを装着する間のユーザの頭の回転を確認する。実例として、本技術は、新しい望まれるビューへとコンテナを回転させるより前に、仮想カメラの回転角度を決定することがある。本技術は、次いで、仮想カメラの決定された回転角度に基づいて、コンテナに対する回転の量を調整する。ユーザの頭の方位により制御される、仮想カメラ回転角度を補償することにより、ユーザの最終ビューは、プログラムにより元々望まれる方向になる。
【０００４】
[0004]本概要は、発明を実施するための形態において下記でさらに説明する、選択された概念を単純化された形式で紹介するために提供されている。本概要は、請求される主題の主要な特徴または本質的な特徴を識別させる意図はなく、本概要を、請求される主題の範囲を制限するために使用する意図もない。
【０００５】
[0005]非制限的および非網羅的な例を、後に続く図を参照して説明する。
【図面の簡単な説明】
【０００６】
【図１】[0006]ヘッドマウントディスプレイの例を示す図である。
【図２Ａ】[0007]ロコモーションマーカ（ｌｏｃｏｍｏｔｉｏｎ  ｍａｒｋｅｒ）を示す３Ｄ空間の中のビュー例を示す図である。
【図２Ｂ】[0008]ロコモーションマーカが仮想世界内の３Ｄオブジェクトの周囲の位置において表示される例を示す図である。
【図３】[0009]ロコモーションマーカを表示するための方法例を描写する図である。
【図４】[0010]仮想カメラのための例示的な方位参照系を描写する図である。
【図５】[0011]仮想世界内の仮想カメラのビューを、コンテナの使用によって制御するための方法例を描写する図である。
【図６】[0012]用いて本開示の態様が実践されることがある、コンピューティングデバイスの物理的構成要素例を示すブロック線図である。
【図７Ａ】[0013]用いて本開示の態様が実践されることがある、モバイルコンピューティングデバイスの、単純化されたブロック線図である。
【図７Ｂ】用いて本開示の態様が実践されることがある、モバイルコンピューティングデバイスの、単純化されたブロック線図である。
【図８】[0014]本開示の態様が実践されることがある、分散型コンピューティングシステムの、単純化されたブロック線図である。
【図９】[0015]本開示の１つまたは複数の態様を実行するためのタブレットコンピューティングデバイスを示す図である。
【発明を実施するための形態】
【０００７】
[0016]後に続く詳細な説明において、本明細書の一部分を形成する、付随する図面に対して参照を行い、それらの図面において、例示として、特定の実施形態または例を示す。これらの態様を組み合わせてもよく、他の態様を利用してもよく、構造的変更を、本開示から逸脱することなく行ってもよい。実施形態を、方法、システム、またはデバイスとして実践してもよい。よって、実施形態は、ハードウェア実装形態、もっぱらソフトウェア実装形態、または、ソフトウェアおよびハードウェア態様を組み合わせる実装形態の形式をとってもよい。それゆえに、後に続く詳細な説明は、制限的な意味にとるべきではなく、本開示の範囲を、添付の特許請求の範囲、および、その均等物により定義する。
【０００８】
[0017]本技術は、仮想３Ｄ空間などの仮想世界内のユーザのビューを制御することに関する。例えば、ユーザは、仮想世界の仮想現実ビューを提供するヘッドマウントディスプレイ（ＨＭＤ）を装着していることがある。ユーザが、ＨＭＤを通して仮想世界を目視している一方で、ユーザは、仮想世界内のオブジェクトと相互作用することを希望することがある。そのような相互作用を手助けするために、本技術は、ユーザにより選択されることがある、仮想世界内のロコモーションマーカ（locomotion marker）を表示することを可能なものにする。ユーザがロコモーションマーカを選択すると、ユーザのビューは、ロコモーションマーカと関連付けられるビューに移送される。例として、特定のロコモーションマーカを、特定の位置および特定の方位から、仮想世界内の特定のオブジェクトを目視するために選択することがある。しかしながら、ロコモーションマーカの選択を基にしたユーザのビューの回転は、下記でさらに論じるように、本技術が克服する複数個の難題を提起する。
【０００９】
[0018]当業者は察知するであろうが、仮想世界内で、ユーザのビューは、仮想世界内の仮想カメラの位置決めおよび方位に対応する。仮想世界内の仮想カメラの位置決めおよび方位に対する変更は、ユーザ変化により体験される仮想世界のビューを引き起こす。ＨＭＤを、ユーザが仮想世界を見るためのビューイングデバイスとして利用するとき、仮想カメラの方位を、一般的には、ＨＭＤを装着するユーザの頭の方位に結び付ける。よって、一般的には、ＨＭＤに関して、仮想カメラの方位をコンピュータプログラムにより無効にすることはできない。こうして、プログラムが仮想世界内のユーザのビューを変える必要があるとき、そのような行動を達成するのは骨の折れることである。
【００１０】
[0019]本技術は、仮想カメラをコンテナ内で関連付ける、またはラップ（wrap）することにより、ユーザのビューを変える。仮想カメラおよびコンテナを、コンテナの方位に対する変更が、仮想カメラの方位における変化を引き起こすような様式で関連付ける。そのようなものとして、コンテナの方位を制御することにより、プログラムは、ユーザにより体験されるビューを制御することができる。この実装形態を用いても、さらなる難題が依然として存在する。なぜならば、ユーザは、依然として、コンテナに関して仮想カメラを自由に動かすからである。例として、プログラムは、ユーザのビューを、仮想世界に対してグローバル座標系の左に６０度である方向に方向設定することを必要とすることがある。この行動は、ユーザのビューが、仮想世界の中の特定のオブジェクトを眺めていることを引き起こすために実施されることを必要とすることがある。しかしながら、グローバル座標系に関して６０度だけコンテナを回転することによっても、ユーザのビューが左に６０度となることが結果的に生じないことがある。なぜならば、ユーザは、すでに左（または、グローバル座標系に関して０度以外の任意の他の方向）を眺めていることがあるからである。こうして、６０度だけのコンテナの回転によって、ユーザが、望まれない方向でのビューを有することが結果的に生じることになる。本技術は、新しいビューへとコンテナを回転させるより前に、仮想カメラの回転角度を決定することにより、この限界を克服し、仮想カメラの決定された回転角度に基づいて、コンテナに対する回転の量を調整する。ユーザの頭の方位により制御される、仮想カメラ回転角度に対して補償することにより、ユーザの最終ビューは、プログラムにより元々望まれる方向になる。
【００１１】
[0020]図１は、本技術の例による、ディスプレイソース１０２を有するヘッドマウントディスプレイシステム（「ＨＭＤ」）１１０の例を描写する。ＨＭＤ１１０は、仮想現実コンテンツまたは拡張現実コンテンツなどのコンテンツを、ディスプレイソース１０２を通してユーザ１０６に提供するために、ユーザ１０６により装着されることがある。拡張現実コンテンツを提供することの例において、ＨＭＤ１１０の前部表面は、ビデオ拡張現実と呼ばれることがある、拡張ビデオストリームがディスプレイソース１０２を通してユーザ１０６に提示されることを可能とするために、１つまたは複数のカメラを組み込むことがある。ＨＭＤ１１０は、さらには、スタンドアローンシステムとしてコンテンツを提供するために、統合されたコンピューティング構成要素を含むことがある。ＨＭＤ１１０は、さらには、モバイルフォン、タブレット、ラップトップ、デスクトップ、および同類のものなどの、他のコンピューティングデバイスからコンテンツを受信するために、ワイヤレスまたは有線の接続性特徴部を含むことがある。ディスプレイソース１０２を、当業者に知られている任意の手段を使用して、ＨＭＤ１１０の前部の方に貼り付けることがある。一部の例において、ＨＭＤ１１０は、複数個のディスプレイソース１０２を含む。実例として、ＨＭＤ１１０は、各々の目に対するディスプレイソース１０２を含むことがある。他の例において、ディスプレイソース１０２は、スマートフォンまたは他の類似のデバイスであることがある。ディスプレイソース１０２は、さらには、ユーザが、ディスプレイソース上で表示される画像をよりはっきりと見ることを可能とするレンズを含む、または、それらのレンズに近接してずらされることがある。本技術とともに使用するのに適したものであることがある、他の例ＨＭＤを、米国特許公報第２０１６／００２７２１３号において説明している。
【００１２】
[0021]図２Ａは、ロコモーションマーカを示す仮想世界の中のビュー例を描写する。ユーザが仮想世界を渡り歩く助けとなるように、仮想世界の中のユーザに対する配置場所を識別する、１つまたは複数の選択可能なロコモーションマーカを、仮想世界の中で配置することがある。一部の例において、ユーザのビューまたは注視が、ロコモーションマーカの周囲のあらかじめ決定されたエリアの中で位置決めされる、または、そのエリアに方向設定されるとき、ロコモーションマーカが、仮想世界の中で表示されることがある。さらなる例において、ユーザが３Ｄ空間を通って動くことができる場所を識別することに加えて、ロコモーションマーカは、３Ｄ空間で動く際に、ユーザのビューのデフォルト方向の指示を提供することがある。例えば、ユーザは、１つの場所から別の場所にテレポートする（ｔｅｌｅｐｏｒｔ）ことにより、仮想世界を横断することがある。新しい空間にテレポートすることを基に、ユーザは、方位がわからない状態になることがある。ユーザのビューの指示は、ユーザが、テレポーテーションの後の仮想世界の中のユーザの方位をより良く理解することを可能とする背景状況を、ユーザに提供することがある。例として、ユーザは、ロコモーションマーカ２０２の場所に移送するロコモーションマーカ２０２を選択することがある。描写されるビュー例２００において、靴の方向は、ロコモーションマーカの場所にテレポートされる際に、ユーザのビュー方位が何になるかの指示をユーザに提供し、それによって、テレポーテーションの際に、ユーザの方位をより良く理解するための背景状況をユーザに与える。他の視覚的またはグラフィカル情報を、靴の他に、さらには、ロコモーションマーカ２０２の場所にテレポートされる際に、ユーザの最終方位の指示を提供するために利用することがある。
【００１３】
[0022]１つまたは複数のロコモーションマーカを、さらには、コンテンツと関連付けることがある。一部の例において、仮想世界の中の３Ｄコンテンツを作成または修正するとき、ロコモーションマーカを、３Ｄオブジェクトを目視するための最適な、または好まれる、位置および方位にユーザを配置する、３Ｄコンテンツと関連付けることがある。そのような例において、ユーザの注視が、３Ｄオブジェクト上に、または、３Ｄオブジェクトの付近に集中するとき、オブジェクトを目視するために適正に方位設定されるロコモーションマーカが表示されることがある。表示されるロコモーションマーカを選択し、仮想世界の中の３Ｄオブジェクトを目視するために、ユーザを最適な位置および方位にテレポートすることがある。図２Ｂは、ロコモーションマーカ２１２が、仮想世界内の３Ｄオブジェクトの周囲の最適な、または好まれる位置において表示される、例示的なビュー２１０を描写する。ロコモーションマーカ２１２が選択されると、ユーザを、選択された位置にテレポートし、ユーザのビューを、３Ｄオブジェクトを目視するための最適な、または好まれる方向に変えることになる。
【００１４】
[0023]ビュー例２１０内の仮想世界は、さらには、スナップゾーン（ｓｎａｐ  ｚｏｎｅ）２１４およびビュー方向マーカ２１６を含む。スナップゾーン２１４は、仮想世界内の特定の３Ｄオブジェクトを、ユーザの注視が３Ｄオブジェクトに方向設定されるときに強調表示する。スナップゾーン２１６を、別の３Ｄオブジェクトを包囲する半透明３Ｄオブジェクトとして表示することがある。実例として、ビュー２１０内で描写される仮想世界内で、スナップゾーンを、仮想世界内の３Ｄオブジェクトの周囲の円筒として描写する。スナップゾーン２１６のサイズおよび形状は、そのスナップゾーン２１６が包囲する３Ｄオブジェクトの形状およびサイズに依存していることがある。スナップゾーン２１４は、上記で論じた、あらかじめ決定されたエリアに相当することがある。スナップゾーン２１４は、さらには、ビュー方向マーカ２１６を含むことがある。ビュー方向マーカ２１６は、ロコモーションマーカ２１２が選択されると、ユーザのビューの方向が何になるかを指示する。例えば、ユーザが、描写されたロコモーションマーカ２１２を選択するならば、ユーザは、ロコモーションマーカ２１２の位置に移送されることになり、ユーザのビューは、ビュー方向マーカ２１６の方に方位設定されることになる。一部の例において、ビュー方向マーカ２１６を、スナップゾーン２１４上ではなく、直接、その下にあるオブジェクト上に表示することがある。
【００１５】
[0024]図３は、ロコモーションマーカを表示するための方法例３００を描写する。フローは、動作３０２において始まり、そこでは、ユーザの注視またはビューの、位置および方位が監視される。動作３０４において、ユーザの注視が、ロコモーションマーカと関連付けられる３Ｄオブジェクトの周囲のあらかじめ決定されたエリアに方向設定されるかどうかに関して、決定を行う。ユーザの注視が、あらかじめ決定されたエリアの中であるかどうかを決定することは、ＨＭＤの位置により制御される仮想カメラに対するピッチ角度、ヨー角度、またはロール角度値のうちの少なくとも１つを識別することに基づくことがある。少なくとも１つのピッチ、ヨー、またはロール値に対応する方向ベクトルが、あらかじめ決定されたエリアを通過することになるならば、ユーザの注視は、３Ｄオブジェクトの周囲のあらかじめ決定されたエリアに方向設定されると決定されることがある。あらかじめ決定されたエリアの１つの例は、図２Ｂを参照して上記で論じたスナップゾーン２１４である。一部の例において、あらかじめ決定されたエリアのサイズは、可能な選択肢の中でもとりわけ、仮想世界のサイズ、および／または、ロコモーションマーカと関連付けられる３Ｄオブジェクトのサイズもしくはタイプに基づいて変動することがある。ユーザの注視が、あらかじめ決定されたエリアの中でないならば、フローは、いいえ、に分岐し、動作３０２に戻り、ユーザの注視の位置が、継続的に監視される。
【００１６】
[0025]ユーザ注視が、ロコモーションマーカと関連付けられる３Ｄオブジェクトの周囲のあらかじめ決定されたエリアの中であるならば、フローは、動作３０６へと、はい、に分岐する。動作３０６において、ロコモーションマーカを、仮想世界の中で表示する。先に説明したように、ロコモーションマーカは、さらには、ロコモーションマーカに動く、またはテレポートする際に、ユーザの注視が変化することになる方向の指示を提供することがある。一部の例において、ロコモーションマーカを、ユーザの注視が、ロコモーションマーカと関連付けられる３Ｄオブジェクトの周囲のあらかじめ決定されたエリアの中であるときにのみ表示することがある。代替の態様において、１つまたは複数のロコモーションマーカを、仮想世界の中で連続的に表示することがある。
【００１７】
[0026]プロセスは、判断動作３０８に続き、そこでは、表示されたロコモーションマーカが選択されたかどうかに関して、決定が行われる。ロコモーションマーカを、ハンドヘルド制御ユニットを通して、スマートフォンを通して、ＨＭＤに動作的に接続される他の制御装置を通して、または、ユーザの特定の注視もしくはビューに基づいて選択することがある。ロコモーションマーカを、さらには、当業者に知られている任意の手段により選択することがある。表示されたロコモーションマーカが選択されないならば、フローは、いいえ、に分岐し、動作３０２に戻り、そこでは、ユーザの注視の監視が継続する。ロコモーションマーカが選択されるならば、フローは、動作３１０へと、はい、に分岐し、ユーザは、３Ｄ空間の中のロコモーションマーカに、自動的に動かされる、またはテレポートされる。ユーザを、３Ｄ空間の中の選択された場所に動かすことに加えて、ユーザの方位を、選択されたロコモーションマーカにより規定される方位に変えることがある。
【００１８】
[0027]上記で論じたように、仮想世界の中のユーザのビューまたは注視の方位は、仮想世界内の方位仮想カメラに基づく。仮想カメラを、現実世界内のＨＭＤの位置決めにより制御する。仮想カメラの方位設定を、仮想世界のグローバル座標系を参照して行うことがある。例えば、仮想世界は、あらかじめ定義された原点を有する３Ｄデカルト座標系を利用することがある。仮想カメラを、仮想世界の中のオブジェクトと考えることがあり、その仮想カメラの方位を、グローバル座標系に関して、その仮想カメラのオイラー角により定義することがある。参照のために、図４は、本明細書において論じる、異なる回転タイプを論じるための、単純化された画像を描写する。方位に関して、描写されるｘ軸の周囲の回転を、本明細書においてロールと呼び（一般に、記号φ（ファイ）により表す）、描写されるｙ軸の周囲の回転を、本明細書においてピッチと呼び（一般に、記号θ（シータ）により表す）、描写されるｚ軸の周囲の回転を、本明細書においてヨーと呼ぶ（一般に、記号ψ（プシー）により表す）。当業者は理解するであろうが、異なる軸および異なる回転の名称規則を利用することがある。当業者は、さらには、回転行列、４元数、または他の技法の使用などの、仮想オブジェクトの回転を制御する、または表すための異なる技法が、本明細書において利用される技術によって利用されることがあるということを理解するであろう。
【００１９】
[0028]さらには、上記で論じたように、ＨＭＤに関して、仮想カメラの方位を、一般的には、コンピュータプログラムにより無効にすることはできない。こうして、プログラムが仮想世界内のユーザのビューを変えることを必要とするとき、そのような行動を、達成するのは骨の折れることである。本技術は、仮想カメラをコンテナ内で関連付ける、またはラップすることにより、ユーザのビューを変える。一部の例において、コンテナは、ヌルオブジェクト、または、Ｕｎｉｔｙ  Ｔｅｃｈｎｏｌｏｇｉｅｓプログラミングプラットフォームにおいて利用されるようなＧａｍｅＯｂｊｅｃｔなどのソフトウェアオブジェクトであることがある。一部の事例において、そのオブジェクトを、仮想世界内で表示することがあるが、他の例において、オブジェクトを、視覚世界の中で表示しない。仮想カメラおよびコンテナを、コンテナの方位に対する変更が、仮想カメラの方位における変化を引き起こすような様式で関連付ける。本技術は、さらには、選択されたロコモーションマーカと関連付けられるビューなどの、最終ビューへの移行の直前または間に、ユーザのビュー方位に対して補償する。ユーザの頭の方位により制御される、仮想カメラ回転角度を補償することにより、ユーザの最終ビューは、選択されたロコモーションマーカと関連付けられる方向など、プログラムにより初期に望まれる方向でのビューである。
【００２０】
[0029]図５は、仮想世界内の仮想カメラのビューを、コンテナの使用によって制御するための方法例を描写する。コンテナを、コンテナの回転がグローバル座標系に関する仮想カメラの回転を引き起こすように構成する。動作５０２において、仮想カメラの初期回転角度を、仮想世界のグローバル座標系に関して決定する。仮想カメラの初期回転角度は、上記で論じたように、少なくとも部分的に、ＨＭＤの位置に基づくものであり、こうして、初期回転角度は、初期ＨＭＤ回転角度または初期仮想カメラ回転角度と呼ばれることがある。初期回転角度は、潜在的可能性の時間フレームの中でもとりわけ、ユーザのビューを変化させるための要求を受信する直前の仮想カメラの回転角度、または、最終ビューが表示される直前の仮想カメラの回転角度であることがある。初期回転角度は、ロール、ピッチ、および／またはヨーのうちの任意のものであることがある。実例として、回転角度は、ロール、ピッチ、および／またはヨーのうちの任意のものの組み合わせであることがある。回転角度は、さらには、ロール、ピッチ、またはヨーのうちの単一のものであることがある。
【００２１】
[0030]動作５０４において、ユーザのビューを特定の方向に変化させるための指示を受信する。例えば、ユーザのビューを変化させるための指示は、ロコモーションマーカの選択である。そのような例において、ロコモーションマーカは、ビュー方向マーカに向けてなど、ユーザのビューに対する特定の方向を指示することがある。ユーザのビューに対する特定の方向に基づいて、ビュー変化に対する望まれる回転角度を、動作５０６において決定または識別する。望まれる回転角度は、グローバル座標系に関するものである。実例として、望まれる回転角度は、グローバル座標に関するロール、ピッチ、および／またはヨーに関する値であることがある。さらには回転行列、または他のオイラー角表現などの、回転角度の他の識別を利用することがある。
【００２２】
[0031]グローバル座標系において望まれる回転角度を識別したとすると、コンテナに対する回転値を、動作５０８において決定する。コンテナに対する回転値は、内で識別される初期仮想カメラ回転角度、および、望まれる回転角度に基づく。回転値を、初期仮想カメラ回転角度を補償するために決定することがある。そのことによって、決定された回転値だけコンテナを回転させることで、ビューが、望まれる方向に方位設定されることになる。例として、コンテナに対する回転値を、最初に、初期仮想カメラ回転角度を３６０度から減算して、中間値を生成することにより決定することがある。次に、中間値を、望まれる回転角度に加算して、コンテナに対する回転値を生成する。さらには、剰余演算子を、結果的に生じる回転値が３６０より大きくならないように使用することがある。回転値を決定するために使用されることがある機能例は、後に続くものである。
【００２３】
／／  コンテナを、望まれるポイントに回転させる
ｙ１＝望まれる角度  （動作５０６において決定する）
ｙ２＝初期仮想カメラ角度  （動作５０２において決定する）
ｙ３＝３６０−ｙ２  （中間値）
ｎＹ＝（ｙ１＋ｙ３）％３６０  （コンテナに対する回転値）
上記の機能性における％記号は、剰余演算子である。
【００２４】
[0032]動作５１０において、コンテナを、決定された回転値だけ回転させる。コンテナを、決定された回転値だけ回転させることにより、コンテナは、最終仮想カメラ回転角度が、グローバル座標系に対する望まれる回転角度に等しくなるようにする。例えば、回転の後のユーザの最終ビューは、選択されたロコモーションマーカと関連付けられる方向などの、望まれる方向でのビューである。一部の例において、ＨＭＤ上のディスプレイは、最終ビューを表示する前に、黒に次第に変わる、または、他の形で表示をかすませることがある。実例として、ロコモーションマーカの選択の際に、スクリーンは、黒に次第に変わることがあり、また黒から戻るように次第に変わる際に、ユーザのビューは、最終仮想カメラ角度の方位でのビューとなることになる。
【００２５】
[0033]図６から図９、および、関連付けられる説明は、本開示の態様が実践されることがある、種々の動作環境を論じることを提供する。しかしながら、図６から図９に関して示され論じられるデバイスおよびシステムは、例および例示の目的のためのものであり、本明細書において説明する、本開示の態様を実践するために利用されることがある、膨大な数のコンピューティングデバイス構成について制限的ではない。
【００２６】
[0034]図６は、本開示の態様が実践されることがある、コンピューティングデバイス６００の物理的構成要素（例えば、ハードウェア）を示すブロック線図である。下記で説明するコンピューティングデバイス構成要素は、スマートフォン、タブレット、ＨＭＤ、ラップトップ、デスクトップ、または他のコンピューティングデバイスなどの、上記で説明したコンピューティングデバイスに適したものであることがある。基本的な構成において、コンピューティングデバイス６００は、少なくとも１つの処理ユニット６０２と、システムメモリ６０４とを含むことがある。コンピューティングデバイスの構成およびタイプに依存して、システムメモリ６０４は、揮発性ストレージ（例えば、ランダムアクセスメモリ）、不揮発性ストレージ（例えば、読み出し専用メモリ）、フラッシュメモリ、または、そのようなメモリの任意の組み合わせを含むことがあるが、それらに制限されない。
【００２７】
[0035]システムメモリ６０４は、オペレーティングシステム６０５と、本明細書において説明するシステムによりサポートされる１つまたは複数の構成要素などの、ソフトウェアアプリケーション６２０を走らせるのに適した、１つまたは複数のプログラムモジュール６０６とを含むことがある。例として、システムメモリ６０４は、仮想世界、ならびに、仮想世界の中で完了されることになる、関連付けられる機能および動作を記憶することがある。オペレーティングシステム６０５は、例えば、コンピューティングデバイス６００の動作を制御するのに適したものであることがある。
【００２８】
[0036]さらにまた、本開示の実施形態を、グラフィックスライブラリ、他のオペレーティングシステム、または、任意の他のアプリケーションプログラムと連関して実践することがあり、任意の個別のアプリケーションまたはシステムに制限しない。この基本的な構成を、破線６０８の中のそれらの構成要素により、図６において示す。コンピューティングデバイス６００は、追加的な特徴または機能性を有することがある。例えば、コンピューティングデバイス６００は、さらには、例えば、磁気ディスク、光学ディスク、またはテープなどの、追加的なデータストレージデバイス（リムーバブルおよび／または非リムーバブル）を含むことがある。そのような追加的なストレージを、図６において、リムーバブルストレージデバイス６０９および非リムーバブルストレージデバイス６１０により示す。
【００２９】
[0037]上記で明言したように、いくつかのプログラムモジュールおよびデータファイルを、システムメモリ６０４内で記憶することがある。処理ユニット６０２上で実行する間に、プログラムモジュール６０６（例えば、アプリケーション６２０）は、本明細書において説明するような態様を含むが、それらに制限されない、プロセスを実施することがある。本開示の態様によって使用されることがある他のプログラムモジュールは、３Ｄ空間生成器６２４、３Ｄ処理および仮想現実アプリケーション６２６、電子メールおよび連絡先アプリケーション、ワードプロセッシングアプリケーション、スプレッドシートアプリケーション、データベースアプリケーション、スライドプレゼンテーションアプリケーション、描画またはコンピュータ支援アプリケーションプログラム、その他を含むことがある。
【００３０】
[0038]さらにまた、本開示の実施形態を、ディスクリート電子要素を備える電気回路、論理ゲートを含むパッケージ化もしくは集積電子チップ、マイクロプロセッサを利用する回路内で、または、電子要素もしくはマイクロプロセッサを含む単一のチップ上で実践することがある。例えば、本開示の実施形態を、図６において示される構成要素の各々または多くが単一の集積回路上へと集積されることがある、システムオンチップ（ＳＯＣ）によって実践することがある。そのようなＳＯＣデバイスは、１つまたは複数の処理ユニット、グラフィックスユニット、通信ユニット、システム仮想化ユニット、および、様々なアプリケーション機能性を含むことがあり、それらの列挙したもののすべては、単一の集積回路としてチップ基板上へと集積される（または、「埋め込まれる」）。ＳＯＣによって動作するとき、プロトコルを切り替えるためのクライアントの能力に関しての、本明細書において説明する機能性を、単一の集積回路（チップ）上でコンピューティングデバイス６００の他の構成要素とともに集積される特定用途向け論理によって動作させることがある。本開示の実施形態を、さらには、機械、光学、流体、および量子技術を含むが、それらに制限されない、例えばＡＮＤ、ＯＲ、およびＮＯＴなどの論理演算を実施する能力のある他の技術を使用して実践することがある。加えて、本開示の実施形態を、汎用目的コンピュータの中で、または、任意の他の回路もしくはシステム内で実践することがある。
【００３１】
[0039]コンピューティングデバイス６００は、さらには、キーボード、マウス、ペン、サウンドまたはボイス入力デバイス、タッチまたはスワイプ入力デバイス、ハンドヘルドゲーミングコントローラ、その他などの、１つまたは複数の入力デバイス６１２を有することがある。ディスプレイ、スピーカ、プリンタ、その他などの出力デバイス６１４を、さらには含むことがある。上述のデバイスは例であり、他のものが使用されることがある。コンピューティングデバイス６００は、他のコンピューティングデバイス６５０との通信を可能とする、１つまたは複数の通信接続６１６を含むことがある。適した通信接続６１６の例は、無線周波数（ＲＦ）送信器、受信器、および／またはトランシーバ回路網、ユニバーサルシリアルバス（ＵＳＢ）、パラレル、および／またはシリアルポートを含むが、それらに制限されない。
【００３２】
[0040]用語、コンピュータ可読媒体は、本明細書において使用される際、コンピュータストレージ媒体を含むことがある。コンピュータストレージ媒体は、コンピュータ可読命令、データ構造、またはプログラムモジュールなどの情報のストレージのために、任意の方法または技術の形で実施される、揮発性および不揮発性、リムーバブルおよび非リムーバブル媒体を含むことがある。システムメモリ６０４、リムーバブルストレージデバイス６０９、および非リムーバブルストレージデバイス６１０は、すべてコンピュータストレージ媒体例（例えば、メモリストレージ）である。コンピュータストレージ媒体は、ＲＡＭ、ＲＯＭ、電気的消去可能読み出し専用メモリ（ＥＥＰＲＯＭ）、フラッシュメモリ、もしくは他のメモリ技術、ＣＤ−ＲＯＭ、デジタルバーサタイルディスク（ＤＶＤ）、もしくは他の光学ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ、もしくは他の磁気ストレージデバイスを含むことがあり、または、コンピュータストレージ媒体は、情報を記憶するために使用することができる、および、コンピューティングデバイス６００によりアクセスすることができる、任意の他の製造品を含むことがある。任意のそのようなコンピュータストレージ媒体は、コンピューティングデバイス６００の一部分であることがある。コンピュータストレージ媒体は、搬送波、または、他の伝搬させられる、もしくは変調されるデータ信号ではない。
【００３３】
[0041]通信媒体は、搬送波などの変調されるデータ信号、または他の移送機構の形の、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータにより実施されることがあり、任意の情報送達媒体を含む。用語「変調されるデータ信号」は、１つまたは複数の特性を有する信号であって、それらの特性が、その信号内で情報を符号化するような様式でセットされる、または変化させられる、信号を説明することがある。制限ではなく例として、通信媒体は、有線ネットワークまたは直接有線接続などの有線媒体、および、音響、無線周波数（ＲＦ）、赤外線などのワイヤレス媒体、および、他のワイヤレス媒体を含むことがある。
【００３４】
[0042]図７Ａおよび７Ｂは、用いて本開示の実施形態が実践されることがある、モバイルコンピューティングデバイス７００、例えば、モバイル電話、スマートフォン、ウェアラブルコンピュータ（スマートウォッチなど）、タブレットコンピュータ、ラップトップコンピュータ、および同類のものを示す。一部の態様において、クライアントは、モバイルコンピューティングデバイスであることがある。図７Ａを参照すると、態様を実施するための、モバイルコンピューティングデバイス７００の１つの態様が示されている。基本的な構成において、モバイルコンピューティングデバイス７００は、入力要素および出力要素の両方を有するハンドヘルドコンピュータである。モバイルコンピューティングデバイス７００は、典型的には、ディスプレイ７０５と、ユーザが情報をモバイルコンピューティングデバイス７００内へと入れることを可能とする、１つまたは複数の入力ボタン７１０とを含む。モバイルコンピューティングデバイス７００のディスプレイ７０５は、さらには、入力デバイス（例えば、タッチスクリーンディスプレイ）として機能することがある。
【００３５】
[0043]含まれるならば、任意選択の側部入力要素７１５が、さらなるユーザ入力を可能とする。側部入力要素７１５は、ロータリスイッチ、ボタン、または、任意の他のタイプの手動入力要素であることがある。代替的態様において、モバイルコンピューティングデバイス７００は、より多い、または、より少ない入力要素を組み込むことがある。例えば、ディスプレイ７０５は、一部の実施形態において、タッチスクリーンではないことがある。
【００３６】
[0044]さらに別の代替的実施形態において、モバイルコンピューティングデバイス７００は、セルラーフォンなどのポータブルフォンシステムである。モバイルコンピューティングデバイス７００は、さらには、任意選択のキーパッド７３５を含むことがある。任意選択のキーパッド７３５は、物理的キーパッド、または、タッチスクリーンディスプレイ上で生成される「ソフト」キーパッドであることがある。
【００３７】
[0045]様々な実施形態において、出力要素は、グラフィカルユーザインターフェイス（ＧＵＩ）を示すためのディスプレイ７０５、視覚インジケータ７２０（例えば、発光ダイオード）、および／またはオーディオトランスデューサ７２５（例えば、スピーカ）を含む。一部の態様において、モバイルコンピューティングデバイス７００は、ユーザに触覚フィードバックを提供するための振動トランスデューサを組み込む。さらに別の態様において、モバイルコンピューティングデバイス７００は、信号を外部デバイスに送出する、または、信号を外部デバイスから受信するための、オーディオ入力（例えば、マイクロホンジャック）、オーディオ出力（例えば、ヘッドホンジャック）、およびビデオ出力（例えば、ＨＤＭＩ（登録商標）ポート）などの、入力および／または出力ポートを組み込む。
【００３８】
[0046]図７Ｂは、モバイルコンピューティングデバイスの、１つの態様のアーキテクチャを示すブロック線図である。すなわち、モバイルコンピューティングデバイス７００は、一部の態様を実施するためのシステム（例えば、アーキテクチャ）７０２を組み込むことができる。１つの実施形態において、システム７０２を、１つまたは複数のアプリケーション（例えば、ブラウザ、ｅメール、カレンダリング、連絡先マネージャ、メッセージングクライアント、ゲーム、およびメディアクライアント／プレーヤ）を走らせる能力のある「スマートフォン」として実施する。一部の態様において、システム７０２を、統合された携帯情報端末（ＰＤＡ）およびワイヤレスフォンなどのコンピューティングデバイスとして統合する。
【００３９】
[0047]１つまたは複数のアプリケーションプログラム７６６を、メモリ７６２内へとロードし、オペレーティングシステム７６４上で、または、オペレーティングシステム７６４と関連して走らせることがある。アプリケーションプログラムの例は、フォンダイアラ（ｐｈｏｎｅ  ｄｉａｌｅｒ）プログラム、ｅメールプログラム、個人情報管理（ＰＩＭ）プログラム、ワードプロセッシングプログラム、スプレッドシートプログラム、インターネットブラウザプログラム、メッセージングプログラム、等々を含む。システム７０２は、さらには、メモリ７６２の中に不揮発性ストレージエリア７６８を含む。不揮発性ストレージエリア７６８を、システム７０２をパワーダウンする場合に失うべきではない永続的情報を記憶するために使用することがある。アプリケーションプログラム７６６は、ｅメールアプリケーションにより使用されるｅメールまたは他のメッセージ、および同類のものなどの、不揮発性ストレージエリア７６８内の情報を使用および記憶することがある。同期アプリケーション（示されない）が、さらには、システム７０２上に常駐するものであり、ホストコンピュータ上に常駐の対応する同期アプリケーションと相互作用して、不揮発性ストレージエリア７６８内で記憶される情報を、ホストコンピュータにおいて記憶される対応する情報と同期された状態に保つようにプログラムされる。察知すべきであるように、他のアプリケーションを、メモリ７６２内へとロードし、本明細書において説明するモバイルコンピューティングデバイス７００上で走らせることがある（例えば、サーチエンジン、抽出器モジュール、適切性ランキングモジュール、回答スコアリング（ａｎｓｗｅｒ  ｓｃｏｒｉｎｇ）モジュール、その他）。
【００４０】
[0048]システム７０２は、１つまたは複数の電池として実施されることがある、電力供給装置７７０を有する。電力供給装置７７０は、電池を補完または再充電する、ＡＣアダプタ、または、給電されるドッキングクレードルなどの、外部電力源をさらに含むことがある。
【００４１】
[0049]システム７０２は、さらには、無線周波数通信を送信および受信する機能を実施する無線インターフェイス層７７２を含むことがある。無線インターフェイス層７７２は、通信キャリアまたはサービスプロバイダを経た、システム７０２と「外側世界」との間のワイヤレス接続性を手助けする。無線インターフェイス層７７２への、および、無線インターフェイス層７７２からの送信を、オペレーティングシステム７６４の制御のもとで行う。言い換えれば、無線インターフェイス層７７２により受信される通信を、オペレーティングシステム７６４によってアプリケーションプログラム７６６へと広めることがあり、逆も同じことである。
【００４２】
[0050]視覚インジケータ７２０を、視覚的通知を提供するために使用することがあり、および／または、オーディオインターフェイス７７４を、オーディオトランスデューサ７２５によって可聴の通知を生み出すために使用することがある。例示される実施形態において、視覚インジケータ７２０は発光ダイオード（ＬＥＤ）であり、オーディオトランスデューサ７２５はスピーカである。これらのデバイスを、電力供給装置７７０に直接結合することがあり、そのことによって、活動化されるとき、それらのデバイスは、プロセッサ７６０および他の構成要素が、電池電力を節約するためにシャットダウンすることがあるとしても、通知機構により定められる持続時間の間はオンのままである。ＬＥＤを、デバイスのパワーオンされているステータスを指示するために、ユーザが行動をとるまで無期限にオンのままであるようにプログラムすることがある。オーディオインターフェイス７７４を、可聴の信号をユーザに提供し、可聴の信号をユーザから受信するために使用する。例えば、オーディオトランスデューサ７２５に結合することに加えて、オーディオインターフェイス７７４を、さらには、通話を手助けするためなどで、可聴の入力を受信するためにマイクロホンに結合することがある。本開示の実施形態によれば、マイクロホンは、さらには、下記で説明するように、通知の制御を手助けするためのオーディオセンサとして働くことがある。システム７０２は、オンボードカメラ７３０の動作が、静止画像、ビデオストリーム、および同類のものを記録することを可能にする、ビデオインターフェイス７７６をさらに含むことがある。
【００４３】
[0051]システム７０２を実施するモバイルコンピューティングデバイス７００は、追加的な特徴または機能性を有することがある。例えば、モバイルコンピューティングデバイス７００は、さらには、磁気ディスク、光学ディスク、またはテープなどの、追加的なデータストレージデバイス（リムーバブルおよび／または非リムーバブル）を含むことがある。そのような追加的なストレージを、図７Ｂにおいて、不揮発性ストレージエリア７６８により示す。
【００４４】
[0052]モバイルコンピューティングデバイス７００により生成もしくは捕捉される、および、システム７０２によって記憶されるデータ／情報を、上記で説明したように、モバイルコンピューティングデバイス７００上で、ローカルで記憶することがあり、または、データを、任意の数のストレージ媒体上で記憶することがあり、それらのストレージ媒体に、無線インターフェイス層７７２を経て、もしくは、インターネットなどの分散型コンピューティングネットワーク内の、モバイルコンピューティングデバイス７００と、モバイルコンピューティングデバイス７００と関連付けられる別個のコンピューティングデバイス、例えばサーバコンピュータとの間の有線接続を経て、デバイスによりアクセスすることがある。察知すべきであるように、そのようなデータ／情報に、無線インターフェイス層７７２を経て、または、分散型コンピューティングネットワークを経て、モバイルコンピューティングデバイス７００によってアクセスすることがある。同様に、そのようなデータ／情報を、電子メール、および、協働的データ／情報共有システムを含む、よく知られているデータ／情報転送およびストレージ手段によって、ストレージおよび使用のためにコンピューティングデバイスの間で、たやすく転送することがある。
【００４５】
[0053]図８は、上記で説明したような、パーソナルコンピュータ８０４、タブレットコンピューティングデバイス８０６、またはモバイルコンピューティングデバイス８０８などのリモートソースから、コンピューティングシステムにおいて受信されるデータを処理するためのシステムのアーキテクチャの１つの態様を示す。サーバデバイス８０２において表示されるコンテンツを、異なる通信チャネルまたは他のストレージタイプ内で記憶することがある。例えば、様々な文書を、ディレクトリサービス８２２、ウェブポータル８２４、メールボックスサービス８２６、仮想現実ストア８２８、またはソーシャルネットワーキングサイト８３０を使用して記憶することがある。
【００４６】
[0054]３Ｄ空間生成器および仮想現実プログラム８２０を、サーバデバイス８０２と通信するクライアントにより使うことがあり、ならびに／または、３Ｄ空間生成器および仮想現実プログラム８２１を、サーバデバイス８０２により使うことがある。サーバデバイス８０２は、ネットワーク８１５を通しての、パーソナルコンピュータ８０４、タブレットコンピューティングデバイス８０６、および／またはモバイルコンピューティングデバイス８０８（例えば、スマートフォン）などのクライアントコンピューティングデバイスへの、ならびに、そのクライアントコンピューティングデバイスからのデータを提供することがある。例として、上記で説明したコンピュータシステムを、パーソナルコンピュータ８０４、タブレットコンピューティングデバイス８０６、モバイルコンピューティングデバイス８０８（例えば、スマートフォン）、および／またはＨＭＤ８１０の形で実施することがある。コンピューティングデバイスのこれらの実施形態の任意のものは、グラフィックを創作するシステムにおいて前処理されるか、または受信するコンピューティングシステムにおいて後処理されるかのいずれかであるように使用可能なグラフィカルデータを受信することに加えて、ストア８１６からコンテンツを取得することがある。
【００４７】
[0055]図９は、仮想現実デバイスと接続して、本明細書において開示する１つまたは複数の態様を実行することがある、例示的なタブレットコンピューティングデバイス９００を示す。加えて、本明細書において説明する態様および機能性は、分散型システム（例えば、クラウドベースのコンピューティングシステム）にわたって動作することがあり、アプリケーション機能性、メモリ、データストレージおよび検索、ならびに、様々な処理機能を、インターネットまたはイントラネットなどの分散型コンピューティングネットワークにわたって、互いからリモートで動作させることがある。様々なタイプのユーザインターフェイスおよび情報を、オンボードのコンピューティングデバイスディスプレイによって、または、１つもしくは複数のコンピューティングデバイスと関連付けられるリモートディスプレイユニットによって表示することがある。例えば、様々なタイプのユーザインターフェイスおよび情報を、壁面上で表示し、それらのユーザインターフェイスおよび情報と、壁面上で相互作用することがあり、その壁面上へと、様々なタイプのユーザインターフェイスおよび情報を投射する。用いて本発明の実施形態が実践されることがある、多数のコンピューティングシステムとの相互作用は、キーストロークエントリ、タッチスクリーンエントリ、ボイスまたは他のオーディオエントリ、ジェスチャエントリ、および同類のものを含み、そのジェスチャエントリの場合、関連付けられるコンピューティングデバイスは、コンピューティングデバイスの機能性を制御するためにユーザジェスチャを捕捉および解釈するための検出（例えば、カメラ）機能性を装備する。
【００４８】
[0056]少なくとも、後に続く態様を、前述の論じたことから察知することになる。１つの態様において、本技術は、仮想世界内の仮想カメラのビューを制御するための方法に関する。方法は、ヘッドマウントディスプレイの位置に基づいて、仮想世界のグローバル座標系に対する初期仮想カメラ回転角度を識別するステップであって、仮想カメラは、コンテナの回転がグローバル座標系に対する仮想カメラの回転を引き起こすようにコンテナ内にラップされている、識別するステップと、ビューを特定の方向に変化させるための指示を受信するステップと、特定の方向に対応するビューに対する、グローバル座標系に対する望まれる回転角度を識別するステップと、コンテナを、少なくとも、望まれる回転角度と初期仮想カメラ回転角度の両方に基づく回転値だけ回転させるステップとを含む。例において、コンテナを回転させることにより、最終仮想カメラ回転角度が、グローバル座標系に対する望まれる回転角度に等しくなる。別の例において、方法は、さらには、ＨＭＤのディスプレイスクリーン上で、初期仮想カメラ角度に従って仮想カメラのビューを表示するステップと、ビューを特定の方向に変化させるための指示を受信するステップに基づいて、スクリーンを、黒に次第に変えるステップと、スクリーンを、黒から次第に変えて、最終仮想カメラ回転角度に従って仮想カメラのビューを表示するステップとを含む。さらに別の例において、指示を受信するステップは、ロコモーションマーカの選択を受信するステップを含む。その上さらに別の例において、方法は、さらには、選択可能なロコモーションマーカを表示するステップを含み、選択可能なロコモーションマーカの表示は、特定の方向を指示する。
【００４９】
[0057]別の例において、回転角度は、ピッチ角度、ヨー角度、またはロール角度のうちの少なくとも１つを含む。さらに別の例において、方法は、初期仮想カメラ回転角度を３６０度から減算して、中間値を生成するステップと、中間値を、望まれる回転角度に加算して、回転値を生成するステップとにより、回転値を決定するステップをさらに含む。
【００５０】
[0058]別の態様において、本技術は、ヘッドマウントディスプレイ（ＨＭＤ）と、ＨＭＤに動作的に接続される少なくとも１つのプロセッサと、少なくとも１つのプロセッサにより実行されるときに、動作のセットを実施する命令を記憶するメモリとを含み、動作のセットは、ＨＭＤの位置に基づいて、仮想世界のグローバル座標系に対する、仮想カメラの初期仮想カメラ回転角度を識別することであって、仮想カメラは、コンテナの回転がグローバル座標系に対する仮想カメラの回転を引き起こすようにコンテナ内にラップされている、識別することと、ビューを特定の方向に変化させるための指示を受信することと、特定の方向に対応するビューに対する、グローバル座標系に対する望まれる回転角度を識別することと、コンテナを、少なくとも、望まれる回転角度と初期仮想カメラ回転角度の両方に基づく回転値だけ回転させることとを含む、システムに関する。
【００５１】
[0059]例において、コンテナを回転させることにより、最終仮想カメラ回転角度が、グローバル座標系に対する望まれる回転角度に等しくなる。別の例において、動作は、ＨＭＤのディスプレイスクリーン上で、初期仮想カメラ角度に従って仮想カメラのビューを表示することと、ビューを特定の方向に変化させるための指示を受信することに基づいて、スクリーンを、黒に次第に変えることと、スクリーンを、黒から次第に変えて、最終仮想カメラ回転角度に従って仮想カメラのビューを表示することとをさらに含む。さらに別の例において、指示を受信することは、ロコモーションマーカの選択を受信することを含む。その上さらに別の例において、動作は、選択可能なロコモーションマーカを表示することをさらに含み、選択可能なロコモーションマーカの表示は、特定の方向を指示する。別の例において、回転角度は、ピッチ角度、ヨー角度、またはロール角度のうちの少なくとも１つを含む。さらに別の例において、動作は、初期仮想カメラ回転角度を３６０度から減算して、中間値を生成することと、中間値を、望まれる回転角度に加算して、回転値を生成することとにより、回転値を決定することをさらに含む。
【００５２】
[0060]別の態様において、本技術は、仮想世界内の仮想カメラのビューを制御するための方法に関する。方法は、ヘッドマウントディスプレイの位置に基づいて、仮想カメラの初期仮想カメラ回転角度を識別するステップであって、仮想カメラは、コンテナの回転がグローバル座標系に対する仮想カメラの回転を引き起こすようにコンテナと関連付けられる、識別するステップと、ＨＭＤのディスプレイスクリーン上で、初期仮想カメラ角度に従って仮想カメラのビューを表示するステップと、ＨＭＤのディスプレイスクリーン上で、ロコモーションマーカを表示するステップと、ロコモーションマーカの選択を受信するステップと、選択されたロコモーションマーカに対応するビューに対する、特定の方向を識別するステップと、特定の方向に対応するビューに対する、望まれる回転角度を識別するステップと、コンテナを、少なくとも、望まれる回転角度と初期仮想カメラ回転角度の両方に基づく回転値だけ回転させるステップとを含む。例において、コンテナを回転させることにより、最終仮想カメラ回転角度が、グローバル座標系に対する望まれる回転角度に等しくなる。別の例において、回転角度は、ピッチ角度、ヨー角度、またはロール角度のうちの少なくとも１つを含む。さらに別の例において、動作は、初期仮想カメラ回転角度を３６０度から減算して、中間値を生成することと、中間値を、望まれる回転角度に加算して、回転値を生成することとにより、回転値を決定するステップをさらに含む。その上さらに別の例において、方法は、ユーザのビューが、あらかじめ決定されたエリアの中であるかどうかを決定するステップをさらに含み、ロコモーションマーカを表示するステップは、ユーザのビューが、あらかじめ決定されたエリアの中であることに基づく。別の例において、方法は、スナップゾーンおよびビュー方向マーカを表示するステップをさらに含む。
【００５３】
[0061]本開示の態様を、例えば、本開示の態様による方法、システム、およびコンピュータプログラム製品の、ブロック線図および／または動作図を参照して、上記で説明している。ブロックにおいて記した機能／行為は、任意のフローチャートにおいて示されるような順序を外れて発生することがある。例えば、連続して示される２つのブロックを、実際は、実質的に同時に実行することがあり、または、ブロックを、時には、関与する機能性／行為に依存して、逆の順序で実行することがある。
【００５４】
[0062]本出願において提供される１つまたは複数の態様の説明および例示は、請求されるような本開示の範囲を制限または限定させる意図は決してない。本出願において提供される態様、例、および詳細は、所有について伝えるのに、また請求される技術の最良の形態を他者が作製および使用することを可能にするのに十分と考える。請求される技術を、本出願において提供される任意の態様、例、または詳細に制限されると解するべきではない。示され説明されるのが、組み合わせてか、または別個であるかに関わらず、様々な特徴（構造的および方法論的の両方）を、特徴の個別のセットを伴う実施形態を生み出すために、選択的に含める、または省略する意図がある。実例として、上記で説明した例を、互いにたやすく組み合わせることがある。本出願の説明および例示を提供されたことで、当業者は、請求される開示のより広範な範囲から逸脱しない、本出願において実施される一般的な発明概念のより広範な態様の趣旨の中に当てはまる、変形、修正、および代替の態様を構想することがある。
【図１】
2020518077.tif 000003
【図２Ａ】
2020518077.tif 000004
【図２Ｂ】
2020518077.tif 000005
【図３】
2020518077.tif 000006
【図４】
2020518077.tif 000007
【図５】
2020518077.tif 000008
【図６】
2020518077.tif 000009
【図７Ａ】
2020518077.tif 000010
【図７Ｂ】
2020518077.tif 000011
【図８】
2020518077.tif 000012
【図９】
2020518077.tif 000013
【国際調査報告】
2020518077.tif 000014
2020518077.tif 000015