KR20200111119A - 가상 종이 - Google Patents

가상 종이 Download PDF

Info

Publication number
KR20200111119A
KR20200111119A KR1020200033220A KR20200033220A KR20200111119A KR 20200111119 A KR20200111119 A KR 20200111119A KR 1020200033220 A KR1020200033220 A KR 1020200033220A KR 20200033220 A KR20200033220 A KR 20200033220A KR 20200111119 A KR20200111119 A KR 20200111119A
Authority
KR
South Korea
Prior art keywords
virtual object
world coordinates
cgr
user
bounded
Prior art date
Application number
KR1020200033220A
Other languages
English (en)
Other versions
KR102385737B1 (ko
Inventor
클레멘트 피. 보이시에르
사무엘 엘. 이글레시아스
티모시 로버트 오리올
아담 엠. 오헤른
Original Assignee
애플 인크.
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 애플 인크. filed Critical 애플 인크.
Publication of KR20200111119A publication Critical patent/KR20200111119A/ko
Priority to KR1020220043323A priority Critical patent/KR102566955B1/ko
Application granted granted Critical
Publication of KR102385737B1 publication Critical patent/KR102385737B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/366Image reproducers using viewer tracking
    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/013Eye tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0485Scrolling or panning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • 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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/122Improving the 3D impression of stereoscopic images by modifying image signal contents, e.g. by filtering or adding monoscopic depth cues
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/156Mixing image signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/388Volumetric displays, i.e. systems where the image is built up from picture elements distributed through a volume
    • H04N13/395Volumetric displays, i.e. systems where the image is built up from picture elements distributed through a volume with depth sampling, i.e. the volume being constructed from a stack or sequence of 2D image planes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/395Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability involving distributed video coding [DVC], e.g. Wyner-Ziv video coding or Slepian-Wolf video coding
    • 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
    • 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/2016Rotation, translation, scaling
    • 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/2024Style variation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Architecture (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

일 실시예에서, 하나 이상의 프로세서들, 비일시적 메모리, 및 하나 이상의 디스플레이들을 포함하는 디바이스에서, 경계지어진 표면에 입체 및 순응형 가상 콘텐츠를 혼합하는 방법이 수행된다. 방법은, 네이티브 사용자 컴퓨터-생성 현실(computer-generated reality, CGR) 환경 내에서 경계지어진 표면을 디스플레이하는 단계를 포함하며, 여기서 경계지어진 표면은 네이티브 사용자 CGR 환경을 특성화하는 세계 좌표들의 제1 세트에 기초하여 디스플레이된다. 방법은, 경계지어진 표면의 제1 측의 주변부 내에서 제1 입체 가상 객체를 디스플레이하는 단계를 추가로 포함하며, 여기서 제1 입체 가상 객체는 네이티브 사용자 CGR 환경을 특성화하는 세계 좌표들의 제1 세트와 상이한 세계 좌표들의 제2 세트에 따라 디스플레이된다.

Description

가상 종이{VIRTUAL PAPER}
관련 출원에 대한 상호 참조
본 출원은 2019년 3월 18일자로 출원된 미국 가특허 출원 제62/820,137호의 이익을 주장하며, 그 가특허 출원은 그 전체가 참고로 포함된다.
기술분야
본 개시내용은 일반적으로 다기능 디바이스들 상의 컴퓨터-생성 현실(computer-generated reality, CGR) 애플리케이션들에 관한 것이다.
이전에 이용가능한 컴퓨터-생성 현실(CGR) 경험들에서, 2D 가상 콘텐츠 및 입체(또는 3D) 가상 콘텐츠는 전형적으로, 사용자 CGR 환경을 특성화하는 세계 좌표들의 하나의 세트에 따라 디스플레이된다. 결국, 2D 및 입체 가상 콘텐츠 둘 모두와 연관된 디스플레이 및 사용자 상호작용 가능성들의 범위는 사용자 CGR 환경을 특성화하는 세계 좌표들의 세트에 기초하여 가상 콘텐츠를 렌더링 및 디스플레이하는 것으로 제한된다.
본 명세서에 개시된 다양한 실시예들은 가상 종이에 입체 및 순응형 가상 콘텐츠를 혼합하기 위한 디바이스들, 장치들, 시스템들, 및 방법들을 포함한다. 다양한 실시예들에서, 하나 이상의 프로세서들, 비일시적 메모리, 및 하나 이상의 디스플레이들을 포함하는 디바이스에서 방법이 수행된다. 방법은, 네이티브(native) 사용자 컴퓨터-생성 현실(CGR) 환경 내에서 경계지어진 표면을 디스플레이하는 단계를 포함하며, 여기서 경계지어진 표면은 네이티브 사용자 CGR 환경을 특성화하는 세계 좌표들의 제1 세트에 기초하여 디스플레이된다. 방법은, 경계지어진 표면의 제1 측의 주변부 내에서 제1 입체 가상 객체를 디스플레이하는 단계를 추가로 포함하며, 여기서 제1 입체 가상 객체는 네이티브 사용자 CGR 환경을 특성화하는 세계 좌표들의 제1 세트와 상이한 세계 좌표들의 제2 세트에 따라 디스플레이된다.
본 명세서에 개시된 다양한 실시예들은 가상 종이 내의 가상 콘텐츠와 상호작용하기 위한 디바이스들, 장치들, 시스템들, 및 방법들을 포함한다. 다양한 실시예들에서, 하나 이상의 프로세서들, 비일시적 메모리, 및 하나 이상의 디스플레이들을 포함하는 디바이스에서 방법이 수행된다. 방법은 세계 좌표들의 제1 세트에 기초하여, 경계지어진 구역을 디스플레이하는 단계를 포함하며, 여기서 경계지어진 구역 내의 콘텐츠는 세계 좌표들의 제2 세트에 따라 디스플레이되는 입체 가상 객체를 포함한다. 방법은 콘텐츠로 지향되는 입력을 수신하는 단계를 추가로 포함한다. 방법은 부가적으로, 입력에 따라, 경계지어진 구역의 주변부 내에서 콘텐츠를 이동시키는 단계 - 이동시키는 단계는 입력에 따라, 경계지어진 구역의 주변부 내에서 입체 가상 객체를 이동시키는 단계를 포함함 -; 및 세계 좌표들의 제2 세트에 따라 입체 가상 객체를 애니메이션화하는 단계를 포함한다.
일부 실시예들에서, 디바이스는 하나 이상의 프로세서들, 비일시적 메모리, 및 하나 이상의 프로그램들을 포함하고; 하나 이상의 프로그램들은 비일시적 메모리에 저장되며 하나 이상의 프로세서들에 의해 실행되도록 구성되고, 하나 이상의 프로그램들은 본 명세서에 설명된 방법들 중 임의의 방법을 수행하거나 그의 수행을 야기하기 위한 명령어들을 포함한다. 일부 실시예들에서, 비일시적 컴퓨터 판독가능 저장 매체는, 디바이스의 하나 이상의 프로세서들에 의해 실행될 때, 디바이스로 하여금, 본 명세서에 설명되는 방법들 중 임의의 방법을 수행하게 하거나 그의 수행을 야기하게 하는 명령어들을 내부에 저장하고 있다. 일부 실시예들에서, 디바이스는, 하나 이상의 프로세서들, 비일시적 메모리, 및 본 명세서에 설명되는 방법들 중 임의의 방법을 수행하거나 그의 수행을 야기하기 위한 수단을 포함한다.
본 개시내용이 당업자들에 의해 이해될 수 있도록, 더 상세한 설명이 일부 예시적인 실시예들의 태양들에 대한 참조에 의해 이루어질 수 있으며, 이들 중 일부는 첨부 도면들에 도시된다.
도 1a 및 도 1b는 일부 실시예들에 따른 동작 환경들의 예들의 다이어그램들이다.
도 2는 일부 실시예들에 따른 예시적인 제어기의 블록 다이어그램이다.
도 3은 일부 실시예들에 따른 예시적인 컴퓨터-생성 현실(CGR) 디바이스의 블록 다이어그램이다.
도 4a 내지 도 4o는 일부 실시예들에 따른 가상 종이들의 예들을 예시한다.
도 5a 내지 도 5m은 일부 실시예들에 따른 예시적인 가상 종이 내의 가상 콘텐츠와의 상호작용들의 예들을 예시한다.
도 6a 및 도 6b는 일부 실시예들에 따른, 경계지어진 표면(bounded surface)을 디스플레이하기 위한 방법의 흐름도를 표현한다.
도 7a 및 도 7b는 일부 실시예들에 따른, 경계지어진 구역의 주변부 내에서 디스플레이된 콘텐츠와 상호작용하기 위한 방법의 흐름도를 표현한다.
도 8은 일부 실시예들에 따른 컴퓨팅 디바이스의 블록 다이어그램이다.
일반적인 실시에 따라, 도면들에 예시된 다양한 특징부들은 축척대로 그려지지 않을 수 있다. 따라서, 다양한 특징부들의 치수들은 명료함을 위해 임의대로 확대 또는 축소될 수 있다. 부가적으로, 도면들 중 일부는 주어진 시스템, 방법 또는 디바이스의 컴포넌트들 모두를 도시하지는 않을 수 있다. 마지막으로, 동일한 도면 번호들은 명세서 및 도면들 전반에 걸쳐 동일한 특징부를 나타내기 위해 사용될 수 있다.
도면들에 도시된 예시적인 실시예들의 완전한 이해를 제공하기 위해 다수의 세부사항들이 설명된다. 그러나, 도면들은 단지 본 개시내용의 일부 예시적인 태양들만을 도시할 뿐이며, 따라서 제한적인 것으로 고려되지 않는다. 당업자들은 다른 효과적인 태양들 및/또는 변형들이 본 명세서에 설명되는 특정 세부사항들 모두를 포함하지는 않음을 인식할 것이다. 또한, 잘 알려진 시스템들, 방법들, 컴포넌트들, 디바이스들 및 회로들은 본 명세서에 설명되는 예시적인 실시예들의 더 적절한 태양들을 불명확하게 하지 않기 위해 포괄적으로 상세하게 설명되지 않았다.
전술된 이전에 이용가능한 컴퓨터-생성 현실(CGR) 시스템들과는 대조적으로, 본 명세서에 개시된 다양한 실시예들은 다차원 CGR 환경을 제공한다. 일부 실시예들에서, 다차원 CGR 환경은 경계지어진 표면 또는 경계지어진 구역으로 표현되는 가상 종이의 디스플레이를 포함한다. 일부 실시예들에서, 경계지어진 표면은 네이티브 사용자 CGR 환경을 특성화하는 세계 좌표들의 제1 세트에 기초하여 디스플레이된다. 추가로, 경계지어진 표면 내에서, 입체 가상 콘텐츠가 세계 좌표들의 제2 세트에 기초하여 디스플레이된다. 일부 실시예들에서, 경계지어진 표면 내에서 또한 디스플레이되는 것은 순응형 가상 콘텐츠(예를 들어, 인스턴스들의 서브세트 내의 2D 가상 콘텐츠)이다. 일부 실시예들에 따르면, 순응형 가상 콘텐츠는 세계 좌표들의 제1 세트에 기초하여, 경계지어진 표면의 윤곽에 순응한다.
예를 들어, 3D 가상 콘텐츠가 가상 종이의 주변부 내에서 경계지어지도록 3D 가상 콘텐츠가 디스플레이되는 동안, 3D 가상 콘텐츠는 가상 종이의 제1 측으로부터 밖으로 돌출될 수 있고, 3D 가상 콘텐츠의 디스플레이는 세계 좌표들의 제2 세트에 기초한다. 반면에, 2D 가상 콘텐츠는 세계 좌표들의 제1 세트에 기초하여 가상 종이의 표면에 순응하는 것으로서 디스플레이된다. 일부 실시예들에서, 가상 종이의 제1 측(예를 들어, 후면측)의 반대쪽인 가상 종이의 제2 측은 2D 가상 콘텐츠의 래스터화(rasterize)된 순응 표현과 함께, 3D 가상 콘텐츠의 래스터화된 순응 표현, 예를 들어 3D 가상 콘텐츠의 블러(blur) 효과 또는 음영으로 디스플레이된다.
본 명세서에 설명되는 실시예들에 따른 가상 종이는, 가상 콘텐츠가 CGR 환경에서 어떻게 디스플레이되는지 뿐만 아니라 가상 콘텐츠가 CGR 환경에서 어떻게 상호작용되는지를 개선시킨다. 예를 들어, 이전에 이용가능한 디스플레이 방법들은 종종, 윈도우(또는 애플리케이션) 창(pane) 내에서 디스플레이될 수 있는 것보다 더 많은 2D 콘텐츠가 존재할 때 2D 콘텐츠의 일부를 디스플레이한다. 스크롤링 입력에 응답하여, 윈도우 또는 애플리케이션 창의 경계들은 경계부에서 2D 콘텐츠를 클립핑(clip)할 것이므로, 2D 콘텐츠의 다른 부분이 경계들 내에서 디스플레이될 것이다. 입체 콘텐츠 내에서 경계지어진 구역을 제시하기 위한 CGR 환경에서, 이전에 이용가능한 시스템들 및 방법들은 경계지어진 구역 내에서 적어도 부분적으로 보이게 유지되도록 의도되는 입체 가상 콘텐츠를 클립핑하기 위한 효율적이고 우아한 방식을 제공하지 않는다.
반대로, 본 명세서에 개시된 다양한 실시예들은 경계지어진 구역의 주변부 내에서 입체(또는 3D) 가상 콘텐츠를 묶는다. 이와 같이, 경계지어진 구역의 주변부를 넘어 입체 가상 객체를 이동시키는 스크롤 입력에 응답하여, 일부 실시예들에서, 경계지어진 구역의 표면으로부터 밖으로 초기에 돌출되는 입체 가상 객체는 경계지어진 구역의 표면의 반대측으로 후퇴(retract)된다. 추가로, 일부 실시예들에서, 입체 가상 객체(예를 들어, 원양 정기선(ocean liner))가 네이티브 사용자 CGR 환경 내부에 끼워맞춰지기에는 너무 클 때, 입체 가상 객체는 세계 좌표들의 제2 세트에 의해 특성화되는 경계지어진 구역 내에 배치된다. 입체 가상 객체를 경계지어진 구역 내에 배치하는 것은, 사용자가 이어서 전체 스케일로 그리고 적절한 거리로부터 입체 가상 객체를 보기 위하여, 경계지어진 구역의 표면을 통해 응시(peer)할 수 있게 한다.
도 1a는 일부 실시예들에 따른, 컴퓨터-생성 현실(CGR) 환경(100A)의 일 예의 블록 다이어그램이다. 관련 특징부들이 도시되어 있지만, 당업자들은 본 개시내용으로부터, 간결함을 위해 그리고 본 명세서에 개시되는 예시적인 실시예들의 더 많은 관련 태양들을 불명료하게 하지 않기 위해 다양한 다른 특징부들이 예시되지 않았음을 인식할 것이다.
본 명세서에 설명되는 바와 같이, 물리적 환경은 사람들이 전자 시스템들의 도움없이 감지하고 그리고/또는 상호작용할 수 있는 물리적 세계를 지칭한다. 물리적 공원과 같은 물리적 환경들은 물리적 물품들, 이를테면 물리적 나무들, 물리적 건물들, 및 물리적 사람들을 포함한다. 사람들은, 이를테면 시각, 촉각, 청각, 맛, 및 냄새를 통해, 물리적 환경을 직접 감지하고 그리고/또는 그와 상호작용할 수 있다. 반대로, CGR 환경은 사람들이 전자 시스템을 통해 감지하고 그리고/또는 상호작용하는 전체적으로 또는 부분적으로 시뮬레이션된(simulated) 환경을 지칭한다. CGR에서, 사람의 물리적 움직임들, 또는 이들의 표현들의 서브세트가 추적되고, 이에 응답하여, CGR 환경에서 시뮬레이션된 하나 이상의 가상 객체들의 하나 이상의 특성들이 적어도 하나의 물리 법칙에 따르는 방식으로 조정된다. 예를 들어, CGR 시스템은 사람이 고개를 돌리는 것을 검출할 수 있고, 이에 응답하여, 그 사람에게 제시되는 그래픽 콘텐츠 및 음장(acoustic field)을 물리적 환경에서 그러한 뷰들 및 소리들이 변화하는 방식과 유사한 방식으로 조정할 수 있다. 일부 상황들에서(예를 들어, 접근성 이유들 때문에), CGR 환경 내의 가상 객체(들)의 특성(들)에 대한 조정들은 물리적 움직임들의 표현들(예를 들어, 음성 커맨드들)에 응답하여 이루어질 수 있다.
사람은, 시각, 청각, 촉각, 미각, 및 후각을 포함하는 그들의 감각들 중 임의의 하나를 사용하여 CGR 객체를 감지하고 그리고/또는 그와 상호작용할 수 있다. 예를 들어, 사람은 3D 공간에서 오디오 소스들의 인지 지점을 제공하는 3D 또는 공간적 오디오 환경을 생성하는 오디오 객체들을 감지하고 그리고/또는 그와 상호작용할 수 있다. 다른 예에서, 오디오 객체들은 오디오 투과성을 가능하게 할 수 있으며, 이는 선택적으로, 물리적 환경으로부터의 주변 소리들을 컴퓨터-생성 오디오와 함께 또는 그것 없이 포함한다. 일부 CGR 환경들에서, 사람은 오디오 객체들만을 감지하고 그리고/또는 오직 그와 상호작용할 수 있다. CGR의 예들은 가상 현실 및 혼합 현실을 포함한다.
본 명세서에서 사용되는 바와 같이, 가상 현실(VR) 환경은 하나 이상의 감각들에 대한 컴퓨터-생성 감각 입력들에 전적으로 기초하도록 설계되는 시뮬레이션된 환경을 지칭한다. VR 환경은 사람이 감지하고 그리고/또는 상호작용할 수 있는 복수의 가상 객체들을 포함한다. 예를 들어, 나무들, 빌딩들, 및 사람들을 표현하는 아바타들의 컴퓨터-생성 형상화가 가상 객체들의 예들이다. 사람은, 컴퓨터-생성 환경 내의 사람의 존재의 시뮬레이션을 통해 그리고/또는 컴퓨터-생성 환경 내의 사람의 신체적 움직임들의 서브세트의 시뮬레이션을 통해 VR 환경에서 가상 객체들을 감지하고 그리고/또는 그것과 상호작용할 수 있다.
컴퓨터-생성 감각 입력들에 전적으로 기초하도록 설계되는 VR 환경과는 대조적으로, 혼합 현실(MR) 환경은 컴퓨터-생성 감각 입력들(예를 들어, 가상 객체들)을 포함하는 것에 부가하여, 물리적 환경으로부터의 감각 입력들, 또는 그들의 표현을 포함하도록 설계된 시뮬레이션된 환경을 지칭한다. 가상 연속체(virtuality continuum)에서, 혼합 현실 환경은 한쪽의 전체 물리적 환경과 다른 쪽의 가상 현실 환경 사이의 임의의 곳에 있지만, 포함하지는 않는다.
일부 MR 환경들에서, 컴퓨터-생성 감각 입력들은 물리적 환경으로부터의 감각 입력들의 변화들에 응답할 수 있다. 또한, MR 환경을 제시하기 위한 일부 전자 시스템들은 물리적 환경에 대한 위치 및/또는 배향을 추적하여 가상 객체들이 실제 객체들(즉, 물리적 환경으로부터의 물리적 물품들 또는 물리적 물품들의 표현들)과 상호작용할 수 있게 할 수 있다. 예를 들어, 시스템은 움직임들을 고려하여 가상 나무가 물리적 땅에 대하여 고정되어 있는 것처럼 보이도록 할 수 있다. 혼합 현실들의 예들은 증강 현실 및 증강 가상을 포함한다.
본 명세서에서 사용되는 바와 같이, 증강 현실(AR) 환경은 하나 이상의 가상 객체들이 물리적 환경 또는 그의 표현 위에 중첩되는 시뮬레이션된 환경을 지칭한다. 예를 들어, AR 환경을 제시하기 위한 전자 시스템은 사람이 직접 물리적 환경을 볼 수 있는 투명 또는 반투명 디스플레이를 가질 수 있다. 시스템은 가상 객체들을 투명 또는 반투명 디스플레이 상에 제시하도록 구성되어, 사람은, 시스템을 사용하여, 물리적 환경 위에 중첩된 가상 객체들을 인지하게 할 수 있다. 대안적으로, 시스템은 불투명 디스플레이 및 물리적 환경의 표현들인, 물리적 환경의 이미지들 또는 비디오를 캡처하는 하나 이상의 이미징 센서들을 가질 수 있다. 시스템은 이미지들 또는 비디오를 가상 객체들과 합성하고, 합성물을 불투명 디스플레이 상에 제시한다. 사람은, 시스템을 사용하여, 물리적 환경의 이미지들 또는 비디오에 의해 물리적 환경을 간접적으로 보고, 물리적 환경 위에 중첩된 가상 객체들을 인지한다. 본 명세서에 사용되는 바와 같이, 불투명 디스플레이 상에 도시되는 물리적 환경의 비디오는 "패스-스루(pass-through) 비디오"로 불리는데, 이는 시스템이 하나 이상의 이미지 센서(들)를 사용하여 물리적 환경의 이미지들을 캡처하고, AR 환경을 불투명 디스플레이 상에 제시할 시에 이들 이미지들을 사용하는 것을 의미한다. 추가로 대안적으로, 시스템은 가상 객체들을 물리적 환경에, 예를 들어, 홀로그램으로서 또는 물리적 표면 상에 투영하는 투영 시스템을 가질 수 있어서, 사람이 시스템을 사용하여 물리적 환경 위에 중첩된 가상 객체들을 인지하게 한다.
본 명세서에서 사용되는 바와 같이, 증강 현실 환경은 또한 물리적 환경의 표현이 컴퓨터-생성 감각 정보에 의해 변환되는 시뮬레이션된 환경을 지칭한다. 예를 들어, 패스-스루 비디오를 제공할 시에, 시스템은 하나 이상의 센서 이미지들을 변환하여 이미징 센서들에 의해 캡처된 관점과 상이한 선택 관점(예를 들어, 시점)을 부과할 수 있다. 다른 예를 들어, 물리적 환경의 표현은 그것의 일부들을 그래픽적으로 수정(예컨대, 확대)함으로써 변환될 수 있고, 수정된 부분은 원래 캡처된 이미지들의 대표적인 버전일 수 있지만, 실사 버전은 아닐 수 있다. 추가적인 예로서, 물리적 환경의 표현은 그의 일부들을 그래픽적으로 제거하거나 또는 흐리게 함으로써 변환될 수 있다.
본 명세서에서 사용되는 바와 같이, 증강 가상(AV) 환경은 가상 또는 컴퓨터 생성 환경이 물리적 환경으로부터의 하나 이상의 감각 입력들을 통합하는 시뮬레이션된 환경을 지칭한다. 감각 입력들은 물리적 환경의 하나 이상의 특성들의 표현들일 수 있다. 예를 들어, AV 공원은 가상 나무들 및 가상 빌딩들을 가질 수 있지만, 사람들의 얼굴들은 물리적 사람들을 찍은 이미지들로부터 실사처럼 재현될 수 있다. 다른 예로서, 가상 객체는 하나 이상의 이미징 센서들에 의해 이미징되는 물리적 물품의 형상 또는 색상을 채용할 수 있다. 추가적인 예로서, 가상 객체는 물리적 환경에서 태양의 포지션에 부합하는 그림자들을 채용할 수 있다.
사람이 다양한 CGR 환경들을 감지하고 그리고/또는 그들과 상호작용할 수 있게 하는 많은 상이한 유형들의 전자 시스템들이 존재한다. 예들은 헤드 장착형 시스템들, 투영-기반 시스템들, 헤드-업(head-up) 디스플레이(HUD)들, 디스플레이 기능이 통합된 차량 앞유리들, 디스플레이 기능이 통합된 창문들, 사람의 눈들에 배치되도록 설계된 렌즈들로서 형성된 디스플레이(예를 들어, 콘택트 렌즈들과 유사함), 헤드폰들/이어폰들, 스피커 어레이들, 입력 시스템들(예를 들어, 햅틱 피드백이 있거나 또는 없는 웨어러블 또는 핸드헬드 제어기들), 스마트폰들, 태블릿들, 및 데스크톱/랩톱 컴퓨터들을 포함한다. 헤드 장착형 시스템은 하나 이상의 스피커(들) 및 통합 불투명 디스플레이를 가질 수 있다. 대안적으로, 헤드 장착형 시스템은 외부 불투명 디스플레이(예를 들어, 스마트폰)를 수용하도록 구성될 수 있다. 헤드 장착형 시스템은 물리적 환경의 이미지들 또는 비디오를 캡처하기 위한 하나 이상의 이미징 센서들, 및/또는 물리적 환경의 오디오를 캡처하기 위한 하나 이상의 마이크로폰들을 포함할 수 있다. 헤드 장착형 시스템은 불투명 디스플레이보다는, 투명 또는 반투명 디스플레이를 가질 수 있다. 투명 또는 반투명 디스플레이는 이미지들을 표현하는 광이 사람의 눈들로 지향되는 매체를 가질 수 있다. 디스플레이는 디지털 광 프로젝션, OLED들, LED들, uLED들, 실리콘 액정 표시장치, 레이저 스캐닝 광원, 또는 이들 기술들의 임의의 조합을 이용할 수 있다. 매체는 광학 도파관, 홀로그램 매체, 광학 조합기, 광학 반사기, 또는 이들의 임의의 조합일 수 있다. 일 실시예에서, 투명 또는 반투명 디스플레이는 선택적으로 불투명하게 되도록 구성될 수 있다. 투영-기반 시스템들은 그래픽 이미지들을 사람의 망막 상에 투영하는 망막 투영 기술을 이용할 수 있다. 투영 시스템들은 또한 가상 객체들을 물리적 환경에, 예를 들어, 홀로그램으로서 또는 물리적 표면 상에 투영하도록 구성될 수 있다.
이를 위해, 비제한적인 예로서, CGR 환경(100A)은 제어기(102) 및 CGR 디바이스(예를 들어, 머리-장착가능 디바이스(HMD))(104)를 포함한다. 도 1의 예에서, CGR 디바이스(104)는 사용자(10)에 의해 착용된다. 일부 실시예들에서, CGR 디바이스(104)는 머리-장착가능 디바이스(HMD), 태블릿, 모바일 폰, 웨어러블 컴퓨팅 디바이스 등에 대응한다. 일부 실시예들에서, CGR 디바이스(104)는 CGR 경험을 사용자(10)에게 제시하도록 구성된다. 일부 실시예들에서, CGR 디바이스(104)는 소프트웨어, 펌웨어, 및/또는 하드웨어의 적합한 조합을 포함한다.
일부 실시예들에 따르면, CGR 디바이스(104)는 사용자(10)가 장면(106) 내에 가상적으로 그리고/또는 물리적으로 존재하는 동안 CGR 경험을 사용자(10)에게 제시한다. 일부 실시예들에서, CGR 경험을 제시하는 동안, CGR 디바이스(104)는 CGR 콘텐츠를 제시하고 장면(106)의 비디오 패스-스루를 가능하게 하도록 구성된다(예를 들어, CGR 디바이스(104)는 AR-인에이블된 모바일 폰 또는 태블릿에 대응함). 일부 실시예들에서, AR 경험을 제시하는 동안, CGR 디바이스(104)는 AR 콘텐츠를 제시하고 장면(106)의 광학 시스루(see-through)를 가능하게 하도록 구성된다(예를 들어, CGR 디바이스(104)는 AR-인에이블된 안경에 대응함). 일부 실시예들에서, 가상 현실(VR) 경험을 제시하는 동안, CGR 디바이스(104)는 VR 콘텐츠를 제시하고 선택적으로는 장면(106)의 비디오 패스-스루를 가능하게 하도록 구성된다(예를 들어, CGR 디바이스(104)는 VR-인에이블된 HMD에 대응함).
일부 실시예들에서, 사용자(10)는 (예를 들어, 도 1에 도시된 바와 같이) 자신의 머리 상에 CGR 디바이스(104)를 착용한다. 이와 같이, CGR 디바이스(104)는 CGR 콘텐츠를 디스플레이하기 위해 제공되는 하나 이상의 디스플레이들을 포함한다. 예를 들어, CGR 디바이스(104)는 사용자(10)의 시야를 둘러싼다. 일부 실시예들에서, CGR 디바이스(104)는 사용자(10)가 CGR 디바이스(104)를 착용하지 않은 CGR 콘텐츠를 제시하도록 구성된 CGR(예를 들어, AR/VR) 챔버, 인클로저, 또는 실내로 대체된다. 일부 실시예들에서, 사용자(10)는 자신의 손(들)에 CGR 디바이스(104)를 보유한다.
일부 실시예들에서, 제어기(102)는 사용자(10)에 대한 CGR 경험을 관리 및 조정하도록 구성된다. 일부 실시예들에서, 제어기(102)는 소프트웨어, 펌웨어, 및/또는 하드웨어의 적합한 조합을 포함한다. 일부 실시예들에서, 제어기(102)는 장면(106)에 대해 로컬 또는 원격인 컴퓨팅 디바이스이다. 예를 들어, 제어기(102)는 장면(106) 내에 위치된 로컬 서버이다. 다른 예에서, 제어기(102)는 장면(106)의 외부에 위치된 원격 서버(예를 들어, 클라우드 서버, 중앙 서버 등)이다. 일부 실시예들에서, 제어기(102)는 하나 이상의 유선 또는 무선 통신 채널들(예를 들어, 블루투스, IEEE 802.11x, IEEE 802.16x, IEEE 802.3x 등)을 통해 CGR 디바이스(104)와 통신가능하게 커플링된다. 일부 실시예들에서, 제어기(102)의 기능들은 CGR 디바이스(104)에 의해 제공되고 그리고/또는 그와 조합된다.
도 1a에 예시된 바와 같이, CGR 디바이스(104)는 장면(106)을 제시한다. 일부 실시예들에서, 장면(106)은 제어기(102) 및/또는 CGR 디바이스(104)에 의해 생성된다. 일부 실시예들에서, 장면(106)은 현실-세계 장면의 시뮬레이션된 대체물인 가상 장면을 포함한다. 다시 말하면, 일부 실시예들에서, 장면(106)은 제어기(102) 및/또는 CGR 디바이스(104)에 의해 시뮬레이션된다. 그러한 실시예들에서, 장면(106)은 CGR 디바이스(104)가 위치되는 현실-세계 장면과 상이하다. 일부 실시예들에서, 장면(106)은 현실-세계 장면의 수정된 버전인 증강 장면을 포함한다. 예를 들어, 일부 실시예들에서, 제어기(102) 및/또는 CGR 디바이스(104)는, 장면(106)을 생성하기 위해 CGR 디바이스(104)가 위치되는 현실-세계 장면을 수정(예를 들어, 증강)한다. 일부 실시예들에서, 제어기(102) 및/또는 CGR 디바이스(104)는 CGR 디바이스(104)가 위치되는 현실-세계 장면의 복제물을 시뮬레이션함으로써 장면(106)을 생성한다. 일부 실시예들에서, 제어기(102) 및/또는 CGR 디바이스(104)는 CGR 디바이스(104)가 위치되는 현실-세계 장면의 시뮬레이션된 복제물로부터 아이템들을 제거 및/또는 부가함으로써 장면(106)을 생성한다.
도 1b를 참조하면, 도 1b는 일부 실시예들에 따른 예시적인 동작 환경(100B)의 다이어그램이다. 관련 특징부들이 도시되어 있지만, 당업자들은 본 개시내용으로부터, 간결함을 위해 그리고 본 명세서에 개시되는 예시적인 실시예들의 더 많은 관련 태양들을 불명료하게 하지 않기 위해 다양한 다른 특징부들이 예시되지 않았음을 인식할 것이다. 이를 위해, 비제한적인 예로서, 동작 환경(100B)은 네트워크(20), 컴퓨팅 디바이스(30), 현실-세계 장면(40), 및 디바이스(104b)를 포함한다.
도 1b의 예에서, 현실-세계 장면(40)은 사용자(10)를 포함한다. 다양한 실시예들에서, 디바이스(104b)는 현실-세계 장면(40)의 이미지들의 세트를 캡처하고, 장면(106)을 표현하는 데이터를 네트워크(20)를 통해 컴퓨팅 디바이스(30)에 송신한다. 일부 실시예들에서, 디바이스(104b)는 제어기(102) 및 카메라(104a)를 포함한다. 일부 실시예들에서, 카메라(104a)는 이미지들의 세트를 캡처하고, 제어기(102)는 이미지들의 세트에 기초하여 장면(106)을 표현하는 데이터를 생성한다. 일부 실시예들에서, 장면(106)을 표현하는 데이터는 카메라(104a)의 시야에 있는 사용자(10)에 대한 신체 포즈 정보(108)를 포함한다.
다양한 실시예들에서, 신체 포즈 정보(108)는 카메라(104a)의 시야에 있는 사용자(10)의 신체 포즈들을 표시한다. 예를 들어, 일부 실시예들에서, 신체 포즈 정보(108)는 사용자(10)의 관절 포지션들 및/또는 관절 배향들(예를 들어, 어깨 관절들, 팔꿈치 관절들, 손목 관절들, 골반 관절, 무릎 관절들, 및 발목 관절들의 포지션들/배향들)을 표시한다. 일부 실시예들에서, 신체 포즈 정보(108)는 사용자(10)의 다양한 신체 부분들의 포지션들/배향들(예를 들어, 머리, 몸통, 윗팔, 아래 팔 윗다리 및 아래 다리의 포지션들/배향들)을 표시한다.
다양한 실시예들에서, 네트워크(20)를 통해 신체 포즈 정보(108)를 송신하는 것은 카메라(104a)에 의해 캡처된 이미지들을 송신하는 것보다 더 적은 대역폭을 소비한다. 일부 실시예들에서, 네트워크 자원들이 제한되고, 디바이스(104b)는 이용가능한 양의 대역폭에 대한 액세스를 갖는다. 그러한 실시예들에서, 신체 포즈 정보(108)를 송신하는 것은 이용가능한 양의 대역폭보다 적게 소비하는 반면, 카메라(104a)에 의해 캡처된 이미지들을 송신하는 것은 이용가능한 양의 대역폭보다 더 많이 소비할 것이다. 다양한 실시예들에서,(예를 들어, 이미지들을 송신하는 대신에) 신체 포즈 정보(108)를 송신하는 것은, 예를 들어 더 적은 네트워크 자원들을 이용함으로써(예를 들어, 더 적은 대역폭을 이용함으로써) 네트워크(20)의 동작성을 개선시킨다.
일부 실시예들에서, 컴퓨팅 디바이스(30)는 사용자(10)의 아바타를 렌더링하기 위해 신체 포즈 정보(108)를 이용한다. 예를 들어, 컴퓨팅 디바이스(30)는 가상 장면에 아바타를 렌더링하기 위해 신체 포즈 정보(108)를 이용하는 디스플레이 엔진(예를 들어, 렌더링 및 디스플레이 파이프라인)에 신체 포즈 정보(108)를 제공할 수 있다. 컴퓨팅 디바이스(30)가 아바타들을 렌더링하기 위해 신체 포즈 정보(108)를 이용하기 때문에, 아바타들의 신체 포즈는 현실-세계 장면(40)에서 사용자(10)의 신체 포즈와 어느 정도 유사하다. 이와 같이, 가상 장면에서 아바타를 보는 것은 현실-세계 장면(40)의 이미지들을 보는 것과 어느 정도 유사하다.
도 2는 일부 실시예들에 따른 제어기(102)의 일 예의 블록 다이어그램이다. 소정의 특정 특징부들이 예시되어 있지만, 당업자들은 본 개시내용으로부터, 간결함을 위해 그리고 본 명세서에 개시되는 실시예들의 더 많은 관련 태양들을 불명료하게 하지 않기 위해 다양한 다른 특징부들이 예시되지 않았음을 인식할 것이다. 이를 위해, 비제한적인 예로서, 일부 실시예들에서, 제어기(102)는 하나 이상의 프로세싱 유닛들(202)(예를 들어, 마이크로프로세서들, 주문형 집적 회로(ASIC)들, 필드-프로그래밍가능 게이트 어레이(FPGA)들, 그래픽 프로세싱 유닛(GPU)들, 중앙 프로세싱 유닛(CPU)들, 프로세싱 코어들 등), 하나 이상의 입력/출력(I/O) 디바이스들(206), 하나 이상의 통신 인터페이스들(208)(예를 들어, 범용 직렬 버스(USB), 파이어와이어, 썬더볼트, IEEE 802.3x, IEEE 802.11x, IEEE 802.16x, 모바일 통신들을 위한 글로벌 시스템(GSM), 코드 분할 다중 액세스(CDMA), 시분할 다중 액세스(TDMA), 글로벌 포지셔닝 시스템(GPS), 적외선(IR), 블루투스, 지그비, 및/또는 유사한 유형의 인터페이스), 하나 이상의 프로그래밍(예를 들어, I/O) 인터페이스들(210), 메모리(220), 및 이들 및 다양한 다른 컴포넌트들을 상호연결시키기 위한 하나 이상의 통신 버스들(204)을 포함한다.
일부 실시예들에서, 하나 이상의 통신 버스들(204)은 시스템 컴포넌트들 사이의 통신을 상호연결시키고 제어하는 회로부를 포함한다. 일부 실시예들에서, 하나 이상의 I/O 디바이스들(206)은 키보드, 마우스, 터치패드, 조이스틱, 하나 이상의 마이크로폰들, 하나 이상의 스피커들, 하나 이상의 이미지 센서들, 하나 이상의 디스플레이들 등 중 적어도 하나를 포함한다.
메모리(220)는 동적-랜덤 액세스 메모리(DRAM), 정적 랜덤-액세스 메모리(SRAM), 더블-데이터-레이트 랜덤-액세스 메모리(DDR RAM), 또는 다른 랜덤-액세스 솔리드-스테이트 메모리 디바이스들과 같은 고속 랜덤-액세스 메모리를 포함한다. 일부 실시예들에서, 메모리(220)는 하나 이상의 자기 디스크 저장 디바이스들, 광 디스크 저장 디바이스들, 플래시 메모리 디바이스들, 또는 다른 비휘발성 솔리드-스테이트 저장 디바이스들과 같은 비휘발성 메모리를 포함한다. 메모리(220)는 선택적으로, 하나 이상의 프로세싱 유닛들(202)로부터 원격으로 위치된 하나 이상의 저장 디바이스들을 포함한다. 메모리(220)는 비일시적 컴퓨터 판독가능 저장 매체를 포함한다. 일부 실시예들에서, 메모리(220) 또는 메모리(220)의 비일시적 컴퓨터 판독가능 저장 매체는 다음의 프로그램들, 모듈들 및 데이터 구조들, 또는 선택적인 운영 체제(230) 및 CGR 경험 모듈(240)을 포함하는 그들의 서브세트를 저장한다.
운영 체제(230)는 다양한 기본 시스템 서비스들을 처리하고 하드웨어 의존 태스크들을 수행하기 위한 절차들을 포함한다. 일부 실시예들에서, CGR 경험 모듈(240)은 하나 이상의 사용자들에 대한 하나 이상의 CGR 경험들(예를 들어, 하나 이상의 사용자들에 대한 단일 CGR 경험, 또는 하나 이상의 사용자들의 개개의 그룹들에 대한 다수의 CGR 경험들)을 관리하고 조정하도록 구성된다. 이를 위해, 다양한 실시예들에서, CGR 경험 모듈(240)은 데이터 획득 유닛(242), 추적 유닛(244), 조정 유닛(246), 및 데이터 송신 유닛(248)을 포함한다.
일부 실시예들에서, 데이터 획득 유닛(242)은 적어도 CGR 디바이스(104)로부터 데이터(예를 들어, 제시 데이터, 상호작용 데이터, 센서 데이터, 위치 데이터 등)를 획득하도록 구성된다. 이를 위해, 다양한 실시예들에서, 데이터 획득 유닛(242)은 그에 대한 명령어들 및/또는 로직, 및 그에 대한 휴리스틱 및 메타데이터를 포함한다.
일부 실시예들에서, 추적 유닛(244)은 장면(106)을 맵핑하고 장면(106)에 대한 적어도 CGR 디바이스(104)의 포지션/위치를 추적하도록 구성된다(도 1a). 이를 위해, 다양한 실시예들에서, 추적 유닛(244)은 그에 대한 명령어들 및/또는 로직, 및 그에 대한 휴리스틱 및 메타데이터를 포함한다.
일부 실시예들에서, 조정 유닛(246)은 CGR 디바이스(104)에 의해 사용자에게 제시되는 CGR 경험을 관리 및 조정하도록 구성된다. 이를 위해, 다양한 실시예들에서, 조정 유닛(246)은 그에 대한 명령어들 및/또는 로직, 및 그에 대한 휴리스틱 및 메타데이터를 포함한다.
일부 실시예들에서, 데이터 송신 유닛(248)은 데이터(예를 들어, 제시 데이터, 위치 데이터 등)를 적어도 CGR 디바이스(104)에 송신하도록 구성된다. 이를 위해, 다양한 실시예들에서, 데이터 송신 유닛(248)은 그에 대한 명령어들 및/또는 로직, 및 그에 대한 휴리스틱 및 메타데이터를 포함한다.
데이터 획득 유닛(242), 추적 유닛(244), 조정 유닛(246), 및 데이터 송신 유닛(248)이 단일 디바이스(예를 들어, 제어기(102)) 상에 존재하는 것으로 도시되어 있지만, 다른 실시예들에서, 데이터 획득 유닛(242), 추적 유닛(244), 조정 유닛(246), 및 데이터 송신 유닛(248)의 임의의 조합이 별개의 컴퓨팅 디바이스들에 위치될 수 있다는 것을 이해해야 한다.
게다가, 도 2는 본 명세서에 설명된 실시예들의 구조적 개략도와는 반대로 특정 실시예에 존재할 수 있는 다양한 특징부들의 기능 설명으로서 더 의도된다. 당업자들에 의해 인식되는 바와 같이, 별개로 도시된 아이템들은 조합될 수 있고 일부 아이템들은 분리될 수 있다. 예를 들어, 도 2에 별개로 도시된 일부 기능 모듈들은 단일 모듈로 구현될 수 있고, 단일 기능 블록들의 다양한 기능들은 다양한 실시예들에서 하나 이상의 기능 블록들에 의해 구현될 수 있다. 모듈들의 실제 수 및 특정 기능들의 분할, 그리고 특징부들이 그들 사이에서 어떻게 할당되는지는 실시예들마다 변할 것이고, 일부 실시예들에서는 특정 실시예에 대해 선택된 하드웨어, 소프트웨어, 및/또는 펌웨어의 특정 조합에 부분적으로 의존할 수 있다.
도 3은 일부 실시예들에 따른 CGR 디바이스(104)(도 1a)의 일 예의 블록 다이어그램이다. 소정의 특정 특징부들이 예시되어 있지만, 당업자들은 본 개시내용으로부터, 간결함을 위해 그리고 본 명세서에 개시되는 실시예들의 더 많은 관련 태양들을 불명료하게 하지 않기 위해 다양한 다른 특징부들이 예시되지 않았음을 인식할 것이다. 이를 위해, 비-제한적인 예로서, 일부 실시예들에서, CGR 디바이스(104)는 하나 이상의 프로세싱 유닛들(302)(예를 들어, 마이크로프로세서들, ASIC들, FPGA들, GPU들, CPU들, 프로세싱 코어들 등), 하나 이상의 입력/출력(I/O) 디바이스들 및 센서들(306), 하나 이상의 통신 인터페이스들(308)(예를 들어, USB, 파이어와이어, 썬더볼트, IEEE 802.3x, IEEE 802.11x, IEEE 802.16x, GSM, CDMA, TDMA, GPS, IR, 블루투스, 지그비, 및/또는 유사한 유형의 인터페이스), 하나 이상의 프로그래밍(예를 들어, I/O) 인터페이스들(310), 하나 이상의 CGR 디스플레이들(312), 하나 이상의 내부 또는 외부 대면 이미지 센서들(314), 메모리(320), 및 이들 및 다양한 다른 컴포넌트들을 상호연결시키기 위한 하나 이상의 통신 버스들(304)을 포함한다.
일부 실시예들에서, 하나 이상의 통신 버스들(304)은 시스템 컴포넌트들 사이의 통신을 상호연결시키고 제어하는 회로부를 포함한다. 일부 실시예들에서, 하나 이상의 I/O 디바이스들 및 센서들(306)은 관성 측정 유닛(IMU), 가속도계, 자이로스코프, 온도계, 하나 이상의 생리학적 센서들(예를 들어, 혈압 모니터, 심박수 모니터, 혈중 산소 센서, 혈당 센서 등), 하나 이상의 마이크로폰들(307A), 하나 이상의 스피커들(307B)(예를 들어, 헤드폰들 또는 라우드스피커들), 햅틱 엔진, 하나 이상의 심도 센서들(예를 들어, 구조화된 광, 비행시간 등) 등 중 적어도 하나를 포함한다.
일부 실시예들에서, 하나 이상의 CGR 디스플레이들(312)은 CGR 경험을 사용자에게 제공하도록 구성된다. 일부 실시예들에서, 하나 이상의 CGR 디스플레이들(312)은 홀로그래픽, 디지털 광 프로세싱(DLP), 액정 디스플레이(LCD), 실리콘 액정 표시장치(LCoS), 유기 발광 전계-효과 트랜지터리(OLET), 유기 발광 다이오드(OLED), 표면-전도 전자-방출기 디스플레이(SED), 전계-방출 디스플레이(FED), 양자점 발광 다이오드(QD-LED), 마이크로-전자기계 시스템(MEMS), 및/또는 유사한 디스플레이 유형들에 대응한다. 일부 실시예들에서, 하나 이상의 CGR 디스플레이들(312)은 회절, 반사, 편광, 홀로그래픽 도파관 디스플레이들 등에 대응한다. 예를 들어, CGR 디바이스(104)는 단일 CGR 디스플레이를 포함한다. 다른 예에서, CGR 디바이스(104)는 사용자의 각각의 눈을 위한 CGR 디스플레이를 포함한다. 일부 실시예들에서, 하나 이상의 CGR 디스플레이들(312)은 CGR 콘텐츠를 제시할 수 있다.
일부 실시예들에서, 하나 이상의 내부, 외부, 내향, 외향, 전방, 및/또는 후방 대면 이미지 센서들(314)은 사용자의 눈들을 포함하는 사용자의 얼굴의 적어도 일부에 대응하는 이미지 데이터를 획득하도록 구성된다(임의의 것은 눈-추적 카메라로 지칭될 수 있음). 일부 실시예들에서, 하나 이상의 내부, 외부, 내향, 외향, 전방, 및/또는 후방 대면 이미지 센서들(314)은 CGR 디바이스(104)가 존재하지 않았다면 사용자에 의해 보여질 장면에 대응하는 이미지 데이터를 획득하기 위해 전방-대면(또는 외향 대면)하도록 구성된다(그리고 외향 대면 카메라로 지칭될 수 있음). 하나 이상의 내부, 외부, 내향, 외향, 전방, 및/또는 후방 대면 이미지 센서들(314)은 하나 이상의 RGB 카메라들(예를 들어, 상보성 금속-산화물-반도체(CMOS) 이미지 센서 또는 CCD(charge-coupled device) 이미지 센서를 가짐), 하나 이상의 적외선(IR) 카메라들, 하나 이상의 이벤트-기반 카메라들 등을 포함할 수 있다.
메모리(320)는 고속 랜덤-액세스 메모리, 이를테면, DRAM, SRAM, DDR RAM, 또는 다른 랜덤-액세스 솔리드-스테이트 메모리 디바이스들을 포함한다. 일부 실시예들에서, 메모리(320)는 하나 이상의 자기 디스크 저장 디바이스들, 광 디스크 저장 디바이스들, 플래시 메모리 디바이스들, 또는 다른 비휘발성 솔리드-스테이트 저장 디바이스들과 같은 비휘발성 메모리를 포함한다. 메모리(320)는 선택적으로, 하나 이상의 프로세싱 유닛들(302)로부터 원격으로 위치된 하나 이상의 저장 디바이스들을 포함한다. 메모리(320)는 비일시적 컴퓨터 판독가능 저장 매체를 포함한다. 일부 실시예들에서, 메모리(320) 또는 메모리(320)의 비일시적 컴퓨터 판독가능 저장 매체는 다음의 프로그램들, 모듈들 및 데이터 구조들, 또는 선택적인 운영 체제(330) 및 CGR 제시 모듈(340)을 포함하는 그들의 서브세트를 저장한다.
운영 체제(330)는 다양한 기본 시스템 서비스들을 처리하고 하드웨어 의존 태스크들을 수행하기 위한 절차들을 포함한다. 일부 실시예들에서, CGR 제시 모듈(340)은 하나 이상의 CGR 디스플레이들(312)을 통해 CGR 콘텐츠를 사용자에게 제시하도록 구성된다. 이를 위해, 다양한 실시예들에서, CGR 제시 모듈(340)은 데이터 획득 유닛(342), 오디오/CGR 제시 유닛(344), 및 데이터 송신 유닛(346)을 포함한다.
일부 실시예들에서, 데이터 획득 유닛(342)은 (예를 들어, 하나 이상의 통신 인터페이스(308)를 통해) 제어기(102), 하나 이상의 I/O 디바이스들 및 센서들(306), 또는 하나 이상의 내부, 외부, 내향, 외향, 전방, 및/또는 후방 대면 이미지 센서들(314) 중 하나 이상으로부터 데이터(예를 들어, 제시 데이터, 상호작용 데이터, 센서 데이터, 위치 데이터 등)를 획득하도록 구성된다. 이를 위해, 다양한 실시예들에서, 데이터 획득 유닛(342)은 그에 대한 명령어들 및/또는 로직, 및 그에 대한 휴리스틱 및 메타데이터를 포함한다.
일부 실시예들에서, 오디오/CGR 제시 유닛(344)은 하나 이상의 CGR 디스플레이들(312)(및, 다양한 실시예들에서는 스피커(307B) 및/또는 마이크로폰(307A))을 통해 오디오/CGR 경험을 제시하도록 구성된다. 이를 위해, 다양한 실시예들에서, 오디오/CGR 제시 유닛(344)은 그에 대한 명령어들 및/또는 로직, 및 그에 대한 휴리스틱 및 메타데이터를 포함한다.
일부 실시예들에서, 데이터 송신 유닛(346)은 데이터(예를 들어, 제시 데이터, 위치 데이터 등)를 적어도 제어기(102)에 송신하도록 구성된다. 이를 위해, 다양한 실시예들에서, 데이터 송신 유닛(346)은 그에 대한 명령어들 및/또는 로직, 및 그에 대한 휴리스틱 및 메타데이터를 포함한다.
데이터 획득 유닛(342), 오디오/CGR 제시 유닛(344), 및 데이터 송신 유닛(346)이 단일 디바이스(예를 들어, CGR 디바이스(104)) 상에 존재하는 것으로 도시되어 있지만, 다른 실시예들에서, 데이터 획득 유닛(342), 오디오/CGR 제시 유닛(344), 및 데이터 송신 유닛(346)의 임의의 조합이 별개의 컴퓨팅 디바이스들 내에 위치될 수 있다는 것을 이해해야 한다.
게다가, 도 3은 본 명세서에 설명된 실시예들의 구조적 개략도와는 반대로 특정 실시예에 존재할 수 있는 다양한 특징부들의 기능 설명으로서 더 의도된다. 당업자들에 의해 인식되는 바와 같이, 별개로 도시된 아이템들은 조합될 수 있고 일부 아이템들은 분리될 수 있다. 예를 들어, 도 3에 별개로 도시된 일부 기능 모듈들은 단일 모듈로 구현될 수 있고, 단일 기능 블록들의 다양한 기능들은 다양한 실시예들에서 하나 이상의 기능 블록들에 의해 구현될 수 있다. 모듈들의 실제 수 및 특정 기능들의 분할, 그리고 특징부들이 그들 사이에서 어떻게 할당되는지는 실시예들마다 다를 것이고, 일부 실시예들에서는 특정 실시예에 대해 선택된 하드웨어, 소프트웨어, 및/또는 펌웨어의 특정 조합에 부분적으로 의존할 수 있다.
도 4a는 일부 실시예들에 따른, 가상 종이(405)의 제1 측(예를 들어, 전방 측)이 디스플레이되는 CGR 환경(400)의 일 예를 예시한다. 일부 실시예들에서, CGR 환경(400)은 네이티브 사용자 CGR 환경이다. 일부 실시예들에서, 네이티브 사용자 CGR 환경은 사용자 또는 사용자를 표현하는 아바타가 위치되는 CGR 환경이다. 예를 들어, CGR 환경(400)은 사용자(401) 또는 사용자(401)를 표현하는 아바타를 포함한다. 이와 같이, 도 4a에 도시된 장면은 사용자(401) 또는 구경꾼의 관점으로부터의 CGR 환경(400)의 뷰일 수 있다.
일부 실시예들에서, 네이티브 사용자 CGR 환경(400) 내에서, 가상 종이(405)는 경계지어진 표면, 예를 들어 가상 표면의 주변부 둘레에 에지들 또는 경계들을 갖는 가상 표면으로서 디스플레이된다. 이와 같이, 가상 종이(405)는 또한 때때로 경계지어진 표면(405)으로 아래에서 지칭된다. 일부 실시예들에서, 경계지어진 표면(405)은 네이티브 사용자 CGR 환경(400)을 특성화하는 세계 좌표들의 제1 세트에 따라 디스플레이된다. 일부 실시예들에서, 네이티브 사용자 CGR 환경(400)을 특성화하는 세계 좌표 시스템은 네이티브 사용자 CGR 환경(400)을 묘사한 장면의 주요 또는 범용 좌표 시스템이다. 예를 들어, 전형적인 직교 좌표계에서, X, Y, 및 Z 축들을 갖는 세계에 대한 하나의 원점이 존재한다. 네이티브 사용자 CGR 환경(400)에서, 축들(X1, Y1, Z1)은 대략적으로, 사용자(401) 또는 사용자(401)를 표현하는 아바타가 도 4a에 도시된 바와 같이 원점에 위치되어 정렬되는 것처럼, 우측/좌측, 위/아래, 및 전방/후방에 각각 대응한다. 이와 같이, 네이티브 사용자 CGR 환경(400) 내의 객체들의 포지션들은 네이티브 사용자 CGR 환경(400)을 특성화하는 세계 좌표들의 세트, 예를 들어 (X1, Y1, Z1)에 의해 설명될 수 있다. 다시 말하면, 가상 종이(405)를 포함하는 객체들의 포지션들은, 사용자(401) 또는 사용자(401)를 표현하는 아바타의 관점으로부터인 것처럼 네이티브 사용자 CGR 환경(400)에 디스플레이된다.
일부 실시예들에서, 적어도 하나의 입체 가상 객체(예를 들어, 3D 닭(420), 3D 구 객체(430), 및/또는 3D 툴박스 객체들(440))가 가상 종이(405)의 전방 측의 주변부 내에서 디스플레이된다. 일부 실시예들에서, 적어도 하나의 입체 가상 객체(420 내지 440)는 세계 좌표들의 세트에 따라 디스플레이되며, 예를 들어 세계 좌표들의 세트(X2, Y2, Z2)에 따라 3D 닭(420)을 디스플레이하거나 또는 세계 좌표들의 세트(X3, Y3, Z3)에 따라 3D 툴박스 객체들(440)을 디스플레이한다. 도 4a에 도시되지 않았지만, 3D 툴박스 객체들(440) 각각은 세계 좌표들의 그 자신의 세트에 따라 디스플레이될 수 있다.
일부 실시예들에서, 세계 좌표들의 세트(X2, Y2, Z2) 및 (X3, Y3, Z3)는 네이티브 사용자 CGR 환경(400)을 특성화하는 세계 좌표들의 세트(X1, Y1, Z1)와 상이하다. 따라서, 아래에서 상세히 설명될 바와 같이, 입체 가상 객체들(420 내지 440) 각각은 세계 좌표들의 개개의 세트들에 따라 이동될 수 있고, 가상 종이(405) 및 가상 종이(405) 내에서 디스플레이된 가상 객체들은 세계 좌표들의 개개의 세트에 따라 애니메이션화될 수 있다. 일부 다른 실시예들에서, 세계 좌표들의 세트(X2, Y2, Z2) 또는 (X3, Y3, Z3)는 네이티브 사용자 CGR 환경(400)을 특성화하는 세계 좌표들의 세트(X1, Y1, Z1)와 동일하다. 다시 말하면, 세계 좌표들의 세트들(X1, Y1, Z1),(X2, Y2, Z2), 및/또는 (X3, Y3, Z3)은 가교가능(bridgeable)하거나 서로소(disjoint)이다.
일부 실시예들에서, 가상 종이(405)의 주변부 내에서 또한 디스플레이되는 것은 순응형 가상 객체들, 예를 들어 2D 텍스트 "매트릭스"(410) 및 어포던스(affordance) "<"(412)이다. 2D 텍스트 "매트릭스"(410) 및 어포던스(412)는 가상 종이(405)의 윤곽 및/또는 표면에 순응하는 것으로 디스플레이된다. 순응형 가상 객체들(410, 412)이 세계 좌표들의 제1 세트(X1, Y1, Z1)에 의해 특성화되는 가상 종이(405)의 윤곽 및/또는 표면에 순응하고, 3D 닭(420)이 세계 좌표들의 제2 세트(X2, Y2, Z2)에 따라 디스플레이되기 때문에, 이들 가상 객체들(410, 412, 420)은 서로를 폐색(occlude)할 수 있다. 도 4a에 도시된 바와 같이, 2D 텍스트 "매트릭스"(410)는 가상 종이(405)의 전방 측의 표면 상에 떠 있는 것으로 보이고, 3D 닭(420)은 가상 종이(405) 내부에 있는 것으로 보인다. 이와 같이, 2D 텍스트 "매트릭스"(410)는 사용자(401)의 관점으로부터 3D 닭(420)의 앞에 있는 것으로(예를 들어, 그 상에 오버레이된 것으로) 보인다. 따라서, 2D 텍스트 "매트릭스"(410)는 가상 종이(405) 내부에서 3D 닭(420)의 볏(crest)의 일부를 폐색한다.
CGR 환경(400)에 디스플레이된 가상 종이(405)는 이전에 존재하는 시스템에서의 가상 종이와 상이하다. 종래의 3D 공간으로 제약될 때, 3D 가상 객체들은 전형적으로 종이 시트의 앞에(또는 그 상단에) 디스플레이된다. 이와 같이, 종래의 3D 공간에서, 3D 가상 객체들은 가상 종이 상의 다른 콘텐츠(예를 들어, 텍스트)를 폐색할 것이다. 반대로, 아래에서 상세히 설명될 바와 같이, 가상 종이(405)는 세계 좌표들의 세트(X1, Y1, Z1)에 의해 특성화되는 네이티브 사용자 CGR 환경(400)으로부터 다른 3D 세계, 예를 들어 세계 좌표들의 세트(X2, Y2, Z2)에 의해 특성화되는 3D 세계로의 포털(portal)일 수 있다. 이와 같이, 입체 가상 객체들(420 내지 440)은 가상 종이(405) 내로 삽입되고, 가상 종이(405) 내부에 있는 것으로 디스플레이된다. 이는 입체 가상 객체들(420 내지 440)이 용이한 판독을 위해, 연관된 텍스트(예를 들어, 2D 텍스트 "매트릭스"(410) 또는 어포던스(412))와 공존하게 허용하며, 그에 의해 시각적으로 만족스러운 페이지 레이아웃을 제공한다.
일부 실시예들에서, 상이한 세계 조명들은 상이한 가상 객체들을 조명한다. 일부 실시예들에서, 하나의 광원은 가상 종이(405) 내의 그리고 그 내부의(예를 들어, 가상 종이의 표면으로부터 임계 거리 내의) 가상 객체들의 하나의 세트를 조명하는 반면, 상이한 광원은 가상 종이(405)의 표면에 가까운 또는 그 상의 가상 객체들을 조명한다. 도 4a에서, 세계 좌표들의 제2 세트(X2, Y2, Z2)에 따라 가상 종이(405) 내에서 그리고 그 내부에서 디스플레이되는 입체 가상 객체인 3D 닭(420) 위의 광원은 3D 닭(420) 아래에 그림자(422)를 야기한다. 반대로, 가상 종이(405)의 표면에 가까운 (예를 들어, 가상 종이(405)의 표면으로부터 임계 거리 내의) 입체 가상 객체(430)는 그 아래에 그림자를 갖지 않는다. 추가로, 입체 가상 객체(430)의 일부, 예를 들어 가상 종이(405)의 표면으로부터 돌출되는 반짝이는 표면에 의해 도시된 바와 같이, 입체 가상 객체(430)는 세계 좌표들의 제1 세트(X1, Y1, Z1)에 의해 특성화되는 네이티브 사용자 CGR 환경(400)에서 광원에 의해 조명될 수 있다. 특히, 작고 강렬하며 스페큘러한(specular) 하이라이트들을 갖는 반짝이는 표면은 하이라이트들이 네이티브 사용자 CGR 환경(400)에서 광원으로부터의 확산 반사에 의해 야기된다는 것을 나타낸다.
도 4a가 세계 조명의 일 예를 예시하는 것에 유의해야 한다. 일부 다른 실시예들에서, 가상 종이(405) 내에서 디스플레이된 가상 객체들은 동일한 세계 조명을 공유한다. 추가로, 일부 실시예들에서, 동일한 광원은 가상 종이(405) 및 네이티브 사용자 CGR 환경(400) 둘 모두를 조명한다. 그러한 실시예들에서, 동일한 광원, 예를 들어 포인트, 스폿, 방향, 영역, 체적, 주변 광 등은 다수의 세계 좌표들에 따라 조명 효과를 제공할 수 있다. 예를 들어, 사용자(401), 2D 텍스트 "매트릭스"(410), 어포던스(412), 및 입체 가상 객체들(420 내지 440)은 하나의 세계 조명을 공유할 수 있고, 그러한 조명의 효과들은 다양한 세계 좌표들에 따라 상이할 수 있다.
일부 실시예들에서, 도 4a에 도시된 가상 종이(405)는 제2 측, 예를 들어 후면측을 갖는다. 도 4b는 일부 실시예들에 따른 가상 종이(405)의 후면측을 예시한다. 일부 실시예들에서, 가상 종이(405)의 후면측은 입체 가상 객체의 래스터화된 순응 표현을 포함한다. 당업계에 알려진 바와 같이, 래스터화는 픽셀들로 구성된 비트맵 이미지로 그래픽 컴포넌트들을 전환시키는 프로세스이다. 그래픽 컴포넌트들이 3D 객체들인 경우, 3D 객체들은 객체의 2D 이미지로 변환된다. 예를 들어, 가상 종이(405)(도 4a)의 전방 측 상의 3D 닭(420)이 래스터화되고, 3D 닭(420)의 2D 표현(420-B)은 도 4b에 도시된 바와 같이 후면측 상에서 생성되고 디스플레이된다. 마찬가지로, 가상 종이(405)(도 4a)의 전방 측 상의 3D 구 객체(430) 및 3D 툴박스 객체들(440-1, 440-2, 440-3, 440-4, 440-5)이 또한 래스터화되고, 3D 콘텐츠의 2D 표현들(430-B, 440-1-B, 440-2-B, 440-3-B, 440-4-B, 440-5-B)은 도 4b에 도시된 바와 같이 후면측 상에서 생성되고 디스플레이된다.
일부 실시예들에서, 가상 종이(405)는 반투명이다. 일부 실시예들에서, 래스터화된 순응 표현들(420-B, 430-B, 440-1-B, 440-2-B, 440-3-B, 440-4-B, 440-5-B)은 가상 종이(405)의 후면측 상에서 블러링된다. 3D 콘텐츠의 래스터화된 순응 표현들을 블러링하는 것에 부가하여, 가상 종이(405)의 후면측은 또한 블러링된 2D 콘텐츠, 이를테면 블러링된 2D 텍스트 "매트릭스"(410-B) 및 블러링된 2D 내비게이션 어포던스(412-B)를 포함한다. 가상 종이(405)의 전방 측으로부터의 콘텐츠의 블러링은, 반투명 가상 종이(405)가 사용자(401)의 네이티브 사용자 CGR 환경에 존재하면서, 가상 종이(405)의 전방 측 상의 콘텐츠를 여전히 암시하는 효과를 생성한다.
일부 실시예들에서, 가상 종이(405)의 디스플레이는 가상 종이(405)로 지향되는 입력에 응답하여 변환될 수 있다. 예를 들어, 입력은 사용자가 가상 종이(405)를 배치하거나, 비틀거나, 스윙(swing)하거나, 던지거나, 돌려지거나, 플립핑(flip)하거나, 회전시키거나, 구부리거나, 컬링(curl)하거나, 그리고/또는 접는 것일 수 있다. 입력을 수신하는 것에 응답하여, 가상 종이(405)의 윤곽은 일부 실시예들에서 변화된다. 예를 들어, 도 4c 내지 도 4e에 도시된 바와 같이, 가상 종이(405)는 전방으로부터 후방으로 돌려질 때 주름지게 되며, 예를 들어, 가상 종이(405)의 윤곽은 곡선들을 갖는다. 다른 예에서, 도 4f 및 도 4g에 도시된 바와 같이, 가상 종이(405)는 전방 측으로부터 후방 측으로 돌려지는 동안 비틀리거나 뒤틀린다. 이와 같이, 가상 종이(405)의 디스플레이는 평탄한 표면으로부터 만곡된 표면으로 변환되며, 만곡된 표면의 소정 부분들은 만곡된 표면의 다른 부분들에 의해 폐색된다. 예를 들어, 도 4f에서, 2D 텍스트의 일부는 가상 종이(405)의 만곡된 표면의 일부에 의해 폐색된다.
일부 실시예들에서, 가상 종이(405)로의 입력은 가상 종이(405)의 움직임들에 제한되지 않아서, 가상 종이(405)로 지향되는 사용자(401)로부터의 입력은 사용자(401)의 신체 포즈 변화를 포함한다. 예를 들어, 사용자(401)의 신체 포즈 변화는, 사용자(401)가 가상 종이(405)의 후면측으로 걷는 것 및/또는 상이한 각도로부터 가상 종이(405)를 보기 위해 CGR 디바이스(예를 들어, 도 1a의 디바이스(104) 또는 모바일 디바이스)를 틸팅하는 것을 포함할 수 있다. 일부 실시예들에서, 입력은 CGR 디바이스(104)(도 3)의 I/O 디바이스들 및 센서들(306) 및/또는 하나 이상의 통신 인터페이스들(308), 예를 들어 사용자가 버튼 또는 어포던스를 클릭하는 것, 사용자가 음성 커맨드들을 제공하는 것, 또는 하나 이상의 통신 인터페이스들(308)을 통해 원격 디바이스로부터 입력을 수신하는 것을 통해 획득된다.
도 4c 내지 도 4g에 도시된 바와 같이, 가상 종이(405)의 디스플레이의 변환 동안, 가상 종이(405)와 연관된 가상 콘텐츠들의 디스플레이가 또한 가상 종이(405)의 윤곽을 변환하는 것에 응답하여 변환된다. 예를 들어, 가상 종이(405)의 스윙에 응답하여 3D 닭 또는 3D 개를 던지는 것처럼, 3D 닭의 일부들은 가상 종이(405)의 일 측으로부터 돌출되고 있고(도 4c 내지 도 4e), 3D 개의 일부들은 가상 종이(405)의 일 측으로부터 돌출되고 있다(도 4f 및 도 4g). 부가적으로, 가상 종이(405) 상의 텍스트가 또한 변환되며, 예를 들어 텍스트 "닭"이 도 4c에서 기울어지고, 3D 개 아래의 텍스트의 단락은 도 4f에서 만곡되는 것으로 보인다. 이들 변환들은 도 4h 내지 도 4m을 참조하여 아래에서 더 상세히 설명된다.
도 4h 내지 도 4k를 참조하면, 도 4h 내지 도 4k는 일부 실시예들에 따른, 가상 종이(405)를 회전시키는 입력에 응답하여 가상 종이(405)의 디스플레이의 변환을 예시한다. 도 4h에서, 점선 화살표에 의해 표시된 바와 같은 입력에 응답하여, 가상 종이(405)의 디스플레이가 변환되고 가상 종이의 윤곽이 변화된다. 예를 들어, 가상 종이(405)가 사용자(401)(도시되지 않음)로부터 회전되거나 스윙 어웨이되는 것처럼, 가상 종이(405)의 우측 수직 에지는 더 짧은 것으로 보이고, 가상 종이(405)의 상단 및 하단 에지들은 기울어진다. 도 4i 내지 도 4k에 도시된 바와 같이, 가상 종이(405)가 수직 축(450)을 중심으로 추가로 회전됨에 따라, 가상 종이(405)의 우측 수직 에지는 점점 더 짧아지게 되고, 가상 종이(405)의 상단 및 하단 에지들은 추가로 기울어진다.
가상 종이(405)의 디스플레이를 변환하는 것에 부가하여, 가상 종이(405)의 주변부 내의 순응형 가상 객체들의 디스플레이가 동시에 변환된다. 순응형 가상 객체들의 디스플레이의 변화들에도 불구하고, 순응형 가상 객체들의 디스플레이는 여전히 가상 종이(405)의 디스플레이에 순응한다. 예를 들어, 도 4a에서, 순응형 가상 객체, 예를 들어 2D 텍스트 "매트릭스"(410)는 가상 종이(405)의 상단 에지에 평행한 것으로 디스플레이된다. 가상 종이(405)가 수직 축(450)을 중심으로 회전됨에 따라, 2D 텍스트 "매트릭스"(410)는 도 4h 내지 도 4k에서 기울어진 것으로 보이며, 이는 가상 종이(405)의 디스플레이와 일치한다.
도 4a를 참조하여 위에서 설명된 바와 같이, 가상 종이(405)는 세계 좌표들의 하나의 세트(X1, Y1, Z1)에 따라 디스플레이되는 반면, 입체 가상 객체들(420 내지 440)은 세계 좌표들의 상이한 세트들에 따라 디스플레이된다. 따라서, 가상 종이(405)가 세계 좌표들의 세트(X1, Y1, Z1)에서 수직 축(450)을 따라 회전될 때, 가상 종이(405)의 디스플레이는 세계 좌표들의 세트(X1, Y1, Z1)에 기초하여 변환된다. 반대로, 입체 가상 객체들의 디스플레이는 세계 좌표들의 상이한 세트(들)에 기초하여 변환된다.
예를 들어, 도 4h 내지 도 4k에 도시된 바와 같이, 가상 종이(405)가 회전되는 동안, 가상 종이(405)에 의해 사용자(도시되지 않음)로부터 멀리 운반되는 외관에 부가하여, 3D 닭(420)은 세계 좌표들의 상이한 세트에 따라 상이한 축(452)을 중심으로 회전된다. 게다가, 도 4k에 도시된 바와 같이, 일부 실시예들에서, 3D 가상 객체들(420 내지 440)의 변환은 세계 좌표들의 상이한 세트들에 기초하여 가상 종이(405)의 전방 측으로부터 3D 가상 객체들(420 내지 440)의 적어도 일부를 돌출시키는 것을 포함한다. 예를 들어, 3D 닭(420)이 세계 좌표들의 제2 세트(X2, Y2, Z2)에 기초하여 상이한 축(452)을 중심으로 회전됨에 따라, 부리, 머리의 일부, 및 3D 닭(420)의 재킷으로 덮인 날개의 일부는 도 4k에 도시된 바와 같이 가상 종이(405)의 전방 측 밖으로 돌출된다. 마찬가지로, 3D 구 객체(430)의 일부는 도 4j 및 도 4k에 도시된 바와 같이 가상 종이(405)의 전방 측 밖으로 돌출된다.
일부 실시예들에서, 가상 종이(405)의 제1 측의 주변부 내에서 디스플레이된 가상 객체들은 서로를 폐색한다. 예를 들어, 도 4a에서, 사용자(401)는 가상 종이(405) 앞에 서 있는 것으로 도시된다. 이와 같이, 가상 종이(405)는 사용자(401)의 사용자 포즈와 연관된 거의 직각인 시선으로부터인 것처럼 디스플레이된다. 거의 직각인 시선으로부터, 2D 텍스트 "매트릭스"(410)는 3D 닭(420)의 앞에 있는 것으로 보이고, 3D 닭(420)의 일부들을 폐색한다. 도 4h 및 도 4i에서, 가상 종이(405)가 사용자(401)의 사용자 포즈와 연관된 거의 직각인 시선으로부터 비스듬히 디스플레이됨에 따라, 2D 텍스트 "매트릭스"(410)는 3D 닭(420)의 상단 상에 떠 있는 것으로 보인다. 추가로, 도 4h 및 도 4i에서, 3D 닭(420)의 볏이 2D 텍스트 "매트릭스"(410)에 의해 여전히 폐색되지만, 가상 종이(405)가 수직 축(450)을 중심으로 회전됨에 따라 폐색이 감소된다. 도 4j에서, 가상 종이(405)가 추가로 회전됨에 따라, 체적 구역의 경사진 뷰가 디스플레이되어, 2D 텍스트 "매트릭스"(410)는 3D 닭(420)의 볏을 더 이상 폐색하지 않는다. 대신에, 2D 텍스트 "매트릭스"(410)는 가상 종이(405) 내의 가상 콘텐츠들을 드러내기 위해 3D 닭(420)의 볏의 측부 상에 있는 것으로 디스플레이된다. 또한, 도 4j에 도시된 바와 같이, 가상 종이(405) 내부에 있는 3D 닭(420)의 나머지는 폐색의 속성에 의해 가상 종이(405)의 경계들 뒤로 사라진다.
일부 실시예들에서, 도 4c 내지 도 4k에 예시된 입체 객체 변환들의 디스플레이가 입력을 수신하는 것에 응답하여 수행되며 예를 들어 사용자가 가상 종이(405)를 돌리거나(도 4c 내지 도 4e), 비틀거나(도 4f 및 도 4g), 또는 회전시키는 것(도 4h 내지 도 4k)에 응답하여 가상 종이(405)의 전방 측으로부터 3D 콘텐츠가 돌출되는 것에 유의해야 한다. 일부 실시예들에서, 입체 객체들은 가상 종이(405)로 지향되는 사용자 입력들 없이 변환될 수 있다. 도 4l 및 도 4m은 일부 실시예들에 따른, 사용자 입력들 없이 가상 종이(405)의 주변부 내에서 디스플레이되는 입체 가상 객체(460)를 변환하는 것을 예시한다.
도 4l 및 도 4m에서, 입체 가상 객체(460), 예를 들어 웹 페이지에서 디스플레이된 3D 닭(460)에 부가하여, 순응형 가상 객체들, 이를테면 2D 텍스트 "닭"(462) 및 2D 텍스트 설명(464)이 또한 가상 종이(405)의 주변부 내에서 디스플레이된다. 도 4l 및 도 4m에서, 가상 종이(405)로 지향되는 사용자 입력들 없이, 가상 종이(405) 및/또는 순응형 가상 객체들(462, 464)의 어떠한 변환도 존재하지 않는다. 가상 종이(405)가 고정되게 유지되는 동안, 3D 닭(460)은 애니메이션화되며, 예를 들어 도 4l의 3D 닭(460)의 머리 포지션은 도 4m의 3D 닭(460)의 머리 포지션과 상이하다. 다른 세계들에서, 3D 닭(460)의 디스플레이는 세계 좌표들의 그 자신의 세트(예를 들어, 도 4a를 참조하여 설명된 세계 좌표들의 제2 세트(X2, Y2, Z2))에 기초하여 변환되며, 그 세트는, 가상 종이(405) 및 순응형 가상 객체들(462, 464)이 기초하는 세계 좌표들의 제1 세트와 상이하다.
도 4n 및 도 4o를 참조하면, 도 4n 및 도 4o는 일부 실시예들에 따른, 네이티브 사용자 CGR 환경(400) 내의 포털로서 가상 종이(405)를 예시한다. 위에서 설명된 바와 같이, 도 4a에서, 입체 객체(420)는 가상 종이(405)의 제1 측의 주변부 내에서 세계 좌표들의 제2 세트(X2, Y2, Z2)에 따라 디스플레이된다. 추가로, 도 4a를 참조하여 위에서 설명된 바와 같이, 가상 종이(405)는 네이티브 사용자 CGR 환경(400)을 특성화하는 세계 좌표들의 제1 세트(X1, Y1, Z1)에 따라 디스플레이된다. 일부 실시예들에서, 가상 종이(405)는 포털이다.
예를 들어, 도 4n에서, 3D 닭(420)은 가상 종이(405)의 주변부 밖으로 이동되고, 네이티브 사용자 CGR 환경(400) 내에 배치될 수 있다. 일단 네이티브 사용자 CGR 환경에 배치되면, 3D 닭(420)은 세계 좌표들의 제1 세트(X1, Y1, Z1)에 따라 디스플레이된다. 추가로, 네이티브 사용자 CGR 환경에 진입할 시에, 네이티브 사용자 CGR 환경 내의 사용자(401) 또는 사용자(401)를 표현하는 아바타는 3D 닭(420)과 상호작용할 수 있으며, 예를 들어, 볏 및/또는 부리 등을 페인팅한다.
다른 예에서, 도 4o에서, 사용자(401) 또는 사용자(401)를 표현하는 아바타는, 예를 들어 가상 종이(405)에 의해 표현되는 포털에 진입하는 커맨드와 같은 사용자 입력 또는 사용자(405)가 가상 종이(405)의 전방 측의 주변부에 진입하는 것을 표시하는 사용자 포즈 변화를 통해, 경계지어진 표면(405)의 주변부 내로 이동될 수 있다. 일단 세계 좌표들의 제1 세트(X1, Y1, Z1)로부터 세계 좌표들의 제2 세트(X2, Y2, Z2)로의 뷰잉(viewing) 좌표 변화를 표시하는 그러한 사용자 입력을 수신하면, 일부 실시예들에서, 가상 종이(405) 내의 입체 가상 객체가 조정된다. 예를 들어, 3D 닭(420)의 크기 또는 사용자(401) 또는 사용자(401)를 표현하는 아바타로부터의 3D 닭(420)의 거리는 3D 닭(420)의 뷰잉을 수용하기 위해 세계 좌표들의 제2 세트(X2, Y2, Z2)에 기초하여 조정될 수 있다.
도 5a 내지 도 5m은 일부 실시예들에 따른, 가상 종이(505) 내의 가상 콘텐츠와의 상호작용들을 예시한다. 일부 실시예들에서, 가상 종이(505)는 구역의 주변부 둘레에서 에지들 또는 경계들에 의해 마킹된 평탄하거나 또는 체적일 수 있는 경계지어진 구역(예를 들어, 평탄한 또는 만곡된 표면을 갖는 구역)이다. 이와 같이, 가상 종이(505)는 때때로 또한 경계지어진 구역(505)으로 아래에서 지칭된다. 일부 실시예들에서, 경계지어진 구역(505)은 세계 좌표들의 제1 세트, 예를 들어 네이티브 사용자 CGR 환경을 특성화하는 세계 좌표들의 세트(X1, Y1, Z1)에 기초하여 디스플레이된다. 일부 실시예들에서, 경계지어진 구역(505)은 경계지어진 구역(505)의 제1 측(예를 들어, 전방 측)의 주변부 내에 순응형 가상 객체(예를 들어, 2D 텍스트 "공룡 커터(Dinosaur Cutter)들"(522))를 포함한다. 일부 실시예들에서, 경계지어진 구역(505) 내의 가상 콘텐츠(아래에서 "콘텐츠"로 또한 지칭됨)는 또한 하나 이상의 입체 가상 객체들을 포함한다. 예를 들어, 도 5a에서, 경계지어진 구역(505)을 갖는 콘텐츠는 제1 입체 가상 객체(512-1)(예를 들어, 큰 3D 공룡 커터(512-1)) 및 제2 입체 가상 객체(512-2)(예를 들어, 작은 3D 공룡 커터(512-2))를 포함한다. 일부 실시예들에서, 순응형 가상 객체(522)는 하나 이상의 입체 가상 객체들(512)에 대한 상대적인 포지션에 디스플레이되며, 예를 들어 2D 텍스트 "공룡 커터들"(522)은 세계 좌표들의 제1 세트(X1, Y1, Z1)에 따라 측정된 거리로 3D 공룡 커터들(512) 위에 있다. 아래에서 설명될 바와 같이, 순응형 가상 객체(2D 텍스트 "공룡 커터들"(522))가 사용자 입력에 응답하여 이동될 때, 순응형 가상 객체(예를 들어, 2D 텍스트 "공룡 커터들"(522))와 입체 가상 객체들(512) 사이의 상대적인 포지션이 이동 동안 유지된다.
일부 실시예들에서, 위에서 설명된 바와 같이, 입체 가상 객체들(512)은, 예를 들어 서로 상이한 그리고/또는 네이티브 사용자 CGR 환경을 특성화하는 세계 좌표들의 세트와 상이한, 세계 좌표들의 상이한 세트들에 따라 디스플레이될 수 있다. 이와 같이, 입체 가상 객체들(512)의 디스플레이는 세계 좌표들의 개개의 세트들에 기초하여 변환될 수 있다. 도 5a에서, 큰 3D 공룡 커터(512-1)는 세계 좌표들의 제2 세트(X2, Y2, Z2)에 따라 디스플레이되고, 작은 3D 공룡 커터(512-2)는 세계 좌표들의 제3 세트(X3, Y3, Z3)에 따라 디스플레이된다. 따라서, 일부 실시예들에서, 큰 3D 공룡 커터(512-1) 및 작은 3D 공룡 커터(512-2)는 세계 좌표들의 상이한 세트들에 따라 상이한 방향들, 치수들 등으로 애니메이션화된다.
도 5a의 점선 화살표에 의해 표시된 바와 같이, 경계지어진 구역(505) 내의 콘텐츠로 지향되는 입력이 수신되며, 여기서 입력은 세계 좌표들의 제1 세트(X1, Y1, Z1)에 따른 방향, 예를 들어 네이티브 사용자 CGR 환경의 경계지어진 구역(505) 내에서의 Z1 축을 따른 콘텐츠의 상향 스크롤링으로 이루어진다. 상향 스크롤링 입력을 수신하는 것에 응답하여, 경계지어진 구역(505)의 주변부 내의 콘텐츠는 세계 좌표들의 제1 세트(X1, Y1, Z1)에 기초하여 상향으로 이동된다. 예를 들어, 상향 스크롤링의 결과를 도시하는 도 5b에서, 2D 텍스트 "공룡 커터"(522)는 상향으로 이동되어, 경계지어진 구역(505)으로부터 사라지며, 입체 가상 객체들(512)은 또한 세계 좌표들의 제1 세트(X1, Y1, Z1)에 따라, 경계지어진 구역(505)의 상단 에지에 더 가깝게 상향으로 이동된다.
콘텐츠를 상향으로 이동시키는 것에 부가하여, 입체 가상 객체들(512)은 세계 좌표들의 개개의 세트들에 따라 애니메이션화된다. 예를 들어, 도 5a는, 작은 3D 공룡 커터(512-2)가 경계지어진 구역(505)의 주변부로부터 임계 거리 내에 있을 때, 작은 3D 공룡 커터(512-2)가 경계지어진 구역(505)의 전방 표면 내로 평탄화되거나 그리고/또는 그의 반대 측으로 후퇴되는 것으로 보여지는 것을 예시한다. 추가로, 평탄화된 작은 3D 공룡 커터(512-2)는 경계지어진 구역(505)의 하단 에지에 의해 폐색된다. 다른 예에서, 도 5b는, 상향 스크롤링에 응답하여, 큰 3D 공룡 커터(512-1)가 경계지어진 구역(505)의 상단 에지에 더 가깝게 이동됨에 따라, 큰 3D 공룡 커터(512-1)가 Y2 축을 따라 회전되므로, 그것이 경계지어진 구역(505)의 상단 에지에 의해 폐색되기 위한 준비 시에 경계지어진 구역 내로 평탄화되는 것으로 보여지는 것을 예시한다. 추가로, 도 5b에 도시된 바와 같이, 일단 작은 3D 공룡 커터(512-2)가 상향으로 그리고 경계지어진 구역(505)의 전방 측의 주변부로부터 임계 거리를 넘어 이동되면, 예를 들어, 작은 3D 공룡 커터(512-2)가 상향으로 이동되어 그 전체가 경계지어진 구역(505) 내에서 디스플레이되면, 작은 3D 공룡 커터(512-2)는 작은 3D 공룡 커터(512-2)의 상이한 관점을 제공하기 위해 Y3 축을 따라 회전된다. 그 결과, 작은 3D 공룡 커터(512-2)의 일부가 경계지어진 구역(505)의 전방 측으로부터 돌출된다.
도 5c 및 도 5d는 일부 실시예들에 따라, 경계지어진 구역(505)이 평탄하게 놓일 때, 경계지어진 구역(505)의 전방 측의 주변부 내에서 디스플레이된 콘텐츠와 상호작용하는 것을 예시한다. 일부 실시예들에서, 경계지어진 구역(505)의 디스플레이가 사용자 입력을 수신하는 것에 응답하여 변환될 때, 예를 들어 아래에 놓이거나 세계 좌표들의 제1 세트(X1, Y1, Z1)(도시되지 않음)의 X1 축을 중심으로 경계지어진 구역(505)을 회전시킬 때, 순응형 가상 객체(522)는 그에 따라, 경계지어진 구역(505)의 윤곽 변환과 정렬되게 유지하기 위해 변환된다. 예를 들어, 도 5c에서, 일단 경계지어진 구역(505)이 평탄하게 놓이면, 2D 텍스트 "공룡 커터들"(522)은 또한 경계지어진 구역(505)의 전방 표면에 순응하기 위해 평탄하게 놓인다. 도 5c에서, 도 5d에 도시된 바와 같이, 점선 화살표에 의해 표시된 바와 같은 스크롤링 입력에 응답하여, 2D 텍스트 "공룡 커터들"(522)은 스크롤링 입력의 방향으로 이동되고, 입체 가상 객체들(512)에 대한 상대적인 포지션을 유지한다.
순응형 가상 객체(예를 들어, 2D 텍스트 "공룡 커터들"(522))의 변환과는 상이하게, 입체 가상 객체들(512)은 경계지어진 구역(505) 아래에 놓는 입력에 응답하여 세계 좌표들의 상이한 세트들에 따라 애니메이션화된다. 도 5c에서, 3D 공룡 커터들(512)은 경계지어진 구역(505)의 전방 측으로부터 돌출되며, 예를 들어 개개의 세트의 세계 좌표들에 기초하여 직립하거나 회전된다. 그 결과, 도 5a 및 도 5b에 도시된 바와 같이, 하나 위에 다른 것 또는 하나의 상단 상에 다른 것으로서 디스플레이되는 대신에, 도 5c 및 도 5d에서, 3D 공룡 커터들(512)은 줄지어 또는 하나가 다른 것의 앞에 있는 것처럼 디스플레이된다. 따라서, 점선 화살표에 의해 표시된 바와 같은 스크롤링 입력에 응답하여, 3D 공룡 커터들(512)은 전방 행으로부터 후방 행으로 행 단위로 스크롤링된다.
도 5d는 또한 일부 실시예들에서, 작은 3D 공룡 커터(512-2)가 경계지어진 구역(505)의 에지에 가깝게, 예를 들어 경계지어진 구역(505)의 주변부로부터 임계 거리 내에 있을 때, 작은 3D 공룡 커터(512-2)가 세계 좌표들의 제3 세트(X3, Y3, Z3)(도시되지 않음)에 기초하여 X3 축을 중심으로 틸팅되거나, 접히거나, 또는 회전된다는 것을 예시한다. 이와 같이, 작은 3D 공룡 커터(512-2)는 경계지어진 구역(505)의 표면의 반대 측을 향해 후퇴되고, 작은 3D 공룡 커터(512-2)의 일부는 경계지어진 구역(505)의 에지에 의해 폐색된다.
도 5e 내지 도 5h는 일부 실시예들에 따른, 경계지어진 구역(505)의 제2 측(예를 들어, 후면측)을 디스플레이하는 것을 예시한다. 도 4a 내지 도 4o를 참조하여 위에서 설명된 가상 종이(405)와 유사하게, 일부 실시예들에서, 경계지어진 구역(505)은 전방 측으로부터 입체 가상 객체의 래스터화된 순응 표현을 포함하는 후면측을 갖는다. 예를 들어, 도 5e에서, 경계지어진 구역의 전방 측으로부터의 콘텐츠는 입체 객체(520), 예를 들어 3D 닭(520)을 포함한다. 도 5f에서, 경계지어진 구역(505)의 대응하는 후면측은 전방 측 상에 디스플레이된 3D 닭(520)의 래스터화된 순응 표현에 대응하는 닭(520-B)의 블러링된 이미지를 포함한다.
도 5g에서, 점선 화살표에 의해 표시된 바와 같이, 상향 스크롤링 입력은 경계지어진 구역(505)의 제1 측의 주변부 내의 콘텐츠로 지향된다. 상향 스크롤링 입력을 수신하는 것에 응답하여, 도 5f에 도시된 바와 같이, 3D 닭(520)은 상향으로 이동되고, 다른 입체 가상 객체, 예를 들어 웹 페이지 내의 3D 개(524)의 일부가 경계지어진 구역(505) 내에 나타난다. 도 5g에 도시되지 않았지만, 상향 스크롤링이 계속됨에 따라, 3D 개(524)는 경계지어진 구역(505)의 중심에 디스플레이될 것이다. 상향 스크롤링 입력에 응답하여, 도 5h에 도시된 바와 같이, 경계지어진 구역(505)의 대응하는 후면측은 전방 측 상에 디스플레이된 3D 개(524)의 래스터화된 순응 표현에 대응하는 개(524-B)의 블러링된 이미지를 포함한다.
일부 실시예들에서, 경계지어진 구역(505)의 후면측 상의 콘텐츠(예를 들어, 닭(520-B)(도 5f) 또는 개(524-B)(도 5h)의 블러링된 이미지 또는 2D 텍스트의 블러링된 이미지들)는 또한 입력을 수신하는 것, 예를 들어 블러링된 이미지들을 위로 그리고/또는 아래로 스크롤링하는 것에 응답하여 이동될 수 있다. 후면측 상의 콘텐츠로 지향되는 입력을 수신하는 것에 응답하여, 경계지어진 구역(505)의 전방 측 상의 대응하는 입체 가상 객체(들)가 그에 따라 이동될 수 있다. 부가적으로, 위에서 설명된 바와 같이, 대응하는 입체 가상 객체(들)를 이동시키는 동안, 대응하는 입체 가상 객체(들)는 또한 개개의 세트의 세계 좌표들에 따라 애니메이션화될 수 있다.
도 5i는 일부 실시예들에 따른, 경계지어진 구역(505)에서 큰 입체 가상 객체를 디스플레이하는 것을 예시한다. 일부 실시예들에서, 입체 가상 객체가 네이티브 사용자 CGR 환경 내부에 끼워맞춰지기에는 너무 클 때, 입체 가상 객체는 경계지어진 구역(505) 내에 배치된다. 예를 들어, 원양 정기선이 네이티브 사용자 CGR 환경 내부에 끼워맞춰지기에는 너무 클 때, 원양 정기선은 경계지어진 구역(505) 내부에 배치될 수 있다. 도 5i에서, 원양 정기선(530)은 세계 좌표들(X2, Y2, Z2)에 기초하여 경계지어진 구역(505) 내에서 디스플레이되고, 경계지어진 구역(505)의 크기에 비례하여 스케일링된다. 원양 정기선(530)이 경계지어진 구역(505) 내에 배치된 이후, 사용자(401)는 전체 스케일로 그리고 적절한 거리로부터 원양 정기선(530)을 보기 위하여, 경계지어진 구역(505)을 통해 응시할 수 있다. 위에서 설명된 다른 입체 가상 객체들과 유사하게, 경계지어진 구역(505) 내부에서 디스플레이되는 원양 정기선(530)은 그 자신의 세트의 세계 좌표들(X2, Y2, Z2)에 따라 애니메이션화될 수 있다. 예를 들어, 도 5i에서, 원양 정기선(530)의 뱃머리(또는 전단)가 경계지어진 구역(505)의 전방 측의 표면으로부터 튀어나와서, 그것이 입체 방식으로 제시될 때 사용자(401)에게 더 가까워지도록, 원양 정기선(530)은 떠 있거나 항해할 수 있다. 이와 같이, 사용자(401)는 원양 정기선(530)의 뱃머리를 가까운 거리에서 검사할 수 있다.
일부 실시예들에서, 원양 정기선(530)의 속성들, 예를 들어, 거리, 방향, 배향, 스케일, 이동 속도 등이 입력에 응답하여 추가로 조정될 수 있다. 예를 들어, 경계지어진 구역(505)으로 지향되는 입력에 응답하여, 원양 정기선(530)은 경계지어진 구역(505) 내에서 회전될 수 있다. 이와 같이, 원양 정기선(530)의 선미(stern)(또는 후방)는 사용자(401)에 더 가까울 것이고, 사용자는 원양 정기선(530)의 선미를 가까운 거리에서 검사할 수 있다. 일단 사용자(401)가 원양 정기선(530)을 조사하는 것을 종료하면, 경계지어진 구역(505)의 표면으로부터 돌출되는 원양 정기선(530)의 일부에 대응하는 사용자(401)로부터의 입력(예를 들어, 푸시를 시그널링하는 제스처)은 원양 정기선(530)이 바다로 항해하게 할 수 있다.
부가적으로, 도 4a를 참조하여 위에서 설명된 바와 같이, 일부 실시예들에서, 상이한 세계 조명들은 환경의 상이한 가상 객체들 및/또는 상이한 부분들을 조명한다. 예를 들어, 세계 좌표들(X2, Y2, Z2)에 따라 경계지어진 구역(505) 내에서 그리고 그 내부에서 디스플레이되는 입체 가상 객체인 원양 정기선(530)에서, 원양 정기선(530) 위의 태양 광(541)은 원양 정기선(530)에 음영을 적용한다. 그 결과, 원양 정기선(530)의 그림자 및/또는 반사가 원양 정기선(530) 아래의 물 상에 나타날 수 있다. 도 5i에서, 사용자(401)의 관점으로부터, 원양 정기선(530) 위에 그리고 그 뒤에 있는 세계 조명(예를 들어, 태양 광(541))은 사용자(401)를 향한 그림자 및/또는 반사를 야기한다. 반대로, 사용자(401)의 그림자(402)는 네이티브 사용자 CGR 환경 내의 상이한 광원(543), 예를 들어 네이티브 사용자 CGR 환경에 대한 세계 좌표들(X1, Y1, Z1)에 따라 사용자(401)의 후방으로부터 광을 발하는 광원(543)을 표시한다. 그 결과, 사용자(401)의 관점으로부터, 그림자(402)는, 예를 들어 원양 정기선(530)의 그림자 및/또는 반사(531)의 반대 방향으로 사용자(401)의 앞에 그리고 그로부터 멀리 있다. 추가로, 순응형 가상 객체, 예를 들어 경계지어진 구역(505)의 표면으로부터 임계 거리 내에서(예를 들어, 경계지어진 구역(505)의 표면 상에서) 디스플레이되고 네이티브 사용자 CGR 환경에 가까운 텍스트 "원양 정기선"(532)은 원양 정기선(530)으로부터 상이한 세계 조명에 의해 조명될 수 있다. 그 결과, 사용자(401)를 향한 텍스트 "원양 정기선"(532)의 음영이 존재하지 않는다.
도 5i가 세계 조명의 일 예를 예시하는 것에 유의해야 한다. 일부 다른 실시예들에서, 경계지어진 구역(505) 내에서 디스플레이된 입체 및 순응형 가상 객체들은 동일한 세계 조명을 공유한다. 추가로, 일부 실시예들에서, 동일한 광원은 경계지어진 구역(505) 내 그리고 경계지어진 구역(505) 외부 둘 모두에서 조명한다. 그러한 실시예들에서, 동일한 광원, 예를 들어 포인트, 스폿, 방향, 영역, 체적, 주변 광 등은 다수의 세계 좌표들에 따라 조명을 제공할 수 있다. 예를 들어, 사용자(401), 텍스트 "원양 정기선"(532), 및 원양 정기선(530)은 하나의 세계 조명을 공유할 수 있고, 그러한 조명의 효과들은 다양한 세계 좌표들에 따라 상이할 수 있다.
도 5j는 일부 실시예들에 따른, 오디오 신호들을 시각화하는 입체 가상 객체들을 디스플레이하고 그와 상호작용하는 것을 예시한다. 오디오 신호들은 종래의 3D 환경에서 가시화하기가 어렵다. 예를 들어, 음악의 단편을 표현하는 오디오 신호들은 친숙한 물리적 치수들 또는 조명 메타포(metaphor)들에 부착되지 않을 수 있다. 따라서, 이전에 존재하는 오디오 시스템들 또는 전자기파 시각화 시스템들 및 방법들은 종종 2D 표현으로 제한된다. 경계지어진 구역(505)을 사용하여, 오디오 신호들은 일부 실시예들에 따라 입체 가상 객체들에 의해 시각화될 수 있다.
예를 들어, 도 5j에서, 입체 가상 객체들(540-1, 540-2)이 경계지어진 구역(505) 내에서 디스플레이된다. 일부 실시예들에서, 입체 가상 객체들은 오디오 신호들의 시각적 표현들에 대응한다. 예를 들어, 경계지어진 구역(505)은 음악을 시각화하기 위해 입체 가상 객체들(540)을 포함한다. 위에서 설명된 다른 입체 가상 객체들과 유사하게, 경계지어진 구역(505)에서 디스플레이된 입체 가상 객체들(540)은 세계 좌표들의 개개의 세트들에 따라 애니메이션화될 수 있다. 음악이 재생됨에 따라, 입체 가상 객체들(540)은 음악의 속성들을 나타내기 위해 애니메이션화되며, 예를 들어 입체 객체들(540)은 더 크게 성장하거나, 또는 시끄러운 금관 악기 연주에 대응하는 밝은 색상으로 변화되거나 조용하고 소프트한 현악기 연주에 대응하는 어두운 색상으로 수축 또는 변화될 수 있다. 추가로, 음악의 속성들이 변화됨에 따라, 입체 가상 객체들(540)은 주위로 움직이고, 예를 들어 경계지어진 구역(505)의 전방 표면으로부터 돌출된다. 따라서, 입체 가상 객체들(540)을 통한 음악 시각화는 사용자(401)에게 다차원 경험을 제공한다.
추가로, 일부 실시예들에서, 입체 가상 객체들(540)의 속성들, 예를 들어 크기, 색상, 애니메이션 속도 등이 입력에 응답하여 조정된다. 예를 들어, 사용자(401)는 입체 가상 객체(540-1)를 터치하거나, 그것을 주위로 이동시키거나, 그것을 날개하거나, 또는 그것을 경계지어진 구역(505) 밖으로 끌어당길 수 있다. 일부 실시예들에서, 입체 가상 객체들(540)은 그들이 표현하는 오디오 신호들과 연관된다. 이와 같이, 입체 가상 객체들(540)의 속성들에 대한 변화들은 또한 대응하는 오디오 신호들을 변화시킨다. 따라서, 입체 가상 객체들(540)과의 상호작용은 입체 가상 객체들(540)이 표현하는 대응하는 음악을 변경할 수 있다.
도 5k 내지 도 5m은 일부 실시예들에 따른, 경계지어진 구역(505)의 주변부 내에서 디스플레이된 지도(550)와 상호작용하는 것을 도시한다. 이전에 존재하는 시스템들에서, 지도는 전형적으로 영역의 2D 표현 또는 3D 표현 중 어느 하나를 갖는다. 도 5k에서, 지도(550)는 경계지어진 구역(505) 내에서 디스플레이된다. 이전에 존재하는 시스템들에서의 지도들과 유사하게, 지도(550)는 상호작용형이고, 예를 들어, 지도(550)를 패닝(pan) 및/또는 줌(zooming)하는 등이다. 그러나, 이전에 존재하는 시스템들에서의 지도들과는 상이하게, 지도(550)는 입체 가상 객체들 및 비-입체 가상 객체들(예를 들어, 2D 텍스트 또는 2D 지도 이미지) 둘 모두를 포함할 수 있다.
예를 들어, 도 5k에 도시된 바와 같이, 경계지어진 구역(505)의 주변부 내의 하위구역(552)이 지정된다. 도 5l에 도시된 바와 같이, 하위구역(552)을 지정하는 것에 응답하여, 입체 가상 객체들(560)이 하위구역(552)의 주변부 내에서 디스플레이된다. 도 5l에서, 입체 가상 객체들(560)은, 예를 들어 3D 고층 빌딩들(560-1, 560-3) 및 3D 피라미드(560-2)를 포함한다. 이들 입체 가상 객체들(560)은 하위구역(552)의 주변부 내의 지도(550)의 일부, 예를 들어 지도(550) 상에 라벨링된 바와 같은 마켓 스트리트에 가까운 영역의 3D 뷰를 표현한다. 도 5l에 도시되지 않았지만, 일부 실시예들에서, 입체 가상 객체들(560)은 또한 3D 거리 표지판들, 3D 신호등들, 및/또는 실시간 교통량(예를 들어, 이동중인 자동차들 및/또는 버스들) 등을 포함할 수 있다. 일부 실시예들에서, 하위구역(552)의 주변부 외부에는 순응형 가상 객체들, 예를 들어 거리들/도로들 및 도로 라벨들을 디스플레이하는 2D 지도가 디스플레이된다. 이와 같이, 입체 가상 객체들(560) 및 비-입체 가상 객체들(예를 들어, 경계지어진 구역(505) 내의 지도의 나머지)은 경계지어진 구역(505)의 주변부 내에서 공존한다.
일부 실시예들에서, 경계지어진 구역(505) 내의 하위구역(552)의 위치는 네이티브 사용자 CGR 환경을 특성화하는 세계 좌표들의 세트에 따라 고정된다. 다시 말하면, 지도(550)가 이동됨에 따라, 하위구역(552)의 위치는, 하위구역(552)이 경계지어진 구역(505) 내의 위치에 고정된 윈도우를 여는 것처럼, 경계지어진 구역(505) 내에서 변화되지 않는다. 이와 같이, 경계지어진 구역(505)의 에지들에 대한 하위구역(552)의 거리들이 고정된다. 그러한 실시예들에서, 지도(550)가 이동됨에 따라, 지도 콘텐츠는 윈도우 내외로 슬라이딩된다. 일부 실시예들에서, 윈도우 내로 슬라이딩되는 콘텐츠는 대응하는 입체 가상 콘텐츠로 변환되고, 하위구역(552)의 주변부 밖으로 슬라이딩되는 콘텐츠는 대응하는 순응형 가상 콘텐츠로 변환된다.
예를 들어, 도 5l에서, 점선 화살표에 의해 표시된 바와 같이, 경계지어진 구역(505) 내의 지도(550)로 지향되는 패닝 입력이 검출된다. 경계지어진 구역(505)의 우측 에지를 향한 패닝 입력을 수신하는 것에 응답하여, 지도(550)는 우측으로 이동된다. 그 결과, 입체 가상 객체(560)의 적어도 일부가 하위구역(552)의 주변부 밖으로 이동된다. 일단 하위구역(552)의 주변부 밖으로 이동되면, 일부 실시예들에서, 입체 가상 객체들(560) 중 적어도 일부는 하나 이상의 순응형 가상 객체들, 예를 들어 마켓 스트리트에 가까운 영역에 대한 거리들/도로들 및 도로 라벨들을 디스플레이하는 2D 지도로 변환된다. 일부 실시예들에서, 경계지어진 구역(505)의 우측 에지를 향한 패닝 입력을 수신하는 것에 응답하여, 지도(550) 상의 다른 위치/영역은 하위구역(552)과 연관된 위치, 예를 들어 잭슨 스트리트에 근접한 영역으로 이동된다. 따라서, 도 5l에 도시된 바와 같은 잭슨 스트리트에 근접한 2D 거리들/도로들 및/또는 도로 라벨들은 대응하는 3D 객체들, 예를 들어 도 5m에 도시된 바와 같은 잭슨 스트리트에 근접한 작은 3D 빌딩들의 클러스터로 변환되고, 하위구역(554)의 주변부 내부에서 디스플레이된다.
도면들에 도시되지 않았지만, 일부 실시예들에서, 네이티브 사용자 CGR 환경을 특성화하는 세계 좌표들의 세트에 기초한 하위구역(552)의 위치는 지도(550) 상의 콘텐츠와 연관(또는 그에 부착)된다. 예를 들어, 도 5l에서, 하위구역(552)의 위치는 마켓 스트리트에 가까운 영역과 연관될 수 있다. 그러한 실시예들에서, 경계지어진 구역(505) 내에서 디스플레이된 콘텐츠가 이동(예를 들어, 패닝 또는 드래깅)되고 있는 동안, 하위구역(552)의 위치는 지도(550) 상의 연관된 콘텐츠와 함께 이동된다. 그 결과, 하위구역(522)의 주변부 내에서 디스플레이되는 입체 가상 객체들(560)은 지도(550) 상의 콘텐츠의 나머지와 함께 이동된다. 다시 말하면, 지도(550)를 패닝할 때, 지정된 하위구역 내의 입체 가상 객체들(560)은 지도(550)의 나머지와 함께 이동된다.
도 6a 및 도 6b는 일부 실시예들에 따른, 경계지어진 표면의 주변부 내에서 입체 가상 콘텐츠를 디스플레이하기 위한 방법(600)의 흐름도를 표현한다. 일부 실시예들에서, 방법(600)은 하나 이상의 프로세서들, 비일시적 메모리, 및 하나 이상의 디스플레이들을 갖는 디바이스에 의해 수행된다. 일부 실시예들에서, 방법(600)은 하드웨어, 펌웨어, 소프트웨어, 또는 이들의 조합을 포함하는 프로세싱 로직에 의해 수행된다. 일부 실시예들에서, 방법(600)은 비일시적 컴퓨터 판독가능 매체(예를 들어, 메모리)에 저장된 명령어들(예를 들어, 코드)을 실행하는 프로세서 및/또는 제어기(예를 들어, 도 1a, 도 1b, 및 도 2의 제어기(102))에 의해 수행된다. 간략하게, 일부 상황들에서, 방법(600)은, 네이티브 사용자 컴퓨터-생성 현실(CGR) 환경 내에서 경계지어진 표면을 디스플레이하는 단계 - 경계지어진 표면은 네이티브 사용자 CGR 환경을 특성화하는 세계 좌표들의 제1 세트에 기초하여 디스플레이됨 -; 및 경계지어진 표면의 제1 측의 주변부 내에서 제1 입체 가상 객체를 디스플레이하는 단계 - 제1 입체 가상 객체는 네이티브 사용자 CGR 환경을 특성화하는 세계 좌표들의 제1 세트와 상이한 세계 좌표들의 제2 세트에 따라 디스플레이됨 - 를 포함한다.
방법(600)은 블록(602)에서, 디바이스가 네이티브 사용자 컴퓨터-생성 현실(CGR) 환경 내에서 경계지어진 표면을 디스플레이하는 것으로 시작하며, 여기서 경계지어진 표면은 네이티브 사용자 CGR 환경을 특성화하는 세계 좌표들의 제1 세트에 기초하여 디스플레이된다. 예를 들어, 도 4a는 세계 좌표들의 제1 세트(X1, Y1, Z1)에 기초하여, 경계지어진 표면(405)을 디스플레이하는 것을 예시한다. 도 4a는, 세계 좌표들의 제1 세트(X1, Y1, Z1)가 사용자 또는 사용자(401)를 표현하는 아바타가 위치되는 네이티브 사용자 CGR 환경(400)을 특성화하는 것을 추가로 예시한다.
방법(600)은 블록(604)에서, 디바이스가 경계지어진 표면의 제1 측의 주변부 내에서 제1 입체 가상 객체를 디스플레이하는 것으로 계속되며, 여기서 제1 입체 가상 객체는 네이티브 사용자 CGR 환경을 특성화하는 세계 좌표들의 제1 세트와 상이한 세계 좌표들의 제2 세트에 따라 디스플레이된다. 예를 들어, 도 4a에서, 3D 닭인 입체 가상 객체(420)는 경계지어진 표면(405)의 전방 측의 주변부 내에서 디스플레이된다. 추가로, 도 4a에 도시된 바와 같이, 경계지어진 표면(405)이 세계 좌표들의 제1 세트(X1, Y1, Z1)에 기초하여 디스플레이되는 반면, 3D 닭(420)은 세계 좌표들의 제1 세트(X1, Y1, Z1)와 상이한 세계 좌표들의 제2 세트(X2, Y2, Z2)에 따라 디스플레이된다. 이와 같이, 사용자(401)의 관점으로부터, 3D 닭(420)은 경계지어진 표면(405)의 전방 측 내부에서 또는 그 뒤에서 디스플레이되는 것으로 보인다.
일부 실시예들에서, 블록(610)에 의해 표현되는 바와 같이, 방법(600)은 경계지어진 표면의 주변부 내에서 순응형 가상 객체를 디스플레이하는 단계를 추가로 포함하며, 여기서 순응형 가상 객체는 세계 좌표들의 제1 세트에 의해 특성화되는 경계지어진 표면의 윤곽에 순응한다. 그러한 실시예들에서, 블록(612)에 의해 표현되는 바와 같이, 방법(600)은 경계지어진 표면의 윤곽을 변환하는 것에 응답하여 순응형 가상 객체의 디스플레이를 동시에 변환하는 단계를 추가로 포함한다.
예를 들어, 도 4a에서, 2D 텍스트 "매트릭스"(410)는 세계 좌표들의 제1 세트(X1, Y1, Z1)에 따라 경계지어진 표면(405)의 제1 측의 주변부 내에서 디스플레이되는 순응형 가상 객체이다. 도 4a에서, 2D 텍스트 "매트릭스"(410)는, 그 텍스트가 경계지어진 표면(405)의 평탄한 전방 측 상에 떠 있는 것처럼, 경계지어진 표면(405)의 상단 에지에 평행하고, 경계지어진 표면(405)의 평탄한 전방 측에 순응한다. 도 4h 내지 도 4k에서, 경계지어진 표면(405)의 윤곽은 회전 입력에 응답하여 변화되며, 예를 들어 경계지어진 표면(405)의 외형은 직사각형 형상으로부터 사다리꼴 형상으로 변화된다. 그 결과, 2D 텍스트 "매트릭스"(410)의 형상은 경계지어진 표면(405)의 윤곽 변환과 정렬되게 유지하기 위해 동시에 변화되며, 예를 들어 2D 텍스트 "매트릭스"(410)의 관점 및 형상은 사다리꼴 형상의 경계지어진 표면(405)에 순응하기 위해 변화된다.
다른 예에서, 도 5g에서, 2D 텍스트 "개"는, 경계지어진 표면(505)의 전방 측의 주변부 내에서 디스플레이되고 평탄한 경계지어진 표면(505)의 윤곽에 순응하는 순응형 가상 객체이다. 도 4f에서, 경계지어진 표면(405)의 윤곽은 회전 입력에 응답하여 변화되며, 예를 들어 경계지어진 표면(405)은 비틀리고, 경계지어진 표면(405)의 외형들은 만곡된다. 도 4f에 도시된 바와 같이, 경계지어진 표면(405)의 변환에 응답하여, 2D 텍스트 "개"는 만곡된 라인으로 디스플레이되고, 비틀린 경계지어진 표면(405)에 순응하도록 주름지게 되는 것으로 보인다.
도 6a를 다시 참조하면, 일부 실시예들에서, 블록(620)에 의해 표현되는 바와 같이, 방법(600)은 경계지어진 표면의 제2 측을 디스플레이하는 단계를 추가로 포함하며, 여기서 경계지어진 표면의 후면측은 제1 입체 가상 객체의 래스터화된 순응 표현을 포함한다. 그러한 실시예들에서, 블록(622)에 의해 표현되는 바와 같이, 경계지어진 표면의 제2 측을 디스플레이하는 단계는 일부 실시예들에 따라, 경계지어진 표면의 제2 측면 상에서 제1 입체 가상 객체의 래스터화된 순응 표현의 블러링된 표현을 디스플레이하는 단계를 포함한다.
예를 들어, 도 4b, 도 4e, 및 도 4g는 경계지어진 표면(405)의 후면측을 디스플레이하는 것을 예시한다. 도 4b에 도시된 바와 같이, 경계지어진 표면(405)의 후면측은 경계지어진 표면(405)의 전방 측으로부터의 3D 닭(420)의 순응 표현(420-B)을 포함한다. 그 결과, 경계지어진 표면(405)은 반투명 또는 흐릿한 것으로 보여서, 블러링된 닭 이미지(420-B)가 경계지어진 표면(405)의 후면측의 주변부 내에서 경계지어진 표면(405)의 후면측 상에 디스플레이된다. 마찬가지로, 도 4e 및 도 4g에서, 경계지어진 표면(405)의 후면측은 경계지어진 표면(405)의 전방 측으로부터의 개개의 입체 가상 객체의 순응(예를 들어, 2D) 표현을 포함한다. 도 4e 및 도 4g에 도시된 바와 같이, 경계지어진 표면(405)이, 예를 들어 경계지어진 표면(405)을 회전시키기 위한 입력에 응답하여 변환될 때, 개개의 입체 가상 객체의 순응 표현이 경계지어진 표면(405)에 순응하기 때문에, 후면측 상의 래스터화된 순응 표현은 만곡된 경계지어진 표면(405)과 정렬되게 유지하기 위해 동시에 변환된다.
일부 실시예들에서, 블록(630)에 의해 표현되는 바와 같이, 방법(600)은 경계지어진 표면으로 지향되는 입력에 응답하여 경계지어진 표면의 윤곽을 변화시키기 위해 경계지어진 표면의 디스플레이를 변환하는 단계를 추가로 포함한다. 그러한 실시예들에서, 블록(632)에 의해 표현되는 바와 같이, 방법(600)은, 사용자의 신체 포즈 변화를 검출하는 것을 포함하여, 사용자로부터 입력을 수신하는 단계를 추가로 포함한다. 추가로, 그러한 실시예들에서, 블록(634)에 의해 표현되는 바와 같이, 경계지어진 표면의 디스플레이를 변환하는 단계는 세계 좌표들의 제1 세트 및 세계 좌표들의 제2 세트에 기초하여 제1 입체 가상 객체의 디스플레이를 변환하는 단계를 포함한다.
예를 들어, 도 4c 내지 도 4k를 참조하여 위에서 설명된 바와 같이, 입력은 사용자가 경계지어진 표면(405)을 후면측으로 돌리는 것일 수 있다. 경계지어진 표면(405)이 입력에 응답하여 변환됨에 따라, 3D 치킨의 머리는 세계 좌표들의 제2 세트(X2, Y2, Z2)에 따라 이동되면서, 경계지어진 표면(405)의 움직임들과 함께 운반된다. 다른 예에서, 도면들에 도시되지 않았지만, 입력은 사용자가 포털의 후면측을 검사하기 위해 CGR 환경(400)에서 경계지어진 표면(405)의 후면측으로 걷는 것일 수 있다. 또 다른 예에서, 입력은 도 4j에 도시된 바와 같이, 사용자가 경계지어진 표면(405)의 측부의 뷰를 획득하기 위해 상이한 각도로부터 경계지어진 표면(405)을 보도록 휴대용 다기능 디바이스를 이동시키는 것일 수 있다. 따라서, 디바이스에 의해 검출된 사용자의 신체 포즈 변화는 경계지어진 표면(405)의 변환을 트리거링하기 위한 입력일 수 있다. 예를 들어, 신체 포즈 변화는, 사용자가 경계지어진 표면(405)을 회전시키기 위해 버튼을 클릭하는 것; 사용자가 경계지어진 표면(405)을 비틀거나 튕기는 것, 사용자가 경계지어진 표면(405)을 접는 것; 사용자가 경계지어진 표면(405)을 아래로 푸시하는 것; 사용자가 3D 툴박스 객체들(440)을 선택하는 것 등을 포함할 수 있다. 당업자는 입력이 위에서 설명된 신체 포즈 변화들로 제한되지 않는다는 것을 인식할 것이다. 음성 입력과 같은 다른 형태들의 입력이 또한 경계지어진 표면의 변환을 트리거링하는 데 사용될 수 있다. 추가로, 일부 실시예들에서, 경계지어진 표면의 변환은 사용자 입력 없이 수행된다.
도 6b를 참조하면, 일부 실시예들에서, 블록(640)에 의해 표현되는 바와 같이, 방법(600)은 세계 좌표들의 제2 세트에 기초하여 제1 입체 가상 객체의 디스플레이를 변환하는 단계를 추가로 포함한다. 그러한 실시예들에서, 블록(642)에 의해 표현되는 바와 같이, 세계 좌표들의 제2 세트에 기초하여 제1 입체 가상 객체의 디스플레이를 변환하는 단계는 일부 실시예들에 따라, 제1 입체 가상 객체의 적어도 일부를, 경계지어진 표면의 제1 측으로부터 돌출되는 것으로서 디스플레이하는 단계를 포함한다. 다시 말하면, 일부 실시예들에서, 입체 가상 객체의 디스플레이는 사용자 입력에 응답하지 않고 변환된다. 그러한 실시예들에서, 입체 가상 객체의 변환은 경계지어진 표면의 변환 및 순응형 가상 객체의 변환과 불균형할 수 있다.
예를 들어, 도 4l 및 도 4m에서, 3D 닭(460)의 머리는 경계지어진 표면(405)이 이동되고 있지 않을 때에도 이동된다. 다른 예에서, 도 4h 내지 도 4k에 도시된 바와 같이, 3D 닭(420)은 세계 좌표들의 제2 세트(X2, Y2, Z2)에 기초하여 축(452)을 중심으로 회전되는 반면, 경계지어진 표면(405)은 세계 좌표들의 제1 세트(X1, Y1, Z1)에 기초하여 수직 축(450)을 중심으로 회전된다. 다른 예에서, 도 5c에 도시된 바와 같이, 경계지어진 표면(505)이 평탄하게 놓일 때, 3D 공룡 커터들(512)은 기립하고, 경계지어진 표면(505)의 전방 측으로부터 돌출된다.
여전히 도 6b를 참조하면, 일부 실시예들에서, 블록(650)에 의해 표현되는 바와 같이, 방법(600)은, 경계지어진 표면의 주변부 내에서 가상 객체를 디스플레이하는 단계가 제1 입체 가상 객체의 적어도 일부를 폐색하는 단계를 포함하는 것을 추가로 포함한다. 그러한 실시예들에서, 블록(652)에 의해 표현되는 바와 같이, 방법(600)은, 사용자 포즈와 연관된 직각인 시선으로부터 비스듬히, 경계지어진 표면의 제1 측을 디스플레이하는 단계; 및 가상 객체를, 제1 입체 가상 객체의 적어도 일부를 폐색하는 것으로서 디스플레이하는 것을 중단하는 단계를 추가로 포함한다. 예를 들어, 도 4a에서, 경계지어진 표면(405)의 정면도는 경계지어진 표면(405)의 거의 앞에 서 있는 사용자(401)와 연관된 거의 직각인 시선을 도시한다. 거의 직각인 시선 관점으로부터, 도 4a에서, 경계지어진 표면(405) 내의 3D 닭(420)은 경계지어진 표면(405)의 전방 측 상에 떠 있는 2D 텍스트 "매트릭스"(410) 뒤에 있다. 따라서, 2D 텍스트 "매트릭스"(410)는 3D 닭(420)의 볏을 폐색한다. 비교하면, 도 4j에 도시된 바와 같은 경사진 뷰에서, 경계지어진 표면(405)이 소정의 각도로 돌려지고 경계지어진 표면(405)의 전방 측이 직각인 시선 관점으로부터 비스듬할 때, 2D 텍스트 "매트릭스"(410)는 3D 닭(420)의 볏을 더 이상 폐색하지 않는다.
일부 실시예들에서, 블록(660)에 의해 표현되는 바와 같이, 방법(600)은, 경계지어진 표면의 주변부 밖으로 그리고 네이티브 사용자 CGR 환경 내로 제1 입체 가상 객체를 이동시키는 단계, 및 제1 입체 가상 객체가 네이티브 사용자 CGR 환경에 진입하는 것에 응답하여 세계 좌표들의 제1 세트에 따라 제1 입체 가상 객체를 디스플레이하는 단계를 추가로 포함한다. 예를 들어, 도 4n에서, 3D 닭(420)은, 예를 들어 3D 닭(420)을 색상 페인팅하기 위한 준비 시에 포털 밖으로 3D 닭(420)을 끌어당기는 것처럼, 경계지어진 표면(405)의 전방 측의 주변부 외부로 끌어당겨지고, 사용자(401)의 앞에 배치될 수 있다. 경계지어진 표면(405)의 주변부 외부로 3D 닭(420)을 끌어당김으로써, 3D 닭(420)은 세계 좌표들의 제2 세트(X2, Y2, Z2)에 따라 더 이상 디스플레이되지 않는다. 대신에, 3D 닭(420)은 사용자(401)와 함께 세계 좌표들의 제1 세트(X1, Y1, Z1)에 따라 디스플레이되고 그리고/또는 애니메이션화된다.
일부 실시예들에서, 블록(670)에 의해 표현되는 바와 같이, 방법(600)은, 네이티브 사용자 CGR 환경의 세계 좌표들의 제1 세트로부터 경계지어진 표면 내의 세계 좌표들의 제2 세트로의 뷰잉 좌표 변화를 표시하는 사용자 입력을 수신하는 단계를 추가로 포함한다. 뷰잉 좌표 변화를 표시하는 사용자 입력을 수신하는 것에 응답하여, 추가로 블록(670)에 의해 표현되는 바와 같이, 방법(600)은 또한 세계 좌표들의 제2 세트에 따라 제1 입체 가상 객체의 디스플레이를 조정하는 단계를 포함한다. 예를 들어, 도 4o에서, 사용자(401)는, 예를 들어 3D 닭(420)을 검사하기 위해 포털을 통해 가는 것처럼, 경계지어진 표면(405)의 주변부로 발걸음을 옮기거나 또는 경계지어진 표면을 통해 응시할 수 있다. 세계 좌표들의 제1 세트(X1, Y1, Z1)로부터 세계 좌표들의 제2 세트(X2, Y2, Z2)로의 뷰잉 좌표 변화를 표시하는 사용자 입력(예를 들어, 신체 포즈 변화들)을 검출하는 것에 응답하여, 3D 닭(420)의 디스플레이가 변화되며, 예를 들어 3D 닭(420)은 세계 좌표들의 제2 세트(X2, Y2, Z2)에 따라 이동된다. 다른 예에서, 도면들에 도시되지 않았지만, 사용자가 경계지어진 표면 밖으로 입체 가상 객체를 끌어당긴 이후, 사용자는 입체 가상 객체와 상호작용하고(예를 들어, 색상을 변화시키거나 부가함, 끈(tie)을 부가함 등), 이어서 경계지어진 표면에서 수정의 효과를 보기 위해 입체 가상 객체를 경계지어진 표면의 전방 측의 주변부 내로 다시 놓을 수 있다.
일부 실시예들에서, 블록(680)에 의해 표현되는 바와 같이, 방법(600)은 경계지어진 표면의 주변부 내에서 제2 입체 가상 객체를 디스플레이하는 단계를 추가로 포함하며, 여기서 제2 입체 가상 객체는 세계 좌표들의 제1 세트 및 세계 좌표들의 제2 세트와 상이한 세계 좌표들의 제3 세트에 따라 디스플레이된다. 예를 들어, 도 4h 내지 도 4k에서, 3D 툴박스 객체들(440) 각각은 세계 좌표들의 그 자신의 세트에 따라 회전될 수 있다. 개개의 3D 툴박스 객체(440)에 대한 세계 좌표들의 개개의 세트는 3D 닭(420)이 기초하는 세계 좌표들의 제2 세트(X2, Y2, Z2)와 상이할 수 있다. 그 결과, 3D 닭(420) 및 3D 툴박스 객체들(440)은 상이하게 애니메이션화될 수 있으며, 예를 들어 상이한 세계 좌표계들에서 상이한 축들을 중심으로 회전된다.
도 7a 및 도 7b는 일부 실시예들에 따른, 경계지어진 표면의 주변부 내에서 입체 가상 콘텐츠를 디스플레이하는 방법(700)의 흐름도를 표현한다. 일부 실시예들에서, 방법(700)은 하나 이상의 프로세서들, 비일시적 메모리, 및 하나 이상의 디스플레이들을 갖는 디바이스에 의해 수행된다. 일부 실시예들에서, 방법(700)은 하드웨어, 펌웨어, 소프트웨어, 또는 이들의 조합을 포함하는 프로세싱 로직에 의해 수행된다. 일부 실시예들에서, 방법(700)은 비일시적 컴퓨터 판독가능 매체(예를 들어, 메모리)에 저장된 명령어들(예를 들어, 코드)을 실행하는 프로세서 및/또는 제어기(예를 들어, 도 1a, 도 1b, 및 도 2의 제어기(102))에 의해 수행된다. 간략하게, 일부 상황들에서, 방법(700)은, 세계 좌표들의 제1 세트에 기초하여, 경계지어진 구역을 디스플레이하는 단계 - 경계지어진 구역 내의 콘텐츠는 세계 좌표들의 제2 세트에 따라 디스플레이되는 입체 가상 객체를 포함함 -; 콘텐츠로 지향되는 입력을 수신하는 단계; 및 입력에 따라 경계지어진 구역의 제1 측의 주변부 내에서 입체 가상 객체를 이동시키는 것을 포함하여, 입력에 따라 경계지어진 구역의 제1 측의 주변부 내에서 콘텐츠를 이동시키는 단계; 및 세계 좌표들의 제2 세트에 따라 입체 가상 객체를 애니메이션화하는 단계를 포함한다.
방법(700)은 블록(710)에서, 디바이스가 세계 좌표들의 제1 세트에 기초하여, 경계지어진 구역을 디스플레이하는 것으로 시작하며, 여기서 경계지어진 구역 내의 콘텐츠는 세계 좌표들의 제2 세트에 따라 디스플레이되는 입체 가상 객체를 포함한다. 예를 들어, 도 5a에서, 경계지어진 구역(505)은 세계 좌표들의 제1 세트(X1, Y1, Z1)에 기초하여 디스플레이된다. 도 5a에 추가로 도시된 바와 같이, 경계지어진 구역(505) 내에서 디스플레이된 콘텐츠는 3D 공룡 커터들(512)을 포함하며, 여기서 3D 공룡 커터들(512)은 세계 좌표들의 제2 세트(X2, Y2, Z2)에 따라 디스플레이된다.
일부 실시예들에서, 블록(712)에 의해 표현되는 바와 같이, 방법은 경계지어진 구역의 제1 측의 주변부 내에 끼워맞춰지도록 입체 가상 객체를 스케일링하는 단계를 추가로 포함한다. 예를 들어, 도 5i에 도시된 바와 같은 원양 정기선(530)은 뷰잉을 용이하게 하기 위해 전체 스케일로 그리고 적절한 거리에서, 경계지어진 구역(505)의 전방 측의 주변부 내에서 디스플레이된다.
방법(700)은 블록(720)에서, 디바이스가 콘텐츠로 지향되는 입력을 수신하는 것으로 계속된다. 예를 들어, 입력은 도 5a, 도 5g, 및 도 5l에서 점선 화살표에 의해 도시된 바와 같이, 사용자가 콘텐츠를 위로 및/또는 아래로 스크롤링하는 것일 수 있다. 다른 예에서, 입력은 도 5c에서 점선 화살표에 의해 도시된 바와 같이, 사용자가 입체 가상 객체들을 행 단위로 스크롤링하는 것일 수 있다. 또 다른 예에서, 도 5i에 도시된 원양 정기선 예에서, 입력은 사용자가 원양 정기선(530)의 전방 또는 측부를 보기 위해 원양 정기선(530)을 경계지어진 구역(505) 내부로 이동시키는 것일 수 있다. 또 다른 예에서, 입력은 도 5j에 도시된 바와 같이, 사용자(401)가 입체 가상 객체(540-1)와 상호작용하는 것일 수 있다.
여전히 도 7a를 참조하면, 방법(700)은 블록(730)에서, 디바이스가 입력에 따라 경계지어진 구역의 제1 측의 주변부 내에서 콘텐츠를 이동시키는 것으로 계속된다. 예를 들어, 도 5a 및 도 5b에서, 상향 스크롤링 입력에 응답하여, 3D 공룡 커터들(512)은 상향 스크롤링 입력의 방향에 따라 상향으로 스크롤링된다. 다른 예에서, 도 5c 및 도 5d에서, 후방에서 전방으로의 행 단위 스크롤링 입력에 응답하여, 3D 공룡 커터들(512)은 후방으로부터 전방으로 이동된다.
일부 실시예들에서, 입력에 따라 경계지어진 구역의 제1 측의 주변부 내에서 콘텐츠를 이동시키는 것은, (a) 블록(732)에 의해 표현된 바와 같이, 입력에 따라 경계지어진 구역의 제1 측의 주변부 내에서 입체 가상 객체를 이동시키는 것; 및 (b) 블록(734)에 의해 표현된 바와 같이, 세계 좌표들의 제2 세트에 따라 입체 가상 객체를 애니메이션화하는 것을 포함한다. 예를 들어, 도 5b에서, 작은 3D 공룡 커터(512-2)는 세계 좌표들의 제2 세트(X2, Y2, Z2)에 따라 회전된다.
일부 실시예들에서, 블록(736)에 의해 표현되는 바와 같이, 세계 좌표들의 제2 세트에 따라 입체 가상 객체를 애니메이션화하는 것은, 세계 좌표들의 제1 세트에 기초하여 경계지어진 구역의 제1 측의 주변부로부터 입체 가상 객체의 거리를 결정하는 것; 및 거리가 임계치 내에 있다는 결정에 따라, 입체 가상 객체를 경계지어진 구역 내로 후퇴시키는 것, 및 경계지어진 구역의 제1 측의 주변부에 의해 입체 가상 객체의 일부를 폐색하는 것을 포함한다. 예를 들어, 도 5b의 큰 3D 공룡 커터(512-1) 및 도 5d의 작은 3D 공룡 커터(512-2)는 경계지어진 구역(505)의 에지 부근에서 스크롤링되고 있을 때 경계지어진 구역(505)의 내부로 접혀진다. 추가로, 폐색의 속성에 의해, 일단 도 5b의 큰 3D 공룡 커터(512-1) 및 도 5d의 작은 3D 공룡 커터(512-2)가 경계지어진 구역(505) 내로 후퇴되면, 개개의 입체 가상 객체(512)의 일부는 경계지어진 구역(505)의 전방 측의 주변부에 의해 폐색된다. 예를 들어, 도 5b의 큰 3D 공룡 커터(512-1)는 경계지어진 구역(505)의 상단 에지에 의해 폐색되고, 도 5d의 작은 3D 공룡 커터(512-2)는 경계지어진 구역(505)의 하단 에지에 의해 폐색된다.
일부 실시예들에서, 블록(738)에 의해 표현되는 바와 같이, 세계 좌표들의 제2 세트에 따라 입체 가상 객체를 애니메이션화하는 것은, 세계 좌표들의 제1 세트에 기초하여 경계지어진 구역의 제1 측의 주변부로부터 입체 가상 객체의 거리를 결정하는 것; 및 거리가 임계치보다 크다는 결정에 따라, 입체 가상 객체의 적어도 일부를, 경계지어진 구역의 제1 측으로부터 돌출되는 것으로서 디스플레이하는 것을 포함한다. 예를 들어, 도 5b에서, 경계지어진 구역(505) 내의 콘텐츠가 위로 스크롤링됨에 따라, 작은 3D 공룡 커터(512-2)는 회전되어, 경계지어진 구역(505)의 전방 측으로부터 돌출된다.
도 7b를 참조하면, 일부 실시예들에서, 방법(700)은 블록(740)에 의해 표현되는 바와 같이, 경계지어진 구역의 제2 측을 디스플레이하는 단계를 추가로 포함하며, 여기서 경계지어진 구역의 제2 측은 입체 가상 객체의 래스터화된 순응 표현을 포함한다. 그러한 실시예들에서, 블록(742)에 의해 표현되는 바와 같이, 방법(700)은 입력을 수신하는 것에 응답하여 경계지어진 구역의 제2 측의 디스플레이를 업데이트하는 단계를 추가로 포함한다. 일부 실시예들에서, 경계지어진 구역의 제2 측의 디스플레이를 업데이트하는 단계는, 세계 좌표들의 제1 세트에 기초하여 입체 가상 객체의 래스터화된 순응 표현을 이동시키는 단계; 및 입체 가상 객체를 애니메이션화하는 것에 기초하여 입체 가상 객체의 래스터화된 순응 표현을 수정하는 단계를 추가로 포함한다.
예를 들어, 도 5e는 경계지어진 구역(505)의 전방 측을 예시하는 반면, 도 5f는 경계지어진 구역(505)의 대응하는 후면측을 예시한다. 도 5f에서, 경계지어진 표면(505)의 후면측은 경계지어진 구역(505)의 전방 측으로부터의 3D 닭(520)의 래스터화된 순응 표현(520-B)을 포함한다. 도 5g에서, 경계지어진 구역(505)의 콘텐츠가 위로 스크롤링됨에 따라, 3D 개(524)는 경계지어진 구역(505)으로 이동된다. 3D 개(524)가 더 위로 이동되는 동안, 도 5h에 도시된 바와 같이, 경계지어진 구역(505)의 후면측 상의 콘텐츠는 3D 개(524)의 래스터화된 순응 표현(524-B)을 나타내도록 수정된다.
일부 실시예들에서, 방법(700)은 블록(750)에 의해 표현되는 바와 같이, 경계지어진 구역 내의 하위구역을 지정하는 단계를 추가로 포함하며, 여기서 하위구역은 입체 가상 객체를 포함한다. 그러한 실시예들에서, 블록(752)에 의해 표현되는 바와 같이, 입력에 따라 경계지어진 구역의 주변부 내에서 콘텐츠를 이동시키는 것은 일부 실시예들에 따라, 하위구역의 주변부 밖으로 입체 가상 객체를 이동시키는 것; 및 세계 좌표들의 제1 세트에 따라 하위구역의 주변부 외부에서의 디스플레이를 위해 입체 가상 객체를 순응형 가상 객체로 변환하는 것을 포함한다. 또한, 그러한 실시예들에서, 블록(754)에 의해 표현되는 바와 같이, 입력에 따라 경계지어진 구역의 주변부 내에서 콘텐츠를 이동시키는 것은, 하위구역의 주변부 외부에서 디스플레이된 순응형 가상 객체를 하위구역의 주변부 내부로 이동시키는 것; 및 순응형 가상 객체를 적어도 하나의 입체 가상 객체로 변환하는 것을 포함한다.
예를 들어, 도 5k는 경계지어진 구역(505) 내에서 디스플레이된 지도(550), 및 경계지어진 구역(505)의 전방 측의 주변부 내의 지정된 하위구역(552)을 예시한다. 도 5l에 도시된 바와 같이, 하위구역(552)을 지정하는 것에 응답하여, 입체 가상 객체들(560), 예를 들어 마켓 스트리트에 가까운 구역의 3D 뷰가 하위구역(552)의 주변부 내에서 디스플레이된다. 하위구역(552)의 주변부 외부에서, 2D 지도가 경계지어진 구역(505)의 나머지 내에서 디스플레이된다. 도 5l에 도시된 바와 같이, 지도(550)가 패닝되거나 드래깅됨에 따라, 지도(550)가 업데이트된다. 예를 들어, 도 5m에서, 마켓 스트리트에 가까운 영역의 3D 뷰가 하위구역(522) 밖으로 이동되었고, 잭슨 스트리트에 근접한 영역의 3D 뷰로 대체되었다. 다시 말하면, 패닝 또는 드래깅 입력에 응답하여, 도 5l의 하위구역(522) 내의 3D 콘텐츠(예를 들어, 마켓 스트리트 부근의 영역의 3D 뷰)가 하위구역(522)의 주변부 밖으로 이동되었고; 일단 하위구역(522) 밖으로 이동되면, 그러한 콘텐츠는 지도 상에서 2D 콘텐츠로 변환된다. 패닝 또는 드래깅 입력에 추가로 응답하여, 도 5l의 하위구역(522) 밖의 일부 2D 콘텐츠(예를 들어, 잭슨 스트리트 부근의 영역의 2D 뷰)가 하위구역(522)의 주변부 내로 이동되었고; 일단 하위구역(522) 내부에 있으면, 그러한 콘텐츠는 3D 콘텐츠로 변환된다.
일부 실시예들에서, 블록(760)에 의해 표현되는 바와 같이, 콘텐츠는 경계지어진 구역의 윤곽에 순응하는 순응형 가상 객체를 포함한다. 방법(700)은 세계 좌표들의 제1 세트에 기초하여 입체 가상 객체에 대한 상대적인 포지션에 순응형 가상 객체를 디스플레이하는 단계를 추가로 포함한다. 예를 들어, 경계지어진 구역(505) 내의 콘텐츠는 또한, 도 5a의 2D 텍스트 "공룡 커터들"(522), 입체 가상 객체들(예를 들어, 도 5g의 3D 닭(520)과 2D 텍스트 "공룡 커터들"(522)) 사이의 2D 텍스트, 도 5i의 2D 텍스트 "원양 정기선", 도 5j의 2D 텍스트 "음악", 및/또는 도 5k 내지 도 5m 내의 하위구역(552) 외부의 2D 지도를 포함한다. 그러한 실시예들에서, 입력에 따라 경계지어진 구역의 제1 측의 주변부 내에서 콘텐츠를 이동시키는 것은 일부 실시예들에 따라, 입체 가상 객체에 대한 상대적인 포지션을 유지하면서, 세계 좌표들의 제1 세트에 기초하여 입력의 방향으로 순응형 가상 객체를 이동시키는 것을 포함한다.
예를 들어, 도 5a에서, 2D 텍스트 "공룡 커터들"(522)은 큰 3D 공룡 커터(512-1) 위에 그리고 경계지어진 구역(522)의 상단 에지에 더 가깝게 디스플레이된다. 콘텐츠가 상향으로 스크롤링되고 있을 때, 2D 텍스트 "공룡 커터들"(522)은 3D 입체 가상 객체들(512)과 함께 상향으로 이동된다. 도 5b에 도시된 바와 같이, 2D 텍스트는 경계지어진 구역(505)의 에지에 의해 클립핑되는 만큼 많이 상향으로 이동되었다. 다른 예에서, 도 5c에서, 경계지어진 구역(505)이 평탄하게 놓이므로, 2D 텍스트 "공룡 커터들"(522)은 일정 거리에서 입체 가상 객체들(512) 뒤에 있다. 후방으로부터 전방으로의 스크롤링에 응답하여, 2D 텍스트 "공룡 커터들"(522)은 입체 가상 객체(512)와 함께 경계지어진 구역(505)의 하단 에지에 더 가깝게 동일한 방향으로 이동되고, 입체 가상 객체(512)에 대한 2D 텍스트 "공룡 커터들"(522)의 포지션은 유지되며, 예를 들어 2D 텍스트 "공룡 커터들"(522)은 동일한 상대적인 거리에서 큰 3D 공룡 커터(512-1) 뒤에 여전히 있다.
도 8은 일부 실시예들에 따른 컴퓨팅 디바이스(800)의 블록 다이어그램이다. 일부 실시예들에서, 컴퓨팅 디바이스(800)는 도 1a의 디바이스(104)의 적어도 일부에 대응하고, 위에서 설명된 기능들 중 하나 이상을 수행한다. 소정의 특정 특징부들이 예시되어 있지만, 당업자들은 본 개시내용으로부터, 간결함을 위해 그리고 본 명세서에 개시되는 실시예들의 더 많은 관련 태양들을 불명료하게 하지 않기 위해 다양한 다른 특징부들이 예시되지 않았음을 인식할 것이다. 이를 위해, 비제한적인 예로서, 일부 실시예들에서, 컴퓨팅 디바이스(800)는 하나 이상의 프로세싱 유닛(CPU)들(802)(예를 들어, 프로세서들), 하나 이상의 입력/출력(I/O) 인터페이스들(803)(예를 들어, 네트워크 인터페이스들, 입력 디바이스들, 출력 디바이스들, 및/또는 센서 인터페이스들), 메모리(810), 프로그래밍 인터페이스(805), 및 이들 및 다양한 다른 컴포넌트들을 상호연결시키기 위한 하나 이상의 통신 버스들(804)을 포함한다.
일부 실시예들에서, 하나 이상의 통신 버스들(804)은 시스템 컴포넌트들 사이의 통신을 상호연결시키고 제어하는 회로부를 포함한다. 메모리(810)는 DRAM, SRAM, DDR RAM 또는 다른 랜덤-액세스 솔리드 스테이트 메모리 디바이스들과 같은 고속 랜덤-액세스 메모리를 포함하며; 일부 실시예들에서는, 하나 이상의 자기 디스크 저장 디바이스들, 광 디스크 저장 디바이스들, 플래시 메모리 디바이스들, 또는 다른 비휘발성 솔리드 스테이트 저장 디바이스들과 같은 비휘발성 메모리를 포함한다. 메모리(810)는 선택적으로, 하나 이상의 CPU들(802)로부터 원격으로 위치된 하나 이상의 저장 디바이스들을 포함한다. 메모리(810)는 비일시적 컴퓨터 판독가능 저장 매체를 포함한다. 게다가, 일부 실시예들에서, 메모리(810) 또는 메모리(810)의 비일시적 컴퓨터 판독가능 저장 매체는 다음의 프로그램들, 모듈들 및 데이터 구조들, 또는 선택적인 운영 체제(820), 이미지 캡처 제어 모듈(850), 이미지 프로세싱 모듈(852), 신체 포즈 프로세싱 모듈(854), 입력 프로세싱 모듈(856), 및 CGR 콘텐츠 렌더링 모듈(858)을 포함하는 이들의 서브세트를 저장한다. 일부 실시예들에서, 하나 이상의 명령어들은 로직과 비일시적 메모리의 조합에 포함된다. 운영 체제(820)는 다양한 기본 시스템 서비스들을 처리하고 하드웨어 의존 태스크들을 수행하기 위한 절차들을 포함한다.
일부 실시예들에서, 이미지 캡처 제어 모듈(850)은, 이미지들을 캡처하거나 이미지 데이터를 획득, 예를 들어 CGR 콘텐츠를 생성하기 위한 이미지 데이터를 획득하기 위해 이미지 센서 또는 카메라 조립체의 기능을 제어하도록 구성된다. 이를 위해, 이미지 캡처 제어 모듈(850)은 한 세트의 명령어들(851a) 및 휴리스틱 및 메타데이터(851b)를 포함한다.
일부 실시예들에서, 이미지 프로세싱 모듈(852)은 이미지 센서 또는 카메라 조립체로부터 원시 이미지 데이터를 사전-프로세싱하도록(예를 들어, 원시 이미지 데이터를 RGB 또는 YCbCr 이미지 데이터로 변환하고 포즈 정보를 도출하는 등을 행하도록) 구성된다. 이를 위해, 이미지 프로세싱 모듈(852)은 한 세트의 명령어들(853a) 및 휴리스틱 및 메타데이터(853b)를 포함한다.
일부 실시예들에서, 신체 포즈 프로세싱 모듈(854)은, 예를 들어 사용자의 신체 포즈 또는 신체 움직임들에 기초하여 사용자 입력을 생성하기 위해 사용자의 신체 포즈를 프로세싱(예를 들어, IMU 데이터를 프로세싱)하도록 구성된다. 이를 위해, 신체 포즈 프로세싱 모듈(854)은 한 세트의 명령어들(855a) 및 휴리스틱 및 메타데이터(855b)를 포함한다.
일부 실시예들에서, 입력 프로세싱 모듈(856)은, 예를 들어 가상 종이 상의 콘텐츠를 스크롤링 또는 드래깅하거나, 가상 종이를 이동시키거나, 또는 가상 종이의 상이한 측으로 걷는 사용자 입력을 프로세싱하도록 구성된다. 이를 위해, 입력 프로세싱 모듈(856)은 한 세트의 명령어들(857a) 및 휴리스틱 및 메타데이터(857b)를 포함한다.
일부 실시예들에서, CGR 콘텐츠 렌더링 모듈(858)은 다른 사후-프로세싱 이미지 데이터와 함께 CGR 콘텐츠 아이템들을 합성, 렌더링, 및/또는 디스플레이하도록 구성된다. 이를 위해, CGR 콘텐츠 렌더링 모듈(858)은 한 세트의 명령어들(859a) 및 휴리스틱 및 메타데이터(859b)를 포함한다.
이미지 캡처 제어 모듈(850), 이미지 프로세싱 모듈(852), 신체 포즈 프로세싱 모듈(854), 입력 프로세싱 모듈(856), 및 CGR 콘텐츠 렌더링 모듈(858)이 단일 컴퓨팅 디바이스 상에 존재하는 것으로 예시되지만, 다른 실시예들에서, 이미지 캡처 제어 모듈(850), 이미지 프로세싱 모듈(852), 신체 포즈 프로세싱 모듈(854), 입력 프로세싱 모듈(856), 및 CGR 콘텐츠 렌더링 모듈(858)의 임의의 조합이 다양한 실시예들에서 별개의 컴퓨팅 디바이스들에 존재할 수 있다는 것을 이해해야 한다. 예를 들어, 일부 실시예들에서, 이미지 캡처 제어 모듈(850), 이미지 프로세싱 모듈(852), 신체 포즈 프로세싱 모듈(854), 입력 프로세싱 모듈(856), 및 CGR 콘텐츠 렌더링 모듈(858) 각각은 별개의 컴퓨팅 디바이스 상에 또는 클라우드에 존재할 수 있다.
게다가, 도 8은 본 명세서에 설명된 실시예들의 구조적 개략도와는 반대로 특정 실시예에 존재하는 다양한 특징부들의 기능 설명으로서 더 의도된다. 당업자들에 의해 인식되는 바와 같이, 별개로 도시된 아이템들은 조합될 수 있고 일부 아이템들은 분리될 수 있다. 예를 들어, 도 8에 별개로 도시된 일부 기능 모듈들은 단일 모듈로 구현될 수 있고, 단일 기능 블록들의 다양한 기능들은 다양한 실시예들에서 하나 이상의 기능 블록들에 의해 구현될 수 있다. 모듈들의 실제 수 및 특정 기능들의 분할, 그리고 특징부들이 그들 사이에서 어떻게 할당되는지는 실시예들마다 다를 것이고, 특정 실시예에 대해 선택된 하드웨어, 소프트웨어, 및/또는 펌웨어의 특정 조합에 부분적으로 의존할 수 있다.
첨부된 청구범위의 범주 내의 실시예들의 다양한 태양들이 위에서 설명되지만, 위에서 설명된 실시예들의 다양한 특징들이 광범위하게 다양한 형태들로 구현될 수 있고 위에서 설명된 임의의 특정 구조 및/또는 기능이 단지 예시적이라는 것이 명백할 것이다. 본 개시내용에 기초하여, 당업자는 본 명세서에 설명된 태양이 임의의 다른 태양들과 독립적으로 구현될 수 있고 이들 태양들 중 2개 이상이 다양한 방식들로 조합될 수 있음을 이해해야 한다. 예를 들어, 본 명세서에 기재된 임의의 수의 태양들을 사용하여 장치가 구현될 수 있고 그리고/또는 방법이 실시될 수 있다. 부가적으로, 본 명세서에 기재된 태양들 중 하나 이상에 부가하여 또는 그 이외의 다른 구조 및/또는 기능을 사용하여 그러한 장치가 구현될 수 있고 그리고/또는 그러한 방법이 실시될 수 있다.
용어들 "제1", "제2" 등이 다양한 요소들을 설명하기 위해 본 명세서에서 사용될 수 있지만, 이들 요소들은 이들 용어들에 의해 제한되어서는 안 된다는 것이 또한 이해될 것이다. 이들 용어들은 하나의 요소를 다른 요소와 구별하는 데에만 사용된다. 예를 들어, 모든 "제1 노드"의 발생이 일관되게 재명명되고 모든 "제2 노드"의 발생이 일관되게 재명명되기만 한다면, 제1 노드는 제2 노드로 지칭될 수 있고, 유사하게, 제2 노드는 제1 노드로 지칭될 수 있으며, 이는 설명의 의미를 변경한다. 제1 노드 및 제2 노드는 둘 모두 노드들이지만, 그것들은 동일한 노드가 아니다.
본 명세서에서 사용되는 용어는 단지 특정 실시예들만을 설명하는 목적을 위한 것이고, 청구범위를 제한하도록 의도되지 않는다. 본 실시예들의 설명 및 첨부된 청구범위에 사용되는 바와 같이, 단수형들("a", "an" 및 "the")은 문맥상 명확하게 달리 나타나지 않으면 복수형들도 또한 포함하도록 의도된다. 또한, 본 명세서에서 사용되는 바와 같은 용어 "및/또는"은 열거되는 연관된 항목들 중 하나 이상의 항목들의 임의의 그리고 모든 가능한 조합들을 나타내고 그들을 포괄하는 것임이 이해될 것이다. 본 명세서에서 사용될 때 "포함한다(comprise)" 및/또는 "포함하는(comprising)"이라는 용어들은 언급된 특징들, 정수들, 단계들, 동작들, 요소들, 및/또는 컴포넌트들의 존재를 특정하지만, 하나 이상의 다른 특징들, 정수들, 단계들, 동작들, 요소들, 컴포넌트들 및/또는 이들의 그룹들의 존재 또는 부가를 배제하지 않는다는 것이 추가로 이해될 것이다.
본 명세서에서 사용된 바와 같이, 용어 "~라면(if)"은 맥락에 의존하여, 언급된 선행 조건이 사실일 "때" 또는 그 조건이 사실일 "시에" 또는 그 조건이 사실이라고 "결정하는 것에 응답하여" 또는 그 조건이 사실이라는 "결정에 따라" 또는 그 조건이 사실이라는 것을 "검출하는 것에 응답하여"를 의미하는 것으로 해석될 수 있다. 유사하게, 어구 "[언급된 선행 조건이 사실이라고] 결정하면" 또는 "[언급된 선행 조건이 사실]이면" 또는 "[언급된 선행 조건이 사실]일 때"는 맥락에 의존하여, 언급된 선행 조건이 사실"이라고 결정할 시에" 또는 그 조건이 사실"이라고 결정하는 것에 응답하여" 또는 그 조건이 사실"이라는 결정에 따라" 또는 그 조건이 사실"이라는 것을 검출할 시에" 또는 그 조건이 사실"이라는 것을 검출하는 것에 응답하여를 의미하는 것으로 해석될 수 있다.

Claims (20)

  1. 방법으로서,
    하나 이상의 프로세서들, 비일시적 메모리, 및 하나 이상의 디스플레이들을 포함하는 디바이스에서:
    네이티브(native) 사용자 컴퓨터-생성 현실(computer-generated reality, CGR) 환경 내에서 경계지어진 표면(bounded surface)을 디스플레이하는 단계 - 상기 경계지어진 표면은 상기 네이티브 사용자 CGR 환경을 특성화하는 세계 좌표들의 제1 세트에 기초하여 디스플레이됨 -; 및
    상기 경계지어진 표면의 제1 측의 주변부 내에서 제1 입체 가상 객체를 디스플레이하는 단계 - 상기 제1 입체 가상 객체는 상기 네이티브 사용자 CGR 환경을 특성화하는 상기 세계 좌표들의 제1 세트와 상이한 세계 좌표들의 제2 세트에 따라 디스플레이됨 - 를 포함하는, 방법.
  2. 제1항에 있어서,
    상기 경계지어진 표면의 상기 제1 측의 상기 주변부 내에서 순응형(conforming) 가상 객체를 디스플레이하는 단계를 추가로 포함하며,
    상기 순응형 가상 객체는 상기 세계 좌표들의 제1 세트에 의해 특성화된 상기 경계지어진 표면의 윤곽에 순응하는, 방법.
  3. 제2항에 있어서,
    상기 경계지어진 표면의 상기 윤곽을 변환하는 것에 응답하여 상기 순응형 가상 객체의 디스플레이를 동시에 변환하는 단계를 추가로 포함하는, 방법.
  4. 제1항에 있어서,
    상기 경계지어진 표면의 제2 측을 디스플레이하는 단계를 추가로 포함하며,
    상기 경계지어진 표면의 상기 제2 측은 상기 제1 입체 가상 객체의 래스터화(rasterize)된 순응 표현을 포함하는, 방법.
  5. 제4항에 있어서, 상기 경계지어진 표면의 상기 제2 측을 디스플레이하는 단계는 상기 경계지어진 표면의 상기 제2 측 상에서 상기 제1 입체 가상 객체의 상기 래스터화된 순응 표현의 블러링(blur)된 표현을 디스플레이하는 단계를 포함하는, 방법.
  6. 제1항에 있어서,
    상기 경계지어진 표면으로 향하는 입력에 응답하여 상기 경계지어진 표면의 윤곽을 변화시키기 위해 상기 경계지어진 표면의 디스플레이를 변환하는 단계를 추가로 포함하는, 방법.
  7. 제6항에 있어서,
    사용자로부터 상기 입력을 수신하는 단계를 추가로 포함하며,
    상기 수신하는 단계는 상기 사용자의 신체 포즈 변화를 검출하는 단계를 포함하는, 방법.
  8. 제6항에 있어서, 상기 경계지어진 표면의 상기 디스플레이를 변환하는 단계는 상기 세계 좌표들의 제1 세트 및 상기 세계 좌표들의 제2 세트에 기초하여 상기 제1 입체 가상 객체의 상기 디스플레이를 변환하는 단계를 포함하는, 방법.
  9. 제1항에 있어서,
    상기 세계 좌표들의 제2 세트에 기초하여 상기 제1 입체 가상 객체의 디스플레이를 변환하는 단계를 추가로 포함하는, 방법.
  10. 제9항에 있어서, 상기 세계 좌표들의 제2 세트에 기초하여 상기 제1 입체 가상 객체의 상기 디스플레이를 변환하는 단계는 상기 제1 입체 가상 객체의 적어도 일부를, 상기 경계지어진 표면의 상기 제1 측으로부터 돌출되는 것으로서 디스플레이하는 단계를 포함하는, 방법.
  11. 제1항에 있어서,
    상기 경계지어진 표면의 상기 주변부 내에서 가상 객체를, 상기 제1 입체 가상 객체의 적어도 일부를 폐색(occlude)하는 것으로서 디스플레이하는 단계를 추가로 포함하는, 방법.
  12. 제11항에 있어서,
    사용자 포즈와 연관된 직각인 시선(sightline)으로부터 비스듬히 상기 경계지어진 표면의 상기 제1 측을 디스플레이하는 단계; 및
    상기 가상 객체를, 상기 제1 입체 가상 객체의 상기 적어도 일부를 폐색하는 것으로서 디스플레이하는 것을 중단하는 단계를 추가로 포함하는, 방법.
  13. 제1항에 있어서,
    상기 경계지어진 표면의 상기 주변부 외부로 그리고 상기 네이티브 사용자 CGR 환경 내로 상기 제1 입체 가상 객체를 이동시키는 단계; 및
    상기 제1 입체 가상 객체가 상기 네이티브 사용자 CGR 환경에 진입하는 것에 응답하여 상기 세계 좌표들의 제1 세트에 따라 상기 제1 입체 가상 객체를 디스플레이하는 단계를 추가로 포함하는, 방법.
  14. 제1항에 있어서,
    상기 네이티브 사용자 CGR 환경의 상기 세계 좌표들의 제1 세트로부터 상기 경계지어진 표면 내의 상기 세계 좌표들의 제2 세트로의 뷰잉(viewing) 좌표 변화를 표시하는 사용자 입력을 수신하는 단계; 및
    상기 뷰잉 좌표 변화를 표시하는 상기 사용자 입력을 수신하는 것에 응답하여, 상기 세계 좌표들의 제2 세트에 따라 상기 제1 입체 가상 객체의 디스플레이를 조정하는 단계를 추가로 포함하는, 방법.
  15. 제1항에 있어서,
    상기 경계지어진 표면의 상기 주변부 내에서 제2 입체 가상 객체를 디스플레이하는 단계를 추가로 포함하며,
    상기 제2 입체 가상 객체는 상기 세계 좌표들의 제1 세트 및 상기 세계 좌표들의 제2 세트와 상이한 세계 좌표들의 제3 세트에 따라 디스플레이되는, 방법.
  16. 제1항에 있어서, 상기 디바이스는 머리-장착형(head-mounted) 디바이스, 모바일 폰, 또는 태블릿 중 적어도 하나를 포함하는, 방법.
  17. 디바이스로서,
    하나 이상의 프로세서들;
    비일시적 메모리;
    하나 이상의 디스플레이들; 및
    상기 비일시적 메모리에 저장된 하나 이상의 프로그램들을 포함하며,
    상기 하나 이상의 프로그램들은, 상기 하나 이상의 프로세서들에 의해 실행될 때, 상기 디바이스로 하여금,
    네이티브 사용자 컴퓨터-생성 현실(CGR) 환경 내에서 경계지어진 표면을 디스플레이하게 하고 - 상기 경계지어진 표면은 상기 네이티브 사용자 CGR 환경을 특성화하는 세계 좌표들의 제1 세트에 기초하여 디스플레이됨 -; 그리고
    상기 경계지어진 표면의 제1 측의 주변부 내에서 제1 입체 가상 객체를 디스플레이하게 하는 - 상기 제1 입체 가상 객체는 상기 네이티브 사용자 CGR 환경을 특성화하는 상기 세계 좌표들의 제1 세트와 상이한 세계 좌표들의 제2 세트에 따라 디스플레이됨 -, 디바이스.
  18. 제17항에 있어서,
    상기 하나 이상의 프로그램들은, 추가로 상기 디바이스로 하여금,
    상기 경계지어진 표면의 상기 제1 측의 상기 주변부 내에서 순응형 가상 객체를 디스플레이하게 하며,
    상기 순응형 가상 객체는 상기 세계 좌표들의 제1 세트에 의해 특성화된 상기 경계지어진 표면의 윤곽에 순응하는, 디바이스.
  19. 하나 이상의 프로그램들을 저장하는 비일시적 메모리로서,
    상기 하나 이상의 프로그램들은, 하나 이상의 디스플레이들을 갖는 디바이스의 하나 이상의 프로세서들에 의해 실행될 때, 상기 디바이스로 하여금,
    네이티브 사용자 컴퓨터-생성 현실(CGR) 환경 내에서 경계지어진 표면을 디스플레이하게 하고 - 상기 경계지어진 표면은 상기 네이티브 사용자 CGR 환경을 특성화하는 세계 좌표들의 제1 세트에 기초하여 디스플레이됨 -; 그리고
    상기 경계지어진 표면의 제1 측의 주변부 내에서 제1 입체 가상 객체를 디스플레이하게 하는 - 상기 제1 입체 가상 객체는 상기 네이티브 사용자 CGR 환경을 특성화하는 상기 세계 좌표들의 제1 세트와 상이한 세계 좌표들의 제2 세트에 따라 디스플레이됨 -, 비일시적 메모리.
  20. 제19항에 있어서,
    상기 하나 이상의 프로그램들은, 추가로 상기 디바이스로 하여금,
    상기 경계지어진 표면의 상기 제1 측의 상기 주변부 내에서 순응형 가상 객체를 디스플레이하게 하며,
    상기 순응형 가상 객체는 상기 세계 좌표들의 제1 세트에 의해 특성화된 상기 경계지어진 표면의 윤곽에 순응하는, 비일시적 메모리.
KR1020200033220A 2019-03-18 2020-03-18 가상 종이 KR102385737B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220043323A KR102566955B1 (ko) 2019-03-18 2022-04-07 가상 종이

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201962820137P 2019-03-18 2019-03-18
US62/820,137 2019-03-18

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020220043323A Division KR102566955B1 (ko) 2019-03-18 2022-04-07 가상 종이

Publications (2)

Publication Number Publication Date
KR20200111119A true KR20200111119A (ko) 2020-09-28
KR102385737B1 KR102385737B1 (ko) 2022-04-13

Family

ID=69810639

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020200033220A KR102385737B1 (ko) 2019-03-18 2020-03-18 가상 종이
KR1020220043323A KR102566955B1 (ko) 2019-03-18 2022-04-07 가상 종이
KR1020230104211A KR20230121979A (ko) 2019-03-18 2023-08-09 가상 종이

Family Applications After (2)

Application Number Title Priority Date Filing Date
KR1020220043323A KR102566955B1 (ko) 2019-03-18 2022-04-07 가상 종이
KR1020230104211A KR20230121979A (ko) 2019-03-18 2023-08-09 가상 종이

Country Status (5)

Country Link
US (3) US11328497B2 (ko)
EP (2) EP3712759B1 (ko)
JP (1) JP7101205B2 (ko)
KR (3) KR102385737B1 (ko)
CN (2) CN111710019B (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3712759B1 (en) * 2019-03-18 2023-07-19 Apple Inc. Virtual paper
WO2022192011A1 (en) * 2021-03-11 2022-09-15 Dathomir Laboratories Llc Distributed content rendering

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002352219A (ja) * 2001-05-30 2002-12-06 Fujitsu Ltd 視野データに従う仮想空間におけるリンクされた複数の情報オブジェクトの表示
JP2012138087A (ja) * 2010-12-24 2012-07-19 Dassault Systemes オーサリングシステムによる再生可能なシーンの生成
KR20140100547A (ko) * 2011-12-27 2014-08-14 인텔 코포레이션 모바일 장치상의 풀 3d 상호작용
US20180143757A1 (en) * 2016-11-18 2018-05-24 Zspace, Inc. 3D User Interface

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0628428A (ja) * 1992-07-08 1994-02-04 Fujitsu Ltd 三次元図形編集装置
JP5087532B2 (ja) * 2008-12-05 2012-12-05 ソニーモバイルコミュニケーションズ株式会社 端末装置、表示制御方法および表示制御プログラム
EP2348383B1 (en) * 2009-12-31 2017-07-12 Sony Computer Entertainment Europe Limited System and method of virtual interaction
US20150312561A1 (en) * 2011-12-06 2015-10-29 Microsoft Technology Licensing, Llc Virtual 3d monitor
US9230473B2 (en) * 2013-06-24 2016-01-05 Microsoft Technology Licensing, Llc Dual duty cycle OLED to enable dynamic control for reduced motion blur control with constant brightness in augmented reality experiences
US10417824B2 (en) * 2014-03-25 2019-09-17 Apple Inc. Method and system for representing a virtual object in a view of a real environment
CN106937531B (zh) * 2014-06-14 2020-11-06 奇跃公司 用于产生虚拟和增强现实的方法和系统
US9606364B2 (en) * 2014-09-12 2017-03-28 Microsoft Technology Licensing, Llc Stabilizing motion of an interaction ray
KR102310994B1 (ko) * 2014-11-25 2021-10-08 삼성전자주식회사 3차원 상호작용 컴퓨팅 장치 및 방법
US20160163063A1 (en) * 2014-12-04 2016-06-09 Matthew Ashman Mixed-reality visualization and method
US9754416B2 (en) * 2014-12-23 2017-09-05 Intel Corporation Systems and methods for contextually augmented video creation and sharing
US9728010B2 (en) * 2014-12-30 2017-08-08 Microsoft Technology Licensing, Llc Virtual representations of real-world objects
JP6400197B2 (ja) * 2015-05-29 2018-10-03 京セラ株式会社 ウェアラブル装置
US9766713B2 (en) * 2015-09-08 2017-09-19 Unity IPR ApS System and method for providing user interface tools
WO2017139871A1 (en) * 2016-02-18 2017-08-24 Vrvana Inc. Head-mounted display for virtual and mixed reality with inside-out positional, user body and environment tracking
EP3465631B1 (en) * 2016-06-07 2020-07-08 Koninklijke KPN N.V. Capturing and rendering information involving a virtual environment
US10395428B2 (en) * 2016-06-13 2019-08-27 Sony Interactive Entertainment Inc. HMD transitions for focusing on specific content in virtual-reality environments
US10909762B2 (en) * 2018-08-24 2021-02-02 Microsoft Technology Licensing, Llc Gestures for facilitating interaction with pages in a mixed reality environment
EP3712759B1 (en) * 2019-03-18 2023-07-19 Apple Inc. Virtual paper

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002352219A (ja) * 2001-05-30 2002-12-06 Fujitsu Ltd 視野データに従う仮想空間におけるリンクされた複数の情報オブジェクトの表示
JP2012138087A (ja) * 2010-12-24 2012-07-19 Dassault Systemes オーサリングシステムによる再生可能なシーンの生成
KR20140100547A (ko) * 2011-12-27 2014-08-14 인텔 코포레이션 모바일 장치상의 풀 3d 상호작용
US20180143757A1 (en) * 2016-11-18 2018-05-24 Zspace, Inc. 3D User Interface

Also Published As

Publication number Publication date
KR20230121979A (ko) 2023-08-22
EP3712759B1 (en) 2023-07-19
EP3712759A1 (en) 2020-09-23
JP7101205B2 (ja) 2022-07-14
EP4235381A3 (en) 2023-11-01
KR20220050853A (ko) 2022-04-25
KR102385737B1 (ko) 2022-04-13
US20200302698A1 (en) 2020-09-24
US11748966B2 (en) 2023-09-05
JP2020155130A (ja) 2020-09-24
US11328497B2 (en) 2022-05-10
US20220245913A1 (en) 2022-08-04
EP4235381A2 (en) 2023-08-30
CN111710019A (zh) 2020-09-25
CN117152313A (zh) 2023-12-01
US20230351715A1 (en) 2023-11-02
CN111710019B (zh) 2023-09-08
KR102566955B1 (ko) 2023-08-16

Similar Documents

Publication Publication Date Title
US20220084279A1 (en) Methods for manipulating objects in an environment
US11348316B2 (en) Location-based virtual element modality in three-dimensional content
US11853527B2 (en) Devices, methods, and graphical user interfaces for providing computer-generated experiences
KR102566955B1 (ko) 가상 종이
CN110633617B (zh) 使用语义分割的平面检测
KR20230062802A (ko) 경면 반사를 제공하는 표면들의 이미지-기반 검출 및 반사 수정
US20200401804A1 (en) Virtual content positioned based on detected object
EP3814876B1 (en) Placement and manipulation of objects in augmented reality environment
US11699412B2 (en) Application programming interface for setting the prominence of user interface elements
CN113678173A (zh) 用于虚拟对象的基于图绘的放置的方法和设备
US11915349B1 (en) Extrusion technique for curve rendering
US20240094862A1 (en) Devices, Methods, and Graphical User Interfaces for Displaying Shadow and Light Effects in Three-Dimensional Environments
WO2024063786A1 (en) Devices, methods, and graphical user interfaces for displaying shadow and light effects in three-dimensional environments
WO2024054433A2 (en) Devices, methods, and graphical user interfaces for controlling avatars within three-dimensional environments

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right