(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-04-06
(54)【発明の名称】複合現実環境における3次元コンテナに対する身体中心コンテンツ位置付け
(51)【国際特許分類】
G06F 3/01 20060101AFI20230330BHJP
G06F 3/04815 20220101ALI20230330BHJP
G06T 19/00 20110101ALI20230330BHJP
【FI】
G06F3/01 510
G06F3/04815
G06T19/00 600
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2022547884
(86)(22)【出願日】2020-12-03
(85)【翻訳文提出日】2022-09-27
(86)【国際出願番号】 US2020063102
(87)【国際公開番号】W WO2021162769
(87)【国際公開日】2021-08-19
(32)【優先日】2020-02-10
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】514108838
【氏名又は名称】マジック リープ, インコーポレイテッド
【氏名又は名称原語表記】Magic Leap,Inc.
【住所又は居所原語表記】7500 W SUNRISE BLVD,PLANTATION,FL 33322 USA
(74)【代理人】
【識別番号】100078282
【氏名又は名称】山本 秀策
(74)【代理人】
【識別番号】100113413
【氏名又は名称】森下 夏樹
(74)【代理人】
【識別番号】100181674
【氏名又は名称】飯田 貴敏
(74)【代理人】
【識別番号】100181641
【氏名又は名称】石川 大輔
(74)【代理人】
【識別番号】230113332
【氏名又は名称】山本 健策
(72)【発明者】
【氏名】タルウォーカー, ロヒット アニル
(72)【発明者】
【氏名】ハイナー, コール パーカー
【テーマコード(参考)】
5B050
5E555
【Fターム(参考)】
5B050AA03
5B050BA09
5B050BA11
5B050CA07
5B050CA08
5B050DA01
5B050EA04
5B050EA26
5B050FA02
5B050FA13
5B050FA14
5E555AA27
5E555AA64
5E555BA02
5E555BA08
5E555BB02
5E555BB08
5E555BC08
5E555BE17
5E555CA44
5E555CA45
5E555CB66
5E555CB82
5E555CC05
5E555DA08
5E555DB11
5E555DC19
5E555DC84
5E555FA00
(57)【要約】
「プリズム」と称される、コンテナ内に3Dコンテンツを表示し、3Dコンテンツと相互作用するための双方向メニュー等の関連コンテンツアイテムもまた表示する、複合現実システムが、開示される。ユーザにアクセス可能なコンテンツアイテムを維持するために、本システムは、ユーザが、プリズムに対して移動するにつれて、プリズムに対してコンテンツアイテムを再位置付けする。例えば、注釈ツールバーのコンテキストにおいて、本システムは、ユーザが、プリズムの周囲を歩行する、プリズムに進入する、またはプリズムにおいて頭部姿勢を変化させることに応答して、ツールバーをプリズムの片面から反対面に移動させてもよい。
【特許請求の範囲】
【請求項1】
複合現実システムの1つまたはそれを上回るハードウェアプロセッサによって実行されるプログラム命令の制御下で実施されるコンピュータ化されたプロセスであって、前記プロセスは、
ユーザによって装着されるヘッドセットのディスプレイ上に、プリズム内に含有される3次元(3D)コンテンツをユーザに表示することであって、前記プリズムは、その中で前記3Dコンテンツが表示される体積を画定する複数の表面を有する、ことと、
前記プリズムの第1の表面上に、前記ユーザが前記3Dコンテンツと相互作用する機能を提供するコンテンツアイテムを表示することと、
前記プリズムに対する前記ユーザの移動を感知することと、
前記感知された移動に応答して、前記コンテンツアイテムを前記プリズムの第2の表面に再位置付けすることと
を含む、プロセス。
【請求項2】
前記感知された移動は、前記ユーザの場所における変化を備える、請求項1に記載のプロセス。
【請求項3】
前記感知された移動は、前記ユーザの頭部姿勢における変化を備え、前記コンテンツアイテムは、前記ユーザの視野内に留まるように再位置付けされる、請求項1に記載のプロセス。
【請求項4】
前記プリズムは、その中で前記3Dコンテンツが表示されることが可能ではない留保される領域を備え、前記プロセスは、前記コンテンツアイテムを前記留保される領域内の前記第1および第2の表面上に表示することを含む、請求項1に記載のプロセス。
【請求項5】
前記第1および第2の表面は、相互に垂直である垂直表面である、請求項1に記載のプロセス。
【請求項6】
前記コンテンツアイテムを再位置付けすることは、前記コンテンツアイテムを90度回転させることを含む、請求項5に記載のプロセス。
【請求項7】
前記第1および第2の表面は、相互に平行であり、前記感知された移動は、前記第1の表面を通して、前記プリズムの外側から前記プリズムの内側への前記ユーザの移動を備える、請求項1に記載のプロセス。
【請求項8】
前記コンテンツアイテムを再位置付けすることは、前記プリズムの外側から内側への前記ユーザの移動に応答して、前記コンテンツアイテムを、前記第1の表面と第2の表面との間に該当する中間位置に表示することを含む、請求項7に記載のプロセス。
【請求項9】
前記コンテンツアイテムは、前記ユーザによって選択可能であるアイコンを有するツールバーである、請求項1に記載のプロセス。
【請求項10】
前記コンテンツアイテムは、ユーザに前記3Dコンテンツに注釈を付けるための機能を提供する注釈メニューである、請求項1に記載のプロセス。
【請求項11】
前記プロセスは、前記ユーザが、前記プリズムの外側に位置するとき、ユーザ場所に基づいて、前記コンテンツアイテムの表示位置を決定することと、前記ユーザが、前記プリズムの内側に位置するとき、前記ユーザの姿勢に基づいて、前記コンテンツアイテムの表示位置を決定することとを含む、請求項1に記載のプロセス。
【請求項12】
複合現実システムであって、
ユーザによって装着されるように構成される頭部搭載可能ディスプレイシステムと、
前記ユーザの移動を感知するように構成される1つまたはそれを上回るセンサと、
1つまたはそれを上回るプロセッサを備えるコンピューティングシステムであって、前記コンピューティングシステムは、前記頭部搭載可能ディスプレイシステム上に、プリズム内に含有される3次元(3D)コンテンツを表示するための実行可能命令を用いてプログラムされ、前記プリズムは、境界された体積を画定する表面を有し、前記プリズムは、前記ユーザの実世界環境内に固定された場所を有する、コンピューティングシステムと
を備え、
前記コンピューティングシステムは、コンテンツアイテムを、前記プリズムの第1の表面上に表示し、前記プリズムに対する前記ユーザの感知された移動に応答して、前記コンテンツアイテムを前記プリズムの第2の表面に再位置付けすることによって、前記ユーザにアクセス可能な前記コンテンツアイテムを維持するように構成される、複合現実システム。
【請求項13】
前記コンテンツアイテムは、双方向メニューである、請求項12に記載の複合現実システム。
【請求項14】
前記感知された移動は、前記プリズムに対して、前記ユーザの場所における変化を備える、請求項12に記載の複合現実システム。
【請求項15】
前記感知された移動は、前記プリズムの外側から前記プリズムの内側への前記ユーザの移動を備える、請求項12に記載の複合現実システム。
【請求項16】
前記感知された移動は、前記ユーザの姿勢における変化を備える、請求項12に記載の複合現実システム。
【請求項17】
前記プリズムは、その中で前記3Dコンテンツが表示可能ではない留保される領域を備え、前記コンピューティングシステムは、前記留保される領域内の前記第1および第2の表面上に前記コンテンツアイテムを表示するようにプログラムされる、請求項12に記載の複合現実システム。
【請求項18】
前記コンピューティングシステムは、前記ユーザが、前記プリズムの外側に位置するとき、ユーザ場所に基づいて、前記コンテンツアイテムの表示位置を決定し、前記ユーザが、前記プリズムの内側に位置するとき、前記ユーザの姿勢に基づいて、前記コンテンツアイテムの表示位置を決定するようにプログラムされる、請求項12に記載の複合現実システム。
【請求項19】
前記コンピューティングシステムは、前記3Dコンテンツをレンダリングする第1のアプリケーションを実行し、前記プリズム内の3Dコンテンツのディスプレイを管理する第2のアプリケーションを実行する、請求項12に記載の複合現実システム。
【請求項20】
1つまたはそれを上回る記憶装置デバイスを備える非一過性コンピュータ記憶装置であって、前記非一過性コンピュータ記憶装置は、実行可能プログラム命令を記憶しており、前記実行可能プログラム命令は、複合現実システムに、
前記ユーザによって装着されるヘッドセットのディスプレイ上に、プリズム内に含有される3次元(3D)コンテンツをユーザに表示することであって、前記プリズムは、その中で前記3Dコンテンツが表示される体積を画定する複数の表面を有する、ことと、
前記プリズムの第1の表面上に、前記ユーザが前記3Dコンテンツと相互作用する機能を提供するコンテンツアイテムを表示することと、
前記プリズムに対する前記ユーザの移動を検出することと、
前記検出された移動に応答して、前記コンテンツアイテムが、前記ユーザの視野内のままであるように、前記コンテンツアイテムを前記プリズムの第2の表面に再位置付けすることと
を含むプロセスを実施するように指示する、非一過性コンピュータ記憶装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、拡張現実および複合現実システムに関し、より具体的には、ユーザ移動に基づいて、3次元(3D)コンテナ、いわゆる「プリズム」に対してコンテンツを位置付けるためのユーザインターフェースおよびプロセスに関する。
【背景技術】
【0002】
現代のコンピューティングおよびディスプレイ技術は、いわゆる「仮想現実」、「拡張現実」、および「複合現実」体験のためのシステムの開発を促進しており、デジタル的に再現された画像またはその一部が、現実のように現れるようにユーザに提示される。仮想現実、すなわち、「VR」シナリオは、典型的には、他の実際の実世界の視覚的入力に対する透過性を伴わずに、デジタルまたは仮想画像情報の提示を伴う。拡張現実、すなわち、「AR」シナリオは、典型的には、ユーザの周囲の実際の世界の可視化に対する拡張としてのデジタルまたは仮想画像情報の提示を伴う。複合現実、すなわち、「MR」シナリオは、典型的には、実世界および仮想世界を融合し、物理的および仮想オブジェクトが、共存し、リアルタイムで相互作用する、新しい環境を生産することを伴う。本明細書で使用されるように、用語「複合現実」は、拡張現実を包含するように意図される。
【0003】
(その開示が参照することによってその全体として組み込まれる)米国特許第2019/0197785号に開示されるように、複合現実システムが、「プリズム」と称される、3Dの境界された体積またはコンテナの使用をサポートし、仮想コンテンツの表示を管理してもよい。プリズムが、矩形または他の形状を有し得、ユーザの実世界環境に対して固定された場所に位置付けら得る。ある場合には、複数のアプリケーションが、3Dコンテンツをプリズムの中にレンダリングし、ユニバースアプリケーションが、本コンテンツの表示を管理することができる。
【発明の概要】
【課題を解決するための手段】
【0004】
3D環境内での複数のコンテンツアイテムの表示に直面する1つの問題は、プリズム内に表示されるコンテンツを含む、異なるアイテムのコンテンツの間の潜在的干渉を伴う。一実施例として、いくつかの複合現実アプリケーションは、ユーザが3D環境内に表示されるコンテンツを作成または修正するように、相互作用し得る、ツールバー等の双方向メニューをエクスポーズする。ユーザが、周囲を移動するにつれて、本メニューの表示は、1つまたはそれを上回るコンテンツアイテムと重複する、または背後に現れ、メニューとの相互作用を困難にし得る。関連問題が、そこでメニューが、ユーザが周囲を移動するにつれて、容易に見られ、アクセスされ得る、場所に、双方向メニューを維持することを伴う。
【0005】
本開示は、ユーザが、プリズムに対して移動するにつれて、プリズム(または他の境界される3D体積またはコンテナ)の境界に対する、コンテンツアイテムの表示位置および/または配向を調節するための表示プロセスを提供することによって、上記および他の問題に対処する。コンテンツアイテムは、例えば、双方向メニュー(例えば、ツールバー)等の双方向ディスプレイオブジェクトであり得る。別の実施例として、コンテンツアイテムは、通知、またはディスプレイオブジェクトまたは通知を表示するペインであってもよい。
【0006】
いくつかの実施形態またはユースケースでは、プロセスは、プリズムに対するユーザの移動に基づいて、および/またはユーザの配向(例えば、頭部姿勢)における変化に基づいて、コンテンツアイテムをプリズムの1つの表面からプリズムの別の表面に再位置付けすることを伴う。例えば、プリズムは、矩形形状を有し、ユーザが、プリズムの中および外に歩行することができる、十分なサイズであると仮定する。ユーザが、最初にプリズムの外側に立ち、プリズムに向く場合、双方向メニュー(または他のコンテンツアイテム)が、最初にプリズムの最も近い垂直表面上に、外向きに向いた配向で表示され得る。ユーザが、次いで、本表面を通して、プリズムの中に歩行する場合、双方向メニューは、後面(すなわち、歩行して通過した表面から真向いの、それに平行な表面)に再位置付けされ、内向きに向いた配向で表示されてもよい。(下記に議論されるように、これらの平行表面の間に該当する表示位置もまた、可能性として考えられる。)ユーザが、次いで、矩形プリズムの他の2つの垂直表面の1つに向くように、右または左に方向転換する場合、双方向メニューは、ユーザが向いている表面に再位置付けされてもよい。プロセスは、それによって、ユーザの視野内にメニューを維持する一方、メニューとプリズム内でレンダリングされた他のコンテンツとの間の干渉を低減または排除し得る。
【0007】
プロセスはまた、アプリケーションが、コンテンツアイテムに干渉する他のタイプのコンテンツをレンダリングすることができないように、プリズムの1つまたはそれを上回る部分またはコンテンツアイテムの表示のためのその表面の留保を伴ってもよい。例えば、複数の垂直表面を有するプリズムに関して、上側部分またはストリップが、双方向メニューの表示のために留保されてもよい。本特徴は、プリズム内でレンダリングされたコンテンツが、メニューまたは他のコンテンツアイテムにアクセスするためのユーザの能力を妨害し得る尤度をさらに低減または排除し得る。
【0008】
プロセスは、いくつかの実施形態では、ユーザが、プリズムに対して移動する間、有利なこととして、コンテンツアイテムにアクセスするためのユーザの能力を促進し、さらにコンテンツアイテムが「邪魔にならないように」保つ。例えば、コンテンツアイテムが、プリズム内でレンダリングされた3Dコンテンツに注釈を付けるための注釈ツールバーである場合、ツールバーは、(1)ツールバーが、概して、ユーザに可視のままであって(例えば、ユーザの視野内に留まり)、(2)プリズム内の3Dコンテンツおよび注釈が、ツールバーへのユーザのへのアクセスを妨害しないように、ユーザが周囲を移動するにつれて、複数のセット場所とプリズムに対する配向との間で移動してもよい。
【0009】
プロセスは、複合現実システムの1つまたはそれを上回るハードウェアプロセッサによって実行される、実行可能プログラム命令において、実装されてもよい。例えば、プロセスは、複合現実システム上で実行するユニバースアプリケーションの実行可能コード内で実装され、他のアプリケーションによってレンダリングされたコンテンツを管理してもよい。
【0010】
本発明は、したがって、複合現実システムの1つまたはそれを上回るハードウェアプロセッサによって実行される、プログラム命令の制御下で実施される、コンピュータ化されたプロセスを含み、プロセスは、ユーザによって装着されるヘッドセットのディスプレイ上に、プリズム内に含有される、3次元(3D)コンテンツを、ユーザに表示することであって、プリズムは、その中で3Dコンテンツが表示される体積を画定する、複数の表面を有する、ことと、プリズムの第1の表面上に、ユーザが3Dコンテンツと相互作用する機能を提供する、コンテンツアイテムを表示することと、プリズムに対するユーザの移動を感知することと、感知された移動に応答して、コンテンツアイテムをプリズムの第2の表面に再位置付けすることとを含む。コンテンツアイテムは、例えば、ユーザによって選択可能であるアイコン、またはユーザに3Dコンテンツに注釈を付けるための機能を提供する、注釈メニューを有する、ツールバーであってもよい。感知された移動は、ユーザの場所における変化、またはユーザの頭部姿勢における変化を備えてもよい。コンテンツアイテムは、ユーザの視野内に留まるように再位置付けされてもよい。いくつかの実施形態では、プリズムは、その中で3Dコンテンツが表示されることが可能ではない、留保される領域を備え、プロセスは、コンテンツアイテムを留保される領域内の第1および第2の表面上に表示することを含む。
【0011】
該コンピュータ化されたプロセスのいくつかの実施形態では、第1および第2の表面は、相互に垂直である、垂直表面である。そのような実施形態では、コンテンツアイテムの再位置付けは、コンテンツアイテムを90度回転させることを含んでもよい。
【0012】
該コンピュータ化されたプロセスのいくつかの実施形態では、第1および第2の表面は、相互に平行であり、感知された移動は、第1の表面を通して、プリズムの外側からプリズムの内側へのユーザの移動を備える。そのような実施形態では、コンテンツアイテムを再位置付けすることは、プリズムの外側から内側へのユーザの移動に応答して、コンテンツアイテムを、第1の表面と第2の表面との間に該当する中間位置に表示することを含む。
【0013】
該コンピュータ化されたプロセスのいくつかの実施形態では、プロセスは、ユーザが、プリズムの外側に位置するとき、ユーザ場所に基づいて、コンテンツアイテムの表示位置を決定することと、ユーザが、プリズムの内側に位置するとき、ユーザの姿勢に基づいて、コンテンツアイテムの表示位置を決定することとを含む。
【0014】
本発明はまた、ユーザによって装着されるように構成される、頭部搭載可能ディスプレイシステムと、ユーザの移動を感知するように構成される、1つまたはそれを上回るセンサと、1つまたはそれを上回るプロセッサを備える、コンピューティングシステムであって、コンピューティングシステムは、頭部搭載可能ディスプレイシステム上に、プリズム内に含有される、3次元(3D)コンテンツを表示するための実行可能命令を用いてプログラムされ、プリズムは、境界された体積を画定する、表面を有し、プリズムは、ユーザの実世界環境内に固定された場所を有する、コンピュータシステムとを備える、複合現実システムを備える。コンピューティングシステムは、コンテンツアイテムを、プリズムの第1の表面上に表示し、プリズムに対するユーザの感知された移動に応答して、コンテンツアイテムをプリズムの第2の表面に再位置付けすることによって、ユーザにアクセス可能なコンテンツアイテムを維持するように構成される。コンテンツアイテムが、例えば、双方向メニューであってもよい。感知された移動は、プリズムに対するユーザの場所における変化、プリズムの外側からプリズムの内側へのユーザの移動、および/またはユーザの姿勢における変化を備えてもよい。プリズムは、その中で3Dコンテンツが表示可能ではない、留保される領域を備えてもよく、その場合、コンピューティングシステムは、留保される領域内の第1および第2の表面上にコンテンツアイテムを表示するようにプログラムされてもよい。いくつかの実施形態では、コンピューティングシステムは、ユーザが、プリズムの外側に位置するとき、ユーザ場所に基づいて、コンテンツアイテムの表示位置を決定し、ユーザが、プリズムの内側に位置するとき、ユーザの姿勢に基づいて、コンテンツアイテムの表示位置を決定するようにプログラムされる。コンピューティングシステムは、3Dコンテンツをレンダリングする、第1のアプリケーションを実行し、プリズム内の3Dコンテンツのディスプレイを管理する、第2のアプリケーションを実行してもよい。
【0015】
本発明はさらに、1つまたはそれを上回る記憶装置デバイスを備える、非一過性コンピュータ記憶装置を備え、非一過性コンピュータ記憶装置は、複合現実システムに、ユーザによって装着されるヘッドセットのディスプレイ上に、プリズム内に含有される、3次元(3D)コンテンツを、ユーザに表示することであって、プリズムは、その中で3Dコンテンツが表示される体積を画定する、複数の表面を有する、ことと、プリズムの第1の表面上に、ユーザが3Dコンテンツと相互作用する機能を提供する、コンテンツアイテムを表示することと、プリズムに対するユーザの移動を検出することと、検出された移動に応答して、コンテンツアイテムが、ユーザの視野内に留まるように、コンテンツアイテムをプリズムの第2の表面に再位置付けすることとを含む、プロセスを実施するように指示する、実行可能プログラム命令を記憶する。
【図面の簡単な説明】
【0016】
【
図1】
図1は、その中で本開示の表示プロセスが実装され得る、環境の一実施例を図示する。
【0017】
【
図2】
図2は、一実施形態による、その中でユーザがプリズム内にレンダリングされた3Dコンテンツを視認する、例示的シナリオを図示し、双方向メニューの位置付けを図示する。
【0018】
【
図3】
図3は、ユーザが、双方向メニューを使用してアクセス可能な図面ツールを用いて、注釈を追加した後の、
図2の実施例を図示する。
【0019】
【
図4】
図4は、ユーザが、
図2の実施例において、プリズムに向かって、次いで、その中に歩行するにつれて、双方向メニューが、再位置付けされ得る方法を図示する。
【0020】
【
図5】
図5は、一実施形態による、
図2の実施例において、プリズムに対する5つのユーザ位置/配向を図示し、5つの対応するメニュー場所を図示する。
【0021】
【
図6】
図6は、
図2-5のプリズムの上下図(俯瞰図)であり、双方向メニューまたは他のコンテンツアイテムの位置および配向をプログラムで選択するために使用され得る、座標系、寸法変数、および領域境界線を図示する。
【0022】
【
図7】
図7A-7Dは、メニュー位置のプログラムの選択と、プリズム内の4つのユーザ配向のそれぞれに対する配向とを図示する。
【0023】
【
図8】
図8は、ユーザ移動に応答して、コンテンツアイテムを再位置付けするためのプロセスの一実施形態を図示する。
【0024】
図面全体を通して、参照番号は、参照される要素間の対応を示すために再使用され得る。図面は、本明細書に説明される例示的実施形態を図示するために提供され、本開示の範囲を限定することを意図するものではない。
【発明を実施するための形態】
【0025】
詳細な説明
I. 専門用語
本明細書で議論されるシステムおよび方法の理解を促進するために、いくつかの用語が、下記に説明される。これらの用語および本明細書で使用される他の用語は、提供される記述、通常および慣例の意味の用語、および/または個別の用語に関する任意の他の含意される意味を含むと解釈されるべきであり、そのような構造は、用語のコンテキストと一致する。したがって、下記の記述は、これらの用語の意味を限定するものではなく、例示的記述のみを提供する。
【0026】
頭部姿勢:ウェアラブルヘッドセット(またはヘルメット等の他の頭部搭載可能システム)と、その代理として、実世界におけるユーザの頭部の位置および/または配向。頭部姿勢は、慣性測定ユニット(IMU)、加速度計、ジャイロスコープ等のセンサを使用して、決定されてもよい。いくつかの実施形態では、頭部姿勢の方向に延在する、頭部姿勢光線は、仮想オブジェクトと相互作用するように使用されてもよい。例えば、ユーザが、プリズムまたはオブジェクトをポイントしている、または見ているとき、オブジェクトまたはプリズムは、ユーザの頭部姿勢光線によって交差される。ユーザの配向は、加えて、または代替として、眼姿勢、胴体姿勢、またはユーザの身体のある他の部分の姿勢に基づいて、決定され得る。
【0027】
プリズム:複合現実コンテンツまたは複合現実空間と関連付けられる、3次元コンテナまたはエンクロージャ。例えば、プリズムが、ユーザによって選択可能であり得る、1つまたはそれを上回る仮想コンテンツアイテムを含有してもよい。プリズムの境界または表面は、ユーザに表示されてもよいが、その必要はない。プリズムが、アプリケーションが、立ち上げられると、スポーンし得、次いで、フレキシブルなレイアウトを作成するために兄弟または子プリズムをスポーンし得る。プリズムが、典型的には、グラフィカルユーザインターフェースのウィンドウのものに類似する機能を果たすが、3Dコンテンツ内に表示することが可能な3Dオブジェクトである。プリズムが、ユーザが3Dコンテンツを協働して共有および操作することを有効にするために、いくつかの環境において使用されることができる。
【0028】
コントローラ:手で保持されるように構成され、複合現実環境と相互作用するために使用される、デバイス。例えば、コントローラは、プリズムを用いてレンダリングされるコンテンツアイテム、またはプリズムと関連付けられるメニューと相互作用するために使用されてもよい。コントローラが、6DoF(6自由度)等の複数の自由度移動を提供してもよい。いくつかの実施形態では、ユーザの手または他の実世界オブジェクトが、例えば、ユーザ相互作用可能な仮想コンテンツにユーザ入力を提供するために、コントローラの代わりに、またはそれに加え、使用されてもよい。
【0029】
コントローラ姿勢:コントローラの位置および/または配向。コントローラ姿勢が、そこでコントローラがポイントする、複合現実環境の面積、体積、または点を決定するために使用されることができる。いくつかの実施形態では、コントローラ姿勢は、コントローラから延在する光線としてユーザに視覚的に描写され、ユーザがコントローラを用いてコンテンツアイテムをポイントし、選択することを有効にする。
II. プリズムを伴う例示的複合現実環境
【0030】
図1は、複合現実システムにおけるプリズムを使用して、コンテンツを管理および表示するための例示的物理的環境およびコンピューティングシステムを示す。代表的環境100は、頭部搭載システムまたはヘッドセット160を通してユーザ103によって視認されるような、ユーザのランドスケープ110を含む。ユーザのランドスケープ110は、ユーザ設置コンテンツが実世界の上に合成され得る、世界の3Dビューである。ヘッドセット160は、任意の好適な頭部搭載ディスプレイシステムまたはデバイスであり得、例えば、類似ゴーグル、眼鏡、またはユーザによって装着されるヘルメットあり得る。
【0031】
ヘッドセット160は、ユーザの実世界ビューを補完し得る、種々のタイプのコンテンツを表示する、ディスプレイ162を含む。
図1に示される実施例では、部屋内に立ち、部屋の実世界ビューを含む、ランドスケープ110を視認しているユーザは、個別のプリズム113a、113b内にレンダリングされるデジタルコンテンツ115aおよび115bで補完される。ディスプレイ162は、ヘッドセットの透明または半透明レンズ(または1つのそのようなレンズ)の中に統合され得、その場合、レンズを通したユーザのビューは、ディスプレイ162上にレンダリングされるコンテンツで補完される。例えば、ディスプレイ162は、米国特許公開第2018/0157398号(その開示は、参照することによって本明細書に組み込まれる)に開示されるような、レンズの中に組み込まれる、導波管を使用して実装されてもよい。代替として、ディスプレイ162は、ヘッドセットの1つまたはそれを上回る外向きに向いたカメラによって捕捉されるような、実世界ビューの補完される表現を表示する不透明ディスプレイであってもよい。
【0032】
ヘッドセット160は、ユーザのランドスケープ、位置、および配向を感知するための1つまたはそれを上回るタイプのセンサ164を含む。センサ164は、例えば、物理的オブジェクトおよび他の周囲を感知するための1つまたはそれを上回る外向きに向いたカメラまたはスキャナを含み得、頭部姿勢および場所を感知するための加速度計、慣性測定ユニット、コンパス、無線デバイス、および/またはジャイロスコープ等の、1つまたはそれを上回るタイプのデバイスを含み得る。ヘッドセットはまた、眼追跡のための1つまたはそれを上回る内向きに向いたカメラまたは他のセンサを含んでもよい。ユーザの眼の追跡された状態は、「眼姿勢」と称される。ヘッドセット160はまた、オーディオスピーカおよびマイクロホン(図示せず)を含んでもよい。
【0033】
代表的環境100はさらに、ウェアラブルコンピューティングデバイス170を含む。ウェアラブルコンピューティングデバイスは、1つまたはそれを上回るハードウェアプロセッサ(図示せず)、アプリケーションコードおよびコンテンツを記憶するメモリまたは他の記憶装置デバイス137、およびローカルおよび/または遠隔システムコンポーネントと通信するための1つまたはそれを上回る無線送受信機を含んでもよい。ウェアラブルコンピューティングデバイスの回路のいくつかまたは全ては、代替として、ヘッドセット160の中に統合される、またはユーザによって装着されない定常コンピューティングデバイスに位置してもよい。ウェアラブルコンピューティングデバイス170は、無線ネットワークを経由して、遠隔サーバまたはローカル処理ノードと通信してもよい。いくつかの実施形態では、ウェアラブルコンピューティングデバイス170は、ケーブルによってヘッドセット160に接続され、ヘッドセット160から受信したビデオおよびセンサデータを処理するように構成される。
図1において、外部データベース(DB)150によって描写されるように、ウェアラブルコンピューティングデバイス170は、ネットワークを経由して、外部記憶装置にアクセスしてもよい。
【0034】
用語「コンピューティングシステム」は、これらのコンポーネントが、単一コンピューティングデバイスまたはノード内に含有される、または複数のコンピューティングデバイスまたはノードを横断して分散されるかどうかにかかわらず、システムの種々のハードウェアコンピューティングコンポーネント(ハードウェアプロセッサ、記憶装置デバイス等)を集合的に指すために本明細書で使用される。いくつかの実施形態では、システムの処理コンポーネントの全ては、コンピューティングシステムが、ウェアラブルコンピューティングシステムであるように、ユーザによって装着されるように構成される。
【0035】
図1の実施形態では、ウェアラブルコンピューティングデバイス170は、2つのタイプのアプリケーション、すなわち、ユニバースアプリケーション130および1つまたはそれを上回る付加的アプリケーション140(時として、「ランドスケープアプリケーション」と呼ばれる)を実行する。アプリケーション140は、プリズム113a、113bの中にレンダリングされたコンテンツ115a、115bを含む、コンテンツを発生させる。図示される実施形態では、各プリズム113a、113bは、境界された矩形体積であり、実世界オブジェクトまたは構造にピン留めまたはアンカされる。プリズム113aは、壁117aにアンカされ、壁に取り付けられるようにユーザに現れる、仮想コンテンツ115aを表示する。プリズム113bは、テーブル117bにアンカされ、テーブルの上に位置するようにユーザに現れる、3Dの木の形態で仮想コンテンツ115bを表示する。付加的図に示され、下記に議論されるように、いくつかのプリズムは、ユーザがプリズムの中におよびそこから外に歩行することを有効にするように、サイズ決めおよび位置付けられてもよい。
【0036】
ユニバースアプリケーション130は、プリズム113a、113bを作成し、デジタルコンテンツ115a、115bの表示を管理することに関与する。ユニバースアプリケーション130は、例えば、アプリケーション140が、仮想コンテンツをユーザのランドスケープ110上にレンダリングする必要があるとき、プリズムを作成してもよい。複数のアプリケーション140が、同一プリズム113a、113bの中にコンテンツをレンダリングしてもよい。各プリズムは、ユニバースアプリケーション130が、プリズム自体を管理することによって、複合現実環境におけるコンテンツの設置および表示を管理することを可能にする、特性および性質を有してもよい。2つの異なるタイプのアプリケーションが、
図1に示されるが、本発明は、2つの異なるタイプのアプリケーションを要求しない。加えて、プリズムの境界線が、
図1および後続図面に示されるが、境界線は、ユーザに表示される場合とそうではない場合がある。
【0037】
複合現実システムはまた、ユーザによって保持され、種々の機能を実施するために使用されることができる、コントローラ206(
図2参照)を含んでもよい。コントローラ206は、1つまたはそれを上回る入力デバイスまたは要素、例えばボタン、タッチパッド、回転可能ホイール等を含んでもよい。一実施形態では、コントローラはまた、オブジェクトを選択するためにユーザによって使用され得る、仮想レーザポインタとしての役割を果たす。例えば、ユーザは、所望のオプションとしてコントローラをポイントすることによって、メニュー(
図2に示されるツールバー208等)上のメニューオプションを選択するために、コントローラ206を使用することができる。コントローラの正面から延在する、仮想レーザまたは光線(図示せず)が、選択アクションを促進するために、ユーザに表示されてもよい。いくつかの実施形態では、ユーザは、代替として、指を使用して、または頭部姿勢光線を使用して、メニューオプションを選択することができる。
【0038】
ユーザがプリズム内に表示されるコンテンツと相互作用する、いくつかのシナリオでは、ユーザがプリズムの周囲またはその中に歩行するにつれて、可視およびアクセス可能なままである、コンテンツアイテムをユーザにエクスポーズすることが望ましい。例えば、ユーザが、プリズム内でコンテンツを作成する、編集する、またはそれに注釈を付ける場合、メニュー(ツールバー等)またはプリズムの近傍における他の双方向コンテンツアイテムを表示し、ユーザが周囲を移動するにつれてアクセス可能なままであるように、本双方向コンテンツアイテムを動的に再位置付けすることが望ましくあり得る。別の実施例として、その中でユーザがプリズム内のコンテンツを発生または修正するために他のユーザと協働する、協働セッションのコンテキストにおいて、他の参加者についての情報を表示する、通知ペインを表示し、動的に再位置付けすることが望ましくあり得る。
【0039】
本開示は、ユーザの場所および/または配向における変化に応答して、コンテンツアイテム(限定ではないが、メニューまたは通知ペイン等)を動的に再位置付けするためのプロセスを提供することによって、本問題点に対処する。いくつかの実施形態では、プロセスは、プリズムに対するユーザの移動に基づいて、および/またはユーザの配向(例えば、頭部姿勢)における変化に基づいて、コンテンツアイテムをプリズムの1つの表面からプリズムの別の表面に再位置付けすることを伴う。コンテンツアイテムはまた、いくつかのシナリオでは、プリズム内の場所等の他の場所に位置付けられてもよい。プロセスはまた、ユーザに対してその適切な配向を維持するために、コンテンツアイテムを再配向(例えば、180度水平に回転)させてもよい。
【0040】
一実施形態では、プロセスは、ユニバースアプリケーション130の実行可能命令内で実装される。プロセスは、代替として、アプリケーション140の1つの実行可能コード、オペレーティングシステム、または別のタイプのソフトウェアコンポーネントで実装され得る。
III. ツールバータイプメニューの例示的再位置付け
【0041】
例示的ユースケースシナリオが、
図2-5を参照して、ここで説明されるであろう。本ユースケースシナリオでは、ユーザは、航空機の3Dモデル202と相互作用する(例えば、作成する、編集する、または注釈を付ける)。モデル202は、プリズム200の内側に位置付けられ、モデルの位置および配向は、ユーザが周囲を移動するにつれて、実/物理的世界に対して固定されたままである。本実施例におけるコンテンツアイテムは、注釈メニュー、具体的には、複数の選択可能アイコン(円形として示される)を含む、注釈ツールバー208であり、そのそれぞれは、コントローラ206をアイコンにポイントすることによって、ユーザによって選択されることができる。異なるアイコンは、図面ツール、ハイライトツール、消去ツール、テキストエントリツール等の異なる注釈ツールを表し得る。他のシナリオでは、注釈メニューは、複数のドロップダウンサブメニューを有する、テキストメニューの形態にあってもよい。注釈ツールバー208は、2Dオブジェクトであり、ユーザに平坦に現れるが、いくつかの実施形態では、オブジェクトは、代わりに、3Dであり得ることを意味する。
図2-5において、プリズムの境界または縁を示す線は、典型的には、ユーザに表示されないが、いくつかの実施形態では、表示されてもよい。
図2では、ツールバー208は、プリズムの表面「上に表示される」ように説明され得、概して、プリズムの表面のものと一致する、その位置および配向を意味する。語句「表面上に表示される」は、表面自体がユーザに可視であることを含意するように意図されない。いくつかの実施形態では、「表面上に表示される」は、コンテンツアイテムによって作成された平面が、プリズムの面から作成された平面と整合され得ることを意味し得る。
【0042】
図2-5の実施例では、ツールバー208は、常時、プリズムの上側領域210内に表示されるが、ユーザの場所および配向に応じて、本領域内の異なる場所にも表示される。いくつかの実施形態では、本上側領域210は、ユーザが周囲を移動するにつれて、動的に再位置付けされる、メニュー(ツールバー等)および/または他のタイプのコンテンツアイテムの表示のために留保される。したがって、モデル202等の他のタイプのコンテンツ、ユーザによって追加される任意の注釈、および他のタイプのユーザ作成コンテンツは、図示される実施形態では、上側領域210内に位置することができない。
【0043】
留保される領域210の本使用は、ユーザ作成コンテンツとツールバー208との間の干渉を低減または排除させ、例えば、ユーザ作成コンテンツは、ツールバーアイコンを選択するために、ツールバー208のユーザのビューまたはユーザの能力を妨害しない。留保される領域210が、
図2-5の実施例において使用されるが、開示されるプロセスは、留保される領域を使用せずに、実装されることができる。さらに、垂直表面の下側部分または側面等のプリズムの異なる部分が、留保される領域として使用されることもできる。
【0044】
図2では、ユーザ103は、プリズム200の外側に立ち、それに向いている。注釈ツールバー208は、ユーザに最も近いプリズムの表面上(留保される領域210内)の中心位置に外向きに向いた配向で表示される。これは、ユーザが、モデル202を視認している間、ツールバー208を容易に閲覧およびアクセスすることを可能にする。ユーザは、例えば、図面ツールを注釈ツールバー208から選択するためにコントローラ206を使用し得、次いで、モデル上またはその周囲に描くために(
図3において2つの波線300によって示されるように)、コントローラを使用し得る。図示される実施形態では、ツールバー208は、ユーザの頭部姿勢が変化するにつれて、その上でそれが
図2および3に表示される、表面に沿って、移動することができない。いくつかの実施形態では、かつ下記に説明される代替実施形態では、ツールバーは、その上でそれが表示される表面に沿って、水平に「スライド」することができる。
【0045】
図4は、ツールバー208が、ユーザ103がプリズム200に向かって、次いで、その中に歩行するにつれて、再位置付けされ得る方法を図示する。最初に、ツールバーは、場所208aに位置付けられ、これは、
図2および3に示される位置である。ユーザが、プリズム200に接近するにつれて、ツールバー208は、ユーザの目線からプリズム200の正面と後面との間の真ん中に該当する、中間位置に再位置付けされる。これは、ツールバー208が、ユーザに可視およびアクセス可能のままであることを有効にする。場所208aから208bへの遷移と、本明細書に説明される他の場所の遷移とは、すぐに生じ得る、またはより徐々に生じ得る(例えば、1つの場所から別の場所に移動するツールバーを示すように、アニメーションを使用することによって)。ユーザ103が、プリズム200にステップインし、前方に歩行を継続した後、注釈メニュー208は、位置208cによって示されるように、プリズムの後面に再位置付けされる。ツールバーの配向は、変化しないままであり、ツールバーは、したがって、位置208cに内向きに向いた配向を有する。ユーザが、後面を通して前方に歩行を継続した後、ツールバーは、外向きに向いた配向を有するように、180度水平に回転されてもよい。
【0046】
単一中間位置208bのみが、
図4に示されるが、複数の中間位置が、使用されてもよい。使用される中間位置の数は、該当する場合、プリズムの寸法に基づいてもよい。加えて、プロセスは、中間表示位置の使用を伴わずに、実装され得、例えば、ツールバー208は、常時、プリズムの表面の1つ上に表示され得る。
【0047】
図5は、5つの異なるユーザ位置および配向を図示し、5つの対応するツールバー場所および配向を示す。
図5に示される最初の3つの実施例は、
図4に示されるものと同一である。実施例4は、プリズムの側面に向いたプリズム200におけるユーザ103を示し、内向きに向いた配向を伴う側面上に表示されるツールバーを示す。ツールバーは、例えば、ユーザが、プリズムの中への歩行の後、右に90度方向転換する場合、本場所に再位置付けされてもよい。ユーザの配向は、頭部姿勢によって決定されるが、代替として、眼姿勢、身体、または胴体姿勢、またはある他の配向測定に基づいて、決定されてもよい。
図5における実施例5は、他側に向いたプリズム200の外側に立つユーザ103を示し、外向きに向いた配向で側面上に位置付けられるツールバー208を示す。
図5の図示される実施例では、ツールバー208は、それが、プリズムの任意の所与の表面上または中間位置に表示される間、固定された中心位置に表示されるが、いくつかの実施形態では、例えば、右にそろえられる、左にそろえられる、面積210等の角または側からオフセットされる等、他の位置が、使用されてもよい。
【0048】
これらの実施例によって図示されるように、ツールバー208の可視性およびアクセス性を維持することに加え、プロセスは、ユーザから便宜的距離に位置付けられるツールバーを維持することを求める。例えば、ユーザが、
図5においてユーザ位置5にいるとき、ツールバーは、代替として、ツールバー位置4に表示され得るが、ユーザとツールバーとの間の有意な距離は、特に、プリズムが、大きい場合、ツールバーから視認および選択するように、ユーザの能力を妨害する可能性が高いであろう。いくつかの実施形態では、プロセスは、2~12フィート、3~10フィート、または4~8フィート等の選択された範囲内で、ツールバー208とヘッドセット160との間の分離を維持するように求めてもよい。ツールバーは、ユーザが、プリズム200から閾値距離より遠くに位置すると、ユーザのランドスケープから除去されてもよい。
【0049】
図2-5に図示される表示プロセスは、他のプリズム形状および構成と併用するために適合されてもよい。例えば、プリズムが、上部から視認されるように、5角形の形状にある場合、プロセスは、ユーザの位置および配向に基づいて、5つの垂直表面のうちの1つから選択してもよい。プリズムが、湾曲表面を含む場合、表示プロセスは、その上にそれが表示される、湾曲プリズム表面に合致するように、ツールバーまたは他の2Dコンテンツアイテムをワーピングしてもよい。
【0050】
図6は、
図2-5の実施例において、ツールバー/メニュー表示位置をプログラムで選択するように、システムによって使用され得る座標系および関連付けられる参照を図示する。図面は、プリズム200の上からの図を含み、プリズムに対する座標系のXおよびZ軸を示す。Y軸は、垂直軸であり、したがって、示されない。プリズムの中心は、X=0およびZ=0における、点である。X方向におけるプリズムの長さは、L
Xと表され、Z方向におけるプリズムの長さは、L
zと表される。2本の領域分割線または境界線600、602が、示され、そのそれぞれが矩形の2つの対向頂点と交差する。これらの分割線は、領域1、2、3、および4と示される、4つの領域を画定するために使用される。これらの領域はそれぞれ、さらに内部(すなわち、プリズムの内側)および外部領域に細分される。本図面では、ユーザ103は、領域4の外部に示され、ツールバー(メニュー)208は、外向きに向いた配向で領域4のプリズム表面上に位置付けられる。ツールバーは、ユーザが、領域4の外部、または内部領域と外部領域とに分割する線から閾値距離内に留まる限り、本場所に固定されたままであり得る。
【0051】
一実施形態では、ツールバー208は、プリズムの垂直表面上に表示のみされ(中間表示位置は、使用されない)、以下のルールに従って表示される。(1)ユーザが、プリズムの外側にいる場合、ツールバーは、その中にユーザが位置する領域に該当する、表面上に、外向きに向いた配向で表示される、(2)ユーザが、プリズムの内側にいる場合、ツールバーは、ユーザが向いている表面(例えば、ユーザの頭部姿勢を表す、方向ベクトルまたは光線によって交差される表面)上に内向きに向いた配向で表示される。これらのルールは、
図5の位置2等の1つまたはそれを上回る中間表示位置の表示をサポートするために、適切に修正または拡張されてもよい。
【0052】
図7A-7Dは、4つの内部ユーザ場所および配向と、4つの対応するメニュー/ツールバー場所とを示す。これらの図における方向ベクトル212は、頭部姿勢ベクトル等のユーザ方向または姿勢ベクトルを表す。いずれの場合も、メニュー208は、ユーザがその中にいる、4つの内部領域に関わらず、方向ベクトル212によって交差される、垂直プリズム表面上に内向きに向いた配向で表示される。
図7Aでは、ユーザは、領域2の表面に向き、メニュー208は、ゼロのメニュー角度で表面上に表示される。
図7Bでは、ユーザは、領域1の表面に向き、メニュー208は、3π/2ラジアンまたは270度のメニュー角度で表面上に表示される。
図7Cでは、ユーザは、領域3の表面に向き、メニュー208は、π/2ラジアンまたは90度の角度で表面上に表示される。
図7Dでは、ユーザは、領域4の表面に向き、メニュー208は、πラジアンまたは180度の角度で表面上に表示される。換言すると、いくつかの実施形態では、メニュー208は、ユーザが位置する場所にかかわらず、ユーザに向いて回転してもよい。上記に解説されるように、1つまたはそれを上回る中間表示場所はまた、ユーザが、プリズム内またはその近くにいるとき、使用され得、例えば、
図7Bにおいて、ユーザと領域1の表面との間の距離が、閾値を超える場合、メニュー208は、代替として、ユーザとその表面との間に該当する中間位置に表示され得る。
【0053】
上記に述べられたように、ユーザの配向および/または場所における変化が、ツールバー208の場所および/または配向における変化をトリガすると、アニメーションが、随意に、ツールバーをその新しい場所および/または配向に移動および/または回転させることを示すために、使用され得る。ユーザ体験をさらに改良するために、ヒステリシスタイプ機能が、ツールバー208が、わずかなユーザ移動に応答して、短い時間インターバルで場所の間を往復して「ジャンプ」することを防止するために、使用されてもよい。例えば、
図6では、ユーザが、領域1および4の外部の間の境界線600に沿って立っていた場合、ヒステリシス機能は、メニュー208が、わずかなユーザ移動に応答して、領域1および4の表面の間をジャンプすることを防止し得る。
図6における境界線600および602のそれぞれの厚さは、使用されるヒステリシスの程度を表す。ユーザが、プリズムの内側にいるとき、ヒステリシス機能は、ユーザが、プリズムの角に向くとき、メニュー208が、表面の間を往復して急速に移動することを防止し得る。ヒステリシスは、加えて、または代替として、メニュー208が、いったんその場所が、変更されると、再び、一定の期間(例えば、1秒または2秒)再位置付けされることを防止する、時間ベースの制限を課すことによって実装されてもよい。
【0054】
図8は、ツールバー、別のタイプのメニュー、またはユーザ移動に基づく別のタイプのコンテンツアイテムを再配置および再配向するために使用され得る、プロセスを図示する。プロセスは、コンピューティングシステム(例えば、システムのウェアラブルコンピューティングデバイス170および/または別の処理コンポーネント)によって実行されるプログラムコードで、実装されてもよい。例えば、プロセスは、ユニバースアプリケーション130(
図1)または別のアプリケーション140のプログラムコードで実装されてもよい。プロセスが、フレーム(例えば、60フレーム/秒のフレームレートが使用される場合、60回/秒)毎に実行されるように図示されるが、あまり頻繁に実行されなくてもよい(例えば、1フレームおきまたは3フレームおき)。
図8の決定ブロック802では、プロセスは、ユーザの座標と、プリズム200の座標および寸法とに基づいて、ユーザがプリズムの内側200にいるかどうかを決定する。ユーザの座標は、データ収集に基づく、またはヘッドセット160(またはいくつかの実施形態では、コントローラ206または別のコンポーネントによって)によって発生されてもよい。
【0055】
ユーザが、プリズム内にいる場合、その中でコンテンツアイテムが表示され得る領域は、
図7A-7Dを参照して、上記に説明されるように、ユーザが向いている方向を表す、方向ベクトル(ブロック804)に基づいて決定される。方向ベクトルは、頭部姿勢に基づき得るが、代替として、眼姿勢、胴体姿勢、またはある他の姿勢、または配向測定に基づき得る。ブロック805では、プロセスは、内向きに向いた配向で、領域の表面上にコンテンツアイテムを表示するための回転を算出するために、決定される領域を使用する。
【0056】
ユーザが、プリズムの外側にいる場合、プロセスは、
図6を参照して議論されるように、ユーザの場所(ブロック810)に基づいて、領域を決定する。ブロック812では、プロセスは、次いで、外向きに向いた(すなわち、ユーザに向かって向いた)配向で、識別された領域の表面上にコンテンツアイテムを表示するための回転を算出する。
【0057】
ブロック814では、プロセスは、領域に基づいて、XおよびZ座標を算出する。例えば、プロセスは、コンテンツアイテムが、識別された表面上に中心合わせし得るように、これらの座標を算出してもよい。Y座標は、上記に説明されるように、留保される領域210に対応する固定値であってもよい。ブロック816および818では、プロセスは、それが変化した場合、新しい回転を設定し、それが変化した場合、新しい位置(XおよびZ座標)を設定する。上記に述べられたように、アニメーションが、その新しい位置および配向に移動するコンテンツアイテムを表示するために、実行されてもよい。
【0058】
以下の方程式は、
図8のブロック804および810において領域を決定するために使用され得、XおよびZは、座標であり、L
Zは、Z方向におけるプリズム長であり(
図6参照)、L
Xは、X方向におけるプリズム長であり、δは、随意のヒステリシス値である。
A=X(L
Z)
B=Z(L
X)
領域1=(A-B)>δかつ(A+B)>δ
領域2=(A-B)>δかつ(A+B)<-δ
領域3=(A-B)<-δかつ(A+B)<-δ
領域4=(A-B)<-δかつ(A+B)>δ
領域0=領域1-4のいずれにも該当しない場所
【0059】
ヒステリシス値δは、ヒステリシスを提供しないゼロの値と、よりヒステリシスを提供するより大きい値とを用いて、例えば、0~0.8の値に設定されてもよい。領域0は、
図6に示される領域分割境界線600および602によって表される領域であって、これらのバーの厚さまたは幅は、δに対応する。
図8においてヒステリシス機能を実装するために、ブロック804または810で決定される領域は、領域0であり、何のアクションも、行われない(すなわち、回転および位置は、ブロック816および818で更新されない)。表1は、ユーザが、プリズムの外側にいるとき、5つの領域毎にコンテンツアイテムを表示するために使用される角度を示し、表2は、ユーザが、プリズムの内側にいるときに使用される角度を示す。
【表1】
【表2】
【0060】
図8のプロセスは、コンテンツアイテムが、上記に説明されるように、表面の間の中間位置に表示されることを有効にするように、適切に修正されてもよい。
【0061】
明白となるであろうように、上記に説明される表示プロセスは、多数の方法で変動されることができる。例えば、一実施形態では、ユーザが、プリズム200にいるとき、ツールバー208は、ツールバーが、留保される領域210内のユーザの真正面に留まる(例えば、頭部姿勢に基づいて)ように、ユーザが移動するにつれて、ユーザが向くプリズム表面に沿って、左右に(水平に)「スライド」してもよい。ツールバーが、プリズムの角に到達すると、ツールバーの一部が、1つの表面上に表示され、残りの部分が、隣接する表面上に表示される間、スライドを継続し得るように、隣接する表面にジャンプし得るか、または90度折り畳まれ得るかのいずれかとなる。左右移動はまた、ユーザが、プリズムの外側にいるとき、実装されてもよい。
【0062】
別の実施形態では、ユーザが、プリズム200の内側にいるとき、ツールバー208または他のコンテンツアイテムは、全ての4つの垂直表面上または2つの対向表面上の中心合わせした場所に、持続的に表示され得、したがって、本実施形態におけるツールバー208は、ユーザが、プリズムにいるとき、再位置付けされず、ユーザは、ツールバーの複数のインスタンスのうちのいずれか1つを見るおよび使用することができる。別の実施例として、ツールバーのサイズは、ユーザが、その上でそれが表示される表面に向かって移動するにつれて減少され得、ユーザが、表面から離れて移動するにつれて、増加され得る。
IV. 結論
【0063】
本明細書に説明されるプロセスおよびタスクは全て、1つまたはそれを上回るコンピューティングデバイス(例えば、ウェアラブルコンピューティングデバイス170、ヘッドセット160、および/または他のデバイス)を含む、コンピューティングシステムによって実施および完全に自動化されてもよい。各そのようなコンピューティングデバイスは、典型的には、プログラム命令を実行するハードウェアプロセッサ(または複数のハードウェアプロセッサ)、またはメモリまたは他の非一過性コンピュータ可読記憶媒体内に記憶されるモジュールを含む。本明細書に開示される種々の機能は、そのようなプログラム命令に具現化され得るが、開示される機能のいくつかのまたは全ては、代替として、コンピューティングシステムの特定用途向け回路(例えば、ASICまたはFPGA)に実装されてもよい。コンピューティングシステムが、複数のコンピューティングデバイスを含む場合、これらのデバイスは、共同設置される必要はない。
【0064】
本開示のシステムおよび方法は、それぞれ、いくつかの革新的側面を有し、そのうちのいかなるものも、本明細書に開示される望ましい属性に単独で関与しない、またはそのために要求されない。上記に説明される種々の特徴およびプロセスは、相互に独立して使用され得る、または種々の方法で組み合わせられ得る。全ての可能な組み合わせおよび副次的組み合わせが、本開示の範囲内に該当することが意図される。本開示に説明される実装の種々の修正が、当業者に容易に明白であり得、本明細書に定義される一般原理は、本開示の精神または範囲から逸脱することなく、他の実装に適用され得る。したがって、請求項は、本明細書に示される実装に限定されることを意図されず、本明細書に開示される本開示、原理、および新規の特徴と一貫する最も広い範囲を与えられるべきである。
【0065】
とりわけ、「~できる(can)」、「~し得る(could)」、「~し得る(might)」、「~し得る(may)」、「例えば(e.g.)」、および同等物等、本明細書で使用される条件文は、別様に具体的に記載されない限り、または使用されるような文脈内で別様に理解されない限り、概して、ある実施形態がある特徴、要素、および/またはステップを含む一方、他の実施形態がそれらを含まないことを伝えることが意図される。したがって、そのような条件文は、概して、特徴、要素、および/またはステップが、1つまたはそれを上回る実施形態に対していかようにも要求されること、または1つまたはそれを上回る実施形態が、著者の入力または促しの有無を問わず、これらの特徴、要素、および/またはステップが任意の特定の実施形態において含まれる、または実施されるべきかどうかを決定するための論理を必然的に含むことを含意することを意図されない。用語「~を備える(comprising)」、「~を含む(including)」、「~を有する(having)」、および同等物は、同義語であり、非限定的方式で包括的に使用され、付加的要素、特徴、行為、動作等を除外しない。また、用語「または」は、その包括的意味において使用され(およびその排他的意味において使用されず)、したがって、例えば、要素のリストを接続するために使用されると、用語「または」は、リスト内の要素のうちの1つ、いくつか、または全てを意味する。加えて、本願および添付される請求項で使用されるような冠詞「a」、「an」、および「the」は、別様に規定されない限り、「1つまたはそれを上回る」または「少なくとも1つ」を意味するように解釈されるべきである。
【0066】
本明細書で使用されるように、項目のリスト「~のうちの少なくとも1つ」を指す語句は、単一の要素を含む、それらの項目の任意の組み合わせを指す。ある実施例として、「A、B、またはCのうちの少なくとも1つ」は、A、B、C、AおよびB、AおよびC、BおよびC、およびA、B、およびCを網羅することが意図される。語句「X、Y、およびZのうちの少なくとも1つ」等の接続文は、別様に具体的に記載されない限り、概して、項目、用語等がX、Y、またはZのうちの少なくとも1つであり得ることを伝えるために使用されるような文脈で別様に理解される。したがって、そのような接続文は、概して、ある実施形態が、Xのうちの少なくとも1つ、Yのうちの少なくとも1つ、およびZのうちの少なくとも1つがそれぞれ存在するように要求することを示唆することを意図するものではない。
【0067】
同様に、動作は、特定の順序で図面に描写され得るが、これは、望ましい結果を達成するために、そのような動作が示される特定の順序で、または連続的順序で実施される、または全ての図示される動作が実施される必要はないと認識されるべきである。さらに、上記に説明される実装における種々のシステムコンポーネントの分離は、全ての実装におけるそのような分離を要求するものとして理解されるべきではなく、説明されるプログラムコンポーネントおよびシステムは、概して、単一のソフトウェア製品においてともに統合される、または複数のソフトウェア製品にパッケージ化され得ることを理解されたい。加えて、他の実装も、以下の請求項の範囲内である。いくつかの場合では、請求項に列挙されるアクションは、異なる順序で実施され、依然として、望ましい結果を達成することができる。
【国際調査報告】