JP7112502B2 - 複合現実システムのためのブラウザ - Google Patents

複合現実システムのためのブラウザ Download PDF

Info

Publication number
JP7112502B2
JP7112502B2 JP2020544190A JP2020544190A JP7112502B2 JP 7112502 B2 JP7112502 B2 JP 7112502B2 JP 2020544190 A JP2020544190 A JP 2020544190A JP 2020544190 A JP2020544190 A JP 2020544190A JP 7112502 B2 JP7112502 B2 JP 7112502B2
Authority
JP
Japan
Prior art keywords
user
virtual
open
content
physical location
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020544190A
Other languages
English (en)
Other versions
JP2021514088A (ja
JPWO2019165055A5 (ja
Inventor
ティム ザーモール,
アンドレア イサベル モントーヤ,
ロバート ジョン カミングス マクドナルド,
サキナ グロス,
ジェネビーブ マック,
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Magic Leap Inc
Original Assignee
Magic Leap Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Magic Leap Inc filed Critical Magic Leap Inc
Publication of JP2021514088A publication Critical patent/JP2021514088A/ja
Publication of JPWO2019165055A5 publication Critical patent/JPWO2019165055A5/ja
Priority to JP2022117087A priority Critical patent/JP2022153514A/ja
Application granted granted Critical
Publication of JP7112502B2 publication Critical patent/JP7112502B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/013Eye tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0483Interaction with page-structured environments, e.g. book metaphor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04845Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted

Description

本開示は、空間3D環境内にブラウジング技術を実装するためのシステムおよび方法に関する。
ウェブページを閲覧する典型的方法は、コンピュータ、スマートフォン、タブレット等のモニタ上でウェブページを開くことである。ユーザは、ウェブページを通してスクロールし、ウェブページ上に表示される異なるコンテンツを閲覧するであろう。通常、ユーザが、コンピュータモニタ、スマートフォン、またはタブレットを見ているかどうかにかかわらず、コンテンツがモニタ上で表示される方法に関して、固定フォーマットが存在する。
仮想現実、拡張現実、および/または複合現実システム(以降、集合的に、「複合現実」システムと称される)を用いることで、3次元環境が、ユーザへのコンテンツの表示のために提供される。問題は、2Dコンテンツをブラウザ内に表示するための従来のアプローチが、3D環境内で使用されるとき、あまり良好に機能しないことである。この理由の1つは、従来の2Dウェブブラウザを用いると、ディスプレイデバイスの表示エリアが、コンテンツを表示しているモニタの画面エリアに限定されるためである。その結果、従来のブラウザは、コンテンツをそのモニタ表示エリア内に編成および表示する方法のみを把握するように構成される。対照的に、3D環境は、モニタ表示エリアの厳密な範囲内に限定されない。したがって、従来の2Dブラウザは、従来のブラウジング技術が、コンテンツを表示するために3D環境を利用するための機能性または能力を有していないだけのために、3D環境内で使用されるとき、準最適に性能を発揮する。
例えば、ユーザが、複合現実機器を使用しており、異なる物理的場所と関連付けられた複数のブラウザウィンドウを設置しているときの状況を検討する。例えば、ユーザは、第1のブラウザウィンドウを第1の部屋内で開いており、第2のブラウザウィンドウを第2の部屋に居る間に開いている場合がある。従来の2Dベースのブラウザは、所与のモニタエリアの表示に限定されるため、これは、従来のブラウザが、物理的に遠隔のウィンドウの見当を付けるための技術さえ有しておらず、まして、複数の物理的場所内で開かれている複数のウィンドウを伴う本状況に対処する能力など有しておらず、ユーザが、これらの複数のウィンドウを効果的に閲覧し、そこにナビゲートし、使用することを不可能にすることを意味する。
したがって、3D環境内でブラウジング技術を実装するための改良されたアプローチの必要性が存在する。
改良されたシステムおよび方法が、3D複合現実環境内でのブラウザウィンドウのナビゲーションおよび操作のために提供される。いくつかの実施形態は、1つ以上の以前に開かれたウィンドウに対するユーザの現在の場所にかかわらず、ユーザのウィンドウを閲覧するための改良されたアプローチを対象とする。
ブラウザウィンドウのナビゲーションおよび操作のための改良されたシステムおよび方法は、分解され、空間的に編成された3D環境内に表示される、2Dコンテンツのコンテキストにおいて適用されてもよい。これは、2Dコンテンツを識別するステップと、2Dコンテンツ内の要素を識別するステップと、周囲表面を識別するステップと、識別された要素を識別された周囲表面にマッピングするステップと、要素を仮想コンテンツとして周囲表面上に表示するステップとを含んでもよい。
一実施形態では、ウィンドウをコンピューティング環境内に表示するための方法は、複数の開いているウィンドウを選択するための命令を受信するステップを含む。本方法はまた、複数の開いているウィンドウに関する情報を読み出すステップであって、複数の開いているウィンドウは、異なる物理的場所と関連付けられる、ステップを含む。本方法はさらに、複数の開いているウィンドウの表現を単一ユーザインターフェース内に表示するステップを含む。さらに、本方法は、複数の開いているウィンドウの選択されたウィンドウの選択の受信に応じて、選択されたウィンドウをユーザのための視野の前景の中にロードするステップを含む。
1つ以上の実施形態では、複数の開いているウィンドウの表現は、ユーザのための現在の物理的環境内の場所に対して複数の開いているウィンドウに関する場所パラメータを変化させることによって、単一ユーザインターフェース内に表示される。複数の開いているウィンドウは、単一ユーザインターフェース内の複数の開いているウィンドウに割り当てられる座標において、ユーザにレンダリングおよび表示されてもよい。複数の開いているウィンドウは、プレビュー形態、サムネイル形態、またはフル形態のうちの少なくとも1つにおいてレンダリングされてもよい。全ての開いているウィンドウは、単一ユーザインターフェース内での表示のために選択されてもよい。複数の開いているウィンドウはそれぞれ、仮想コンテンツの設置のために、別個のプリズムの中にレンダリングされてもよい。ホバリングされているウィンドウは、前景の中に移動し得る一方、他のウィンドウは、視覚的に後退し得る。選択されたウィンドウの選択の受信に応じて、非選択ウィンドウは、閉じられてもよい。
別の実施形態では、コンピューティング環境内でウィンドウを操作するためのシステムは、3次元コンテンツを表示する、複合現実ディスプレイデバイスを含む。本システムはまた、プロセッサを含む。本システムはさらに、プロセッサによって実行可能なプログラマブルコードを保持するためのメモリを含む。プログラマブルコードは、複数の開いているウィンドウを選択するための命令を受信することと、複数の開いているウィンドウに関する情報を読み出すことであって、複数の開いているウィンドウは、異なる物理的場所と関連付けられる、ことと、複数の開いているウィンドウの表現を複合現実ディスプレイデバイス内の単一ユーザインターフェース内に表示することと、複数の開いているウィンドウの選択されたウィンドウの選択の受信に応じて、選択されたウィンドウをユーザのための視野の前景の中にロードすることとを行うための命令を含む。
1つ以上の実施形態では、複数の開いているウィンドウの表現は、ユーザのための現在の物理的環境内の場所に対して複数の開いているウィンドウに関する場所パラメータを変化させることによって、単一ユーザインターフェース内に表示される。複数の開いているウィンドウは、単一ユーザインターフェース内の複数の開いているウィンドウに割り当てられる座標において、ユーザにレンダリングおよび表示されてもよい。複数の開いているウィンドウは、プレビュー形態、サムネイル形態、またはフル形態のうちの少なくとも1つにおいてレンダリングされてもよい。全ての開いているウィンドウは、単一ユーザインターフェース内での表示のために選択されてもよい。複数の開いているウィンドウはそれぞれ、仮想コンテンツの設置のために境界された体積の中にレンダリングされてもよい。ホバリング状態が、実装されてもよく、ホバリングされているウィンドウは、前景の中に移動する一方、他のウィンドウは、視覚的に後退する。選択されたウィンドウの選択の受信に応じて、非選択ウィンドウは、閉じられてもよい。
さらに別の実施形態では、コンピュータ可読媒体上に具現化されるコンピュータプログラム製品であって、コンピュータ可読媒体は、その上に記憶される命令のシーケンスを有し、命令のシーケンスは、プロセッサによって実行されると、プロセッサに、複数の開いているウィンドウを選択するための命令を受信するステップと、複数の開いているウィンドウに関する情報を読み出すステップであって、複数の開いているウィンドウは、異なる物理的場所と関連付けられる、ステップと、複数の開いているウィンドウの表現を単一ユーザインターフェース内に表示するステップと、複数の開いているウィンドウの選択されたウィンドウの選択の受信に応じて、選択されたウィンドウをユーザのための視野の前景の中にロードするステップとを含む、方法を実行させる。
1つ以上の実施形態では、複数の開いているウィンドウの表現は、ユーザのための現在の物理的環境内の場所に対して複数の開いているウィンドウに関する場所パラメータを変化させることによって、単一ユーザインターフェース内に表示される。複数の開いているウィンドウは、単一ユーザインターフェース内の複数の開いているウィンドウに割り当てられる座標において、ユーザにレンダリングおよび表示されてもよい。複数の開いているウィンドウは、プレビュー形態、サムネイル形態、またはフル形態のうちの少なくとも1つにおいてレンダリングされてもよい。全ての開いているウィンドウは、単一ユーザインターフェース内での表示のために選択されてもよい。複数の開いているウィンドウはそれぞれ、仮想コンテンツの設置のために境界された体積の中にレンダリングされてもよい。ホバリング状態が、実装されてもよく、ホバリングされているウィンドウは、前景の中に移動する一方、他のウィンドウは、視覚的に後退する。選択されたウィンドウの選択の受信に応じて、非選択ウィンドウは、閉じられてもよい。
さらに別の実施形態では、仮想コンテンツをコンピューティング環境内に表示するための方法は、複数の開かれたアプリケーションを選択するための命令を受信するステップを含む。本方法はまた、複数の開かれたアプリケーションに関する情報を読み出すステップであって、複数の開かれたアプリケーションは、異なる物理的場所と関連付けられる、ステップを含む。本方法はさらに、複数の開かれたアプリケーションの表現を単一ユーザインターフェース内に表示するステップを含む。さらに、本方法は、複数の開かれたアプリケーションの選択されたアプリケーションの選択の受信に応じて、選択されたアプリケーションをユーザのための視野の前景の中にロードするステップを含む。
1つ以上の実施形態では、複数の開かれたアプリケーションの表現は、ユーザための現在の物理的環境内の場所に対する複数の開かれたアプリケーションのための場所パラメータを変化させることによって、単一ユーザインターフェース内に表示される。複数の開かれたアプリケーションは、単一ユーザインターフェース内の複数の開かれたアプリケーションに割り当てられる座標において、ユーザにレンダリングおよび表示されてもよい。複数の開かれたアプリケーションは、プレビュー形態、サムネイル形態、またはフル形態のうちの少なくとも1つにおいてレンダリングされてもよい。全ての開かれたアプリケーションは、単一ユーザインターフェース内での表示のために選択されてもよい。複数の開かれたアプリケーションはそれぞれ、仮想コンテンツの設置のために、別個のプリズムの中にレンダリングされてもよい。ホバリング状態が、実装されてもよく、ホバリングされているアプリケーションは、前景の中に移動する一方、他のアプリケーションは、視覚的に後退する。選択されたアプリケーションの選択の受信に応じて、非選択アプリケーションは、閉じられてもよい。
実施形態の側面、目的、および利点のさらなる詳細は、下記の詳細な説明、図面、および請求項に説明される。前述の一般的説明および以下の詳細な説明は両方とも、例示的および説明的であって、請求項の範囲に関して限定することを意図するものではない。
本願明細書は、例えば、以下の項目も提供する。
(項目1)
ウィンドウをコンピューティング環境内に表示するための方法であって、
複数の開いているウィンドウを選択するための命令を受信することと、
前記複数の開いているウィンドウに関する情報を読み出すことであって、前記複数の開いているウィンドウは、異なる物理的場所と関連付けられる、ことと、
前記複数の開いているウィンドウの表現を単一ユーザインターフェース内に表示することと、
前記複数の開いているウィンドウの選択されたウィンドウの選択の受信に応じて、前記選択されたウィンドウをユーザのための視野の前景の中にロードすることと
を含む、方法。
(項目2)
前記複数の開いているウィンドウの表現は、前記ユーザのための現在の物理的環境内の場所に対して複数の開いているウィンドウに関する場所パラメータを変化させることによって、前記単一ユーザインターフェース内に表示される、項目1に記載の方法。
(項目3)
前記複数の開いているウィンドウは、前記単一ユーザインターフェース内の前記複数の開いているウィンドウに割り当てられる座標において、前記ユーザにレンダリングおよび表示される、項目2に記載の方法。
(項目4)
前記複数の開いているウィンドウは、プレビュー形態、サムネイル形態、またはフル形態のうちの少なくとも1つにおいてレンダリングされる、項目3に記載の方法。
(項目5)
全ての開いているウィンドウは、前記単一ユーザインターフェース内での表示のために選択される、項目1に記載の方法。
(項目6)
前記複数の開いているウィンドウはそれぞれ、仮想コンテンツの設置のために、別個のプリズムの中にレンダリングされる、項目1に記載の方法。
(項目7)
ホバリング状態が、実装され、ホバリングされているウィンドウは、前景の中に移動する一方、他のウィンドウは、視覚的に後退する、項目1に記載の方法。
(項目8)
前記選択されたウィンドウの選択の受信に応じて、非選択ウィンドウは、閉じられる、項目1に記載の方法。
(項目9)
コンピューティング環境内でウィンドウを操作するためのシステムであって、
3次元コンテンツを表示する複合現実ディスプレイデバイスと、
プロセッサと、
前記プロセッサによって実行可能なプログラマブルコードを保持するためのメモリであって、前記プログラマブルコードは、複数の開いているウィンドウを選択するための命令を受信することと、前記複数の開いているウィンドウに関する情報を読み出すことであって、前記複数の開いているウィンドウは、異なる物理的場所と関連付けられる、ことと、前記複数の開いているウィンドウの表現を前記複合現実ディスプレイデバイス内の単一ユーザインターフェース内に表示することと、前記複数の開いているウィンドウの選択されたウィンドウの選択の受信に応じて、前記選択されたウィンドウをユーザのための視野の前景の中にロードすることとを行うための命令を含む、メモリと
を備える、システム。
(項目10)
前記複数の開いているウィンドウの表現は、前記ユーザのための現在の物理的環境内の場所に対して複数の開いているウィンドウに関する場所パラメータを変化させることによって、前記単一ユーザインターフェース内に表示される、項目9に記載のシステム。
(項目11)
前記複数の開いているウィンドウは、前記単一ユーザインターフェース内の前記複数の開いているウィンドウに割り当てられる座標において、前記ユーザにレンダリングおよび表示される、項目10に記載のシステム。
(項目12)
前記複数の開いているウィンドウは、プレビュー形態、サムネイル形態、またはフル形態のうちの少なくとも1つにおいてレンダリングされる、項目11に記載のシステム。
(項目13)
全ての開いているウィンドウは、前記単一ユーザインターフェース内での表示のために選択される、項目9に記載のシステム。
(項目14)
前記複数の開いているウィンドウはそれぞれ、仮想コンテンツの設置のために境界された体積の中にレンダリングされる、項目9に記載のシステム。
(項目15)
ホバリング状態が、実装され、ホバリングされているウィンドウは、前景の中に移動する一方、他のウィンドウは、視覚的に後退する、項目9に記載のシステム。
(項目16)
前記選択されたウィンドウの選択の受信に応じて、非選択ウィンドウは、閉じられる、項目9に記載のシステム。
(項目17)
コンピュータ可読媒体上に具現化されるコンピュータプログラム製品であって、前記コンピュータ可読媒体は、その上に記憶される命令のシーケンスを有し、前記命令のシーケンスは、プロセッサによって実行されると、前記プロセッサに、
複数の開いているウィンドウを選択するための命令を受信することと、
前記複数の開いているウィンドウに関する情報を読み出すことであって、前記複数の開いているウィンドウは、異なる物理的場所と関連付けられる、ことと、
前記複数の開いているウィンドウの表現を単一ユーザインターフェース内に表示することと、
前記複数の開いているウィンドウの選択されたウィンドウの選択の受信に応じて、前記選択されたウィンドウをユーザのための視野の前景の中にロードすることと
を含む方法を実行させる、コンピュータプログラム製品。
(項目18)
仮想コンテンツをコンピューティング環境内に表示するための方法であって、
複数の開かれたアプリケーションを選択するための命令を受信することと、
前記複数の開かれたアプリケーションに関する情報を読み出すことであって、前記複数の開かれたアプリケーションは、異なる物理的場所と関連付けられる、ことと、
前記複数の開かれたアプリケーションの表現を単一ユーザインターフェース内に表示することと、
前記複数の開かれたアプリケーションの選択されたアプリケーションの選択の受信に応じて、前記選択されたアプリケーションをユーザのための視野の前景の中にロードすることと
を含む、方法。
図面は、本開示の種々の実施形態の設計および有用性を図示する。図は、縮尺通りに描かれておらず、類似構造または機能の要素は、図全体を通して同様の参照番号によって表されることに留意されたい。本開示の種々の実施形態の上記に列挙されたものおよび他の利点および目的を得る方法をより深く理解するために、上記で簡単に説明された本開示のより詳細な説明が、添付の図面に図示される、その具体的実施形態を参照して与えられるであろう。これらの図面は、本開示の典型的実施形態のみを描写し、したがって、その範囲の限定と見なされないという理解の上、本開示は、添付の図面の使用を通して、付加的具体性および詳細とともに説明および解説されるであろう。
図1は、いくつかの実施形態による、ユーザの3D環境内に表示されるべき2Dコンテンツを分解するための拡張現実環境を図示する。
図2は、いくつかの実施形態による、2Dコンテンツの要素とユーザの3D環境の例示的マッピングを図示する。
図3は、いくつかの実施形態による、3D環境内に表示されるべき2Dコンテンツを分解するための方法を図示する、フロー図である。
図4は、いくつかの実施形態による、2Dコンテンツ内の要素を識別するための方法を図示する、フロー図である。
図5は、いくつかの実施形態による、2Dコンテンツから分解された要素を記憶するためのテーブルの実施例を示す。
図6は、いくつかの実施形態による、ユーザのローカル環境から表面を識別するための方法を図示する、フロー図である。
図7は、いくつかの実施形態による、ユーザのローカル環境から識別された表面のインベントリを記憶するためのテーブルの実施例を示す。
図8は、いくつかの実施形態による、2Dコンテンツからの要素を利用可能な表面にマッピングするための方法を図示する、フロー図である。
図9は、いくつかの実施形態による、2Dコンテンツからの要素のユーザのローカル環境からの表面へのマッピングを記憶するためのテーブルの実施例を示す。
図10は、ユーザのウィンドウの閲覧を実装するためのアプローチのフローチャートを図示する。
図11A-Bは、ウィンドウの以前の物理的場所にかかわらず、ユーザのためにウィンドウを表示するためのプロセスを図示する。 図11A-Bは、ウィンドウの以前の物理的場所にかかわらず、ユーザのためにウィンドウを表示するためのプロセスを図示する。
図12-13は、複数のウィンドウを複合現実インターフェース内に表示するための可能性として考えられるアプローチの例証を提供する。 図12-13は、複数のウィンドウを複合現実インターフェース内に表示するための可能性として考えられるアプローチの例証を提供する。
図14は、複数のプリズムを複合現実システム内に表示するための可能性として考えられるアプローチを図示する。
図15は、本開示の実施形態を実装するために好適な例証的コンピューティングシステムのブロック図である。
種々の実施形態が、ここで、当業者が本開示を実践することを可能にするように本開示の例証的実施例として提供される、図面を参照して詳細に説明されるであろう。着目すべきこととして、下記の図および実施例は、本開示の範囲を限定することを意味するものではない。本開示のある要素が、公知のコンポーネント(または方法またはプロセス)を使用して、部分的または完全に実装される場合、本開示の理解のために必要なそのような公知のコンポーネント(または方法またはプロセス)のその部分のみが、説明され、そのような公知のコンポーネント(または方法またはプロセス)の他の部分の詳細な説明は、本開示を曖昧にしないように省略されるであろう。さらに、種々の実施形態は、例証として本明細書に参照されるコンポーネントの現在および将来的公知の均等物を包含する。
下記に説明されるようなシステムおよび方法は、主に、ブラウザアプリケーションのコンテキスト内で説明されるが、当業者は、本明細書に説明されるシステムおよび方法はまた、1つ以上の他のアプリケーションのコンテキスト内にも同様に適用されてもよいことを理解するであろう。いくつかの実施形態では、ユーザの写真および/またはビデオを管理するためのアプリケーションが、下記に説明されるシステムおよび方法を利用してもよい。いくつかの実施形態では、カードゲームをプレーするためのアプリケーションが、下記に説明されるシステムおよび方法を利用してもよい。いくつかの実施形態では、天候アプリケーションが、下記に説明されるシステムおよび方法を利用してもよい。いくつかの実施形態では、3D仮想コンテンツをユーザに表示することが可能なデバイスおよび/またはシステム上でインストールおよび/または起動され得る、任意の他のアプリケーションが、下記に説明されるシステムおよび方法を利用してもよい。いくつかの実施形態では、単一アプリケーションが、下記に説明されるシステムおよび方法を利用してもよい。いくつかの実施形態では、1つを上回るアプリケーションが、下記に説明されるシステムおよび方法を利用してもよい。いくつかの実施形態では、3D仮想コンテンツをユーザに表示することが可能なデバイスおよび/またはシステム上でインストールおよび/または起動される、全てのアプリケーションが、下記に説明されるシステムおよび方法を利用してもよい。
下記に説明されるようなシステムおよび方法は、主に、ブラウザアプリケーションのコンテキスト内で説明されるが、当業者は、本明細書に説明されるシステムおよび方法がまた、1つ以上の他のアプリケーションのコンテキスト内にも同様に適用されてもよいことを理解するであろう。いくつかの実施形態では、ユーザの写真および/またはビデオを管理するためのアプリケーションが、下記に説明されるシステムおよび方法を利用してもよい。いくつかの実施形態では、カードゲームをプレーするためのアプリケーションが、下記に説明されるシステムおよび方法を利用してもよい。いくつかの実施形態では、天候アプリケーションが、下記に説明されるシステムおよび方法を利用してもよい。いくつかの実施形態では、3D仮想コンテンツをユーザに表示することが可能なデバイスおよび/またはシステム上でインストールおよび/または起動され得る、任意の他のアプリケーションが、下記に説明されるシステムおよび方法を利用してもよい。いくつかの実施形態では、単一アプリケーションが、下記に説明されるシステムおよび方法を利用してもよい。いくつかの実施形態では、1つを上回るアプリケーションが、下記に説明されるシステムおよび方法を利用してもよい。いくつかの実施形態では、3D仮想コンテンツをユーザに表示することが可能なデバイスおよび/またはシステム上でインストールおよび/または起動される、全てのアプリケーションが、下記に説明されるシステムおよび方法を利用してもよい。いくつかの実施形態では、アプリケーションの複数のインスタンスが、下記に説明されるシステムおよび方法を利用してもよい。
本開示の実施形態は、空間的に編成された3D環境内に表示されるべき2Dウェブページを分解するであろう。2Dウェブページは、頭部搭載型システム、モバイルデバイス(例えば、携帯電話)、タブレット、テレビ、アプリケーション、および同等物のウェブブラウザ上で生じ得る。いくつかの実施形態では、2Dウェブページは、ラップトップコンピュータ、デスクトップコンピュータ、2Dウェブページへのリンクを伴う電子メールアプリケーション、2Dウェブページへのリンクを参照する、または含む、電子メッセージ、および同等物等の別のアプリケーションまたはデバイスから受信されてもよい。
図1を参照すると、環境100は、物理的環境と、下記に説明されるプロセス(例えば、ユーザの物理的環境105内の3D表面上に表示されるべきウェブページから2Dコンテンツを分解する)を実装するためのシステムとを表す。環境100の代表的物理的環境およびシステムは、頭部搭載型システム160を通してユーザ108によって視認されるようなユーザの物理的環境105を含む。環境100の代表的システムはさらに、ネットワーク120に動作可能に結合されるウェブブラウザ110を介して、2Dコンテンツ(例えば、ウェブページ)にアクセスするステップを含む。ネットワーク120は、インターネット、内部ネットワーク、プライベートクラウドネットワーク、パブリッククラウドネットワーク等であってもよい。ウェブブラウザ110はまた、ネットワーク120を介して、プロセッサ170に動作可能に結合される。プロセッサ170は、頭部搭載型システム160から別個の隔離されたコンポーネントとして示されるが、代替実施形態では、プロセッサ170は、頭部搭載型システム160の1つ以上のコンポーネントと統合されてもよく、および/または、例えば、ネットワーク120等の環境100内の他のシステムコンポーネントの中に統合され、コンピューティングネットワーク125および記憶デバイス130にアクセスしてもよい。プロセッサ170は、頭部搭載型システム160、ローカル記憶デバイス140、ウェブブラウザ110、コンピューティングネットワーク125、および記憶デバイス130から受信されるビデオ、オーディオ、コンテンツ等の情報を受信および処理するためのソフトウェア150とともに構成されてもよい。ソフトウェア150は、ネットワーク120を介して、コンピューティングネットワーク125および記憶デバイス130と通信してもよい。ソフトウェア150は、プロセッサ170上にインストールされてもよい、または別の実施形態では、ソフトウェアの特徴および機能性は、プロセッサ170の中に統合されてもよい。プロセッサ170はまた、ユーザ108の近傍からの外部記憶デバイス上に遠隔で記憶された情報に依拠せずに、迅速なアクセスのために、プロセッサ170によって使用される情報を記憶するためのローカル記憶デバイス140とともに構成されてもよい。他の実施形態では、プロセッサ170は、頭部搭載型システム160内に統合されてもよい。
ユーザの物理的環境105は、ユーザが、動き回り、頭部搭載型システム160を通してユーザの物理的環境105を視認するにつれた、ユーザ108の物理的周囲である。例えば、図1を参照すると、ユーザの物理的環境105は、2つの壁(例えば、主壁180および側壁184であって、主壁および側壁は、ユーザのビューに相対的である)と、テーブル188とを伴う、部屋を示す。主壁180上には、2Dコンテンツをその上に投影するための候補表面であり得る、物理的境界を伴う物理的表面(例えば、壁に掛けられた、またはそれに取り付けられた絵画、または窓等)を示すように黒色実線によって描写される、長方形表面182が、存在する。側壁184上には、物理的境界を伴う物理的表面(例えば、壁に掛けられた、またはそれに取り付けられた絵画、または窓等)を示すように黒色実線によって描写される、第2の長方形表面186が、存在する。テーブル188上には、異なるオブジェクト、すなわち、1)ある2Dコンテンツが記憶および表示され得る、仮想Rolodex190、2)ある2Dコンテンツをその上に投影するための物理的境界を伴う物理的表面を表すように黒色実線によって描写される、水平表面192、および3)例えば、ある2Dコンテンツが記憶および表示され得る、スタックされた仮想新聞を表すように黒色点線によって描写される、仮想四角形表面194の複数のスタックが存在してもよい。
ウェブブラウザ110はまた、インターネットから、またはイントラネット/プライベートネットワーク内のブログページを表示してもよい。加えて、ウェブブラウザ110はまた、デジタル2Dコンテンツを表示する、任意の技術であってもよい。2Dコンテンツは、例えば、ウェブページ、ブログ、デジタル写真、ビデオ、ニュース記事、ニュースレター、または音楽を含んでもよい。2Dコンテンツは、ネットワーク120を介してユーザ108によってアクセス可能な記憶デバイス130内に記憶されてもよい。いくつかの実施形態では、2Dコンテンツはまた、ストリーミングコンテンツ、例えば、ライブビデオフィードまたはライブオーディオフィードであってもよい。記憶デバイス130は、例えば、データベース、ファイルシステム、持続的メモリデバイス、フラッシュドライブ、キャッシュ等を含んでもよい。いくつかの実施形態では、2Dコンテンツ(例えば、ウェブページ)を含有する、ウェブブラウザ110は、コンピューティングネットワーク125を介して表示される。
コンピューティングネットワーク125は、記憶デバイス130にアクセスし、ウェブブラウザ110上のウェブページ内に表示するための2Dコンテンツを読み出し、記憶する。いくつかの実施形態では、ローカル記憶デバイス140は、着目2Dコンテンツをユーザ108に提供してもよい。ローカル記憶デバイス140は、例えば、フラッシュドライブ、キャッシュ、ハードドライブ、データベース、ファイルシステム等を含んでもよい。ローカル記憶デバイス140内に記憶される情報は、最近アクセスされた2Dコンテンツまたは3D空間内に最近表示されたコンテンツを含んでもよい。ローカル記憶デバイス140は、2Dコンテンツを分解し、2Dコンテンツを3D空間環境(例えば、ユーザの物理的環境105内の3D表面)上に表示することに役立てるためのソフトウェア150に、あるコンテンツをローカルで提供することによって、環境100のシステムに対して性能において改良を可能にする。
ソフトウェア150は、非一過性コンピュータ可読媒体内に記憶され、ユーザの物理的環境105内に表示されるべき2Dコンテンツを分解する機能を果たす、ソフトウェアプログラムを含む。ソフトウェア150は、プロセッサ170上で起動されてもよく、プロセッサ170は、ユーザ108にローカルで取り付けられる、またはいくつかの実施形態では、ソフトウェア150およびプロセッサ170は、頭部搭載型システム160内に含まれてもよい。いくつかの実施形態では、ソフトウェア150の特徴および機能の一部は、ユーザ108から遠隔のコンピューティングネットワーク125上で記憶および実行されてもよい。例えば、いくつかの実施形態では、2Dコンテンツを分解するステップは、コンピューティングネットワーク125上で生じてもよく、分解の結果は、記憶デバイス130内に記憶されてもよく、分解された2Dコンテンツをその上に提示するためのユーザのローカル環境の表面のインベントリ化は、プロセッサ170内で生じてもよく、表面およびマッピングのインベントリは、ローカル記憶デバイス140内に記憶される。一実施形態では、2Dコンテンツを分解し、ローカル表面をインベントリ化し、2Dコンテンツの要素をローカル表面にマッピングし、2Dコンテンツの要素を表示するプロセスは全て、プロセッサ170およびソフトウェア150内でローカルで生じてもよい。
頭部搭載型システム160は、ユーザインターフェースと、ユーザ感知システムと、環境感知システムと、プロセッサと(全て図示せず)を含む、仮想現実(VR)または拡張現実(AR)頭部搭載型システムであってもよい。頭部搭載型システム160は、ユーザ108に、デジタル世界と相互作用し、それを体験するためのインターフェースを提示する。そのような相互作用は、ユーザおよびデジタル世界、環境100とインターフェースをとる1人以上の他のユーザ、およびデジタルおよび物理的世界内のオブジェクトを伴い得る。
ウェブページ分解
ユーザインターフェースは、2Dコンテンツを受信するステップと、ユーザインターフェースを通したユーザ入力によって、2Dコンテンツ内の要素を選択するステップとを含んでもよい。ユーザインターフェースは、触覚的インターフェースデバイス、キーボード、マウス、ジョイスティック、運動捕捉コントローラ、光学追跡デバイス、およびオーディオ入力デバイスのうちの少なくとも1つまたはそれらの組み合わせであってもよい。触覚的インターフェースデバイスは、人間が、身体感覚および移動を通してコンピュータと相互作用することを可能にする、デバイスである。触覚的とは、アクションまたはコンピューティングデバイス上でプロセスを実施するための触知的フィードバックまたは他の身体感覚を包含する、人間とコンピュータの相互作用技術のタイプを指す。いくつかの実施形態では、制御インターフェースは、例えば、ユーザ入力をシステムに提供し、システムが対応するコマンドを実行することにより応答することによって、ユーザが、MRディスプレイシステムと相互作用し得るような、ユーザインターフェースであってもよい。
ユーザ感知システムは、頭部搭載型システム160を装着しているユーザ108に関連する、ある特徴、特性、または情報を検出するように動作可能な1つ以上のセンサ162を含んでもよい。例えば、いくつかの実施形態では、センサ162は、例えば、以下、すなわち、縮瞳/散瞳、各瞳孔の角度測定値/位置付け、球形度、眼形状(眼形状は、経時的に変化するため)、および他の解剖学的データのうちの1つ以上のもの等、ユーザ108のリアルタイム光学特性/測定値を検出することが可能なカメラまたは光学検出/走査回路を含んでもよい。本データは、頭部搭載型システム160によって使用され、ユーザの視認体験を向上させ得る、情報(例えば、ユーザの視覚的視点)を提供する、または計算するために使用されてもよい。
環境感知システムは、データをユーザの物理的環境105から取得するために、1つ以上のセンサ164を含んでもよい。センサ164によって検出されるオブジェクトまたは情報は、頭部搭載型システム160への入力として提供されてもよい。いくつかの実施形態では、本入力は、仮想世界とのユーザ相互作用を表してもよい。例えば、デスク(例えば、テーブル188)上の仮想キーボードを視認しているユーザ(例えば、ユーザ108)は、ユーザが仮想キーボード上でタイプしているかのように、その指を用いてジェスチャしてもよい。移動している指の運動が、センサ164によって捕捉され、頭部搭載型システム160に入力として提供されてもよく、入力は、仮想世界を変化させるために使用されてもよい、または、新しい仮想オブジェクトを作成するために使用されてもよい。
センサ164は、例えば、持続的および/または断続的に投影される赤外線構造化光を通して、例えば、場面情報を解釈するための概して外向きに面したカメラまたはスキャナを含んでもよい。環境感知システムは、静的オブジェクト、動的オブジェクト、人々、ジェスチャおよび種々の照明、周囲および音響条件を含む、ローカル環境を検出し、位置合わせすることによって、ユーザ108の周囲のユーザの物理的環境105の1つ以上の要素をマッピングするために使用されてもよい。したがって、いくつかの実施形態では、環境感知システムは、ローカルコンピューティングシステム(例えば、プロセッサ170)内に埋め込まれ、センサ164によって検出された1つ以上のオブジェクトまたは情報をデジタル的に再構築するように動作可能である、画像ベースの3D再構築ソフトウェアを含んでもよい。
一例示的実施形態では、環境感知システムは、以下、すなわち、モーションキャプチャデータ(ジェスチャ認識を含む)、深度感知、顔認識、オブジェクト認識、一意のオブジェクト特徴認識、音声/オーディオ認識および処理、音響源位置特定、雑音低減、赤外線または類似レーザ投影、およびモノクロおよび/またはカラーCMOSセンサ(または他の類似センサ)、視野センサ、および種々の他の光学増強センサのうちの1つ以上のものを提供する。環境感知システムは、上記に議論されるもの以外の他のコンポーネントを含んでもよいことを理解されたい。
上記に述べられたように、プロセッサ170は、いくつかの実施形態では、頭部搭載型システム160の他のコンポーネントと統合されてもよい、環境100のシステムの他のコンポーネントと統合されてもよい、または図1に示されるように、隔離されたデバイス(ウェアラブルまたはユーザ108と別個)であってもよい。プロセッサ170は、物理的有線接続を通して、または、例えば、モバイルネットワーク接続(携帯電話およびデータネットワークを含む)、Wi-Fi、Bluetooth(登録商標)、または任意の他の無線接続プロトコル等の無線接続を通して、頭部搭載型システム160の種々のコンポーネントに接続されてもよい。プロセッサ170は、メモリモジュール、統合されたおよび/または付加的グラフィック処理ユニット、無線および/または有線インターネットコネクティビティ、およびソース(例えば、コンピューティングネットワーク125、および頭部搭載型システム160からのユーザ感知システムおよび環境感知システム)からのデータを画像およびオーディオデータに変換することが可能なコーデックおよび/またはファームウェアを含んでもよく、画像/ビデオおよびオーディオは、ユーザインターフェース(図示せず)を介して、ユーザ108に提示されてもよい。
プロセッサ170は、頭部搭載型システム160の種々のコンポーネントのためのデータ処理と、頭部搭載型システム160とウェブブラウザ110およびコンピューティングネットワーク125によって表示またはアクセスされ得るウェブページからの2Dコンテンツとの間のデータ交換とをハンドリングする。例えば、プロセッサ170は、ユーザ108とコンピューティングネットワーク125との間のデータストリーミングをバッファおよび処理するために使用され、それによって、スムーズで、持続的で、かつ高忠実性のユーザ体験を可能にすることができる。
ウェブページからの2Dコンテンツを要素に分解し、要素を3D環境内の表面に表示されるようにマッピングするステップは、知的かつ論理的様式において遂行されてもよい。所定のルールのセットが、2Dコンテンツ/ウェブページ内で識別されたあるタイプの要素/コンテンツを設置すべき場所を推奨、提案、または決定付けるために利用可能であり得る。例えば、あるタイプの2Dコンテンツ要素は、1つ以上の要素を記憶および表示するために適している物理的または仮想オブジェクト表面にマッピングされる必要があり得る、1つ以上の要素を有し得る一方、他のタイプの2Dコンテンツ要素は、ウェブページ内のメインビデオまたはメイン記事等の単一オブジェクトであり得、その場合、単一オブジェクトは、単一オブジェクトをユーザに表示するために最も道理にかなう表面にマッピングされ得る。
図2は、いくつかの実施形態による、2Dコンテンツの要素のユーザの3D環境への例示的マッピングを図示する。環境200は、ウェブブラウザ110によって表示またはアクセスされる、2Dコンテンツ(例えば、ウェブページ)と、ユーザの物理的環境105とを描写する。矢印を伴う点線は、ユーザの物理的環境105上にマッピングおよび表示される、2Dコンテンツ(例えば、ウェブページ)からの要素(例えば、特定のタイプのコンテンツ)を描写する。2Dコンテンツからのある要素は、ウェブ設計者ヒントまたは事前に定義されたブラウザルールのいずれかに基づいて、ユーザの物理的環境105内のある物理的または仮想オブジェクトにマッピングされる。
実施例として、ウェブブラウザ110によってアクセスまたは表示される、2Dコンテンツは、複数のタブを有する、ウェブページであってもよく、現在のアクティブなタブ260は、表示され、二次タブ250は、現在、隠蔽されており、ウェブブラウザ110上に表示するために選択されるまで隠蔽される。アクティブタブ260内に表示されるのは、典型的には、ウェブページである。本特定の実施例では、アクティブタブ260は、メインビデオ220と、ユーザコメント230と、提案されるビデオ240とを含む、YOUTUBE(登録商標)ページを表示する。本例示的実施例である図2に描写されるように、メインビデオ220は、垂直表面182上に表示されるようにマッピングされてもよく、ユーザコメント230は、水平表面192上に表示されるようにマッピングされてもよく、提案されるビデオ240は、垂直表面182と異なる垂直表面186上に表示されるようにマッピングされてもよい。加えて、二次タブ250は、仮想Rolodex190および/またはマルチスタック仮想オブジェクト194上に表示されるようにマッピングされてもよい。いくつかの実施形態では、二次タブ250内の具体的コンテンツは、マルチスタック仮想オブジェクト194内に記憶されてもよい。他の実施形態では、二次タブ250内に常駐するコンテンツ全体が、マルチスタック仮想オブジェクト194上に記憶および/または表示されてもよい。同様に、仮想Rolodex190は、二次タブ250からの具体的コンテンツを含有してもよい、または仮想Rolodex190は、二次タブ250内に常駐するコンテンツ全体を含有してもよい。
垂直表面182は、窓ガラスまたは写真フレーム等の部屋(ユーザの物理的環境105として描写される)の主壁180上にすでにあり得る、任意のタイプの構造であってもよい。いくつかの実施形態では、垂直表面182は、空壁であってもよく、頭部搭載型システム160は、ユーザ108がメインビデオ220を閲覧するために適切な垂直表面182のフレームの最適サイズを決定する。垂直表面182のサイズの本決定は、少なくとも部分的に、主壁180からのユーザ108の距離、メインビデオ220のサイズおよび寸法、メインビデオ220の品質、非被覆壁空間の量、および/または主壁180を見ているときのユーザの姿勢に基づいてもよい。例えば、メインビデオ220の品質が、高精細である場合、垂直表面182のサイズは、メインビデオ220の品質が垂直表面182によって悪影響を受けないであろうため、より大きくてもよい。しかしながら、メインビデオ220のビデオ品質が、不良品質である場合、大垂直表面182を有することは、ビデオ品質を著しく下げ得、その場合、本開示の方法およびシステムは、垂直表面182をより小さくサイズ変更/再定義し、ピクシレーションからの不良ビデオ品質を最小限にしてもよい。
垂直表面186は、垂直表面182のように、ユーザの物理的環境105内の隣接する壁(例えば、側壁184)上の垂直表面である。いくつかの実施形態では、ユーザ108の配向に基づいて、側壁184および垂直表面186は、勾配が付けられた傾斜表面であるように現れてもよい。勾配が付けられた傾斜表面は、垂直および水平表面に加えた、表面の配向のタイプであってもよい。YOUTUBE(登録商標)ウェブページから提案されるビデオ240は、側壁184上の垂直表面186上に設置され、ユーザ108が、本実施例では、単に、その頭部を若干右に移動させることによって、提案されるビデオを閲覧することが可能となることを可能にしてもよい。
仮想Rolodex190は、頭部搭載型システム160によって作成され、ユーザ108に表示される、仮想オブジェクトである。仮想Rolodex190は、ユーザ108が、仮想ページのセットを通して双方向にサイクルさせる能力を有してもよい。仮想Rolodex190は、ウェブページ全体を含有してもよい、または個々の記事またはビデオまたはオーディオを含有してもよい。本実施例に示されるように、仮想Rolodex190は、二次タブ250からのコンテンツの一部を含有してもよい、またはいくつかの実施形態では、仮想Rolodex190は、二次タブ250のページ全体を含有してもよい。ユーザ108は、単に、仮想Rolodex190内の特定のタブに合焦することによって、仮想Rolodex190内のコンテンツを通して双方向にサイクルさせてもよく、頭部搭載型システム160内の1つ以上のセンサ(例えば、センサ162)は、ユーザ108の眼焦点を検出し、仮想Rolodex190内のタブを通してサイクルさせ、故に、ユーザ108のために、関連情報を取得するであろう。いくつかの実施形態では、ユーザ108は、仮想Rolodex190からの関連情報を選定し、頭部搭載型システム160に、関連情報を利用可能な周囲表面またはユーザ108に近接近する仮想ディスプレイ等のさらに別の仮想オブジェクト(図示せず)のいずれか上に表示するように命令してもよい。
仮想Rolodex190に類似する、マルチスタック仮想オブジェクト194は、1つ以上のタブからのフルコンテンツ、またはユーザ108が、ブックマークした、将来的閲覧のために保存した、または開いている(すなわち、非アクティブタブ)、種々のウェブページまたはタブからの特定のコンテンツに及ぶ、コンテンツを含有してもよい。マルチスタック仮想オブジェクト194はまた、新聞の実世界スタックに類似する。マルチスタック仮想オブジェクト194内の各スタックは、特定の新聞記事、ページ、雑誌発行物、レシピ等に関連してもよい。当業者は、2Dコンテンツ要素または2Dコンテンツソースからのコンテンツを設置するための表面を提供する本同一目的を遂行するために、複数のタイプの仮想オブジェクトが存在し得ることを理解し得る。
当業者は、ウェブブラウザ110によってアクセスまたは表示される2Dコンテンツが、単に、ウェブページ以上のものであってもよいことを理解し得る。いくつかの実施形態では、2Dコンテンツは、写真アルバムからの写真、映画からのビデオ、TV番組、YOUTUBE(登録商標)ビデオ、双方向フォーム等であってもよい。さらに他の実施形態では、2Dコンテンツは、電子書籍または書籍を表示する任意の電子手段であってもよい。最後に、他の実施形態では、2Dコンテンツは、2Dコンテンツが、概して、情報が現在提示される方法であるため、これまで説明されていない他のタイプのコンテンツであってもよい。電子デバイスが、2Dコンテンツを消費することができる場合、2Dコンテンツは、頭部搭載型システム160によって、2Dコンテンツを分解し、3D設定(例えば、AR)内に表示するために使用されることができる。
いくつかの実施形態では、アクセスされた2Dコンテンツをマッピングするステップは、2Dコンテンツを抽出するステップ(例えば、ブラウザから)と、それを表面上に載上するステップ(コンテンツが、もはやブラウザ内になく、表面上にのみあるように)とを含んでもよく、いくつかの実施形態では、マッピングは、コンテンツを複製するステップ(例えば、ブラウザから)と、それを表面上に載上するステップ(コンテンツが、ブラウザ内および表面上の両方にあるように)とを含むことができる。
2Dコンテンツを分解するステップは、インターネットおよびコンピュータ関連技術の領域に存在する、技術的問題である。ウェブページ等の2Dコンテンツは、HTML等のあるタイプのプログラミング言語を使用して構築され、コンピュータプロセッサおよび技術的コンポーネントに、ウェブページ内の要素をユーザのための画面上に表示する場所および方法を命令する。上記に議論されるように、ウェブ設計者は、典型的には、2Dキャンバス(例えば、画面)の限界内で作業し、要素(例えば、コンテンツ)を2Dキャンバス内で設置および表示する。HTMLタグは、HTMLドキュメントまたはHTMLドキュメント内の一部がフォーマットされる方法を決定するために使用される。いくつかの実施形態では、(抽出または複製された)2Dコンテンツは、HTMLタグ参照を維持することができ、いくつかの実施形態では、HTMLタグ参照は、再定義されてもよい。
図3は、いくつかの実施形態による、3D環境内に表示されるべき2Dコンテンツを分解するための方法を図示する、フロー図である。本方法は、310において、2Dコンテンツを識別するステップと、320において、2Dコンテンツ内の要素を識別するステップと、330において、周囲表面を識別するステップと、340において、識別された2Dコンテンツ内の識別された要素を周囲表面を識別するステップから識別された表面にマッピングするステップと、350において、要素を仮想コンテンツとして選択された表面上に表示するステップとを含み、選択された表面は、要素の識別された表面へのマッピングから選択される。
310において、2Dコンテンツを識別するステップは、デジタルコンテンツを検索するために、頭部搭載型システム160の使用を伴ってもよい。310において、2Dコンテンツを識別するステップはまた、ネットワーク120に接続されるサーバ(例えば、記憶デバイス130)上のデジタルコンテンツにアクセスするステップを含んでもよい。310において、2Dコンテンツを識別するステップは、ユーザ108に関心があるウェブページに関して、インターネットをブラウジングするステップを含んでもよい。いくつかの実施形態では、310において、2Dコンテンツを識別するステップは、インターネット上でコンテンツを検索するためにユーザ108によって与えられる、音声アクティブ化コマンドを含んでもよい。例えば、ユーザ108は、デバイス(例えば、頭部搭載型システム160)と相互作用してもよく、ユーザ108は、ビデオを検索するためのコマンドを発し、次いで、ビデオの名称およびビデオの簡単な説明を伝えることにより、デバイスに特定のビデオを検索するように求めることによって、インターネット上の特定のビデオを検索する。デバイスは、次いで、インターネットを検索し、ビデオを2Dブラウザ上に取り込み、ユーザ108が、デバイスの2Dブラウザ上に表示されるにつれて、ビデオを見ることを可能にしてもよい。ユーザ108は、次いで、ビデオがユーザ108が空間3D環境内で閲覧することを所望するであろうビデオであることを確認してもよい。
いったん2Dコンテンツが、識別されると、本方法は、320において、2Dコンテンツ内の要素を識別し、ユーザ108に表示するために、2Dコンテンツ内の利用可能な要素をインベントリ化する。2Dコンテンツ内の要素は、例えば、ウェブページ上に掲載されたビデオ、記事、およびニュースレター、ソーシャルメディアウェブサイト上のコメントおよびポスティング、ブログポスト、種々のウェブサイト上に掲載された写真、オーディオ書籍等を含んでもよい。2Dコンテンツ(例えば、ウェブページ)内のこれらの要素は、特定の要素が設置されるウェブページ上の場所、およびある場合には、要素がウェブページ上に表示されるべき時間および方法を定義するために、コンテンツ設計者によって提供されるHTMLタグと関連付けられた属性を有する、HTMLタグを含有してもよい。いくつかの実施形態では、本開示の方法およびシステムは、340におけるマッピングプロセスを補助し、要素を3D設定内に表示するための場所および方法を決定するために、これらのHTMLタグおよび属性をコンテンツ設計者によって提供されるヒントおよび提案として利用するであろう。例えば、下記は、ウェブページ開発者によって提供される、例示的HTMLウェブページコードである。
Figure 0007112502000001
ウェブページ開発者によって提供される、例示的HTMLウェブページコードは、メインビデオをウェブページ上に表示する方法に関する選好と、推奨される(または提案される)ビデオを表示する方法に関する選好とを含む。特に、本HTMLウェブページコードは、「virtical」のタイプ値を使用して、ビデオを表示するための垂直表面を指定する、「style」のタグを使用して、メインビデオを表示するための方法を規定する。加えて、「style」タグ内に、ウェブページ開発者によって提供される付加的ヒントが、どのウェブページ(例えば、メインビデオ)内のHTML要素/コンテンツがどの潜在的表面積にマッピングされるべきかを優先順位化するために使用するためのマッチングアルゴリズムに関する「priority」選好を含んでもよい。例示的HTMLウェブページコードでは、優先順位は、垂直平面レイアウトを有するビデオに関して、100の値に設定され、本実施例では、より高い優先順位値は、より高い優先順位を示す。加えて、本実施例では、選好は、提案されるビデオを「horizontal」のタイプ値を有するスタック内にスタックレイアウトで設置するように、ウェブページ開発者によって示され、スタックされたオブジェクト(例えば、この場合、別の提案されるビデオに関連して提案されるビデオ)間の距離は、20cmとなるべきである。
図4は、いくつかの実施形態による、2Dコンテンツ内の要素を識別するための方法を図示する、フロー図である。図4は、いくつかの実施形態による、図3の320における2Dコンテンツ内の要素を識別するステップを開示する、詳細なフローである。図4は、410において、図3の320において2Dコンテンツ内の要素を識別するステップに類似する、2Dコンテンツ内の要素を識別するステップから開始する。本方法は、420において、タグからコンテンツの設置に関する属性を識別する次のステップに進む。上記に議論されるように、ウェブページ設計者は、ウェブページを設計および構成する際、ウェブページ内の要素とHTMLタグを関連付け、各要素を表示するための場所および方法を定義し得る。これらのHTMLタグはまた、ウェブページの特定の部分上への要素の設置に関する属性を含んでもよい。頭部搭載型システム160が、検出し、システムの他のコンポーネントと協調し、特定の要素が表示され得る場所に関する入力として使用するであろうものは、これらのHTMLタグおよびその属性である。
ヒントまたはタグを各要素から抽出するステップが、430において実施される。ヒントまたはタグは、典型的には、2Dコンテンツ/ウェブページのコンテンツ設計者および/またはウェブページ開発者によって提供される、フォーマット化ヒントまたはフォーマット化タグである。上記に議論されるように、コンテンツ設計者は、例えば、「ウェブページ開発者によって提供される例示的HTMLウェブページコード」に示されるように、HTMLタグの形態において、命令またはヒントを提供し、ウェブブラウザ110に、2Dコンテンツの要素をページまたは画面の特定の部分内に表示するように命令してもよい。いくつかの実施形態では、ウェブページ設計者は、付加的HTMLタグ属性を使用して、付加的フォーマット化ルールを定義してもよい。例えば、ユーザが、具体的色(例えば、赤色)に対して低減された感度を有する場合、赤色を表示せず、代わりに、別の色を使用する、または上記に議論されるように、垂直表面上に表示されるべき選好を有するビデオが、垂直表面上に表示されることができない場合、代替として、ビデオを別の(物理的)表面上に表示する、または仮想表面を作成し、ビデオを仮想表面上に表示する。下記は、HTMLページを通して解析し、ヒント/タグをHTMLページ内の各要素から抽出するためにブラウザ内に実装される、例示的HTMLページパーサである。
Figure 0007112502000002
Figure 0007112502000003
Figure 0007112502000004
例示的HTMLページパーサは、2Dコンテンツ(例えば、ウェブページ)内の特定の要素/オブジェクトに関する表示選好を提供するために使用される、HTMLタグを含有するHTMLページが、解析および識別および/または抽出/複製され得る方法を示す。例示的HTMLページパーサに開示されるように、2Dコンテンツ(例えば、ウェブページ)内の要素は、開示されるサンプルコードを使用して解析されることができる。種々の要素名および値を使用する、あるHTMLタグが、HTMLページパーサ(例えば、ML.layout、ML.container等)によって識別/抽出され、特定の要素が3D環境内でユーザに表示されるための方法(例えば、要素を特定の表面にマッピングすることによって)を決定してもよい。
1つ以上の要素のための代替表示形態をルックアップ/検索するステップが、440において実施される。あるフォーマット化ルールが、ウェブページ上の画像のために規定されてもよい。例えば、ウェブブラウザ110が、画像の3Dバージョンを表示することが可能である場合、ウェブページ設計者は、付加的タグを設置し、または特定のタグのある属性を定義し、ウェブブラウザ110が、画像が画像の代替バージョン(例えば、画像の3Dバージョン)を有し得ることを認識することを可能にしてもよい。ウェブブラウザ110は、次いで、3D対応ブラウザ内に表示されるべき画像の代替バージョン(例えば、画像の3Dバージョン)にアクセスしてもよい。
2Dコンテンツ内の識別された要素を記憶するステップが、450において実施される。本方法は、マッピングルーチン(例えば、図3の340における要素を識別された表面にマッピングするステップ)によって使用され、要素を特定の表面にマッピングするために、識別された要素を非一過性記憶媒体の中に記憶してもよい。非一過性記憶媒体は、記憶デバイス130またはローカル記憶デバイス140等のデータ記憶デバイスを含んでもよい。要素は、下記に説明される図5に開示されるテーブル等の特定のテーブル内に記憶されてもよい。いくつかの実施形態では、2Dコンテンツ内の識別された要素は、一過性記憶媒体内に記憶されてもよい。
図5は、いくつかの実施形態による、2Dコンテンツから分解された要素を記憶するためのテーブルの実施例を示す。要素テーブル500は、図4の410において2Dコンテンツ内の要素を識別するステップの結果をデータベース内に記憶し得る、例示的テーブルである。要素テーブル500は、例えば、要素識別(ID)510、要素が3D表面上に設置され得る場所に関する選好インジケータ520、特定の要素が親要素内に含まれる場合の親要素ID530、要素が子要素を含有し得る場合の子要素ID540、および要素を表示するために使用される表面または仮想オブジェクトに要素の複数のバージョンを表示することと互換性を持たせる必要性を正当化し得る、要素が複数の実施形態を含有するかどうかを示すための多重エンティティインジケータ550を含む、2Dコンテンツ内の1つ以上の要素についての情報を含む。親要素は、サブ要素(例えば、子要素)を含有し得る、2Dコンテンツ内の要素/オブジェクトである。例えば、220の値を有する、要素ID(例えば、メインビデオ220)は、260の親要素ID値(例えば、アクティブタブ260)を有し、これは、メインビデオ220が、アクティブタブ260の子要素であることを示す。または換言すると、メインビデオ220は、アクティブタブ260内に含まれる。同一実施例を継続すると、メインビデオ220は、子要素ID230(例えば、ユーザコメント230)を有し、これは、ユーザコメント230がメインビデオ220と関連付けられることを示す。当業者は、要素テーブル500が、関係データベースまたは任意のタイプのデータベース内のテーブルであってもよいことを理解し得る。加えて、要素テーブル500は、図4の410において2Dコンテンツ内の要素を識別するステップの結果を含有する、コンピュータメモリ(例えば、キャッシュ)内のアレイであってもよい。
要素テーブル500内の行560の各行は、ウェブページ内からの要素に対応する。要素ID510は、要素毎の一意の識別子(例えば、要素ID)を含有する、列である。いくつかの実施形態では、要素の一意性は、テーブル内の要素ID510列と別の列(例えば、コンテンツ設計者によって識別される1つを上回る選好が存在する場合の選好520列)の組み合わせとして定義されてもよい。選好520は、その値が、少なくとも部分的に、コンテンツ設計者/開発者(例えば、ウェブページ設計者)によって定義され、図4の430においてヒントまたはタグを各要素から抽出するステップに開示されるように、本システムおよび方法によって識別される、HTMLタグおよび属性に基づいて決定され得る、列である。他の実施形態では、選好520列は、少なくとも部分的に、所定のブラウザルールに基づいて決定され、ウェブページ内のあるタイプの要素が3D環境内に表示されるべき場所を規定してもよい。これらの所定のルールは、本システムおよび方法に、要素を3D環境内に最良に設置するための場所を決定するための提案を提供し得る。
親要素ID530は、本行内の本特定の要素が、その中に表示される、またはそれに関連する、親要素の要素IDを含有する、列である。ウェブページ内の特定の要素は、埋め込まれ得る、ページの別の要素内に設置され得る、またはページ上の別の要素に関連し得る。例えば、本実施形態では、要素ID510列の第1のエントリは、図2のメインビデオ220に対応する要素ID220の値を記憶する。メインビデオ220に対応する選好520列内の選好値は、HTMLタグおよび/または属性に基づいて決定され、本実施形態では、本要素が、ユーザの物理的環境105の「主要」な場所内に設置されるべきであるとされる。ユーザ108の現在の場所に応じて、その主要な場所は、居間内の壁、またはユーザ108が現在見ている台所のコンロの上のフードであってもよい、または広開放空間内に居る場合、メインビデオ220がその上に投影され得る、ユーザ108の視線の表面に投影される仮想オブジェクトであってもよい。2Dコンテンツの要素がユーザ108に表示される方法に関するさらなる情報は、後の節に開示されるであろう。本実施例を継続すると、親要素ID530列は、図2のアクティブタブ260に対応する、要素ID260の値を記憶する。したがって、メインビデオ220は、アクティブタブ260の子である。
子要素ID540は、本行内の本特定の要素が、その中に表示されている、またはそれに関連する、子要素の要素IDを含有する、列である。ウェブページ内の特定の要素は、内蔵される、ページの別の要素内に設置される、またはページ上の別の要素に関連してもよい。本実施例を継続すると、子要素ID540列は、図2のユーザコメント230に対応する、要素ID230の値を記憶する。
多重エンティティインジケータ550は、要素を表示するために使用される表面または仮想オブジェクトに要素の複数のバージョンを表示することと互換性を持たせる必要性を正当化し得る、要素が多重エンティティを含有するかどうかを示す、列である(例えば、要素は、ユーザコメント230であってもよく、メインビデオ220に関して、利用可能な1つを上回るコメントが存在してもよい)。本実施例を継続すると、多重エンティティインジケータ550列は、「N」の値を記憶し、メインビデオ220が、複数のメインビデオをアクティブタブ260内に有していない、またはそれに対応しない(例えば、メインビデオ220の複数のバージョンが「ない」)ことを示す。
本実施例を継続すると、要素ID510列の第2のエントリは、図2のユーザコメント230に対応する、要素ID230の値を記憶する。ユーザコメント230に対応する、選好520列内の選好値は、「水平」の選好を示し、ユーザコメント230が、ユーザの物理的環境105内のいずれかの場所の「水平」表面上に設置されるべきであることを示す。上記に議論されるように、水平表面は、ユーザの物理的環境105内の利用可能な水平表面に基づいて決定されるであろう。いくつかの実施形態では、ユーザの物理的環境105は、水平表面を有していない場合があり、その場合、本開示のシステムおよび方法は、水平表面を伴う仮想オブジェクトを識別/作成し、ユーザコメント230を表示してもよい。本実施例を継続すると、親要素ID530列は、図2のメインビデオ220に対応する、値要素ID220を記憶し、多重エンティティインジケータ550列は、「Y」の値を記憶し、ユーザコメント230が1つを上回る値(例えば、1つを上回るユーザコメント)を含有し得ることを示す。
要素テーブル500内の残りの行は、ユーザ108に関心がある残りの要素に関する情報を含有する。当業者は、410において2Dコンテンツ内の要素を識別するステップの結果を記憶することが、いったん本分析が2Dコンテンツ上で実施されると、別のユーザが同一2Dコンテンツに関心がある場合に、2Dコンテンツの将来的分析のために本システムおよび方法によって留保され得るため、コンピュータ自体の機能を改良することを理解し得る。本特定の2Dコンテンツを分解するためのシステムおよび方法は、以前にすでに完了されているため、回避されてもよい。
いくつかの実施形態では、要素テーブル500は、記憶デバイス130内に記憶されてもよい。他の実施形態では、要素テーブル500は、最近閲覧した2Dコンテンツへの迅速なアクセスのために、または最近閲覧された2Dコンテンツへの可能性として考えられる再訪問のために、ローカル記憶デバイス140内に記憶されてもよい。さらに他の実施形態では、要素テーブル500は、ユーザ108から遠隔に位置する記憶デバイス130と、ユーザ108のローカルに位置するローカル記憶デバイス140との両方に記憶されてもよい。
図3に戻ると、本方法は、330において、周囲表面を識別するステップを継続する。ユーザ108は、頭部搭載型システム160を通して、ユーザの物理的環境105を視認し、頭部搭載型システム160が、壁、テーブル、絵画、窓枠、コンロ、冷蔵庫、TV等の周囲表面を捕捉および識別することを可能にしてもよい。頭部搭載型システム160は、頭部搭載型システム160上のセンサおよびカメラのため、または任意の他のタイプの類似デバイスを用いて、ユーザの物理的環境105内の実オブジェクトを認知する。いくつかの実施形態では、頭部搭載型システム160は、ユーザの物理的環境105内で観察される実オブジェクトと記憶デバイス130またはローカル記憶デバイス140内に記憶される仮想オブジェクトをマッチングさせ、そのような仮想オブジェクトとともに利用可能な表面を識別してもよい。実オブジェクトは、ユーザの物理的環境105内で識別されたオブジェクトである。仮想オブジェクトは、ユーザの物理的環境内に物理的に存在しないが、仮想オブジェクトがユーザの物理的環境内に存在するかのように現れるようにユーザに表示され得る、オブジェクトである。例えば、頭部搭載型システム160は、ユーザの物理的環境105内のテーブルの画像を検出してもよい。テーブル画像は、記憶デバイス130またはローカル記憶デバイス140における迅速かつ効率的比較およびマッチングのために、3D点群オブジェクトに縮小されてもよい。実オブジェクトと(例えば、テーブルの)3D点群オブジェクトのマッチングが、検出される場合、本システムおよび方法は、テーブルを表す3D点群オブジェクトが水平表面を有するように定義されるため、水平表面を有するとテーブルを識別するであろう。周囲表面を識別するステップのより詳細な説明は、下記の図6に開示される。
いくつかの実施形態では、仮想オブジェクトは、抽出されたオブジェクトであってもよく、抽出されたオブジェクトは、ユーザの物理的環境105内で識別された物理的オブジェクトであってもよいが、付加的処理および関連付けが、物理的オブジェクト自体上で行われることが不可能であろう、抽出されたオブジェクトに行われ得るように(例えば、物理的オブジェクトの色を変化させ、物理的オブジェクトの特定の特徴をハイライトする等のために)、物理的オブジェクトの場所内の仮想オブジェクトとしてユーザに表示される。加えて、抽出されたオブジェクトは、2Dコンテンツ(例えば、ブラウザからのウェブページ)から抽出され、ユーザ108に表示される、仮想オブジェクトであってもよい。例えば、ユーザ108は、ユーザの物理的環境105内に表示されるように、2Dコンテンツ/ウェブページ上に表示されるウェブページからの長椅子等のオブジェクトを選定してもよい。システムは、選定されたオブジェクト(例えば、長椅子)を認識し、抽出されたオブジェクト(例えば、長椅子)がユーザの物理的環境105内に物理的に存在するかのように、抽出されたオブジェクト(例えば、長椅子)をユーザ108に表示してもよい。加えて、仮想オブジェクトはまた、ユーザの物理的環境105に物理的に存在さえしないが、2Dコンテンツからのコンテンツを表示する観点から、あるコンテンツをユーザに提示するために理想的ディスプレイ表面であり得る、コンテンツを表示するための表面(例えば、あるコンテンツを閲覧するためにユーザに近接近する透明ディスプレイ画面)を有する、オブジェクトを含んでもよい。
図6は、いくつかの実施形態による、ユーザのローカル環境からの表面を識別するための方法を図示する、フロー図である。図6は、図3の330において周囲表面を識別するステップを開示する、詳細なフローである。図6は、610において、図3の330における周囲表面を識別するステップに類似する、ユーザの現在の周囲を識別するステップから開始する。本方法は、620において、ユーザの姿勢を決定する次のステップに進む。
620において、ユーザの姿勢を決定するステップは、ユーザの姿勢が、ユーザの物理的環境105内のオブジェクトに関連してユーザ108に関する目線を提供するであろうため、ユーザの現在の周囲を識別するための重要なステップである。例えば、図1に戻って参照すると、ユーザ108は、頭部搭載型システム160を使用して、ユーザの物理的環境105を観察する。620において、ユーザの姿勢(すなわち、世界に対するベクトルおよび/または原位置情報)を決定するステップは、頭部搭載型システム160が、例えば、(1)接地面に関連したユーザ108の身長、(2)ユーザ108が、部屋を動き回り、その画像を捕捉するために、その頭部を回転させる必要がある角度、および(3)ユーザ108と、テーブル188、主壁180、および側壁184との間の距離を理解することに役立つであろう。加えて、ユーザ108の姿勢はまた、垂直表面182および186を、ユーザの物理的環境105内の他の表面とともに観察するとき、頭部搭載型システム160の角度を決定するために有用である。
630では、本方法は、周囲表面の寸法を識別する。ユーザの物理的環境105内の各候補表面は、タグ付けされ、対応する寸法とともにカテゴリ化される。いくつかの実施形態では、ユーザの物理的環境105内の各候補表面はまた、タグ付けされ、対応する配向とともにカテゴリ化される。本情報は、少なくとも部分的に、表面の寸法、表面の配向、特定の表面から離れたユーザ108の距離、および要素のために表示される必要がある情報のタイプに基づいて、どの要素がどの表面にマッピングされるべきであるかを識別するために有用であろう。例えば、ビデオは、記事のテキストサイズが、小寸法を伴う離れた壁上に表示される場合、小さすぎてユーザが見ることができない場合がある、豊富な情報を含有し得る、ブログまたは記事より離れて示され得る。
640では、本方法は、要素を特定の表面にマッピングするために、マッピングルーチン(例えば、要素を図3の識別された表面340にマッピングするステップ)によって使用されるために、周囲表面のインベントリを非一過性記憶媒体の中に記憶する。非一過性記憶媒体は、記憶デバイス130またはローカル記憶デバイス140等のデータ記憶デバイスを含んでもよい。識別された表面は、下記に説明される図7に開示されるテーブル等の特定のテーブル内に記憶されてもよい。いくつかの実施形態では、識別された表面は、一過性記憶媒体内に記憶されてもよい。
図7は、いくつかの実施形態による、ユーザのローカル環境から識別された表面のインベントリを記憶するためのテーブルの実施例を示す。表面テーブル700は、周囲表面を識別するプロセスの結果をデータベース内に記憶し得る、例示的テーブルである。表面テーブル700は、例えば、表面ID710、幅720、高さ730、配向740、実または仮想インジケータ750、多重性760、および位置770を含む、データ列を有する、ユーザの物理的環境105内の表面についての情報を含む。当業者は、表面テーブル700が、関係データベースまたは任意のタイプのデータベース内のテーブルであってもよいことを理解し得る。加えて、表面テーブル700は、図3の330において周囲表面を識別するステップの結果を記憶する、コンピュータメモリ(例えば、キャッシュ)内のアレイであってもよい。
表面テーブル700内の行780の各行は、ユーザの物理的環境105からの表面、またはユーザの物理的環境105内でユーザ108に表示され得る、仮想表面に対応してもよい。表面ID710は、特定の表面を一意に識別するための一意の識別子(例えば、表面ID)を含有する、列である。特定の表面の寸法は、幅720および高さ730列内に記憶される。
配向740は、ユーザ108に対する表面の配向(例えば、垂直、水平等)を示す、列である。実/仮想インジケータ750は、特定の表面が、ユーザ108によって頭部搭載型システム160を使用して知覚されるようなユーザの物理的環境105内の実オブジェクト上に位置するかどうか、または特定の表面が、頭部搭載型システム160によって生成され、ユーザの物理的環境105内に表示されるであろう、仮想オブジェクト上に位置するかどうかを示す、列である。頭部搭載型システム160は、ユーザの物理的環境105が、ユーザ108が表示することを所望するコンテンツの量を表示するための十分な表面を含有し得ない状況のために、仮想オブジェクトを生成する必要があり得る。これらの実施形態では、頭部搭載型システム160は、表示のために識別されたあるタイプの要素を表示するための適切な表面寸法を有し得る、既存の仮想オブジェクトのデータベースから検索してもよい。データベースは、記憶デバイス130またはローカル記憶デバイス140からのものであってもよい。
多重性760は、表面/オブジェクトが要素の複数のバージョンを表示することと互換性があるかどうかを示す、列である(例えば、要素は、図2の二次タブ250であってもよく、特定のウェブブラウザ110に関して、1つを上回る二次(すなわち、非アクティブ)タブ(例えば、タブあたり1つのウェブページ)が存在してもよい)。図2の仮想Rolodex190に対応する190の値を記憶する、表面ID列の第4のエントリ、および図2のマルチスタック仮想オブジェクト194に対応する194の値を記憶する、表面ID列の第5のエントリの場合等、複数の760列が、「多重」の値を有する場合、本システムおよび方法は、非アクティブタブに関する場合のように、要素の複数のバージョンを有し得る要素が存在する場合、これらが、複数のバージョンに適応し得る表面のタイプであることを把握するであろう。
位置770は、基準フレームまたは基準点に対する物理的表面の位置を示す、列である。物理的表面の位置は、図7における位置770の列ヘッダに示されるように、表面の中心であると事前決定されてもよい。他の実施形態では、位置は、表面の別の基準点(例えば、表面の正面、背面、上面、または底面)であると事前決定されてもよい。位置情報は、ある基準フレームまたは基準点に対する物理的表面の中心からのベクトルおよび/または位置情報として表され得る。表面テーブル700内の位置を表すためのいくつかの方法が、存在し得る。例えば、表面テーブル700内の表面ID194に関する位置の値は、ベクトル情報および基準フレーム情報(例えば、「フレーム」添字)を例証するように理論上表される。x,y,zは、各空間寸法内の3D座標であって、フレームは、3D座標が対する基準フレームを示す。
例えば、表面ID186は、実世界原点に対して(1.3、2.3、1.3)であるように、表面186の中心の位置を示す。別の実施例として、表面ID192は、ユーザ基準フレームに対して(x,y,z)であるように、表面192の中心の位置を示し、表面ID190は、別の表面182に対して(x,y,z)であるように、表面190の中心の位置を示す。基準フレームは、現在使用されている基準フレームを明確にするために重要である。基準フレームとしての実世界原点の場合、これは、概して、静的基準フレームである。しかしながら、基準フレームがユーザ基準フレームである、他の実施形態では、ユーザは、基準フレームを移動させ得、その場合、平面(またはベクトル情報)は、ユーザが、移動しており、ユーザ基準フレームが基準フレームとして使用される場合、ユーザに伴って移動および変化し得る。いくつかの実施形態では、表面毎の基準フレームは、同一(例えば、ユーザ基準フレーム)であってもよい。他の実施形態では、表面テーブル700内に記憶される表面のための基準フレームは、表面に応じて、異なり得る(例えば、ユーザ基準フレーム、世界基準フレーム、部屋内の別の表面またはオブジェクト等)
本実施例では、表面テーブル700内に記憶される値は、図2のユーザの物理的環境105内で識別された物理的表面(例えば、垂直表面182および186および水平表面192)と、仮想表面(例えば、仮想Rolodex190およびマルチスタック仮想オブジェクト194)とを含有する。例えば、本実施形態では、表面ID710列の第1のエントリは、図2の垂直表面182に対応する、表面ID182の値を記憶する。垂直表面182の幅および高さに対応する、幅720列内の幅値および高さ730列内の高さ値は、それぞれ、垂直表面182は、48インチ(W)×36インチ(H)の寸法を有することを示す。同様に、垂直表面182を示す、配向740列内の配向値は、「垂直」の配向を有する。加えて、垂直表面182を示す、実/仮想インジケータ750列内の実/仮想値は、「R」(例えば、実)表面である。複数の760列内の多重性値は、垂直表面182が「単一」(例えば、単一コンテンツのみを保持することができる)であることを示す。最後に、位置770列は、(2.5、2.3、1.2)userのベクトル情報を用いて、ユーザ108に対する垂直表面182の位置を示す。
表面テーブル700内の残りの行は、ユーザの物理的環境105内の残りの表面に関する情報を含有する。当業者は、いったん本分析が周囲表面上で実施されると、別のユーザまたは同一ユーザ108が同一物理的環境105内に居るが、異なる2Dコンテンツに関心がある場合に、ユーザの周囲表面の将来的分析のために、頭部搭載型システム160によって留保され得るため、図3の330において周囲表面を識別するステップの結果を記憶することが、コンピュータ自体の機能を改良することを理解し得る。330において周囲表面を識別するための処理ステップは、これらの処理ステップが以前にすでに完了されているため、回避されてもよい。唯一の差異は、少なくとも部分的に、異なる2Dコンテンツを伴う要素を識別する要素テーブル500に基づいて、利用可能である付加的または異なる仮想オブジェクトを識別するステップを含み得る。
いくつかの実施形態では、表面テーブル700は、記憶デバイス130内に記憶される。他の実施形態では、表面テーブル700は、最近閲覧した2Dコンテンツへの迅速アクセスのために、または最近閲覧した2Dコンテンツへの可能性として考えられる再訪問のために、ユーザ108のローカル記憶デバイス140内に記憶される。さらに他の実施形態では、表面テーブル700は、ユーザ108から遠隔に位置する記憶デバイス130と、ユーザ108のローカルに位置するローカル記憶デバイス140との両方に記憶されてもよい。
図3に戻ると、本方法は、340において、320において2Dコンテンツ内の要素を識別するステップから識別された要素と、330において周囲表面を識別するステップから識別された周囲表面との組み合わせを使用して、いくつかの実施形態では、仮想オブジェクトを付加的表面として使用して、要素を識別された表面にマッピングするステップを継続する。識別された要素を識別された表面にマッピングするステップは、複数の要因を伴ってもよく、そのうちのいくつかは、上記に議論される例示的HTMLページパーサ等のHTMLページパーサを使用することによって、2Dコンテンツ設計者/制作者によって定義されたHTMLタグ要素を介して2Dコンテンツ設計者/制作者によって提供されるヒントを分析するステップを含んでもよい。他の要因は、ARブラウザ、ARインターフェース、および/またはクラウド記憶装置によって提供されるようなある2Dコンテンツをマッピングするための方法および場所の事前に定義されたルールのセットから選択するステップを含んでもよい。図8は、2Dコンテンツからの1つ以上の要素を識別された表面にマッピングするマッピングプロセスの詳細なフローを提供する。
図8は、いくつかの実施形態による、2Dコンテンツからの要素を表面にマッピングするための方法を図示する、フロー図を描写する。図8は、要素を図3の340において識別された表面にマッピングするステップを開示する、詳細なフローである。
810では、本方法は、識別された要素が2Dコンテンツ設計者によって提供されるヒントを含有するかどうかを決定する。2Dコンテンツ設計者は、2Dコンテンツ設計者が2Dコンテンツを最初に設計したとき、特定の要素を最良に表示するための場所に関するヒントを提供してもよい。例えば、図2のメインビデオ220は、アクティブタブ260内のウェブページ上に表示される、YOUTUBE(登録商標)ビデオであってもよい。2Dコンテンツ設計者(例えば、ウェブページ設計者)は、メインビデオ220が、ユーザ108の直視状態において、平坦垂直表面上に最良に表示されることを示すためのヒントを提供してもよい。いくつかの実施形態では、これは、2Dウェブページコンテンツのために最初に設計された既存のHTMLタグ要素を使用して、3Dディスプレイ環境が利用可能である場合、2Dコンテンツ内の特定のコンテンツ要素が表示され得る方法をさらに定義することによって、遂行されてもよい。別の実施例として、2Dコンテンツ設計者は、特定のウェブページに関する2D画像の代わりに、3D画像が利用可能であることを記述する、ヒントを提供してもよい。例えば、2D画像の場合、2Dコンテンツ設計者は、基本HTMLタグを提供し、2Dコンテンツのソースを識別することに加え、他の殆ど使用されないHTMLタグを提供して、2D画像の3Dバージョンのソースを識別し、加えて、画像の3Dバージョンが使用される場合、ユーザのビューの正面(例えば、3Dレイアウトのメインフレーム内)においてそれを顕著に表示させるためのヒントを提供してもよい。いくつかの実施形態では、2Dコンテンツ設計者は、2Dコンテンツをレンダリングするウェブブラウザ110が向上された3D画像を活用するための3D表示機能性を有し得る場合に備えて、本付加的「ヒント」を2D画像の3D画像場所に提供してもよい。当業者は、特定のコンテンツ要素が本明細書に開示されたもの以外の2Dレイアウトで設置されるべき場所に関して、2Dコンテンツ設計者がヒントを提供し得る、多くの他の方法が存在し、これらが、2Dコンテンツ設計者が2Dコンテンツ内のあるまたは全ての要素を最良に表示するためのヒントを提供し得る、異なる方法のいくつかの実施例であることを理解し得る。
別の実施形態では、HTMLタグ規格は、上記に議論されるウェブページ開発者によって提供される例示的HTMLウェブページ等のAR/VR特有のタイプのブラウザのためのユーザの周囲内への3Dオブジェクト設置のヒントを提供するために、新しいHTMLタグまたは類似マークアップ言語の作成を含んでもよい。本書の時点で、これらの新しいHTMLタグは、HTML言語内の標準タグとしてまだ作成および/または採用されていない。しかしながら、いったんHTML規格が、これらのタイプの付加的タグを含むと、本方法およびシステムのある実施形態は、これらの新しいタグを活用し、さらに、識別された要素の識別された表面へのマッピングを提供するであろう。当業者は、コンテンツ要素が3D環境内に最良に表示されるべき方法に関するヒントをさらに提供するように修正または採用され得る、HTMLタグ以外の多くの他の言語が存在し、新しいHTMLタグ付け規格が、単に、そのような目標を達成するための1つの方法であることを理解し得る。
820では、本方法は、2Dコンテンツ設計者によって提供されるヒントを使用するか、または2Dコンテンツからの1つ以上のコンテンツ要素をあるタイプの3D表面にマッピングするための事前に定義されたルールのセットを使用するかどうかを決定する。いくつかの実施形態では、特定のコンテンツ要素のための2Dコンテンツ設計者によって提供されるヒントが存在しない場合、本システムおよび方法は、事前に定義されたルールのセットを使用して、コンテンツ要素を表面にマッピングするための最良方法を決定してもよい。他の実施形態では、2Dコンテンツ設計者によって提供されるコンテンツ要素の設置のためのヒントが存在し得るときでも、本システムおよび方法はまた、事前に定義されたルールのセットを使用して、コンテンツ要素を表面にマッピングすることが最良であり得ることを決定してもよい。しかしながら、他の実施形態では、本システムおよび方法は、2Dコンテンツ設計者によって提供されるヒントが、十分であって、したがって、ヒントを使用して、コンテンツ要素を表面にマッピングすることを決定してもよい。最終的に、2Dコンテンツ設計者によって提供されるヒントを使用するか、または事前に定義されたルールを使用して、コンテンツ要素を表面にマッピングするかどうかを決定することは、ARブラウザの最終決定となる。
830では、2Dコンテンツ設計者によって提供されるヒントを使用することが、進めるべき方法であると決定されたと仮定して、本方法は、ヒントを分析し、少なくとも部分的に、ヒントに基づいて(例えば、表面テーブル700にクエリする)、特定のコンテンツ要素を表示するために使用され得る、識別された周囲表面のインベントリを検索する。840では、本方法は、最良適合アルゴリズムを起動させ、提供されるヒントに基づいて、特定のコンテンツ要素のための最良適合表面を選定する。最良適合アルゴリズムは、例えば、特定のウェブページ内の特定のコンテンツ要素のための「メインコンテンツ」のヒントを得て、3D環境内のユーザ108に対して正面および中心にある利用可能な識別された周囲表面の中から3D表面を識別することを試み得る。例えば、図2のメインビデオ220は、メインビデオ220が、「メイン」の選好値をアクティブタブ260内の図5の要素テーブル500の選好520列内に有し、垂直表面182が、ユーザ108の直視状態にあって、メインビデオ220を表示するための最適定寸寸法を有する、表面であるため、垂直表面182にマッピングされる。
850では、本方法は、表面が識別された周囲表面またはユーザの周囲環境内に表示される仮想オブジェクトかどうかにかかわらず、コンテンツ要素をそのそれぞれマッピングされた表面上に表示するために表示アルゴリズムによって使用されるように、要素の表面テーブルへのマッピングにおけるコンテンツ要素のためのマッピング結果を非一過性記憶媒体内に記憶する。非一過性記憶媒体は、記憶デバイス130またはローカル記憶デバイス140等のデータ記憶デバイスを含んでもよい。マッピング結果は、下記に説明される図9に開示されるテーブル等の特定のテーブル内に記憶されてもよい。
図9は、いくつかの実施形態による、2Dコンテンツからのコンテンツ要素の表面へのマッピングを記憶するためのテーブルの実施例を示す。マッピングテーブル900は、表面にマッピングされたコンテンツ要素の結果をデータベースの中に記憶する、例示的テーブルである。マッピングテーブル900は、例えば、コンテンツ要素(例えば、要素ID)およびコンテンツ要素がマッピングされた表面(例えば、表面ID)についての情報を含む。当業者は、マッピングテーブル900が、関係データベースまたは任意のタイプのデータベースまたは記憶媒体内に記憶されるテーブルであってもよいことを理解し得る。加えて、マッピングテーブル900は、図3の340において要素の識別された周囲表面へのマッピングの結果を含有する、コンピュータメモリ(例えば、キャッシュ)内のアレイであってもよい。
マッピングテーブル900の各行は、ユーザの物理的環境105内の表面、または仮想オブジェクトがユーザの物理的環境105内のオブジェクトであるように現れる、ユーザ108に表示される仮想オブジェクトのいずれかにマッピングされる、2Dコンテンツからのコンテンツ要素に対応する。例えば、本実施形態では、要素ID列の第1のエントリは、メインビデオ220に対応する、要素ID220の値を記憶する。メインビデオ220に対応する、表面ID列内の表面ID値は、垂直表面182に対応する、182である。このように、メインビデオ220は、垂直表面182にマッピングされる。同様に、ユーザコメント230は、水平表面192にマッピングされ、提案されるビデオ240は、垂直表面186にマッピングされ、二次タブ250は、仮想Rolodex190にマッピングされる。マッピングテーブル900内の要素IDは、図5の要素テーブル500内に記憶される要素IDと関連付けられてもよい。マッピングテーブル900内の表面IDは、図7の表面テーブル700内に記憶される表面IDと関連付けられてもよい。
図8に戻ると、860では、所定のルールを使用することが、進めるべき方法であると決定されたと仮定して、本方法は、コンテンツ要素の表面へのマッピングルールを含有するデータベースにクエリし、ウェブページ内の特定のコンテンツ要素のために、コンテンツ要素をマッピングするために検討されるべき表面のタイプを決定する。例えば、図2からのメインビデオ220のために返されるルールは、メインビデオ220が垂直表面にマッピングされるべきであることを示し得、したがって、表面テーブル700を検索後、複数の候補表面が、明らかにされる(例えば、垂直表面182および186および仮想Rolodex190)。870では、事前に定義されたルールのセットは、最良適合アルゴリズムを起動し、利用可能な候補表面から、本メインビデオ220のための最良適合である表面を選定してもよい。少なくとも部分的に、最良適合アルゴリズムに基づいて、候補表面の全てのうち、垂直表面182が、ユーザ108の直接通視線内にある表面であって、垂直表面182が、ビデオを表示するために最良寸法を有するため、メインビデオ220が垂直表面182にマッピングされるべきであることが決定される。いったん1つ以上の要素のマッピングが、850において決定されると、本方法は、上記に説明されるように、要素の表面テーブルへのマッピングにおけるコンテンツ要素のためのマッピング結果を非一過性記憶媒体内に記憶する。
図3に戻ると、本方法は、350において、1つ以上の要素を仮想コンテンツとしてマッピングされた表面上に表示するステップを継続する。頭部搭載型システム160は、情報を表示するためのミニプロジェクタ(図示せず)等の1つ以上のディスプレイデバイスを頭部搭載型システム160内に含んでもよい。1つ以上の要素が、340においてマッピングされたように、個別のマッピングされた表面上に表示される。頭部搭載型システム160を使用して、ユーザ108は、コンテンツが個別のマッピングされた表面上に見えるであろう。当業者は、コンテンツ要素が、種々の表面(物理的または仮想)上に物理的に取り付けられるように現れるように表示されるが、コンテンツ要素は、実際には、ユーザ108によって知覚されるように物理的表面上に投影され、仮想オブジェクトの場合、仮想オブジェクトが、仮想オブジェクトの個別の表面上に取り付けられるように現れるように表示されることを理解し得る。当業者は、ユーザ108が、その頭部を方向転換させる、または上または下を見るとき、頭部搭載型システム160内のディスプレイデバイスが、コンテンツ要素がその個別の表面に継続して添着されたままし、ユーザ108に、コンテンツがマッピングされた表面に添着されているという知覚をさらに提供し得ることを理解し得る。他の実施形態では、ユーザ108は、ユーザ108の頭部、手、眼によって行われる運動、または音声によって、ユーザの物理的環境105のコンテンツを変化させてもよい。
(改良されたブラウザ/アプリケーション実装)
複合現実システムでは、ユーザの作業空間は、ディスプレイ画面のサイズによって限定されない。したがって、従来のブラウザと異なり、複合現実システム内のブラウザウィンドウは、ユーザの環境内の任意の場所に設置および保定されることができる。問題は、従来のブラウザ技術が、表示可能ブラウザ場所がディスプレイ画面の範囲に限定されなければならないという仮定とともに構成されることである。
本開示の以下の部分は、複合現実環境内でウィンドウを閲覧するための改良されたアプローチを対象とする。複合現実機器を使用すると、ユーザが、ユーザの物理的空間と関連付けられ、その中に設置される、複数のブラウザウィンドウを有し得ることが可能性として考えられる。例えば、ユーザは、第1のブラウザウィンドウを第1の部屋内で開き、第2のブラウザウィンドウを第2の部屋内に居る間に開く場合がある。本開示の本部分によって対処される問題点は、ユーザが第2の場所に行くと、ブラウザウィンドウがもはや可視ではなくなるように、ブラウザウィンドウが第1の場所内の位置にアンカされるような様式で開かれる、状況に関する。問題は、ユーザが環境を変化させる(部屋間で移動する、または異なる地理的場所に行く等)につれて、ユーザが、なおも依然として、以前の地理的場所におけるその前のセッションにアクセスする必要があり得ることである。
図10は、1つ以上の以前に開かれたウィンドウの場所に対するユーザに関する現在の場所にかかわらず、ユーザのウィンドウの閲覧を実装するためのアプローチのフローチャートを図示する。いくつかの実施形態では、制御インターフェースが、ユーザと関連付けられた全ておよび/または複数のウィンドウの表示のために、選択するために提供される。いくつかの実施形態では、制御インターフェースは、例えば、ユーザ入力をシステムに提供し、システムが対応するコマンドを実行することにより応答することによって、ユーザがMRディスプレイシステムと相互作用し得るような、ユーザインターフェースであってもよい。いくつかの実施形態では、ユーザは、MRシステムの視覚的、聴覚的、触知的、または他の側面と相互作用してもよい。いくつかの実施形態では、ユーザインターフェースは、ブラウザハブを備えてもよく、これは、いくつかの実施形態では、1つ以上のブラウザアプリケーションの1つ以上の側面の視覚的表現であってもよい。例えば、「全てのウィンドウ」アイコンが、ブラウザハブ内に提示されることができ、「全てのウィンドウ」アイコンの選択は、現在のウィンドウ場所(例えば、ウィンドウが開かれた場所)に対するユーザの場所にかかわらず、ユーザと関連付けられた複数のウィンドウの表示を開始する。図10は、ステップ1702から開始し、システムが、全てまたは複数のウィンドウを表示するためのコマンドを受信する(1702)。いくつかの実施形態では、ステップ1702は、ユーザがブラウザハブユーザインターフェース内にあり得る「全てのウィンドウ」アイコンを選択すると生じてもよい。いくつかの実施形態では、システムは、1つを上回るウィンドウのための選択を受信する。いくつかの実施形態では、システムは、ユーザがユーザのシステムと関連付けられた1つを上回るウィンドウを閲覧することを所望することを示す、ユーザ入力を受信してもよい。
1704では、ユーザと関連付けられた複数のウィンドウに関する情報が、読み出される。いくつかの実施形態では、ユーザは、ユーザと関連付けられた1つ以上のウィンドウを有してもよい。情報が集められるウィンドウは、別々の物理的場所に位置してもよい。いくつかの実施形態によると、VR/AR環境内のブラウザウィンドウを1対1ベースで各アプリケーションによって独立して管理する代わりに、ウィンドウは、代わりに、以降、「プリズム」と称され得る、境界された体積の中にレンダリングされてもよい。各プリズムは、ユニバースアプリケーションが、プリズム自体を管理することによって、VR/AR環境内の仮想コンテンツの設置および表示を管理し得るように、ユニバースアプリケーションがVR/AR環境内でプリズムを管理および表示することを可能にする、特性およびプロパティを有してもよい。ウィンドウについての情報は、ユーザと関連付けられたプリズムのデータベースにアクセスすることによって、集められてもよく、プリズムは、1つ以上のウィンドウを規定された場所に表示し得る。
いくつかの実施形態では、「全てのウィンドウ」ビューが、ロードされ、全ての開いているウィンドウおよびタブウィンドウを示し、それぞれ、プレビュー、ファビコン、ドメイン名および/またはページタイトル、またはウィンドウの任意の他の好適な視覚的表現によって表される(1706)。いくつかの実施形態では、開いているウィンドウの実施例は、1人以上のユーザによってアクティブに相互作用されているウィンドウを含む。他の実施例は、開かれ/アクティブなステータス、一時停止ステータス、停止ステータス、閉じられたステータス等を有するかどうかにかかわらず、設置されたアプリケーション/ウィンドウ/ブラウザを含む。加えて、アプリケーションのインスタンスが、存在し/設置され、コンテンツを伴う1つ以上のタブを有する限り、いくつかの実施形態では、本発明のアプローチを使用して、遠隔でアクセスされることができる。付加的実施例として、開いているウィンドウは、そのステータス(アクティブ、一時停止、閉じられた等)にかかわらず、所与のアプリケーション(例えば、ブラウザ)と関連付けられた一部または全部のプリズムに対応してもよく、これは、本実施形態における「全てのウィンドウ」ビューを通して遠隔でアクセスされることができる。いくつかの実施形態では、「全てのウィンドウ」ビューは、実世界内の1つ以上の物理的場所における1つ以上のプリズム内に含有される、全てのブラウザウィンドウを備えてもよい。「全てのウィンドウ」および類似する「全てのアプリケーション」ビューの実施例は、図12-14に示され、下記に説明される。「全てのウィンドウ」が、実施例として使用されるが、任意の他の単一アプリケーションも、代わりに使用され得る。「全てのアプリケーション」が、実施例として使用されるが、全てのアプリケーションの任意のサブセットが、代わりに使用されてもよい。ステップ1704において識別された種々のウィンドウは、このように、ユーザの現在の場所において表示されることができる。これは、ユーザの現在の物理的環境内の場所に対して識別されたウィンドウに関する場所パラメータを変化させ、事実上、ウィンドウをユーザに召集することによって遂行されてもよい。いくつかの実施形態では、これは、ウィンドウ情報のコピーを作成し、代わりに、新しい場所、例えば、ユーザの現在の場所またはその近傍における場所と情報を関連付けることによって遂行されてもよい。ウィンドウは、次いで、個別のウィンドウおよび/またはウィンドウのプリズムに割り当てられる座標において、レンダリングされ(プレビュー形態、サムネイル形態、および/またはフル形態において)、ユーザに表示される。
本方法では随意である、1708では、ホバリング状態が、識別され、1つ以上のウィンドウに対して作用されてもよい。例えば、ホバリング状態では、ホバリングされているウィンドウは、前景の中に移動し得、他のウィンドウは、随意に、若干、後退し得る。複数のタブを伴うウィンドウは、背景タブを示すように、若干拡張してもよい。いくつかの実施形態では、ウィンドウの代わりに、ホバリングされたオブジェクトは、プレビュー、フル画面、または縮小画面等のブラウザウィンドウの任意の視覚的表現であってもよい。1710では、ユーザが、ウィンドウのうちの1つ以上のものを選択する。いくつかの実施形態では、ユーザは、コントローラ(例えば、トーテム)上のボタンをクリックすることによって、または具体的ジェスチャを実施することによって、または所定の時間周期にわたってウィンドウを見ることによって、ウィンドウを選択してもよい。ユーザが、ウィンドウを選択する場合、オリジナルウィンドウの複製が、ユーザのFOVの前景内にロードされ、全てのウィンドウビューは、閉じる。いくつかの実施形態では、複製は、ユーザ選択選好に応じて、オリジナルを更新するか、複製は、全てまたはいくつかの付加的コピーを更新するか、および/または複製は、オリジナルから独立するかのいずれかである。いくつかの実施形態では、前景内にロードされたコンテンツは、移動される(例えば、ピン固定が解除され、全体として移動される)、既存のプリズムに対応する。いくつかの実施形態では、前景内にロードされたコンテンツは、新しい関連付けられた場所情報とともに複製される、既存のプリズムに対応する。ユーザが、コンテキストメニューをアクティブ化する場合、ユーザは、ウィンドウを閉じる、それをコレクションに追加する、および/またはウィンドウを最小化するためのオプションを備える、ユーザメニューを提示されてもよい。コンテキストメニューは、選択されると、システムに具体的機能を実行するように伝える、所定のユーザインターフェースオプションを伴う、ユーザインターフェースであってもよい。いくつかの実施形態では、コンテキストメニューは、ウィンドウ等の選択可能オブジェクト上にホバリングしている間、トーテム上のタッチパッドの中心に対する押圧によってアクティブ化されてもよい。いくつかの実施形態では、コンテキストウィンドウは、アクションが、ユーザが、移動させる、閉じる等、選択されたオブジェクト上でアクションを実施することを可能にするという点で、デスクトップコンピュータ上の右クリックに類似し得る。
図11A-Bは、ウィンドウの前の物理的場所にかかわらず、ユーザのためにウィンドウを表示するための本プロセスを図示する。複合現実実施形態では、ウィンドウは、デバイスおよび/または物理的空間と関連付けられてもよい。ユーザは、その自宅全体を通して、または1日を通して異なる地理的場所に、コンテンツを設置することができる。図11Aでは、第1のブラウザウィンドウ1は、第1の物理的場所の中に設置されている一方、第2のブラウザウィンドウ2は、第2の物理的場所の中に設置されていることが分かる。ウィンドウは、複合現実実施形態では、具体的物理的場所/座標空間と関連付けられるため、これは、ウィンドウ1が、通常、ユーザ108が、物理的場所1内に位置するときのみ可視であって、ユーザ108が物理的場所2内に位置するときは、不可視であろうことを意味する。同様に、ウィンドウ2は、通常、ユーザ108が物理的場所2内に位置するときのみ可視であって、ユーザ108が物理的場所1内に位置するとき、不可視であろう。
図11Bに示されるように、「全てのウィンドウ」ビュー1804は、ユーザ108が、物理的場所にかかわらず、開いているウィンドウを閲覧し、再び開き、閉じることを可能にする(「開いている」ウィンドウの実施例に関しては、前の段落参照)。したがって、ビュー1804は、これらのウィンドウが異なる物理的場所と関連付けられたという事実にもかかわらず、ウィンドウ1およびウィンドウ2の両方の操作可能なバージョン(例えば、視覚的表現)を表示することができる。ブラウザの制御ハブからアクセスされると、全てのウィンドウを閲覧する(または代替として、「全てのウィンドウ」)は、ユーザが、その物理的または地理的位置にかかわらず、全ての開いているウィンドウを見ることを可能にする。ウィンドウは、同一部屋、異なる部屋、または完全に別の空間内にあってもよい。スクリーンショット、ファビコン、ドメイン、および/またはページタイトルが、各ウィンドウを識別する(例えば、視覚的に表す)ために使用される。いくつかの実施形態では、複数のタブを伴うウィンドウは、ホバリング状態では、下層タブのスタックされたプレビューを示す。コンテキストメニューを用いることで、ユーザは、場所にかかわらず、ウィンドウの新しいインスタンスを開き、ウィンドウを閉じ、ウィンドウを最小化し、ウィンドウをブックマークし、ウィンドウをコレクションに追加することができる。全ての開いているウィンドウを閉じる、または最小化するために使用され得る、グローバルボタンもまた、提供されてもよい。
図12-13は、複数のウィンドウを複合現実インターフェース内に表示するための可能性として考えられるアプローチの例証を提供する。これらの図は、複数のウィンドウがユーザに表示および提示される、インターフェースを実装するための例示的アプローチを図示する。ブラウザウィンドウのいずれかが、ユーザによってさらに閲覧するために、ポインティングデバイス等の好適なユーザ入力デバイスによって選択されることができる。インターフェース上に適合し得るウィンドウが多すぎる限りにおいて、いくつかの実施形態では、付加的ウィンドウが、視覚的に「残影化」されることができ(図12および図13の右側に示されるように)、スクロール制御が、付加的ウィンドウにスクロールするために提供される。
したがって、説明されている内容は、複合現実環境内でウィンドウを閲覧するための改良されたアプローチであって、1つ以上の以前に開かれたウィンドウに対するユーザに関する現在の場所にかかわらず、ユーザのウィンドウのビューが提供される。これは、複合現実機器を使用するとき、ユーザが、1つ以上の異なる物理的場所と関連付けられた1つ以上のブラウザウィンドウにアクセスすることを所望し得る状況に対処し、それを解決する。
上記の実施形態は、ブラウザアプリケーションの観点から説明されているが、請求項の範囲はまた、任意の他のアプリケーションまたはアプリケーションのセットを網羅する。いくつかの実施形態では、オペレーティングシステム内の全てのアプリケーションが、請求項に従って、選択および表示されることができる。そのような実施形態は、ウィンドウ内で解析されるブラウザコンテンツの代わりに、アプリケーションをプリズム内に有するであろう。
そのような実施形態は、図14に描写され、これは、複数のアプリケーションを複数のプリズム内に表示する。「全て」ボタンは、例示的ドロップダウンフィルタであって、表示および選択のために(例えば、カテゴリ別に)、アプリケーションオプションを通してソートすることに役立つ。9m■30mに及ぶ例示的スライダバーは、ユーザからの距離に基づいて、全てのアプリケーション/ランドスケープマネージャディスプレイ内に含まれるアプリケーションを選択するが、他の好適な選択またはフィルタリング方法および/またはインターフェースが、使用されてもよい。いくつかの実施形態では、ユーザは、スライダバーを部屋に対応するより小さい距離に設定し、その部屋内で利用可能な全てのアプリケーションを表示することができる。いくつかの実施形態では、ユーザは、スライダバーを家に対応するより大きい距離に設定し、家全体内で利用可能な全てのアプリケーションを表示することができる。いくつかの実施形態では、スライダバーは、場所にかかわらず、全てのアプリに対応する右端とともに設定されることができる。「全て閉じる」ボタンは、アプリケーションを制御および/または操作するための例示的ユーザインターフェース要素である。他のユーザインターフェース要素は、上記に説明されるように、「全て開く」、「移動」等であってもよい。図14は、開かれたアプリケーション間の「HELIO」アプリケーションおよび「COLLECTION」アプリケーションの2つの異なるインスタンスを描写する。故に、「全て」ボタンは、アプリケーションおよび異なるアプリケーションの複数のインスタンスを表示することができる。
(付加的実施形態)
本開示の付加的実施形態が、下記に説明される。これらの付加的実施形態は、上記に開示される実施形態からの要素を組み込んでもよく、これらの付加的実施形態の要素は、上記に開示される実施形態の中に組み込まれてもよい。
1.
コンピュータ可読媒体上に具現化されるコンピュータプログラム製品であって、コンピュータ可読媒体は、その上に記憶される命令のシーケンスを有し、命令のシーケンスは、プロセッサによって実行されると、プロセッサに、
複数の開いているウィンドウを選択するための命令を受信するステップと、
複数の開いているウィンドウに関する情報を読み出すステップであって、複数の開いているウィンドウは、異なる物理的場所と関連付けられる、ステップと、
複数の開いているウィンドウの表現を単一ユーザインターフェース内に表示するステップと、
複数の開いているウィンドウの選択されたウィンドウの選択の受信に応じて、選択されたウィンドウをユーザのための視野の前景の中にロードするステップと、
を含む方法を実行させる、コンピュータプログラム製品。
2.
複数の開いているウィンドウの表現は、ユーザのための現在の物理的環境内の場所に対して複数の開いているウィンドウに関する場所パラメータを変化させることによって、単一ユーザインターフェース内に表示される、実施形態1に記載のコンピュータプログラム製品。
3.
複数の開いているウィンドウは、単一ユーザインターフェース内の複数の開いているウィンドウに割り当てられる座標において、ユーザにレンダリングおよび表示される、実施形態2に記載のコンピュータプログラム製品。
4.
複数の開いているウィンドウは、プレビュー形態、サムネイル形態、またはフル形態のうちの少なくとも1つにおいてレンダリングされる、実施形態3に記載のコンピュータプログラム製品。
5.
全ての開いているウィンドウは、単一ユーザインターフェース内での表示のために選択される、実施形態1に記載のコンピュータプログラム製品。
6.
複数の開いているウィンドウはそれぞれ、仮想コンテンツの設置のために境界された体積の中にレンダリングされる、実施形態1に記載のコンピュータプログラム製品。
7.
ホバリング状態が、実装され、ホバリングされているウィンドウは、前景の中に移動する一方、他のウィンドウは、視覚的に後退する、実施形態1に記載のコンピュータプログラム製品。
8.
選択されたウィンドウの選択の受信に応じて、非選択ウィンドウは、閉じられる、実施形態1に記載のコンピュータプログラム製品。
9.
仮想コンテンツをコンピューティング環境内に表示するための方法であって、
複数の開かれたアプリケーションを選択するための命令を受信するステップと、
複数の開かれたアプリケーションに関する情報を読み出すステップであって、複数の開かれたアプリケーションは、異なる物理的場所と関連付けられる、ステップと、
複数の開かれたアプリケーションの表現を単一ユーザインターフェース内に表示するステップと、
複数の開かれたアプリケーションの選択されたアプリケーションの選択の受信に応じて、選択されたアプリケーションをユーザのための視野の前景の中にロードするステップと、
を含む、方法。
10.
複数の開かれたアプリケーションの表現は、ユーザための現在の物理的環境内の場所に対する複数の開かれたアプリケーションのための場所パラメータを変化させることによって、単一ユーザインターフェース内に表示される、実施形態9に記載の方法。
11.
複数の開かれたアプリケーションは、単一ユーザインターフェース内の複数の開かれたアプリケーションに割り当てられる座標において、ユーザにレンダリングおよび表示される、実施形態10に記載の方法。
12.
複数の開かれたアプリケーションは、プレビュー形態、サムネイル形態、またはフル形態のうちの少なくとも1つにおいてレンダリングされる、実施形態11に記載の方法。
13.
全ての開かれたアプリケーションは、単一ユーザインターフェース内での表示のために選択される、実施形態9に記載の方法。
14.
複数の開かれたアプリケーションはそれぞれ、仮想コンテンツの設置のために、別個のプリズムの中にレンダリングされる、実施形態9に記載の方法。
15.
ホバリング状態が、実装され、ホバリングされているアプリケーションは、前景の中に移動する一方、他のアプリケーションは、視覚的に後退する、実施形態9に記載の方法。
16.
選択されたアプリケーションの選択の受信に応じて、非選択アプリケーションは、閉じられる、実施形態9に記載の方法。
(システムアーキテクチャ概要)
図15は、本開示の実施形態を実装するために好適な例証的コンピューティングシステム1400のブロック図である。コンピューティングシステム1400は、情報を通信するためのバス1406または他の通信機構を含み、これは、プロセッサ1407、システムメモリ1408(例えば、RAM)、静的記憶デバイス1409(例えば、ROM)、ディスクドライブ1410(例えば、磁気または光学)、通信インターフェース1414(例えば、モデムまたはEthernet(登録商標)カード)、ディスプレイ1411(例えば、CRTまたはLCD)、入力デバイス1412(例えば、キーボードおよびマウス)等のサブシステムおよびデバイスを相互接続する。
いくつかの実施形態によると、コンピューティングシステム1400は、システムメモリ1408内に含有される1つ以上の命令の1つ以上のシーケンスを実行する、プロセッサ1407によって、具体的動作を実施する。そのような命令は、静的記憶デバイス1409またはディスクドライブ1410等の別のコンピュータ可読/使用可能媒体から、システムメモリ1408の中に読み取られてもよい。代替実施形態では、有線回路が、本開示を実装するために、ソフトウェア命令の代わりに、またはそれと組み合わせて、使用されてもよい。したがって、本開示の実施形態は、ハードウェア回路および/またはソフトウェアの任意の具体的組み合わせに限定されない。一実施形態では、用語「論理」は、本開示の全部または一部を実装するために使用される、ソフトウェアまたはハードウェアの任意の組み合わせを意味するものとする。
用語「コンピュータ可読媒体」または「コンピュータ使用可能媒体」は、本明細書で使用されるように、実行のために、命令をプロセッサ1407に提供する際に関与する、任意の媒体を指す。そのような媒体は、限定ではないが、不揮発性媒体および揮発性媒体を含む、多くの形態をとってもよい。不揮発性媒体は、例えば、ディスクドライブ1410等の光学または磁気ディスクを含む。揮発性媒体は、システムメモリ1408等の動的メモリを含む。
一般的形態のコンピュータ可読媒体は、例えば、フロッピーディスク、フレキシブルディスク、ハードディスク、磁気テープ、任意の他の磁気媒体、CD-ROM、任意の他の光学媒体、パンチカード、紙テープ、孔のパターンを伴う任意の他の物理的媒体、RAM、PROM、EPROM、FLASH-EPROM、任意の他のメモリチップまたはカートリッジ、またはそこからコンピュータが読み取り得る、任意の他の媒体を含む。
本開示のある実施形態では、本開示を実践するための命令のシーケンスの実行は、単一コンピューティングシステム1400によって実施される。本開示の他の実施形態によると、通信リンク1415(例えば、LAN、PTSN、または無線ネットワーク)によって結合される、2つ以上のコンピューティングシステム1400が、相互に協調して、本開示を実践するために要求される命令のシーケンスを実施してもよい。
コンピューティングシステム1400は、通信リンク1415および通信インターフェース1414を通して、プログラム(すなわち、アプリケーションコード)を含む、メッセージ、データ、および命令を伝送および受信してもよい。受信されたプログラムコードは、受信されるにつれて、プロセッサ1407によって実行され、および/または後の実行のためにディスクドライブ1410または他の不揮発性記憶装置内に記憶されてもよい。コンピューティングシステム1400は、データインターフェース1433を通して、外部記憶デバイス1431上のデータベース1432に通信してもよい。
前述の明細書では、本開示は、その具体的実施形態を参照して説明されている。しかしながら、種々の修正および変更が、本開示のより広い精神および範囲から逸脱することなく、そこに行われてもよいことが明白となるであろう。例えば、上記に説明されるプロセスフローは、プロセスアクションの特定の順序を参照して説明される。しかしながら、説明されるプロセスアクションの多くの順序は、本開示の範囲または動作に影響を及ぼすことなく、変更されてもよい。明細書および図面は、故に、限定的意味ではなく、例証的であると見なされるべきである。

Claims (21)

  1. ウィンドウをコンピューティング環境内に表示するための方法であって、
    複合現実デバイスにおいて、単一ユーザインターフェースから、第1の開いているウィンドウと、第2の開いているウィンドウとを備える複数の開いているウィンドウを選択するための命令を受信することであって、
    前記第1の開いているウィンドウは、第1の境界された体積中にレンダリングされ、第1の仮想コンテンツの設置のための第1の空間を備え、
    前記第2の開いているウィンドウは、第2の境界された体積中にレンダリングされ、第2の仮想コンテンツの設置のための第2の空間を備える、ことと、
    前記第1および第2の開いているウィンドウに関する情報を読み出すことであって、前記第1の開いているウィンドウは、物理的環境内の第1の物理的場所においてレンダリングされ、前記第2の開いているウィンドウは、前記物理的環境内の第2の物理的場所においてレンダリングされ、前記複合現実デバイスのユーザは、前記第1の物理的場所に位置していることと、
    前記第1の物理的場所において前記ユーザに、前記単一ユーザインターフェースにおける、前記第1の物理的場所においてレンダリングされた前記第1の開いているウィンドウの前記第1の仮想コンテンツと、前記第2の物理的場所においてレンダリングされた前記第2の開いているウィンドウの前記第2の仮想コンテンツとの両方のビューを提示することであって、
    前記第1の物理的場所においてレンダリングされた前記第1の開いているウィンドウは、前記ユーザが前記第1の物理的場所にいるとき、前記ユーザの視野内に可視であり、前記第1の物理的場所においてレンダリングされた前記第1の開いているウィンドウは、前記ユーザが前記第2の物理的場所にいるとき、前記ユーザの視野内に不可視であり、
    前記第2の物理的場所においてレンダリングされた前記第2の開いているウィンドウは、前記ユーザが前記第1の物理的場所にいるとき、前記ユーザの前記視野内に不可視であり、前記第2の物理的場所においてレンダリングされた前記第2の開いているウィンドウは、前記ユーザが前記第2の物理的場所にいるとき、前記ユーザの前記視野内に可視である、ことと、
    前記単一ユーザインターフェースにおける前記ビューから、前記第2の開いているウィンドウの選択を受信することに応じて、少なくとも、前記第2の境界された体積内の前記第2の仮想コンテンツを前記第1の物理的場所における前記ユーザのための前記視野中に設置することによって、前記第2の開いているウィンドウ内に設置された前記第2の仮想コンテンツを前記ユーザの前記視野中にロードすることと
    を含む、方法。
  2. 前記第1および第2の開いているウィンドウの前記ビューは、少なくとも、前記第1の開いているウィンドウまたは前記第2の開いているウィンドウの開いているウィンドウの対応する位置と関連付けられたそれぞれの場所パラメータを前記ユーザが位置している前記物理的環境内の別個の場所と関連付けることによって、前記単一ユーザインターフェース内に表示される、請求項1に記載の方法。
  3. 前記複数の開いているウィンドウは、前記単一ユーザインターフェース内の前記複数の開いているウィンドウにそれぞれに割り当てられるそれぞれの座標において、前記ユーザにレンダリングされ、前記複数の開いているウィンドウの前記ビューは、プレビュー形態、サムネイル形態、またはフル形態のうちの少なくとも1つにおいてレンダリングされる、請求項2に記載の方法。
  4. 複数のウェブページ、またはブラウザアプリケーションのための前記複数のウェブページへのそれぞれのリンクを識別することであって、前記それぞれのリンクは、ウェブページのブックマークを含み、前記複数のウェブページは、第1のウェブページ、第のウェブページ、および第3のウェブページを含む、ことと、
    前記単一ユーザインターフェースにおいて、第1の仮想タブおよび第2の仮想タブを有するマルチスタック仮想オブジェクトを作成することと、
    少なくとも、前記第1のウェブページの第1の部分を前記マルチスタック仮想オブジェクトの第1の仮想タブと関連付けることによって、前記マルチスタック仮想オブジェクトのための前記第1の仮想タブを作成することと、
    少なくとも、前記第1のウェブページの第2の部分を前記マルチスタック仮想オブジェクトの第2の仮想タブと関連付けることによって、前記マルチスタック仮想オブジェクトのための前記第2の仮想タブを作成することと
    をさらに含む、請求項1に記載の方法。
  5. 少なくとも、前記第2のウェブページを前記マルチスタック仮想オブジェクトの第3の仮想タブと関連付けることによって、前記マルチスタック仮想オブジェクトのための前記第3の仮想タブを作成することと、
    少なくとも、前記第3のウェブページを前記マルチスタック仮想オブジェクトの第4の仮想タブと関連付けることによって、前記マルチスタック仮想オブジェクトのための前記第4の仮想タブを作成することと
    をさら含み、
    前記マルチスタック仮想オブジェクトは、前記ユーザが特定のタブに合焦するとき、前記特定のタブに自動的に前進し、前記特定のタブと関連付けられた対応する仮想コンテンツを表示する、請求項4に記載の方法。
  6. 前記第1および第2の開いているウィンドウのそれぞれのコンテンツは、仮想コンテンツのそれぞれの設置のために、ブラウザ中ではなく、前記第1の境界された体積および前記第2の境界された体積中にそれぞれレンダリングされ、前記第1または第2の境界された体積は、規定の境界を有しかつ前記複合現実デバイス上実行するアプリケーションによって管理され3次元体積を備え、前記第2の開いているウィンドウ内の前記第2の仮想コンテンツを前記視野中にロードすることは、前記視野内から選択可能である境界された体積を識別することを含み、プリズムは、前記視野内の新しい関連付けられた場所情報を伴う第2のプリズムを複製することによって、または前記新しい関連付けられた場所情報に少なくとも部分的に基づいて前記視野内から選択可能な存在する境界された体積を移動させることによって、識別される、請求項1に記載の方法。
  7. 前記ビューを提示することは、スタックされかつ前記第2の開いているウィンドウの複数のタブにそれぞれ対応す複数のビューを前記ビューにおいて表示することを含み、ホバリング状態実装され、ホバリングされているウィンドウは、前記ユーザの前記視野内前景の中に移動する一方、1つ以上の他のウィンドウは、視覚的に後退させられ、または閉じられ、前記第2の開いているウィンドウは、前記第2の開いているウィンドウ内に表示される1つのアクティブなタブを有する前記複数のタブを備える、請求項1に記載の方法。
  8. 前記第2の仮想コンテンツを前記第2の開いているウィンドウ中にロードすることは、
    前記第2の開いているウィンドウ内にレンダリングされる2次元(2D)コンテンツを前記視野内の特定の境界された体積中に分解することを含み、前記特定の境界された体積は、1つ以上の第1の仮想オブジェクトを備え、前記2次元コンテンツを分解することは、
    前記視野内に提示された1つ以上の実オブジェクトまたは仮想オブジェクトを識別することと、
    前記1つ以上の第1の仮想オブジェクトを前記視野内の前記1つ以上の実オブジェクトまたは仮想オブジェクトにマッピングすることと、
    前記1つ以上の実オブジェクトまたは仮想オブジェクト上前記1つ以上の第1の仮想オブジェクトをそれぞれレンダリングすることにより、前記第2の開いているウィンドウ内の前記第2の仮想コンテンツを前記視野中にロードすることを完了することと
    を含む、請求項1に記載の方法。
  9. 前記物理的環境内の、前記第1および第2の開いているウィンドウを備える複数の開いているウィンドウのそれぞれの物理的場所に対する前記物理的環境内の前記ユーザの現在の場所にかかわらず、前記単一ユーザインターフェースの少なくとも一部を介して、前記ユーザと前記複合現実デバイスとの間のユーザ相互作用に少なくとも部分的に基づいて前記単一ユーザインターフェース内に前記複数の開いているウィンドウの前記ビューの閲覧を実装することをさらに含み、前記複数の開いているウィンドウは、前記第1および第2の開いているウィンドウを備える、請求項1に記載の方法。
  10. コンピューティング環境内でウィンドウを操作するためのシステムであって、
    3次元コンテンツを表示する複合現実ディスプレイデバイスと、
    プロセッサと、
    前記プロセッサによって実行可能なプログラマブルコードを保持するためのメモリと
    を備え、
    前記プログラマブルコードは、命令を含み、前記命令は、前記プロセッサによって実行されると、前記プロセッサに、
    前記複合現実ディスプレイデバイスにおいて、単一ユーザインターフェースから、第1の開いているウィンドウと、第2の開いているウィンドウとを備える複数の開いているウィンドウを選択するための命令を受信することであって、
    前記第1の開いているウィンドウは、第1の境界された体積中にレンダリングされ、第1の仮想コンテンツの設置のための第1の空間を備え、
    前記第2の開いているウィンドウは、第2の境界された体積中にレンダリングされ、第2の仮想コンテンツの設置のための第2の空間を備える、ことと、
    前記第1および第2の開いているウィンドウに関する情報を読み出すことであって、前記第1の開いているウィンドウは、物理的環境内の第1の物理的場所においてレンダリングされ、前記第2の開いているウィンドウは、前記物理的環境内の第2の物理的場所においてレンダリングされ、前記複合現実ディスプレイデバイスのユーザは、前記第1の物理的場所に位置していることと、
    前記第1の物理的場所において前記ユーザに、前記複合現実ディスプレイデバイスによって提示された前記単一ユーザインターフェースにおける、前記第1の物理的場所においてレンダリングされた前記第1の開いているウィンドウと、前記第2の物理的場所においてレンダリングされた前記第2の開いているウィンドウとの両方のビューを提示することであって、
    前記第1の物理的場所においてレンダリングされた前記第1の開いているウィンドウは、前記ユーザが前記第1の物理的場所にいるとき、前記ユーザの視野内に可視であり、前記第1の物理的場所においてレンダリングされた前記第1の開いているウィンドウは、前記ユーザが前記第2の物理的場所にいるとき、前記ユーザの視野内に不可視であり、
    前記第2の物理的場所においてレンダリングされた前記第2の開いているウィンドウは、前記ユーザが前記第1の物理的場所にいるとき、前記ユーザの前記視野内に不可視であり、前記第2の物理的場所においてレンダリングされた前記第2の開いているウィンドウは、前記ユーザが前記第2の物理的場所にいるとき、前記ユーザの前記視野内に可視である、ことと、
    前記単一ユーザインターフェース内の前記第2の開いているウィンドウの選択を受信することに応じて、少なくとも、前記第2の境界された体積内の前記第2の仮想コンテンツを前記第1の物理的場所における前記ユーザのための前記視野中に設置することによって、前記第2の開いているウィンドウ内にレンダリングされた前記第2の仮想コンテンツを前記ユーザの前記視野中にロードすることと
    を行わせる、システム。
  11. 前記第1および第2の開いているウィンドウの前記ビューは、少なくとも、前記第1の開いているウィンドウまたは前記第2の開いているウィンドウの開いているウィンドウの対応する位置と関連付けられたそれぞれの場所パラメータを前記ユーザが位置している前記物理的環境内の別個の場所と関連付けることによって、前記単一ユーザインターフェース内に表示される、請求項10に記載のシステム。
  12. 前記複数の開いているウィンドウは、前記単一ユーザインターフェース内の前記複数の開いているウィンドウにそれぞれに割り当てられる座標において、前記ユーザにレンダリングおよび表示され、前記複数の開いているウィンドウの前記ビューは、プレビュー形態、サムネイル形態、またはフル形態のうちの少なくとも1つにおいてレンダリングされる、請求項11に記載のシステム。
  13. 前記プログラマブルコードは、命令をさらに含み、前記命令は、前記プロセッサによって実行されると、前記プロセッサに、
    複数のウェブページ、またはブラウザアプリケーションのための前記複数のウェブページへのそれぞれのリンクを識別することであって、前記それぞれのリンクは、ウェブページのブックマークを含み、前記複数のウェブページは、第1のウェブページ、第のウェブページ、および第3のウェブページを含む、ことと、
    前記単一ユーザインターフェースにおいて、第1の仮想タブおよび第2の仮想タブを有するマルチスタック仮想オブジェクトを作成することと、
    少なくとも、前記第1のウェブページの第1の部分を前記マルチスタック仮想オブジェクトの第1の仮想タブと関連付けることによって、前記マルチスタック仮想オブジェクトのための前記第1の仮想タブを作成することと、
    少なくとも、前記第1のウェブページの第2の部分を前記マルチスタック仮想オブジェクトの第2の仮想タブと関連付けることによって、前記マルチスタック仮想オブジェクトのための前記第2の仮想タブを作成することと
    をさらに行わせる、請求項12に記載のシステム。
  14. 前記プログラマブルコードは、命令をさらに含み、前記命令は、前記プロセッサによって実行されると、前記プロセッサに、
    少なくとも、前記第2のウェブページを前記マルチスタック仮想オブジェクトの第3の仮想タブと関連付けることによって、前記マルチスタック仮想オブジェクトのための前記第3の仮想タブを作成することと、
    少なくとも、前記第3のウェブページを前記マルチスタック仮想オブジェクトの第4の仮想タブと関連付けることによって、前記マルチスタック仮想オブジェクトのための前記第4の仮想タブを作成することと
    をさらに行わせ、
    前記マルチスタック仮想オブジェクトは、前記ユーザが特定のタブに合焦するとき、前記特定のタブに自動的に前進し、前記特定のタブと関連付けられた対応する仮想コンテンツを表示する、請求項13に記載のシステム。
  15. 前記第1および第2の開いているウィンドウのそれぞれのコンテンツは、仮想コンテンツのそれぞれの設置のために、ブラウザ中ではなく、前記第1の境界された体積および前記第2の境界された体積中にそれぞれレンダリングされ、前記第1または第2の境界された体積は、規定の境界を有しかつ前記複合現実ディスプレイデバイス上実行するアプリケーションによって管理され3次元体積を備え、前記第2の開いているウィンドウ内の前記第2の仮想コンテンツを前記視野中にロードすることは、前記視野内から選択可能である境界された体積を識別することを含み、境界された体積は、前記視野内の新しい関連付けられた場所情報を伴う前記第2の境界された体積を複製することによって、または前記新しい関連付けられた場所情報に少なくとも部分的に基づいて前記視野内から選択可能な存在する境界された体積を移動させることによって、識別される、請求項10に記載のシステム。
  16. 前記命令は、前記プロセッサによって実行されると、さらに、前記プロセッサに、スタックされかつ前記第2の開いているウィンドウの複数のタブにそれぞれ対応す複数のビューを前記ビューにおいて表示させ、ホバリング状態実装され、ホバリングされているウィンドウは、前記ユーザの前記視野内前景の中に移動する一方、1つ以上の他のウィンドウは、視覚的に後退させられ、または閉じられ、前記第2の開いているウィンドウは、前記第2の開いているウィンドウ内に表示される1つのアクティブなタブを有する前記複数のタブを備える、請求項10に記載のシステム。
  17. 前記プログラマブルコードの実行が前記プロセッサに前記仮想コンテンツをロードさせ前記プログラマブルコードは、命令をさらに含み、前記命令は、前記プロセッサによって実行されると、さらに、前記プロセッサに、前記第2の開いているウィンドウ内にレンダリングされる2次元(2D)コンテンツを前記視野内の特定の境界された体積中に分解することを行わせ、前記境界された体積は、1つ以上の仮想オブジェクトを備え、前記2次元コンテンツを分解することは、少なくとも、
    前記視野内に提示された1つ以上の実オブジェクトまたは仮想オブジェクトを識別することと、
    前記1つ以上の仮想オブジェクトを前記視野内の前記1つ以上の実オブジェクトまたは仮想オブジェクトにマッピングすることと、
    前記1つ以上の実オブジェクトまたは仮想オブジェクト上前記1つ以上の仮想オブジェクトをそれぞれレンダリングすることにより、前記第2の開いているウィンドウ内の前記第2の仮想コンテンツを前記視野中にロードすることを完了することと
    による、請求項10に記載のシステム。
  18. 非一過性コンピュータ可読媒体上に具現化されるコンピュータプログラム製品であって、前記コンピュータ可読媒体は、その上に記憶される命令のシーケンスを有し、前記命令のシーケンスは、プロセッサによって実行されると、前記プロセッサに、
    複合現実デバイスにおいて、単一ユーザインターフェースから、第1の開いているウィンドウと、第2の開いているウィンドウとを備える複数の開いているウィンドウを選択するための命令を受信することであって、
    前記第1の開いているウィンドウは、第1の境界された体積中にレンダリングされ、第1の仮想コンテンツの設置のための第1の空間を備え、
    前記第2の開いているウィンドウは、第2の境界された体積中にレンダリングされ、第2の仮想コンテンツの設置のための第2の空間を備える、ことと、
    前記複数の開いているウィンドウに関する情報を読み出すことであって、前記第1の開いているウィンドウは、物理的環境内の第1の物理的場所においてレンダリングされ、前記第2の開いているウィンドウは、前記物理的環境内の第2の物理的場所においてレンダリングされ、前記複合現実デバイスのユーザは、前記第1の物理的場所に位置していることと、
    前記第1の物理的場所において前記ユーザに、前記複合現実デバイスによって前記ユーザに提示された前記単一ユーザインターフェースにおける、前記第1の物理的場所においてレンダリングされた前記第1の開いているウィンドウと、前記第2の物理的場所においてレンダリングされた前記第2の開いているウィンドウとの両方のビューを提示することであって、
    前記第1の物理的場所においてレンダリングされた前記第1の開いているウィンドウは、前記ユーザが前記第1の物理的場所にいるとき、前記ユーザの視野内に可視であり、前記第1の物理的場所においてレンダリングされた前記第1の開いているウィンドウは、前記ユーザが前記第2の物理的場所にいるとき、前記ユーザの視野内に不可視であり、
    前記第2の物理的場所においてレンダリングされた前記第2の開いているウィンドウは、前記ユーザが前記第1の物理的場所にいるとき、前記ユーザの前記視野内に不可視であり、前記第2の物理的場所においてレンダリングされた前記第2の開いているウィンドウは、前記ユーザが前記第2の物理的場所にいるとき、前記ユーザの前記視野内に可視である、ことと、
    前記単一ユーザインターフェース内の前記第2の開いているウィンドウの選択を受信することに応じて、少なくとも、前記第2の境界された体積内の前記第2の仮想コンテンツを前記第1の物理的場所における前記ユーザのための前記視野中に設置することによって、前記第2の開いているウィンドウ内に設置された前記第2の仮想コンテンツを前記ユーザの前記視野中にロードすることと
    を含む動作のセットを実行させる、コンピュータプログラム製品。
  19. 前記動作のセットは、
    複数のウェブページ、またはブラウザアプリケーションのための前記複数のウェブページへのそれぞれのリンクを識別することであって、前記それぞれのリンクは、ウェブページのブックマークを含み、前記複数のウェブページは、第1のウェブページ、第のウェブページ、および第3のウェブページを含む、ことと、
    前記単一ユーザインターフェースにおいて、第1の仮想タブおよび第2の仮想タブを有するマルチスタック仮想オブジェクトを作成することと、
    少なくとも、前記第1のウェブページの第1の部分を前記マルチスタック仮想オブジェクトの第1の仮想タブと関連付けることによって、前記マルチスタック仮想オブジェクトのための前記第1の仮想タブを作成することと、
    少なくとも、前記第1のウェブページの第2の部分を前記マルチスタック仮想オブジェクトの第2の仮想タブと関連付けることによって、前記マルチスタック仮想オブジェクトのための前記第2の仮想タブを作成することと、
    少なくとも、前記第2のウェブページを前記マルチスタック仮想オブジェクトの第3の仮想タブと関連付けることによって、前記マルチスタック仮想オブジェクトのための前記第3の仮想タブを作成することと、
    少なくとも、前記第3のウェブページを前記マルチスタック仮想オブジェクトの第4の仮想タブと関連付けることによって、前記マルチスタック仮想オブジェクトのための前記第4の仮想タブを作成することと
    をさら含み、
    前記マルチスタック仮想オブジェクトは、前記ユーザが特定のタブに合焦するとき、前記特定のタブに自動的に前進し、前記特定のタブと関連付けられた対応する仮想コンテンツを表示する、請求項18に記載のコンピュータプログラム製品。
  20. 仮想コンテンツをコンピューティング環境内に表示するための方法であって、
    複合現実デバイスにおいて、単一ユーザインターフェースから、第1の開いているアプリケーションと、第2の開いているアプリケーションとを備える複数の開いているアプリケーションを選択するための命令を受信することであって、
    前記第1の開いているアプリケーションは、第1のコンテンツの設置のための第1の境界された体積中にレンダリングされ、
    前記第2の開いているアプリケーションは、第のコンテンツの設置のための第2の境界された体積中にレンダリングされる、ことと、
    前記第1および第2の開いているアプリケーションに関する情報を読み出すことであって、前記第1の境界された体積は、物理的環境内の第1の物理的場所においてレンダリングされ、前記第2の境界された体積は、前記物理的環境内の第2の物理的場所においてレンダリングされ、前記複合現実デバイスのユーザは、前記第1の物理的場所に位置していることと、
    前記ユーザに、前記単一ユーザインターフェースにおける、前記第1の開いているアプリケーションの前記第1のコンテンツと、前記第2の開いているアプリケーションの前記第2コンテンツとの両方のビューを提示することであって、
    前記第1の境界された体積内の、前記第1の物理的場所においてレンダリングされた前記第1の開いているアプリケーションは、前記ユーザが前記第1の物理的場所にいるとき、前記ユーザの視野内に可視であり、前記第1の境界された体積内の、前記第1の物理的場所においてレンダリングされた前記第1の開いているアプリケーションは、前記ユーザが前記第2の物理的場所にいるとき、前記ユーザの視野内に不可視であり、
    前記第2の境界された体積内の、前記第2の物理的場所においてレンダリングされた前記第2の開いているアプリケーションは、前記ユーザが前記第1の物理的場所にいるとき、前記ユーザの前記視野内に不可視であり、前記第2の境界された体積内の、前記第2の物理的場所においてレンダリングされた前記第2の開いているアプリケーションは、前記ユーザが前記第2の物理的場所にいるとき、前記ユーザの前記視野内に可視である、ことと、
    前記単一ユーザインターフェースにおける前記ビューから、前記ユーザの前記視野内に不可視である前記第2の開いているアプリケーションの選択を受信することに応じて、少なくとも、前記第2の境界された体積内の前記第2のコンテンツを前記第1の物理的場所における前記ユーザの前記視野中に設置することによって、前記第2の開いているアプリケーションの前記第2のコンテンツを、前記第1の物理的場所における前記ユーザの前記視野中にロードすることと
    を含む、方法。
  21. 複数のウェブページ、または前記第1または第2の開いているアプリケーションのための前記複数のウェブページへのそれぞれのリンクを識別することであって、前記それぞれのリンクは、ウェブページのブックマークを含み、前記複数のウェブページは、第1のウェブページ、第のウェブページ、および第3のウェブページを含む、ことと、
    前記単一ユーザインターフェースにおいて、第1の仮想タブおよび第2の仮想タブを有するマルチスタック仮想オブジェクトを作成することと、
    少なくとも、前記第1のウェブページの第1の部分を前記マルチスタック仮想オブジェクトの第1の仮想タブと関連付けることによって、前記マルチスタック仮想オブジェクトのための前記第1の仮想タブを作成することと、
    少なくとも、前記第1のウェブページの第2の部分を前記マルチスタック仮想オブジェクトの第2の仮想タブと関連付けることによって、前記マルチスタック仮想オブジェクトのための前記第2の仮想タブを作成することと、
    少なくとも、前記第2のウェブページを前記マルチスタック仮想オブジェクトの第3の仮想タブと関連付けることによって、前記マルチスタック仮想オブジェクトのための前記第3の仮想タブを作成することと、
    少なくとも、前記第3のウェブページを前記マルチスタック仮想オブジェクトの第4の仮想タブと関連付けることによって、前記マルチスタック仮想オブジェクトのための前記第4の仮想タブを作成することと
    をさら含み、
    前記マルチスタック仮想オブジェクトは、前記ユーザが特定のタブに合焦するとき、前記特定のタブに自動的に前進し、前記特定のタブと関連付けられた対応する仮想コンテンツを表示する、請求項18に記載の方法。
JP2020544190A 2018-02-22 2019-02-21 複合現実システムのためのブラウザ Active JP7112502B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022117087A JP2022153514A (ja) 2018-02-22 2022-07-22 複合現実システムのためのブラウザ

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862634016P 2018-02-22 2018-02-22
US62/634,016 2018-02-22
PCT/US2019/018932 WO2019165055A1 (en) 2018-02-22 2019-02-21 Browser for mixed reality systems

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2022117087A Division JP2022153514A (ja) 2018-02-22 2022-07-22 複合現実システムのためのブラウザ

Publications (3)

Publication Number Publication Date
JP2021514088A JP2021514088A (ja) 2021-06-03
JPWO2019165055A5 JPWO2019165055A5 (ja) 2022-02-10
JP7112502B2 true JP7112502B2 (ja) 2022-08-03

Family

ID=67617801

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2020544190A Active JP7112502B2 (ja) 2018-02-22 2019-02-21 複合現実システムのためのブラウザ
JP2022117087A Pending JP2022153514A (ja) 2018-02-22 2022-07-22 複合現実システムのためのブラウザ

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2022117087A Pending JP2022153514A (ja) 2018-02-22 2022-07-22 複合現実システムのためのブラウザ

Country Status (9)

Country Link
US (1) US11036364B2 (ja)
EP (2) EP3756169B1 (ja)
JP (2) JP7112502B2 (ja)
KR (1) KR20200122362A (ja)
CN (1) CN111758122A (ja)
AU (1) AU2019225989A1 (ja)
CA (1) CA3089646A1 (ja)
IL (2) IL276621B1 (ja)
WO (1) WO2019165055A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11797169B2 (en) 2019-03-29 2023-10-24 Sony Interactive Entertainment Inc. Context-based user interface menu with selectable actions
WO2020205293A1 (en) * 2019-03-29 2020-10-08 Sony Interactive Entertainment Inc. Context-based user interface menu with selectable actions
WO2020205292A1 (en) 2019-03-29 2020-10-08 Sony Interactive Entertainment Inc. Context-based user interface menu with selectable actions
US11315326B2 (en) * 2019-10-15 2022-04-26 At&T Intellectual Property I, L.P. Extended reality anchor caching based on viewport prediction
US11354012B1 (en) * 2019-10-18 2022-06-07 Splunk Inc. Automated placement and time selection for dashboard panels in an extended reality environment
WO2021113322A1 (en) * 2019-12-06 2021-06-10 Magic Leap, Inc. Dynamic browser stage
US11538199B2 (en) * 2020-02-07 2022-12-27 Lenovo (Singapore) Pte. Ltd. Displaying a window in an augmented reality view
AU2022352933A1 (en) * 2021-09-25 2024-04-11 Apple Inc. Devices, methods, and graphical user interfaces for presenting virtual objects in virtual environments
CN114971764A (zh) * 2022-04-08 2022-08-30 浙江赟燊商业信息系统科技有限公司 一种基于HoloLens的存储和匹配系统及方法

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080115081A1 (en) 2006-11-09 2008-05-15 Microsoft Corporation Enhanced windows management feature
US20120030617A1 (en) 2006-03-22 2012-02-02 John Louch Methods of Manipulating a Screen Space of a Display Device
JP2014157466A (ja) 2013-02-15 2014-08-28 Sony Corp 情報処理装置及び記憶媒体
US20140375683A1 (en) 2013-06-25 2014-12-25 Thomas George Salter Indicating out-of-view augmented reality images
US20150346929A1 (en) 2014-05-31 2015-12-03 Apple Inc. Safari Tab and Private Browsing UI Enhancement
JP2016206447A (ja) 2015-04-23 2016-12-08 セイコーエプソン株式会社 頭部装着型表示装置、情報システム、頭部装着型表示装置の制御方法、および、コンピュータープログラム
US20170052994A1 (en) 2015-08-18 2017-02-23 Samsung Electronics Co., Ltd. Method and system for bookmarking a webpage
US20170060514A1 (en) 2015-09-01 2017-03-02 Microsoft Technology Licensing, Llc Holographic augmented authoring
US20170256096A1 (en) 2016-03-07 2017-09-07 Google Inc. Intelligent object sizing and placement in a augmented / virtual reality environment
US20180033204A1 (en) 2016-07-26 2018-02-01 Rouslan Lyubomirov DIMITROV System and method for displaying computer-based content in a virtual or augmented environment

Family Cites Families (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6629065B1 (en) 1998-09-30 2003-09-30 Wisconsin Alumni Research Foundation Methods and apparata for rapid computer-aided design of objects in virtual reality and other environments
US9208270B2 (en) 2000-08-02 2015-12-08 Comsol Ab System and method for establishing bidirectional links between multiphysics modeling and design systems
US7043695B2 (en) 2000-09-19 2006-05-09 Technion Research & Development Foundation Ltd. Object positioning and display in virtual environments
EP1556805B1 (en) 2002-10-22 2011-08-24 Artoolworks Tracking a surface in a 3-dimensional scene using natural visual features of the surface
JP2007058332A (ja) * 2005-08-22 2007-03-08 Canon Inc オブジェクト操作装置及びオブジェクト操作方法
US8245241B2 (en) 2007-10-02 2012-08-14 International Business Machines Corporation Arrangements for interactivity between a virtual universe and the world wide web
US8924862B1 (en) * 2008-09-05 2014-12-30 Cisco Technology, Inc. Optimizing desktop sharing for wireless clients during networked collaboration
KR101082487B1 (ko) 2010-01-29 2011-11-11 키위플 주식회사 객체 인식시스템 및 이를 이용하는 객체 인식 방법
US20120212484A1 (en) 2010-02-28 2012-08-23 Osterhout Group, Inc. System and method for display content placement using distance and location information
US9069577B2 (en) * 2010-11-23 2015-06-30 Apple Inc. Grouping and browsing open windows
CN103460256B (zh) 2011-03-29 2016-09-14 高通股份有限公司 在扩增现实系统中将虚拟图像锚定到真实世界表面
US8912979B1 (en) 2011-07-14 2014-12-16 Google Inc. Virtual window in head-mounted display
US9671566B2 (en) 2012-06-11 2017-06-06 Magic Leap, Inc. Planar waveguide apparatus with diffraction element(s) and system employing same
US20130342572A1 (en) * 2012-06-26 2013-12-26 Adam G. Poulos Control of displayed content in virtual environments
US9292085B2 (en) 2012-06-29 2016-03-22 Microsoft Technology Licensing, Llc Configuring an interaction zone within an augmented reality environment
WO2014031899A1 (en) 2012-08-22 2014-02-27 Goldrun Corporation Augmented reality virtual content platform apparatuses, methods and systems
US9070194B2 (en) 2012-10-25 2015-06-30 Microsoft Technology Licensing, Llc Planar surface detection
US9317972B2 (en) * 2012-12-18 2016-04-19 Qualcomm Incorporated User interface for augmented reality enabled devices
KR20150103723A (ko) 2013-01-03 2015-09-11 메타 컴퍼니 가상 또는 증강매개된 비전을 위한 엑스트라미시브 공간 이미징 디지털 아이 글래스
US20140225922A1 (en) 2013-02-11 2014-08-14 Rocco A. Sbardella System and method for an augmented reality software application
GB201303707D0 (en) 2013-03-01 2013-04-17 Tosas Bautista Martin System and method of interaction for mobile devices
KR102387314B1 (ko) 2013-03-11 2022-04-14 매직 립, 인코포레이티드 증강 및 가상 현실을 위한 시스템 및 방법
US20140267228A1 (en) 2013-03-14 2014-09-18 Microsoft Corporation Mapping augmented reality experience to various environments
US20150277699A1 (en) * 2013-04-02 2015-10-01 Cherif Atia Algreatly Interaction method for optical head-mounted display
US10262462B2 (en) 2014-04-18 2019-04-16 Magic Leap, Inc. Systems and methods for augmented and virtual reality
US9411422B1 (en) 2013-12-13 2016-08-09 Audible, Inc. User interaction with content markers
US20150206343A1 (en) * 2014-01-17 2015-07-23 Nokia Corporation Method and apparatus for evaluating environmental structures for in-situ content augmentation
US9201578B2 (en) 2014-01-23 2015-12-01 Microsoft Technology Licensing, Llc Gaze swipe selection
US10203762B2 (en) * 2014-03-11 2019-02-12 Magic Leap, Inc. Methods and systems for creating virtual and augmented reality
US20150302651A1 (en) 2014-04-18 2015-10-22 Sam Shpigelman System and method for augmented or virtual reality entertainment experience
US9361732B2 (en) 2014-05-01 2016-06-07 Microsoft Technology Licensing, Llc Transitions between body-locked and world-locked augmented reality
AU2015274283B2 (en) * 2014-06-14 2020-09-10 Magic Leap, Inc. Methods and systems for creating virtual and augmented reality
US20160027214A1 (en) 2014-07-25 2016-01-28 Robert Memmott Mouse sharing between a desktop and a virtual world
US10726593B2 (en) 2015-09-22 2020-07-28 Fyusion, Inc. Artificially rendering images using viewpoint interpolation and extrapolation
JP5767386B1 (ja) 2014-12-15 2015-08-19 株式会社コロプラ ヘッドマウントディスプレイシステム、ヘッドマウントディスプレイへ表示するための方法、及びプログラム
US20160300392A1 (en) 2015-04-10 2016-10-13 VR Global, Inc. Systems, media, and methods for providing improved virtual reality tours and associated analytics
KR20170005602A (ko) * 2015-07-06 2017-01-16 삼성전자주식회사 증강현실 및 가상현실의 통합적 제공 방법 및 이를 사용하는 전자 장치
US10057078B2 (en) 2015-08-21 2018-08-21 Samsung Electronics Company, Ltd. User-configurable interactive region monitoring
EP3629136B1 (en) 2015-10-08 2024-04-17 InterDigital VC Holdings, Inc. Methods and systems of automatic calibration for dynamic display configurations
NZ741866A (en) 2015-10-20 2019-07-26 Magic Leap Inc Selecting virtual objects in a three-dimensional space
US10373381B2 (en) 2016-03-30 2019-08-06 Microsoft Technology Licensing, Llc Virtual object manipulation within physical environment
US10268266B2 (en) * 2016-06-29 2019-04-23 Microsoft Technology Licensing, Llc Selection of objects in three-dimensional space
KR102296267B1 (ko) 2016-06-30 2021-08-30 매직 립, 인코포레이티드 3d 공간에서의 포즈 추정
CN115202482A (zh) 2016-08-11 2022-10-18 奇跃公司 用于三维空间中虚拟对象的自动放置的系统和方法
WO2018067801A1 (en) 2016-10-05 2018-04-12 Magic Leap, Inc. Surface modeling systems and methods
US10599823B2 (en) 2016-11-18 2020-03-24 Invensense, Inc. Systems and methods for coordinating applications with a user interface
US20180150204A1 (en) * 2016-11-30 2018-05-31 Google Inc. Switching of active objects in an augmented and/or virtual reality environment
US10304251B2 (en) 2017-06-15 2019-05-28 Microsoft Technology Licensing, Llc Virtually representing spaces and objects while maintaining physical properties
US20190005724A1 (en) 2017-06-30 2019-01-03 Microsoft Technology Licensing, Llc Presenting augmented reality display data in physical presentation environments
US10803663B2 (en) 2017-08-02 2020-10-13 Google Llc Depth sensor aided estimation of virtual reality environment boundaries

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120030617A1 (en) 2006-03-22 2012-02-02 John Louch Methods of Manipulating a Screen Space of a Display Device
US20080115081A1 (en) 2006-11-09 2008-05-15 Microsoft Corporation Enhanced windows management feature
JP2014157466A (ja) 2013-02-15 2014-08-28 Sony Corp 情報処理装置及び記憶媒体
US20140375683A1 (en) 2013-06-25 2014-12-25 Thomas George Salter Indicating out-of-view augmented reality images
US20150346929A1 (en) 2014-05-31 2015-12-03 Apple Inc. Safari Tab and Private Browsing UI Enhancement
JP2016206447A (ja) 2015-04-23 2016-12-08 セイコーエプソン株式会社 頭部装着型表示装置、情報システム、頭部装着型表示装置の制御方法、および、コンピュータープログラム
US20170052994A1 (en) 2015-08-18 2017-02-23 Samsung Electronics Co., Ltd. Method and system for bookmarking a webpage
US20170060514A1 (en) 2015-09-01 2017-03-02 Microsoft Technology Licensing, Llc Holographic augmented authoring
US20170256096A1 (en) 2016-03-07 2017-09-07 Google Inc. Intelligent object sizing and placement in a augmented / virtual reality environment
US20180033204A1 (en) 2016-07-26 2018-02-01 Rouslan Lyubomirov DIMITROV System and method for displaying computer-based content in a virtual or augmented environment

Also Published As

Publication number Publication date
JP2021514088A (ja) 2021-06-03
US11036364B2 (en) 2021-06-15
EP3756169A1 (en) 2020-12-30
CA3089646A1 (en) 2019-08-20
EP3756169B1 (en) 2023-04-19
US20190258365A1 (en) 2019-08-22
IL276621A (en) 2020-09-30
CN111758122A (zh) 2020-10-09
IL276621B1 (en) 2024-01-01
EP3756169A4 (en) 2021-04-21
KR20200122362A (ko) 2020-10-27
AU2019225989A1 (en) 2020-08-13
US20210263624A1 (en) 2021-08-26
JP2022153514A (ja) 2022-10-12
IL301443A (en) 2023-05-01
WO2019165055A1 (en) 2019-08-29
EP4213104A1 (en) 2023-07-19

Similar Documents

Publication Publication Date Title
JP7112502B2 (ja) 複合現実システムのためのブラウザ
JP7139436B2 (ja) 物理的操作を用いたオブジェクト作成
AU2022271460B2 (en) Matching content to a spatial 3D environment
CN115601671B (zh) 用于向用户显示虚拟内容的系统和方法
JP7311643B2 (ja) モード式ウィンドウを介したセキュアな認可
US10768421B1 (en) Virtual monocle interface for information visualization
US11972092B2 (en) Browser for mixed reality systems

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220201

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220201

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20220201

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220315

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220613

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220624

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220722

R150 Certificate of patent or registration of utility model

Ref document number: 7112502

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150