IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ オキュラス ブイアール,エルエルシーの特許一覧

特表2023-511805物理的環境に基づく仮想環境における仮想経路生成
<>
  • 特表-物理的環境に基づく仮想環境における仮想経路生成 図1
  • 特表-物理的環境に基づく仮想環境における仮想経路生成 図2
  • 特表-物理的環境に基づく仮想環境における仮想経路生成 図3A
  • 特表-物理的環境に基づく仮想環境における仮想経路生成 図3B
  • 特表-物理的環境に基づく仮想環境における仮想経路生成 図3C
  • 特表-物理的環境に基づく仮想環境における仮想経路生成 図4
  • 特表-物理的環境に基づく仮想環境における仮想経路生成 図5
  • 特表-物理的環境に基づく仮想環境における仮想経路生成 図6
  • 特表-物理的環境に基づく仮想環境における仮想経路生成 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-03-23
(54)【発明の名称】物理的環境に基づく仮想環境における仮想経路生成
(51)【国際特許分類】
   G06F 3/01 20060101AFI20230315BHJP
   G06T 19/00 20110101ALI20230315BHJP
   G06F 3/04815 20220101ALI20230315BHJP
【FI】
G06F3/01 510
G06T19/00 300B
G06F3/04815
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2022523615
(86)(22)【出願日】2020-11-29
(85)【翻訳文提出日】2022-06-20
(86)【国際出願番号】 US2020062533
(87)【国際公開番号】W WO2021154379
(87)【国際公開日】2021-08-05
(31)【優先権主張番号】16/774,754
(32)【優先日】2020-01-28
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.BLUETOOTH
(71)【出願人】
【識別番号】515046968
【氏名又は名称】メタ プラットフォームズ テクノロジーズ, リミテッド ライアビリティ カンパニー
【氏名又は名称原語表記】META PLATFORMS TECHNOLOGIES, LLC
(74)【代理人】
【識別番号】110002974
【氏名又は名称】弁理士法人World IP
(72)【発明者】
【氏名】ノリス, ジョアッキーノ
(72)【発明者】
【氏名】アルダーマン, マシュー ジェームズ
(72)【発明者】
【氏名】マーラ, アレッシア
【テーマコード(参考)】
5B050
5E555
【Fターム(参考)】
5B050AA03
5B050BA09
5B050BA11
5B050BA13
5B050CA07
5B050CA08
5B050DA07
5B050EA04
5B050EA26
5B050FA02
5E555AA23
5E555AA26
5E555AA27
5E555BA08
5E555BB08
5E555BC08
5E555BE16
5E555BE17
5E555DA08
5E555DA09
5E555DB57
5E555DC24
5E555DD08
5E555FA00
(57)【要約】
ユーザの周囲の物理的空間のレイアウトを物理的セグメントにセグメント化することと、仮想環境のための仮想経路であって、それを通ってユーザが、物理的セグメントを進行することによってナビゲートすることができる仮想経路を、物理的セグメントに基づいて生成することと、仮想環境におけるユーザのロケーションに基づいて特定の仮想経路を表示することと、ユーザの進行の前方方向が、特定の仮想経路に対応する特定の物理的セグメントの境界条件に近接していると決定することと、ユーザが特定の仮想経路におけるポイントを越えて進行するためにユーザの物理的回転が必要とされることをユーザに通知することと、ユーザの物理的回転が完了したことを検出し、それに応答して特定の仮想経路を示すために表示を更新し、かつユーザが特定の仮想経路におけるポイントを越えて進行することを可能にすることとを含む方法。
【選択図】図2
【特許請求の範囲】
【請求項1】
ユーザの周囲の物理的空間のレイアウトを物理的セグメントにセグメント化することと、
仮想環境のための仮想経路であって、それを通って前記ユーザが、前記物理的セグメントを進行することによってナビゲートすることができる仮想経路を、前記物理的セグメントに基づいて生成することと、
前記仮想環境における前記ユーザのロケーションに基づいて前記仮想経路のうちの特定の仮想経路を表示することと、
前記ユーザの進行の前方方向が前記物理的セグメントのうちの特定の物理的セグメントの境界条件に近接していると決定することであって、前記特定の物理的セグメントが前記特定の仮想経路に対応する、前記ユーザの進行の前方方向が前記物理的セグメントのうちの特定の物理的セグメントの境界条件に近接していると決定することと、
前記決定することに応答して、前記ユーザが前記特定の仮想経路におけるポイントを越えて進行するために前記ユーザの物理的回転が必要とされることを前記ユーザに通知することと、
前記ユーザの前記物理的回転が完了したことを検出し、それに応答して前記特定の仮想経路を示すために前記表示を更新し、かつ前記ユーザが前記特定の仮想経路における前記ポイントを越えて進行することを可能にすることと
を含む、コンピュータ実装方法。
【請求項2】
前記ユーザが前記特定の仮想経路における前記ポイントを越えて進行するために前記ユーザの前記物理的回転が必要とされることを前記ユーザに通知することは、前記ユーザの前記物理的回転が必要とされることを指示するグラフィカルユーザインターフェース(GUI)要素を、前記特定の仮想経路内に表示することをさらに含み、
好ましくは、前記ユーザが前記特定の仮想経路における前記ポイントを越えて進行するために前記ユーザの前記物理的回転が必要とされることを前記ユーザに通知することは、前記ユーザの前記物理的回転が必要とされることを指示するオーディオ通知を提供することをさらに含む、
請求項1に記載のコンピュータ実装方法。
【請求項3】
前記ユーザの前記物理的回転の検出中に、前記仮想環境を表示するグラフィカルユーザインターフェース(GUI)を、前記GUIが前記ユーザの前記物理的回転と相関するように更新すること
をさらに含む、請求項1または2に記載のコンピュータ実装方法。
【請求項4】
前記特定の仮想経路を示すために前記表示を更新することは、前記ユーザの前記物理的回転が完了したことを検出した後に、前記特定の仮想経路を表示するために前記GUIを更新することをさらに含む、請求項3に記載のコンピュータ実装方法。
【請求項5】
前記GUIを、前記GUIが前記ユーザの前記物理的回転と相関するように更新することが、前記ユーザの前記物理的回転と相関する前記GUIの仮想シーンを回転させることをさらに含み、
好ましくは、前記GUIの前記仮想シーンを回転させることが、前記GUIの前記仮想シーンを約90度回転させることを含む、
請求項3または4に記載のコンピュータ実装方法。
【請求項6】
前記ユーザの前記物理的回転が完了したことを検出した後に、前記ユーザの前記物理的回転と相関する前記GUIの前記仮想シーンの前記回転と反対の方向に前記GUIの前記仮想シーンを回転させることをさらに含み、
好ましくは、前記GUIの前記仮想シーンが、約0.3秒間、前記ユーザの前記物理的配給と相関する前記GUIの前記仮想シーンの前記回転と反対の前記方向に回転する、
請求項5に記載のコンピュータ実装方法。
【請求項7】
前記ユーザの前記物理的回転の検出中に、前記仮想環境を表示するグラフィカルユーザインターフェース(GUI)を、前記GUIの移動がフリーズされるように更新すること
をさらに含む、請求項1から6のいずれか一項に記載のコンピュータ実装方法。
【請求項8】
前記ユーザの進行の前記前方方向が前記物理的セグメントのうちの特定の物理的セグメントの前記境界条件に近接していると決定することは、前記ユーザが前記特定の物理的セグメントの物理的制約のしきい値距離内にあると決定することをさらに含む、請求項1から7のいずれか一項に記載のコンピュータ実装方法。
【請求項9】
前記仮想経路を生成することは、前記物理的セグメントのうちの第1の物理的セグメントと第2の物理的セグメントとに基づいて前記特定の仮想経路を生成することであって、前記第1の物理的セグメントと前記第2の物理的セグメントとが共通ポイントを共有する、前記特定の仮想経路を生成することを含む、請求項1から8のいずれか一項に記載のコンピュータ実装方法。
【請求項10】
ユーザの周囲の物理的空間のレイアウトを物理的セグメントにセグメント化することと、
仮想環境のための仮想経路であって、それを通って前記ユーザが、前記物理的セグメントを進行することによってナビゲートすることができる仮想経路を、前記物理的セグメントに基づいて生成することと、
前記仮想環境における前記ユーザのロケーションに基づいて前記仮想経路のうちの特定の仮想経路を表示することと、
前記ユーザの進行の前方方向が前記物理的セグメントのうちの特定の物理的セグメントの境界条件に近接していると決定することであって、前記特定の物理的セグメントが前記特定の仮想経路に対応する、前記ユーザの進行の前方方向が前記物理的セグメントのうちの特定の物理的セグメントの境界条件に近接していると決定することと、
前記決定することに応答して、前記ユーザが前記特定の仮想経路におけるポイントを越えて進行するために前記ユーザの物理的回転が必要とされることを前記ユーザに通知することと、
前記ユーザの前記物理的回転が完了したことを検出し、それに応答して異なる仮想経路を示すために前記表示を更新し、かつ前記ユーザが前記異なる仮想経路に沿って進行することを可能にすることと
を含む、コンピュータ実装方法。
【請求項11】
前記ユーザの前記物理的回転の検出中に、前記仮想環境を表示するグラフィカルユーザインターフェース(GUI)を、前記GUIが前記ユーザの前記物理的回転と相関するように更新すること
をさらに含む、請求項10に記載のコンピュータ実装方法。
【請求項12】
前記GUIを、前記GUIが前記ユーザの前記物理的回転と相関するように更新することが、前記ユーザの前記物理的回転と相関する前記GUIの仮想シーンを回転させることをさらに含み、
好ましくは、前記GUIの前記仮想シーンを回転させることが、前記GUIの前記仮想シーンを約180度回転させることを含む、
請求項11に記載のコンピュータ実装方法。
【請求項13】
前記異なる仮想経路が、前記特定の仮想経路の反対側にある、請求項10から12のいずれか一項に記載のコンピュータ実装方法。
【請求項14】
命令を記憶するメモリ媒体へのアクセスを有するプロセッサを備えるシステムであって、前記命令は、前記プロセッサによって実行されたとき、前記プロセッサに、
ユーザの周囲の物理的空間のレイアウトを物理的セグメントにセグメント化するステップと、
仮想環境のための仮想経路であって、それを通って前記ユーザが、前記物理的セグメントを進行することによってナビゲートすることができる仮想経路を、前記物理的セグメントに基づいて生成するステップと、
前記仮想環境における前記ユーザのロケーションに基づいて前記仮想経路のうちの特定の仮想経路を表示するステップと、
前記ユーザの進行の前方方向が前記物理的セグメントのうちの特定の物理的セグメントの境界条件に近接していると決定するステップであって、前記特定の物理的セグメントが前記特定の仮想経路に対応する、前記ユーザの進行の前方方向が前記物理的セグメントのうちの特定の物理的セグメントの境界条件に近接していると決定するステップと、
前記決定するステップに応答して、前記ユーザが前記特定の仮想経路におけるポイントを越えて進行するために前記ユーザの物理的回転が必要とされることを前記ユーザに通知するステップと、
前記ユーザの前記物理的回転が完了したことを検出すし、それに応答して前記特定の仮想経路を示すために前記表示を更新し、かつ前記ユーザが前記特定の仮想経路における前記ポイントを越えて進行することを可能にするステップと
を行わせる、システム。
【請求項15】
前記ユーザが前記特定の仮想経路における前記ポイントを越えて進行するために前記ユーザの前記物理的回転が必要とされることを前記ユーザに通知することは、前記ユーザの前記物理的回転が必要とされることを指示するグラフィカルユーザインターフェース(GUI)要素を、前記特定の仮想経路内に表示することをさらに含み、
好ましくは、前記ユーザが前記特定の仮想経路における前記ポイントを越えて進行するために前記ユーザの前記物理的回転が必要とされることを前記ユーザに通知することは、前記ユーザの前記物理的回転が必要とされることを指示するオーディオ通知を提供することをさらに含む、
請求項14に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、一般に、物理的環境に基づく仮想環境における生成仮想経路に関する。
【背景技術】
【0002】
旧来の仮想現実(VR)コンピューティングシステムは、限られた空間内で使用されるように設計される。限られた空間内で歩くための制限された物理的空間により、コンテンツ設計者(たとえば、ゲーム設計者)は、仮想環境をナビゲートする(navigate)ための機構としてユーザの物理的再配置を使用しないことがある。ボタンの押下によって、仮想現実環境における歩行をシミュレートすることが可能であるが、そうすることは、視覚的に知覚される移動と身体的移動の前庭系の感覚との間の矛盾により、おそらく乗り物酔い(motion sickness)を引き起こすことになる。これらの制限により、旧来のVRコンテンツ設計者は、「テレポーテーション」を、仮想環境をナビゲートするための機構とする。たとえば、ユーザは、仮想環境におけるあるロケーションを指し、ボタンを押し、遷移移動を見せられることなしにそのロケーションに瞬時にテレポートし得る。テレポーテーション機構は、VRナビゲーションの問題の実行可能なソリューションを提供するが、テレポーテーション機構は、(たとえば、各目的地への行程がスキップされるので)現実的な、没入型体験を提供しない。
【発明の概要】
【0003】
本出願は、VRコンテンツ開発者が、ユーザにとって利用可能な物理的室内レイアウトに基づいてナビゲーション経路を手続き的に生成する(procedurally generate)ことを可能にすることによる、仮想現実(VR)ナビゲーション問題のソリューションについて説明する。さらに、物理的室内レイアウトの制限にもかかわらず、ユーザに、歩行空間でユーザに役立つように現実世界において物理的にターン(turn)させるために、手続き的に生成された経路内のいくつかの交差部に新しいユーザインターフェースが挿入される。そのような交差部において、ユーザは、続けるためにターン動き(turning motion)を実施するように求められ得る。ターン動きによって必要とされるターンの程度は、ユーザの空間の物理的レイアウトに依存することになる。ユーザによって行われるターンの程度と、VRにおける手続き的に生成された経路に沿った進行の方向との間の潜在的不整合に対処するために、VRコンテンツは、ユーザが仮想環境における意図された進行方向を向いていることになるように、VR環境を急速に回転し得る。たとえば、ユーザが物理的廊下の端に達したとき、VRコンテンツは、ユーザが続けるために、回転される必要があるUIデバイスを位置決めし得る。物理的廊下が行き止まりである場合、ユーザは、経路をアンロックするために、UIデバイスをユーザの軸を中心として180度ターンしなければならないことがある。現実世界では、そうした後に、ユーザは、ユーザが来た方向を向いていることになる。VRにおいて視覚的に、ユーザは、ユーザが進行の意図された方向を向いていることになるように、シーンが急速に回転するのを見ることになる。
【0004】
第1の態様によれば、コンピュータ実装方法が提供され、コンピュータ実装方法は、ユーザの周囲の物理的空間のレイアウトを物理的セグメントにセグメント化することと、物理的セグメントに基づいて、ユーザが、物理的セグメントを進行することによってナビゲートすることができる、仮想環境のための仮想経路を生成することと、仮想環境におけるユーザのロケーションに基づいて仮想経路のうちの特定の仮想経路を表示することと、ユーザの進行の前方方向(forward direction of travel)が物理的セグメントのうちの特定の物理的セグメントの境界条件に近接していると決定することであって、特定の物理的セグメントが特定の仮想経路に対応する、ユーザの進行の前方方向が物理的セグメントのうちの特定の物理的セグメントの境界条件に近接していると決定することと、決定することに応答して、ユーザが特定の仮想経路におけるポイントを越えて進行するためにユーザの物理的回転が必要とされることをユーザに通知することと、ユーザの物理的回転が完了したことを検出すること、および応答して、特定の仮想経路を示すために表示を更新すること、およびユーザが特定の仮想経路におけるポイントを越えて進行することを可能にすることとを含む。
【0005】
ユーザが特定の仮想経路におけるポイントを越えて進行するためにユーザの物理的回転が必要とされることをユーザに通知することは、ユーザの物理的回転が必要とされることを指示するグラフィカルユーザインターフェース(GUI)要素を、特定の仮想経路内に表示することをさらに含み得る。
【0006】
ユーザが特定の仮想経路におけるポイントを越えて進行するためにユーザの物理的回転が必要とされることをユーザに通知することは、ユーザの物理的回転が必要とされることを指示するオーディオ通知を提供することをさらに含み得る。
【0007】
コンピュータ実装方法は、ユーザの物理的回転の検出中に、仮想環境を表示するグラフィカルユーザインターフェース(GUI)を、GUIがユーザの物理的回転と相関するように更新することをさらに含み得る。
【0008】
特定の仮想経路を示すために表示を更新することは、ユーザの物理的回転が完了したことを検出した後に、特定の仮想経路を表示するためにGUIを更新することをさらに含み得る。
【0009】
GUIを、GUIがユーザの物理的回転と相関するように更新することは、ユーザの物理的回転と相関するGUIの仮想シーンを回転することをさらに含み得る。
【0010】
GUIの仮想シーンを回転することは、GUIの仮想シーンを約90度回転することを含み得る。コンピュータ実装方法は、ユーザの物理的回転が完了したことを検出した後に、ユーザの物理的回転と相関するGUIの仮想シーンの回転と反対の方向にGUIの仮想シーンを回転することをさらに含み得る。
【0011】
GUIの仮想シーンは、約0.3秒間、ユーザの物理的配給と相関するGUIの仮想シーンの回転と反対の方向に回転され得る。他の好適な時間が想定される。
【0012】
コンピュータ実装方法は、ユーザの物理的回転の検出中に、仮想環境を表示するグラフィカルユーザインターフェース(GUI)を、GUIの移動がフリーズされるように更新することをさらに含み得る。
【0013】
ユーザの進行の前方方向が物理的セグメントのうちの特定の物理的セグメントの境界条件に近接していると決定することは、ユーザが特定の物理的セグメントの物理的制約のしきい値距離内にあると決定することをさらに含み得る。
【0014】
仮想経路を生成することは、物理的セグメントのうちの第1の物理的セグメントと第2の物理的セグメントとに基づいて特定の仮想経路を生成することであって、第1の物理的セグメントと第2の物理的セグメントとが共通ポイントを共有する、特定の仮想経路を生成することを含み得る。
【0015】
第2の態様によれば、コンピュータ実装方法が提供され、コンピュータ実装方法は、ユーザの周囲の物理的空間のレイアウトを物理的セグメントにセグメント化することと、物理的セグメントに基づいて、ユーザが、物理的セグメントを進行することによってナビゲートすることができる、仮想環境のための仮想経路を生成することと、仮想環境におけるユーザのロケーションに基づいて仮想経路のうちの特定の仮想経路を表示することと、ユーザの進行の前方方向が物理的セグメントのうちの特定の物理的セグメントの境界条件に近接していると決定することであって、特定の物理的セグメントが特定の仮想経路に対応する、ユーザの進行の前方方向が物理的セグメントのうちの特定の物理的セグメントの境界条件に近接していると決定することと、決定することに応答して、ユーザが特定の仮想経路におけるポイントを越えて進行するためにユーザの物理的回転が必要とされることをユーザに通知することと、ユーザの物理的回転が完了したことを検出すること、および応答して、異なる仮想経路を示すために表示を更新すること、およびユーザが異なる仮想経路に沿って進行することを可能にすることとを含む。
【0016】
コンピュータ実装方法は、ユーザの物理的回転の検出中に、仮想環境を表示するグラフィカルユーザインターフェース(GUI)を、GUIがユーザの物理的回転と相関するように更新することをさらに含み得る。
【0017】
GUIを、GUIがユーザの物理的回転と相関するように更新することは、ユーザの物理的回転と相関するGUIの仮想シーンを回転することをさらに含み得る。
【0018】
GUIの仮想シーンを回転することは、GUIの仮想シーンを約180度回転することを含み得る。
【0019】
異なる仮想経路は、特定の仮想経路の反対側にあり得る。
【0020】
第3の態様によれば、命令を記憶するメモリ媒体へのアクセスを有するプロセッサを備えるシステムが提供され、命令は、プロセッサによって実行されたとき、プロセッサに、ユーザの周囲の物理的空間のレイアウトを物理的セグメントにセグメント化するステップと、物理的セグメントに基づいて、ユーザが、物理的セグメントを進行することによってナビゲートすることができる、仮想環境のための仮想経路を生成するステップと、仮想環境におけるユーザのロケーションに基づいて仮想経路のうちの特定の仮想経路を表示するステップと、ユーザの進行の前方方向が物理的セグメントのうちの特定の物理的セグメントの境界条件に近接していると決定するステップであって、特定の物理的セグメントが特定の仮想経路に対応する、ユーザの進行の前方方向が物理的セグメントのうちの特定の物理的セグメントの境界条件に近接していると決定するステップと、決定するステップに応答して、ユーザが特定の仮想経路におけるポイントを越えて進行するためにユーザの物理的回転が必要とされることをユーザに通知するステップと、ユーザの物理的回転が完了したことを検出するステップ、および応答して、特定の仮想経路を示すために表示を更新するステップ、およびユーザが特定の仮想経路におけるポイントを越えて進行することを可能にするステップとを行わせる。
【0021】
ユーザが特定の仮想経路におけるポイントを越えて進行するためにユーザの物理的回転が必要とされることをユーザに通知することは、ユーザの物理的回転が必要とされることを指示するグラフィカルユーザインターフェース(GUI)要素を、特定の仮想経路内に表示することをさらに含み得る。
【0022】
ユーザが特定の仮想経路におけるポイントを越えて進行するためにユーザの物理的回転が必要とされることをユーザに通知することは、ユーザの物理的回転が必要とされることを指示するオーディオ通知を提供することをさらに含み得る。
【0023】
本明細書で開示される例は、本開示の範囲を限定しない。特定の例は、本明細書で開示される例の構成要素、要素、特徴、機能、動作、またはステップのすべてを含むか、いくつかを含むか、またはいずれをも含まないことがある。本発明による実施形態は、特に、方法およびシステムを対象とする添付の特許請求の範囲で開示され、1つの請求項カテゴリー、たとえば、方法において述べられた任意の特徴は、別の請求項カテゴリー、たとえば、システムにおいても請求され得る。添付の特許請求の範囲における従属関係または参照は、形式的理由で選定されるにすぎない。ただし、前の請求項への意図的な参照(特に複数の従属関係)から生じる主題も請求され得、その結果、請求項とその特徴との任意の組合せが、開示され、添付の特許請求の範囲で選定された従属関係にかかわらず請求され得る。請求され得る主題は、添付の特許請求の範囲に記載の特徴の組合せだけでなく、特許請求の範囲における特徴の任意の他の組合せをも含み、特許請求の範囲において述べられた各特徴は、特許請求の範囲における任意の他の特徴または他の特徴の組合せと組み合わせられ得る。さらに、本明細書で説明または示される例および特徴のいずれも、別個の請求項において、ならびに/あるいは、本明細書で説明もしくは示される任意の例もしくは特徴との、または添付の特許請求の範囲の特徴のいずれかとの任意の組合せで請求され得る。
【図面の簡単な説明】
【0024】
図1】物理的環境に基づく仮想環境における仮想経路の生成のための例示的な環境を示す図である。
図2】例示的な物理的環境を示す図である。
図3A】例示的な仮想経路を示す図である。
図3B】例示的な仮想経路を示す図である。
図3C】例示的な仮想経路を示す図である。
図4】仮想環境の接続された仮想経路を示す図である。
図5】物理的環境に基づく仮想環境における仮想経路の生成のための例示的な方法を示す図である。
図6】例示的なコンピュータシステムを示す図である。
図7】例示的な人工現実システムを示す図である。
【発明を実施するための形態】
【0025】
図1は、物理的環境に基づく仮想環境における仮想経路の生成のための環境100を示す。環境100は、コンピューティングシステム106と対話するユーザ104を含むことができる物理的空間102を含むことができる。いくつかの例では、コンピューティングシステム106は、仮想現実コンピューティングシステム、拡張現実コンピューティングシステム、または複合現実コンピューティングシステムを含むことができる。コンピューティングシステム106は、仮想経路コンピューティングモジュール108を含むことができる。
【0026】
仮想経路マネージャコンピューティングモジュール108は、ユーザ104の周囲の物理的空間102のレイアウトを識別する物理的空間データ112を受信することができる。たとえば、コンピューティングシステム106は、(ヘッドセットウェアラブルコンピューティングデバイスなどの)ウェアラブルコンピューティングデバイスを含むことができる。ユーザ104は、コンピューティングシステム106が、物理的空間データ112(たとえば、物理的空間102のトポロジー)を生成するために(たとえば、カメラ検知モジュールを利用して)物理的空間102を識別/認識することができるように、物理的空間102の周りを進行する(歩く)ことができる。
【0027】
仮想経路マネージャコンピューティングモジュール108は、ユーザ104の周囲の物理的空間102のレイアウトを1つまたは複数の物理的セグメント114にセグメント化することができる。図2を参照すると、環境200が示されている。たとえば、環境200は、(部屋204と総称される)複数の(物理的)部屋204a、204b、204c、204d、204e、204fと、部屋204のうちの1つまたは複数を接続する(廊下206と総称される)廊下206a、206b、206cとを含むことができる。そのために、ユーザ104が環境200の周りを歩くとき、仮想経路マネージャコンピューティングモジュール108は、環境200によって含まれる、物理的空間102と同様の、物理的空間208のレイアウトを識別することができる。図3A図3B図3Cを参照すると、仮想経路マネージャコンピューティングモジュール108は、物理的空間208のレイアウトを(物理的セグメント210と総称される)物理的セグメント210a、210b、210cにセグメント化することができる。いくつかの例では、セグメント210のうちの1つまたは複数の一部分が別のセグメント210と重複することがある(たとえば、セグメント210bは、セグメント210aと重複する)。
【0028】
再び図1を参照すると、仮想経路マネージャコンピューティングモジュール108は、物理的セグメント114に基づいて、ユーザ104が、物理的セグメント114を進行することによってナビゲートすることができる、仮想環境118の仮想経路116を生成することができる。詳細には、仮想経路マネージャコンピューティングモジュール108は、グラフィカルユーザインターフェース(GUI)119上での表示のために仮想環境118を生成することができる。図4を参照すると、仮想環境400の仮想経路が示されている。詳細には、図3A図3B図3Cの物理的セグメント210に基づいて、仮想経路マネージャコンピューティングモジュール108は、(仮想経路402と総称される)仮想経路402a、402b、402c、402d、402e、402f、402g、402hを生成することができる。仮想経路402c、402d、402e、402fは、物理的セグメント210aに基づき得、仮想経路402aは、物理的セグメント210bに基づき得、仮想経路402b、402g、および402hは、物理的セグメント210cに基づき得る。いくつかの例では、仮想経路402は、物理的セグメント210のうちの2つに基づき得、2つの物理的セグメント210は、共通ポイント(またはインターセクション)を共有する。
【0029】
再び図1を参照すると、仮想経路マネージャコンピューティングモジュール108は、仮想環境118におけるユーザ104のロケーションに基づいて特定の仮想経路116を表示することができる。詳細には、仮想経路マネージャコンピューティングモジュール108は、GUI119上での表示のために、特定の仮想経路116を提供することができる。たとえば、ディスプレイデバイスコンピューティングモジュール120は、GUI上での表示のために仮想経路402cを提供することができる。仮想経路マネージャコンピューティングモジュール108は、ユーザ104の進行の前方方向が、特定の仮想経路116に対応する特定の物理的セグメント114の境界条件に近接している、すなわち、受信されたロケーションデータ130に基づくと決定することができる。たとえば、仮想経路マネージャコンピューティングモジュール108は、ユーザ104の進行の前方方向が、ユーザが現在位置する特定の仮想経路402cに対応する物理的セグメント210aの境界条件に近接していると決定することができる。詳細には、ユーザ104は、ロケーションデータ130に基づいて、図3Aに示されているように、対応する物理的セグメント210aのポイント250のほうへ移動することと対応する仮想経路402cにおけるポイント410のほうへ移動していることがある。物理的セグメント210aのポイント250は、物理的セグメント210aの境界条件、たとえば、物理的空間208の壁に対応することができる。
【0030】
いくつかの例では、ユーザ104の進行の前方方向が特定の物理的セグメント114の境界条件に近接していると決定することは、仮想経路マネージャコンピューティングモジュール108が、ユーザ104が特定の物理的セグメント114との物理的接触のしきい値距離内にあると決定することを含む。たとえば、仮想経路マネージャコンピューティングモジュール108は、ユーザが、仮想経路402cに対応する物理的セグメント210aのポイント250にあるとき、ユーザ104が物理的セグメント210aの物理的制約(たとえば、物理的壁)のしきい値距離内にあると決定することができる。
【0031】
仮想経路マネージャコンピューティングモジュール108は、ユーザ104の進行の前方方向が特定の物理的セグメント114の境界条件に近接していると決定することに応答して、ユーザ104が特定の仮想経路116におけるポイントを越えて進行するためにユーザ104の物理的回転が必要とされることをユーザ104に通知する。たとえば、ユーザ104が方向D1に沿って物理的セグメント210a内のポイント250に物理的に接近するとき、仮想経路マネージャコンピューティングモジュール108は、ユーザ104が仮想経路402cにおけるポイント410を越えて進行するためにユーザ104の物理的回転が必要とされるという通知122をユーザ104に提供する。
【0032】
いくつかの例では、ユーザ104の進行の前方方向が特定の物理的セグメント114の境界条件に近接していると決定することに応答して、仮想経路マネージャコンピューティングモジュール108は、GUI119上での表示のために、物理的回転が必要とされることを指示するGUI要素を、特定の仮想経路116内に提供することができる。いくつかの例では、ユーザ104の進行の前方方向が特定の物理的セグメント114の境界条件に近接していると決定することに応答して、仮想経路マネージャコンピューティングモジュール108は、物理的回転が必要とされることを指示するオーディオ通知を提供することができる。いくつかの例では、仮想経路マネージャコンピューティングモジュール108は、ユーザ104の進行の前方方向が特定の物理的セグメント114の境界条件に近接していると決定することに応答して、GUI要素を生成することができる。いくつかの例では、仮想経路マネージャコンピューティングモジュール108は、ユーザ104の進行の前方方向が特定の物理的セグメント114の境界条件に近接していると決定するより前に、GUI要素を生成することができる。すなわち、GUI要素の仮想環境118内のロケーションは、最初に仮想環境118を生成するとき、あらかじめ決定され得る。
【0033】
仮想経路マネージャコンピューティングモジュール108は、ユーザ104の物理的回転が完了したことを検出することができる。詳細には、仮想経路コンピューティングモジュール108は、ユーザ104の物理的回転ステータスを指示する回転データ132を受信することができる。たとえば、回転データ132は、ユーザ104が方向D2に沿って物理的セグメント210のポイント252のほうへ向いている(および、ポイント250における境界条件から離れている)ように、ユーザ104が、図3Aに示されているように物理的セグメント210aのポイント250において回転したことを指示することができる。仮想経路マネージャコンピューティングモジュール108は、ユーザ104の物理的回転が完了したことを検出することに応答して、仮想経路402dを示すためにGUI119を更新し、ユーザ104がポイント410を越えて進行することを可能にすることができる。すなわち、ユーザ104は、物理的セグメント210aに対応する仮想経路402dに沿ってポイント410を越えて、および物理的セグメント210aのポイント252のほうへ進行することを可能にされる。
【0034】
いくつかの例では、仮想経路マネージャコンピューティングモジュール108は、ユーザ104の物理的回転が完了したことを検出することに応答して、仮想経路402cを示すためにGUI119を更新し、ユーザ104がポイント410を越えて、たとえば、ポイント412のほうへ進行することを可能にすることができる。すなわち、ユーザ104は、ポイント410を越えて、および物理的セグメント210aに対応する仮想経路402cに沿ってポイント412のほうへ、および物理的セグメント210aのポイント252のほうへ進行することを可能にされる。
【0035】
いくつかの例では、仮想経路マネージャコンピューティングモジュール108は、ユーザ104の物理的回転が完了したことを検出することに応答して、特定の仮想経路116の反対側にある異なる仮想経路116を示すためにGUI119を更新することができる。
【0036】
いくつかの例では、通知122は、90度物理的に回転するようにユーザ104に指示することができる。すなわち、ユーザ104の物理的回転の後に、回転データ132は、ユーザ104が方向D3に沿って向いているように、ユーザ104が、図3Aに示されているように物理的セグメント210aのポイント250において回転したことを指示することができる。仮想経路コンピューティングモジュール108は、ユーザ104が特定の仮想経路116におけるポイントを越えて進行するためにユーザ104のさらなる物理的回転が必要とされると決定することができる。仮想経路コンピューティングモジュール108は、ユーザ104が仮想経路におけるポイント410を越えて進行するためにユーザ104のさらなる物理的回転が必要とされるというさらなる通知をユーザ104に提供することができる。仮想経路マネージャコンピューティングモジュール108は、ユーザ104のさらなる物理的回転が完了したことを検出することができる。たとえば、回転データ132は、ユーザ104が方向D2に沿って物理的セグメント210のポイント252のほうへ向いているように、ユーザ104が、図3Aに示されているように物理的セグメント210aのポイント250において回転したことを指示することができる。仮想経路マネージャコンピューティングモジュール108は、ユーザ104の物理的回転が完了したことを検出することに応答して、仮想経路402dを示すためにGUI119を更新し、ユーザ104がポイント410を越えて進行することを可能にすることができる。すなわち、ユーザ104は、物理的セグメント210aに対応する仮想経路402dに沿ってポイント410を越えて、および物理的セグメント210aのポイント252のほうへ進行することを可能にされる。
【0037】
いくつかの例では、通知122は、180度物理的に回転するようにユーザ104に指示することができる。すなわち、仮想経路マネージャコンピューティングモジュール108は、ユーザ104の物理的回転が完了したことを検出することができ、したがって、回転データ132は、ユーザ104が方向D2に沿って物理的セグメント210のポイント252のほうへ向いている(および、ポイント250における境界条件から離れている)ように、ユーザ104が、図3Aに示されているように物理的セグメント210aのポイント250において回転したことを指示することができる。
【0038】
いくつかの例では、ユーザ104の物理的回転の検出中に、仮想経路マネージャコンピューティングモジュール108は、GUI119を、GUI119がユーザ104の物理的回転と相関するように仮想環境118を表示するために更新する。詳細には、仮想経路マネージャコンピューティングモジュール108は、GUI119を、ユーザ104の物理的回転と相関する仮想環境118の仮想シーンが回転されるように更新することができる。すなわち、仮想環境119は、ユーザ104の物理的回転と対応して回転することができる。たとえば、仮想環境118の仮想シーンの回転は、90度だけの仮想シーンの回転を含むことができる。たとえば、仮想環境118の仮想シーンの回転は、180度だけの仮想シーンの回転を含むことができる。
【0039】
いくつかの例では、ユーザ104の物理的回転の検出中に、仮想経路マネージャコンピューティングモジュール108は、GUI119を、仮想環境118の移動がフリーズされるように更新する。
【0040】
いくつかの例では、仮想経路マネージャコンピューティングモジュール108が、ユーザ104の物理的回転が完了したことを検出した後に、仮想経路マネージャコンピューティングモジュール108は、ユーザ104の物理的回転と相関する仮想環境118の回転と反対の方向に仮想環境118を回転することができる。すなわち、仮想環境118は、ユーザ104の物理的回転と対応して回転することができ、ユーザ104の物理的回転が完了した後に、仮想環境118は、初期回転と反対の方向に回転する(たとえば、後方に回転する)ことができる。いくつかの例では、仮想経路マネージャコンピューティングモジュール108は、ユーザ104の物理的回転が完了した後に、GUI119が、特定の仮想経路116の周りの仮想環境118の配向を、仮想環境118の回転より前の配向と同様に表示するように、初期回転と反対の方向に仮想環境118を回転する。いくつかの例では、仮想経路マネージャコンピューティングモジュール108は、ユーザ104の物理的回転が完了した後に、約0.3秒間、初期回転と反対の方向に仮想環境118を回転する。いくつかの例では、仮想経路マネージャコンピューティングモジュール108は、ユーザ104の物理的回転が完了した後に、0.3秒未満の間、初期回転と反対の方向に仮想環境118を回転する。
【0041】
図5は、物理的環境に基づく仮想環境における仮想経路の生成のための例示的な方法500を示す。方法は、ステップ510において始まり得、仮想経路マネージャコンピューティングモジュール108が、ユーザ104の周囲の物理的空間102のレイアウトを物理的セグメント114にセグメント化する。ステップ520において、仮想経路マネージャコンピューティングモジュール108は、物理的セグメント114に基づいて、ユーザ104が、物理的セグメント114を進行することによってナビゲートすることができる、仮想経路116を生成する。530において、仮想経路マネージャコンピューティングモジュール108は、仮想環境118におけるユーザ104のロケーションに基づいて特定の仮想経路116を表示する。ステップ540において、仮想経路マネージャコンピューティングモジュール108は、ユーザ104の進行の前方方向が、特定の仮想経路116に対応する特定の物理的セグメント114の境界条件に近接していると決定する。550において、仮想経路マネージャコンピューティングモジュール108は、決定することに応答して、ユーザ104が特定の仮想経路116におけるポイントを越えて進行するためにユーザ104の物理的回転が必要とされるという通知122をユーザ104に提供する。ステップ560において、仮想経路マネージャコンピューティングモジュール108は、(回転データ132を介して)ユーザ104の物理的回転が完了したことを検出し、応答して、特定の仮想経路116を示すために表示(たとえば、GUI119)を更新し、ユーザ104が特定の仮想経路116におけるポイントを越えて進行することを可能にする。本開示は、図5の方法の特定のステップを、特定の順序で行われるものとして説明し、示すが、本開示は、図5の方法の任意の好適なステップが任意の好適な順序で行われることを企図する。その上、本開示は、図5の方法の特定のステップを含む、物理的環境に基づく仮想環境における仮想経路の生成のための例示的な方法を説明し、示すが、本開示は、適切な場合、図5の方法のステップのすべてを含むか、いくつかを含むか、またはいずれも含まないことがある、任意の好適なステップを含む、物理的環境に基づく仮想環境における仮想経路の生成のための任意の好適な方法を企図する。さらに、本開示は、図5の方法の特定のステップを行う特定の構成要素、デバイス、またはシステムを説明し、示すが、本開示は、図5の方法の任意の好適なステップを行う任意の好適な構成要素、デバイス、またはシステムの任意の好適な組合せを企図する。
【0042】
図6は、例示的なコンピュータシステム600を示す。特定の例では、1つまたは複数のコンピュータシステム600は、本明細書で説明または示される1つまたは複数の方法の1つまたは複数のステップを実施する。特定の例では、1つまたは複数のコンピュータシステム600は、本明細書で説明または示される機能性を提供する。特定の例では、1つまたは複数のコンピュータシステム600上で稼働しているソフトウェアは、本明細書で説明または示される1つまたは複数の方法の1つまたは複数のステップを実施するか、あるいは本明細書で説明または示される機能性を提供する。特定の例は、1つまたは複数のコンピュータシステム600の1つまたは複数の部分を含む。本明細書では、コンピュータシステムへの言及は、適切な場合、コンピューティングデバイスを包含し得、その逆も同様である。その上、コンピュータシステムへの言及は、適切な場合、1つまたは複数のコンピュータシステムを包含し得る。
【0043】
本開示は、任意の好適な数のコンピュータシステム600を企図する。本開示は、任意の好適な物理的形態をとるコンピュータシステム600を企図する。限定としてではなく例として、コンピュータシステム600は、組込み型コンピュータシステム、システムオンチップ(SOC)、(たとえば、コンピュータオンモジュール(COM)またはシステムオンモジュール(SOM)などの)シングルボードコンピュータシステム(SBC)、デスクトップコンピュータシステム、ラップトップまたはノートブックコンピュータシステム、対話型キオスク、メインフレーム、コンピュータシステムのメッシュ、携帯電話、携帯情報端末(PDA)、サーバ、タブレットコンピュータシステム、拡張/仮想現実デバイス、あるいはこれらのうちの2つまたはそれ以上の組合せであり得る。適切な場合、コンピュータシステム600は、1つまたは複数のコンピュータシステム600を含むか、単一または分散型であるか、複数のロケーションにわたるか、複数のマシンにわたるか、複数のデータセンターにわたるか、あるいは1つまたは複数のネットワーク中の1つまたは複数のクラウド構成要素を含み得るクラウド中に常駐し得る。適切な場合、1つまたは複数のコンピュータシステム600は、実質的な空間的または時間的制限なしに、本明細書で説明または示される1つまたは複数の方法の1つまたは複数のステップを実施し得る。限定としてではなく一例として、1つまたは複数のコンピュータシステム600は、リアルタイムでまたはバッチモードで、本明細書で説明または示される1つまたは複数の方法の1つまたは複数のステップを実施し得る。1つまたは複数のコンピュータシステム600は、適切な場合、異なる時間においてまたは異なるロケーションにおいて、本明細書で説明または示される1つまたは複数の方法の1つまたは複数のステップを実施し得る。
【0044】
特定の例では、コンピュータシステム600は、プロセッサ602と、メモリ604と、ストレージ606と、入出力(I/O)インターフェース608と、通信インターフェース610と、バス612とを含む。本開示は、特定の配置において特定の数の特定の構成要素を有する特定のコンピュータシステムを説明し、示すが、本開示は、任意の好適な配置において任意の好適な数の任意の好適な構成要素を有する任意の好適なコンピュータシステムを企図する。
【0045】
特定の例では、プロセッサ602は、コンピュータプログラムを作り上げる命令など、命令を実行するためのハードウェアを含む。限定としてではなく一例として、命令を実行するために、プロセッサ602は、内部レジスタ、内部キャッシュ、メモリ604、またはストレージ606から命令を取り出し(またはフェッチし)、それらの命令を復号および実行し、次いで、内部レジスタ、内部キャッシュ、メモリ604、またはストレージ606に1つまたは複数の結果を書き込み得る。特定の例では、プロセッサ602は、データ、命令、またはアドレスのための1つまたは複数の内部キャッシュを含み得る。本開示は、適切な場合、任意の好適な数の任意の好適な内部キャッシュを含むプロセッサ602を企図する。限定としてではなく一例として、プロセッサ602は、1つまたは複数の命令キャッシュと、1つまたは複数のデータキャッシュと、1つまたは複数のトランスレーションルックアサイドバッファ(TLB)とを含み得る。命令キャッシュ中の命令は、メモリ604またはストレージ606中の命令のコピーであり得、命令キャッシュは、プロセッサ602によるそれらの命令の取出しを高速化し得る。データキャッシュ中のデータは、プロセッサ602において実行する命令が動作する対象のメモリ604またはストレージ606中のデータのコピー、プロセッサ602において実行する後続の命令によるアクセスのための、またはメモリ604もしくはストレージ606に書き込むための、プロセッサ602において実行された前の命令の結果、あるいは他の好適なデータであり得る。データキャッシュは、プロセッサ602による読取りまたは書込み動作を高速化し得る。TLBは、プロセッサ602のための仮想アドレストランスレーション(virtual-address translation)を高速化し得る。特定の例では、プロセッサ602は、データ、命令、またはアドレスのための1つまたは複数の内部レジスタを含み得る。本開示は、適切な場合、任意の好適な数の任意の好適な内部レジスタを含むプロセッサ602を企図する。適切な場合、プロセッサ602は、1つまたは複数の算術論理ユニット(ALU)を含むか、マルチコアプロセッサであるか、または1つまたは複数のプロセッサ602を含み得る。本開示は、特定のプロセッサを説明し、示すが、本開示は任意の好適なプロセッサを企図する。
【0046】
特定の例では、メモリ604は、プロセッサ602が実行するための命令、またはプロセッサ602が動作する対象のデータを記憶するためのメインメモリを含む。限定としてではなく一例として、コンピュータシステム600は、ストレージ606または(たとえば、別のコンピュータシステム600などの)別のソースからメモリ604に命令をロードし得る。プロセッサ602は、次いで、メモリ604から内部レジスタまたは内部キャッシュに命令をロードし得る。命令を実行するために、プロセッサ602は、内部レジスタまたは内部キャッシュから命令を取り出し、それらの命令を復号し得る。命令の実行中またはその後に、プロセッサ602は、(中間結果または最終結果であり得る)1つまたは複数の結果を内部レジスタまたは内部キャッシュに書き込み得る。プロセッサ602は、次いで、メモリ604にそれらの結果のうちの1つまたは複数を書き込み得る。特定の例では、プロセッサ602は、1つまたは複数の内部レジスタまたは内部キャッシュ中の、あるいは(ストレージ606または他の場所とは対照的な)メモリ604中の命令のみを実行し、1つまたは複数の内部レジスタまたは内部キャッシュ中の、あるいは(ストレージ606または他の場所とは対照的な)メモリ604中のデータのみに対して動作する。(アドレスバスおよびデータバスを各々含み得る)1つまたは複数のメモリバスが、プロセッサ602をメモリ604に結合し得る。バス612は、以下で説明されるように、1つまたは複数のメモリバスを含み得る。特定の例では、1つまたは複数のメモリ管理ユニット(MMU)が、プロセッサ602とメモリ604との間に常駐し、プロセッサ602によって要求されるメモリ604へのアクセスを容易にする。特定の例では、メモリ604は、ランダムアクセスメモリ(RAM)を含む。このRAMは、適切な場合、揮発性メモリであり得る。適切な場合、このRAMは、ダイナミックRAM(DRAM)またはスタティックRAM(SRAM)であり得る。その上、適切な場合、このRAMは、シングルポートまたはマルチポートRAMであり得る。本開示は、任意の好適なRAMを企図する。メモリ604は、適切な場合、1つまたは複数のメモリ604を含み得る。本開示は、特定のメモリを説明し、示すが、本開示は任意の好適なメモリを企図する。
【0047】
特定の例では、ストレージ606は、データまたは命令のための大容量ストレージを含む。限定としてではなく一例として、ストレージ606は、ハードディスクドライブ(HDD)、フロッピーディスクドライブ、フラッシュメモリ、光ディスク、光磁気ディスク、磁気テープ、またはユニバーサルシリアルバス(USB)ドライブ、あるいはこれらのうちの2つまたはそれ以上の組合せを含み得る。ストレージ606は、適切な場合、リムーバブルまたは非リムーバブル(または固定)媒体を含み得る。ストレージ606は、適切な場合、コンピュータシステム600の内部または外部にあり得る。特定の例では、ストレージ606は、不揮発性ソリッドステートメモリである。特定の例では、ストレージ606は、読取り専用メモリ(ROM)を含む。適切な場合、このROMは、マスクプログラムROM、プログラマブルROM(PROM)、消去可能PROM(EPROM)、電気的消去可能PROM(EEPROM)、電気的書き換え可能ROM(EAROM)、またはフラッシュメモリ、あるいはこれらのうちの2つまたはそれ以上の組合せであり得る。本開示は、任意の好適な物理的形態をとる大容量ストレージ606を企図する。ストレージ606は、適切な場合、プロセッサ602とストレージ606との間の通信を容易にする1つまたは複数のストレージ制御ユニットを含み得る。適切な場合、ストレージ606は、1つまたは複数のストレージ606を含み得る。本開示は、特定のストレージを説明し、示すが、本開示は任意の好適なストレージを企図する。
【0048】
特定の例では、I/Oインターフェース608は、コンピュータシステム600と1つまたは複数のI/Oデバイスとの間の通信のための1つまたは複数のインターフェースを提供する、ハードウェア、ソフトウェア、またはその両方を含む。コンピュータシステム600は、適切な場合、これらのI/Oデバイスのうちの1つまたは複数を含み得る。これらのI/Oデバイスのうちの1つまたは複数は、人とコンピュータシステム600との間の通信を可能にし得る。限定としてではなく一例として、I/Oデバイスは、キーボード、キーパッド、マイクロフォン、モニタ、マウス、プリンタ、スキャナ、スピーカー、スチールカメラ、スタイラス、タブレット、タッチスクリーン、トラックボール、ビデオカメラ、別の好適なI/Oデバイス、またはこれらのうちの2つまたはそれ以上の組合せを含み得る。I/Oデバイスは1つまたは複数のセンサーを含み得る。本開示は、任意の好適なI/Oデバイスと、それらのI/Oデバイスのための任意の好適なI/Oインターフェース608とを企図する。適切な場合、I/Oインターフェース608は、プロセッサ602がこれらのI/Oデバイスのうちの1つまたは複数を駆動することを可能にする1つまたは複数のデバイスまたはソフトウェアドライバを含み得る。I/Oインターフェース608は、適切な場合、1つまたは複数のI/Oインターフェース608を含み得る。本開示は、特定のI/Oインターフェースを説明し、示すが、本開示は任意の好適なI/Oインターフェースを企図する。
【0049】
特定の例では、通信インターフェース610は、コンピュータシステム600と、1つまたは複数の他のコンピュータシステム600または1つまたは複数のネットワークとの間の(たとえば、パケットベース通信などの)通信のための1つまたは複数のインターフェースを提供する、ハードウェア、ソフトウェア、またはその両方を含む。限定としてではなく一例として、通信インターフェース610は、イーサネットまたは他のワイヤベースネットワークと通信するためのネットワークインターフェースコントローラ(NIC)またはネットワークアダプタ、あるいはWI-FIネットワークなどのワイヤレスネットワークと通信するためのワイヤレスNIC(WNIC)またはワイヤレスアダプタを含み得る。本開示は、任意の好適なネットワークと、そのネットワークのための任意の好適な通信インターフェース610とを企図する。限定としてではなく一例として、コンピュータシステム600は、アドホックネットワーク、パーソナルエリアネットワーク(PAN)、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、メトロポリタンエリアネットワーク(MAN)、またはインターネットの1つまたは複数の部分、あるいはこれらのうちの2つまたはそれ以上の組合せと通信し得る。これらのネットワークのうちの1つまたは複数の1つまたは複数の部分は、ワイヤードまたはワイヤレスであり得る。一例として、コンピュータシステム600は、(たとえば、BLUETOOTH WPANなどの)ワイヤレスPAN(WPAN)、WI-FIネットワーク、WI-MAXネットワーク、(たとえば、モバイル通信用グローバルシステム(GSM)ネットワークなどの)セルラー電話ネットワーク、または他の好適なワイヤレスネットワーク、あるいはこれらのうちの2つまたはそれ以上の組合せと通信し得る。コンピュータシステム600は、適切な場合、これらのネットワークのいずれかのための任意の好適な通信インターフェース610を含み得る。通信インターフェース610は、適切な場合、1つまたは複数の通信インターフェース610を含み得る。本開示は、特定の通信インターフェースを説明し、示すが、本開示は任意の好適な通信インターフェースを企図する。
【0050】
特定の例では、バス612は、コンピュータシステム600の構成要素を互いに結合する、ハードウェア、ソフトウェア、またはその両方を含む。限定としてではなく一例として、バス612は、アクセラレーテッドグラフィックスポート(AGP)または他のグラフィックスバス、拡張業界標準アーキテクチャ(EISA)バス、フロントサイドバス(FSB)、HYPERTRANSPORT(HT)相互接続、業界標準アーキテクチャ(ISA)バス、INFINIBAND相互接続、ローピンカウント(LPC)バス、メモリバス、マイクロチャネルアーキテクチャ(MCA)バス、周辺構成要素相互接続(PCI)バス、PCI-Express(PCIe)バス、シリアルアドバンストテクノロジーアタッチメント(SATA)バス、ビデオエレクトロニクス規格協会ローカル(VLB)バス、または別の好適なバス、あるいはこれらのうちの2つまたはそれ以上の組合せを含み得る。バス612は、適切な場合、1つまたは複数のバス612を含み得る。本開示は、特定のバスを説明し、示すが、本開示は任意の好適なバスまたは相互接続を企図する。
【0051】
本明細書では、1つまたは複数のコンピュータ可読非一時的記憶媒体は、適切な場合、(たとえば、フィールドプログラマブルゲートアレイ(FPGA)または特定用途向けIC(ASIC)などの)1つまたは複数の半導体ベースまたは他の集積回路(IC)、ハードディスクドライブ(HDD)、ハイブリッドハードドライブ(HHD)、光ディスク、光ディスクドライブ(ODD)、光磁気ディスク、光磁気ドライブ、フロッピーディスケット、フロッピーディスクドライブ(FDD)、磁気テープ、ソリッドステートドライブ(SSD)、RAMドライブ、セキュアデジタルカードまたはドライブ、任意の他の好適なコンピュータ可読非一時的記憶媒体、あるいはこれらのうちの2つまたはそれ以上の任意の好適な組合せを含み得る。コンピュータ可読非一時的記憶媒体は、適切な場合、揮発性、不揮発性、または揮発性と不揮発性との組合せであり得る。
【0052】
図7は、例示的な人工現実システム700Aを示す。特定の例では、人工現実システム700Aは、ヘッドセット704、コントローラ706、およびコンピューティングシステム708などを備え得る。ユーザ702が、視覚人工現実コンテンツをユーザ702に表示することができるヘッドセット704を装着し得る。ヘッドセット704は、オーディオ人工現実コンテンツをユーザ702に提供することができるオーディオデバイスを含み得る。ヘッドセット704は、環境の画像およびビデオをキャプチャすることができる1つまたは複数のカメラを含み得る。ヘッドセット704は、ユーザ702の輻輳距離を決定するためのアイトラッキングシステムを含み得る。ヘッドセット704は、ヘッドマウントディスプレイ(HDM)と呼ばれることがある。コントローラ706は、トラックパッドと1つまたは複数のボタンとを備え得る。コントローラ706は、ユーザ702から入力を受信し、それらの入力をコンピューティングシステム708に中継し得る。コントローラ706はまた、触覚フィードバックをユーザ702に提供し得る。コンピューティングシステム708は、ケーブルまたはワイヤレス接続を通してヘッドセット704およびコントローラ706に接続され得る。コンピューティングシステム708は、人工現実コンテンツをユーザ702に提供し、ユーザ702から入力を受信するように、ヘッドセット704およびコントローラ706を制御し得る。コンピューティングシステム708は、スタンドアロンホストコンピュータシステム、ヘッドセット704と統合されたオンボードコンピュータシステム、モバイルデバイス、または人工現実コンテンツをユーザ702に提供し、ユーザ702から入力を受信することが可能な任意の他のハードウェアプラットフォームであり得る。
【0053】
本明細書では、「または」は、明確に別段に指示されていない限り、またはコンテキストによって別段に指示されていない限り、包括的であり、排他的ではない。したがって、本明細書では、「AまたはB」は、明確に別段に指示されていない限り、またはコンテキストによって別段に指示されていない限り、「A、B、またはその両方」を意味する。その上、「および」は、明確に別段に指示されていない限り、またはコンテキストによって別段に指示されていない限り、共同と個別の両方である。したがって、本明細書では、「AおよびB」は、明確に別段に指示されていない限り、またはコンテキストによって別段に指示されていない限り、「共同でまたは個別に、AおよびB」を意味する。
【0054】
本開示の範囲は、当業者が理解するであろう、本明細書で説明または示される例に対するすべての変更、置換、変形、改変、および修正を包含する。本開示の範囲は、本明細書で説明または示される例に限定されない。その上、本開示は、本明細書のそれぞれの例を、特定の構成要素、要素、特徴、機能、動作、またはステップを含むものとして説明し、示すが、これらの例のいずれも、当業者が理解するであろう、本明細書のどこかに説明または示される構成要素、要素、特徴、機能、動作、またはステップのうちのいずれかの任意の組合せまたは置換を含み得る。さらに、特定の機能を実施するように適応されるか、配置されるか、実施することが可能であるか、実施するように構成されるか、実施することが可能にされるか、実施するように動作可能であるか、または実施するように動作する、装置またはシステムあるいは装置またはシステムの構成要素に対する添付の特許請求の範囲における参照は、その装置、システム、または構成要素が、そのように適応されるか、配置されるか、可能であるか、構成されるか、可能にされるか、動作可能であるか、または動作する限り、その装置、システム、構成要素またはその特定の機能が、アクティブにされるか、オンにされるか、またはロック解除されるか否かにかかわらず、その装置、システム、構成要素を包含する。さらに、本開示は、特定の例を、特定の利点を提供するものとして説明するかまたは示すが、特定の例は、これらの利点のいずれをも提供しないか、いくつかを提供するか、またはすべてを提供し得る。
図1
図2
図3A
図3B
図3C
図4
図5
図6
図7
【国際調査報告】