JP2022168082A - 物理的操作を用いたオブジェクト作成 - Google Patents

物理的操作を用いたオブジェクト作成 Download PDF

Info

Publication number
JP2022168082A
JP2022168082A JP2022142067A JP2022142067A JP2022168082A JP 2022168082 A JP2022168082 A JP 2022168082A JP 2022142067 A JP2022142067 A JP 2022142067A JP 2022142067 A JP2022142067 A JP 2022142067A JP 2022168082 A JP2022168082 A JP 2022168082A
Authority
JP
Japan
Prior art keywords
user
interactable object
content
interactable
physical
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.)
Pending
Application number
JP2022142067A
Other languages
English (en)
Inventor
ザーモール ティム
Zurmoehle Tim
イサベル モントーヤ アンドレア
Isabel Montoya Andrea
ジョン カミングス マクドナルド ロバート
John Cummings Macdonald Robert
グロス サキナ
Groth Sakina
マック ジェネビーブ
Mak Genevieve
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 JP2022168082A publication Critical patent/JP2022168082A/ja
Pending legal-status Critical Current

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/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/012Head tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1633Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
    • G06F1/1684Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675
    • G06F1/1694Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675 the I/O peripheral being a single or a set of motion sensors for pointer control or gesture input obtained by sensing movements of the portable computer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9566URL specific, e.g. using aliases, detecting broken or misspelled links
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • 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/016Input arrangements with force or tactile feedback as computer generated output to the user
    • 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/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • 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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/0304Detection arrangements using opto-electronic means
    • 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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • 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
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2004Aligning objects, relative positioning of parts

Abstract

【課題】好適な物理的操作を用いたオブジェクト作成を提供すること。【解決手段】説明されるのは、3D複合現実環境内の相互作用可能オブジェクトのナビゲーションおよび操作のための改良されたシステムおよび方法である。改良されたシステムおよび方法が、ブラウザウィンドウおよびウォールハンギング等の相互作用可能オブジェクトの作成および設置のための物理的操作を実装するために提供される。方法は、ユーザ相互作用の開始時に、第1のプリズム内に含有される相互作用可能オブジェクトの選択を示すデータを受信するステップを含む。本方法はまた、相互作用可能オブジェクトとのユーザ相互作用の終了を示すデータを受信するステップを含む。本方法はさらに、ユーザ相互作用の開始と終了との間に、相互作用可能オブジェクトを第1のプリズムから除去するステップに対応する、ユーザの物理的移動を示すデータを受信するステップを含む。【選択図】図1

Description

(関連出願の相互参照)
本開示は、2018年2月22日に出願され、「Window Creation With Physical Manipulation」と題された、米国仮出願第62/634,007号、および2018年5月1日に出願され、「Object Creation With Physical Manipulation」と題された、第62/665,251号の優先権を主張する。本開示は、2017年5月1日に出願され、「Spatially Deconstructed Browser」と題された、米国仮出願第62/492,292号に関連する。前述の特許出願の内容は、完全に記載される場合と同様に、参照することによってその全体として本明細書に明示的かつ完全に組み込まれる。
(発明の分野)
本開示は、空間3D環境内にブラウジング技術を実装するためのシステムおよび方法に関する。
ウェブページを閲覧する典型的方法は、コンピュータ、スマートフォン、タブレット等のモニタ上でウェブページを開くことである。ユーザは、ウェブページを通してスクロールし、ウェブページ上に表示される異なるコンテンツを閲覧するであろう。通常、ユーザが、コンピュータモニタ、スマートフォン、またはタブレットを見ているかどうかにかかわらず、コンテンツがモニタ上で表示される方法に関して、固定フォーマットが存在する。
仮想現実、拡張現実、および/または複合現実システム(以降、集合的に、「複合現実」システムと称される)を用いることで、3次元環境が、ユーザへのコンテンツの表示のために提供される。問題は、ブラウザ内で2Dコンテンツを表示および操作するための従来のアプローチが、3D環境内で使用されるとき、あまり良好に機能しないことである。
例えば、新しいウィンドウをコンピューティング環境内に作成するためのプロセスを検討する。典型的には、マウスまたは類似デバイスが、メニュー構造を操作し、ウィンドウを作成するために使用され、マウスは、次いで、その新しいウィンドウを所望の場所にドラッグするために使用される。しかしながら、従来の2Dウェブブラウザを用いると、ディスプレイデバイスの表示エリアが、コンテンツを表示しているモニタの画面エリアに限定されるため、これは、従来のブラウザが、そのモニタ表示エリア内に作成および設置するための方法のみを把握するように構成されることを意味する。従来のウィンドウ作成アプローチは、したがって、3D環境が、モニタ表示エリアの厳密な範囲に限定されないため、新しいウィンドウを非2D環境(複合現実システム等)内に作成するとき、非常に限定的である。したがって、従来の2Dブラウザは、従来のブラウジング技術が、コンテンツを作成および表示するために3D環境を利用するための機能性または能力を有していないだけのために、3D環境内で使用されるとき、準最適に性能を発揮する。
本問題はまた、コンピューティング環境内の他のタイプのオブジェクトに関しても存在し、コンピューティング環境と相互作用するための従来のアプローチは、3D環境内のオブジェクトの操作のための効率的アプローチを考慮しない。例えば、従来のコンピューティングシステムは、新しく作成されたオブジェクトの設置(デジタル写真を壁上に掛ける等)を実装するための効果的機構さえ提供しない。
したがって、3D環境内でオブジェクトの作成および操作を実装するための改良されたアプローチの必要性がある。
改良されたシステムおよび方法が、相互作用可能オブジェクトの作成および設置のための物理的操作を実装するために提供される。いくつかの実施形態では、複合現実システムのユーザは、新しく作成された仮想オブジェクト(すなわち、相互作用可能オブジェクトと関連付けられたデータ)をユーザの環境内の任意の適した場所内に設置する能力を提供され、その相互作用可能オブジェクトの設置は、ユーザの物理的操作アクティビティによって達成される。
改良されたシステムおよび方法が、ブラウザウィンドウの作成および設置のための物理的操作を実装するために提供される。いくつかの実施形態では、複合現実システムのユーザは、ブラウザウィンドウをユーザの環境内の任意の適した場所内に設置する能力を提供され、そのウィンドウの設置は、ユーザの物理的操作アクティビティによって達成される。ブラウザウィンドウのナビゲーションおよび操作のための改良されたシステムおよび方法は、分解され、空間的に編成された3D環境内に表示される、2Dコンテンツのコンテキスト内に適用されてもよい。これは、2Dコンテンツを識別するステップと、2Dコンテンツ内の要素を識別するステップと、周囲表面を識別するステップと、識別された要素を識別された周囲表面にマッピングするステップと、要素を仮想コンテンツとして周囲表面上に表示するステップとを含んでもよい。
いくつかの実施形態は、単一ユーザ相互作用においてウォールハンギングの作成および設置のための物理的操作を実装するための改良されたシステムおよび方法に関する。いくつかの実施形態では、複合現実システムのユーザは、ウォールハンギングをユーザの環境内の任意の適した場所内に設置する能力を提供され、そのウォールハンギングの設置は、ユーザの物理的操作アクティビティによって達成される。
本発明の側面、目的、および利点のさらなる詳細は、下記の詳細な説明、図面、および請求項に説明される。前述の一般的説明および以下の詳細な説明は両方とも、例示的かつ説明的であって、本発明の範囲に関して限定することを意図するものではない。
一実施形態では、方法は、ユーザ相互作用の開始時に、第1のプリズム内に含有される相互作用可能オブジェクトの選択を示すデータを受信するステップを含む。本方法はまた、相互作用可能オブジェクトとのユーザ相互作用の終了を示すデータを受信するステップを含む。本方法はさらに、ユーザ相互作用の開始と終了との間に、第1のプリズムからの相互作用可能オブジェクトの除去に対応する、ユーザの物理的移動を示すデータを受信するステップを含む。さらに、本方法は、相互作用可能オブジェクトとのユーザ相互作用の終了時に、相互作用可能オブジェクトと関連付けられたデータを含有するように第2のプリズムを作成するステップを含む。
1つ以上の実施形態では、本方法はまた、相互作用可能オブジェクトが第1のプリズムの境界外に位置するときのユーザ相互作用の開始と終了との間に、相互作用可能オブジェクトと関連付けられたデータの視覚的プレビューを相互作用可能オブジェクトの場所に表示するステップを含む。本方法はまた、ユーザ入力デバイスが、相互作用可能オブジェクトの選択を示すデータと、相互作用可能オブジェクトとのユーザ相互作用の終了を示すデータとを提供するステップを含んでもよい。ユーザ入力デバイスは、触覚的コントローラであってもよい。触覚的コントローラは、少なくとも6自由度を有する、トーテムデバイスに対応してもよい。ユーザの物理的移動は、触覚的コントローラと関連付けられた処理システムにおいて、イベントオブジェクトに変換されてもよく、イベントオブジェクトは、触覚的コントローラの移動または位置付けに関するデータに相関する。ユーザ相互作用の終了時の相互作用可能オブジェクトの場所は、相互作用可能オブジェクトの選択後、トリガが触覚的コントローラに関して解放された場所を識別することによって決定されてもよい。ユーザ入力デバイスは、ユーザジェスチャを検出するためのカメラであってもよい。相互作用可能オブジェクトの選択を示すデータは、選択ジェスチャに対応してもよい。相互作用可能オブジェクトとのユーザ相互作用の終了を示すデータは、解放ジェスチャに対応してもよい。
1つ以上の実施形態では、相互作用可能オブジェクトの選択を示すデータは、リンクと相互作用する、ユーザの身体の少なくとも一部に対応する。リンクと関連付けられたURLに関するコンテンツにアクセスすることによって、リンクのプレビューが、生成されてもよい。本方法はまた、ユーザの物理的移動を示すデータを受信するステップを含んでもよく、ユーザの物理的移動は、プレビューの物理的移動に対応する。相互作用可能オブジェクトは、ユーザ相互作用を用いることで、開かれることと、設置されることとの両方が、行われてもよい。相互作用可能オブジェクトに関する配向は、ユーザ相互作用の終了時の相互作用可能オブジェクトの場所の面法線を決定するステップと、相互作用可能オブジェクトと関連付けられたデータの配向を決定するステップと、座標場所の面法線と相互作用可能オブジェクトと関連付けられたデータの配向を整合させるステップとによって決定されてもよい。相互作用可能オブジェクトは、ウォールハンギングを含んでもよい。
別の実施形態では、方法は、相互作用可能オブジェクトを識別するステップを含む。本方法はまた、相互作用可能オブジェクトに対応するユーザの物理的移動を識別するステップを含む。本方法はさらに、ユーザの物理的移動に基づいて、相互作用可能オブジェクトと関連付けられたデータに関する座標場所を決定するステップを含む。さらに、本方法は、相互作用可能オブジェクトと関連付けられたデータをユーザの物理的移動に対応する座標場所に設置するステップを含む。
1つ以上の実施形態では、ユーザ入力デバイスが、ユーザの物理的移動を検出するために採用される。ユーザ入力デバイスは、触覚的コントローラであってもよい。触覚的コントローラは、少なくとも6自由度を有する、トーテムデバイスに対応してもよい。ユーザの物理的移動は、触覚的コントローラと関連付けられた処理システムにおいて、イベントオブジェクトに変換されてもよく、イベントオブジェクトは、触覚的コントローラの移動または位置付けを示すデータに相関する。相互作用可能オブジェクトに関する座標場所は、ユーザの物理的移動後、トリガが触覚的コントローラに関して解放された場所を識別することによって決定されてもよい。
1つ以上の実施形態では、ユーザ入力デバイスは、ユーザジェスチャを検出するためのカメラである。開くための相互作用可能オブジェクトは、ユーザの身体の一部と相互作用する、リンクを識別することによって識別されてもよい。リンクと関連付けられたURLに関するコンテンツにアクセスすることによって、リンクのプレビューが、生成されてもよい。ユーザの物理的移動は、プレビューの物理的移動に対応してもよい。相互作用可能オブジェクトは、コンピューティングデバイスの単一ユーザ相互作用を用いて、開かれることと、設置されることとの両方が、行われてもよい。相互作用可能オブジェクトに関する配向は、座標場所の面法線を決定するステップと、相互作用可能オブジェクトと関連付けられたデータの配向を決定するステップと、座標場所の面法線と相互作用可能オブジェクトと関連付けられたデータの配向を整合させるステップとによって決定されてもよい。相互作用可能オブジェクトは、ウォールハンギングを含んでもよい。
さらに別の実施形態では、システムは、3次元コンテンツを表示するように構成される、複合現実ディスプレイデバイスを含む。本システムはまた、ユーザの物理的移動を検出するように構成される、ユーザ入力デバイスを含む。本システムはさらに、データをユーザ入力デバイスから受信し、処理する、プロセッサと、プロセッサによって実行可能なプログラマブルコードを保持するためのメモリとを含む。プログラマブルコードは、相互作用可能オブジェクトを識別するステップと、相互作用可能オブジェクトに対応するユーザの物理的移動を識別するステップと、ユーザの物理的移動に基づいて、相互作用可能オブジェクトと関連付けられたデータに関する座標場所を決定するステップと、相互作用可能オブジェクトと関連付けられたデータをユーザの物理的移動に対応する座標場所に設置するステップとのための命令を含む。
1つ以上の実施形態では、ユーザ入力デバイスは、触覚的コントローラである。触覚的コントローラは、少なくとも6自由度を有する、トーテムデバイスに対応してもよい。ユーザの物理的移動は、プロセッサにおいて、イベントオブジェクトに変換されてもよく、イベントオブジェクトは、触覚的コントローラの移動または位置付けを示すデータに相関する。相互作用可能オブジェクトに関する座標場所は、ユーザの物理的移動後、トリガが触覚的コントローラに関して解放された場所を識別することによって決定されてもよい。
1つ以上の実施形態では、ユーザ入力デバイスは、ユーザジェスチャを検出するためのカメラである。開くための相互作用可能オブジェクトは、ユーザの身体の一部と相互作用する、リンクを識別することによって識別されてもよい。リンクと関連付けられたURLに関するコンテンツにアクセスすることによって、リンクのプレビューが、生成されてもよい。ユーザの物理的移動は、プレビューの物理的移動に対応してもよい。相互作用可能オブジェクトは、ウォールハンギングを含んでもよい。プログラマブルコードはまた、座標場所の面法線を決定するステップと、相互作用可能オブジェクトと関連付けられたデータの配向を決定するステップと、座標場所の面法線と相互作用可能オブジェクトと関連付けられたデータの配向を整合させるステップとによって、相互作用可能オブジェクトに関する配向を決定するための命令を含んでもよい。
さらに別の実施形態では、コンピュータ可読媒体上に具現化されるコンピュータプログラム製品であって、コンピュータ可読媒体は、その上に記憶される命令のシーケンスを有し、プロセッサによって実行されると、プロセッサに、相互作用可能オブジェクトを識別するステップを含む、方法を実行させる。本方法はまた、相互作用可能オブジェクトに対応するユーザの物理的移動を識別するステップを含む。本方法はさらに、ユーザの物理的移動に基づいて、相互作用可能オブジェクトと関連付けられたデータに関する座標場所を決定するステップを含む。さらに、本方法は、相互作用可能オブジェクトと関連付けられたデータをユーザの物理的移動に対応する座標場所に設置するステップを含む。
1つ以上の実施形態では、ユーザ入力デバイスが、ウィンドウに対応するユーザの物理的移動を検出するために採用される。ユーザ入力デバイスは、触覚的コントローラであってもよい。触覚的コントローラは、少なくとも6自由度を有する、トーテムデバイスに対応してもよい。ユーザの物理的移動は、触覚的コントローラと関連付けられた処理システムにおいて、イベントオブジェクトに変換されてもよく、イベントオブジェクトは、触覚的コントローラの移動または位置付けを示すデータに相関する。相互作用可能オブジェクトに関する座標場所は、ユーザの物理的移動後、トリガが触覚的コントローラに関して解放された場所を識別することによって決定されてもよい。
1つ以上の実施形態では、ユーザ入力デバイスは、ユーザジェスチャを検出するためのカメラである。開くためのウィンドウは、ユーザの身体の一部と相互作用する、リンクを識別することによって識別されてもよい。リンクと関連付けられたURLに関するコンテンツにアクセスすることによって、リンクのプレビューが、生成されてもよい。ユーザの物理的移動は、プレビューの物理的移動に対応してもよい。相互作用可能オブジェクトは、コンピューティングデバイスの単一ユーザ相互作用を用いて、開かれることと、設置されることとの両方が、行われてもよい。単一ユーザ相互作用は、コンピューティングデバイス上のボタンの単回押下を含んでもよい。命令のシーケンスはさらに、座標場所の面法線を決定するステップと、相互作用可能オブジェクトと関連付けられたデータの配向を決定するステップと、座標場所の面法線と相互作用可能オブジェクトと関連付けられたデータの配向を整合させるステップとによって、相互作用可能オブジェクトに関する配向を決定する。
別の実施形態では、方法は、ユーザ相互作用の開始時に、相互作用可能オブジェクトの選択を示すデータを受信するステップを含む。本方法はまた、相互作用可能オブジェクトとのユーザ相互作用の終了を示すデータを受信するステップを含む。本方法はさらに、ユーザ相互作用の終了時の相互作用可能オブジェクトの場所を決定するステップを含む。さらに、本方法は、相互作用可能オブジェクトと関連付けられたデータをユーザ相互作用の終了時の相互作用可能オブジェクトの場所に設置するステップを含む。
1つ以上の実施形態では、本方法はまた、ユーザ入力デバイスが、相互作用可能オブジェクトの選択を示すデータと、相互作用可能オブジェクトとのユーザ相互作用の終了を示すデータとを提供するステップを含む。ユーザ入力デバイスは、触覚的コントローラであってもよい。触覚的コントローラは、少なくとも6自由度を有する、トーテムデバイスに対応してもよい。ユーザの物理的移動は、触覚的コントローラと関連付けられた処理システムにおいて、イベントオブジェクトに変換されてもよく、イベントオブジェクトは、触覚的コントローラの移動または位置付けに関するデータに相関する。ユーザ相互作用の終了時の相互作用可能オブジェクトの場所は、相互作用可能オブジェクトの選択後、トリガが触覚的コントローラに関して解放された場所を識別することによって決定されてもよい。
1つ以上の実施形態では、ユーザ入力デバイスは、ユーザジェスチャを検出するためのカメラである。相互作用可能オブジェクトの選択を示すデータは、選択ジェスチャに対応してもよい。相互作用可能オブジェクトとのユーザ相互作用の終了を示すデータは、解放ジェスチャに対応してもよい。相互作用可能オブジェクトの選択を示すデータは、リンクと相互作用する、ユーザの身体の少なくとも一部に対応してもよい。リンクと関連付けられたURLに関するコンテンツにアクセスすることによって、リンクのプレビューが、生成されてもよい。本方法はまた、ユーザの物理的移動を示すデータを受信するステップを含んでもよく、ユーザの物理的移動は、プレビューの物理的移動に対応する。相互作用可能オブジェクトは、ユーザ相互作用を用いることで、開かれることと、設置されることとの両方が、行われてもよい。相互作用可能オブジェクトに関する配向は、ユーザ相互作用の終了時の相互作用可能オブジェクトの場所の面法線を決定するステップと、相互作用可能オブジェクトと関連付けられたデータの配向を決定するステップと、座標場所の面法線と相互作用可能オブジェクトと関連付けられたデータの配向を整合させるステップとによって決定されてもよい。相互作用可能オブジェクトは、ウォールハンギングを含んでもよい。
さらに別の実施形態では、方法は、ユーザ相互作用の開始時に、相互作用可能オブジェクトの選択を示すデータを受信するステップを含む。本方法はまた、相互作用可能オブジェクトとのユーザ相互作用の終了を示すデータを受信するステップを含む。本方法はさらに、ユーザ相互作用の終了時の相互作用可能オブジェクトの場所を決定するステップを含む。さらに、本方法は、ユーザ相互作用の終了時の相互作用可能オブジェクトの場所が相互作用可能オブジェクトの初期プリズム外にあるとき、ユーザ相互作用の終了時に、相互作用可能オブジェクトと関連付けられたデータのための新しいプリズムを作成するステップを含む。
1つ以上の実施形態では、本方法はまた、相互作用可能オブジェクトが初期プリズムの境界外に位置するときのユーザ相互作用の開始と終了との間に、相互作用可能オブジェクトと関連付けられたデータの視覚的プレビューを相互作用可能オブジェクトの場所に表示するステップを含む。本方法はまた、ユーザ入力デバイスが、相互作用可能オブジェクトの選択を示すデータと、相互作用可能オブジェクトとのユーザ相互作用の終了を示すデータとを提供するステップを含んでもよい。ユーザ入力デバイスは、触覚的コントローラである。触覚的コントローラは、少なくとも6自由度を有する、トーテムデバイスに対応してもよい。ユーザの物理的移動は、触覚的コントローラと関連付けられた処理システムにおいて、イベントオブジェクトに変換されてもよく、イベントオブジェクトは、触覚的コントローラの移動または位置付けに関するデータに相関する。ユーザ相互作用の終了時の相互作用可能オブジェクトの場所は、相互作用可能オブジェクトの選択後、トリガが触覚的コントローラに関して解放された場所を識別することによって決定されてもよい。
1つ以上の実施形態では、ユーザ入力デバイスは、ユーザジェスチャを検出するためのカメラである。相互作用可能オブジェクトの選択を示すデータは、選択ジェスチャに対応してもよい。相互作用可能オブジェクトとのユーザ相互作用の終了を示すデータは、解放ジェスチャに対応してもよい。相互作用可能オブジェクトの選択を示すデータは、リンクと相互作用する、ユーザの身体の少なくとも一部に対応してもよい。リンクと関連付けられたURLに関するコンテンツにアクセスすることによって、リンクのプレビューが、生成されてもよい。本方法はまた、ユーザの物理的移動を示すデータを受信するステップを含んでもよく、ユーザの物理的移動は、プレビューの物理的移動に対応する。相互作用可能オブジェクトは、ユーザ相互作用を用いることで、開かれることと、設置されることとの両方が、行われてもよい。相互作用可能オブジェクトに関する配向は、ユーザ相互作用の終了時の相互作用可能オブジェクトの場所の面法線を決定するステップと、相互作用可能オブジェクトと関連付けられたデータの配向を決定するステップと、座標場所の面法線と相互作用可能オブジェクトと関連付けられたデータの配向を整合させるステップとによって決定されてもよい。相互作用可能オブジェクトは、ウォールハンギングを含んでもよい。
さらに別の実施形態では、方法は、ユーザ相互作用の開始時に、第1のプリズム内に含有される相互作用可能オブジェクトの選択を示すデータを受信するステップを含む。本方法はまた、ユーザ相互作用の開始と終了との間のユーザ相互作用に対応するユーザの物理的移動を表すデータが、相互作用可能オブジェクトがユーザ相互作用の終了時に第1のプリズム外にあることを示すとき、相互作用可能オブジェクトと関連付けられたデータを含有するように第2のプリズムをユーザ相互作用の終了時の相互作用可能オブジェクトの場所に作成するステップを含む。
1つ以上の実施形態では、本方法はまた、ユーザ入力デバイスが、相互作用可能オブジェクトの選択を示すデータと、ユーザの相互作用の開始と終了との間のユーザ相互作用に対応するユーザの物理的移動を示すデータを提供するステップを含む。ユーザ入力デバイスは、触覚的コントローラであってもよい。触覚的コントローラは、少なくとも6自由度を有する、トーテムデバイスに対応してもよい。ユーザの物理的移動は、触覚的コントローラと関連付けられた処理システムにおいて、イベントオブジェクトに変換されてもよく、イベントオブジェクトは、触覚的コントローラの移動または位置付けに関するデータに相関する。ユーザ相互作用の終了時の相互作用可能オブジェクトの場所は、相互作用可能オブジェクトの選択後、トリガが触覚的コントローラに関して解放された場所を識別することによって決定されてもよい。
1つ以上の実施形態では、ユーザ入力デバイスは、ユーザジェスチャを検出するためのカメラである。相互作用可能オブジェクトの選択を示すデータは、選択ジェスチャに対応してもよい。相互作用可能オブジェクトとのユーザ相互作用の終了を示すデータは、解放ジェスチャに対応してもよい。相互作用可能オブジェクトの選択を示すデータは、リンクと相互作用する、ユーザの身体の少なくとも一部に対応してもよい。リンクと関連付けられたURLに関するコンテンツにアクセスすることによって、リンクのプレビューが、生成されてもよい。ユーザの物理的移動は、プレビューの物理的移動に対応してもよい。相互作用可能オブジェクトは、ユーザ相互作用を用いることで、開かれることと、設置されることとの両方が、行われてもよい。相互作用可能オブジェクトに関する配向は、ユーザ相互作用の終了時の相互作用可能オブジェクトの場所の面法線を決定するステップと、相互作用可能オブジェクトと関連付けられたデータの配向を決定するステップと、座標場所の面法線と相互作用可能オブジェクトと関連付けられたデータの配向を整合させるステップとによって決定されてもよい。相互作用可能オブジェクトは、ウォールハンギングを含んでもよい。
別の実施形態では、システムは、3次元コンテンツを表示するように構成される、複合現実ディスプレイデバイスを含む。本システムはまた、ユーザの物理的移動を検出するように構成される、ユーザ入力デバイスを含む。本システムはさらに、データをユーザ入力デバイスから受信し、処理する、プロセッサを含む。さらに、本システムは、プロセッサによって実行可能なプログラマブルコードを保持するためのメモリであって、プログラマブルコードは、ユーザ相互作用の開始時に、第1のプリズム内に含有される相互作用可能オブジェクトの選択を示すデータを受信するステップと、相互作用可能オブジェクトとのユーザ相互作用の終了を示すデータを受信するステップと、ユーザ相互作用の開始と終了との間に、第1のプリズムからの相互作用可能オブジェクトの除去に対応する、ユーザの物理的移動を示すデータを受信するステップと、相互作用可能オブジェクトとのユーザ相互作用の終了時に、相互作用可能オブジェクトと関連付けられたデータを含有するように第2のプリズムを作成するステップとのための命令を含む、メモリを含む。
さらに別の実施形態では、システムは、3次元コンテンツを表示するように構成される、複合現実ディスプレイデバイスを含む。本システムはまた、ユーザの物理的移動を検出するように構成される、ユーザ入力デバイスを含む。本システムはさらに、データをユーザ入力デバイスから受信し、処理する、プロセッサを含む。さらに、本システムは、プロセッサによって実行可能なプログラマブルコードを保持するためのメモリであって、プログラマブルコードは、ユーザ相互作用の開始時に、相互作用可能オブジェクトの選択を示すデータを受信するステップと、相互作用可能オブジェクトとのユーザ相互作用の終了を示すデータを受信するステップと、ユーザ相互作用の終了時の相互作用可能オブジェクトの場所を決定するステップと、ユーザ相互作用の終了時の相互作用可能オブジェクトの場所が相互作用可能オブジェクトの初期プリズム外にあるとき、ユーザ相互作用の終了時に、相互作用可能オブジェクトと関連付けられたデータのための新しいプリズムを作成するステップとのための命令を含む、メモリを含む。
さらに別の実施形態では、システムは、3次元コンテンツを表示するように構成される、複合現実ディスプレイデバイスを含む。本システムはまた、ユーザの物理的移動を検出するように構成される、ユーザ入力デバイスを含む。本システムはさらに、データをユーザ入力デバイスから受信し、処理する、プロセッサを含む。さらに、本システムは、プロセッサによって実行可能なプログラマブルコードを保持するためのメモリであって、プログラマブルコードは、ユーザ相互作用の開始時に、第1のプリズム内に含有される相互作用可能オブジェクトの選択を示すデータを受信するステップと、ユーザ相互作用の開始と終了との間のユーザ相互作用に対応するユーザの物理的移動を表すデータが、相互作用可能オブジェクトがユーザ相互作用の終了時に第1のプリズム外にあることを示すとき、相互作用可能オブジェクトと関連付けられたデータを含有するように第2のプリズムをユーザ相互作用の終了時の相互作用可能オブジェクトの場所に作成するステップとのための命令を含む、メモリを含む。
本願明細書は、例えば、以下の項目も提供する。
(項目1)
方法であって、
ユーザ相互作用の開始時に、第1のプリズム内に含有される相互作用可能オブジェクトの選択を示すデータを受信することと、
前記相互作用可能オブジェクトとのユーザ相互作用の終了を示すデータを受信することと、
前記ユーザ相互作用の開始と終了との間に、前記第1のプリズムからの前記相互作用可能オブジェクトの除去に対応する前記ユーザの物理的移動を示すデータを受信することと、
前記相互作用可能オブジェクトとのユーザ相互作用の終了時に、前記相互作用可能オブジェクトと関連付けられたデータを含有するように第2のプリズムを作成することと
を含む、方法。
(項目2)
前記相互作用可能オブジェクトが前記第1のプリズムの境界外に位置するときの前記ユーザ相互作用の開始と終了との間に、前記相互作用可能オブジェクトと関連付けられたデータの視覚的プレビューを前記相互作用可能オブジェクトの場所に表示することをさらに含む、項目1に記載の方法。
(項目3)
ユーザ入力デバイスが、前記相互作用可能オブジェクトの選択を示すデータと、前記相互作用可能オブジェクトとのユーザ相互作用の終了を示すデータとを提供することをさらに含む、項目1に記載の方法。
(項目4)
前記ユーザ入力デバイスは、触覚的コントローラである、項目3に記載の方法。
(項目5)
前記触覚的コントローラは、少なくとも6自由度を有するトーテムデバイスに対応する、項目4に記載の方法。
(項目6)
前記ユーザの物理的移動は、前記触覚的コントローラと関連付けられた処理システムにおいて、イベントオブジェクトに変換され、前記イベントオブジェクトは、前記触覚的コントローラの移動または位置付けに関するデータに相関する、項目4に記載の方法。
(項目7)
前記ユーザ相互作用の終了時の前記相互作用可能オブジェクトの場所は、前記相互作用可能オブジェクトの選択後、トリガが前記触覚的コントローラに関して解放された場所を識別することによって決定される、項目4に記載の方法。
(項目8)
前記ユーザ入力デバイスは、ユーザジェスチャを検出するためのカメラである、項目3に記載の方法。
(項目9)
前記相互作用可能オブジェクトの選択を示すデータは、選択ジェスチャに対応する、項目8に記載の方法。
(項目10)
前記相互作用可能オブジェクトとのユーザ相互作用の終了を示すデータは、解放ジェスチャに対応する、項目8に記載の方法。
(項目11)
前記相互作用可能オブジェクトの選択を示すデータは、リンクと相互作用する前記ユーザの身体の少なくとも一部に対応する、項目1に記載の方法。
(項目12)
前記リンクと関連付けられたURLに関するコンテンツにアクセスすることによって、前記リンクのプレビューが生成される、項目11に記載の方法。
(項目13)
前記ユーザの物理的移動を示すデータを受信することをさらに含み、前記ユーザの物理的移動は、前記プレビューの物理的移動に対応する、項目12に記載の方法。
(項目14)
前記相互作用可能オブジェクトは、前記ユーザ相互作用を用いることで開かれることと、設置されることとの両方が、行われる、項目1に記載の方法。
(項目15)
前記相互作用可能オブジェクトに関する配向が、
前記ユーザ相互作用の終了時の前記相互作用可能オブジェクトの場所の面法線を決定することと、
前記相互作用可能オブジェクトと関連付けられたデータの配向を決定することと、
前記座標場所の面法線と、前記相互作用可能オブジェクトと関連付けられたデータの配向とを整合させることと
によって決定される、項目1に記載の方法。
(項目16)
前記相互作用可能オブジェクトは、ウォールハンギングを備える、項目1に記載の方法。
(項目17)
方法であって、
相互作用可能オブジェクトを識別することと、
前記相互作用可能オブジェクトに対応するユーザの物理的移動を識別することと、
前記ユーザの物理的移動に基づいて、前記相互作用可能オブジェクトと関連付けられたデータに関する座標場所を決定することと、
前記相互作用可能オブジェクトと関連付けられたデータを前記ユーザの物理的移動に対応する前記座標場所に設置することと
を含む、方法。
(項目18)
システムであって、
3次元コンテンツを表示するように構成される複合現実ディスプレイデバイスと、
ユーザの物理的移動を検出するように構成されるユーザ入力デバイスと、
データを前記ユーザ入力デバイスから受信し、処理するプロセッサと、
前記プロセッサによって実行可能なプログラマブルコードを保持するためのメモリであって、前記プログラマブルコードは、相互作用可能オブジェクトを識別することと、前記相互作用可能オブジェクトに対応するユーザの物理的移動を識別することと、前記ユーザの物理的移動に基づいて、前記相互作用可能オブジェクトと関連付けられたデータに関する座標場所を決定することと、前記相互作用可能オブジェクトと関連付けられたデータを前記ユーザの物理的移動に対応する前記座標場所に設置することとのための命令を含む、メモリと
を備える、システム。
(項目19)
コンピュータ可読媒体上に具現化されるコンピュータプログラム製品であって、前記コンピュータ可読媒体は、その上に記憶される命令のシーケンスを有し、前記命令のシーケンスは、プロセッサによって実行されると、前記プロセッサに、
相互作用可能オブジェクトを識別することと、
前記相互作用可能オブジェクトに対応するユーザの物理的移動を識別することと、
前記ユーザの物理的移動に基づいて、前記相互作用可能オブジェクトと関連付けられたデータに関する座標場所を決定することと、
前記相互作用可能オブジェクトと関連付けられたデータを前記ユーザの物理的移動に対応する前記座標場所に設置することと
を含む方法を実行させる、コンピュータプログラム製品。
(項目20)
方法であって、
ユーザ相互作用の開始時に、相互作用可能オブジェクトの選択を示すデータを受信することと、
前記相互作用可能オブジェクトとのユーザ相互作用の終了を示すデータを受信することと、
前記ユーザ相互作用の終了時の前記相互作用可能オブジェクトの場所を決定することと、
前記相互作用可能オブジェクトと関連付けられたデータを前記ユーザ相互作用の終了時の前記相互作用可能オブジェクトの場所に設置することと
を含む、方法。
(項目21)
方法であって、
ユーザ相互作用の開始時に、相互作用可能オブジェクトの選択を示すデータを受信することと、
前記相互作用可能オブジェクトとのユーザ相互作用の終了を示すデータを受信することと、
前記ユーザ相互作用の終了時の前記相互作用可能オブジェクトの場所を決定することと、
前記ユーザ相互作用の終了時の前記相互作用可能オブジェクトの場所が前記相互作用可能オブジェクトの初期プリズム外にあるとき、前記ユーザ相互作用の終了時に、前記相互作用可能オブジェクトと関連付けられたデータのための新しいプリズムを作成することと
を含む、方法。
(項目22)
方法であって、
ユーザ相互作用の開始時に、第1のプリズム内に含有される相互作用可能オブジェクトの選択を示すデータを受信することと、
前記ユーザ相互作用の開始と終了との間の前記ユーザ相互作用に対応する前記ユーザの物理的移動を表すデータが、前記相互作用可能オブジェクトが前記ユーザ相互作用の終了時に前記第1のプリズム外にあることを示すとき、前記相互作用可能オブジェクトと関連付けられたデータを含有するように第2のプリズムを前記ユーザ相互作用の終了時の前記相互作用可能オブジェクトの場所に作成することと
を含む、方法。
(項目23)
システムであって、
3次元コンテンツを表示するように構成される複合現実ディスプレイデバイスと、
ユーザの物理的移動を検出するように構成されるユーザ入力デバイスと、
データを前記ユーザ入力デバイスから受信し、処理するプロセッサと、
前記プロセッサによって実行可能なプログラマブルコードを保持するためのメモリであって、前記プログラマブルコードは、ユーザ相互作用の開始時に、第1のプリズム内に含有される相互作用可能オブジェクトの選択を示すデータを受信することと、前記相互作用可能オブジェクトとのユーザ相互作用の終了を示すデータを受信することと、前記ユーザ相互作用の開始と終了との間に、前記第1のプリズムからの前記相互作用可能オブジェクトの除去に対応する前記ユーザの物理的移動を示すデータを受信することと、前記相互作用可能オブジェクトとのユーザ相互作用の終了時に、前記相互作用可能オブジェクトと関連付けられたデータを含有するように第2のプリズムを作成することとのための命令を含む、メモリと
を備える、システム。
(項目24)
システムであって、
3次元コンテンツを表示するように構成される複合現実ディスプレイデバイスと、
ユーザの物理的移動を検出するように構成されるユーザ入力デバイスと、
データを前記ユーザ入力デバイスから受信し、処理するプロセッサと、
前記プロセッサによって実行可能なプログラマブルコードを保持するためのメモリであって、前記プログラマブルコードは、ユーザ相互作用の開始時に、相互作用可能オブジェクトの選択を示すデータを受信することと、前記相互作用可能オブジェクトとのユーザ相互作用の終了を示すデータを受信することと、前記ユーザ相互作用の終了時の前記相互作用可能オブジェクトの場所を決定することと、前記ユーザ相互作用の終了時の前記相互作用可能オブジェクトの場所が前記相互作用可能オブジェクトの初期プリズム外にあるとき、前記ユーザ相互作用の終了時に、前記相互作用可能オブジェクトと関連付けられたデータのための新しいプリズムを作成することとのための命令を含む、メモリと
を備える、システム
(項目25)
システムであって、
3次元コンテンツを表示するように構成される複合現実ディスプレイデバイスと、
ユーザの物理的移動を検出するように構成されるユーザ入力デバイスと、
データを前記ユーザ入力デバイスから受信し、処理するプロセッサと、
前記プロセッサによって実行可能なプログラマブルコードを保持するためのメモリであって、前記プログラマブルコードは、ユーザ相互作用の開始時に、第1のプリズム内に含有される相互作用可能オブジェクトの選択を示すデータを受信することと、前記ユーザ相互作用の開始と終了との間の前記ユーザ相互作用に対応する前記ユーザの物理的移動を表すデータが、前記相互作用可能オブジェクトが前記ユーザ相互作用の終了時に前記第1のプリズム外にあることを示すとき、前記相互作用可能オブジェクトと関連付けられたデータを含有するように第2のプリズムを前記ユーザ相互作用の終了時の前記相互作用可能オブジェクトの場所に作成することとのための命令を含む、メモリと
を備える、システム。
図面は、本開示の種々の実施形態の設計および有用性を図示する。図は、縮尺通りに描かれておらず、類似構造または機能の要素は、図全体を通して同様の参照番号によって表されることに留意されたい。本開示の種々の実施形態の上記に列挙されたものおよび他の利点および目的を得る方法をより深く理解するために、上記で簡単に説明された本開示のより詳細な説明が、添付の図面に図示される、その具体的実施形態を参照して与えられるであろう。これらの図面は、本開示の典型的実施形態のみを描写し、したがって、その範囲の限定と見なされないという理解の上、本開示は、添付の図面の使用を通して、付加的具体性および詳細とともに説明および解説されるであろう。
図1は、いくつかの実施形態による、ユーザの3D環境内に表示されるべき2Dコンテンツを分解するための拡張現実環境を図示する。
図2は、いくつかの実施形態による、2Dコンテンツの要素とユーザの3D環境の例示的マッピングを図示する。
図3は、いくつかの実施形態による、3D環境内に表示されるべき2Dコンテンツを分解するための方法を図示する、フロー図である。
図4は、いくつかの実施形態による、2Dコンテンツ内の要素を識別するための方法を図示する、フロー図である。
図5は、いくつかの実施形態による、2Dコンテンツから分解された要素を記憶するためのテーブルの実施例を示す。
図6は、いくつかの実施形態による、ユーザのローカル環境から表面を識別するための方法を図示する、フロー図である。
図7は、いくつかの実施形態による、ユーザのローカル環境から識別された表面のインベントリを記憶するためのテーブルの実施例を示す。
図8は、いくつかの実施形態による、2Dコンテンツからの要素を利用可能な表面にマッピングするための方法を図示する、フロー図である。
図9は、いくつかの実施形態による、2Dコンテンツからの要素のユーザのローカル環境からの表面へのマッピングを記憶するためのテーブルの実施例を示す。
図10Aは、相互作用可能オブジェクトと関連付けられたデータの物理的設置および操作を実装するためのアプローチのフローチャートを示す。
図10Bは、ブラウザウィンドウの物理的設置および操作を実装するためのアプローチのフローチャートを示す。
図10Cは、ウォールハンギングの物理的設置および操作を実装するためのアプローチのフローチャートを示す。
図11A-Fは、ウィンドウを複合現実環境内に物理的に設置するためのアプローチの例証される実施例を提供する。 図11A-Fは、ウィンドウを複合現実環境内に物理的に設置するためのアプローチの例証される実施例を提供する。 図11A-Fは、ウィンドウを複合現実環境内に物理的に設置するためのアプローチの例証される実施例を提供する。 図11A-Fは、ウィンドウを複合現実環境内に物理的に設置するためのアプローチの例証される実施例を提供する。 図11A-Fは、ウィンドウを複合現実環境内に物理的に設置するためのアプローチの例証される実施例を提供する。 図11A-Fは、ウィンドウを複合現実環境内に物理的に設置するためのアプローチの例証される実施例を提供する。
図12A-Fは、複合現実環境内の相互作用可能オブジェクトと関連付けられたデータを物理的に設置するためのアプローチの例証される実施例を提供する。 図12A-Fは、複合現実環境内の相互作用可能オブジェクトと関連付けられたデータを物理的に設置するためのアプローチの例証される実施例を提供する。 図12A-Fは、複合現実環境内の相互作用可能オブジェクトと関連付けられたデータを物理的に設置するためのアプローチの例証される実施例を提供する。 図12A-Fは、複合現実環境内の相互作用可能オブジェクトと関連付けられたデータを物理的に設置するためのアプローチの例証される実施例を提供する。 図12A-Fは、複合現実環境内の相互作用可能オブジェクトと関連付けられたデータを物理的に設置するためのアプローチの例証される実施例を提供する。 図12A-Fは、複合現実環境内の相互作用可能オブジェクトと関連付けられたデータを物理的に設置するためのアプローチの例証される実施例を提供する。
図13は、本開示の実施形態を実装するために好適な例証的コンピューティングシステムのブロック図である。
種々の実施形態が、ここで、当業者が本開示を実践することを可能にするように本開示の例証的実施例として提供される、図面を参照して詳細に説明されるであろう。着目すべきこととして、下記の図および実施例は、本開示の範囲を限定することを意味するものではない。本開示のある要素が、公知のコンポーネント(または方法またはプロセス)を使用して、部分的または完全に実装される場合、本開示の理解のために必要なそのような公知のコンポーネント(または方法またはプロセス)のその部分のみが、説明され、そのような公知のコンポーネント(または方法またはプロセス)の他の部分の詳細な説明は、本開示を曖昧にしないように省略されるであろう。さらに、種々の実施形態は、例証として本明細書に参照されるコンポーネントの現在および将来的公知の均等物を包含する。
ウェブページ分解
本開示の実施形態は、空間的に編成された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つまたはそれらの組み合わせであってもよい。触覚的インターフェースデバイスは、人間が、身体感覚および移動を通してコンピュータと相互作用することを可能にする、デバイスである。触覚的とは、コンピューティングデバイス上でアクションまたはプロセスを実施するための触知的フィードバックまたは他の身体感覚を包含する、人間とコンピュータの相互作用技術のタイプを指す。
ユーザ感知システムは、頭部搭載型システム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のページ全体を含有してもよい。いくつかの実施形態では、仮想Rolodex190はまた、第1のタブのコンテンツの全部または一部を含有してもよい。ユーザ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 2022168082000002

Figure 2022168082000003
ウェブページ開発者によって提供される、例示的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 2022168082000004

Figure 2022168082000005

Figure 2022168082000006
例示的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のコンテンツを変化させてもよい。
(オブジェクトの物理的操作)
本発明のいくつかの実施形態は、オブジェクトの作成、物理的ナビゲーション、および操作を提供するためのアプローチを対象とする。ユーザとの相互作用の範囲を、オブジェクトを操作するために従来のマウス/キーボードタイプの相互作用の使用を伴う、2D空間内に表示されるオブジェクトの表現のみに限定する、既知のコンピューティングシステムと異なり、本実施形態は、コンピューティングシステムとの物理的相互作用を可能にする、3D空間内のユーザによる相互作用に関する。これは、ユーザが、物理的移動およびジェスチャを利用して、双方向環境内のオブジェクトの移動および設置を制御することを可能にする。
図10Aは、いくつかの実施形態による、オブジェクトの物理的設置および操作を実装するためのアプローチのフローチャートを示す。1001では、1つ以上の相互作用可能オブジェクトが、ホストアプリケーションのために、識別され、複合現実システムのディスプレイデバイスを通して、ユーザに提示される。相互作用可能オブジェクトは、実オブジェクトと仮想オブジェクトの両方を含んでもよい。仮想オブジェクトは、仮想化されたユニバース内の構造体としてのみ存在し、コンピュータ生成レンダリングとして生成され/頭部搭載型ディスプレイデバイスを通してユーザに表示される、オブジェクトである。実オブジェクトは、実オブジェクトに対応する、デジタルコンピュータ生成ディスプレイオブジェクトレンダリングとして表示されるか(例えば、VRアプリケーションのため)、またはディスプレイデバイスの透明部分を通して、実オブジェクト自体として視認可能であるか(例えば、ARアプリケーションのため)のいずれかであってもよい。いくつかの実施形態では、相互作用可能オブジェクトは、相互作用が相互作用可能オブジェクトとユーザまたはHMDシステムとの間で検出されると、HMDシステムの変化を生じさせる、実または仮想オブジェクトであってもよい。
1003では、相互作用可能オブジェクトのうちの1つ以上のものを選択するためのユーザ制御入力が、受信される。本選択は、コントローラデバイス(マウスまたは触覚的コントローラ等)を使用して、ポインタオブジェクトをホバリングさせることによって促進され得、ボタンまたはトリガをトリガさせることは、ポインタが現在ホバリングされているオブジェクトを選択するためのユーザの所望を識別する。ポインタによってホバリングされたオブジェクトは、相互作用可能オブジェクトに関するソースデータに対応する、選択可能リンク/URLであってもよい。代替として、選択は、ユーザによる物理的移動/ジェスチャのみを用いて、すなわち、ユーザが制御デバイスを操作する必要なく、生じてもよい。例えば、複合現実システムは、ユーザの手/腕の移動を追跡する、1つ以上のカメラデバイスを採用してもよく、したがって、ユーザの手が相互作用可能オブジェクト/リンク上にホバリングするときを識別することができる。あるジェスチャが、「選択」ジェスチャとして認識されるように、システム内で事前に構成されてもよい(例えば、ユーザの手が、ポインタとなる指がオブジェクトにわたって/それに向けられている状態で保持されるとき等、手が選択位置に構成されるときの手の二重揺動)。したがって、選択ジェスチャが、ユーザの手が相互作用可能オブジェクトにわたってホバリングされている間に認識されると、そのオブジェクトは、システムによって、ユーザによって選択されていると認識されるであろう。選択ジェスチャの他の実施形態は、「解放」ジェスチャに関連して下記に説明される。
1005では、複合現実システムが、選択されたオブジェクトに対するユーザの物理的移動を識別および追跡する。例えば、ユーザが、第1の場所におけるオブジェクトを選択している間、ユーザは、そのオブジェクトを第2の場所に移動させることを所望し得る。本実施形態では、第2の場所へのオブジェクトのその移動は、第1の場所から第2の場所へのユーザの物理的移動によって実装されてもよい。これは、例えば、第1の場所から第2の場所へのユーザの選択腕の移動によって、および/またはユーザが第2の物理的場所に歩いて行く場合、生じてもよい。ユーザの物理的移動は、ユーザによって保持されているコントローラデバイスに関する位置の任意の変化を識別することによって、例えば、コントローラデバイス内に内蔵され得る任意のセンサ/エミッタの位置変化を介して、ユーザによって保持される触覚的コントローラの物理的移動を追跡することによって、および/またはコントローラデバイス上の任意のマーカの移動を視覚的に追跡することによって、認識および追跡されてもよい。代替として、ユーザの物理的移動は、ユーザの物理的身体の関連部分の物理的移動を識別することによって、認識および追跡されてもよく、例えば、カメラデバイスが、ユーザの選択腕/手の移動および場所を視覚的に追跡する。
ユーザが、物理的移動に従事している間、1007において、相互作用可能オブジェクトと関連付けられたデータが、対応して、ユーザの移動に相関する、新しい位置/場所の中に表示される。例えば、ユーザが、選択腕を用いて、オブジェクトを選択し、現在、選択腕を第1の場所から新しい場所に移動させている場合、相互作用可能オブジェクト(すなわち、選択されたオブジェクト)と関連付けられたデータは、ユーザの腕の移動に対応する、第2の場所内に視覚的に表示されるであろう。効率目的のために、いくつかの実施形態は、任意の継続中の移動の間、相互作用可能オブジェクトと関連付けられたデータのサムネイル表示および/または低分解能プレビューのみを表示してもよく、高分解能表示バージョンは、オブジェクトの最終設置に応じてのみ実装される。
オブジェクトは、以降、「プリズム」と称される、境界された体積の中にレンダリングされてもよい。各プリズムは、ユニバースアプリケーションが、プリズム自体を管理することによって、VR/AR環境内の仮想コンテンツの設置および表示を管理し得るように、ユニバースアプリケーションが、VR/AR環境内でプリズムを管理および表示することを可能にする、特性およびプロパティを有してもよい。いくつかの実施形態では、プリズムは、アプリケーションからの仮想コンテンツがその中に表示される、空間の立方体および/または長方形体積として実装され、アプリケーションは、アプリケーションが1つを上回るプリズムの中にレンダリングされるときのアプリケーションのアプリケーションインスタンスである。プリズムは、現在の場所に関するマルチアプリケーションシーングラフのサブツリーを表してもよい。現在の場所において以前に展開された1つ以上のプリズムを読み出すステップは、1つ以上のプリズムに関するインスタンスデータを外部データベースから読み出すステップと、ローカルプリズムデータベースを1つ以上のプリズムに関するインスタンスデータで再構成するステップとを含み、プリズム毎のインスタンスデータは、プリズムを定義するプリズムプロパティのデータ構造を含み、プリズムプロパティは、場所、配向、範囲幅、範囲高さ、範囲深度、アンカタイプ、またはアンカ位置のうちの少なくとも1つを含み、プリズム毎のインスタンスデータは、アプリケーションによってプリズムの中に以前にレンダリングされた仮想コンテンツの状態情報を含む、アプリケーション特有プロパティのキー値ペアを含む。プリズムを実装するためのアプローチに関するさらなる詳細は、「METHODS AND SYSTEM FOR MANAGING AND DISPLAYING VIRTUAL CONTENT IN AN AUGMENTED REALITY SYSTEM」と題され、2017年12月22日に出願された同時係属中の米国出願第62/610,101号(参照することによって全体として本明細書に組み込まれる)に説明される。
ユーザが、相互作用可能オブジェクトを選択する際、認識可能な物理的移動を行うと、相互作用可能オブジェクトに対応するデータを保持する、新しいプリズムが、作成され、相互作用可能オブジェクトに対応するデータの移動を実装するための新しい場所に移動される。選択されたオブジェクトのためのプリズムの座標場所が、選択されたオブジェクトの新しい場所を表すように、ユニバースアプリケーション内で修正され、プリズムの適切なプロパティ(場所プロパティ等)は、新しい場所座標を表すように修正される。
オブジェクトの他のプロパティもまた、オブジェクトの新しい位置付けを表すように修正される必要があり得る。例えば、オブジェクトの配向は、オブジェクトが表示されるべき新しい場所において変化し得る。ワーピングが、新しいディスプレイ場所内のオブジェクトの表示される配向を修正するために適用されてもよい。容認不可能なビデオアーチファクトがワーピングの結果として生じ得る限りにおいて(例えば、ワーピングが、表示されるオブジェクト画像を過剰に歪曲させる、および/またはワーピングが、表示されることができない新しい配向に関する過剰な量のオブジェクトデータをもたらす場合)、再レンダリングが、新しい場所内における表示のためにオブジェクトをレンダリングするために生じてもよい。
相互作用可能オブジェクトと関連付けられたデータに関する配向を決定するために、任意の好適なアプローチが、とられてもよい。例えば、いくつかの実施形態では、相互作用可能オブジェクトと関連付けられたデータの配向は、略平面コンテンツの面法線であってもよい、または配向は、ホストアプリケーションがコンテンツが閲覧されるように意図した好ましい方向を示すように、事前に定義され、相互作用可能オブジェクトと関連付けられたデータと相関されてもよい。実施例として、アバタは、アバタの眼間の点からの面法線を伴う、配向ベクトルを有するであろう。配向はまた、適用され得る任意の他の好適な方法において決定されてもよい。
ある時点で、ユーザは、選択されたオブジェクトの最終設置を新しい場所において実装することを模索し得る。これは、例えば、ユーザがコントローラデバイス上の選択ボタン/トリガを解放するときを識別することによって、認識されてもよい。加えて、コントローラデバイスが、使用されないときでも、「解放ジェスチャ」が、事前に構成され、複合現実システムによって認識され、ユーザが適切なジェスチャを行っていることを識別することによって、オブジェクトの設置のための場所を識別してもよい。1009では、選択されたオブジェクトの設置が、認識され、選択可能オブジェクトと関連付けられたデータの最終レンダリングが、次いで、その新しい場所において行われる。
いくつかの実施形態では、解放ジェスチャの開始は、選択ジェスチャの終了と同一であってもよい。例えば、ユーザの手は、開いた位置から開始し、ピンチ(例えば、選択ジェスチャ)へと閉じられてもよく、ユーザ入力は、継続して、同一ピンチから開始し、開いた位置に開かれてもよい(例えば、解放ジェスチャ)。したがって、単一ユーザ入力/相互作用が、相互作用可能オブジェクトを選択(すなわち、選択ジェスチャ)および解放(すなわち、連続解放ジェスチャ)するために使用されてもよい。いくつかの実施形態では、ユーザは、URLリンク等の選択可能オブジェクトをピンチし(例えば、開いた手から開始し、指の先端が触れるように指を移動させる)、URLリンクをブラウザウィンドウ外にドラッグし、URLを解放してもよく(例えば、ピンチ移動を逆にすることによって)、これは、単一ユーザ相互作用と見なされ得る。他の実施形態では、第1のピンチは、仮想オブジェクトを選択するために使用されてもよく、第2のピンチは、相互作用可能オブジェクトを解放するために使用されてもよい。
例証的実施形態として、本開示は、ここで、物理的ナビゲーションを用いたブラウザのためのウィンドウ作成を説明するであろう。説明するために、複合現実システムでは、ユーザの作業空間は、ディスプレイ画面のサイズによって限定されないことを考慮する。したがって、従来のブラウザと異なり、複合現実システム内のブラウザウィンドウは、ユーザの環境内の任意の場所に設置および保定されることができる。問題は、従来のブラウザ技術が、表示可能ブラウザ場所がディスプレイ画面の範囲に限定されなければならないという仮定とともに構成されることである。
従来のブラウザの本限界に対処すために、本発明のいくつかの実施形態は、ブラウザウィンドウの物理的ナビゲーションおよび操作を提供するためのアプローチを対象とする。一般的なアイディアは、複合現実システムのユーザが、ブラウザウィンドウをユーザの環境内の任意の適した場所に設置する能力を提供され、そのウィンドウの設置が、ユーザの物理的操作アクティビティによって達成されることである。
図10Bは、ブラウザウィンドウの物理的設置および操作を実装するためのアプローチのフローチャートを示す。1002では、ユーザが、ポインティングオブジェクト(カーソル/ポインタ等)を操作し、ブラウザウィンドウ上のリンク上にホバリングさせる。ブラウザを実装する、下層コンピューティングシステム/OS内において、ポインタオブジェクトの位置が、追跡および識別される(1052)。これは、例えば、システム内で1つ以上のイベントオブジェクトを追跡および精査することによって生じてもよく、イベントオブジェクトは、マウスポインタに関する移動イベントに関連する。マウス/カーソル位置が、イベントオブジェクトに関して報告され、ウィンドウにアタッチされたハンドラによって受信され得る。
1004では、ユーザが、操作制御機構を使用して、トリガ制御を押下および保持する。例えば、トーテムとして実装される触覚的コントローラが、ユーザが、リンクにわたってトリガを押下および保持することを可能にするために採用されてもよい。トーテムは、AR/VRヘッドセットに対するその位置および配向を追跡する、ハンドヘルドコントローラである。いくつかの実施形態では、トーテムは、6自由度(6DOF)コントローラであってもよく、ユーザは、トーテムを上または下に移動させることによって、(球状シェル上の)高度および方位角においてポインタを移動させてもよい。オブジェクトをより近くまたはより遠くに移動させるために、ユーザは、トーテム上のジョイスティックを使用して、「押動」または「引動」させてもよい。1054では、下層OSが、トリガイベントが生じたことを示す、イベントオブジェクトを受信する。
リンクコンテンツのプレビューが、1006において生成されてもよい。いくつかの実施形態では、これは、トリガが検出されたリンクと関連付けられたURLにアクセスすることによって実施される(1056において)。URLは、場所(例えば、ウェブサイト)を識別するために解析され、そこから、場所識別子(例えば、IPアドレス)が、その場所に関して識別される。接続(例えば、TCP接続)が、次いで、確立され、HTTPサーバとの通信が、実施され、次いでレンダリングされる、コンテンツを識別する。本実施形態では、コンテンツレンダリングは、リンクコンテンツの「サムネイル」ベースのレンダリングが生成されるように、プレビューベースで実施される。
トーテムトリガを保持し続ける間、ユーザは、物理的ナビゲーション(例えば、手、腕、および身体移動)を実施し、トーテムを所望の新しいウィンドウ場所に向ける。これは、ウィンドウ場所の物理的ナビゲーションをもたらす(1008)。物理的移動は、トーテムデバイスの動作によって生成され、および/またはそれに関連する、イベントオブジェクトに変換されてもよく、これは、トーテムの移動および/または位置付けに関するデータに相関する(1058)。ユーザの物理的移動に関して検出された本移動/位置付けは、プレビューウィンドウの移動/位置付けに適用され、ユーザに表示されているプレビューウィンドウの動的位置付けは、ユーザの物理的移動に対応する。
1010では、ユーザは、次いで、トーテムトリガを所望の場所において解放し、ウィンドウを設置する。本時点で、1060において、ブラウザウィンドウが、トーテムトリガが解放された場所に対応する座標に作成される。いくつかの実施形態によると、ブラウザウィンドウを各アプリケーションによってVR/AR環境内で1対1ベースで独立して管理する代わりに、ウィンドウは、代わりに、プリズムの中にレンダリングされる。
図11A-Fは、ウィンドウを複合現実環境内に物理的に設置するための本アプローチの例証される実施例を提供する。図11Aは、複合現実環境の表現を示し、これは、ユーザ108によって頭部搭載型システム160を通して視認されるような物理的環境を含む。コンテンツ(例えば、ウェブページ)が、ネットワーク120を通してアクセスされるウェブブラウザ1104を通して、閲覧されることができる。ブラウザ1104に示されるコンテンツは、1つ以上の選択可能リンク1106を含んでもよい。
ネットワーク120は、インターネット、内部ネットワーク、プライベートクラウドネットワーク、パブリッククラウドネットワーク等であってもよい。ウェブブラウザ1104はまた、ネットワーク120を介して、プロセッサ170に動作可能に結合される。プロセッサ170は、頭部搭載型システム160と別個の隔離されたコンポーネントとして示されるが、代替実施形態では、プロセッサ170は、頭部搭載型システム160の1つ以上のコンポーネントと統合されてもよく、および/または、例えば、ネットワーク120等の環境100内の他のシステムコンポーネントの中に統合され、コンピューティングネットワーク125および記憶デバイス130にアクセスしてもよい。プロセッサ170は、頭部搭載型システム160、ローカル記憶デバイス140、ウェブブラウザ1104、コンピューティングネットワーク125、および記憶デバイス130から受信されたビデオ、オーディオ、およびコンテンツ等の情報を受信および処理するためのソフトウェアとともに構成されてもよい。
頭部搭載型システム160は、ユーザインターフェース、ユーザ感知システム、環境感知システム、およびプロセッサ(全て図示せず)を含む、仮想現実(VR)または拡張現実(AR)頭部搭載型システムであってもよい。頭部搭載型システム160は、ユーザ108に、デジタル世界と相互作用し、それを体験するためのインターフェースを提示する。そのような相互作用は、ユーザおよびデジタル世界、環境100とインターフェースをとる1人以上の他のユーザ、およびデジタルおよび物理的世界内のオブジェクトを伴ってもよい。
ユーザインターフェースは、2Dコンテンツを受信するステップと、ユーザインターフェースを通したユーザ入力によって、2Dコンテンツ内の要素を選択するステップとを含んでもよい。ユーザインターフェースは、触覚的インターフェースデバイス、キーボード、マウス、ジョイスティック、モーションキャプチャコントローラ、光学追跡デバイス、およびオーディオ入力デバイスのうちの少なくとも1つまたはそれらの組み合わせであってもよい。トーテム1102等の触覚的インターフェースデバイスは、人間が、身体感覚および移動を通してコンピュータと相互作用することを可能にする、デバイスである。触覚的とは、コンピューティングデバイス上でアクションまたはプロセスを実施するための触知的フィードバックまたは他の身体感覚を包含する、人間とコンピュータの相互作用技術のタイプを指す。
ユーザ感知システムは、頭部搭載型システム160を装着しているユーザ108に関連するある特徴、特性、または情報を検出するように動作可能である、1つ以上のセンサを含んでもよい。例えば、いくつかの実施形態では、センサは、例えば、以下、すなわち、縮瞳/散瞳、各瞳孔の角度測定値/位置付け、球形度、眼形状(眼形状は、経時的に変化するため)、および他の解剖学的データのうちの1つ以上のもの等、ユーザ108のリアルタイム光学特性/測定値を検出することが可能なカメラまたは光学検出/走査回路を含んでもよい。本データは、頭部搭載型システム160によって使用され、ユーザの視認体験を向上させ得る、情報(例えば、ユーザの視覚的視点)を提供する、または計算するために使用されてもよい。環境感知システムはまた、ユーザの物理的環境からのデータを取得するための1つ以上のセンサを含んでもよい。センサによって検出されたオブジェクトまたは情報は、頭部搭載型システム160への入力として提供されてもよい。いくつかの実施形態では、本入力は、仮想世界とのユーザ相互作用を表してもよい。
図11Bに図示されるように、ユーザは、ブラウザ1104内の選択可能リンク1106を押下および保持し得る。ユーザ108によって制御可能なポインタ1108が、選択可能リンク1108上にホバリングするために採用されてもよい。ユーザが、リンク上にホバリングさせると、ユーザは、次いで、トーテム1102上のトリガを押下および保持し得る。
図11Cに示されるように、ユーザが、トーテムトリガを押下および保持すると、プレビューウィンドウ1110aが、ユーザに表示される。プレビューウィンドウ1110aは、リンク1106に関するコンテンツに対応する。
プレビューウィンドウ1110aは、物理的様式において、ユーザ108によって操作され、プレビューウィンドウ1110aの表示される場所を変化させることができる。例えば、トーテムトリガを保持し続ける間、ユーザは、例えば、図11Dに示されるように、トーテムを保持する腕を新しい場所/位置に移動させることによって、その身体の一部を物理的に移動させ得る。図11Eに図示されるように、ユーザの身体の物理的移動は、プレビューウィンドウ1110aの場所を変化させる。これは、例えば、移動される身体部分内に保持されるトーテム1102の位置/配向の変化を検出すること(例えば、ユーザの手内に保持されるトーテムの移動の検出)によって遂行されてもよく、その物理的移動の検出は、プレビューウィンドウの対応する移動に変換される。したがって、プレビューウィンドウ(および移動中のウィンドウディスプレイ)の新しい位置のディスプレイは、例えば、ユーザの物理的移動の速度、物理的移動の距離、物理的移動の方向、および/または物理的移動に対応し得る、任意の他の好適なウィンドウ/ディスプレイパラメータによって制御されることができる。例えば、腕位置の比較的に小変位は、表示されるプレビューウィンドウの比較的に小移動に変換されるであろう一方、より比較的に大きい距離にわたって腕を移動させることは、ディスプレイウィンドウ位置のより比較的に大きい移動に変換されるであろう。別の実施例として、腕のより低速な移動は、移動中のプレビューウィンドウのより低速な表示移動に変換されるであろう一方、腕を比較的に高速で移動させることは、移動中のプレビューウィンドウの比較的に高速の移動に変換されるであろう。
ユーザは、次いで、ブラウザウィンドウが設置されるべき場所を選定することができる。図11Fに図示されるように、ユーザが、トーテムトリガを解放すると、トーテムトリガの解放時のプレビューウィンドウの場所が、新しいブラウザウィンドウが作成されるべき場所となる。
したがって、本実施形態は、リンクを選択し、それを新しい場所に移動させ、オブジェクトを解放し、ユーザが、コンテンツをその物理的環境内に設置、編成、および保存することを可能にする、新しいウィンドウを作成するためのアプローチを提供する。従来のデスクトップおよびモバイル環境と異なり、本設置は、物理的ナビゲーションを介して、ユーザが、その手、腕、および/または身体を使用して、コンテンツをユーザの空間の周囲で移動させることを可能にする。本形態のナビゲーションは、デスクトップおよびモバイルブラウザによって使用される仮想ナビゲーションよりはるかに効率的であって、ユーザに、その空間内でのブラウザウィンドウの作成および設置のより多くの制御を与える。
上記に説明されるように、本アプローチはまた、ユーザが、1つのユーザ相互作用(例えば、ボタンの1回のみの押下)を用いて、新しいウィンドウを開くことと、設置することとの両方を行うことを可能にするため、有利である。これは、ユーザが、最初に、新しいウィンドウを開くためにボタンを押下し、次いで、新しいウィンドウを第2の場所に移動/設置するためにボタンを押下することを要求する、他の相互作用アプローチに優る有意な改良である。
別の例証的実施形態として、本開示は、ここで、物理的操作を使用した任意の相互作用可能オブジェクトの設置を説明するであろう。具体的例証的実施形態は、絵画、仮想テレビ、仮想モニタ、または壁場所上に設置され得る任意の他のオブジェクト等のウォールハンギングオブジェクトの設置に関する。本例示的状況は、ユーザが、ユーザが家全体を通して壁上に掛けることを所望する、ウォールハンギング/写真のセットを有し得るが、ユーザが、それらを掛けるための場所を正確に把握していない場合があるというアイディアに関連する。本システムは、したがって、ユーザによって壁上の設置場所に物理的に操作され得る、写真/絵画のデジタルコピーをウォールハンギングアプリケーション内で作成するであろう。
図10Cは、いくつかの実施形態による、壁オブジェクトの物理的設置および操作を実装するためのアプローチのフローチャートを示す。1022では、ユーザが、ユーザ選択オブジェクト(カーソル/ポインタ等)を操作し、ブラウザウィンドウ等のホストアプリケーション上の相互作用可能コンテンツ(壁オブジェクト表現(アイコン)または壁オブジェクトへのリンク等)上にホバリングさせる。ホストアプリケーションを実装する、下層コンピューティングシステム/OS位置内において、ユーザ選択オブジェクトの位置が、追跡および識別される(1072)。これは、例えば、システム内で1つ以上のイベントオブジェクトを追跡および精査することによって生じてもよく、イベントオブジェクトは、ユーザ選択オブジェクトの移動イベントに関連する。ユーザ選択オブジェクト位置が、イベントオブジェクトに関して報告され、ホストアプリケーションにアタッチされたハンドラによって受信されてもよい。
1024では、ユーザが、トーテム上のトリガ等の操作制御機構を押下および保持する。例えば、トーテムとして実装される触覚的コントローラが、ユーザが、相互作用可能コンテンツが操作されると、付加的データが、アクセスされ、操作が生じる前と比較されるように、リンク、またはファイル、アプリケーションコンテンツ等の他の相互作用可能コンテンツを選択するために、トリガを押下および保持することを可能にするために採用されてもよい。1074では、下層OSが、操作制御機構イベント(トーテムトリガの押下または保持等)が生じたことを示す、イベントオブジェクトを受信する。操作制御機構イベントは、相互作用可能オブジェクトの選択または選択された相互作用可能オブジェクトの操作を示してもよい。
相互作用可能オブジェクトと関連付けられたデータのためのプレビューが、1026において生成されてもよい。いくつかの実施形態では、これは、操作制御機構が検出されたリンクと関連付けられたURL等の相互作用可能オブジェクトと関連付けられたデータにアクセスすることによって実施される(1076において)。いくつかの実施形態では、相互作用可能オブジェクトデータは、解析され、場所(例えば、ウェブサイト)を識別し、そこから、場所識別子(例えば、IPアドレス)が、その場所に関して識別される。接続(例えば、TCP接続)が、次いで、確立され、HTTPサーバとの通信が、実施され、次いでレンダリングされる、コンテンツを識別する。いくつかの実施形態では、コンテンツレンダリングは、ウォールハンギングのデジタルアウトラインがプレビューとして生成されるように、プレビューベースで実施される。
操作制御機構をアクティブ化し続ける間、ユーザは、物理的ナビゲーション(例えば、手、腕、および/または身体移動)を実施し、ユーザ選択オブジェクトを相互作用可能オブジェクトと関連付けられたデータに関する所望の壁場所に向ける。いくつかの実施形態では、これは、オブジェクト場所の物理的ナビゲーションをもたらし得る(1028)。物理的移動は、トーテムデバイスの動作によって生成され、および/またはそれに関連する、イベントオブジェクトに変換され、これは、トーテムの移動および/または位置付けに関するデータに相関する(1078)。ユーザの物理的移動に関して検出された本移動/位置付けは、プレビューウォールハンギングの移動/位置付けに適用され、ユーザに表示されているプレビューウォールハンギングの動的位置付けは、ユーザの物理的移動に対応する。
1030では、ユーザは、次いで、トーテムトリガを所望の場所に解放し、相互作用可能オブジェクトと関連付けられたデータを所望の壁場所に設置する。本時点で、1080において、相互作用可能オブジェクトの最終バージョンが、トーテムトリガが解放された場所に対応する座標に作成される。ウォールハンギングのフルデジタルコピー(例えば、ソースURLに位置する)が、相互作用可能オブジェクトの最終レンダリングを設置場所に生成するために使用される。
図12A-Fは、ウォールハンギングを複合環境内に物理的に設置するための本アプローチの例証される実施例を提供する。本図は、複合現実環境の表現を示し、これは、ユーザ108によって頭部搭載型システム160を通して視認されるような物理的環境を含む。ユーザは、ウォールハンギングオブジェクトが設置され得る、壁空間105を含む、種々の場所に位置してもよい。コンテンツ(例えば、相互作用可能オブジェクト/ウォールハンギング)は、例えば、1つ以上のアイコン/選択可能リンク/アイコン1106を通してアクセスされることができる。
図12Bに図示されるように、ユーザは、相互作用可能オブジェクト1106を押下および保持し得、例えば、ユーザ108によって動作されるコントローラは、相互作用可能オブジェクト1106上にホバリングするために採用されてもよい。ユーザが、オブジェクト上にホバリングさせると、ユーザは、次いで、コントローラ上のトリガを押下および保持し、オブジェクトを選択し得る。
図12Cに示されるように、ユーザが、コントローラトリガを押下および保持すると、ウォールハンギングオブジェクトのプレビュー1202が、ユーザに表示される。プレビュー1202は、リンク1106に位置するウォールハンギングのデジタルアウトラインおよび/またはサムネイルに対応し、相互作用可能オブジェクトと関連付けられたデータの視覚的表現である。
プレビュー1202は、物理的様式において、ユーザ108によって操作され、プレビュー1202の表示される場所を変化させてもよい。例えば、トーテムトリガを保持し続ける間、ユーザは、例えば、図12Dに示されるように、トーテムを保持する腕を新しい場所/位置に移動させることによって、その身体の一部を物理的に移動させることができる。図12Eに図示されるように、ユーザの身体の物理的移動は、プレビュー1202の場所を対応する壁場所に変化させる。これは、例えば、移動される身体部分内に保持されるトーテム1102の位置/配向の変化を検出すること(例えば、ユーザの手内に保持されるトーテムの移動の検出)によって遂行されてもよく、その物理的移動の検出は、プレビューウィンドウの対応する移動に変換される。したがって、プレビュー(および移動中のプレビューディスプレイ)の新しい位置のディスプレイは、例えば、ユーザの物理的移動の速度、物理的移動の距離、物理的移動の方向、および/または物理的移動に対応し得る、任意の他の好適なディスプレイパラメータによって制御されることができる。例えば、腕位置の比較的に小変位は、表示されるプレビューの比較的に小移動に変換されるであろう一方、より比較的に大きい距離にわたって腕を移動させることは、プレビューディスプレイのより比較的に大きい移動に変換されるであろう。別の実施例として、腕のより低速な移動は、移動中のプレビューのより低速な表示移動に変換されるであろう一方、腕を比較的に高速で移動させることは、移動中のプレビューの比較的に高速の移動に変換されるであろう。
ユーザは、次いで、ウォールハンギングが設置されるべき場所を選定することができる。図12Fに図示されるように、ユーザが、トーテムトリガを解放すると、トーテムトリガの解放時のプレビューの場所が、新しく作成されたウォールハンギングの場所となる。相互作用可能オブジェクトからのウォールハンギングのフルデジタルコピーが、次いで、読み出され、選択された設置場所における表示のためにレンダリングされる。
本アプローチの多数の利点が存在する。例えば、オブジェクトの設置を実装するための本物理的アプローチは、ユーザが、そのタスクを空間的に編成し、その物理的空間を使用して、コンテンツをグループ化し、関係を確立し、実世界オブジェクトのような意味を作成することを可能にする。加えて、仮想メニューおよびデフォルトオブジェクト/ウィンドウ設置のみを使用するのではなく、物理的ナビゲーションは、ユーザが、その手、腕、および身体を移動させることによって、コンテンツを手動で設置することを可能にする。これは、空間メモリ等の大部分の人々に本能的に親しみやすい具現化された物理的技能を活用し、より多くの制御をユーザに与えるため、はるかに効率的インターフェースである。これは、従来のデスクトップおよびモバイルブラウザを用いると、新しいオブジェクト/ウィンドウが、ブラウザのファイルメニューまたはリンクコンテキストメニューを介してのみ作成され、特に、新しいオブジェクト/ウィンドウが、デフォルト場所に作成される場合、これが、典型的には、現在の場所を不明瞭にするという点で、現在の技術に優る改良である。加えて、コンピューティングは、典型的には、ユーザが、1つのユーザ相互作用において、新しいデジタルオブジェクトを作成し、次いで、第2のユーザ相互作用を用いて、新しく作成されたデジタルコンテンツを設置することを要求する一方、改良物は、両方を行うために1つのユーザ相互作用のみを要求する。
(付加的実施形態)
本開示の付加的実施形態が、下記に説明される。これらの付加的実施形態は、上記に開示される実施形態からの要素を組み込んでもよく、これらの付加的実施形態の要素は、上記に開示される実施形態の中に組み込まれてもよい。
1.
方法であって、
相互作用可能オブジェクトを識別するステップと、
相互作用可能オブジェクトに対応するユーザの物理的移動を識別するステップと、
ユーザの物理的移動に基づいて、相互作用可能オブジェクトと関連付けられたデータに関する座標場所を決定するステップと、
相互作用可能オブジェクトと関連付けられたデータをユーザの物理的移動に対応する座標場所に設置するステップと、
を含む、方法。
2.
ユーザ入力デバイスが、ユーザの物理的移動を検出するために採用される、実施形態1に記載の方法。
3.
ユーザ入力デバイスは、触覚的コントローラである、実施形態2に記載の方法。
4.
触覚的コントローラは、少なくとも6自由度を有する、トーテムデバイスに対応する、実施形態3に記載の方法。
5.
ユーザの物理的移動は、触覚的コントローラと関連付けられた処理システムにおいて、イベントオブジェクトに変換され、イベントオブジェクトは、触覚的コントローラの移動または位置付けを示すデータに相関する、実施形態3に記載の方法。
6.
相互作用可能オブジェクトに関する座標場所は、ユーザの物理的移動後、トリガが触覚的コントローラに関して解放された場所を識別することによって決定される、実施形態3に記載の方法。
7.
ユーザ入力デバイスは、ユーザジェスチャを検出するためのカメラである、実施形態2に記載の方法。
8.
開くための相互作用可能オブジェクトは、ユーザの身体の一部と相互作用する、リンクを識別することによって識別される、実施形態1に記載の方法。
9.
リンクと関連付けられたURLに関するコンテンツにアクセスすることによって、リンクのプレビューが、生成される、実施形態8に記載の方法。
10.
ユーザの物理的移動は、プレビューの物理的移動に対応する、実施形態9に記載の方法。
11.
相互作用可能オブジェクトは、コンピューティングデバイスの単一ユーザ相互作用を用いて、開くことと、設置することとの両方が、行われる、実施形態1に記載の方法。
12.
相互作用可能オブジェクトに関する配向が、
座標場所の面法線を決定するステップと、
相互作用可能オブジェクトと関連付けられたデータの配向を決定するステップと、
座標場所の面法線と相互作用可能オブジェクトと関連付けられたデータの配向を整合させるステップと、
によって決定される、実施形態1に記載の方法。
13.
相互作用可能オブジェクトは、ウォールハンギングを備える、実施形態1に記載の方法。
14.
システムであって、
3次元コンテンツを表示するように構成される、複合現実ディスプレイデバイスと、
ユーザの物理的移動を検出するように構成される、ユーザ入力デバイスと、
データをユーザ入力デバイスから受信し、処理する、プロセッサと、
プロセッサによって実行可能なプログラマブルコードを保持するためのメモリであって、プログラマブルコードは、相互作用可能オブジェクトを識別するステップと、相互作用可能オブジェクトに対応するユーザの物理的移動を識別するステップと、ユーザの物理的移動に基づいて、相互作用可能オブジェクトと関連付けられたデータに関する座標場所を決定するステップと、相互作用可能オブジェクトと関連付けられたデータをユーザの物理的移動に対応する座標場所に設置するステップと、のための命令を含む、メモリと、
を備える、システム。
15.
ユーザ入力デバイスは、触覚的コントローラである、実施形態14に記載のシステム。
16.
触覚的コントローラは、少なくとも6自由度を有する、トーテムデバイスに対応する、実施形態15に記載のシステム。
17.
ユーザの物理的移動は、プロセッサにおいて、イベントオブジェクトに変換され、イベントオブジェクトは、触覚的コントローラの移動または位置付けを示すデータに相関する、実施形態15に記載のシステム。
18.
相互作用可能オブジェクトに関する座標場所は、ユーザの物理的移動後、トリガが触覚的コントローラに関して解放された場所を識別することによって決定される、実施形態15に記載のシステム。
19.
ユーザ入力デバイスは、ユーザジェスチャを検出するためのカメラである、実施形態14に記載のシステム。
20.
開くための相互作用可能オブジェクトは、ユーザの身体の一部と相互作用する、リンクを識別することによって識別される、実施形態14に記載のシステム。
21.
リンクと関連付けられたURLに関するコンテンツにアクセスすることによって、リンクのプレビューが、生成される、実施形態20に記載のシステム。
22.
ユーザの物理的移動は、プレビューの物理的移動に対応する、実施形態20に記載のシステム。
23.
相互作用可能オブジェクトは、ウォールハンギングを備える、実施形態14に記載のシステム。
24.
プログラマブルコードはさらに、
座標場所の面法線を決定するステップと、
相互作用可能オブジェクトと関連付けられたデータの配向を決定するステップと、
座標場所の面法線と相互作用可能オブジェクトと関連付けられたデータの配向を整合させるステップと、
によって、相互作用可能オブジェクトに関する配向を決定するための命令を含む、実施形態14に記載のシステム。
25.
コンピュータ可読媒体上に具現化されるコンピュータプログラム製品であって、コンピュータ可読媒体は、その上に記憶される命令のシーケンスを有し、プロセッサによって実行されると、プロセッサに、
相互作用可能オブジェクトを識別するステップと、
相互作用可能オブジェクトに対応するユーザの物理的移動を識別するステップと、
ユーザの物理的移動に基づいて、相互作用可能オブジェクトと関連付けられたデータに関する座標場所を決定するステップと、
相互作用可能オブジェクトと関連付けられたデータをユーザの物理的移動に対応する座標場所に設置するステップと、
を含む、方法を実行させる、コンピュータプログラム製品。
26.
ユーザ入力デバイスが、ウィンドウに対応するユーザの物理的移動を検出するために採用される、実施形態25に記載のコンピュータプログラム製品。
27.
ユーザ入力デバイスは、触覚的コントローラである、実施形態26に記載のコンピュータプログラム製品。
28.
触覚的コントローラは、少なくとも6自由度を有する、トーテムデバイスに対応する、実施形態27に記載のコンピュータプログラム製品。
29.
ユーザの物理的移動は、触覚的コントローラと関連付けられた処理システムにおいて、イベントオブジェクトに変換され、イベントオブジェクトは、触覚的コントローラの移動または位置付けを示すデータに相関する、実施形態27に記載のコンピュータプログラム製品。
30.
相互作用可能オブジェクトに関する座標場所は、ユーザの物理的移動後、トリガが触覚的コントローラに関して解放された場所を識別することによって決定される、実施形態27に記載のコンピュータプログラム製品。
31.
ユーザ入力デバイスは、ユーザジェスチャを検出するためのカメラである、実施形態26に記載のコンピュータプログラム製品。
32.
開くためのウィンドウは、ユーザの身体の一部と相互作用する、リンクを識別することによって識別される、実施形態25に記載のコンピュータプログラム製品。
33.
リンクと関連付けられたURLに関するコンテンツにアクセスすることによって、リンクのプレビューが、生成される、実施形態32に記載のコンピュータプログラム製品。
34.
ユーザの物理的移動は、プレビューの物理的移動に対応する、実施形態33に記載のコンピュータプログラム製品。
35.
相互作用可能オブジェクトは、コンピューティングデバイスの単一ユーザ相互作用を用いて、開くことと、設置することとの両方が、行われる、実施形態25に記載のコンピュータプログラム製品。
36.
単一ユーザ相互作用は、コンピューティングデバイス上のボタンの単回押下を含む、実施形態35に記載のコンピュータプログラム製品。
37.
命令のシーケンスはさらに、
座標場所の面法線を決定するステップと、
相互作用可能オブジェクトと関連付けられたデータの配向を決定するステップと、
座標場所の面法線と相互作用可能オブジェクトと関連付けられたデータの配向を整合させるステップと、
によって、相互作用可能オブジェクトに関する配向を決定する、実施形態25に記載のコンピュータプログラム製品。
38.
方法であって、
ユーザ相互作用の開始時に、相互作用可能オブジェクトの選択を示すデータを受信するステップと、
相互作用可能オブジェクトとのユーザ相互作用の終了を示すデータを受信するステップと、
ユーザ相互作用の終了時の相互作用可能オブジェクトの場所を決定するステップと、
相互作用可能オブジェクトと関連付けられたデータをユーザ相互作用の終了時の相互作用可能オブジェクトの場所に設置するステップと、
を含む、方法。
39.
ユーザ入力デバイスが、相互作用可能オブジェクトの選択を示すデータと、相互作用可能オブジェクトとのユーザ相互作用の終了を示すデータとを提供するステップをさらに含む、実施形態38に記載の方法。
40.
ユーザ入力デバイスは、触覚的コントローラである、実施形態39に記載の方法。
41.
触覚的コントローラは、少なくとも6自由度を有する、トーテムデバイスに対応する、実施形態40に記載の方法。
42.
ユーザの物理的移動は、触覚的コントローラと関連付けられた処理システムにおいて、イベントオブジェクトに変換され、イベントオブジェクトは、触覚的コントローラの移動または位置付けに関するデータに相関する、実施形態40に記載の方法。
43.
ユーザ相互作用の終了時の相互作用可能オブジェクトの場所は、相互作用可能オブジェクトの選択後、トリガが触覚的コントローラに関して解放された場所を識別することによって決定される、実施形態40に記載の方法。
44.
ユーザ入力デバイスは、ユーザジェスチャを検出するためのカメラである、実施形態39に記載の方法。
45.
相互作用可能オブジェクトの選択を示すデータは、選択ジェスチャに対応する、実施形態44に記載の方法。
46.
相互作用可能オブジェクトとのユーザ相互作用の終了を示すデータは、解放ジェスチャに対応する、実施形態44に記載の方法。
47.
相互作用可能オブジェクトの選択を示すデータは、リンクと相互作用する、ユーザの身体の少なくとも一部に対応する、実施形態38に記載の方法。
48.
リンクと関連付けられたURLに関するコンテンツにアクセスすることによって、リンクのプレビューが、生成される、実施形態47に記載の方法。
49.
ユーザの物理的移動を示すデータを受信するステップをさらに含み、ユーザの物理的移動は、プレビューの物理的移動に対応する、実施形態48に記載の方法。
50.
相互作用可能オブジェクトは、ユーザ相互作用を用いることで、開かれることと、設置されることとの両方が、行われる、実施形態38に記載の方法。
51.
相互作用可能オブジェクトに関する配向が、ユーザ相互作用の終了時の相互作用可能オブジェクトの場所の面法線を決定するステップと、
相互作用可能オブジェクトと関連付けられたデータの配向を決定するステップと、
座標場所の面法線と相互作用可能オブジェクトと関連付けられたデータの配向を整合させるステップと、
によって決定される、実施形態38に記載の方法。
52.
相互作用可能オブジェクトは、ウォールハンギングを備える、実施形態39に記載の方法。
53.
方法であって、
ユーザ相互作用の開始時に、相互作用可能オブジェクトの選択を示すデータを受信するステップと、
相互作用可能オブジェクトとのユーザ相互作用の終了を示すデータを受信するステップと、
ユーザ相互作用の終了時の相互作用可能オブジェクトの場所を決定するステップと、
ユーザ相互作用の終了時の相互作用可能オブジェクトの場所が相互作用可能オブジェクトの初期プリズム外にあるとき、ユーザ相互作用の終了時に、
相互作用可能オブジェクトと関連付けられたデータのための新しいプリズムを作成するステップと、
を含む、方法。
54.
相互作用可能オブジェクトが初期プリズムの境界外に位置するときのユーザ相互作用の開始と終了との間に、相互作用可能オブジェクトと関連付けられたデータの視覚的プレビューを相互作用可能オブジェクトの場所に表示するステップをさらに含む、実施形態53に記載の方法。
55.
ユーザ入力デバイスが、相互作用可能オブジェクトの選択を示すデータと、相互作用可能オブジェクトとのユーザ相互作用の終了を示すデータとを提供するステップをさらに含む、実施形態53に記載の方法。
56.
ユーザ入力デバイスは、触覚的コントローラである、実施形態55に記載の方法。
57.
触覚的コントローラは、少なくとも6自由度を有する、トーテムデバイスに対応する、実施形態56に記載の方法。
58.
ユーザの物理的移動は、触覚的コントローラと関連付けられた処理システムにおいて、イベントオブジェクトに変換され、イベントオブジェクトは、触覚的コントローラの移動または位置付けに関するデータに相関する、実施形態56に記載の方法。
59.
ユーザ相互作用の終了時の相互作用可能オブジェクトの場所は、相互作用可能オブジェクトの選択後、トリガが触覚的コントローラに関して解放された場所を識別することによって決定される、実施形態56に記載の方法。
60.
ユーザ入力デバイスは、ユーザジェスチャを検出するためのカメラである、実施形態55に記載の方法。
61.
相互作用可能オブジェクトの選択を示すデータは、選択ジェスチャに対応する、実施形態60に記載の方法。
62.
相互作用可能オブジェクトとのユーザ相互作用の終了を示すデータは、解放ジェスチャに対応する、実施形態60に記載の方法。
63.
相互作用可能オブジェクトの選択を示すデータは、リンクと相互作用する、ユーザの身体の少なくとも一部に対応する、実施形態53に記載の方法。
64.
リンクと関連付けられたURLに関するコンテンツにアクセスすることによって、リンクのプレビューが、生成される、実施形態63に記載の方法。
65.
ユーザの物理的移動を示すデータを受信するステップをさらに含み、ユーザの物理的移動は、プレビューの物理的移動に対応する、実施形態64に記載の方法。
66.
相互作用可能オブジェクトは、ユーザ相互作用を用いることで、開かれることと、設置されることとの両方が、行われる、実施形態53に記載の方法。
67.
相互作用可能オブジェクトに関する配向が、
ユーザ相互作用の終了時の相互作用可能オブジェクトの場所の面法線を決定するステップと、
相互作用可能オブジェクトと関連付けられたデータの配向を決定するステップと、
座標場所の面法線と相互作用可能オブジェクトと関連付けられたデータの配向を整合させるステップと、
によって決定される、実施形態53に記載の方法。
68.
相互作用可能オブジェクトは、ウォールハンギングを備える、実施形態53に記載の方法。
69.
方法であって、
ユーザ相互作用の開始時に、第1のプリズム内に含有される相互作用可能オブジェクトの選択を示すデータを受信するステップと、
ユーザ相互作用の開始と終了との間のユーザ相互作用に対応するユーザの物理的移動を表すデータが、相互作用可能オブジェクトがユーザ相互作用の終了時に第1のプリズム外にあることを示すとき、相互作用可能オブジェクトと関連付けられたデータを含有するように第2のプリズムをユーザ相互作用の終了時の相互作用可能オブジェクトの場所に作成するステップと、
を含む、方法。
70.
ユーザ入力デバイスが、相互作用可能オブジェクトの選択を示すデータと、ユーザの相互作用の開始と終了との間のユーザ相互作用に対応するユーザの物理的移動を示すデータとを提供するステップをさらに含む、実施形態69に記載の方法。
71.
ユーザ入力デバイスは、触覚的コントローラである、実施形態70に記載の方法。
72.
触覚的コントローラは、少なくとも6自由度を有する、トーテムデバイスに対応する、実施形態71に記載の方法。
73.
ユーザの物理的移動は、触覚的コントローラと関連付けられた処理システムにおいて、イベントオブジェクトに変換され、イベントオブジェクトは、触覚的コントローラの移動または位置付けに関するデータに相関する、実施形態71に記載の方法。
74.
ユーザ相互作用の終了時の相互作用可能オブジェクトの場所は、相互作用可能オブジェクトの選択後、トリガが触覚的コントローラに関して解放された場所を識別することによって決定される、実施形態71に記載の方法。
75.
ユーザ入力デバイスは、ユーザジェスチャを検出するためのカメラである、実施形態70に記載の方法。
76.
相互作用可能オブジェクトの選択を示すデータは、選択ジェスチャに対応する、実施形態75に記載の方法。
77.
相互作用可能オブジェクトとのユーザ相互作用の終了を示すデータは、解放ジェスチャに対応する、実施形態75に記載の方法。
78.
相互作用可能オブジェクトの選択を示すデータは、リンクと相互作用する、ユーザの身体の少なくとも一部に対応する、実施形態69に記載の方法。
79.
リンクと関連付けられたURLに関するコンテンツにアクセスすることによって、リンクのプレビューが、生成される、実施形態78に記載の方法。
80.
ユーザの物理的移動は、プレビューの物理的移動に対応する、実施形態79に記載の方法。
81.
相互作用可能オブジェクトは、ユーザ相互作用を用いることで、開かれることと、設置されることとの両方が、行われる、実施形態69に記載の方法。
82.
相互作用可能オブジェクトに関する配向が、
ユーザ相互作用の終了時の相互作用可能オブジェクトの場所の面法線を決定するステップと、
相互作用可能オブジェクトと関連付けられたデータの配向を決定するステップと、
座標場所の面法線と相互作用可能オブジェクトと関連付けられたデータの配向を整合させるステップと、
によって決定される、実施形態69に記載の方法。
83.
相互作用可能オブジェクトは、ウォールハンギングを備える、実施形態69に記載の方法。
84.
システムであって、
3次元コンテンツを表示するように構成される、複合現実ディスプレイデバイスと、
ユーザの物理的移動を検出するように構成される、ユーザ入力デバイスと、
データをユーザ入力デバイスから受信し、処理する、プロセッサと、
プロセッサによって実行可能なプログラマブルコードを保持するためのメモリであって、プログラマブルコードは、ユーザ相互作用の開始時に、第1のプリズム内に含有される相互作用可能オブジェクトの選択を示すデータを受信するステップと、相互作用可能オブジェクトとのユーザ相互作用の終了を示すデータを受信するステップと、ユーザ相互作用の開始と終了との間に、第1のプリズムからの相互作用可能オブジェクトの除去に対応する、ユーザの物理的移動を示すデータを受信するステップと、相互作用可能オブジェクトとのユーザ相互作用の終了時に、相互作用可能オブジェクトと関連付けられたデータを含有するように第2のプリズムを作成するステップとのための命令を含む、メモリと、
を備える、システム。
85.
システムであって、
3次元コンテンツを表示するように構成される、複合現実ディスプレイデバイスと、
ユーザの物理的移動を検出するように構成される、ユーザ入力デバイスと、
データをユーザ入力デバイスから受信し、処理する、プロセッサと、
プロセッサによって実行可能なプログラマブルコードを保持するためのメモリであって、プログラマブルコードは、ユーザ相互作用の開始時に、相互作用可能オブジェクトの選択を示すデータを受信するステップと、相互作用可能オブジェクトとのユーザ相互作用の終了を示すデータを受信するステップと、ユーザ相互作用の終了時の相互作用可能オブジェクトの場所を決定するステップと、ユーザ相互作用の終了時の相互作用可能オブジェクトの場所が相互作用可能オブジェクトの初期プリズム外にあるとき、ユーザ相互作用の終了時に、相互作用可能オブジェクトと関連付けられたデータのための新しいプリズムを作成するステップとのための命令を含む、メモリと、
を備える、システム。
86.
システムであって、
3次元コンテンツを表示するように構成される、複合現実ディスプレイデバイスと、
ユーザの物理的移動を検出するように構成される、ユーザ入力デバイスと、
データをユーザ入力デバイスから受信し、処理する、プロセッサと、
プロセッサによって実行可能なプログラマブルコードを保持するためのメモリであって、プログラマブルコードは、ユーザ相互作用の開始時に、第1のプリズム内に含有される相互作用可能オブジェクトの選択を示すデータを受信するステップと、ユーザ相互作用の開始と終了との間のユーザ相互作用に対応するユーザの物理的移動を表すデータが、相互作用可能オブジェクトがユーザ相互作用の終了時に第1のプリズム外にあることを示すとき、相互作用可能オブジェクトと関連付けられたデータを含有するように第2のプリズムをユーザ相互作用の終了時の相互作用可能オブジェクトの場所に作成するステップとのための命令を含む、メモリと、
を備える、システム。
(システムアーキテクチャ概要)
図13は、本開示の実施形態を実装するために好適な例証的コンピューティングシステム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 (20)

  1. 方法であって、
    相互作用可能オブジェクトを識別することと、
    前記相互作用可能オブジェクトに対応するユーザの物理的移動を識別することと、
    前記ユーザの前記物理的移動に基づいて、前記相互作用可能オブジェクトと関連付けられたデータに関する座標場所を決定することと、
    前記相互作用可能オブジェクトと関連付けられた前記データを前記ユーザの前記物理的移動に対応する前記座標場所に設置することと
    を含む、方法。
  2. ユーザ入力デバイスが、前記ユーザの前記物理的移動を検出するために採用される、請求項1に記載の方法。
  3. 前記ユーザ入力デバイスは、触覚的コントローラである、請求項2に記載の方法。
  4. 前記触覚的コントローラは、少なくとも6自由度を有するトーテムデバイスに対応する、請求項3に記載の方法。
  5. 前記ユーザの前記物理的移動は、前記触覚的コントローラと関連付けられた処理システムにおいて、イベントオブジェクトに変換され、前記イベントオブジェクトは、前記触覚的コントローラの移動または位置付けを示すデータに相関する、請求項3に記載の方法。
  6. 前記相互作用可能オブジェクトに関する前記座標場所は、前記ユーザの前記物理的移動の後にトリガが前記触覚的コントローラに関して解放された場所を識別することによって決定される、請求項3に記載の方法。
  7. 前記ユーザ入力デバイスは、ユーザジェスチャを検出するためのカメラである、請求項2に記載の方法。
  8. リンクと相互作用する前記ユーザの身体の少なくとも一部に対応するデータを受信することによって、前記相互作用可能オブジェクトを識別することをさらに含む、請求項1に記載の方法。
  9. 前記リンクと関連付けられたURL(Uniform Resource Locator)に関するコンテンツにアクセスすることによって、前記リンクのプレビューを生成することをさらに含む、請求項8に記載の方法。
  10. 前記ユーザの前記物理的移動は、前記プレビューの視覚的表示が前記物理的移動に従って前記ユーザ相互作用中に移動するように、前記プレビューの移動に対応する、請求項9に記載の方法。
  11. 前記相互作用可能オブジェクトは、コンピューティングデバイスの単一ユーザ相互作用を用いることで開かれることと設置されることとの両方が、行われる、請求項1に記載の方法。
  12. 前記相互作用可能オブジェクトに関する配向が、
    前記座標場所の面法線を決定することと、
    前記相互作用可能オブジェクトと関連付けられた前記データの配向を決定することと、
    前記座標場所の前記面法線と前記相互作用可能オブジェクトと関連付けられた前記データの前記配向を整合させることと
    によって決定される、請求項1に記載の方法。
  13. 前記相互作用可能オブジェクトは、ウォールハンギングを備える、請求項1に記載の方法。
  14. システムであって、
    3次元コンテンツを表示するように構成される複合現実ディスプレイデバイスと、
    ユーザの物理的移動を検出するように構成されるユーザ入力デバイスと、
    データを前記ユーザ入力デバイスから受信し、処理するプロセッサと、
    前記プロセッサによって実行可能なプログラマブルコードを保持するためのメモリであって、前記プログラマブルコードは、相互作用可能オブジェクトを識別することと、前記相互作用可能オブジェクトに対応するユーザの物理的移動を識別することと、前記ユーザの前記物理的移動に基づいて、前記相互作用可能オブジェクトと関連付けられたデータに関する座標場所を決定することと、前記相互作用可能オブジェクトと関連付けられた前記データを前記ユーザの前記物理的移動に対応する前記座標場所に設置することとを実行するための命令を含む、メモリと
    を備える、システム。
  15. 前記プログラマブルコードはまた、リンクと相互作用する前記ユーザの身体の少なくとも一部に対応するデータを受信することによって前記相互作用可能オブジェクトを識別するための命令を含む、請求項14に記載のシステム。
  16. 前記プログラマブルコードはまた、前記リンクと関連付けられたURL(Uniform Resource Locator)に関するコンテンツにアクセスすることによって前記リンクのプレビューを生成するための命令を含む、請求項15に記載のシステム。
  17. 前記ユーザの前記物理的移動は、前記プレビューの視覚的表示が前記物理的移動に従って前記ユーザ相互作用中に移動するように、前記プレビューの移動に対応する、請求項16に記載のシステム。
  18. コンピュータ可読媒体上に具現化されるコンピュータプログラム製品であって、前記コンピュータ可読媒体には、命令のシーケンスが記憶されており、前記命令のシーケンスは、プロセッサによって実行されると、前記プロセッサに、方法を実行させ、前記方法は、
    相互作用可能オブジェクトを識別することと、
    前記相互作用可能オブジェクトに対応するユーザの物理的移動を識別することと、
    前記ユーザの前記物理的移動に基づいて、前記相互作用可能オブジェクトと関連付けられたデータに関する座標場所を決定することと、
    前記相互作用可能オブジェクトと関連付けられた前記データを前記ユーザの前記物理的移動に対応する前記座標場所に設置することと
    を含む、コンピュータプログラム製品。
  19. 前記方法は、
    リンクと相互作用する前記ユーザの身体の少なくとも一部に対応するデータを受信することによって、前記相互作用可能オブジェクトを識別することと、
    前記リンクと関連付けられたURL(Uniform Resource Locator)に関するコンテンツにアクセスすることによって、前記リンクのプレビューを生成することと
    をさらに含む、請求項18に記載のコンピュータプログラム製品。
  20. 前記ユーザの前記物理的移動は、前記プレビューの視覚的表示が前記物理的移動に従って前記ユーザ相互作用中に移動するように、前記プレビューの移動に対応する、請求項19に記載のコンピュータプログラム製品。
JP2022142067A 2018-02-22 2022-09-07 物理的操作を用いたオブジェクト作成 Pending JP2022168082A (ja)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201862634007P 2018-02-22 2018-02-22
US62/634,007 2018-02-22
US201862665251P 2018-05-01 2018-05-01
US62/665,251 2018-05-01
PCT/US2019/018920 WO2019165044A1 (en) 2018-02-22 2019-02-21 Object creation with physical manipulation
JP2020544237A JP7139436B2 (ja) 2018-02-22 2019-02-21 物理的操作を用いたオブジェクト作成

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2020544237A Division JP7139436B2 (ja) 2018-02-22 2019-02-21 物理的操作を用いたオブジェクト作成

Publications (1)

Publication Number Publication Date
JP2022168082A true JP2022168082A (ja) 2022-11-04

Family

ID=67688428

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2020544237A Active JP7139436B2 (ja) 2018-02-22 2019-02-21 物理的操作を用いたオブジェクト作成
JP2022142067A Pending JP2022168082A (ja) 2018-02-22 2022-09-07 物理的操作を用いたオブジェクト作成

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2020544237A Active JP7139436B2 (ja) 2018-02-22 2019-02-21 物理的操作を用いたオブジェクト作成

Country Status (9)

Country Link
US (3) US11087563B2 (ja)
EP (1) EP3756079A4 (ja)
JP (2) JP7139436B2 (ja)
KR (1) KR20200121357A (ja)
CN (1) CN111801641A (ja)
AU (1) AU2019225931A1 (ja)
CA (1) CA3091026A1 (ja)
IL (2) IL301281A (ja)
WO (1) WO2019165044A1 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102555443B1 (ko) 2017-05-01 2023-07-12 매직 립, 인코포레이티드 콘텐츠를 공간 3d 환경에 매칭
AU2018388581A1 (en) 2017-12-22 2020-07-23 Magic Leap, Inc. Methods and system for managing and displaying virtual content in a mixed reality system
EP3756079A4 (en) * 2018-02-22 2021-04-28 Magic Leap, Inc. OBJECT GENERATION WITH PHYSICAL MANIPULATION
EP3640767A1 (de) * 2018-10-17 2020-04-22 Siemens Schweiz AG Verfahren zum bestimmen mindestens eines bereichs in mindestens einem eingabemodell für mindestens ein zu platzierendes element
US11263824B2 (en) * 2018-11-14 2022-03-01 Unity IPR ApS Method and system to generate authoring conditions for digital content in a mixed reality environment
CN113508361A (zh) * 2019-05-06 2021-10-15 苹果公司 用于呈现计算机生成现实文件的设备、方法和计算机可读介质
US11315326B2 (en) * 2019-10-15 2022-04-26 At&T Intellectual Property I, L.P. Extended reality anchor caching based on viewport prediction
US11640228B2 (en) * 2021-01-06 2023-05-02 Adobe Inc. Accessing virtually rendered digital content
CA3226429A1 (en) * 2021-07-22 2023-01-26 The University Of British Columbia System and apparatus for remote interaction with an object
US20230040610A1 (en) * 2021-08-06 2023-02-09 Apple Inc. Object placement for electronic devices
CN117093070A (zh) * 2023-06-05 2023-11-21 北京虹宇科技有限公司 扩展现实空间中的应用形态控制方法、装置及设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013521576A (ja) * 2010-02-28 2013-06-10 オスターハウト グループ インコーポレイテッド 対話式ヘッド取付け型アイピース上での地域広告コンテンツ
US20130278631A1 (en) * 2010-02-28 2013-10-24 Osterhout Group, Inc. 3d positioning of augmented reality information
JP2015504616A (ja) * 2011-09-26 2015-02-12 マイクロソフト コーポレーション 透過近眼式ディスプレイのセンサ入力に基づく映像表示修正

Family Cites Families (102)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5923318A (en) * 1996-04-12 1999-07-13 Zhai; Shumin Finger manipulatable 6 degree-of-freedom input device
US6720949B1 (en) * 1997-08-22 2004-04-13 Timothy R. Pryor Man machine interfaces and applications
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
US7343278B2 (en) 2002-10-22 2008-03-11 Artoolworks, Inc. Tracking a surface in a 3-dimensional scene using natural visual features of the surface
JP4212564B2 (ja) 2005-02-28 2009-01-21 ザイオソフト株式会社 画像処理方法および画像処理プログラム
US20070074125A1 (en) 2005-09-26 2007-03-29 Microsoft Corporation Preview information for web-browsing
US7595810B2 (en) 2006-03-22 2009-09-29 Apple Inc. Methods of manipulating a screen space of a display device
US20090028142A1 (en) 2007-07-25 2009-01-29 Schmidt Brian K Streaming data content in a network
US8245241B2 (en) 2007-10-02 2012-08-14 International Business Machines Corporation Arrangements for interactivity between a virtual universe and the world wide web
US10872322B2 (en) * 2008-03-21 2020-12-22 Dressbot, Inc. System and method for collaborative shopping, business and entertainment
JP5368547B2 (ja) 2008-04-05 2013-12-18 ソーシャル・コミュニケーションズ・カンパニー 共有仮想エリアコミュニケーション環境ベースの装置および方法
US9952673B2 (en) 2009-04-02 2018-04-24 Oblong Industries, Inc. Operating environment comprising multiple client devices, multiple displays, multiple users, and gestural control
US20160077677A1 (en) 2008-05-20 2016-03-17 Israel Valdes Apparatus and method for user configurable content
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
EP3654147A1 (en) 2011-03-29 2020-05-20 QUALCOMM Incorporated System for the rendering of shared digital interfaces relative to each user's point of view
US9354899B2 (en) 2011-04-18 2016-05-31 Google Inc. Simultaneous display of multiple applications using panels
DK2714223T3 (en) 2011-05-23 2015-09-14 Lego As Production of building instructions for building element models
US8912979B1 (en) 2011-07-14 2014-12-16 Google Inc. Virtual window in head-mounted display
US9734633B2 (en) 2012-01-27 2017-08-15 Microsoft Technology Licensing, Llc Virtual environment generating system
US9575652B2 (en) * 2012-03-31 2017-02-21 Microsoft Technology Licensing, Llc Instantiable gesture objects
US9671566B2 (en) 2012-06-11 2017-06-06 Magic Leap, Inc. Planar waveguide apparatus with diffraction element(s) and system employing same
US9069455B2 (en) * 2012-06-22 2015-06-30 Microsoft Technology Licensing, Llc 3D user interface for application entities
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
US20150206349A1 (en) 2012-08-22 2015-07-23 Goldrun Corporation Augmented reality virtual content platform apparatuses, methods and systems
US9461876B2 (en) 2012-08-29 2016-10-04 Loci System and method for fuzzy concept mapping, voting ontology crowd sourcing, and technology prediction
US9070194B2 (en) 2012-10-25 2015-06-30 Microsoft Technology Licensing, Llc Planar surface detection
US9407824B2 (en) 2012-11-01 2016-08-02 Google Inc. Multi-directional content capture on mobile devices
KR101984915B1 (ko) 2012-12-03 2019-09-03 삼성전자주식회사 증강 현실 컨텐츠 운용 방법 및 이를 지원하는 단말기와 시스템
US9317972B2 (en) 2012-12-18 2016-04-19 Qualcomm Incorporated User interface for augmented reality enabled devices
EP2951811A4 (en) 2013-01-03 2016-08-17 Meta Co DIGITAL EYES FOR EXTRAMISSIVE SPATIAL IMAGING, PROCESSES AND SYSTEMS FOR VIRTUAL OR ENLARGED VISIBILITY, MANIPULATION, PRODUCTION OR INTERACTION WITH OBJECTS, MATERIALS, OR OTHER UNITS
US20140200863A1 (en) 2013-01-11 2014-07-17 The Regents Of The University Of Michigan Monitoring proximity of objects at construction jobsites via three-dimensional virtuality in real-time
US20140225922A1 (en) 2013-02-11 2014-08-14 Rocco A. Sbardella System and method for an augmented reality software application
JP2014157466A (ja) 2013-02-15 2014-08-28 Sony Corp 情報処理装置及び記憶媒体
GB201303707D0 (en) * 2013-03-01 2013-04-17 Tosas Bautista Martin System and method of interaction for mobile devices
CN105188516B (zh) 2013-03-11 2017-12-22 奇跃公司 用于增强和虚拟现实的系统与方法
US20140267228A1 (en) 2013-03-14 2014-09-18 Microsoft Corporation Mapping augmented reality experience to various environments
US20140282274A1 (en) 2013-03-15 2014-09-18 Qualcomm Incorporated Detection of a gesture performed with at least two control objects
KR102271198B1 (ko) 2013-03-15 2021-06-29 매직 립, 인코포레이티드 디스플레이 시스템 및 방법
US20150277699A1 (en) * 2013-04-02 2015-10-01 Cherif Atia Algreatly Interaction method for optical head-mounted display
KR20140133361A (ko) 2013-05-10 2014-11-19 삼성전자주식회사 디스플레이 장치 및 그 ui 화면 제공 방법
US10262462B2 (en) 2014-04-18 2019-04-16 Magic Leap, Inc. Systems and methods for augmented and virtual reality
US9129430B2 (en) 2013-06-25 2015-09-08 Microsoft Technology Licensing, Llc Indicating out-of-view augmented reality images
US10861224B2 (en) 2013-07-23 2020-12-08 Hover Inc. 3D building analyzer
JP6147861B2 (ja) 2013-09-06 2017-06-14 株式会社マーズフラッグ 情報処理装置、検索サーバ、ウェブサーバ及びコンピュータプログラム
US20180225885A1 (en) 2013-10-01 2018-08-09 Aaron Scott Dishno Zone-based three-dimensional (3d) browsing
KR101512084B1 (ko) 2013-11-15 2015-04-17 한국과학기술원 가상현실 기반의 3차원 웹 검색 인터페이스를 제공하는 웹 검색 시스템 및 그 제공 방법
US9354778B2 (en) 2013-12-06 2016-05-31 Digimarc Corporation Smartphone-based methods and systems
US9411422B1 (en) 2013-12-13 2016-08-09 Audible, Inc. User interaction with content markers
US20150185825A1 (en) 2013-12-30 2015-07-02 Daqri, Llc Assigning a virtual user interface to a physical object
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
KR102184402B1 (ko) * 2014-03-06 2020-11-30 엘지전자 주식회사 글래스 타입의 이동 단말기
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
US20150331240A1 (en) 2014-05-15 2015-11-19 Adam G. Poulos Assisted Viewing Of Web-Based Resources
US10156967B2 (en) 2014-05-31 2018-12-18 Apple Inc. Device, method, and graphical user interface for tabbed and private browsing
CN112651288B (zh) 2014-06-14 2022-09-20 奇跃公司 用于产生虚拟和增强现实的方法和系统
US20160027214A1 (en) 2014-07-25 2016-01-28 Robert Memmott Mouse sharing between a desktop and a virtual world
US9858720B2 (en) 2014-07-25 2018-01-02 Microsoft Technology Licensing, Llc Three-dimensional mixed-reality viewport
US9734634B1 (en) * 2014-09-26 2017-08-15 A9.Com, Inc. Augmented reality product preview
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 株式会社コロプラ ヘッドマウントディスプレイシステム、ヘッドマウントディスプレイへ表示するための方法、及びプログラム
US10335677B2 (en) 2014-12-23 2019-07-02 Matthew Daniel Fuchs Augmented reality system with agent device for viewing persistent content and method of operation thereof
US20160300392A1 (en) 2015-04-10 2016-10-13 VR Global, Inc. Systems, media, and methods for providing improved virtual reality tours and associated analytics
WO2016176511A1 (en) 2015-04-29 2016-11-03 Data Cocoon LLC Tessellated data visualization system
CN107683497B (zh) 2015-06-15 2022-04-08 索尼公司 信息处理设备、信息处理方法及程序
EP3113106A1 (en) 2015-07-02 2017-01-04 Nokia Technologies Oy Determination of environmental augmentation allocation data
WO2017030306A1 (en) 2015-08-18 2017-02-23 Samsung Electronics Co., Ltd. Method and system for bookmarking a webpage
US10057078B2 (en) 2015-08-21 2018-08-21 Samsung Electronics Company, Ltd. User-configurable interactive region monitoring
US10318225B2 (en) * 2015-09-01 2019-06-11 Microsoft Technology Licensing, Llc Holographic augmented authoring
US10545717B2 (en) 2015-10-08 2020-01-28 Pcms Holdings, Inc. Methods and systems of automatic calibration for dynamic display configurations
JP6831840B2 (ja) 2015-10-20 2021-02-17 マジック リープ, インコーポレイテッドMagic Leap,Inc. 3次元空間内の仮想オブジェクトの選択
TWI567691B (zh) * 2016-03-07 2017-01-21 粉迷科技股份有限公司 立體空間的場景編輯方法與系統
US20170256096A1 (en) * 2016-03-07 2017-09-07 Google Inc. Intelligent object sizing and placement in a augmented / virtual reality environment
CA3016604A1 (en) * 2016-03-12 2017-09-21 Philipp K. Lang Devices and methods for surgery
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
WO2018004863A1 (en) 2016-06-30 2018-01-04 Magic Leap, Inc. Estimating pose in 3d space
US10489978B2 (en) * 2016-07-26 2019-11-26 Rouslan Lyubomirov DIMITROV System and method for displaying computer-based content in a virtual or augmented environment
CN109804334B (zh) 2016-08-11 2022-07-15 奇跃公司 用于三维空间中虚拟对象的自动放置的系统和方法
US20180082480A1 (en) * 2016-09-16 2018-03-22 John R. White Augmented reality surgical technique guidance
KR102246841B1 (ko) 2016-10-05 2021-05-03 매직 립, 인코포레이티드 표면 모델링 시스템들 및 방법들
US11290572B2 (en) * 2016-11-07 2022-03-29 Constructive Labs System and method for facilitating sharing of virtual three-dimensional space
US10271043B2 (en) 2016-11-18 2019-04-23 Zspace, Inc. 3D user interface—360-degree visualization of 2D webpage content
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
WO2018176013A1 (en) * 2017-03-24 2018-09-27 Inmentis, Llc Social media system with navigable, artificial-intelligence-based graphical user interface with gamification
KR102555443B1 (ko) 2017-05-01 2023-07-12 매직 립, 인코포레이티드 콘텐츠를 공간 3d 환경에 매칭
US10304251B2 (en) 2017-06-15 2019-05-28 Microsoft Technology Licensing, Llc Virtually representing spaces and objects while maintaining physical properties
US10719870B2 (en) * 2017-06-27 2020-07-21 Microsoft Technology Licensing, Llc Mixed reality world integration of holographic buttons in a mixed reality device
US20190005724A1 (en) 2017-06-30 2019-01-03 Microsoft Technology Licensing, Llc Presenting augmented reality display data in physical presentation environments
US10444975B2 (en) * 2017-07-18 2019-10-15 Google Llc Graphical icon manipulation
US10803663B2 (en) 2017-08-02 2020-10-13 Google Llc Depth sensor aided estimation of virtual reality environment boundaries
AU2018388581A1 (en) * 2017-12-22 2020-07-23 Magic Leap, Inc. Methods and system for managing and displaying virtual content in a mixed reality system
EP3756079A4 (en) * 2018-02-22 2021-04-28 Magic Leap, Inc. OBJECT GENERATION WITH PHYSICAL MANIPULATION

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013521576A (ja) * 2010-02-28 2013-06-10 オスターハウト グループ インコーポレイテッド 対話式ヘッド取付け型アイピース上での地域広告コンテンツ
US20130278631A1 (en) * 2010-02-28 2013-10-24 Osterhout Group, Inc. 3d positioning of augmented reality information
JP2015504616A (ja) * 2011-09-26 2015-02-12 マイクロソフト コーポレーション 透過近眼式ディスプレイのセンサ入力に基づく映像表示修正

Also Published As

Publication number Publication date
AU2019225931A1 (en) 2020-08-20
KR20200121357A (ko) 2020-10-23
WO2019165044A1 (en) 2019-08-29
IL301281A (en) 2023-05-01
JP2021514089A (ja) 2021-06-03
CN111801641A (zh) 2020-10-20
CA3091026A1 (en) 2019-08-29
US20230267697A1 (en) 2023-08-24
IL276629B1 (en) 2023-04-01
EP3756079A1 (en) 2020-12-30
EP3756079A4 (en) 2021-04-28
US11087563B2 (en) 2021-08-10
IL276629A (en) 2020-09-30
US11636660B2 (en) 2023-04-25
IL276629B2 (en) 2023-08-01
US20210097775A1 (en) 2021-04-01
US20210335053A1 (en) 2021-10-28
JP7139436B2 (ja) 2022-09-20

Similar Documents

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

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220907

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230809

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231031

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240129