KR20220079684A - 웹 콘텐츠와 3d 상호작용들 - Google Patents
웹 콘텐츠와 3d 상호작용들 Download PDFInfo
- Publication number
- KR20220079684A KR20220079684A KR1020227017084A KR20227017084A KR20220079684A KR 20220079684 A KR20220079684 A KR 20220079684A KR 1020227017084 A KR1020227017084 A KR 1020227017084A KR 20227017084 A KR20227017084 A KR 20227017084A KR 20220079684 A KR20220079684 A KR 20220079684A
- Authority
- KR
- South Korea
- Prior art keywords
- web
- content item
- browser
- artificial reality
- based content
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/04815—Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/017—Head mounted
-
- G—PHYSICS
- G02—OPTICS
- G02F—OPTICAL DEVICES OR ARRANGEMENTS FOR THE CONTROL OF LIGHT BY MODIFICATION OF THE OPTICAL PROPERTIES OF THE MEDIA OF THE ELEMENTS INVOLVED THEREIN; NON-LINEAR OPTICS; FREQUENCY-CHANGING OF LIGHT; OPTICAL LOGIC ELEMENTS; OPTICAL ANALOGUE/DIGITAL CONVERTERS
- G02F1/00—Devices or arrangements for the control of the intensity, colour, phase, polarisation or direction of light arriving from an independent light source, e.g. switching, gating or modulating; Non-linear optics
- G02F1/01—Devices or arrangements for the control of the intensity, colour, phase, polarisation or direction of light arriving from an independent light source, e.g. switching, gating or modulating; Non-linear optics for the control of the intensity, phase, polarisation or colour
- G02F1/13—Devices or arrangements for the control of the intensity, colour, phase, polarisation or direction of light arriving from an independent light source, e.g. switching, gating or modulating; Non-linear optics for the control of the intensity, phase, polarisation or colour based on liquid crystals, e.g. single liquid crystal display cells
- G02F1/133—Constructional arrangements; Operation of liquid crystal cells; Circuit arrangements
- G02F1/1333—Constructional arrangements; Manufacturing methods
- G02F1/13338—Input devices, e.g. touch panels
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04842—Selection of displayed objects or displayed text elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04845—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- H01L27/323—
-
- H—ELECTRICITY
- H10—SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
- H10K—ORGANIC ELECTRIC SOLID-STATE DEVICES
- H10K59/00—Integrated devices, or assemblies of multiple devices, comprising at least one organic light-emitting element covered by group H10K50/00
- H10K59/40—OLEDs integrated with touch screens
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/048—Indexing scheme relating to G06F3/048
- G06F2203/04803—Split screen, i.e. subdividing the display area or the window area into separate subareas
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Computer Graphics (AREA)
- Optics & Photonics (AREA)
- Nonlinear Science (AREA)
- Mathematical Physics (AREA)
- Chemical & Material Sciences (AREA)
- Crystallography & Structural Chemistry (AREA)
- User Interface Of Digital Computer (AREA)
- Processing Or Creating Images (AREA)
Abstract
사용자가 인공 현실 환경에 디스플레이된 브라우저로부터 콘텐츠 항목을 선택하며, 인공 현실 환경에서 콘텐츠 항목의 대응 버전을 제공하도록 허용하는 3D 웹 상호작용 시스템의 실시예들이 개시된다. 3D 웹 상호작용 시스템은 선택된 콘텐츠 항목이 3D 콘텐츠와 연관되는지, 및 그렇다면 연관된 3D 콘텐츠의 유형에 의존하여 상이한 방식들로 선택된 콘텐츠 항목의 버전을 생성할 수 있다. 예를 들어, 3D 웹 상호작용 시스템은 선택된 콘텐츠 항목이 (a) 3D 콘텐츠와 연관되지 않고, (b) "환경 콘텐츠"와 연관되거나, 또는 (c) 하나 이상의 3D 모델들과 연관되는지에 의존하여 선택된 콘텐츠 항목의 상이한 버전들을 생성하고 제공할 수 있다.
Description
본 개시내용은 인공 현실 환경에서의 상호작용들에 관한 것이다.
인공 현실 환경의 다양한 객체들은 "가상 객체들", 즉 환경에 나타나는 컴퓨팅 시스템에 의해 생성된 객체들의 표현들이다. 인공 현실 환경의 가상 객체들은 머리-장착 디스플레이, 모바일 디바이스, 투사 시스템 또는 다른 컴퓨팅 시스템에 의해 사용자에게 제시될 수 있다. 일부 인공 현실 환경들은 사용자가 인공 현실 환경에 있는 동안 기존 웹사이트들을 보고 상호작용하게 하는 가상 웹사이트 브라우저(본원에서 "브라우저"라고 지칭됨)를 제시할 수 있다. 예를 들어, 브라우저는 URL 바아(bar), 앞으로 및 뒤로 버튼들, 북마크(bookmark)들 등과 같은 기존의 웹 브라우저 제어들을 갖는 태블릿 또는 2D 창(window)으로서 인공 현실 환경에 제시될 수 있다.
도 1은 본 기술의 일부 구현들이 동작할 수 있는 디바이스들의 개요를 예시하는 블록도이다.
도 2a는 본 기술의 일부 구현들에서 사용될 수 있는 가상 현실 헤드셋을 예시하는 배선도이다.
도 2b는 본 기술의 일부 구현들에서 사용될 수 있는 혼합 현실 헤드셋을 예시하는 배선도이다.
도 3은 본 기술의 일부 구현들이 동작할 수 있는 환경의 개요를 예시하는 블록도이다.
도 4는 일부 구현들에서, 개시된 기술을 이용하는 시스템에서 사용될 수 있는 구성요소들을 예시하는 블록도이다.
도 5(도 5, 도 5 계속-1(도 5a), 도 5 계속-2(도 5b) 및 도 5 계속-3(도 5c) 포함)는 인공 현실 환경에서 웹-기반 콘텐츠 항목의 버전을 제시하기 위한 본 기술의 일부 구현들에서 사용되는 프로세스를 예시하는 흐름도이다.
도 6은 인공 현실 환경에서 웹-기반 콘텐츠 항목의 상호작용 3D 버전을 제시하기 위해 본 기술의 일부 구현들에서 사용되는 프로세스를 실행하는 구성요소들을 예시하는 블록도이다.
도 7a-도 7c는 3D 콘텐츠와 연관되지 않은 웹-기반 콘텐츠 항목과의 예시적인 상호작용을 예시하는 개념도들이다.
도 8a-도 8d는 환경 콘텐츠를 포함하는 3D 콘텐츠와 연관된 웹-기반 콘텐츠 항목과의 예시적인 상호작용을 예시하는 개념도들이다.
도 9a-도 9c는 3D 모델을 포함하는 3D 콘텐츠와 연관된 웹-기반 콘텐츠 항목과의 예시적인 상호작용을 예시하는 개념도들이다.
본원에 소개된 기법들은 유사한 참조 번호들이 동일하거나 기능적으로 유사한 요소들을 나타내는 첨부 도면들과 함께 다음의 상세한 설명을 참조함으로써 더 잘 이해될 수 있다.
도 2a는 본 기술의 일부 구현들에서 사용될 수 있는 가상 현실 헤드셋을 예시하는 배선도이다.
도 2b는 본 기술의 일부 구현들에서 사용될 수 있는 혼합 현실 헤드셋을 예시하는 배선도이다.
도 3은 본 기술의 일부 구현들이 동작할 수 있는 환경의 개요를 예시하는 블록도이다.
도 4는 일부 구현들에서, 개시된 기술을 이용하는 시스템에서 사용될 수 있는 구성요소들을 예시하는 블록도이다.
도 5(도 5, 도 5 계속-1(도 5a), 도 5 계속-2(도 5b) 및 도 5 계속-3(도 5c) 포함)는 인공 현실 환경에서 웹-기반 콘텐츠 항목의 버전을 제시하기 위한 본 기술의 일부 구현들에서 사용되는 프로세스를 예시하는 흐름도이다.
도 6은 인공 현실 환경에서 웹-기반 콘텐츠 항목의 상호작용 3D 버전을 제시하기 위해 본 기술의 일부 구현들에서 사용되는 프로세스를 실행하는 구성요소들을 예시하는 블록도이다.
도 7a-도 7c는 3D 콘텐츠와 연관되지 않은 웹-기반 콘텐츠 항목과의 예시적인 상호작용을 예시하는 개념도들이다.
도 8a-도 8d는 환경 콘텐츠를 포함하는 3D 콘텐츠와 연관된 웹-기반 콘텐츠 항목과의 예시적인 상호작용을 예시하는 개념도들이다.
도 9a-도 9c는 3D 모델을 포함하는 3D 콘텐츠와 연관된 웹-기반 콘텐츠 항목과의 예시적인 상호작용을 예시하는 개념도들이다.
본원에 소개된 기법들은 유사한 참조 번호들이 동일하거나 기능적으로 유사한 요소들을 나타내는 첨부 도면들과 함께 다음의 상세한 설명을 참조함으로써 더 잘 이해될 수 있다.
사용자가 인공 현실 환경에 디스플레이되는 브라우저로부터 콘텐츠 항목을 선택하게 하고, 브라우저 외부의 인공 현실 환경에서 콘텐츠 항목의 대응하는 상호작용 버전을 제시하게 하는 3D 웹 상호작용 시스템의 실시예들이 개시된다. 3D 웹 상호작용 시스템은 선택된 콘텐츠 항목이 3D 콘텐츠와 연관되는지 여부 및 연관되어 있다면, 연관된 3D 콘텐츠의 유형에 따라 상이한 방식들로 선택된 콘텐츠 항목의 상호작용 버전을 생성할 수 있다. 예를 들어, 3D 웹 상호작용 시스템은 선택된 콘텐츠 항목이 A) 3D 콘텐츠와 연관되지 않는지, B) "환경 콘텐츠"와 연관되는지, 또는 C) 하나 이상의 3D 모델들과 연관되는지에 따라 선택된 콘텐츠의 상이한 상호작용 버전들을 생성 및 제시할 수 있다. 본원에 사용된 "환경 콘텐츠"는 인공 현실 시스템에 의해 적어도 부분적으로 몰입형으로 제시될 수 있는 콘텐츠를 지칭한다. 예를 들어, 3D 이미지들, 파노라마 이미지들 또는 비디오들, 인공 현실 환경(예를 들어, 3D "세계")은 인공 현실 시스템에 의해 디스플레이될 수 있기 때문에 모두 환경 콘텐츠이고, 이는 사용자가 콘텐츠의 상이한 부분들을 경험하게 하고 사용자의 관점이 변경됨에 따라 시점을 변경하게 한다.
동작 시, 3D 웹 상호작용 시스템은 사용자가 웹페이지를 볼 때, (예를 들어, "잡기" 제스처로) 디스플레된 이미지들 또는 다른 콘텐츠 항목들을 선택하게 하고, 연관된 콘텐츠에 따라 여러 방식들로 이와 상호작용할 수 있게 할 수 있다. 선택된 콘텐츠가 연관된 다른 3D 콘텐츠가 없는 평면 이미지인 경우, 3D 웹 상호작용 시스템은 선택된 이미지의 2차원 버전을 브라우저 외부에 제시하여, 사용자가 브라우저에서 이미지를 "끌어내는(pulling)" 경험을 하게 한다. 브라우저 외부에서, 사용자는 이미지를 보고, 크기를 조절하고, VR 공간에서 회전하는 등을 할 수 있다. 사용자가 선택된 이미지의 2차원 버전을 해제하거나, 브라우저에 반환하거나, 다른 방법으로 닫을 때, 이미지는 웹페이지의 원래 위치로 다시 스냅 백(snap back)할 수 있다.
선택된 콘텐츠가 3D 모델과 연관되면, 3D 웹 상호작용 시스템은 3D 모델을 검색하여 제시할 수 있으므로, 사용자가 웹 페이지에서 3D 객체를 끌어내는 것을 경험할 수 있다. 이어서, 3D 웹 상호작용 시스템은 이동, 회전, 크기 조절, 제어 활성화 등과 같이 모델과 상호작용하는 데 이용 가능한 모든 옵션들을 사용자에게 제공한다. 사용자가 3D 모델을 해제하고, 브라우저로 반환하거나, 달리 닫을 때, 3D 모델은 브라우저에 스냅되어, 웹 페이지의 원래 위치에 원래 콘텐츠로 다시 나타날 수 있다.
선택된 콘텐츠 항목이 환경 콘텐츠이거나, 그와 연관되어 있다면, 3D 웹 상호작용 시스템은 환경 콘텐츠를 검색하고 이를 제시할 수 있어, 사용자가 웹페이지에서 환경으로 부분적인 뷰를 끌어내는 것을 경험하게 할 수 있다. 부분 뷰는 환경 이미지를 도시하는 평면 또는 만곡 표면일 수 있다. 일부 구현들에서, 평면 또는 만곡 표면은 환경에 대한 뷰의 정지 이미지일 수 있다. 다른 구현들에서, 표면은 사용자가 창을 이동하거나 크기를 조절할 때 환경에 대한 상이한 뷰들을 볼 수 있게 하는 "창" 역할을 할 수 있다. 3D 웹 상호작용 시스템은 사용자가 부분 뷰를 조작할 수 있게 하여 예를 들어 사용자와 관련하여 모양, 크기 및 방향을 변경하게 한다.
사용자가 예를 들어 부분 뷰를 더 크게 만들거나 얼굴에 더 가깝게 가져옴으로써 시야를 더 많이 차지하도록 부분 뷰를 조작할 때, 부분 뷰는 인공 현실 환경을 포함하기 시작할 수 있다. 부분 뷰가 차지하는 사용자 시야의 양이 임계치를 초과할 때(예를 들어, 부분 뷰가 임계 크기를 초과하고/하거나 사용자 얼굴의 임계 거리 내에 있는 경우), 인공 현실 환경은 부분 뷰와 연관된 환경에 의해 대체될 수 있다. 환경이 파노라마 이미지 또는 비디오인 경우, 사용자는 3의 자유도들로 주변을 둘러보고 환경의 다양한 시점들을 볼 수 있다. 환경이 3D 이미지이거나 완전히 다른 환경인 경우, 사용자는 6의 자유도들로 환경의 상이한 시점들을 보기 위해 이동하고 둘러볼 수 있다.
일부 구현들에서, 사용자는 제스처를 수행하거나 제어를 선택하여 새로운 환경을 종료하고 원래 환경으로 돌아갈 수 있다. 일부 구현들에서, 원래의 인공 현실 환경으로 돌아가는 것은 부분 뷰가 브라우저에서 웹 페이지의 원래 위치로 돌아가게 할 수 있다. 다른 구현들에서, 원래의 인공 현실 환경으로 돌아가는 것은 부분 뷰를 사용자가 계속 조작할 수 있는 표면으로서 다시 보여줄 수 있다. 사용자가 부분 뷰를 해제하거나, 브라우저로 반환하거나, 다른 방법으로 닫을 때, 부분 뷰는 웹 페이지의 원래 위치로 스냅 백될 수 있다.
개시된 기술의 실시예들은 인공 현실 시스템을 포함하거나 이와 함께 구현될 수 있다. 인공 현실 또는 추가 현실(XR: extra reality)은 예를 들어 가상 현실(VR), 증강 현실(AR), 혼합 현실(MR), 하이브리드 현실, 또는 이들의 일부 조합 및/또는 파생물들을 포함할 수 있는, 사용자에게 제시 전에 일부 방식으로 조정된 형태이다. 인공 현실 콘텐츠는 완전히 생성된 콘텐츠 또는 캡처된 콘텐츠(예를 들어, 현실-세계 사진들)와 결합된 생성된 콘텐츠를 포함할 수 있다. 인공 현실 콘텐츠는 비디오, 오디오, 햅틱 피드백, 또는 이의 일부 조합을 포함할 수 있고, 이들 중 임의의 것은 단일 채널 또는 다중 채널들(이를테면 뷰어에게 3-차원 효과를 생성하는 스테레오 비디오)로 제시될 수 있다. 또한, 일부 실시예들에서, 인공 현실은 예를 들어 인공 현실의 콘텐츠를 생성하는 데 사용되고/되거나 인공 현실에 사용되는(예를 들어, 인공 현실의 활동들을 수행하는) 애플리케이션들, 제품들, 액세서리들, 서비스들, 또는 이들의 일부 조합과 연관될 수 있다. 인공 현실 콘텐츠를 제공하는 인공 현실 시스템은 호스트 컴퓨터 시스템에 연결된 머리-장착 디스플레이(HMD), 독립형 HMD, 모바일 디바이스 또는 컴퓨팅 시스템, "케이브(cave)" 환경 또는 다른 투사 시스템, 또는 인공 현실 콘텐츠를 하나 이상의 뷰어들에게 제공할 수 있는 임의의 다른 하드웨어 플랫폼을 포함하여 다양한 플랫폼들에서 구현될 수 있다.
본원에서 사용된 "가상 현실" 또는 "VR"은 사용자의 시각적 입력이 컴퓨팅 시스템에 의해 제어되는 몰입형 경험을 지칭한다. "증강 현실" 또는 "AR"은 사용자가 컴퓨팅 시스템을 통과한 후 현실 세계의 이미지들을 보는 시스템들을 지칭한다. 예를 들어, 후면에 카메라를 갖는 태블릿은 현실 세계의 이미지들을 캡처하고 이어서 카메라로부터 태블릿의 대향 측에 있는 스크린에 이미지들을 디스플레이할 수 있다. 태블릿은 가상 객체들을 추가하는 것과 같이 이미지들이 시스템을 통과할 때 이미지들을 프로세싱하고 조정하거나 "증강"할 수 있다. "혼합 현실" 또는 "MR"은 사용자의 눈으로 진입하는 광이 컴퓨팅 시스템에 의해 부분적으로 생성되고 현실 세계의 객체들에서 반사된 광을 부분적으로 구성하는 시스템들을 지칭한다. 예를 들어, MR 헤드셋은 패스-스루(pass-through) 디스플레이를 갖는 한 쌍의 안경 형상일 수 있고, 이는 현실 세계의 광이 MR 헤드셋의 투사기에서 광을 동시에 방출하는 도파관을 통과하게 하여, MR 헤드셋이 사용자가 볼 수 있는 현실 객체들과 혼합된 가상 객체들을 제시하게 한다. 본원에 사용된 "인공 현실", "추가 현실" 또는 "XR"은 VR, AR, MR, 또는 이들의 임의의 조합 또는 하이브리드 중 임의의 것을 지칭한다.
일부 기존 XR 시스템들은 웹 콘텐츠를 보고 상호작용하기 위한 브라우저들(예를 들어, 인공 현실 환경의 2D 패널들)을 포함한다. 그러나, 이러한 XR 시스템들은 인터넷을 브라우징하기 위해 스크린을 보는 전통적인 사용자 경험을 단순히 모방하는 제한된 기능을 제공한다. 이러한 브라우저들과의 사용자 상호작용들은 3차원의 표현 입력을 간단한 포인트-앤-클릭(point-and-click) 입력으로 해석하는 것을 요구하고, 이는 웹 콘텐츠와 완전히 상호작용하는 사용자의 능력을 심각하게 제한한다. 웹 콘텐츠가 3D 콘텐츠와 연관되어 있더라도(예를 들어, 웹 콘텐츠가 파노라마 이미지인 경우), 기존 XR 시스템들은 평면 패널 브라우저에서만 상호작용들을 허용한다. 본원에 설명된 3D 웹 상호작용 시스템 및 프로세스들은 기존 XR 상호작용 기법들과 연관된 이러한 문제들을 극복하고 사용자들에게 웹 콘텐츠와의 상호작용들에 대한 더 큰 제어를 제공하고, 더 많은 기능을 제공하며, 기존 XR 시스템들의 상호작용들보다 더 자연스럽고 직관적일 것으로 예상된다. 자연스럽고 직관적임에도 불구하고, 본원에 설명된 3D 웹 상호작용 시스템 및 프로세스들은 기존 웹 상호작용들의 아날로그가 아니라, 컴퓨터화된 인공 현실 시스템들에 뿌리를 두고 있다. 예를 들어, 기존 브라우저들의 웹 콘텐츠 또는 3D 환경들의 브라우저들과의 기존 상호작용들은 브라우저 인터페이스에서 3D 공간으로 콘텐츠를 추출하는 방식들을 포함되지 않고, 웹 콘텐츠와 3D 콘텐츠 간의 기술적 링킹, 이러한 콘텐츠의 주문형 검색, 브라우저 외부의 콘텐츠와의 상호작용들을 훨씬 덜 제공한다. 예를 들어, 기존 시스템들은 사용자가 브라우저에서 3D 모델이나 새로운 환경의 부분 뷰를 끌어내게 하고, 그 안에 스스로를 끌어내어, 현재의 인공 현실 환경을 새로운 환경으로 대체하는 것을 허용하지 않는다. 또한, 기존 XR 시스템들은 3D 콘텐츠를 자동으로 3D 콘텐츠로 변환하거나 브라우저 외부에서 조작될 수 있는 2D 표현을 제공하여 3D 콘텐츠와 링크되지 않은 웹 브라우저와 브라우저 외부의 3D 환경에서 상호작용하는 방법들을 제공하지 않는다.
여러 구현들이 도면들을 참조하여 아래에서 더 상세히 논의된다. 도 1은 개시된 기술의 일부 구현들이 동작할 수 있는 디바이스들의 개요를 예시하는 블록도이다. 디바이스들은 사용자가 가상 환경에 디스플레이되는 콘텐츠를 브라우저 밖으로 끌어내게 하고 브라우저 외부의 3D 공간에서 콘텐츠를 조작할 수 있게 하는 컴퓨팅 시스템(100)의 하드웨어 구성요소들을 포함할 수 있다. 예를 들어, 이러한 조작들은 이미지들을 이동, 크기 조절 또는 뒤틀기; 창을 통해 다른 환경을 보거나 현재 환경을 대체하기 위해 진입하기; 또는 3D 객체들 보기 및 조작; 사용자가 요청 시 브라우저에 콘텐츠를 반환하고 웹 브라우징 경험을 계속하게 하는 동안 전부를 포함할 수 있다. 다양한 구현들에서, 컴퓨팅 시스템(100)은 프로세싱을 분배하고 입력 데이터를 공유하기 위해 유선 또는 무선 채널들을 통해 통신하는 단일 컴퓨팅 디바이스(103) 또는 다중 컴퓨팅 디바이스들(예를 들어, 컴퓨팅 디바이스(101), 컴퓨팅 디바이스(102), 및 컴퓨팅 디바이스(103))를 포함할 수 있다. 일부 구현들에서, 컴퓨팅 시스템(100)은 외부 프로세싱 또는 센서들에 대한 필요 없이 사용자에게 컴퓨터 생성 또는 증강 경험을 제공할 수 있는 독립형 헤드셋을 포함할 수 있다. 다른 구현들에서, 컴퓨팅 시스템(100)은 헤드셋과 같은 다중 컴퓨팅 디바이스들 및 코어 프로세싱 구성요소(콘솔, 모바일 디바이스 또는 서버 시스템과 같은)를 포함할 수 있고, 여기서 일부 프로세싱 동작들은 헤드셋에서 수행되고 다른 동작들은 코어 프로세싱 구성요소에 오프로드된다. 예시적인 헤드셋들은 도 2a 및 도 2b와 관련하여 아래에 설명된다. 일부 구현들에서, 포지션 및 환경 데이터는 헤드셋 디바이스에 통합된 센서들에 의해서만 수집될 수 있는 반면, 다른 구현들에서 하나 이상의 비-헤드셋 컴퓨팅 디바이스들은 환경 또는 포지션 데이터를 추적할 수 있는 센서 구성요소들을 포함할 수 있다.
컴퓨팅 시스템(100)은 하나 이상의 프로세서(들)(110)(예를 들어, 중앙 프로세싱 유닛(CPU)들, 그래픽 프로세싱 유닛(GPU)들, 홀로그램 프로세싱 유닛(HPU) 등)를 포함할 수 있다. 프로세서들(110)은 단일 프로세싱 유닛 또는 하나의 디바이스 내 또는 다수의 디바이스들에 걸쳐 분산된(예를 들어, 컴퓨팅 디바이스들(101-103) 중 2개 이상에 걸쳐 분산된) 다중 프로세싱 유닛들일 수 있다.
컴퓨팅 시스템(100)은 프로세서들(110)에 입력을 제공하여 조치들을 통지하는 하나 이상의 입력 디바이스들(120)을 포함할 수 있다. 조치들은 입력 디바이스로부터 수신된 신호들을 해석하고 통신 프로토콜을 사용하여 프로세서들(110)에 정보를 통신하는 하드웨어 제어기에 의해 중재될 수 있다. 각 입력 디바이스(120)는 예를 들어 마우스, 키보드, 터치스크린, 터치패드, 웨어러블 입력 디바이스(예를 들어, 햅틱 장갑, 팔찌, 반지, 귀걸이, 목걸이, 시계 등), 카메라(또는 다른 광-기반 입력 디바이스, 예를 들어 적외선 센서), 마이크로폰 또는 다른 사용자 입력 디바이스들을 포함할 수 있다.
프로세서들(110)은 예를 들어 PCI 버스, SCSI 버스 또는 무선 연결과 같은 내부 또는 외부 버스를 사용하여 다른 하드웨어 디바이스들에 결합될 수 있다. 프로세서들(110)은 디스플레이(130)와 같은 디바이스들용 하드웨어 제어기와 통신할 수 있다. 디스플레이(130)는 텍스트와 그래픽들을 디스플레이하는 데 사용될 수 있다. 일부 구현들에서, 디스플레이(130)는 입력 디바이스가 터치스크린이거나 눈 방향 모니터링 시스템이 장착된 경우와 같이 디스플레이의 일부로서 입력 디바이스를 포함한다. 일부 구현들에서, 디스플레이는 입력 디바이스와 분리되어 있다. 디스플레이 디바이스들의 예들은: LCD 디스플레이 스크린, LED 디스플레이 스크린, 투사된, 홀로그램 또는 증강 현실 디스플레이(예를 들어, 헤드-업 디스플레이 디바이스 또는 머리-장착 디바이스) 등이다. 네트워크 칩 또는 카드, 비디오 칩 또는 카드, 오디오 칩 또는 카드, USB, 파이어와이어 또는 다른 외부 디바이스, 카메라, 프린터, 스피커들, CD-ROM 드라이브, 디스크 드라이브 등과 같은 다른 I/O 디바이스들(140)은 또한 프로세서에 결합될 수 있다.
컴퓨팅 시스템(100)은 다른 로컬 컴퓨팅 디바이스들 또는 네트워크 노드와 무선 또는 유선-기반으로 통신할 수 있는 통신 디바이스를 포함할 수 있다. 통신 디바이스는 예를 들어 TCP/IP 프로토콜들을 사용하여 네트워크를 통해 다른 디바이스 또는 서버와 통신할 수 있다. 컴퓨팅 시스템(100)은 통신 디바이스를 활용하여 다수의 네트워크 디바이스들에 걸쳐 동작들을 분배할 수 있다.
프로세서들(110)은 컴퓨팅 시스템(100)의 컴퓨팅 디바이스들 중 하나에 포함될 수 있거나 컴퓨팅 시스템(100)의 다중 컴퓨팅 디바이스들 또는 다른 외부 디바이스들에 걸쳐 분배될 수 있는 메모리(150)에 대한 액세스를 가질 수 있다. 메모리는 휘발성 또는 비-휘발성 저장을 위한 하나 이상의 하드웨어 디바이스들을 포함하고, 판독-전용 및 쓰기가능 메모리 둘 모두를 포함할 수 있다. 예를 들어, 메모리는 랜덤 액세스 메모리(RAM), 다양한 캐시들, CPU 레지스터들, 판독-전용 메모리(ROM) 및 플래시 메모리, 하드 드라이브들, 플로피 디스크들, CD들, DVD들, 자기 저장 디바이스들, 테이프 드라이브들 등 같은 쓰기가능 비-휘발성 메모리 중 하나 이상을 포함할 수 있다. 메모리는 기본 하드웨어와 분리된 전파 신호가 아니고; 따라서 메모리는 일시적이지 않다. 메모리(150)는 운영 체제(162), 3D 웹 상호작용 시스템(164), 및 다른 애플리케이션 프로그램들(166)과 같은 프로그램들 및 소프트웨어를 저장하는 프로그램 메모리(160)를 포함할 수 있다. 메모리(150)는 또한 예를 들어 브라우저 콘텐츠(3D 콘텐츠에 대한 태그들 또는 다른 링크들을 가짐), 검색된 3D 콘텐츠, 2D 이미지들의 3D 이미지들로의 변환들, 제스처 식별자들, 환경 데이터, 구성 데이터, 설정들, 프로그램 메모리(160) 또는 컴퓨팅 시스템(100)의 임의의 요소에 제공될 수 있는 사용자 옵션들 또는 선호도들 등을 포함할 수 있는 데이터 메모리(170)를 포함할 수 있다.
일부 구현들은 다수의 다른 컴퓨팅 시스템 환경들 또는 구성들과 함께 동작할 수 있다. 기술과 함께 사용하기에 적합할 수 있지만, 이에 제한되지 않는 컴퓨팅 시스템들, 환경들 및/또는 구성들의 예들은 XR 헤드셋들, 개인용 컴퓨터들, 서버 컴퓨터들, 핸드헬드 또는 랩톱 디바이스들, 셀룰러 전화들, 웨어러블 전자장치들, 게임 콘솔들, 태블릿 디바이스들, 다중프로세서 시스템들, 마이크로프로세서-기반 시스템들, 셋톱 박스들, 프로그램가능 소비자 전자장치들, 네트워크 PC들, 미니컴퓨터들, 메인프레임 컴퓨터들, 상기 시스템들 또는 디바이스들 중 임의의 것을 포함하는 분산 컴퓨팅 환경들 등을 포함한다.
도 2a는 일부 실시예들에 따른 가상 현실 머리-장착 디스플레이(HMD)(200)의 배선도이다. HMD(200)는 전면 강체(205) 및 밴드(210)를 포함한다. 전면 강체(205)는 전자 디스플레이(245)의 하나 이상의 전자 디스플레이 요소들, 관성 모션 유닛(IMU)(215), 하나 이상의 포지션 센서들(220), 로케이터(locator)들(225), 및 하나 이상의 컴퓨터 유닛들(230)을 포함한다. 포지션 센서들(220), IMU(215), 및 컴퓨터 유닛들(230)은 HMD(200) 내부에 있을 수 있고 사용자에게 보이지 않을 수 있다. 다양한 구현들에서, IMU(215), 포지션 센서들(220), 및 로케이터들(225)은 3의 자유도들(3DoF) 또는 6의 자유도들(6DoF)로 현실 세계 및 가상 환경에서 HMD(200)의 움직임 및 위치를 추적할 수 있다. 예를 들어, 로케이터들(225)은 HMD(200) 주변의 실제 객체들에 광점들을 생성하는 적외선 광 빔들을 방출할 수 있다. HMD(200)와 통합된 하나 이상의 카메라들(도시되지 않음)은 광점들을 검출할 수 있다. HMD(200)의 컴퓨터 유닛들(230)은 HMD(200)의 포지션 및 움직임을 외삽할 뿐만 아니라 HMD(200)를 둘러싸는 실제 객체들의 형상 및 포지션을 식별하기 위해 검출된 광점들을 사용할 수 있다.
전자 디스플레이(245)는 전면 강체(205)와 통합될 수 있고 컴퓨터 유닛들(230)에 의해 지시된 바와 같이 사용자에게 이미지 광을 제공할 수 있다. 다양한 실시예들에서, 전자 디스플레이(245)는 단일 전자 디스플레이 또는 다중 전자 디스플레이들(예를 들어, 각 사용자 눈에 대한 디스플레이)일 수 있다. 전자 디스플레이(245)의 예들은: 액정 디스플레이(LCD), 유기 발광 다이오드(OLED) 디스플레이, 능동-매트릭스 유기 발광 다이오드 디스플레이(AMOLED), 하나 이상의 양자점 발광 다이오드(QOLED) 서브-픽셀들을 포함하는 디스플레이, 투사 유닛(예를 들어, microLED, LASER 등), 다른 디스플레이 또는 이들의 일부 조합을 포함한다.
일부 구현들에서, HMD(200)는 개인용 컴퓨터(PC)(도시되지 않음) 및/또는 하나 이상의 외부 센서들(도시되지 않음)과 같은 코어 프로세싱 구성요소에 결합될 수 있다. 외부 센서들은 HMD(200)의 위치 및 움직임을 결정하기 위해 IMU(215) 및 포지션 센서(220)의 출력과 결합하여, PC가 사용할 수 있는 HMD(200)(예를 들어, HMD(200)에서 방출된 광을 통해)를 모니터링할 수 있다.
일부 구현들에서, HMD(200)는 사용자가 한 손 또는 양손들로 홀딩할 수 있는 제어기들(도시되지 않음)과 같은 하나 이상의 다른 외부 디바이스들과 통신할 수 있다. 제어기들은 자체 IMU 유닛들, 위치 센서들을 가질 수 있고/있거나, 추가 광점들을 방출할 수 있다. HMD(200) 또는 외부 센서들은 이러한 제어기 광점들을 추적할 수 있다. HMD(200) 또는 코어 프로세싱 구성요소의 컴퓨터 유닛들(230)은 IMU 및 위치 출력과 결합하여, 이 추적을 사용하여 사용자의 손 포지션들 및 모션들을 모니터링할 수 있다. 제어기들은 또한 사용자가 입력을 제공하고 가상 객체들과 상호작용하기 위해 작동할 수 있는 다양한 버튼들을 포함할 수 있다. 다양한 구현들에서, HMD(200)는 또한 눈 추적 유닛, 오디오 시스템, 다양한 네트워크 구성요소들 등과 같은 추가적인 서브시스템들을 포함할 수 있다. 일부 구현들에서, 제어기들 대신에 또는 제어기들에 추가하여, HMD에 포함되거나 그 외부에 있는 하나 이상의 카메라들(200)은 사용자의 손들의 포지션들과 포즈들을 모니터링하여 제스처들 및 다른 손과 신체의 모션들을 결정할 수 있다.
도 2b는 혼합 현실 HMD(252) 및 코어 프로세싱 구성요소(254)를 포함하는 혼합 현실 HMD 시스템(250)의 배선도이다. 혼합 현실 HMD(252) 및 코어 프로세싱 구성요소(254)는 링크(256)에 의해 표시된 바와 같이 무선 연결(예를 들어, 60GHz 링크)을 통해 통신할 수 있다. 다른 구현들에서, 혼합 현실 시스템(250)은 외부 컴퓨터 디바이스 없이 헤드셋만을 포함하거나 혼합 현실 HMD(252)와 코어 프로세싱 구성요소(254) 사이의 다른 유선 또는 무선 연결들을 포함한다. 혼합 현실 HMD(252)는 패스-스루 디스플레이(258) 및 프레임(260)을 포함한다. 프레임(260)은 광 투사기들(예를 들어, 레이저들, L3D 웹 상호작용 시스템 등), 카메라들, 눈-추적 센서들, MEMS 구성요소들, 네트워킹 구성요소들 등과 같은 다양한 전자 구성요소들(도시되지 않음)을 수용할 수 있다.
투사기들은 예를 들어 광학 요소들을 통해 패스-스루 디스플레이(258)에 결합되어 사용자에게 매체를 디스플레이할 수 있다. 광학 요소들은 투사기들로부터 사용자의 눈으로 광을 지향시키기 위한 하나 이상의 도파관 어셈블리들, 반사기들, 렌즈들, 거울들, 시준기들, 격자들 등을 포함할 수 있다. 이미지 데이터는 코어 프로세싱 구성요소(254)로부터 링크(256)를 통해 HMD(252)로 송신될 수 있다. HMD(252)의 제어기들은 이미지 데이터를 투사기들의 광 펄스들로 변환할 수 있고, 이는 광학 요소들을 통해 사용자의 눈에 출력 광으로 송신될 수 있다. 출력 광은 디스플레이(258)를 통과하는 광과 혼합될 수 있어, 출력 광이 현실 세계에 존재하는 것처럼 나타나는 가상 객체들을 제시할 수 있다.
HMD(200)와 유사하게, HMD 시스템(250)은 또한 HMD 시스템(250)이 예를 들어, 3DoF 또는 6DoF로 자신을 추적하고, 사용자의 부분들(예를 들어, 손, 발, 머리, 또는 다른 신체 부위들)을 추적하고, HMD(252)가 이동할 때 정지해 있는 것처럼 보이도록 가상 객체들을 매핑하고, 가상 객체들이 제스처들 및 다른 현실-세계 객체들에 반응하게 하는 모션 및 포지션 추적 유닛들, 카메라들, 광원들 등을 포함할 수 있다.
도 3은 개시된 기술의 일부 구현들이 동작할 수 있는 환경(300)의 개요를 예시하는 블록도이다. 환경(300)은 하나 이상의 클라이언트 컴퓨팅 디바이스들(305A-D)을 포함할 수 있고, 그 예는 컴퓨팅 시스템(100)을 포함할 수 있다. 일부 구현들에서, 클라이언트 컴퓨팅 디바이스들(예를 들어, 클라이언트 컴퓨팅 디바이스(305B))의 일부는 HMD(200) 또는 HMD 시스템(250)일 수 있다. 클라이언트 컴퓨팅 디바이스들(305)은 네트워크(330)를 통한 서버 컴퓨팅 디바이스와 같은 하나 이상의 원격 컴퓨터들로의 논리적 연결들을 사용하여 네트워크 환경에서 동작할 수 있다.
일부 구현들에서, 서버(310)는 클라이언트 요청들을 수신하고 서버들(320A-C)과 같은 다른 서버들을 통해 이러한 요청들의 이행을 조정하는 에지 서버일 수 있다. 서버 컴퓨팅 디바이스들(310 및 320)은 컴퓨팅 시스템(100)과 같은 컴퓨팅 시스템들을 포함할 수 있다. 각 서버 컴퓨팅 디바이스들(310 및 320)이 논리적으로 단일 서버로 디스플레이되지만, 서버 컴퓨팅 디바이스들은 각각 동일하거나 지리적으로 다른 물리적 위치들에 위치된 다수의 컴퓨팅 디바이스들을 포함하는 분산 컴퓨팅 환경일 수 있다.
클라이언트 컴퓨팅 디바이스들(305) 및 서버 컴퓨팅 디바이스들(310, 320)은 각각 다른 서버/클라이언트 디바이스(들)에 대한 서버 또는 클라이언트로서 작용할 수 있다. 서버(310)는 데이터베이스(315)에 연결할 수 있다. 서버들(320A-C)은 각각 대응하는 데이터베이스(325A-C)에 연결할 수 있다. 위에서 논의된 바와 같이, 각각의 서버(310 또는 320)는 서버들의 그룹에 대응할 수 있고, 이들 서버들 각각은 데이터베이스를 공유할 수 있거나 그들 자신의 데이터베이스를 가질 수 있다. 데이터베이스들(315 및 325)은 논리적으로 단일 유닛들로 디스플레이되지만, 데이터베이스들(315 및 325)은 각각 다수의 컴퓨팅 디바이스들을 포함하는 분산 컴퓨팅 환경일 수 있거나, 해당 서버 내에 위치되거나, 동일하거나 지리적으로 다른 물리적 위치들에 위치될 수 있다.
네트워크(330)는 근거리 통신망(LAN), 광역 통신망(WAN), 메시 네트워크, 하이브리드 네트워크, 또는 다른 유선 또는 무선 네트워크들일 수 있다. 네트워크(330)는 인터넷 또는 일부 다른 공용 또는 사설 네트워크일 수 있다. 클라이언트 컴퓨팅 디바이스들(305)은 유선 또는 무선 통신과 같은 네트워크 인터페이스를 통해 네트워크(330)에 연결될 수 있다. 서버(310)와 서버들(320) 사이의 연결들이 별도의 연결들로 도시되어 있지만, 이러한 연결들은 네트워크(330) 또는 별도의 공용 또는 사설 네트워크를 포함하는 임의의 종류의 로컬, 광역, 유선 또는 무선 네트워크일 수 있다.
도 4는 일부 구현들에서, 개시된 기술을 이용하는 시스템에서 사용될 수 있는 구성요소들(400)을 예시하는 블록도이다. 구성요소들(400)은 컴퓨팅 시스템(100)의 하나의 디바이스에 포함될 수 있거나 컴퓨팅 시스템(100)의 다수의 디바이스들에 걸쳐 분산될 수 있다. 구성요소들(400)은 하드웨어(410), 중재자(420), 및 특수 구성요소들(430)을 포함한다. 위에서 논의된 바와 같이, 개시된 기술을 구현하는 시스템은 프로세싱 유닛들(412), 작업 메모리(414), 입력 및 출력 디바이스들(416)(예를 들어, 카메라들, 디스플레이들, IMU 유닛들, 네트워크 연결들 등), 및 저장 메모리(418)를 포함하는 다양한 하드웨어를 사용할 수 있다. 다양한 구현들에서, 저장 메모리(418)는: 로컬 디바이스들, 원격 저장 디바이스들에 대한 인터페이스들 또는 이들의 조합들 중 하나 이상일 수 있다. 예를 들어, 저장 메모리(418)는 시스템 버스를 통해 액세스가능한 하나 이상의 하드 드라이브들 또는 플래시 드라이브들일 수 있거나 클라우드 저장 제공자(예를 들어, 저장장치(315 또는 325)) 또는 하나 이상의 통신 네트워크들을 통해 액세스가능한 다른 네트워크 저장장치일 수 있다. 다양한 구현들에서, 구성요소들(400)은 클라이언트 컴퓨팅 디바이스들(305)과 같은 클라이언트 컴퓨팅 디바이스에서 또는 서버 컴퓨팅 디바이스(310 또는 320)와 같은 서버 컴퓨팅 디바이스에서 구현될 수 있다.
중재자(420)는 하드웨어(410)와 특수 구성요소(430) 사이의 자원들을 중재하는 구성요소들을 포함할 수 있다. 예를 들어, 중재자(420)는 운영 체제, 서비스들, 드라이버들, 기본 입력 출력 시스템(BIOS), 제어기 회로들, 또는 다른 하드웨어 또는 소프트웨어 시스템들을 포함할 수 있다.
특수 구성요소들(430)은 인공 현실 환경에서 브라우저 외부에 웹 콘텐츠와 연관된 콘텐츠를 제시하기 위한 동작들을 수행하도록 구성된 소프트웨어 또는 하드웨어를 포함할 수 있다. 특수 구성요소들(430)은 XR 환경(434), 브라우저(436), 제스처 모니터 및 식별자(438), 콘텐츠 유형 식별자(440), 콘텐츠 검색기(442), 및 사용자 인터페이스들을 제공하고, 데이터를 전송하고, 인터페이스들(432) 같은 특수 구성요소들을 제어하는 데 사용될 수 있는 구성요소들 및 API들을 포함할 수 있다. 예를 들어, 인터페이스들(432)은 프로세스 경계들에 걸쳐 스레드들 사이, 예를 들어 "클라이언트들"과 "서비스들" 사이의 통신을 허용하는 프로세스 간 통신(IPC) 시스템을 포함할 수 있고, 메신저들은 스레드 핸들러들과 상호작용하고 통신을 구현하기 위해 콜백(callback)을 설정한다. 일부 구현들에서, 구성요소들(400)은 다수의 컴퓨팅 디바이스들에 걸쳐 분산된 컴퓨팅 시스템에 있을 수 있거나 하나 이상의 특수 구성요소들(430)을 실행하는 서버-기반 애플리케이션에 대한 인터페이스일 수 있다.
XR 환경(434)은 브라우저 및 다른 2D 또는 3D 객체들을 디스플레이할 수 있는 임의의 유형의 인공 현실 환경일 수 있다. 일부 구현들에서, XR 환경은 사용자가 브라우저(436)와 같은 애플리케이션들을 개시할 수 있는 런처(launcher) 또는 다른 메뉴를 제시하는 "홈" 환경을 포함할 수 있다. XR 환경(434)은 또한 제스처 모니터 및 식별자(438), 콘텐츠 유형 식별자(440), 콘텐츠 검색기(442)와 같은 서비스들 및 다른 애플리케이션들을 포함할 수 있다. 일부 구현들에서, 이러한 다른 구성요소들은 XR 환경(434)과 분리될 수 있거나 일부는 브라우저(436)의 일부일 수 있다.
브라우저(436)는 XR 환경(434)에서 구현된 웹 브라우저일 수 있다. 다양한 구현들에서, 브라우저(436)는 웹 콘텐츠를 디스플레이하는 하나 이상의 가상 패널들 또는 객체들일 수 있다. 예를 들어, 브라우저(436)는 HTML, CSS, JavaScript, 및 다른 코드 및 마크업 언어들을 객체들 및/또는 사용자 간의 렌더링가능 콘텐츠 및 조치들로 해석하는 프로세스일 수 있다. 일부 구현들에서, 브라우저(436)는 렌더링된 콘텐츠 및 스크립트들이 요소들의 계층으로서 생성되는 문서 객체 모델(DOM)을 사용하여 웹 페이지들을 생성할 수 있다. 일부 경우들에서, 브라우저(436)에 의해 사용되는 일부 데이터 객체들은 DOM 외부에 존재할 수 있다. 브라우저(436)는 콘텐츠의 유형을 지정(예를 들어, 콘텐츠가 3D 콘텐츠인지 또는 3D 콘텐츠에 대한 주소 또는 경로가 있는 3D 콘텐츠와 연관되는지 여부를 지정)하는 태그들을 포함할 수 있는 콘텐츠를 수신할 수 있다. 브라우저(436)는 브라우저(436)가 브라우저(436) 내의 콘텐츠 식별자들 및 콘텐츠 포지션들을 XR 환경(434), 제스처 모니터 및 식별자(438), 콘텐츠 유형 식별자(440), 및/또는 콘텐츠 검색기(442)로 전송하게 하는 코드(예를 들어, 네이티브 코드, 플러그인, 로드된 스크립트, 또는 다른 명령들)를 가질 수 있다. 일부 구현들에서, 이 코드는 또한 DOM을 수정하여, 예를 들어 특수 UI 요소들 또는 3D 콘텐츠와 연관된 요소들에 대한 효과를 디스플레이할 수 있다(따라서 사용자에게 선택되거나 브라우저에서 인공 현실 환경으로 "끌어낼" 수 있음을 나타냄). 일부 구현들에서, 이 코드는 또한 예를 들어 브라우저에서 끌어내질 때 표시된 요소들을 숨기거나 교체하고 닫히거나 브라우저에 다시 넣어질 때 원래 요소들을 보여주도록 다른 구성요소들의 임의의 것으로부터의 메시지들에 응답할 수 있다.
제스처 모니터 및 식별자(438)는 사용자의 손들 및/또는 제어기 조치들(예를 들어, 카메라 입력, IMU/포지션 센서 등을 기반으로 함)을 모니터링하고, 브라우저(436)에 디스플레이된 콘텐츠 선택 또는 XR 환경(434)에서, 웹-기반 콘텐츠 항목에 대응하는 객체 조작에 대응하는 제스처와 일치하는지 결정할 수 있다. 제스처 모니터 및 식별자(438)는 인터페이스들(432)을 통해 브라우저(436)와 함께 작동하여, 제스처가 나타내는 브라우저 콘텐츠 항목을 식별할 수 있다. 따라서, 사용자가 브라우저(436) 밖으로 콘텐츠 항목을 "끌어내는" 제스처를 할 때, 이러한 구성요소들은 콘텐츠 유형 식별자(440)에 의해 식별된 콘텐츠 유형에 따라 포맷된 대응하는 콘텐츠를 XR 환경(434)에 공급하도록 콘텐츠 검색기(442)에 신호를 보낼 수 있다.
콘텐츠 유형 식별자(440)는 콘텐츠가 환경 콘텐츠와 연관되는지, 하나 이상의 3D 모델들과 연관되는지, 또는 3D 콘텐츠와 연관되지 않는지 여부를 식별할 수 있다. 일부 구현들에서, 콘텐츠 유형 식별자(440)는 분류되는 콘텐츠 또는 분류되는 콘텐츠와 연관된 웹-기반 콘텐츠에 대한 태그들 또는 다른 식별자들을 검토함으로써 이를 달성할 수 있다. 다른 구현들에서, 콘텐츠 유형 식별자(440)는 콘텐츠 자체의 인코딩, 구조 또는 다른 피처(feature)들을 분석하거나, 콘텐츠 유형들을 식별하도록 훈련된 기계 학습 모델에 콘텐츠를 공급함으로써 이를 달성할 수 있다. 콘텐츠 유형 식별자(440)에 의해 식별된 유형은 콘텐츠 검색기(442)에 의해 제공된 콘텐츠를 XR 환경(434)이 디스플레이하는 방법을 제어할 수 있다. 예를 들어 콘텐츠 유형이 평면 이미지인 경우, 2D 패널로 디스플레이되거나 3D 이미지로 변환할 수 있고; 콘텐츠 유형이 환경 콘텐츠인 경우, 먼저 환경에 부분 뷰로서 디스플레이되고 이어서 부분 뷰가 임계치(예를 들어, 크기, 촬영한 시야, 사용자까지의 최소 거리)을 초과하는 경우 전체 환경으로 디스플레이될 수 있거나; 또는 콘텐츠 유형이 3D 모델인 경우, 3D 모델이 디스플레이될 수 있다.
콘텐츠 검색기(442)는 (예를 들어, 웹사이트를 로딩할 때 또는 사용자가 콘텐츠 항목을 선택할 때 브라우저(436)로부터) 하나 이상의 콘텐츠 조각들의 식별을 수신할 수 있고 로컬 저장장치 또는 원격 위치에서 검색할 수 있다. 예를 들어, 식별자는 콘텐츠 검색기(442)가 표시된 콘텐츠 항목(들)을 획득할 수 있는 로컬 메모리, 경로 또는 원격 주소의 포인터와 연관될 수 있다.
통상의 기술자들은 위에서 설명된 도 1-도 4, 및 이하에서 설명되는 흐름도 각각에서 예시된 구성요소들이 다양한 방식들로 변경될 수 있음을 인식할 것이다. 예를 들어, 논리의 순서가 재배열될 수 있고, 서브단계들은 병렬로 수행될 수 있고, 예시된 논리는 생략될 수 있고, 다른 논리가 포함될 수 있고 등등이 있을 수 있다. 일부 구현들에서, 위에서 설명된 하나 이상의 구성요소들은 아래에 설명된 프로세스들 중 하나 이상을 실행할 수 있다.
도 5(도 5, 도 5 계속-1(도 5a), 도 5 계속-2(도 5b) 및 도 5 계속-3(도 5c) 포함)는 인공 현실 환경에서 웹-기반 콘텐츠 항목을 제시하기 위한 본 기술의 일부 구현들에서 사용되는 500, 525, 550 및 575로 표시된 프로세스의 일부들을 갖는 프로세스를 예시하는 흐름도이다. 일부 구현들에서, 프로세스(500)는 사용자가 인공 현실 환경에서 브라우저를 동작할 때 수행될 수 있다. 일부 구현들에서, 프로세스(500)의 부분들은 예를 들어 웹사이트에 대한 이전 방문들 또는 웹사이트에 대한 사용자 방문의 예측들로부터 웹 콘텐츠와 연관된 3D 콘텐츠를 로컬로 캐싱함으로써 시간 전에 수행될 수 있다.
블록(502)에서 시작하여, 프로세스(500)는 인공 현실 환경에서 브라우저를 디스플레이할 수 있다. 예를 들어, 브라우저는 웹사이트를 제시하고 URL 바아, 내비게이션 버튼들, 북마크들, 메뉴들 및 다른 기존 웹 브라우저 인터페이스들과 같은 제어부들 및 인터페이스들을 포함하는 하나 이상의 2D 패널일 수 있다. 사용자는 디스플레이된 링크들 또는 다른 제어부들을 "호버(hover)"하거나 "클릭"하기 위해 손가락을 사용하고, 웹사이트에서 스크롤하기 위해 "드래그"하고, 실제 또는 가상 키보드를 사용하여 타이핑하는 등 같은 다양한 제스처들 및 음성 커맨드들로 인공 현실 환경에서 브라우저와 상호작용할 수 있다.
사용자가 웹 사이트를 방문하면, 텍스트, 이미지들, 비디오들 등과 같은 다양한 콘텐츠 항목들이 디스플레이될 수 있다. 일부 경우들에서, 웹 사이트의 콘텐츠 항목들은 3D 이미지 또는 비디오(예를 들어, 보기 각도를 변경하는 것이 이미지 또는 비디오에 도시된 다양한 객체들의 관점을 변경하는 이미지 또는 비디오) 또는 파노라마 이미지 또는 비디오(예를 들어, 이미지 또는 현재 비디오 프레임이 3D 형상, 이를테면 타원체 또는 원통으로 윤곽이 지어지는 이미지 또는 비디오, 이때 사용자의 시점은 사용자가 이미지 또는 비디오 프레임의 다른 부분들을 보기 위해 회전할 수 있는 3D 형상의 중심에 설정됨) 같은 3D 콘텐츠 항목들일 수 있다. 일부 구현들에서, 웹페이지의 콘텐츠 항목들은 브라우저에 디스플레이되지 않는 3D 콘텐츠와 연관될 수 있다. 이러한 콘텐츠 항목들은 예를 들어 3D 콘텐츠의 정지 이미지로 도시될 수 있다. 다양한 구현들에서, 연관된 3D 콘텐츠는 환경 콘텐츠(예를 들어, 파노라마 이미지, 파노라마 비디오, 3D 이미지, 또는 인공 현실 환경) 또는 3D 모델과 같은 다양한 유형들 중 하나일 수 있다.
일부 구현들에서, 웹페이지의 콘텐츠 항목이 3D 콘텐츠와 연관될 때, 표시자가 콘텐츠와 함께 제시될 수 있다. 일부 구현들에서, 표시자는 웹-기반 콘텐츠 항목과 연관하여 디스플레이되는 그래픽, 색상, 애니메이션, 음영 등과 같은 사용자 인터페이스(UI) 요소일 수 있다. 다른 구현들에서, 표시자는 사용자가 3D 콘텐츠와 연관된 웹-기반 콘텐츠 항목을 선택하거나, 호버링하거나, 시선을 향할 때 음영 또는 그림자 효과와 같은 웹-기반 콘텐츠 항목에 추가된 효과일 수 있다.
블록(504)에서, 프로세스(500)는 브라우저에 디스플레이된 현재 웹사이트에 포함된 하나 이상의 콘텐츠 항목들의 식별을 브라우저로부터 수신할 수 있다. 예를 들어, 인공 현실 환경과 브라우저 사이에서, 아래에서 설명되는 이러한 통신 및 다른 통신들은 프로세스 간 통신(IPC) 메시지들을 사용하여 수행될 수 있다. 블록(504)은 일부 구현들에서 이 단계를 건너뛰었음을 나타내는 점선들로 도시된다. 일부 구현들에서 플러그-인, 네이티브 코드 또는 로딩된 스크립트는 현재 웹사이트의 콘텐츠를 검토하고 예를 들어, HTML 태그들, 콘텐츠 후위 식별자들, 콘텐츠 항목들에 내장된 식별자들, 콘텐츠 자체의 분석에 기반하거나, 또는 다른 태그들을 사용하여 소정 유형들의 콘텐츠 항목들을 식별할 수 있다. 예를 들어, <meta> 태그는 3D 환경 또는 3D 오디오 사운드스케이프(soundscape)를 나타내기 위해 HTML 헤더에 포함될 수 있고; <link> 태그는 3D 파비콘(favicon)을 지정할 수 있거나, 추가 속성들은 요소들에 포함할 수 있다(예를 들어, "data-model='<model_Id>'" 속성 또는 "data-environment='<environment_Id>'" 속성은 <img> 요소 또는 <video> 요소와 같은 다양한 요소들에 포함될 수 있거나 "mediaType='<typeID>'" 속성이 <srcset> 요소에 포함될 수 있음).
콘텐츠 항목들에 대한 식별자들이 수신되면, 예를 들어, URL 또는 식별자가 포함된 다른 위치 정보에 기반하여, 이용가능한 경우 로컬 저장장치(예를 들어, 캐시) 또는 원격 데이터 저장소에서 인공 현실 환경(아직 디스플레이되지 않음)으로 프리페치될 수 있다. 인공 현실 환경을 위한 로컬 저장장치에 이러한 콘텐츠 항목들을 갖는 것은 사용자 선택 시에만 검색되는 경우 3D 콘텐츠 항목들 검색으로 인해 발생할 수 있는 지연들을 줄일 수 있다.
일부 구현들에서, 3D 콘텐츠와 연관되지 않은 웹페이지의 이미지들 또는 다른 콘텐츠 항목들은 사용자가 웹페이지를 방문할 때 자동으로 파노라마 또는 3D 이미지로 변환될 수 있다. 일부 구현들에서, 이 변환은 발명의 명칭이 "Image Object Extraction and In-Painting Hidden Surfaces for Modified Viewpoint Rendering"인 미국 특허 출원 번호 15/956,177호에 설명된 것들과 같은 기계 학습 방법을 사용하여 달성되고, 이 특허는 그 전체가 참조로 본원에 포함된다. 프로세스(500)는 이러한 생성된 3D 콘텐츠 항목들을 인공 현실 환경을 위한 로컬 저장장치에 저장할 수 있고 그것들이 생성된 대응하는 웹 콘텐츠 항목과 연관시킬 수 있다. 일부 구현들에서, 변환은 예를 들어 브라우저에서 이미지를 잡아 끌어내는 제스처와 같은 특정 제스처로 사용자가 콘텐츠 항목을 선택하는 것에 응답하여 수행될 수 있다(블록 506 참조).
블록(506)에서, 프로세스(500)는 브라우저에 디스플레이되는 선택된 콘텐츠 항목에 대응하는 사용자 제스처를 식별할 수 있다. 일부 구현들에서, 제스처는 제어기를 사용하여 이루어질 수 있다. 다른 구현들에서, 예를 들어 시스템이 카메라들 및/또는 웨어러블 디바이스들을 사용하여 사용자의 손들의 위치 및 자세를 추적하는 경우 제스처는 사용자의 손들로 이루어질 수 있다. 일부 구현들에서, 제스처는 한 손 또는 양 손 또는 제어기들이 브라우저에 도달하고 콘텐츠 항목의 일부를 "잡는(grabbing)" 것으로 이루어질 수 있다. 다양한 구현들에서, "잡기(grab)" 제스처는 제어기가 콘텐츠 항목에 근접할 때 제어기 상의 특정 버튼을 누르거나, 엄지와 하나 이상의 손가락을 모으거나, 닫힌 손이나 주먹을 만드는 것일 수 있다. 본원의 예들에서 잡기 제스처가 사용되지만, 각각의 경우에, 손가락 탭, 핀치(pinch), 포인트 등과 같은 다른 제스처들이 또한 사용될 수 있다. 일 예에서, 사용자는 콘텐츠 항목의 하나 이상의 모서리들 또는 에지들을 잡음으로써 콘텐츠 항목을 선택할 수 있다. 일부 구현들에서, 제스처는 예를 들어, 사용자가 콘텐츠 항목의 일부를 잡고 브라우저로부터 멀리 끌어내는 것과 같은 끌어냄을 또한 포함할 수 있다. 이것은 웹 페이지에서 콘텐츠 항목을 끌어내는 경험을 제공할 수 있다.
일부 구현들에서, 브라우저는 디스플레이된 콘텐츠 항목 위치들의 표시들을 인공 현실 환경에 제공하여, 인공 현실 환경이 사용자 제스처가 어느 콘텐츠 항목에 대응하는지를 결정하게 할 수 있다. 대안적으로, 인공 현실 환경은 브라우저에 제스처 위치 정보를 제공할 수 있고, 브라우저는 이를 사용하여 디스플레이된 콘텐츠 항목과 상관시키고 대응하는 콘텐츠 항목 식별자로 응답할 수 있다.
일부 구현들에서, 브라우저 외부에서 조작하기 위해 콘텐츠 항목을 선택하는 것은 브라우저 외부의 버전이 닫힐 때까지 브라우저가 콘텐츠 항목을 "숨기(hide)"거나 그렇지 않으면 콘텐츠 항목을 디스플레이하지 않거나, 자리표시자 콘텐츠 항목을 디스플레이하게 할 수 있다. 이것은 잡기 위치 또는 어느 콘텐츠 항목이 선택되었는지를 나타내는 메시지를 브라우저에 전송하고, 콘텐츠 항목을 숨기거나 그렇지 않으면 자리표시자로 교체하도록 브라우저의 프로세스를 트리거함으로써 달성될 수 있다.
블록(508)에서, 프로세스(500)는 블록(506)에서 선택된 콘텐츠 항목이 A) 3D 콘텐츠와 연관되지 않은지, B) 환경 콘텐츠(예를 들어, 파노라마 이미지, 파노라마 비디오, 3D 이미지, 또는 새로운 인공 현실 콘텐츠)와 연관되는지, 또는 C) 하나 이상의 3D 모델(들)과 연관되는지를 결정할 수 있다. 3D 콘텐츠와 연관이 있는 경우, 콘텐츠 항목은 예를 들어, HTML 태그들, 콘텐츠 후위 식별자들, 콘텐츠 항목들에 내장된 식별자들, 콘텐츠 자체의 분석에 기반하여, 또는 다른 태그들을 사용하여 블록(504)과 관련하여 위에서 설명된 바와 같이 식별될 수 있다. 선택된 콘텐츠 항목이 3D 콘텐츠와 연관되지 않으면, 프로세스(500)는 분기 "A)"를 서브프로세스(5A)(도 5 계속-1(도 5a)에 도시된 525)로 취할 수 있다. 일부 구현들에서, 선택된 콘텐츠 항목이 3D 콘텐츠와 연관되지 않을 때, 프로세스(500)는 선택된 콘텐츠 항목에 대한 환경 콘텐츠(예를 들어, 3D 이미지)를 생성할 수 있다. 이것은 선택된 콘텐츠 항목이 이제 환경 콘텐츠와 연결되게 한다. 선택된 콘텐츠 항목이 이전에 또는 이제 환경 콘텐츠와 연관되었다면, 프로세스(500)는 분기 "B)"를 서브프로세스(5B)(도 5 계속-2(도 5b)에 도시된 550)로 취할 수 있다. 선택된 콘텐츠 항목이 하나 이상의 3D 모델(들)과 연관되는 경우, 프로세스(500)는 분기 "C)"를 서브프로세스(5C)(도 5 계속-3(도 5c)에 도시된 575)로 취할 수 있다.
선택된 콘텐츠 항목이 3D 콘텐츠와 연관되지 않을 때, 프로세스(500)는 블록(508)에서 프로세스(525)의 블록(528)으로 분기 "A)"를 취했다. 블록(528)에서, 프로세스(525)는 선택된 콘텐츠 항목을 획득하고 그것의 2D 버전을 생성할 수 있다. 콘텐츠를 프리페치하기 위해 블록(504)이 수행된 경우들에서, 인공 현실 환경을 위한 로컬 저장장치에 2D 버전이 이미 생성될 수 있고, 프로세스(525)는 해당 로컬 저장장치로부터 2D 버전을 획득할 수 있다. 다른 구현들에서, 프로세스(525)는 프로세스(525)가 원격 저장장치로부터 검색할 수 있는 선택된 콘텐츠 항목에 대한, URL 또는 원격 저장 위치를 나타내는 다른 주소를 포함하는 식별자를 가질 수 있다. 일부 구현들에서, 브라우저는 예를 들어 IPC 통신을 통해 선택된 콘텐츠 항목을 인공 현실 환경에 공급할 수 있다. 일부 구현들에서, 프로세스(525)는 브라우저 외부에서, 프로세스(525)가 이미지를 디스플레이할 수 있는 2D 패널을 생성할 수 있다. 선택된 콘텐츠 항목의 2D 버전은 인공 현실 환경에서 디스플레이될 수 있다. 예를 들어, 2D 버전은 블록(506)에서 식별된 제스처와 관련하여 디스플레이될 수 있다. 제스처가 잡아 끌어내는 일부 구현들에서, 이는 2D 버전이 브라우저에서 끌어내지는 것처럼 나타날 수 있다.
블록(530)에서, 프로세스(525)는 선택된 콘텐츠 항목의 2D 버전의 사용자 조작들을 모니터링할 수 있다. 예를 들어, 사용자는 크기 조절, 회전 또는 재배치, 변형 또는 달리 콘텐츠 항목의 2D 버전과 상호작용할 수 있다. 사용자는 또한 콘텐츠 항목의 2D 버전을 "해제(release)"하거나 그렇지 않으면 종료할 수 있다. 일부 구현들에서, 이것은 사용자의 손을 벌리거나 제어기의 버튼을 놓는 것과 같은 특정 제스처를 수행함으로써 달성될 수 있다. 다른 구현들에서, 2D 버전은 종료 버튼과 같은 가상 제어와 연관될 수 있고, 종료 버튼의 활성화는 선택된 콘텐츠 항목의 해제를 의미할 수 있다.
블록(532)에서, 프로세스(525)가 선택된 콘텐츠 항목의 해제를 식별하지 않은 경우, 프로세스(525)는 해제가 식별될 때까지 블록(530)으로 돌아갈 수 있다. 일단 해제가 식별되면, 프로세스(525)는 블록(534)으로 계속될 수 있다.
블록(534)에서, 선택된 콘텐츠 항목이 해제되는 것에 응답하여, 프로세스(525)는 인공 현실 환경에서 선택된 콘텐츠 항목의 2D 버전의 디스플레이를 제거할 수 있다. 이것은 인공 현실 환경의 로컬 저장장치에서 삭제하거나 숨겨진 객체로 설정하는 것을 포함할 수 있다. 일부 구현들에서, 선택된 콘텐츠 항목을 해제하는 것은 프로세스(525)가 2D 버전을 숨기기 전에 2D 버전이 브라우저로, 예를 들어 끌어내진 브라우저의 위치로 스냅 백되거나 플라이 백되는 것으로 보이게 할 수 있다. 브라우저에서 선택된 콘텐츠 항목이 숨겨지거나 자리표시자 콘텐츠 항목으로 대체된 일부 구현들에서, 프로세스(525)는 사용자가 선택된 콘텐츠 항목을 해제할 때 또는 브라우저로 플라이 백되는 2D 버전의 효과를 디스플레이한 후에 브라우저에 선택된 콘텐츠 항목을 다시 디스플레이하도록 브라우저에 신호할 수 있다. 이어서, 프로세스(525)(및 프로세스(500))가 종료될 수 있다.
블록(508)으로부터, 선택된 콘텐츠 항목이 환경 콘텐츠와 연관될 때, 프로세스(500)는 블록(508)에서 프로세스(550)의 블록(552)으로 분기 "B)"를 취한다. 블록(552)에서, 프로세스(550)는 선택된 콘텐츠 항목에 대응하는 환경 콘텐츠를 획득하고 환경 콘텐츠에 대한 부분 뷰를 생성할 수 있다. 콘텐츠를 프리페치하기 위해 블록(504)이 수행된 경우들에서, 환경 콘텐츠는 이미 인공 현실 환경에 대한 로컬 저장장치에 있을 수 있고, 프로세스(550)는 해당 로컬 저장장치에서 환경 콘텐츠를 획득할 수 있다. 다른 구현들에서, 프로세스(550)는 URL 또는 프로세스(550)가 원격 저장장치에서 환경 콘텐츠를 검색하는 데 사용할 수 있는 환경 콘텐츠에 대한 다른 주소를 포함하는 식별자를 가질 수 있다. 일부 구현들에서, 브라우저는 예를 들어 IPC 통신을 통해 환경 콘텐츠를 공급할 수 있다. 일부 구현들에서, 프로세스(550)는 브라우저 외부에, 환경 콘텐츠에 대한 부분 뷰를 2D 패널 또는 윤곽진(contoured) 2D 형상(예를 들어, 타원체 또는 원통의 섹션)으로서 생성할 수 있다. 다양한 구현들에서, 환경 콘텐츠에 대한 부분 뷰는 2D 패널 또는 윤곽진 2D 형상에 환경의 일부에 대한 정적 이미지로 도시되거나 부분 뷰가 이동됨에 따라 환경의 뷰들을 변경하는 동적 "창(window)"일 수 있다. 예를 들어, 부분 뷰는 부분 뷰의 포지션에 의해 지정된 카메라 각도로 환경의 가상 카메라에서 환경으로 이미지를 도시할 수 있다. 생성되면, 프로세스(550)가 인공 현실 환경에서 부분 뷰를 디스플레이할 수 있다. 예를 들어, 부분 뷰는 블록(506)에서 식별된 제스처와 관련하여 디스플레이될 수 있다. 제스처가 잡아당기기인 일부 구현들에서, 이것은 부분 뷰가 브라우저에서 끌어내어지는 것처럼 보일 수 있다. 이 시점에서 사용자는 브라우저를 볼 수 있고 브라우저 외부에서 부분 뷰를 조작할 수 있다.
블록(554)에서, 프로세스(550)는 환경 콘텐츠로의 부분 뷰의 사용자 조작들을 모니터링할 수 있다. 예를 들어, 사용자는 부분 뷰를 크기 조절하고, 회전시키거나 또는 재배치하고, 변형하거나, 또는 그 외 그것과 상호작용할 수 있을 것이다. 몇몇 구현들에서, 사용자는 부분 뷰의 에지들 또는 코너들을 잡으며 에지들 또는 코너들의 포지션을 변경하는, 예컨대, 그것들을 떼어내거나 또는 그것들을 함께 밀고, 그것들을 회전시키는 등에 의해 부분 뷰를 조작할 수 있다. 사용자는 또한 부분 뷰를 "해제"하거나 또는 그 외 그것을 종료할 수 있다. 몇몇 구현들에서, 이것은 사용자의 손을 벌리거나 또는 제어기 상에 버튼을 놓는 것과 같은, 특정한 제스처를 함으로써 성취될 수 있다. 다른 구현들에서, 부분 뷰는 종료 버튼과 같은, 가상 제어와 연관될 수 있으며, 그것의 활성화는 부분 뷰의 해제를 나타낼 수 있다.
블록(556)에서, 프로세스(550)가 부분 뷰의 해제를 식별하지 않은 경우, 프로세스(550)는 블록(558)을 계속할 수 있다. 일단 해제가 식별되면, 프로세스(550)는 블록(566)을 계속할 수 있다. 블록(558)에서, 프로세스(550)는 부분 뷰의 조작들이 임계치를 초과하게 하는지를 결정할 수 있다. 프로세스(550)는 부분 뷰의 총 크기, 부분 뷰와 사용자의 얼굴 간의 거리(거리가 최소 거리 아래로 내려갔다는 점에서 임계치를 "초과"할 수 있는), 또는 부분 뷰가 차지하는 사용자의 시야의 양과 같은 이러한 결정을 위해 다양한 임계치들을 사용할 수 있다. 몇몇 구현들에서, 임계치는 부분 뷰가 2피트보다 크거나(가상 공간에서) 또는 사용자의 얼굴의 10인치 내에 있다면 임계치가 초과된다고 결정하는 것과 같은, 그것들 간의 대안 또는 이것들의 조합일 수 있다. 임계치의 예들은 부분 뷰가 대각선에 걸쳐 18, 24, 또는 36인치보다 크고; 사용자의 얼굴의 6, 10, 또는 18인치 내에 있거나; 또는 사용자의 시야의 30, 50, 또는 75퍼센트 이상을 차지하는 경우를 포함한다. 다른 임계 값들이 또한 사용될 수 있다. 부분 뷰가 임계치를 초과한다면, 프로세스(550)는 블록(560)으로 진행할 수 있다. 그렇지 않다면, 프로세스(550)는 그것이 계속해서 부분 뷰의 사용자 조작들을 모니터링하는 블록(554)으로 돌아갈 수 있다.
블록(560)에서, 부분 뷰가 임계치를 초과하는 것에 응답하여, 프로세스(550)는 환경 콘텐츠에 기초하여 새로운 인공 현실 환경을 디스플레이할 수 있다. 예를 들어, 환경 콘텐츠가 파노라마 이미지 또는 비디오인 경우에, 프로세스(550)는 전체 파노라마 이미지 또는 비디오가 디스플레이되는 타원체 또는 원통의 중심에 사용자를 두어, 사용자로 하여금 그녀의 응시 방향을 변경함으로써 파노라마 비디오 또는 이미지의 상이한 부분들을 보도록 허용할 수 있다. 또 다른 예에서, 환경 콘텐츠가 3D 이미지 또는 전체 환경, 예컨대 가상 객체들을 포함할 수 있는 가상 면적인 경우에, 프로세스(550)는 현재 환경을 새로운 가상 면적으로 대체하여, 사용자가 예컨대, 3 또는 6의 자유도들에서 새로운 가상 면적을 보도록 허용할 수 있다. 다양한 구현들에서, 새로운 인공 현실 환경은 브라우저를 도시할 수 있거나 또는 브라우저는 이전 인공 현실 환경에 남아있을 수 있다. 몇몇 구현들에서, 블록(552)에서 부분 뷰를 생성하는 대신에, 프로세스(550)는 사용자를 즉시 새로운 인공 현실 환경에 넣음으로써, 예컨대 환경 콘텐츠를 획득한 후 블록(508)에서 바로 블록(560)으로 진행함으로써 시작할 수 있다.
블록(562)에서, 프로세스(550)는 사용자가 새로운 인공 현실 환경을 종료하였는지를 결정할 수 있다. 예를 들어, 사용자는 특정한 제스처를 수행하는 것, 제어부 상에 있는 버튼을 누르는 것, 가상 제어를 활성화하는 것 등에 의해 인공 현실 환경을 종료할 수 있을 것이다. 몇몇 구현들에서, 사용자는 새로운 인공 현실 환경에 있는 동안 부분 뷰를 잡는 제스처를 계속해서 유지할 수 있으며 부분 뷰를 해제함으로써 새로운 인공 현실 환경을 종료할 수 있다. 사용자가 새로운 인공 현실 환경을 종료할 때까지, 프로세스(550)는 블록(562)에서 블록(560)으로 돌아갈 수 있으며, 프로세스(550)는 계속해서 새로운 인공 현실 환경을 디스플레이할 것이다.
일단 사용자가 새로운 인공 현실 환경을 종료하였다면, 프로세스(550)는 그것이 새로운 인공 현실 환경을 디스플레이하는 것을 멈추고 대신에 이전 인공 현실 환경을 디스플레이하는 블록(564)으로 진행할 수 있다. 몇몇 구현들에서, 새로운 인공 현실 환경을 종료할 때, 환경 콘텐츠로부의 부분 뷰는 다시 나타나서(예컨대, 사용자의 손들 또는 하나 이상의 제어기들 중 하나 또는 양쪽 모두에 관하여 배치된), 사용자가 부분 뷰를 추가로 제어하고 조작하도록 허용할 수 있다. 프로세스(550)는 블록(554)으로 돌아감으로써 부분 뷰의 조작들을 추가로 모니터링할 수 있다. 대안적인 구현에서, 파선(568)으로 도시된 바와 같이, 블록(554)으로 돌아가는 대신에, 새로운 인공 현실 환경을 종료하는 것은 또한 부분 뷰를 해제하는 것으로 해석될 수 있으며, 따라서 프로세스(550)는 블록(566)을 계속한다.
블록(556) 또는 블록(564)으로부터 들어간 블록(566)에서, 프로세스(550)는 인공 현실 환경으로부터 부분 뷰의 디스플레이를 제거할 수 있다. 이것은 인공 현실 환경에 대한 로컬 저장장치로부터 부분 뷰를 삭제하는 것 또는 그것을 숨김 객체로 설정하는 것을 포함할 수 있다. 몇몇 구현들에서, 인공 현실 환경으로부터 부분 뷰를 제거하기 전에, 프로세스(550)는 부분 뷰가 브라우저로, 예컨대 그것이 끌어내진 브라우저에서의 위치로 스냅 백하거나 또는 플라이 백하는 것처럼 보이게 할 수 있다. 브라우저에서의 선택된 콘텐츠 항목이 숨겨지거나 또는 자리표시자 콘텐츠 항목으로 대체된 몇몇 구현들에서, 프로세스(550)는 사용자가 부분 뷰를 해제할 때 또는 브라우저로 플라이 백한 부분 뷰의 결과를 디스플레이한 후 선택된 콘텐츠 항목을 다시 디스플레이하도록 브라우저에 신호할 수 있다. 프로세스(550)(및 프로세스(500))는 그 후 종료될 수 있다.
블록(508)으로부터, 선택된 콘텐츠 항목이 하나 이상의 3D 모델(들)과 연관될 때, 프로세스(500)는 프로세스(575)의 블록(508)으로부터 블록(578)까지의 분기 "C)"를 취하였다. 블록(578)에서, 프로세스(575)는 선택된 콘텐츠 항목에 대응하는 3D 모델(들) 및 인공 현실 환경에 대한 것을 획득할 수 있다. 블록(504)이 콘텐츠를 프리페치하기 위해 수행된 경우들에서, 3D 모델(들)은 인공 현실 환경을 위한 로컬 저장장치에 이미 있을 수 있으며, 프로세스(575)는 로컬 저장장치로로부터 그것들을 획득할 수 있다. 다른 구현들에서, 프로세스(575)는 3D 모델(들)에 대한 URL 또는 다른 어드레스를 포함한, 식별자를 가질 수 있으며, 이것은 프로세스(575)가 원격 저장장치로부터 검색할 수 있다. 몇몇 구현들에서, 브라우저는 예컨대, IPC 통신을 통해 3D 모델(들)을 공급할 수 있다. 일단 획득되면, 프로세스(575)는 인공 현실 환경으로 3D 모델(들)을 로딩할 수 있다.
프로세스(575)의 나머지는 하나 이상의 모델들의 각각에 대해 별도로 또는 모델들에 대해 그룹으로서 수행될 수 있다. 블록(580)에서, 프로세스(575)는 3D 모델들 중 하나의 사용자 조작들을 모니터링할 수 있다. 예를 들어, 사용자는 연관된 제어들을 크기 조절하고, 회전시키거나 또는 재배치하고, 변형시키거나, 활성화하거나, 또는 그 외 3D 모델에 대해 이용 가능한 임의의 상호작용을 수행할 수 있을 것이다. 사용자는 3D 모델을 "해제"하거나 또는 그 외 종료할 수 있다. 몇몇 구현들에서, 이것은 사용자의 손을 벌리는 것 또는 제어기 상에 버튼을 놓는 것과 같은, 특정한 제스처를 함으로써 성취될 수 있다. 다른 구현들에서, 3D 모델은 종료 버튼과 같은, 가상 제어부와 연관될 수 있으며, 그것의 활성화는 3D 모델의 해제를 나타낼 수 있다.
블록(582)에서, 프로세스(575)가 3D 모델의 해제를 식별하지 않았다면, 프로세스(575)는 해제들이 식별될 때까지 블록(580)으로 돌아갈 수 있다. 일단 해제들이 식별되면, 프로세스(575)는 블록(584)을 계속할 수 있다.
블록(584)에서, 3D 모델이 해제되는 것에 응답하여, 프로세스(575)는 인공 현실 환경으로부터 3D 모델의 디스플레이를 제거할 수 있다. 이것은 인공 현실 환경에 대한 로컬 저장장치로부터 그것을 삭제하는 것 또는 그것을 숨김 객체로 설정하는 것을 포함할 수 있다. 몇몇 구현들에서, 3D 모델을 해제하는 것은 프로세스(575)가 3D 모델을 숨기기 전에, 브라우저로, 예컨대, 그것이 끌어내진 브라우저에서의 위치로 스냅 백하거나 또는 플라이 백하게 할 수 있다. 브라우저에서의 선택된 콘텐츠 항목이 숨겨지거나 또는 자리표시자 콘텐츠 항목으로 대체되는 몇몇 구현들에서, 프로세스(575)는 사용자가 3D 모델을 해제할 때 또는 브라우저로 플라이 백한 3D 모델의 결과를 디스플레이한 후 브라우저에서 선택된 콘텐츠 항목(또는 상기 모델과 연관된 선택된 콘텐츠 항목의 부분)을 다시 디스플레이하도록 브라우저에 신호할 수 있다. 프로세스(575)(및 프로세스(500))는 그 후 종료될 수 있다.
도 6은 인공 현실 환경에서 웹-기반 콘텐츠 항목을 제공하기 위한 본 기술의 몇몇 구현들에서 사용된 프로세스를 실행하는 구성요소들의 예(600)를 예시한 블록도이다. 예(600)는 인공 현실(XR) 환경(602); XR 환경(602)에 디스플레이된 이미지(612)를 가진, 웹 브라우저(604); 제스처 모니터(606); 선택 가능한 콘텐츠 저장소(608); 콘텐츠 서버 또는 데이터베이스(DB)(610); 및 콘텐츠의 상호작용 3D 버전(614)을 포함한다.
예(600)는 브라우저(604)가 XR 환경(602)에 디스플레이되는 것으로 시작한다. 사용자는 이미지(612)를 포함하는 디스플레이된 웹사이트를 보고 그것과 상호작용하도록 브라우저를 동작시킬 수 있다. 웹사이트가 로딩될 때, 브라우저(604)는, 단계(62)에서, 웹사이트에, 이미지(612)를 포함하는, 콘텐츠 항목들의 리스트를 나타내는 IPC 메시지를 전송한다. IPC 메시지에 응답하여, 선택 가능한 콘텐츠 저장소(608)는 콘텐츠 항목들의 리스트를 연관된 태그들에 기초한 유형들로 분해하며, 3D 환경에서의 포함을 위해 콘텐츠 항목들 중 적어도 일부에 대응하는 3D 콘텐츠를 검색하고 저장한다(예컨대, 단계들(654 및 656에서). 예를 들어, 그 외 3D 콘텐츠와 연관되지 않은 웹사이트로부터의 이미지들은 브라우저 또는 원격 소스로부터 검색되며 2D 버전들(예컨대, 2D 패널들)로 또는 3D 이미지들로 변환되고; 여기에서 콘텐츠 항목은 환경 콘텐츠(예컨대, 파노라마 이미지들 또는 비디오들, 3D 이미지들, 또는 환경들)와 연관되며, 연관된 환경 콘텐츠가 검색될 수 있거나; 또는 콘텐츠 항목은 3D 모델과 연관되며, 연관된 3D 모델이 검색될 수 있다.
예(600)는 제스처 모니터(606)가 브라우저에 관하여 사용자 제스처들을 모니터링하는 것을 계속할 수 있다. 제스처가 단계(62)로부터 IPC 메시지에 나열된(예컨대, 브라우저(604)에 의해 제공된 콘텐츠 항목 위치 데이터에 기초하여, 결정된 - 도시되지 않음) 콘텐츠 항목들 중 하나를 선택할 때, 예(600)는 단계(658)에서, 선택 가능한 콘텐츠 저장소(608)로부터, 브라우저 밖에 있는 3D 환경에서 디스플레이될 수 있는 대응하는 콘텐츠를 선택할 수 있다. 이 경우에, 사용자는 브라우저 내로부터 이미지(612)를 "잡고", "끌어내는" 제스처를 하였다. 이에 응답하여, 선택 가능한 콘텐츠 저장소(608)는 이미지(612)에 대응하는 콘텐츠(614)의 상호작용 3D 버전을, 끌어내는 제스처에 관하여 그것을 디스플레이하는, XR 환경(602)으로 제공할 수 있다. 따라서, 사용자에게 그것은 그녀가 브라우저 밖으로 콘텐츠를 끌어내는 것처럼 보인다. 제스처 모니터(606)는 또한 이미지 선택의 표시를 브라우저(604)로 제공하여, 사용자가 콘텐츠(614)의 상호작용 3D 버전을 해제할 때까지 그것이 이미지(512)를 빈 박스로 대체하게 할 수 있다. 그때, XR 환경은 콘텐츠(614)의 상호작용 3D 버전(먼저 콘텐츠(614)의 상호작용 3D 버전이 브라우저(604)로 스냅 백하는 것과 같은 효과를 보여주는)을 숨기며 빈 박스를 원래 이미지(612)로 대체하도록 브라우저(604)에 시그널링할 수 있다.
도 7a 내지 도 7c는 3D 콘텐츠와 이전에 연관되지 않았던 웹-기반 콘텐츠와의 예시적인 상호작용을 예시한 개념도들이다. 예를 들어, 도 7a는 사용자가 인공 현실 환경에 디스플레이된 브라우저(706)에 손을 넣고 이미지(704)의 에지 가까이에서 꽉 잡음으로써 브라우저(706)에 의해 디스플레이된 이미지(704)를 선택하는 제스처(702)를 예시한다. 도 7b는 사용자가 이미지 밖으로 이미지를 "끌어내는" 제스처를 예시한다. 인공 현실 환경은, 이러한 제스처에 응답하여, 이미지(704)를 보여주는 2D 패널(732)을 생성하며, 상기 2D 패널은 사용자의 손에 부착된다. 인공 현실 환경은 또한 브라우저(706)에서의 이미지(704)를 빈 박스(734)로 대체하기 위해 브라우저(706)로 메시지를 보낸다. 도 7c는 사용자가 2D 패널(734)의 또 다른 에지를 잡고 2D 패널(734)의 반대 에지를 홀딩하는 제스처(702)로부터 그것을 끌어내기 위해 또 다른 제스처(762)를 수행하여, 인공 현실 환경이 2D 패널(734)을 확장하게 하는 것을 예시한다.
도 8a 내지 도 8d는 환경 콘텐츠(이 경우에 파노라마 이미지)를 포함한 3D 콘텐츠와 연관되는 웹-기반 콘텐츠 항목과의 예시적인 상호작용을 예시한 개념도들이다. 도 8a는 사용자가 인공 현실 환경에 디스플레이된 브라우저(806)에 손을 뻗고 이미지(804)의 반대 에지들을 잡음으로써 브라우저(806)에 의해 디스플레이된 이미지(804)를 선택하는 양-손 제스처(802)를 예시한다. 도 8b는 사용자가 제스처(802)를 이용해서 브라우저(806)로부터 이미지(804)를 끌어내는 것에 응답하여 생성되는, 이미지(804)와 연관된 환경 콘텐츠(832)로 사용자가 부분 뷰를 홀딩하는 것을 예시한다. 사용자는 부분 뷰의 반대 에지들을 떼어내어, 부분 뷰를 환경(832)으로 확대함으로써 연장된 제스처(802)를 가진다. 이때, 환경(832)으로의 부분 뷰는 여전히 사용자로부터 임계 거리 미만으로 떨어져 있다. 이 예에서, 환경(832)으로의 부분 뷰는 파노라마 이미지로의 "창"이며, 따라서, 사용자는 파노라마 이미지의 상이한 부분들을 보기 위해 상이한 방향들로 환경(832)으로의 부분 뷰를 이동시킬 수 있다. 도 8c는 사용자가 계속해서 제스처(802)를 유지하지만, 그녀로의 임계 거리 내에서 환경(832)으로의 부분 뷰를 끌어내어, 환경(832)으로의 부분 뷰가 전체 인공 현실 환경을 포함하기 위해 확대되게 하는(화살표들(862)로 표시된 바와 같이) 포인트를 예시한다. 사용자는 이제 전체 파노라마 이미지가 디스플레이되는 타원체(예컨대, 구체)에 포함된다. 사용자는 제스처(802)를 이동시킬 필요 없이 파노라마 이미지의 상이한 부분들을 보기 위해 3의 자유도들로 그녀의 머리를 이동시킬 수 있다. 도 8d는 사용자가 그녀의 손들을 벌림으로써 제스처(882)를 수행하여, 제스처(802)를 해제하는 포인트를 예시한다. 이것은 인공 현실 환경이 도 8c에서 들어간 환경을 종료하고, 브라우저(806)를 포함한 환경으로 돌아가며, 환경(832)으로의 부분 뷰가 브라우저(806)로 스냅 백하는 효과(동작 라인들(884)로 도시됨)를 디스플레이하게 한다. 브라우저(806)는 그 후 자리표시자 박스(886)를 원래 이미지(804)로 대체할 수 있다.
도 9a-도 9c는 3D 모델을 포함한 3D 콘텐츠와 연관되는 웹-기반 콘텐츠 항목과의 예시적인 상호작용을 예시한 개념도들이다. 도 9a는 예를 들어, 사용자가 인공 현실 환경에 디스플레이된 브라우저(906)로 손을 뻗고 이미지(904)의 부분을 잡음으로써, 브라우저에 의해 디스플레이된 이미지(904)를 선택하는 제스처(902)를 예시한다. 도 9b는 사용자가 제스처(902)를 유지하는 동안 브라우저(906)로부터 이미지(904)를 끌어내는 것에 응답하여 생성된, 이미지(904)와 연관된, 3D 모델(932)을 사용자가 홀딩하는 것을 예시한다. 인공 현실 환경은 또한 브라우저(906)에서의 이미지(904)를 빈 박스(934)로 대체하기 위해 브라우저(906)로 메시지를 보낸다. 사용자는 이제 브라우저(906) 밖에서의, 3D 공간에서 모델(932)을 조작할 수 있으며, 예컨대 제스처(902)를 유지하는 동안 그것을 회전시키거나 또는 이동시키거나 또는 3D 모델(932)과 관련하여 디스플레이된 제어부들(936)을 활성화한다. 도 9c는 사용자가 그녀의 손을 벌림으로써 제스처(962)를 수행하여, 제스처(902)를 해제하는 포인트를 예시한다. 이것은 인공 현실 환경으로 하여금 3D 모델(932)이 브라우저(906)로 플라이 백하고 그 후 숨겨지게 하며 브라우저(906)로 메시지를 보내서, 사용자가 3D 모델(932)을 해제하였음을 나타낸다. 브라우저(906)는 그 후 자리표시자 박스(934)를 원래 이미지(904)로 대체할 수 있다.
본 명세서에서 "구현들"(예컨대, "몇몇 구현들", "다양한 구현들", "일 구현", "구현" 등)에 대한 참조는 구현과 관련하여 설명된 특정한 특징, 구조, 또는 특성이 본 개시의 적어도 하나의 구현에 포함된다는 것을 의미한다. 명세서에서의 다양한 위치들에서의 이들 구절들의 출현은 반드시 모두가 동일한 구현을 나타내는 것이 아니며, 다른 구현들에 대해 상호 배타적인 별개의 또는 대안적인 구현들도 아니다. 게다가, 다른 것들에 의해서가 아닌 몇몇 구현들에 의해 보여질 수 있는 다양한 특징들이 설명된다. 유사하게, 다른 구현들에 대해서가 아닌 몇몇 구현들에 대한 요건들일 수 있는 다양한 요건들이 설명된다.
본원에서 사용된 바와 같이, 임계치 위인 것은 비교 하에서 항목에 대한 값이 특정된 다른 값 위이고, 비교하에 있는 항목이 최대 값을 가진 특정한 특정된 수의 항목들 중에 있거나, 또는 비교하에 있는 항목이 특정된 최상위 퍼센티지 값 내에 있는 값을 가진다는 것을 의미한다. 본원에서 사용된 바와 같이, 임계치 미만인 것은 비교하에 있는 항목에 대한 값이 특정된 다른 값 미만이고, 비교하에 있는 항목이 최소 값을 가진 특정한 특정된 수의 항목들 중에 있거나, 또는 비교하에 있는 항목이 특정된 최하위 퍼센티지 값 내의 값을 갖는다는 것을 의미한다. 본원에서 사용된 바와 같이, 임계치 내에 있는 것은 비교하에 있는 항목에 대한 값이 두 개의 특정된 다른 값들 사이에 있고, 비교하에 있는 항목이 중간-특정된 수의 항목들 중에 있거나, 또는 비교하에 있는 항목이 중간-특정된 퍼센티지 범위 내의 값을 가진다는 것을 의미한다. 높은 또는 중요하지 않은과 같은 상대적인 용어들은, 달리 정의되지 않을 때, 값을 할당하고 상기 값이 어떻게 수립된 임계치에 비교할지를 결정하는 것으로 이해될 수 있다. 예를 들어, 구절 "빠른 연결을 선택하는 것"은 임계치를 초과하는 연결 속도에 대응하는 할당된 값을 가진 연결을 선택하는 것을 의미하는 것으로 이해될 수 있다.
본원에서 사용된 바와 같이, 단어 "또는"은 항목들의 세트의 임의의 가능한 순열을 나타낸다. 예를 들어, 구절 "A, B, 또는 C"는 A, B, C 중 적어도 하나, 또는 A; B; C; A 및 B; A 및 C; B 및 C와 같은 조합; 또는 A 및 A; B, B, 및 C; A, A, B, C, 및 C 등과 같은 다수의 임의의 항목을 가리킨다.
주제는 구조적 특징들 및/또는 방법적 동작들에 특정적인 언어로 설명되었지만, 첨부된 청구항들에서 정의된 주제는 반드시 상기 설명된 특정 특징들 또는 동작들에 제한되는 것은 아니라는 것이 이해될 것이다. 특정 실시예들 및 구현들은 본원에서 예시의 목적들을 위해 설명되었지만, 다양한 수정들이 실시예들 및 구현들의 범위로부터 벗어나지 않고 이루어질 수 있다. 상기 설명된 특정 특징들 및 동작들은 이어지는 청구항들을 구현하는 예시적인 형태들로서 개시된다. 따라서, 실시예들 및 구현들은 첨부된 청구항들에 의한 경우를 제외하고 제한되지 않는다.
상기 주지된 임의의 특허들, 특허 출원들, 및 다른 참조문헌들은 본원에서 참조로서 통합된다. 양상들은, 필요하다면, 추가 구현들을 제공하기 위해 상기 설명된 다양한 참조문헌들의 시스템들, 기능들, 및 개념들을 이용하기 위해 수정될 수 있다. 참조로서 통합된 문서에서의 서술들 또는 주제가 본 출원의 서술들 또는 주제와 충돌한다면, 본 출원은 통제할 것이다.
Claims (20)
- 컴퓨팅 시스템에 의해 실행될 때, 상기 컴퓨팅 시스템이 제 1 인공 현실 환경에서 웹-기반 콘텐츠 항목을 제공하기 위한 동작들을 수행하게 하는 명령들을 저장한 컴퓨터-판독 가능 저장 매체에 있어서,
상기 동작들은:
상기 제 1 인공 현실 환경에서 디스플레이된 브라우저에 있는 상기 웹-기반 콘텐츠 항목에 대응하는 사용자 제스처를 식별하는 것;
상기 웹-기반 콘텐츠 항목이 (a) 3D 콘텐츠와 연관되지 않고, (b) 파노라마 이미지, 파노라마 비디오, 3D 이미지, 또는 제 2 인공 현실 환경을 포함한 환경 콘텐츠와 연관되거나, 또는 (c) 3D 모델과 연관되는지를 결정하는 것; 및
상기 웹-기반 콘텐츠가 상기 환경 콘텐츠와 연관된다고 결정하는 것에 응답하여 -
상기 브라우저를 조작하는 것에서 분리하여 상기 사용자가 상기 제 1 인공 현실 환경에서 조작할 수 있는 상기 환경 콘텐츠로 부분 뷰를 생성하는 것; 및
상기 환경 콘텐츠로의 부분 뷰가 임계치를 초과하게 하는 조작들에 응답하여, 상기 환경 콘텐츠에 기초하여, 새로운 인공 현실 환경이 디스플레이되게 하는 것을 포함하는, 컴퓨터-판독 가능 저장 매체. - 제 1 항에 있어서,
상기 사용자 제스처는 각각의 손이 상기 웹-기반 콘텐츠 항목의 제스처를, 다른 손으로부터의 대향 측에서 수행하는, 양-손 제스처를 포함하는, 컴퓨터-판독 가능 저장 매체. - 제 1 항에 있어서,
상기 사용자 제스처는 상기 브라우저에서 상기 웹-기반 콘텐츠 항목을 선택하고 상기 브라우저로부터 멀리 끌어내는 모션을 포함하는, 컴퓨터-판독 가능 저장 매체. - 제 1 항에 있어서,
상기 사용자 제스처를 식별하는 것에 따라서, 상기 웹-기반 콘텐츠 항목이 상기 브라우저에 디스플레이되지 않으며;
상기 부분 뷰를 해제하기 위한 추가 사용자 제스처에 따라서, 상기 웹-기반 콘텐츠 항목이 상기 브라우저에 다시 나타나는, 컴퓨터-판독 가능 저장 매체. - 제 1 항에 있어서,
상기 웹-기반 콘텐츠 항목은 상기 웹-기반 콘텐츠 항목이 3D 콘텐츠와 연관된다는 표시와 함께 상기 브라우저에 디스플레이되는, 컴퓨터-판독 가능 저장 매체. - 제 5 항에 있어서,
상기 웹-기반 콘텐츠 항목이 3D 콘텐츠와 연관된다는 상기 표시는 상기 사용자가 상기 웹-기반 콘텐츠 항목과 상호작용할 때 디스플레이된, 상기 웹-기반 콘텐츠 항목에 부가된 효과인, 컴퓨터-판독 가능 저장 매체. - 제 1 항에 있어서,
상기 새로운 인공 현실 환경이 디스플레이되게 하는 것은 상기 사용자가 6의 자유도들로 상기 새로운 인공 현실 환경 내에서 이리저리 움직이도록 허용하는, 컴퓨터-판독 가능 저장 매체. - 제 1 항에 있어서,
상기 동작들은 상기 새로운 인공 현실 환경을 종료하기 위해 사용자 입력을 수신하는 것 및, 이에 응답하여, 상기 새로운 인공 현실 환경을 상기 제 1 인공 현실 환경으로 대체하는 것을 더 포함하는, 컴퓨터-판독 가능 저장 매체. - 제 1 항에 있어서,
상기 환경 콘텐츠로의 부분 뷰가 상기 임계치를 초과하게 하는 조작들은 상기 환경 콘텐츠로의 부분 뷰가 크기 임계치를 초과하게 하는 조작들을 포함하는, 컴퓨터-판독 가능 저장 매체. - 제 1 항에 있어서,
상기 환경 콘텐츠로의 부분 뷰가 상기 임계치를 초과하게 하는 조작들은 상기 환경 콘텐츠로의 부분 뷰가 사용자의 시야의 임계 양을 초과하게 하는 조작들을 포함하는, 컴퓨터-판독 가능 저장 매체. - 제 1 항에 있어서,
상기 동작들은:
상기 환경 콘텐츠로의 부분 뷰를 해제하기 위해 사용자 제스처를 식별하는 것;
상기 제 1 인공 현실 환경에서, 상기 부분 뷰가 상기 브라우저를 향해 이동하는 효과를 디스플레이하는 것; 및
상기 환경 콘텐츠로의 부분 뷰가 상기 제 1 인공 현실 환경에 디스플레이되지 않게 하는 것을 더 포함하는, 컴퓨터-판독 가능 저장 매체. - 인공 현실 환경에서 웹-기반 콘텐츠 항목을 제공하기 위한 방법에 있어서,
상기 인공 현실 환경에 디스플레이된 브라우저에 있는 상기 웹-기반 콘텐츠 항목에 대응하는 사용자 제스처를 식별하는 단계;
상기 웹-기반 콘텐츠 항목이 (a) 3D 콘텐츠와 연관되지 않고, (b) 환경 콘텐츠와 연관되거나, 또는 (c) 3D 모델과 연관되는지를 결정하는 단계; 및
상기 웹-기반 콘텐츠 항목이 3D 콘텐츠와 연관되지 않는다고 결정하는 것에 응답하여, 상기 브라우저 밖에서 상기 웹-기반 콘텐츠 항목의 2D 버전을 생성하는 단계로서, 상기 사용자는 상기 브라우저를 조작하는 것에서 분리하여 상기 인공 현실 환경에서 상기 웹-기반 콘텐츠 항목의 2D 버전을 조작할 수 있는, 상기 웹-기반 콘텐츠 항목의 2D 버전을 생성하는 단계를 포함하는, 웹-기반 콘텐츠 항목을 제공하기 위한 방법. - 제 12 항에 있어서,
상기 웹-기반 콘텐츠 항목의 2D 버전에 관하여 상기 사용자가 수행할 수 있는 조작들은 상기 웹-기반 콘텐츠 항목의 2D 버전을 6의 자유도들로 이동시키는 것, 크기 조절하는 것(resizing), 및 워핑(warping)하는 것을 포함하는, 웹-기반 콘텐츠 항목을 제공하기 위한 방법. - 제 12 항에 있어서,
상기 웹-기반 콘텐츠를 3D 이미지로 변환하는 단계를 더 포함하는, 웹-기반 콘텐츠 항목을 제공하기 위한 방법. - 제 12 항에 있어서,
상기 웹-기반 콘텐츠 항목의 2D 버전을 해제하기 위해 사용자 제스처를 식별하는 단계;
상기 웹-기반 콘텐츠 항목의 2D 버전이 상기 브라우저를 향해 이동하는 효과를, 상기 인공 현실 환경에 디스플레이하는 단계; 및
상기 웹-기반 콘텐츠 항목의 2D 버전이 상기 인공 현실 환경에 디스플레이되지 않게 하는 단계를 포함하며,
상기 사용자 제스처를 식별하는 것에 따라서, 상기 웹-기반 콘텐츠 항목은 상기 브라우저에 디스플레이되지 않으며;
상기 웹-기반 콘텐츠 항목의 2D 버전을 해제하기 위한 상기 사용자 제스처에 따라서, 상기 웹-기반 콘텐츠 항목이 상기 브라우저에 다시 나타나는, 웹-기반 콘텐츠 항목을 제공하기 위한 방법. - 인공 현실 환경에서 웹-기반 콘텐츠 항목을 제공하기 위한 컴퓨팅 시스템에 있어서,
하나 이상의 프로세서들; 및
상기 하나 이상의 프로세서들에 의해 실행될 때, 상기 컴퓨팅 시스템이 동작들을 수행하게 하는 명령들을 저장하는 메모리로서, 상기 동작들은:
상기 인공 현실 환경에 디스플레이된 브라우저에 있는 상기 웹-기반 콘텐츠에 대응하는 사용자 제스처를 식별하는 것;
상기 웹-기반 콘텐츠 항목이 3D 콘텐츠와 연관되는지를 결정하는 것; 및
상기 웹-기반 콘텐츠 항목이 3D 모델과 연관된다고 결정하는 것에 응답하여, 상기 3D 모델을 상기 인공 현실 환경에 부가하는 것으로서, 상기 사용자는 상기 브라우저를 조작하는 것에서 분리하여 상기 인공 현실 환경에서 상기 3D 모델을 조작할 수 있는, 상기 3D 모델을 부가하는 것을 포함하는, 상기 메모리를 포함하는, 컴퓨팅 시스템. - 제 16 항에 있어서,
상기 동작들은, 상기 웹-기반 콘텐츠 항목을 포함한 웹사이트가 상기 브라우저에 의해 로딩되는 것에 응답하여, 상기 웹-기반 콘텐츠 항목과 연관된 3D 모델을 로컬 저장장치에 버퍼링하거나 또는 캐싱하는 것을 더 포함하는, 컴퓨팅 시스템. - 제 16 항에 있어서,
상기 사용자 제스처는 상기 브라우저에서 상기 웹-기반 콘텐츠 항목을 선택하고 상기 브라우저로부터 멀리 끌어내는 모션을 포함하는, 컴퓨팅 시스템. - 제 16 항에 있어서,
상기 동작들은 상기 3D 모델을 종료하기 위해 사용자 입력을 수신하는 것, 및 이에 응답하여, 상기 3D 모델이 상기 인공 현실 환경에 디스플레이되지 않게 하는 것을 더 포함하는, 컴퓨팅 시스템. - 제 19 항에 있어서,
상기 동작들은 상기 3D 모델을 종료하기 위한 상기 사용자 입력에 응답하여, 상기 3D 모델이 상기 브라우저를 향해 이동하는 효과를 상기 인공 현실 환경에 디스플레이하는 것을 더 포함하는, 컴퓨팅 시스템.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/661,945 | 2019-10-23 | ||
US16/661,945 US11086476B2 (en) | 2019-10-23 | 2019-10-23 | 3D interactions with web content |
PCT/US2020/052976 WO2021080733A1 (en) | 2019-10-23 | 2020-09-27 | 3d interactions with web content |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20220079684A true KR20220079684A (ko) | 2022-06-13 |
Family
ID=72812041
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020227017084A KR20220079684A (ko) | 2019-10-23 | 2020-09-27 | 웹 콘텐츠와 3d 상호작용들 |
Country Status (6)
Country | Link |
---|---|
US (3) | US11086476B2 (ko) |
EP (1) | EP4049115A1 (ko) |
JP (1) | JP2022552927A (ko) |
KR (1) | KR20220079684A (ko) |
CN (1) | CN114245888A (ko) |
WO (1) | WO2021080733A1 (ko) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10600245B1 (en) * | 2014-05-28 | 2020-03-24 | Lucasfilm Entertainment Company Ltd. | Navigating a virtual environment of a media content item |
US11184574B2 (en) | 2017-07-17 | 2021-11-23 | Facebook, Inc. | Representing real-world objects with a virtual reality environment |
JP7302037B2 (ja) * | 2019-06-19 | 2023-07-03 | エルジー エレクトロニクス インコーポレイティド | 画像コーディングにおいて変換カーネルセットを表す情報のシグナリング |
US11086476B2 (en) * | 2019-10-23 | 2021-08-10 | Facebook Technologies, Llc | 3D interactions with web content |
US11475639B2 (en) | 2020-01-03 | 2022-10-18 | Meta Platforms Technologies, Llc | Self presence in artificial reality |
US11295503B1 (en) | 2021-06-28 | 2022-04-05 | Facebook Technologies, Llc | Interactive avatars in artificial reality |
US12096112B2 (en) * | 2021-07-29 | 2024-09-17 | Meta Platforms Technologies, Llc | User interface to select field of view of a camera in a smart glass |
US11836205B2 (en) * | 2022-04-20 | 2023-12-05 | Meta Platforms Technologies, Llc | Artificial reality browser configured to trigger an immersive experience |
US11755180B1 (en) | 2022-06-22 | 2023-09-12 | Meta Platforms Technologies, Llc | Browser enabled switching between virtual worlds in artificial reality |
US20240061545A1 (en) * | 2022-08-18 | 2024-02-22 | Meta Platforms Technologies, Llc | URL Access to Assets within an Artificial Reality Universe on Both 2D and Artificial Reality Interfaces |
US12097427B1 (en) | 2022-08-26 | 2024-09-24 | Meta Platforms Technologies, Llc | Alternate avatar controls |
Family Cites Families (136)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6842175B1 (en) * | 1999-04-22 | 2005-01-11 | Fraunhofer Usa, Inc. | Tools for interacting with virtual environments |
US7701439B2 (en) * | 2006-07-13 | 2010-04-20 | Northrop Grumman Corporation | Gesture recognition simulation system and method |
KR100783552B1 (ko) * | 2006-10-11 | 2007-12-07 | 삼성전자주식회사 | 휴대 단말기의 입력 제어 방법 및 장치 |
US9477368B1 (en) * | 2009-03-31 | 2016-10-25 | Google Inc. | System and method of indicating the distance or the surface of an image of a geographical object |
US20100306716A1 (en) * | 2009-05-29 | 2010-12-02 | Microsoft Corporation | Extending standard gestures |
US9981193B2 (en) * | 2009-10-27 | 2018-05-29 | Harmonix Music Systems, Inc. | Movement based recognition and evaluation |
US8593402B2 (en) * | 2010-04-30 | 2013-11-26 | Verizon Patent And Licensing Inc. | Spatial-input-based cursor projection systems and methods |
FR2960986A1 (fr) * | 2010-06-04 | 2011-12-09 | Thomson Licensing | Procede de selection d’un objet dans un environnement virtuel |
US9134800B2 (en) * | 2010-07-20 | 2015-09-15 | Panasonic Intellectual Property Corporation Of America | Gesture input device and gesture input method |
US9213890B2 (en) * | 2010-09-17 | 2015-12-15 | Sony Corporation | Gesture recognition system for TV control |
US8497838B2 (en) * | 2011-02-16 | 2013-07-30 | Microsoft Corporation | Push actuation of interface controls |
US8811719B2 (en) * | 2011-04-29 | 2014-08-19 | Microsoft Corporation | Inferring spatial object descriptions from spatial gestures |
JP2012243007A (ja) * | 2011-05-18 | 2012-12-10 | Toshiba Corp | 映像表示装置及びそれを用いた映像領域選択方法 |
US11048333B2 (en) * | 2011-06-23 | 2021-06-29 | Intel Corporation | System and method for close-range movement tracking |
US9117274B2 (en) * | 2011-08-01 | 2015-08-25 | Fuji Xerox Co., Ltd. | System and method for interactive markerless paper documents in 3D space with mobile cameras and projectors |
US9292089B1 (en) * | 2011-08-24 | 2016-03-22 | Amazon Technologies, Inc. | Gestural object selection |
US8947351B1 (en) * | 2011-09-27 | 2015-02-03 | Amazon Technologies, Inc. | Point of view determinations for finger tracking |
JP5581292B2 (ja) * | 2011-09-30 | 2014-08-27 | 楽天株式会社 | 検索装置、検索方法、記録媒体、ならびに、プログラム |
US20130125066A1 (en) * | 2011-11-14 | 2013-05-16 | Microsoft Corporation | Adaptive Area Cursor |
EP2602703B1 (en) * | 2011-12-09 | 2018-02-07 | LG Electronics Inc. -1- | Mobile terminal and controlling method thereof |
DE112011105917T5 (de) * | 2011-12-27 | 2014-09-18 | Hewlett Packard Development Company, L.P. | Benutzerschnittstellenvorrichtung |
USD683749S1 (en) * | 2012-01-06 | 2013-06-04 | Microsoft Corporation | Display screen with a graphical user interface |
USD689874S1 (en) * | 2012-01-13 | 2013-09-17 | Htc Corporation | Display screen with graphical user interface |
US20150220150A1 (en) * | 2012-02-14 | 2015-08-06 | Google Inc. | Virtual touch user interface system and methods |
US9477303B2 (en) * | 2012-04-09 | 2016-10-25 | Intel Corporation | System and method for combining three-dimensional tracking with a three-dimensional display for a user interface |
US9864433B2 (en) * | 2012-07-13 | 2018-01-09 | Softkinetic Software | Method and system for human-to-computer gesture based simultaneous interactions using singular points of interest on a hand |
KR101911906B1 (ko) * | 2012-09-26 | 2018-10-25 | 에스케이플래닛 주식회사 | 3차원 객체 생성 장치 및 그 방법 |
USD727354S1 (en) * | 2012-10-05 | 2015-04-21 | Samsung Electronics Co., Ltd. | Display screen or portion thereof with animated graphical user interface |
KR101927150B1 (ko) * | 2012-10-30 | 2018-12-10 | 삼성전자주식회사 | 3차원 디스플레이 장치 및 그의 사용자 인터페이스 방법 |
KR101969318B1 (ko) * | 2012-11-05 | 2019-04-17 | 삼성전자주식회사 | 디스플레이장치 및 그 제어방법 |
US9575562B2 (en) * | 2012-11-05 | 2017-02-21 | Synaptics Incorporated | User interface systems and methods for managing multiple regions |
US10452243B2 (en) * | 2013-01-31 | 2019-10-22 | Bombardier Inc. | System and method of operation of the system incorporating a graphical user interface in a side ledge of a vehicle cabin |
US9323343B2 (en) * | 2013-01-31 | 2016-04-26 | Panasonic Intellectual Property Corporation Of America | Information processing method and information processing apparatus |
AU350007S (en) * | 2013-02-23 | 2013-07-31 | Samsung Electronics Co Ltd | Display screen for an electronic device |
AU350005S (en) * | 2013-03-13 | 2013-07-31 | Samsung Electronics Co Ltd | Display screen for an electronic device |
US10220303B1 (en) * | 2013-03-15 | 2019-03-05 | Harmonix Music Systems, Inc. | Gesture-based music game |
USD727352S1 (en) * | 2013-04-29 | 2015-04-21 | Google Inc. | Display screen with transitional graphical user interface |
USD726219S1 (en) * | 2013-06-09 | 2015-04-07 | Apple Inc. | Display screen or portion thereof with animated graphical user interface |
CA2917478A1 (en) * | 2013-07-10 | 2015-01-15 | Real View Imaging Ltd. | Three dimensional user interface |
USD792454S1 (en) * | 2013-08-12 | 2017-07-18 | Sears Brands, L.L.C. | Display screen or portion thereof with a set of icons |
US9448689B2 (en) * | 2013-08-30 | 2016-09-20 | Paypal, Inc. | Wearable user device enhanced display system |
USD817994S1 (en) * | 2013-09-03 | 2018-05-15 | Samsung Electronics Co., Ltd. | Display screen or portion thereof with transitional graphical user interface |
JP6090140B2 (ja) * | 2013-12-11 | 2017-03-08 | ソニー株式会社 | 情報処理装置、情報処理方法及びプログラム |
US9740296B2 (en) * | 2013-12-16 | 2017-08-22 | Leap Motion, Inc. | User-defined virtual interaction space and manipulation of virtual cameras in the interaction space |
US9622322B2 (en) * | 2013-12-23 | 2017-04-11 | Sharp Laboratories Of America, Inc. | Task light based system and gesture control |
US9311718B2 (en) * | 2014-01-23 | 2016-04-12 | Microsoft Technology Licensing, Llc | Automated content scrolling |
USD775196S1 (en) * | 2014-03-10 | 2016-12-27 | Htc Corporation | Display screen or portion thereof with graphical user interface |
US20150261659A1 (en) * | 2014-03-12 | 2015-09-17 | Bjoern BADER | Usability testing of applications by assessing gesture inputs |
US10121186B2 (en) * | 2014-03-31 | 2018-11-06 | Monticello Enterprises LLC | System and method of using a browser application programming interface for making payments |
USD781317S1 (en) * | 2014-04-22 | 2017-03-14 | Google Inc. | Display screen with graphical user interface or portion thereof |
US10852838B2 (en) * | 2014-06-14 | 2020-12-01 | Magic Leap, Inc. | Methods and systems for creating virtual and augmented reality |
US10416760B2 (en) * | 2014-07-25 | 2019-09-17 | Microsoft Technology Licensing, Llc | Gaze-based object placement within a virtual reality environment |
KR101453815B1 (ko) * | 2014-08-01 | 2014-10-22 | 스타십벤딩머신 주식회사 | 사용자의 시점을 고려하여 동작인식하는 인터페이스 제공방법 및 제공장치 |
USD761273S1 (en) * | 2014-08-29 | 2016-07-12 | Samsung Electronics Co., Ltd. | Display screen or portion thereof with graphical user interface |
KR20160046150A (ko) * | 2014-10-20 | 2016-04-28 | 삼성전자주식회사 | 도형 컨텐트를 생성 및 해석하는 방법 및 장치 |
EP3224694A4 (en) * | 2014-11-27 | 2018-09-05 | Erghis Technologies AB | Method and system for gesture based control of device |
US10275113B2 (en) * | 2014-12-19 | 2019-04-30 | Hewlett-Packard Development Company, L.P. | 3D visualization |
USD788136S1 (en) * | 2015-02-20 | 2017-05-30 | Google Inc. | Portion of a display panel with a graphical user interface |
USD783037S1 (en) * | 2015-02-27 | 2017-04-04 | Vigyanlabs Innovations Pvt. Ltd. | Display screen with graphical user interface including a sustainability dashboard for an enterprise |
USD781905S1 (en) * | 2015-04-12 | 2017-03-21 | Adp, Llc | Display screen with animated graphical user interface |
US20160378291A1 (en) * | 2015-06-26 | 2016-12-29 | Haworth, Inc. | Object group processing and selection gestures for grouping objects in a collaboration system |
USD793403S1 (en) * | 2015-06-30 | 2017-08-01 | Whirlpool Corporation | Display panel for appliance with partial graphical user interface portion |
EP3329484A4 (en) * | 2015-07-29 | 2019-06-05 | Sensel Inc. | SYSTEMS AND METHODS FOR HANDLING A VIRTUAL ENVIRONMENT |
US9818228B2 (en) * | 2015-08-07 | 2017-11-14 | Microsoft Technology Licensing, Llc | Mixed reality social interaction |
USD821407S1 (en) * | 2015-08-14 | 2018-06-26 | Sonos, Inc. | Display screen or portion thereof with animated graphical user interface element incorporating warped circles |
USD787527S1 (en) * | 2015-08-14 | 2017-05-23 | Sonos, Inc. | Display device with animated graphical user interface element |
US10101803B2 (en) * | 2015-08-26 | 2018-10-16 | Google Llc | Dynamic switching and merging of head, gesture and touch input in virtual reality |
USD784394S1 (en) * | 2015-09-11 | 2017-04-18 | Under Armour, Inc. | Display screen with graphical user interface |
USD784395S1 (en) * | 2015-09-11 | 2017-04-18 | Under Armour, Inc. | Display screen with graphical user interface |
USD790567S1 (en) * | 2015-09-25 | 2017-06-27 | Sz Dji Osmo Technology Co., Ltd. | Display screen or portion thereof with animated graphical user interface |
AU2016341196B2 (en) * | 2015-10-20 | 2021-09-16 | Magic Leap, Inc. | Selecting virtual objects in a three-dimensional space |
USD775179S1 (en) * | 2015-10-30 | 2016-12-27 | Hitachi, Ltd. | Display screen or portion thereof with graphical user interface |
US10248284B2 (en) * | 2015-11-16 | 2019-04-02 | Atheer, Inc. | Method and apparatus for interface control with prompt and feedback |
US10776618B2 (en) * | 2015-11-19 | 2020-09-15 | Lg Electronics Inc. | Mobile terminal and control method therefor |
USD791823S1 (en) * | 2015-11-26 | 2017-07-11 | Guangzhou Shenma Mobile Information Technology Co., Ltd. | Display screen with graphical user interface |
USD792456S1 (en) * | 2015-12-02 | 2017-07-18 | Ultra Group Usa, Inc. | Display screen or portion thereof with computer icon |
USD789977S1 (en) * | 2015-12-11 | 2017-06-20 | Adp, Llc | Display screen with graphical user interface |
US9857881B2 (en) * | 2015-12-31 | 2018-01-02 | Microsoft Technology Licensing, Llc | Electrical device for hand gestures detection |
USD789416S1 (en) * | 2016-02-04 | 2017-06-13 | Lutron Electronics Co., Inc. | Display screen or portion thereof with animated graphical user interface |
WO2017142977A1 (en) * | 2016-02-15 | 2017-08-24 | Meta Company | Apparatuses, methods and systems for tethering 3-d virtual elements to digital content |
WO2017143303A1 (en) * | 2016-02-17 | 2017-08-24 | Meta Company | Apparatuses, methods and systems for sharing virtual elements |
US10168768B1 (en) * | 2016-03-02 | 2019-01-01 | Meta Company | Systems and methods to facilitate interactions in an interactive space |
USD831681S1 (en) * | 2016-03-04 | 2018-10-23 | Roger André EILERTSEN | Computer display screen with graphical user interface |
US10665019B2 (en) * | 2016-03-24 | 2020-05-26 | Qualcomm Incorporated | Spatial relationships for integration of visual images of physical environment into virtual reality |
USD819065S1 (en) * | 2016-03-28 | 2018-05-29 | Huawei Technologies Co., Ltd. | Display screen or portion thereof with graphical user interface |
USD788793S1 (en) * | 2016-03-30 | 2017-06-06 | Microsoft Corporation | Display screen with graphical user interface |
KR20230098927A (ko) * | 2016-03-31 | 2023-07-04 | 매직 립, 인코포레이티드 | 포즈들 및 멀티-dof 제어기들을 사용하는 3d 가상 객체들과상호작용들 |
US10852835B2 (en) * | 2016-04-15 | 2020-12-01 | Board Of Regents, The University Of Texas System | Systems, apparatuses and methods for controlling prosthetic devices by gestures and other modalities |
US10204444B2 (en) * | 2016-04-28 | 2019-02-12 | Verizon Patent And Licensing Inc. | Methods and systems for creating and manipulating an individually-manipulable volumetric model of an object |
US10228836B2 (en) * | 2016-05-23 | 2019-03-12 | Unity IPR ApS | System and method for generation of 3D virtual objects |
US10852913B2 (en) * | 2016-06-21 | 2020-12-01 | Samsung Electronics Co., Ltd. | Remote hover touch system and method |
CN107801413B (zh) * | 2016-06-28 | 2020-01-31 | 华为技术有限公司 | 对电子设备进行控制的终端及其处理方法 |
US10473935B1 (en) * | 2016-08-10 | 2019-11-12 | Meta View, Inc. | Systems and methods to provide views of virtual content in an interactive space |
US20180053351A1 (en) * | 2016-08-19 | 2018-02-22 | Intel Corporation | Augmented reality experience enhancement method and apparatus |
US11269480B2 (en) * | 2016-08-23 | 2022-03-08 | Reavire, Inc. | Controlling objects using virtual rays |
US10987573B2 (en) * | 2016-10-11 | 2021-04-27 | Valve Corporation | Virtual reality hand gesture generation |
US10809808B2 (en) * | 2016-10-14 | 2020-10-20 | Intel Corporation | Gesture-controlled virtual reality systems and methods of controlling the same |
CN111610858B (zh) * | 2016-10-26 | 2023-09-19 | 创新先进技术有限公司 | 基于虚拟现实的交互方法及装置 |
US10271043B2 (en) * | 2016-11-18 | 2019-04-23 | Zspace, Inc. | 3D user interface—360-degree visualization of 2D webpage content |
USD829231S1 (en) * | 2017-01-13 | 2018-09-25 | Action Target Inc. | Display screen or portion thereof with graphical user interface |
GB201718267D0 (en) * | 2017-11-03 | 2017-12-20 | Hardie-Bick Anthony Richard | Sensing apparatus |
USD824944S1 (en) * | 2017-02-10 | 2018-08-07 | General Electric Company | Display screen or portion thereof with graphical user interface |
USD835665S1 (en) * | 2017-02-28 | 2018-12-11 | Sony Corporation | Display screen or portion thereof with animated graphical user interface |
USD839299S1 (en) * | 2017-03-27 | 2019-01-29 | Samsung Electronics Co., Ltd. | Display screen or portion thereof with transitional graphical user interface |
AU2018256365A1 (en) * | 2017-04-19 | 2019-10-31 | Magic Leap, Inc. | Multimodal task execution and text editing for a wearable system |
USD824951S1 (en) * | 2017-05-01 | 2018-08-07 | Promontech Llc | Computer display panel with a graphical user interface for a mortgage application |
US10417827B2 (en) * | 2017-05-04 | 2019-09-17 | Microsoft Technology Licensing, Llc | Syndication of direct and indirect interactions in a computer-mediated reality environment |
USD859426S1 (en) * | 2017-07-10 | 2019-09-10 | Google Llc | Display screen with animated graphical user interface |
US10304239B2 (en) * | 2017-07-20 | 2019-05-28 | Qualcomm Incorporated | Extended reality virtual assistant |
US10521944B2 (en) * | 2017-08-16 | 2019-12-31 | Microsoft Technology Licensing, Llc | Repositioning user perspectives in virtual reality environments |
DK180470B1 (en) * | 2017-08-31 | 2021-05-06 | Apple Inc | Systems, procedures, and graphical user interfaces for interacting with augmented and virtual reality environments |
EP3467707B1 (en) * | 2017-10-07 | 2024-03-13 | Tata Consultancy Services Limited | System and method for deep learning based hand gesture recognition in first person view |
USD856366S1 (en) * | 2017-10-31 | 2019-08-13 | Helixaeon Inc. | Display screen or portion thereof with animated graphical user interface |
USD854551S1 (en) * | 2017-11-12 | 2019-07-23 | Musico Ltd. | Portion of a display screen with transitional graphical user interface |
USD850468S1 (en) * | 2018-01-05 | 2019-06-04 | Google Llc | Display screen or portion thereof with transitional graphical user interface |
USD842889S1 (en) * | 2018-01-05 | 2019-03-12 | Byton Limited | Display screen or portion thereof with a graphical user interface |
US20190213792A1 (en) * | 2018-01-11 | 2019-07-11 | Microsoft Technology Licensing, Llc | Providing Body-Anchored Mixed-Reality Experiences |
USD900123S1 (en) * | 2018-02-12 | 2020-10-27 | Acordo Certo—Reparacao E Manutencao Automovel, LTA | Display screen or portion thereof with graphical user interface |
US10657716B2 (en) * | 2018-03-07 | 2020-05-19 | California Institute Of Technology | Collaborative augmented reality system |
US11086474B2 (en) * | 2018-04-09 | 2021-08-10 | Spatial Systems Inc. | Augmented reality computing environments—mobile device join and load |
US11875012B2 (en) * | 2018-05-25 | 2024-01-16 | Ultrahaptics IP Two Limited | Throwable interface for augmented reality and virtual reality environments |
US10948993B2 (en) * | 2018-06-07 | 2021-03-16 | Facebook, Inc. | Picture-taking within virtual reality |
US20190385372A1 (en) * | 2018-06-15 | 2019-12-19 | Microsoft Technology Licensing, Llc | Positioning a virtual reality passthrough region at a known distance |
USD908713S1 (en) * | 2018-07-12 | 2021-01-26 | Distech Controls Inc. | Display screen or portion thereof with graphical user interface |
US10916220B2 (en) * | 2018-08-07 | 2021-02-09 | Apple Inc. | Detection and display of mixed 2D/3D content |
US10732725B2 (en) * | 2018-09-25 | 2020-08-04 | XRSpace CO., LTD. | Method and apparatus of interactive display based on gesture recognition |
US10942577B2 (en) * | 2018-09-26 | 2021-03-09 | Rockwell Automation Technologies, Inc. | Augmented reality interaction techniques |
WO2020072915A1 (en) * | 2018-10-05 | 2020-04-09 | Ctrl-Labs Corporation | Use of neuromuscular signals to provide enhanced interactions with physical objects in an augmented reality environment |
US11294472B2 (en) * | 2019-01-11 | 2022-04-05 | Microsoft Technology Licensing, Llc | Augmented two-stage hand gesture input |
US11107265B2 (en) * | 2019-01-11 | 2021-08-31 | Microsoft Technology Licensing, Llc | Holographic palm raycasting for targeting virtual objects |
US11397463B2 (en) * | 2019-01-12 | 2022-07-26 | Microsoft Technology Licensing, Llc | Discrete and continuous gestures for enabling hand rays |
USD910655S1 (en) * | 2019-03-12 | 2021-02-16 | MKM Global Pty Ltd. | Display screen with animated graphical user interface |
US20210011556A1 (en) * | 2019-07-09 | 2021-01-14 | Facebook Technologies, Llc | Virtual user interface using a peripheral device in artificial reality environments |
USD910660S1 (en) * | 2019-07-26 | 2021-02-16 | Lutron Technology Company Llc | Display screen or portion thereof with graphical user interface |
US11170576B2 (en) * | 2019-09-20 | 2021-11-09 | Facebook Technologies, Llc | Progressive display of virtual objects |
US11086476B2 (en) * | 2019-10-23 | 2021-08-10 | Facebook Technologies, Llc | 3D interactions with web content |
-
2019
- 2019-10-23 US US16/661,945 patent/US11086476B2/en active Active
-
2020
- 2020-09-27 JP JP2022500566A patent/JP2022552927A/ja active Pending
- 2020-09-27 CN CN202080057590.5A patent/CN114245888A/zh active Pending
- 2020-09-27 WO PCT/US2020/052976 patent/WO2021080733A1/en unknown
- 2020-09-27 KR KR1020227017084A patent/KR20220079684A/ko unknown
- 2020-09-27 EP EP20789416.3A patent/EP4049115A1/en active Pending
-
2021
- 2021-07-06 US US17/367,993 patent/US11556220B1/en active Active
-
2023
- 2023-01-13 US US18/154,144 patent/US20230152936A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US11086476B2 (en) | 2021-08-10 |
EP4049115A1 (en) | 2022-08-31 |
CN114245888A (zh) | 2022-03-25 |
US11556220B1 (en) | 2023-01-17 |
US20210124475A1 (en) | 2021-04-29 |
JP2022552927A (ja) | 2022-12-21 |
US20230152936A1 (en) | 2023-05-18 |
WO2021080733A1 (en) | 2021-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11556220B1 (en) | 3D interactions with web content | |
US11520477B2 (en) | Augmented reality scrollbar | |
JP7196179B2 (ja) | 複合現実システムにおいて仮想コンテンツを管理および表示する方法およびシステム | |
US10678340B2 (en) | System and method for providing user interface tools | |
CN109643212B (zh) | 3d文档编辑系统 | |
US11294475B1 (en) | Artificial reality multi-modal input switching model | |
CN111819522A (zh) | 用于混合现实显示器中的虚拟内容的遮挡光标 | |
US10976804B1 (en) | Pointer-based interaction with a virtual surface using a peripheral device in artificial reality environments | |
US11023035B1 (en) | Virtual pinboard interaction using a peripheral device in artificial reality environments | |
US20220261088A1 (en) | Artificial reality platforms and controls | |
US11232643B1 (en) | Collapsing of 3D objects to 2D images in an artificial reality environment | |
US12032728B2 (en) | Machine interaction | |
CN116670627A (zh) | 对环境中的用户界面进行分组的方法 | |
US11023036B1 (en) | Virtual drawing surface interaction using a peripheral device in artificial reality environments | |
WO2024039782A1 (en) | Url access to assets within an artificial reality universe on both 2d and artificial reality interfaces | |
US20220130100A1 (en) | Element-Based Switching of Ray Casting Rules | |
US11836205B2 (en) | Artificial reality browser configured to trigger an immersive experience | |
US11947862B1 (en) | Streaming native application content to artificial reality devices | |
US20240264660A1 (en) | Facilitating User Interface Interactions in an Artificial Reality Environment | |
US20240281070A1 (en) | Simultaneous Controller and Touch Interactions | |
JP7470226B2 (ja) | Xrマルチウィンドウ制御 | |
US20240265656A1 (en) | Facilitating System User Interface (UI) Interactions in an Artificial Reality (XR) Environment | |
EP4089506A1 (en) | Element-based switching of ray casting rules | |
WO2024091371A1 (en) | Artificial reality input for two-dimensional virtual objects | |
WO2024173045A1 (en) | Simultaneous controller and touch interactions |