KR20180038521A - 증강 및/또는 가상 현실 환경에서의 텔레포테이션 - Google Patents

증강 및/또는 가상 현실 환경에서의 텔레포테이션 Download PDF

Info

Publication number
KR20180038521A
KR20180038521A KR1020187006688A KR20187006688A KR20180038521A KR 20180038521 A KR20180038521 A KR 20180038521A KR 1020187006688 A KR1020187006688 A KR 1020187006688A KR 20187006688 A KR20187006688 A KR 20187006688A KR 20180038521 A KR20180038521 A KR 20180038521A
Authority
KR
South Korea
Prior art keywords
virtual
scale
movement
input device
detecting
Prior art date
Application number
KR1020187006688A
Other languages
English (en)
Other versions
KR102098316B1 (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 KR20180038521A publication Critical patent/KR20180038521A/ko
Application granted granted Critical
Publication of KR102098316B1 publication Critical patent/KR102098316B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/013Eye tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • 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

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)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Transfer Between Computers (AREA)
  • Processing Or Creating Images (AREA)

Abstract

가상 현실 환경에서 텔레포트(순간이동) 및 스케일링(scaling)을 위한 시스템에서, 사용자는 제1 스케일로 경험하는 제1 가상 위치로부터 제2 스케일로 경험하는 제2 가상 위치로 텔레포트할 수 있다. 사용자는 핸드헬드 전자 장치를 통해 단일의 외부 입력으로 새로운 제2 가상 위치 및 새로운 제2 스케일을 선택하여, 상기 전자 장치의 트리거링 동작의 해제시에, 사용자는 상기 새로 선택된 스케일로 새로 선택된 제2 가상 위치에 텔레포트할 수 있다.

Description

증강 및/또는 가상 현실 환경에서의 텔레포테이션
본 문서는 일반적으로 가상 현실 환경에서의 스케일링(scaling) 및 텔레포테이션(teleportation)에 관한 것이다.
증강 현실(AR) 시스템 및/또는 가상 현실(VR) 시스템은 3차원(3D) 몰입형(immersive) 가상 환경을 발생할 수 있다. 사용자는 예를 들어, 디스플레이 디바이스를 볼 때 사용자가 보게 되는 디스플레이, 안경 또는 고글을 포함하는 헬멧 또는 다른 헤드 장착형 디바이스, 센서들이 장착된 장갑, 센서들을 포함하는 외부 핸드헬드 디바이스들 및 기타 전자 디바이스들과 같은 다양한 전자 디바이스들과의 상호 작용을 통해 상기 가상 환경을 경험할 수 있다. 상기 가상 환경에 몰입될(immersed) 때, 사용자는 상기 가상 환경을 통해 이동할 수 있고, 가상 환경과 상호 작용하고 가상 환경과의 상호 작용을 개인화하기 위한 전자 디바이스의 물리적 이동 및/또는 조작(manipulation)을 통해 가상 환경의 다른 영역으로 텔레포트(순간이동)(teleport)할 수 있다.
일 양태에서, 방법은 가상 환경에 대한 제1 가상 스케일로 시청하기 위한 가상 환경에서 제1 가상 위치의 가상 렌더링(virtual rendering)을 디스플레이하는 단계, 제2 가상 위치를 선택하는 입력을 수신하고, 상기 제2 가상 위치를 시청하기 위한 제2 가상 스케일을 선택하는 단계 - 상기 제1 가상 스케일은 상기 제2 가상 스케일과 상이하며 -, 상기 입력을 수신한 후에 상기 제2 가상 스케일에서 상기 제2 가상 위치로 텔레포트(순간이동)(teleport)하는 단계를 포함할 수 있다.
다른 양태에서, 시스템은 가상 환경을 발생하도록 구성된 컴퓨팅 장치(computing device)를 포함할 수 있으며, 상기 컴퓨팅 장치는 실행 가능한 명령어들을 저장하는 메모리 및 상기 명령어들을 실행하도록 구성된 프로세서를 포함할 수 있다. 상기 명령어들의 실행은 상기 컴퓨팅 장치로 하여금 가상 환경 내의 제1 가상 스케일에서 시청하기 위한 가상 환경의 제1 가상 위치의 가상 렌더링을 디스플레이하게 하고, 상기 가상 환경에서의 제2 가상 위치의 선택을 나타내는 입력 및 상기 제2 가상 위치를 시청하기 위한 제2 가상 스케일의 선택을 수신하게 하고, 상기 입력을 수신한 후에 상기 제2 가상 스케일에서 상기 제2 가상 위치로 텔레포트(순간이동)(teleport)할 수 있다.
하나 이상의 구현들(implementations)의 세부사항은 첨부된 도면 및 이하의 설명에서 설명된다. 다른 특징들은 상세한 설명 및 도면들 및 청구항들로부터 명백해질 것이다.
도 1은 본 명세서에 설명된 구현들에 따라, 헤드 장착형 디스플레이 장치 및 핸드헬드 전자 장치(handheld electronic device)를 포함하는 가상 현실 시스템의 예시적인 구현을 나타낸다.
도 2a 및 도 2b는 본 명세서에 설명된 구현들에 따른 예시적인 헤드 장착형 디스플레이 장치의 사시도이다.
도 3은 본 명세서에 설명된 구현들에 따른 헤드 장착형 전자 장치(head mounted electronic device) 및 핸드헬드 전자 장치의 블록도이다.
도 4a-4d, 도 5a-5f 및 도 6a-6d는 본 명세서에 설명된 구현들에 따라, 증강 및/또는 가상 현실 환경에서의 텔레포테이션(순간이동)(teleportation) 및 스케일링을 도시하는 3인칭도이다.
도 7은 본 명세서에 설명된 구현들에 따라, 증강 및/또는 가상 현실 환경에서 텔레포트(순간이동)(teleport)하는 방법의 흐름도이다.
도 8은 본 명세서에 설명된 기술들을 구현하는데 사용될 수 있는 컴퓨터 장치 및 이동 컴퓨터 장치(mobile computer device)의 예를 도시한다.
예를 들어 HMD(Head Mounted Display) 장치를 착용한 증강 현실 및/또는 가상 현실 환경에 몰입한 사용자는 가상 환경을 탐험하고, 다양하고 상이한 유형의 입력들을 통해 가상 환경에서 가상 객체들(virtual objects), 피처들(features) 등과 상호 작용할 수 있다. 이러한 입력들은 예를 들어, 전자 장치 및/또는 HMD에 의해 방출된 가상 빔 또는 가상 광선과 같은 HMD로부터 분리된 전자 장치의 조작을 포함하는 물리적 상호 작용, 전자 장치 및/또는 HMD의 움직임, 전자 장치 및/또는 HMD의 터치 감지 표면상에 인가된 터치, 및/또는 손/팔 제스처, 머리 움직임 및/또는 머리 및/또는 눈 방향 시선 등을 포함할 수 있다. 사용자는 예를 들어, 가상 환경을 통해 이동하고, 가상 환경의 제1 영역으로부터 가상 환경의 제2 영역으로 또는 제1 가상 환경으로부터 제2 가상 환경으로 이동(moving), 전이(transitioning) 또는 텔레포트(순간이동)(teleport)하는 것과 같이, 가상 환경에서 특정 동작을 실행하기 위해 상이한 유형들의 상호 작용들 중 하나 이상을 구현할 수 있다.
본 명세서에 설명된 구현들에 따른 시스템 및 방법은 가상 환경의 제1 가상 영역으로부터 상기 가상 환경의 제2 가상 영역으로 및/또는 제1 가상 환경으로부터 제2 가상 환경으로의 텔레포테이션(순간이동)을 용이하게 할 수 있다. 여기서 텔레포팅(teleporting)은 가상 환경에서 제1 가상 위치 대신에 제2 가상 위치의 렌더링을 표시하는 것을 포함한다. 또한, 본 명세서에 설명된 구현들에 따른 시스템 및 방법은 사용자가 가상 스케일로 지칭될 수 있는 사용자에 대한 가상 환경의 스케일(scale)을 조정할 수 있게 하고, 상기 제1 가상 영역을 상기 제2 가상 영역으로 또는 상기 제1 가상 환경에서 상기 제2 가상 환경으로 이동하면서 대응하는 원근감(corresponding perspective)으로 스케일링(scaling)할 수 있게 한다. 이러한 스케일링 및 대응하는 원근감의 변화(corresponding change in perspective)는 예를 들어, 가상 환경의 요소들(elements)에 비해 사용자의 크기가 현저히 증가(perceived increase) 및/또는 가상 환경의 요소들의 크기 감소(대응하는 원근감의 변화), 또는 상기 가상 환경의 요소들에 비해 사용자 크기가 현저히 감소(perceived decrease) 및/또는 상기 가상 환경 요소들의 크기 증가(대응하는 원근감의 변화)를 포함할 수 있다. 또한, 이러한 현저한 크기 변화(perceived change in size)와 함께 스케일은 사용자의 눈 사이의 가상 거리의 변화에 기초한 조정들을 포함할 수 있으므로, 외관(appearance) 및 원근감의 변화는 의도된 비율들을 유지한다. 이러한 방식으로, 사용자는 선택된 스케일된 크기 및/또는 원근감으로 제2 가상 영역 또는 제2 가상 환경에 도달할 수 있다. 이는 단일 동작으로 선택된 스케일된 원근감 및/또는 크기로 가상 환경의 상기 제1 가상 영역에서 제2 가상 영역으로 또는 제1 가상 환경에서 제2 가상 환경으로의 실질적으로 심리스(seamless)한 전환 경험(transition experience)을 사용자에게 제공할 수 있다. 즉, 사용자가 제2 가상 영역 또는 제2 가상 위치, 및 스케일된 원근감(scaled perspective) 및/또는 크기를 선택하면, 예를 들어 제어기의 조작 장치(manipulation device)의 조작과 같은 단일 명령은 사용자의 가상 위치 및 가상 원근감에 대하여 가상 환경에서 선택된 변화를 야기하여 사용자에게 실질적으로 순간 이동의 느낌을 제공할 수 있다.
도 1에 도시된 구현 예에서, HMD(100)를 착용한 사용자는 휴대용 핸드헬드 전자 장치(portable handheld electronic device)(102)를 잡고 있다. 핸드헬드 전자 장치(102)는, 예를 들어, 컨트롤러, 스마트폰, 조이스틱, 또는 HMD(100)에 의해 발생되고 사용자에게 예를 들어 HMD(100)의 디스플레이상에 디스플레이된 가상 환경에서의 상호 작용을 위해 HMD(100)와 페어링되어 통신할 수 있는 다른 휴대용 핸드헬드 전자 장치일 수 있다. 핸드헬드 전자 장치(102)는 예를 들어 유선 연결 또는 WiFi 또는 블루투스 연결과 같은 무선 연결을 통해 HMD(100)와 동작 가능하게 커플링되거나 HMD(100)와 페어링될 수 있다. 핸드헬드 전자 장치(102)와 HMD(100)의 페어링 또는 동작 가능한 커플링은 핸드헬드 전자 장치(102)와 HMD(100) 사이의 통신 및 핸드헬드 전자 장치(102)와 HMD(100) 간의 데이터 교환을 제공할 수 있다. 이는 핸드헬드 전자 장치(102)가 HMD(100)에 의해 발생된 몰입형 가상 환경에서 상호 작용하기 위해 HMD(100)와 통신하는 제어기로서 기능하도록 허용할 수 있다. 즉, 예를 들어 핸드헬드 전자 장치(102)로부터 선택을 위해 가상 객체로 지향된 가상 빔 또는 가상 광선과 같은 핸드헬드 전자 장치(102)의 조작, 및/또는 핸드헬드 전자 장치(102)의 터치 표면상에 수신된 입력 및/또는 핸드헬드 전자 장치(102)의 움직임은 HMD(100)에 의해 발생되고 및 디스플레이된 가상 환경에서 해당 선택(corresponding selection), 또는 이동 또는 다른 유형의 상호 작용으로 전환(translated)될 수 있다. 이는 예를 들어, 현재 가상 환경으로부터 선택된 목적지 가상 환경으로의 사용자의 텔레포테이션(순간 이동)을 포함할 수 있고, 일부 구현들에서 상기 선택된 목적지 가상 환경으로의 텔레포테이션과 협력(coordination)하여, 사용자 선택에 기초하여 사용자의 현저한 크기(perceived size) 또는 원근감(perspective)의 스케일링을 포함할 수 있다.
도 1에 도시된 구현 예는, HMD(100)와의 데이터 교환을 위해 HMD(100)와 통신하는 하나의 핸드헬드 전자 장치(102), 및 HMD(100)에 의해 발생된 가상 환경에서의 피쳐들(features), 요소들(elements), 객체들(objects) 등과의 상호 작용(interaction)을 포함한다. 그러나, 일부 구현들에서, 하나 이상의 핸드헬드 전자 장치(102)는 HMD (100)와 동작 가능하게 결합될 수 있고, HMD(100)와 통신할 수 있고, 가상 환경에서의 상호 작용을 위해 함께 동작하거나 별도로 동작할 수 있다.
도 2a 및 도 2b는 예를 들어 도 1의 사용자에 의해 착용된 HMD(100)와 같은 예시적인 HMD의 사시도이다. HMD(100)는 예를 들어, 헤드폰들에 장착된 스피커들을 포함하고 프레임(120)에 결합된 오디오 출력 장치(130)가 있는 프레임(120)에 결합된 하우징(110)을 포함할 수 있다. 도 2b에 도시된 바와 같이, 하우징(110)의 프론트 부(front portion)(110a)는 하우징(110)의 베이스 부(base portion)(110b)로부터 멀리 회전(rotated away)되어 하우징(110)에 수용된 컴포넌트들의 일부가 보인다. 디스플레이(140)는 하우징(110)의 프론트 부(110a)의 내부 대면 측(interior facing side)에 장착될 수 있다. 프론트 부(110a)가 하우징(110)의 베이스 부(110b)에 대해 폐쇄 위치(closed position)에 있을 때, 렌즈(150)는 사용자의 눈과 디스플레이(140) 사이의 하우징(110)에 장착될 수 있다. 일부 구현들에서, HMD(100)는 다양한 센서들을 포함하는 감지 시스템(sensing system)(160), 및 프로세서(190) 및 HMD(100)의 작동을 용이하게 하는 다양한 제어 시스템 장치들(various control system devices)을 포함하는 제어 시스템(170)을 포함할 수 있다.
일부 구현들에서, HMD(100)는 스틸 이미지 및 동영상을 캡처하기 위해, 예를 들어, 이미지 센서 및/또는 광 센서를 포함하는 카메라(180)를 포함할 수 있다. 카메라(180)에 의해 캡쳐된 이미지들은 실제 환경에서의 사용자 및/또는 핸드헬드 전자 장치(102)의 물리적 위치 또는 가상 환경에 대한 물리적 환경을 추적하는데 도움이 될 수 있고, 또는 패스 스루 모드(pass through mode)에서 디스플레이(140)상의 사용자에게 디스플레이될 수 있으며, 실제 세계(real world), 물리적 환경에서의 측면에 대한 상황 인식(situational awareness)을 사용자에게 제공할 수 있고, 또는 하우징(110)을 사용자의 시야 밖으로 이동시키기 위해 사용자가 HMD(100)를 제거하거나 HMD(100)의 구성을 변경하지 않고 일시적으로 가상 환경을 떠나 물리적 환경으로 돌아갈 수 있게 할 수 있다.
일부 구현들에서, HMD(100)는 사용자의 시선을 검출하고 추적하기 위한 시선 추적 장치(165)를 포함할 수 있다. 시선 추적 장치(165)는 예를 들어 사용자의 눈의 특정 부분, 예컨대 동공과 같은 사용자의 눈의 이미지를 캡처하고, 사용자의 시선을 감지하고 사용자의 시선의 방향 및 움직임을 추적하기 위해 이미지 센서(165A) 또는 다중 이미지 센서(165A)를 포함할 수 있다. 일부 구현들에서, HMD(100)는 상기 검출된 시선이 가상 환경에서 해당 상호작용(corresponding interaction)으로 전환(translated)될 사용자 입력으로서 처리되도록 구성될 수 있다.
증강 및/또는 가상 현실 환경에서 텔레포테이션(순간이동) 및 스케일링을 제공하는 시스템의 블록도는 도 3에 도시된다. 상기 시스템은 제2 전자 장치(302)와 통신하는 제1 전자 장치(300)를 포함할 수 있다. 상기 제1 전자 장치(electronic device)(300)는 예를 들어도 1 및 도 2a-2b와 관련하여 상술 된 바와 같은 가상 환경을 발생 및 디스플레이하는 HMD일 수 있으며, 제2 전자 장치(electronic device)(302)는 예를 들어, 도 1과 관련하여 상술한 바와 같은 핸드헬드 전자 장치일 수 있으며, 제1 전자 장치(300)에 의해 발생되고 디스플레이되는 가상 환경과의 사용자 상호 작용을 용이하게 하기 위해 제1 전자 장치(300)와 통신한다.
제1 전자 장치(300)는 도 2a-2b에 도시된 감지 시스템(160) 및 제어 시스템 (170)과 각각 유사한 감지 시스템(360) 및 제어 시스템(370)을 포함할 수 있다. 감지 시스템(360)은 예를 들어 광 센서, 오디오 센서, 이미지 센서, 거리/근접 센서 및/또는 다른 센서들을 포함하는 하나 이상의 상이한 유형의 센서들 및/또는 예를 들어, 도 2b에 도시된 시선 추적 장치(gaze tracking device)(165)와 같이, 사용자의 시선을 검출 및 추적하도록 배치된 이미지 센서를 포함하는 다른 조합(들)의 센서들을 포함할 수 있다. 제어 시스템(370)은 예를 들어, 전력/포지(pause) 제어 장치, 오디오 및 비디오 제어 장치, 광 제어 장치, 전환 제어 장치(transition control device), 및/또는 다른 장치들 및/또는 상이한 조합(들)의 장치들을 포함할 수 있다. 감지 시스템(360) 및/또는 제어 시스템(370)은 특정 구현에 따라 더 많거나 적은 장치들을 포함할 수 있다. 감지 시스템(360) 및/또는 제어 시스템(370)에 포함된 구성요소들(elements)은 예를 들어 도 2a-2b에 도시된 HMD(100) 이외의 다른 HMD 내에서 상이한 물리적 배치(different physical arrangement)(예컨대, 상이한 물리적 위치)를 가질 수 있다. 또한, 제1 전자 장치(300)는 감지 시스템(360) 및 제어 시스템(370)과 통신하는 프로세서(390), 메모리(380), 및 제1 전자 장치(300)와 예를 들어 제2 전자 장치(302)와 같은 다른 외부 장치(external device) 사이의 통신을 제공하는 통신 모듈(350)를 포함할 수 있다.
상기 제2 전자 장치(302)는 예를 들어 제1 전자 장치(300)와 같은 다른 외부 장치와 제2 전자 장치(302) 사이의 통신을 제공하는 통신 모듈(306)을 포함할 수 있다. 제1 전자 장치(300)와 제2 전자 장치(302) 간의 데이터 교환을 제공하는 것 이외에, 통신 모듈(306)은 상술한 바와 같이 가상 광선 또는 가상 빔을 방출하도록 구성될 수도 있다. 제2 전자 장치(302)는 예를 들어 카메라 및 마이크로폰에 포함되는 것과 같은 이미지 센서 및 오디오 센서를 포함하는 감지 시스템, 관성 측정 유닛, 핸드헬드 전자 장치의 터치 감지 표면에 포함된 터치 센서를 포함하거나, 또는 제어기, 또는 스마트폰, 및 그러한 다른 센서들 및/또는 상이한 조합(들)의 센서들을 포함할 수 있다. 프로세서(309)는 감지 시스템(304) 및 제2 전자 장치(302)의 제어기(305)와 통신할 수 있으며, 제어기(305)는 메모리(308)에 액세스하고 제2 전자 장치(302)의 전체 동작을 제어한다.
사용자의 새롭게 선택된 스케일에 따라 제2 가상 위치의 사용자의 원금감(perspective) 또는 뷰가 스케일링도록 가상 환경의 가상 요소들(virtual elements)에 비해 현저한 크기(perceived size) 및/또는 사용자의 원금감(perspective)을 스케일링하면서, 사용자가 제1 가상 위치에서 제2 가상 위치로 텔레포트할 수 있게 하는 가상 현실 시스템의 구현 예는 도 4a-4d 및 5a-5f에 도시된다. 도 4a-4d 및 도 5a-5f는 예를 들어, HMD(100)의 디스플레이(140) 상의 사용자에 의해 시청된(viewed) 가상 피처들/가상 객체들/가상 요소들(elements)(예를 들어, 다리, 물 등과 같은)를 포함하고 HMD(100)에 의해 발생된 가상 환경의 뷰를 포함하는 사용자의 3인칭 뷰(third person view)를 나타낸다. 이러한 요소들(elements)은 예를 들어 HMD(100) 내의 디스플레이(140) 상의 사용자에 의해 시청(viewed)될 수 있으며, 이들 가상 객체들의 표현은 단지 설명 및 예시의 용이함을 위해 HMD(100) 외부의 4a-4d 및 도 5a-5f에 도시된다.
도 4a에 도시된 바와 같이, 제1 가상 위치(A)에 위치한 사용자는 핸드헬드 전자 장치(102)상의 제어 메커니즘을 작동시킬 수 있다. 핸드헬드 전자 장치(102)상의 사용자에 의해 작동되는 제어 메커니즘은 예를 들어 트리거, 버튼, 노브(knob), 토글(toggle), 스위치, 조이스틱, 터치 감지 표면 등과 같은 핸드헬드 전자 장치(102) 상에 제공된 다수의 상이한 제어 메커니즘들 중 임의의 하나가 될 수 있다. 논의 및 설명의 용이함을 위해, 이하에서, 핸드헬드 전자 장치(102)상의 사용자에 의해 작동되는 제어 메커니즘은 트리거(trigger)로 칭해될 수 있다.
상기 트리거의 작동(actuation)은 가상 빔(400)을 핸드헬드 전자 장치(102)로부터 바깥쪽인 제2 가상 위치(B)로 향하게 할 수 있다. 사용자는 가상 빔(400)이 텔레포테이션을 위해 선택될 제2 가상 위치(B)와 교차하도록 핸드헬드 전자 장치(102)를 이동(move)시킬 수 있다. 가상 빔(400)과 선택될 가상 객체(이 예에서, 제2 가상 위치 B) 사이의 교차점(400B)은, 예를 들어, 도 4b에 도시된 바와 같이 가상 빔과 상기 선택된 제2 가상 위치(B) 간의 교차점에서 가상 빔(400)의 종단 부(terminal end)(400B) 또는 종단점(endpoint)(400B)에 의해 표현될 수 있으며, 사용자가 제1 가상 위치(A)로부터 제2 가상 위치(B)로 텔레포트하기를 원한다는 것을 나타낸다. 이하 간단히 설명 및 예시를 위해, 가상 빔(400)과 선택될 가상 객체 사이의 교차 영역을 가상 종단점(virtual endpoint)(400B)이라 칭하기로 한다. 그러나, 선택될 가상 객체와 교차하는 가상 빔(400)의 임의의 지정된 부분의 검출 및/또는 선택될 가상 객체의 근접한 세트(set proximity) 내에서의 검출은 가상 객체의 선택 및 조작을 위한 입력으로 간주될 수 있다. 제2 가상 위치(B)로 지향된 가상 빔(400)과 함께, 시스템은 또한 도 4b에 도시된 바와 같이, 사용자의 현재 크기 또는 가상 환경의 가상 요소들에 비해(relative) 사용자의 현재 스케일로 사용자의 가상 시각적 표현(virtual visual representation)(410)을 발생할 수 있다.
도 4c에 도시된 바와 같이, 상기 트리거를 작동시키는 것을 계속하고, 핸드헬드 전자 장치(102)를 조작함으로써, 예를 들어 핸드헬드 전자 장치(102)를 상향 또는 + Y 방향으로 이동시키거나, 상기 트리거를 상향 또는 + Y 방향으로 조작함으로써, 사용자는 예를 들어 제2 가상 위치(B)로 텔레포테이션(teleportation) 할 때 사용자의 크기 증가 또는 사용자의 스케일 또는 원근감을 경험하도록 조정할 수 있다. 사용자가 이러한 방식으로 스케일을 조정하기 위해 핸드헬드 전자 장치(102)를 계속해서 조작함에 따라, 도 4c에 도시된 바와 같이, 사용자의 시각적 표현(410)은 사용자가 핸드헬드 전자 장치(102)를 움직일 때 크기가 증가하여 사용자에 대한 상대적인 스케일의 시각적 인디케이션(visual indication)을 제공할 수 있다. 사용자가 이러한 방식으로 원하는 제2 가상 위치(B) 및 원하는 제2 스케일을 선택하고 나서 상기 트리거를 해제하면, 상기 시스템은 도 4d에 도시된 바와 같이, 사용자의 증가된 스케일로 조정된 원근감으로 상기 사용자를 제2 가상 위치(B)로 텔레포트할 수 있다.
유사하게, 도 5a에 도시된 바와 같이, 제1 가상 위치(A)에 위치된 사용자는 핸드헬드 전자 장치(102)상의 트리거 또는 다른 제어 메커니즘을 작동시킬 수 있다. 트리거의 작동은 가상 빔(400)을 발생할 수 있고, 사용자는 가상 빔(400)의 종단부(400B)가 제2 가상 위치(B)로 지향되도록 가상 빔(400)을 지향(direct)시킬 수 있다. 상기 제2 가상 위치(B)로 지향된 가상 빔(400)과 함께, 상기 시스템은 또한도 5b에 도시된 바와 같이 사용자의 현재 크기 또는 스케일로 사용자의 시각적 표현(410)을 발생할 수 있다. 상기 트리거를 작동시키는 것을 계속하고, 핸드헬드 전자 장치(102)를 하향 또는 -Y 방향으로 이동시키거나 또는 상기 트리거를 하향 또는 -Y 방향으로 조작함으로써, 사용자는 핸드헬드 전자 장치(102)를 움직일 때 사용자의 시각적 표현(410)이 감소하여 제2 가상 위치(B)에서의 가상 피처들에 비해 자신의 크기 또는 그의 스케일을 감소시키거나 자신의 원근감을 조정할 수 있으며, 도 5c에 도시된 바와 같이, 사용자에 대한 상대적인 스케일의 시각적 인디케이션(visual indication)을 제공한다. 사용자가 이러한 방식으로 원하는 제2 가상 위치(B) 및 원하는 제2 스케일을 선택하고 나서 상기 트리거를 해제하면, 상기 시스템은 도 5d에 도시된 바와 같이 감소된 스케일로 조정된 원근감으로 사용자를 가상 위치(B)로 텔레포트할 수 있다.
도 4a-4d 및 도 5a-5d에 도시된 예들과 같이, 가상 빔(400)은, 종단점(endpoint)(400B)을 제2 가상 위치(B)에 위치시키고, 상기 핸드헬드 전자 장치의 물리적 이동에 의해 달성되는 스케일을 증가/감소시키기 위한 상기 가상 빔(400)의 후속 이동으로 핸드헬드 전자 장치(102)로부터 바깥쪽으로 지향된다. 그러나, 일부 구현들에서, 제2 가상 위치(B)의 선택은 예를 들어 HMD(100)와 같은 다른 기준점으로부터 바깥쪽으로 가상 빔(400)을 지향시킴으로써 달성될 수 있고, 및/또는 사용자의 시선 입력은 제2 가상 위치(B) 및/또는 다른 그러한 선택 입력 모드들을 선택하는 데 사용될 수 있다.
도 4a-4d 및 도 5a-5d에 도시된 예들에서, 사용자는 핸드헬드 전자 장치(102)의 물리적 이동을 상향/+ Y 방향 및/또는 하향/-Y 방향으로 적용하여 스케일의 원하는 증가 및/또는 감소를 나타낸다. 그러나, 이는 스케일 조정을 하도록 적용될 수 있는 핸드헬드 전자 장치(102)의 조작의 한 예일 뿐이다. 예를 들어, 일부 구현들에서, 사용자는 핸드헬드 전자 장치(102)의 터치 표면상에 드래그 입력을 적용하여 원하는 스케일의 증가 또는 감소를 나타낼 수 있으며, 및/또는 핸드헬드 전자 장치(102)의 토글 또는 슬라이드 또는 화살표 스위치(arrow switch)를 또는 핸드헬드 전자 장치의 다른 조작들을 조작하여 원하는 스케일 증가 또는 감소를 나타낼 수 있다.
도 4a-4d 및 도 5a-5d는 제2 가상 위치에 대한 사용자의 시각적 표현(410)이 상기 스케일링된 크기/원근감, 상기 선택된 텔레포트 위치에서의 사용자의 그림자 형태인 예를 도시한다. 그러나, 일부 구현들에서, 스케일의 시각적 인디케이터(visual indicator)는 예를 들어, 크기를 증가/감소시키는 바(bar), 가상 측정 장치를 따라 커서의 이동 등과 같은 다른 방식으로 제공될 수 있다. 또한, 도 4a-4d 및 도 5a-5d는 사용자의 크기가 상기 선택된 텔레포트 위치에 비해(relative) 스케일링되는 예들을 도시한다. 그러나, 일부 구현들에서, 상기 환경은 사용자의 크기가 동일하게 유지되는 동안 스케일링(scaled)될 수 있으며, 본질적으로 동일한 효과를 제공한다.
상기 텔레포트된(순간이동된) 상태에서(도 4d에 도시된 바와 같이 가상 환경에 비해 증가된 사용자 스케일 및 도 5d에 도시된 바와 같이 가상 환경에 비해 감소된 사용자 스케일로), 사용자의 시각적 경험은 단순한 축소(도 5d에 도시된 감소된 사용자 스케일의 경우) 또는 확대(도 4d에 도시된 증가된 사용자 스케일의 경우)가 아니다. 오히려, 사용자의 스케일 또는 원근감을 이러한 방식으로 증가 및 감소시키는 경우, 가상 위치의 사용자의 전체 원근감이 조정된다. 즉, 가상 위치의 객체들(objects)이 스케일링된 원금감(scaled perspective)으로 사용자에게 나타나는 방식은 상기 객체들에 대한(relative) 눈의 위치와 함께 공간 속성(spatial attributes) 또는 치수(dimensions)를 기반으로 한다. 예를 들어, 증가된 사용자 스케일에서, 제2 가상 위치(B)에서의 가상 객체들(예를 들어, 도 4d에 도시된 다리)의 출현은 사용자에게 감소된 크기로 나타나고, 사용자의 크기 증가와 실질적으로 상응(commensurate)하고, 상기 스케일은 또한 사용자 눈 사이의 가상 거리의 증가에 기초하여 조정된다. 유사하게, 감소된 사용자 스케일에서, 제2 가상 위치(B)에서의 가상 객체들(예를 들어, 도 5d에 도시된 다리)의 출현은 사용자에게 증가된 크기로 나타나고, 사용자의 크기 감소와 실질적으로 상응(commensurate)하고, 상기 스케일은 또한 사용자 눈 사이의 가상 거리의 감소에 기초하여 조정된다.
단순한 확대 또는 축소가 아닌 공간 속성(spatial attributes)을 기반으로 한 상기 스케일링은 사용자가 경험할 가상 위치에서 가상 객체들의 보다 현실적인 원근감을 제공한다. 또한, 상기 스케일링된 사용자 크기 및 원근감을 통합(incorporating)하면서 상기 가상 위치로의 텔레포테이션(순간이동)은 제1 가상 위치(A)로부터 제2 가상 위치(B)로 비교적 심리스(seamless)한 텔레포테이션(순간이동)을 제공하여 상기 가상 환경에서의 사용자의 경험을 향상시킬 수 있다.
일부 구현들에서, 사용자는 제2 가상 위치(B)의 초기 선택 후에, 그리고 제2 가상 위치(B)로 텔레포트하기 전에, 제2 가상 위치(B)에서의 도착 위치를 시프트(shift) 또는 조정하도록 선택할 수 있다. 예를 들어, 도 5e에 도시된 바와 같이, 사용자의 스케일을 도 5c에 도시된 바와 같이 원하는 만큼 감소시킨 후에(또는 도 4c에 도시된 바와 같이 원하는 양만큼 사용자의 스케일을 증가시킴), 그리고 상기 트리거를 해제하고 상기 조정된 사용자 스케일로 제2 가상 위치(B)로 텔레포트하기 전에, 사용자는 핸드헬드 전자 장치(102)를 좌측 또는 우측으로 또는 ±X 방향으로 이동시킴으로써 자신의 텔레포트 도달 위치를, 예를 들어 가상 위치(B)에 의해 표시된 위치의 좌측 또는 우측 또는 ±X 방향으로 이동 또는 조정할 수 있다(또는 유사한 방식으로 핸드헬드 전자 장치(102)의 다른 제어 메커니즘을 조작함). 유사하게, 도 5e에 도시된 바와 같이, 상기 트리거를 해제하고 제2 가상 위치(B)로 텔레포트하기 전에, 사용자는 핸드헬드 전자 장치(102)를 전방 및/또는 후방으로 또는 ±Z 방향으로 이동시킴으로써, 전방 및/또는 후방 방향으로, 또는 ±Z 방향으로 그의 텔레포트 도착 위치를 시프트(shift) 또는 조정할 수 있다(또는 유사한 방식으로 핸드헬드 전자 장치(102)의 다른 제어 메커니즘을 조작함). 일단 사용자가 원하는대로 텔레포트 도착 위치를 조정하고, 전술한 바와 같이 ±X 방향 및/또는 ±Z 방향으로 핸드헬드 전자 장치(102)를 이동시키면, 상기 트리거의 해제는 상기 이동된 텔레포트 도착 위치, 상기 스케일링된 사용자 크기로 사용자를 제2 가상 위치(B)로 텔레포트시킬 수 있다.
일부 상황들에서, 사용자는 핸드헬드 전자 장치(102)로부터 가상 위치(B)로 가상 빔(400)을 지향시킬 수 있고(또는 가상 빔(400)을 HMD(100)로부터 제2 가상 위치(B)로 지향시킬 수 있거나, 또는 상술한 바와 같이 다른 방식으로 제2 가상 위치(B)를 선택할 수 있다), 도 4b 및 5b에 도시된 바와 같이, 제1 가상 위치(A)로부터 제2 가상 위치(B)로 텔레포트하기 위한 입력으로서 상기 트리거를 작동시킨 다음 사용자가 제2 가상 위치(B)로 텔레포트하기를 원하지 않는다고 결정할 수 있다. 전술한 구현들에서, 이 지점에서의 상기 트리거(또는 핸드헬드 전자 장치(102)의 다른 작동/제어 메커니즘)의 해제는, 이 지점에 대한 사용자의 입력과 연관된 상기 제2 가상 위치(B)로 텔레포트하라는 명령을 취소하기 위한 메커니즘이 없는 경우에, 제1 가상 위치(A)로부터 제2 가상 위치(B)로 사용자를 자동적으로 텔레포트(teleport)시킨다. 일부 구현들에서, 가상 빔(400)/종단점(400B)이 미리설정된 임계치보다 큰 특정 거리 또는 각도로 이동하게 하는 특정 이동, 예를 들어 핸드헬드 전자 장치(102)의 이동은 제1 가상 위치(A)로부터 제2 가상 위치(B)로 텔레포테이션을 수행하기 이전에 상기 초기 텔레포트 명령이 취소되도록 할 수 있다.
예를 들어, 도 5f에 도시된 바와 같이, 텔레포테이션(순간 이동)(도 4b 및 도 5b에 도시된 바와 같이)을 위한 제2 가상 위치(B)를 선택한 후, 적용 가능한 경우, 스케일 조정을 적용한 후(도 4c 및 도 5c에 도시된 바와 같이), 상기 트리거(또는 다른 작동 메커니즘)를 해제하고 상기 조정된 스케일(적용된다면)로 제2 가상 위치(B)로 텔레포트하기 전에, 사용자는 가상 빔(400)/종단점(400B)이 미리 설정된 거리 또는 미리 설정된 각도만큼 상기 선택된 가상 위치(B)로부터 멀어지도록 핸드헬드 전자 장치(102)를 이동시키거나 시프트시키거나 회전시킬 수 있다. 상기 미리 설정된 거리 또는 각도 또는 임계값을 초과하는 거리 또는 각도에 의한 이동은 사용자의 제2 가상 위치(B)의 선택을 취소할 수 있다. 이는 예를 들어, 전자 장치(102)의 이동을 검출하는 것 외에 추가적인 제어 메커니즘을 제공할 필요없이 사용자에게 취소 동작이 이용 가능하다는 이점을 갖는다.
예를 들어, 일부 구현들에서, 사용자는 미리설정된 각도 θ보다 큰 각도 거리를 통해 핸드헬드 전자 장치(102) 및 가상 빔(400)을 이동, 시프트 또는 회전시킴으로써 가상 빔(400)을 제2 가상 위치(B)로부터 멀어지게 지향시킬 수 있다. 일부 구현들에서, 상기 각도 θ는, 전술한 바와 같이 텔레포트 도착 위치를 시프트하기 위한 입력과의 중복을 피하고, 상기 초기 텔레포테이션 선택의 취소를 나타내기 위해, 예를 들어 45도 이상일 수 있다. 일부 구현들에서, 상기 각도 θ는 45도 미만일 수 있다.
일부 구현들에서, 전술한 상기 선택된 제2 가상 위치(B)로 텔레포트하라는 명령에 대한 사용자 개시(initiation)의 취소는 제2 가상 위치(B)가 선택되는 방식에 대응하는 방식으로 수행될 수 있다. 예를 들어, 제2 가상 위치(B)가 제2 가상 위치(B)를 향한 시선 또는 HMD(100)로부터 멀리 지향된 가상 빔에 기초하여 선택되는 일부 구현들에서, 제2 가상 위치(B)로 텔레포트하기 위한 초기 명령은 미리 설정된 임계값보다 큰 헤드 이동(head movement), 시프트 또는 회전에 의해 취소될 수 있다.
도 4a-4d 및 도 5a-5f와 관련하여 전술한 지형 뷰(terrain view)에서 텔레포테이션 및 스케일링과 연관된 원리들(Principles)은 유사한 방식으로 공간 뷰(space view)에서도 텔레포테이션 및 스케일링에 적용될 수 있다. 예를 들어, 도 6a에 도시된 바와 같이, 사용자는 예를 들어 공간에서 보았을 때 지구의 가상 렌더링과 함께 HMD(100)의 디스플레이(140) 상에 제시될 수 있다. 사용자는 핸드헬드 전자 장치(102)로부터의 가상 빔(400)을 지구의 가상 렌더링에 향하게 하고, 종단점(400B)을 상기 선택된 가상 위치(B)에 위치시키고, 제2 가상 위치(B)를 선택하기 위해 핸드헬드 전자 장치(102)의 상기 트리거(또는 다른 제어 메커니즘)를 작동시킬 수 있다. 여기서, 상기 "가상 렌더링"이라는 용어는 상기 가상 환경에서의 위치 렌더링을 의미한다.
이 공간 뷰 배열(space view arrangement)에서, 사용자의 상대 스케일의 시각적 표현(410) 또는 텔레포테이션을 위해 선택된 가상 환경에 비한(relative) 원근감은, 예를 들어, 원 또는 디스크, 또는 다른 모양 또는 렌더링으로 나타낼 수 있다. 상기 트리거를 계속 누르고(depress) 있는 동안, 도 6b에 도시한 바와 같이, 사용자는 시각적 표현(410)의 대응하는 감소와 함께, 예를 들어 사용자의 상대 스케일을 감소시키기 위해 제1 방향으로 핸드헬드 전자 장치(102) 및 가상 빔(400)을 이동시키거나 회전시킬 수 있다. 이 예에서, 상기 감소된 사용자 스케일은 사용자 스케일의 시각적 표현(410)의 감소된 크기 또는 영역에 반영될 수 있다. 상기 트리거가 해제되면, 상기 시스템은 도 6c에 도시된 바와 같이 상기 감소된 사용자 스케일 또는 원근감으로 사용자를 상기 선택된 가상 위치(B)로 텔레포트시킬 수 있다. 증가된 사용자 스케일(도 6b에 도시된 감소된 사용자 스케일보다는)로 가상 위치(B)로의 텔레포테이션(순간이동)은 유사한 방식으로 수행될 수 있다. 이는, 예를 들어, 상기 트리거를 해제하고, 상기 선택된 가상 위치(B)로 텔레포트하기 전에 사용자 스케일의 시각적 표현(410)의 크기를 감소시키기보다는 증가시키기 위해 핸드헬드 전자 장치(102) 및 가상 빔(400)을 도 6b에 도시된 것과 반대 방향으로 이동시키거나 또는 회전시킴으로써 달성될 수 있다.
전술한 바와 유사하게, 제2 가상 위치(B)를 선택한 후에(도 6a에 도시된 바와 같은), 그리고 트리거를 해제하고 제2 가상 위치(B)로 텔레포트하기 전에, 사용자는 도 6d에 도시된 바와 같이, 예를 들어 미리 설정된 각도 θ보다 큰 각도 거리(angular distance)로 핸드헬드 전자 장치(102) 및 가상 빔(400)을 가상 위치(B)로부터 멀리 시프트, 회전 또는 다른 방식으로 이동시킴으로써 상기 선택된 텔레포테이션을 취소할 수 있다.
본 명세서에서 설명된 구현들에 따라, 증강 및/또는 가상 현실 환경에서의 텔레포트하는 방법은 도 7에 도시된다. 현재의 가상 위치로부터 새로이 선택된 가상 위치로 텔레포트하는 사용자 입력 또는 명령의 개시를 나타내는 새로운 가상 위치의 선택이 검출되면(블록 710), 상기 새롭게 선택된 가상 위치에 대한(relative) 사용자 원근감 및/또는 사용자 스케일을 조정(예를 들어, 증가 및/또는 감소)하기 위한 명령이 수신되었는지 여부가 결정될 수 있다(블록 720). 사용자의 원근감 및/또는 스케일을 조정하도록 하는 명령이 수신된 경우, 상기 상대적인 원근감 및/또는 스케일은 상기 수신된 명령에 따라 증가 및/또는 감소 될 수 있다(블록 730). 새롭게 선택된 가상 위치에 대한(relative) 사용자 원근감 및/또는 스케일을 증가 및/또는 감소시키는 명령 및 상기 새로운 가상 위치의 선택의 감지(detection)는 도 4a-4d, 도 5a-5f 및 도 6a-6d와 관련하여 전술한 바와 같이 수행된다. 사용자가 상대적인 원근감 및/또는 스케일을 조정하기 위한 명령의 입력을 완료한 후, 상기 조정된 원근감 및/또는 스케일로 상기 새로이 선택된 가상 위치로 텔레포트시키는 명령(예를 들어, 트리거의 해제 또는 핸드헬드 전자 장치 및/또는 HMD의 다른 조작과 같은)이 검출되면(블록 740), 상기 시스템은 상기 새롭게 선택된 사용자 원근법 및/또는 스케일로 사용자를 상기 새로이 선택된 가상 위치로 텔레포트할 수 있다(블록 750). 스케일링 및/또는 텔레포트하도록 하는 명령이 검출되지 않을 때, 새로운 가상 위치의 선택이 취소되었는지 아닌지 여부가 결정된다(블록 745). 상기 새롭게 선택된 가상 위치로 텔레포트하기 위한 명령의 취소의 감지는 도 5f 및 도 6d에 관해 상술한 바와 같이 수행될 수 있다. 이 프로세스는 가상 현실 체험이 종료되었다고 결정될 때까지 수행될 수 있다(블록 760).
도 8은 일반적인 컴퓨터 장치(800) 및 일반적인 모바일 컴퓨터 장치(850)의 예를 나타내며, 이는 명세서에 기재된 기술들과 함께 사용될 수 있다. 컴퓨팅 장치(800)는 랩탑들(laptops), 데스크탑들, 워크스테이션들, PDA들(personal digital assistants), 텔레비전들, 서버들, 블레이드 서버들(blade servers), 메인프레임들 및 다른 적절한 컴퓨팅 장치들과 같은 다양한 형태의 디지털 컴퓨터를 나타낸다. 컴퓨팅 장치(850)는 PDA(personal digital assistants), 휴대 전화(cellular telephones), 스마트 폰 및 다른 유사 컴퓨팅 장치와 같은 다양한 형태의 모바일 장치를 나타낸다. 명세서에 나타낸 구성 요소, 이들의 연결 및 관계, 및 그 기능들은 단지 예시적인 것을 의미하며, 본 명세서에 기재된 및/또는 청구된 발명들의 구현들을 한정하는 것을 의미하지는 않는다.
컴퓨팅 장치(800)는 프로세서(802), 메모리(804), 저장 장치(806), 메모리(804)와 고속 확장 포트(810)에 연결되는 고속 인터페이스(808), 그리고 저속 버스(814) 및 저장 장치(806)에 연결되는 저속 인터페이스(812)를 포함한다. 상기 프로세서(802)는 반도체 기반 프로세서일 수 있다. 상기 메모리(804)는 반도체 기반 메모리 일 수 있다. 컴포넌트들(802, 804, 806, 808, 810, 812) 각각은 다양한 버스들을 사용하여 상호 연결되고, 공통 마더 보드(common motherboard) 상에 또는 다른 방식으로 적절하게 장착될 수 있다. 프로세서(802)는 고속 인터페이스(808)에 연결된 디스플레이(816)와 같은 외부 입력/출력 장치상에 GUI에 대한 그래픽 정보를 표시하기 위해 메모리(804) 또는 저장 장치(806)에 저장된 명령어들을 포함하고, 컴퓨팅 장치(800) 내에서 실행하기 위한 명령어들을 처리할 수 있다. 다른 구현들에서, 다수의 프로세서 및/또는 다수의 버스는 다수의 메모리 및 다수 타입들의 메모리와 함께 적절하게 사용될 수 있다. 또한, 다수의 컴퓨팅 장치(800)는 필요한 동작들(예를 들어, 서버 뱅크, 블레이드 서버 그룹, 또는 멀티 프로세서 시스템)의 일부를 제공하는 각 장치와 연결될 수 있다.
메모리(804)는 컴퓨팅 장치(800) 내의 정보를 저장한다. 일 구현에서, 메모리(804)는 휘발성 메모리 유닛 또는 유닛들이다. 다른 구현에서, 메모리(804)는 비휘발성 메모리 유닛 또는 유닛들이다. 또한, 메모리(804)는 자기 또는 광 디스크와 같은 컴퓨터 판독 가능한 매체의 다른 형태일 수 있다.
저장 장치(806)는 컴퓨팅 장치(800)를 위한 대용량 저장소를 제공할 수 있다. 일 실시예에서, 저장 장치(806)는 저장 영역 네트워크 또는 다른 구성의 장치들을 포함하는 플로피 디스크 장치, 하드 디스크 장치, 광 디스크 장치 또는 테이프 장치, 플래시 메모리 또는 다른 유사 SSD(solid state memory device) 또는 장치의 어레이와 같은 컴퓨터 판독가능 매체일 수 있거나 이들을 포함할 수 있다. 컴퓨터 프로그램 제품은 정보 매체(information carrier)에 확실하게 내장(embodied)될 수 있다. 또한, 컴퓨터 프로그램 제품은 실행될 때 상술한 바와 같은 하나 이상의 방법을 수행하는 명령어들을 포함할 수 있다. 정보 매체(information carrier)는 메모리(804), 저장 장치(806) 또는 프로세서(802) 상의 메모리와 같은 컴퓨터 또는 기계 판독가능 매체이다.
고속 제어기(808)는 저속 제어기(812)가 낮은 대역폭 집약적 동작들을 관리하는 동안에, 컴퓨팅 장치(800)에 대한 대역폭 집약적 동작들을 관리한다. 이러한 기능들 할당은 단지 예시적인 것이다. 일 실시예에서, 고속 제어기(808)는 메모리(804), 디스플레이(816)(예를 들어, 그래픽 프로세서 또는 가속기를 통해) 및 다양한 확장 카드(도시되지 않음)를 수용할 수 있는 고속 확장 포트(810)에 연결된다. 실시예에서, 저속 제어기(812)는 저장 장치(806) 및 저속 확장 포트(814)에 연결된다. 다양한 통신 포트(예를 들어, USB, 블루투스, 이더넷, 무선 이더넷)를 포함할 수 있는 저속 확장 포트는 예를 들어 네트워크 어댑터를 통해 스위치 또는 라우터와 같은 네트워킹 장치 또는 키보드, 포인팅 장치, 스캐너와 같은 하나 이상의 입력/출력 장치에 연결될 수 있다.
컴퓨팅 장치(800)는 도면에 도시된 바와 같이 다수의 상이한 형태로 구현될 수 있다. 예를 들어, 스탠다드 서버(820)로서 구현되거나, 또는 그런 서버들의 그룹에서 여러 차례 구현될 수 있다. 또한, 랙 서버 시스템(824)의 일부로서 구현될 수도 있다. 또한, 랩톱 컴퓨터(822)와 같은 개인용 컴퓨터에서 구현될 수도 있다. 대안적으로, 컴퓨팅 디바이스(800)의 구성요소들은 장치(850)와 같은 모바일 디바이스(도시되지 않음)의 다른 컴포넌트들과 결합될 수 있다. 이러한 장치 각각은 하나 이상의 컴퓨팅 장치(800, 850)를 포함할 수 있고, 전체 시스템은 서로 통신하는 다수의 컴퓨팅 장치(800, 850)로 구성될 수 있다.
컴퓨팅 장치(850)는 다른 컴포넌트들 중에서 프로세서(852), 메모리(864), 디스플레이(854)와 같은 입/출력 장치, 통신 인터페이스(866) 및 송수신기(868)를 포함한다. 또한, 장치(850)는 추가 저장장치를 제공하기 위해 마이크로드라이브(microdrive) 또는 다른 장치와 같은 저장장치와 함께 제공될 수 있다. 컴포넌트들(850, 852, 864, 854, 866 및 868) 각각은 다양한 버스를 사용하여 상호 접속되며, 일부 컴포넌트들은 공통 마더 보드상에 또는 적절한 다른 방식으로 장착될 수 있다.
프로세서(852)는 메모리(864)에 저장된 명령어들을 포함하고, 컴퓨팅 장치(850) 내의 명령어들을 실행할 수 있다. 프로세서는 개별 및 다중 아날로그 및 디지털 프로세서를 포함하는 칩들의 칩셋으로서 구현될 수 있다. 예를 들어, 프로세서는, 장치(850)에 의한 무선 통신, 장치(850)에 의해 실행되는 애플리케이션, 사용자 인터페이스의 제어와 같이 장치(850)의 다른 컴포넌트들에 대한 조정(coordination)을 제공할 수 있다.
프로세서(852)는 제어 인터페이스(858) 및 디스플레이(856)에 연결된 디스플레이 인터페이스(856)를 통해 사용자와 통신할 수 있다. 예를 들어, 디스플레이(854)는, TFT LCD(Thin-Film-Semiconductor Liquid Crystal Display) 또는 OLED(Organic Light Emitting Diode) 디스플레이, 또는 다른 해당 디스플레이 기술일 수 있다. 디스플레이 인터페이스(856)는 사용자에게 그래픽과 다른 정보를 제공하기 위해 디스플레이(854)를 구동하기 위한 해당 회로를 포함할 수 있다. 제어 인터페이스(858)는 사용자로부터 명령들을 수신하여 프로세서(852)로 제공하기 위해 그 명령들을 변환할 수 있다. 또한, 외부 인터페이스(862)는 프로세서(852)와 통신하도록 제공되어, 다른 디바이스들과 디바이스(850)의 근거리 통신을 가능하게 한다. 예를 들어, 외부 인터페이스(862)는 일부 구현들에서 유선 통신을 위해 제공되거나, 또는 다른 구현들에서 무선 통신을 위해 제공되며, 또한 다수의 인터페이스가 사용될 수 있다.
메모리(864)는 컴퓨팅 장치(850) 내의 정보를 저장한다. 메모리(864)는 컴퓨터 판독 가능 매체 또는 미디어, 휘발성 메모리 유닛 또는 비휘발성 메모리 유닛 중 하나 이상으로서 구현될 수 있다. 또한, 예를 들어 확장 메모리(874)는 SIMM(Single In Line Memory Module) 카드 인터페이스를 포함할 수 있는 확장 인터페이스(872)를 통해 장치(850)에 제공되어 연결될 수 있다. 이러한 확장 메모리(874)는 장치(850)를 위한 여분의 저장 공간을 제공하거나 장치(850)에 대한 다른 정보 또는 애플리케이션을 저장할 수도 있다. 구체적으로, 확장 메모리(874)는 명세서에 개시된 프로세스들을 수행하거나 부가하기 위한 명령어들을 포함할 수 있으며, 또한 보안 정보를 포함할 수 있다. 따라서, 확장 메모리(874)는 예를 들어 장치(850)에 대한 보안 모듈로서 제공될 수 있고, 장치(850)의 보안 사용을 허용하는 명령어들로 프로그래밍될 수 있다. 또한, 보안 애플리케이션들은 SIMM 카드에 식별 정보를 해킹할 수 없는 방식으로 배치한 것과 같은 추가 정보와 함께 SIMM 카드들을 통해 제공될 수 있다.
예를 들어, 메모리는 후술되는 바와 같이, 플래시 메모리 및/또는 NVRAM 메모리를 포함할 수 있다. 일 실시예에서, 컴퓨터 프로그램 제품은 정보 매체에서 명확히(tangibly) 내장된다. 컴퓨터 프로그램 제품은 실행될 때 위에서 설명된 바와 같은 하나 이상의 방법을 수행하는 명령어들을 포함한다. 예를 들어, 상기 정보 매체는 송수신기(868) 또는 외부 인터페이스(862)를 통해 수신될 수 있는 메모리(864), 확장 메모리(874) 또는 프로세서(852)상의 메모리와 같은 컴퓨터 또는 기계 판독가능 매체이다.
장치(850)는 필요한 경우 디지털 신호 처리 회로를 포함할 수 있는 통신 인터페이스(866)를 통해 무선 통신할 수 있다. 통신 인터페이스(866)는 GSM 음성 호출, SMS, EMS 또는 MMS 메시징, CDMA, TDMA, PDC, WCDMA, CDMA2000 또는 GPRS와 같은 프로토콜 또는 다양한 모드 하에서 통신을 제공할 수 있다. 예를 들어, 그러한 통신은 무선 주파수 송수신기(868)를 통해 발생할 수 있다. 또한, 단거리 통신은 블루투스, WiFi 또는 다른 송수신기(도시되지 않음)를 사용하여 발생할 수 있다. 또한, GPS(Global Positioning System) 수신기 모듈(870)은 장치(850)상에서 실행되는 애플리케이션에 의해 적절하게 사용될 수 있는 추가 네비게이션 및 위치 관련 무선 데이터를 장치(850)에 제공할 수 있다.
또한, 장치(850)는 사용자로부터 음성 정보를 수신하여 그것을 이용 가능한 디지털 정보로 변환할 수 있는 오디오 코덱(860)을 사용하여 음성 통신할 수 있다. 예를 들어, 오디오 코덱(860)은 마찬가지로 장치(850)의 핸드셋에 있는 스피커를 통해 사용자를 위한 가청 사운드를 생성할 수 있다. 이러한 사운드는 음성 전화 호들(telephone calls)에서의 사운드를 포함할 수 있고, 녹음된 사운드(예를 들어, 음성 메시지, 음악 파일 등)를 포함할 수 있고, 또한 장치(850)상에서 동작하는 애플리케이션들에 의해 발생된 사운드를 포함할 수 있다.
도면에 도시된 바와 같이, 컴퓨팅 장치(850)는 다수의 상이한 형태들로 구현될 수 있다. 예를 들어, 셀룰러 폰(880)으로서 구현될 수 있다. 또한, 스마트 폰(882), 개인 휴대 정보 단말기 또는 다른 유사한 모바일 장치의 일부로서 구현될 수도 있다.
명세서에 기재된 기술들 및 시스템들의 다양한 구현들(implementations)은 디지털 전자 회로, 집적 회로, 특별히 설계된 ASIC(주문형 집적 회로), 컴퓨터 하드웨어, 펌웨어, 소프트웨어 및/또는 이들의 조합으로 실현될 수 있다. 이러한 다양한 구현들은 적어도 하나의 프로그램 가능한 프로세서를 포함하는 프로그램 가능한 시스템상에서 실행 가능하고, 해석 가능한 하나 이상의 컴퓨터 프로그램에서 구현할 수 있고, 이는 특정한 또는 일반적인 목적이 될 수 있으며, 적어도 하나의 프로그램 가능한 프로세서는 저장 시스템, 적어도 하나의 입력 장치 및 적어도 하나의 출력 장치로부터 데이터 및 명령어들을 수신하고, 저장 시스템, 적어도 하나의 입력 장치 및 적어도 하나의 출력 장치로 데이터 및 명령어들을 전송하도록 연결된다.
이들 컴퓨터 프로그램들(프로그램, 소프트웨어, 소프트웨어 애플리케이션 또는 코드로도 알려짐)은 프로그램 가능한 프로세서를 위한 기계 명령어들을 포함하고, 높은 수준의 절차 및/또는 객체 지향 프로그래밍 언어 및/또는 어셈블리/기계 언어로 구현될 수 있다. 여기에서 사용되는 "기계 판독가능 매체", "컴퓨터 판독가능 매체"라는 용어는 기계 판독가능 신호로서 기계 명령어들을 수신하는 기계 판독가능 매체를 포함하는 프로그램 가능한 프로세서에 기계 명령어들 및/또는 데이터를 제공하기 위해 사용되는 장치 및/또는 디바이스(예를 들어, 자기 디스크, 광 디스크, 메모리, 프로그램 가능한 논리 디바이스(PLD))와 임의의 컴퓨터 프로그램 제품을 의미한다. "기계 판독가능 신호"라는 용어는 기계 명령어들 및/또는 데이터를 프로그램 가능한 프로세서에 제공하기 위해 사용되는 모든 신호를 의미한다.
사용자와의 상호 작용을 제공하기 위해, 명세서에서 설명된 기술들 및 시스템들은 사용자가 컴퓨터에 입력을 제공할 수 있는 포인팅 장치(예를 들어, 마우스 또는 트랙볼) 및 키보드와 사용자에게 정보를 표시하기 위한 디스플레이 장치(예를 들어, CRT(cathode ray tube)또는 LCD(liquid crystal display) 모니터)를 갖는 컴퓨터에서 구현될 수 있다. 다른 종류의 장치가 사용자와의 상호 작용을 제공하는 데 사용될 수 있으며, 예를 들어, 사용자에게 제공된 피드백은 임의의 형태의 감각 피드백(예를 들어, 시각적 피드백, 청각 피드백 또는 촉각 피드백)일 수 있으며, 사용자로부터의 입력은 음향, 음성 또는 촉각 입력을 포함하는 임의의 형태로 수신될 수 있다.
본 명세서에 설명된 기술들 및 시스템들은 백 엔드 컴포넌트(예를 들어, 데이터 서버)를 포함하거나, 미들웨어 컴포넌트(예를 들어, 애플리케이션 서버)를 포함하거나, 프런트 엔드 컴포넌트(예를 들어, 사용자가 명세서에 설명된 기술 및 시스템의 구현(implementation)과 상호 작용할 수 있는 웹 브라우저 또는 그래픽 사용자 인터페이스를 갖는 클라이언트 컴퓨터)를 포함하는 컴퓨팅 시스템에서 구현되거나, 그러한 백 엔드, 미들웨어 또는 프런트 엔드 컴포넌트의 모든 조합으로 구현될 수 있다. 시스템의 컴포넌트들은 디지털 데이터 통신(예를 들어, 통신 네트워크)의 매체 또는 임의의 형태로 상호 접속될 수 있다. 예들로서, 통신 네트워크는 근거리 통신망( "LAN"), 광역 통신망( "WAN") 및 인터넷을 포함한다.
컴퓨팅 시스템은 클라이언트들 및 서버들을 포함할 수 있다. 클라이언트와 서버는 일반적으로 서로 멀리 떨어져 있으며, 일반적으로 통신 네트워크를 통해 상호 작용한다. 클라이언트와 서버의 관계는 각각의 컴퓨터에서 실행되는 컴퓨터 프로그램들의 덕택으로 발생하고, 서로 클라이언트-서버 관계를 갖는다. 다수의 구현들이 설명되었다. 그럼에도 불구하고, 본 명세서의 사상과 범위를 벗어나지 않고 다양한 변형이 이루어질 수 있음이 이해될 것이다.
또한, 도면들에 도시된 논리 흐름들은 바람직한 결과를 달성하기 위해 순차적 순서 또는 특정 순서를 요구하지 않는다. 또한, 설명된 흐름들로부터 다른 단계들이 제공되거나 단계들이 제거될 수 있으며, 설명된 시스템들에 다른 컴포넌트들이 추가되거나 제거될 수 있다. 따라서, 다른 구현들은 다음의 청구항들의 범위 내에 있다.
명세서에 기재된 기술들 및 시스템들의 다양한 구현들(implementations)은 디지털 전자 회로, 또는 컴퓨터 하드웨어, 펌웨어, 소프트웨어 또는 이들의 조합으로 구현될 수 있다. 구현들은 예를 들어, 프로그램가능 프로세서, 컴퓨터, 또는 다수의 컴퓨터들의 동작에 의해 처리하거나 제어하기 위해, 컴퓨터 프로그램 제품, 즉 정보 매체(information carrier), 예를 들어 기계 판독가능 저장 장치(컴퓨터 판독가능 매체)에 명백히(tangibly) 내장된 컴퓨터 프로그램으로서 구현될 수 있다. 따라서, 컴퓨터 판독가능 저장 매체는 실행될 때 프로세서(예를 들어, 호스트 장치의 프로세서, 클라이언트 장치의 프로세서)로 하여금 프로세스를 수행하게 하는 명령어들을 저장하도록 구성될 수 있다.
위에 설명된 컴퓨터 프로그램(들)과 같은 컴퓨터 프로그램은 컴파일된 언어들 또는 해석된 언어들(interpreted languages)을 포함하는 모든 형태의 프로그래밍 언어로 작성될 수 있으며, 독립 실행형 프로그램(stand-alone program)이나 모듈, 컴포넌트, 서브루틴 또는 컴퓨팅 환경에서 사용하기에 적합한 다른 유닛으로서 포함하는 모든 형태로 배포될 수 있다. 컴퓨터 프로그램은 하나의 컴퓨터 또는 한 사이트에 위치하거나 여러 사이트에 분산되어 있으며 통신 네트워크로 상호연결된 여러 대의 컴퓨터상에서 실행되도록 배포될 수 있다.
방법 단계들은 입력 데이터를 조작(operating)하고 출력을 발생함으로써 기능들을 수행하기 위해 컴퓨터 프로그램을 실행하는 하나 이상의 프로그램가능 프로세서에 의해 수행될 수 있다. 방법 단계들 및 장치는 주문형 집적 회로들(ASIC) 또는 필드 프로그램 가능 게이트 어레이들(FPGA)과 같은 특정 목적의 로직 회로에 의해 수행되거나 구현될 수 있다.
컴퓨터 프로그램의 처리에 적합한 프로세서들은 예를 들어 범용 및 특수 목적 마이크로프로세서들과 임의의 종류의 디지털 컴퓨터의 임의의 하나 이상의 프로세서를 포함한다. 일반적으로, 프로세서는 판독 전용 메모리 또는 랜덤 액세스 메모리 또는 둘 모두로부터 명령어들 및 데이터를 수신할 것이다. 컴퓨터의 구성요소들(elements)은 명령어들을 실행하기 위한 적어도 하나의 프로세서 및 명령어들 및 데이터를 저장하기 위한 하나 이상의 메모리 장치를 포함할 수 있다. 일반적으로, 컴퓨터는 또한 자기, 광 자기 디스크들 또는 광 디스크들과 같은 데이터를 저장하기 위한 하나 이상의 대용량 저장 장치들로부터 데이터를 수신하도록 동작가능하게 결합되거나 그 하나 이상의 대용량 저장 장치에 데이터를 전송하거나 그 하나 이상의 대용량 저장 장치들을 포함할 수 있다. 컴퓨터 프로그램 명령어들 및 데이터를 구현하는데 적합한 정보 매체(Information carriers)는 예를 들어 EPROM, EEPROM 및 플래시 메모리 장치와 같은 반도체 메모리 장치를 포함하는 모든 형태의 비휘발성 메모리; 내부 하드 디스크들 또는 이동식 디스크들과 같은 자기 디스크; 광 자기 디스크들; 및 CD-ROM 및 DVD-ROM 디스크들을 포함할 수 있다. 상기 프로세서 및 메모리는 특수 목적 논리 회로에 의해 보충(supplemented)되거나 또는 그 안에 포함될 수 있다.
사용자와의 상호 작용을 제공하기 위해, 구현들(implementations)은 사용자가 컴퓨터에 입력을 제공할 수 있는 포인팅 장치(예를 들어, 사용자가 컴퓨터에 입력을 제공할 수 있는 마우스 또는 트랙볼) 및 키보드와 사용자에게 정보를 표시하기 위한 디스플레이 장치(예를 들어, CRT(cathode ray tube), LED(light emitting diode) 또는 LCD(liquid crystal display) 모니터)를 갖는 컴퓨터에서 구현될 수 있다. 다른 종류의 장치들이 사용자와의 상호 작용을 제공하는 데 사용될 수 있으며, 예를 들어, 사용자에게 제공된 피드백은 임의의 형태의 감각 피드백, 예를 들어, 시각적 피드백, 청각 피드백 또는 촉각 피드백일 수 있으며, 사용자로부터의 입력은 음향, 음성(speech) 또는 촉각 입력을 포함하는 임의의 형태로 수신될 수 있다.
구현들(implementations)은 데이터 서버와 같은 백엔드 컴포넌트를 포함하거나, 예를 들어 애플리케이션 서버와 같은 미들웨어 컴포넌트를 포함하거나, 예를 들어 사용자가 구현과 상호 작용할 수 있는 웹 브라우저 또는 그래픽 사용자 인터페이스를 갖는 클라이언트 컴퓨터와 같은 프론트 엔드 컴포넌트를 포함하거나, 또는 백엔드, 미들웨어 또는 프런트 엔드 컴포넌트의 모든 조합을 포함할 수 있다. 컴포넌트들은 예를 들어 통신 네트워크와 같은 디지털 데이터 통신의 임의의 형태 또는 매체에 의해 상호접속될수 있다. 통신 네트워크들의 예들로서 근거리 통신망(LAN) 및 광역 통신망(WAN), 예를 들어 인터넷을 포함한다.
추가 구현들(implementations)은 다음 실시예들(examples)에서 요약된다.
실시예 1(Example 1): 방법으로서 상기 가상 환경에 비해(relative) 제1 가상 스케일로 시청(viewing)하기 위한 가상 환경에서의 제1 가상 위치의 가상 렌더링을 디스플레이하는 단계; 제2 가상 위치를 선택하는 입력을 수신하고 상기 제2 가상 위치를 시청하기 위한 제 2 가상 스케일을 선택하는 단계 - 상기 제1 가상 스케일은 상기 제2 가상 스케일과 상이함 -; 그리고 상기 입력을 수신한 후에 상기 제2 가상 스케일로 상기 제2 가상 위치에 텔레포트(순간이동)하는 단계를 포함한다.
실시예 2: 실시예 1의 방법으로서 입력을 수신하는 단계는, 입력 장치의 작동을 검출하는 단계; 상기 제2 가상 위치에서 상기 입력 장치로부터 지향된 가상 빔의 부분(portion)의 위치에 기초하여 상기 제2 가상 위치의 선택을 검출하는 단계; 그리고 상기 입력 장치의 스케일링 이동(scaling movement) 및 상기 가상 빔의 대응하는 이동(corresponding movement)을 검출하는 단계 - 상기 입력 장치의 상기 스케일링 이동은 상기 제2 가상 스케일의 선택에 대응함 -를 포함한다.
실시예 3: 실시예 2의 방법으로서 제2 가상 스케일로 제2 가상 위치에 텔레포트하는 단계는, 상기 제2 가상 위치의 선택 및 상기 제2 가상 스케일의 선택을 검출한 후에 상기 입력 장치의 작동 해제(release)를 검출하는 단계; 그리고 상기 입력 장치의 상기 검출된 작동 해제에 응답하여 상기 제2 가상 스케일로 상기 제2 가상 위치에 텔레포트하는 단계를 포함한다.
실시예 4: 실시예 3의 방법으로서 상기 입력 장치를 작동시키는 단계는, 상기 입력 장치의 작동을 유지하는 단계, 그리고 상기 제2 가상 위치 및 상기 제2 가상 스케일이 선택될 때까지 상기 입력 장치의 작동을 해제하지 않는 단계를 포함한다.
실시예 5: 실시예 4의 방법으로서 제2 가상 스케일로 제2 가상 위치에 텔레포트하는 단계는, 상기 입력 장치의 작동 해제와 동시에 상기 제2 가상 스케일로 상기 제2 가상 위치에 텔레포트하는 단계를 포함한다.
실시예 6: 실시예 2 내지 5중 하나의 방법으로서, 상기 입력 장치는 핸드헬드 전자 장치의 트리거, 상기 핸드헬드 전자 장치의 터치 감지 표면, 상기 핸드헬드 전자 장치의 버튼, 상기 핸드헬드 전자 장치의 조이스틱 또는 상기 핸드헬드 전자 장치의 토글 스위치 중 적어도 하나를 포함할 수 있다.
실시예 7: 실시예 3의 방법으로서, 상기 제2 가상 위치의 선택 및 상기 가상 스케일의 선택을 검출한 후 그리고 상기 입력 장치의 작동 해제를 검출하기 전에 상기 입력 장치의 취소 이동 및 상기 제 2 가상 위치로부터 멀어지는 방향으로의 상기 가상 빔의 대응하는 이동을 검출하는 단계, 그리고 상기 입력 장치의 상기 검출된 취소 이동 및 상기 가상 빔의 대응하는 이동에 응답하여 상기 제2 가상 위치 및 상기 제2 가상 스케일의 선택을 취소하는 단계를 더 포함한다.
실시예 8: 실시예 7의 방법으로서, 상기 입력 장치의 취소 이동 및 상기 가상 빔의 대응하는 이동을 검출하는 단계는 미리설정된 임계값을 초과하는 상기 입력 장치의 이동(movement)을 검출하는 단계를 포함한다.
실시예 9: 실시예 8의 방법으로서, 상기 미리설정된 임계값을 초과하는 상기 입력 장치의 이동을 검출하는 단계는 미리설정된 각도 거리(angular distance)보다 큰 상기 입력 장치의 이동(movement)을 검출하는 단계를 포함한다.
실시예 10: 실시예 2의 방법으로서, 상기 제2 스케일의 선택에 대응하는 상기 입력 장치의 제1 이동을 검출하는 단계를 포함하는 상기 입력 장치의 물리적 이동을 검출하는 단계는,
상기 가상 빔의 부분의 초기 가상 위치에 대응하는 상기 입력 장치의 초기 위치를 검출하는 단계; 그리고
상기 가상 빔의 부분의 상기 초기 가상 위치로부터의 상기 가상 빔의 부분의 상향 가상 이동(upward virtual movement)에 대응하여, 상기 입력 장치의 상기 초기 위치로부터 상향 방향(upward direction)으로의 상기 입력 장치의 제1 물리적 이동을 검출하는 단계 - 상기 검출된 제1 물리적 이동은 상기 제1 가상 스케일로부터 상기 제2 가상 스케일로의 가상 스케일의 증가에 대응함 -, 또는 상기 가상 빔의 상기 부분의 초기 가상 위치로부터의 상기 가상 빔의 상기 부분의 하향 가상 이동(downward virtual movement)에 대응하여, 상기 입력 장치의 상기 초기 위치로부터 하향 방향으로의 상기 입력 장치의 제2 물리적 이동을 검출하는 단계 -상기 검출된 제2 물리적 이동은 상기 제1 가상 스케일로부터 상기 제2 가상 스케일로의 가상 스케일의 감소에 대응함 - 중에서 적어도 하나를 포함한다.
실시예 11: 실시예 10의 방법으로서, 상기 선택된 제2 가상 위치에 비한(relative) 텔레포트 도착 위치의 시프트에 대응하여, 상기 입력 장치의 제3 물리적 이동을 검출하는 단계를 포함하는 상기 입력 장치의 물리적 이동을 검출하는 단계는, 측 방향(lateral direction)으로 상기 빔의 상기 부분의 가상 시프트에 대응하는 상기 입력 장치의 물리적 이동을 검출하는 단계, 또는 전방 및 후방 방향으로 상기 빔의 상기 부분의 가상 시프트에 대응하는 상기 입력 장치의 물리적 이동을 검출하는 단계 중에서 적어도 하나와; 상기 입력 장치의 상기 검출된 제3 물리적 이동 및 상기 빔의 상기 부분의 대응하는 가상 시프트에 기초하여 상기 선택된 제2 가상 위치에 비한(relative) 상기 텔레포트 도착 위치를 시프트시키는 단계를 포함한다.
실시예 12: 실시예 11의 방법으로서, 상기 제2 가상 스케일로 상기 제2 가상 위치에 텔레포트하는 단계는, 상기 제2 가상 위치의 선택을 검출하고, 상기 제2 가상 스케일의 선택을 검출하고, 상기 텔레포트 도착 위치를 시프트시킨 후에 상기 입력 장치의 조작 장치의 작동 해제를 검출하는 단계; 그리고 상기 입력 장치의 상기 조작 장치의 상기 검출된 작동 해제에 응답하여 상기 제2 가상 스케일로 상기 시프트된 텔레포트 도착 위치에서 상기 제2 가상 위치로 텔레포트(teleporting)하는 단계를 포함한다.
실시예 13: 실시예 12의 방법으로서, 상기 제2 가상 스케일로 상기 시프트된 텔레포트 도착 위치에서 상기 제2 가상 위치로 텔레포트하는 단계는 상기 제2 가상 스케일로 상기 시프트된 텔레포트 도착 위치에서 상기 제2 가상 위치로 동시에 텔레포트하는 단계를 포함한다.
실시예 14: 시스템으로서, 가상 환경을 발생하도록 구성된 컴퓨팅 장치를 포함하며, 상기 컴퓨팅 장치는, 실행 가능한 명령어들을 저장하는 메모리; 그리고 상기 컴퓨팅 장치로 하여금 상기 가상 환경 내의 제1 가상 스케일로 시청하기 위한 가상 환경의 제1 가상 위치의 가상 렌더링을 디스플레이하게 하고, 상기 가상 환경에서의 제2 가상 위치의 선택을 나타내는 입력 및 상기 제2 가상 위치를 시청하기 위한 제2 가상 스케일의 선택을 수신하게 하고, 그리고 상기 입력의 수신 후에 상기 제2 가상 스케일로 상기 제2 가상 위치에 텔레포트하게 하는 상기 명령어들을 실행하도록 구성되는 프로세서를 포함한다.
실시예 15: 실시예 14의 시스템으로서, 상기 프로세서가 상기 입력을 검출하도록 구성되고, 상기 입력은 상기 컴퓨팅 장치와 동작 가능하게 결합된 핸드헬드 전자 장치에 수신되고, 상기 입력은 상기 핸드헬드 전자 장치의 입력 장치의 작동을 포함한다.
실시예 16: 실시예 15의 시스템으로서, 상기 입력의 검출은: 상기 입력 장치의 작동에 응답하여 발생된 가상 빔의 부분의 검출 - 상기 가상 빔의 상기 검출된 부분은 상기 제2 가상 위치의 선택에 대응함 -; 그리고 상기 가상 빔의 부분의 가상 이동의 검출 -상기 가상 빔의 상기 부분의 상기 검출된 가상 이동은 상기 제2 가상 스케일의 선택에 대응함- 을 더 포함한다.
실시예 17: 실시예 16의 시스템으로서, 상기 가상 빔의 부분의 상기 검출된 가상 이동은:
상기 제1 가상 스케일로부터 상기 제2 가상 스케일로의 가상 스케일의 증가에 대응하는 상향 방향으로 상기 가상 빔의 부분의 가상 이동, 또는 상기 제1 가상 스케일로부터 상기 제2 가상 스케일로의 가상 스케일의 감소에 대응하는 하향 방향으로 상기 가상 빔의 상기 부분의 가상 이동 중에서 적어도 하나를 포함하는 상기 가상 빔의 상기 부분의 제1 가상 이동; 또는 측 방향으로의 상기 가상 빔의 상기 부분의 가상 이동 또는 전방 및 후방 방향으로의 상기 가상 빔의 부분의 가상 이동 중에서 적어도 하나를 포함하고, 상기 선택된 제2 가상 위치에 대한(relative) 텔레포트 도착 위치의 가상 시프트에 대응하는 상기 가상 빔의 상기 부분의 제2 가상 이동 중에서 적어도 하나를 포함한다.
실시예 18: 실시예 16 또는 17의 시스템으로서, 상기 프로세서가 상기 컴퓨팅 장치로 하여금 상기 제2 가상 위치의 선택 및 상기 가상 스케일의 선택을 검출한 후, 그리고 상기 입력에 응답하여 상기 제2 가상 위치로 텔레포트하기 전에, 상기 입력 장치의 취소 이동 및 상기 제2 가상 위치로부터 멀어지는 방향으로의 상기 가상 빔의 상기 부분의 대응하는 이동을 검출하게 하고; 상기 입력 장치의 상기 검출된 취소 이동 및 상기 가상 빔의 상기 부분의 대응하는 이동에 응답하여 상기 제2 가상 스케일 및 상기 제2 가상 위치의 선택을 취소하게 하는 명령어들을 실행하도록 더 구성된다.
실시예 19: 실시예 18의 시스템으로서, 상기 입력 장치의 상기 취소 이동 및 상기 가상 빔의 부분의 대응하는 이동은 미리설정된 각도 거리보다 큰 상기 입력 장치의 이동의 검출을 포함한다.
실시예 20: 실시예들 15 내지 19중 하나의 시스템으로서, 상기 입력 장치는 상기 핸드헬드 전자 장치의 트리거, 상기 핸드헬드 전자 장치의 버튼, 상기 핸드헬드 전자 장치의 조이스틱, 상기 핸드헬드 전자 장치의 토글 스위치, 또는 상기 핸드헬드 전자 장치의 터치 감지 표면 중에서 적어도 하나를 포함한다.
상기 설명된 구현들의 소정 특징들이 본 명세서에 설명된 바와 같이 도시되었지만, 많은 변형들, 대체들, 변경들 및 등가물들이 이 분야의 당업자에 의해 발생할 것이다. 그러므로, 첨부된 청구 범위들은 상기 구현들(implementations)의 범위 내에 있는 그러한 모든 수정들 및 변형들을 포함하도록 의도된 것으로 이해되어야 한다. 이들은 제한이 아닌 단지 예로서만 제시되었고, 형태 및 세부사항들의 다양한 변경들이 이루어질 수 있다는 것을 이해해야 한다. 본 명세서에 설명된 장치 및/또는 방법의 임의의 부분은 상호 배타적인 조합들을 제외하고는 임의의 조합으로 조합될 수 있다. 본 명세서에 설명된 구현들은 기술된 상이한 구현들의 특징들, 컴포넌트들 및/또는 특징들의 다양한 조합들 및/또는 서브 조합들을 포함할 수 있다.

Claims (20)

  1. 가상 환경에 비해(relative) 제1 가상 스케일로 시청(viewing)하기 위한 가상 환경에서의 제1 가상 위치의 가상 렌더링을 디스플레이하는 단계;
    제2 가상 위치를 선택하는 입력을 수신하고, 상기 제2 가상 위치를 시청하기 위한 제2 가상 스케일을 선택하는 단계 - 상기 제1 가상 스케일은 상기 제2 가상 스케일과 상이함 -; 그리고
    상기 입력을 수신한 후에 상기 제2 가상 스케일로 상기 제2 가상 위치에 텔레포트하는 단계를 포함하는 방법.
  2. 제1항에 있어서, 입력을 수신하는 단계는,
    입력 장치의 작동을 검출하는 단계;
    상기 제2 가상 위치에서 상기 입력 장치로부터 지향된 가상 빔의 부분(portion)의 위치에 기초하여 상기 제2 가상 위치의 선택을 검출하는 단계; 그리고
    상기 입력 장치의 스케일링 이동(scaling movement) 및 상기 가상 빔의 대응하는 이동을 검출하는 단계 - 상기 입력 장치의 상기 스케일링 이동은 상기 제2 가상 스케일의 선택에 대응함 -를 포함하는 방법.
  3. 제2항에 있어서, 상기 제2 가상 스케일로 상기 제2 가상 위치에 텔레포트하는 단계는,
    상기 제2 가상 위치의 선택 및 상기 제2 가상 스케일의 선택을 검출한 후에 상기 입력 장치의 작동 해제(release)를 검출하는 단계; 그리고
    상기 입력 장치의 상기 검출된 작동 해제에 응답하여 상기 제2 가상 스케일로 상기 제2 가상 위치에 텔레포트하는 단계를 포함하는 방법.
  4. 제3항에 있어서, 상기 입력 장치를 작동시키는 단계는,
    상기 입력 장치의 작동을 유지하는 단계, 그리고
    상기 제2 가상 위치 및 상기 제2 가상 스케일이 선택될 때까지 상기 입력 장치의 작동을 해제하지 않는 단계를 포함하는 방법.
  5. 제4항에 있어서, 상기 제2 가상 스케일로 상기 제2 가상 위치에 텔레포트하는 단계는,
    상기 입력 장치의 작동 해제와 동시에 상기 제2 가상 스케일로 상기 제2 가상 위치에 텔레포트하는 단계를 포함하는 방법.
  6. 제5항에 있어서, 상기 입력 장치는 핸드헬드 전자 장치의 트리거, 상기 핸드헬드 전자 장치의 터치 감지 표면, 상기 핸드헬드 전자 장치의 버튼, 상기 핸드헬드 전자 장치의 조이스틱 또는 상기 핸드헬드 전자 장치의 토글 스위치 중 적어도 하나를 포함하는 방법.
  7. 제3항에 있어서,
    상기 제2 가상 위치의 선택 및 상기 가상 스케일의 선택을 검출한 후 그리고 상기 입력 장치의 작동 해제를 검출하기 전에 상기 입력 장치의 취소 이동 및 상기 제2 가상 위치로부터 멀어지는 방향으로의 상기 가상 빔의 대응하는 이동을 검출하는 단계; 그리고
    상기 입력 장치의 상기 검출된 취소 이동 및 상기 가상 빔의 대응하는 이동에 응답하여 상기 제2 가상 위치 및 상기 제2 가상 스케일의 선택을 취소하는 단계를 더 포함하는 방법.
  8. 제7항에 있어서, 상기 입력 장치의 취소 이동 및 상기 가상 빔의 대응하는 이동을 검출하는 단계는 미리설정된 임계값을 초과하는 상기 입력 장치의 이동(movement)을 검출하는 단계를 포함하는 방법.
  9. 제8항에 있어서, 상기 미리설정된 임계값을 초과하는 상기 입력 장치의 이동을 검출하는 단계는 미리설정된 각도 거리(angular distance)보다 큰 상기 입력 장치의 이동(movement)을 검출하는 단계를 포함하는 방법.
  10. 제2항에 있어서, 상기 제2 스케일의 선택에 대응하는 상기 입력 장치의 제1 이동을 검출하는 단계를 포함하는 상기 입력 장치의 물리적 이동을 검출하는 단계는,
    상기 가상 빔의 상기 부분의 초기 가상 위치에 대응하는 상기 입력 장치의 초기 위치를 검출하는 단계; 그리고
    상기 가상 빔의 상기 부분의 상기 초기 가상 위치로부터의 상기 가상 빔의 상기 부분의 상향 가상 이동(upward virtual movement)에 대응하여, 상기 입력 장치의 상기 초기 위치로부터 상향 방향(upward direction)으로의 상기 입력 장치의 제1 물리적 이동을 검출하는 단계 - 상기 검출된 제1 물리적 이동은 상기 제1 가상 스케일로부터 상기 제2 가상 스케일로의 가상 스케일의 증가에 대응함 -, 또는 상기 가상 빔의 상기 부분의 초기 가상 위치로부터의 상기 가상 빔의 상기 부분의 하향 가상 이동(downward virtual movement)에 대응하여, 상기 입력 장치의 상기 초기 위치로부터 하향 방향으로의 상기 입력 장치의 제2 물리적 이동을 검출하는 단계 -상기 검출된 제2 물리적 이동은 상기 제1 가상 스케일로부터 상기 제2 가상 스케일로의 가상 스케일의 감소에 대응함 - 중에서 적어도 하나를 포함하는 방법.
  11. 제10항에 있어서, 상기 선택된 제2 가상 위치에 비한(relative) 텔레포트 도착 위치의 시프트에 대응하여, 상기 입력 장치의 제3 물리적 이동을 검출하는 단계를 포함하는 상기 입력 장치의 물리적 이동을 검출하는 단계는,
    측 방향(lateral direction)으로 상기 빔의 상기 부분의 가상 시프트에 대응하는 상기 입력 장치의 물리적 이동을 검출하는 단계, 또는 전방 및 후방 방향으로 상기 빔의 상기 부분의 가상 시프트에 대응하는 상기 입력 장치의 물리적 이동을 검출하는 단계 중에서 적어도 하나와;
    상기 입력 장치의 상기 검출된 제3 물리적 이동 및 상기 빔의 상기 부분의 대응하는 가상 시프트에 기초하여 상기 선택된 제2 가상 위치에 대한 상기 텔레포트 도착 위치를 시프트시키는 단계를 포함하는 방법.
  12. 제11항에 있어서, 상기 제2 가상 스케일로 상기 제2 가상 위치에 텔레포트하는 단계는,
    상기 제2 가상 위치의 선택을 검출하고, 상기 제2 가상 스케일의 선택을 검출하고, 상기 텔레포트 도착 위치를 시프트시킨 후에 상기 입력 장치의 조작 장치의 작동 해제를 검출하는 단계; 그리고
    상기 입력 장치의 상기 조작 장치의 상기 검출된 작동 해제에 응답하여 상기 제2 가상 스케일로 상기 시프트된 텔레포트 도착 위치에서 상기 제2 가상 위치로 텔레포트(teleporting)하는 단계를 포함하는 방법.
  13. 제12항에 있어서, 상기 제2 가상 스케일로 상기 시프트된 텔레포트 도착 위치에서 상기 제2 가상 위치로 텔레포트하는 단계는 상기 제2 가상 스케일로 상기 시프트된 텔레포트 도착 위치에서 상기 제2 가상 위치로 동시에 텔레포트하는 단계를 포함하는 방법.
  14. 가상 환경을 발생하도록 구성된 컴퓨팅 장치를 포함하며, 상기 컴퓨팅 장치는,
    실행 가능한 명령어들을 저장하는 메모리; 그리고
    상기 컴퓨팅 장치로 하여금 상기 가상 환경 내의 제1 가상 스케일로 시청하기 위한 가상 환경의 제1 가상 위치의 가상 렌더링을 디스플레이하게 하고, 상기 가상 환경에서의 제2 가상 위치의 선택을 나타내는 입력 및 상기 제2 가상 위치를 시청하기 위한 제2 가상 스케일의 선택을 수신하게 하고, 그리고 상기 입력의 수신 후에 상기 제2 가상 스케일로 상기 제2 가상 위치에 텔레포트하게 하는 상기 명령어들을 실행하도록 구성되는 프로세서를 포함하는 시스템.
  15. 제14항에 있어서, 상기 프로세서가 상기 입력을 검출하도록 구성되고, 상기 입력은 상기 컴퓨팅 장치와 동작 가능하게 결합된 핸드헬드 전자 장치에 수신되고, 상기 입력은 상기 핸드헬드 전자 장치의 입력 장치의 작동을 포함하는 시스템.
  16. 제15항에 있어서, 상기 입력의 검출은,
    상기 입력 장치의 작동에 응답하여 발생된 가상 빔의 부분의 검출 - 상기 가상 빔의 상기 검출된 부분은 상기 제2 가상 위치의 선택에 대응함 -; 그리고
    상기 가상 빔의 상기 부분의 가상 이동의 검출 -상기 가상 빔의 상기 부분의 상기 검출된 가상 이동은 상기 제2 가상 스케일의 선택에 대응함- 을 더 포함하는 시스템.
  17. 제16항에 있어서, 상기 가상 빔의 상기 부분의 상기 검출된 가상 이동은,
    상기 제1 가상 스케일로부터 상기 제2 가상 스케일로의 가상 스케일의 증가에 대응하는 상향 방향으로 상기 가상 빔의 상기 부분의 가상 이동, 또는 상기 제1 가상 스케일로부터 상기 제2 가상 스케일로의 가상 스케일의 감소에 대응하는 하향 방향으로 상기 가상 빔의 상기 부분의 가상 이동 중에서 적어도 하나를 포함하는 상기 가상 빔의 상기 부분의 제1 가상 이동; 또는
    측 방향으로의 상기 가상 빔의 상기 부분의 가상 이동 또는 전방 및 후방 방향으로의 상기 가상 빔의 상기 부분의 가상 이동 중에서 적어도 하나를 포함하고, 상기 선택된 제2 가상 위치에 대한(relative) 텔레포트 도착 위치의 가상 시프트에 대응하는 상기 가상 빔의 상기 부분의 제2 가상 이동 중에서 적어도 하나를 포함하는 시스템.
  18. 제16항에 있어서,
    상기 프로세서가, 상기 컴퓨팅 장치로 하여금,
    상기 제2 가상 위치의 선택 및 상기 가상 스케일의 선택을 검출한 후, 그리고 상기 입력에 응답하여 상기 제2 가상 위치로 텔레포트하기 전에, 상기 입력 장치의 취소 이동 및 상기 제2 가상 위치로부터 멀어지는 방향으로의 상기 가상 빔의 상기 부분의 대응하는 이동을 검출하게 하고; 그리고
    상기 입력 장치의 상기 검출된 취소 이동 및 상기 가상 빔의 상기 부분의 대응하는 이동에 응답하여 상기 제2 가상 스케일 및 상기 제2 가상 위치의 선택을 취소하게 하는 명령어들을 실행하도록 더 구성된 시스템.
  19. 제18항에 있어서, 상기 입력 장치의 상기 취소 이동 및 상기 가상 빔의 상기 부분의 대응하는 이동은 미리설정된 각도 거리보다 큰 상기 입력 장치의 이동의 검출을 포함하는 시스템.
  20. 제15항에 있어서, 상기 입력 장치는 상기 핸드헬드 전자 장치의 트리거, 상기 핸드헬드 전자 장치의 버튼, 상기 핸드헬드 전자 장치의 조이스틱, 상기 핸드헬드 전자 장치의 토글 스위치, 또는 상기 핸드헬드 전자 장치의 터치 감지 표면 중에서 적어도 하나를 포함하는 시스템.
KR1020187006688A 2015-12-03 2016-12-05 증강 및/또는 가상 현실 환경에서의 텔레포테이션 KR102098316B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201562262451P 2015-12-03 2015-12-03
US62/262,451 2015-12-03
US15/368,191 2016-12-02
US15/368,191 US10338687B2 (en) 2015-12-03 2016-12-02 Teleportation in an augmented and/or virtual reality environment
PCT/US2016/064919 WO2017096351A1 (en) 2015-12-03 2016-12-05 Teleportation in an augmented and/or virtual reality environment

Publications (2)

Publication Number Publication Date
KR20180038521A true KR20180038521A (ko) 2018-04-16
KR102098316B1 KR102098316B1 (ko) 2020-04-07

Family

ID=57590883

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187006688A KR102098316B1 (ko) 2015-12-03 2016-12-05 증강 및/또는 가상 현실 환경에서의 텔레포테이션

Country Status (10)

Country Link
US (2) US10338687B2 (ko)
EP (1) EP3384365B1 (ko)
JP (1) JP6682623B2 (ko)
KR (1) KR102098316B1 (ko)
CN (1) CN108027658B (ko)
AU (1) AU2016364985B2 (ko)
CA (1) CA2998733C (ko)
DE (1) DE112016004135T5 (ko)
GB (1) GB2558100A (ko)
WO (1) WO2017096351A1 (ko)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170309070A1 (en) * 2016-04-20 2017-10-26 Sangiovanni John System and method for very large-scale communication and asynchronous documentation in virtual reality and augmented reality environments
US10506221B2 (en) 2016-08-03 2019-12-10 Adobe Inc. Field of view rendering control of digital content
US20180046363A1 (en) * 2016-08-10 2018-02-15 Adobe Systems Incorporated Digital Content View Control
US11461820B2 (en) 2016-08-16 2022-10-04 Adobe Inc. Navigation and rewards involving physical goods and services
US10198846B2 (en) 2016-08-22 2019-02-05 Adobe Inc. Digital Image Animation
US10068378B2 (en) 2016-09-12 2018-09-04 Adobe Systems Incorporated Digital content interaction and navigation in virtual and augmented reality
US10430559B2 (en) 2016-10-18 2019-10-01 Adobe Inc. Digital rights management in virtual and augmented reality
US20190005716A1 (en) * 2016-11-10 2019-01-03 Janus Vr Inc. Method and system for translating a legacy web page into a three-dimensional virtual reality (vr) immersive space
CN109906424B (zh) * 2016-11-15 2022-07-05 谷歌有限责任公司 用于虚拟现实系统的输入控制器稳定技术
US10449453B2 (en) * 2017-03-08 2019-10-22 Robolox Corporation Third person camera and avatar motion controller for virtual reality players of avatar-based games
US10296080B2 (en) 2017-06-19 2019-05-21 Disney Enterprises, Inc. Systems and methods to simulate user presence in a real-world three-dimensional space
US10391408B2 (en) 2017-06-19 2019-08-27 Disney Enterprises, Inc. Systems and methods to facilitate user interactions with virtual objects depicted as being present in a real-world space
WO2018234318A1 (en) * 2017-06-20 2018-12-27 Soccer Science, S.L. REDUCING VIRTUAL DISEASE IN VIRTUAL REALITY APPLICATIONS
US10180735B1 (en) * 2017-06-29 2019-01-15 Trimble Inc. Navigation methods for three dimensional (3D) models in mixed reality (MR) environments
US10817128B2 (en) * 2017-07-11 2020-10-27 Logitech Europe S.A. Input device for VR/AR applications
US20190188910A1 (en) * 2017-12-17 2019-06-20 Tsunami VR, Inc. Systems and methods for teleporting a virtual position of a user in a virtual environment to a teleportable point of a virtual object
JP7155291B2 (ja) * 2018-05-02 2022-10-18 アップル インコーポレイテッド 環境の動き回り
US20190385372A1 (en) * 2018-06-15 2019-12-19 Microsoft Technology Licensing, Llc Positioning a virtual reality passthrough region at a known distance
US11301110B2 (en) * 2018-12-27 2022-04-12 Home Box Office, Inc. Pull locomotion in a virtual reality environment
US10839607B2 (en) 2019-01-07 2020-11-17 Disney Enterprises, Inc. Systems and methods to provide views of a virtual space
DE102020104415A1 (de) * 2019-02-22 2020-08-27 Apple Inc. Bewegung in einer umgebung
US10983662B2 (en) * 2019-04-01 2021-04-20 Wormhole Labs, Inc. Distally shared, augmented reality space
JP6776400B1 (ja) * 2019-04-26 2020-10-28 株式会社コロプラ プログラム、方法、および情報端末装置
WO2020250106A1 (en) * 2019-06-08 2020-12-17 Pankaj Raut A system and a method for teleportation for enhanced audio-visual interaction in mixed reality (mr) using a head mounted device (hmd)
US10897564B1 (en) 2019-06-17 2021-01-19 Snap Inc. Shared control of camera device by multiple devices
US11023035B1 (en) 2019-07-09 2021-06-01 Facebook Technologies, Llc Virtual pinboard interaction using a peripheral device in artificial reality environments
US11023036B1 (en) 2019-07-09 2021-06-01 Facebook Technologies, Llc Virtual drawing surface interaction using a peripheral device in artificial reality environments
US10976804B1 (en) * 2019-07-09 2021-04-13 Facebook Technologies, Llc Pointer-based interaction with a virtual surface using a peripheral device in artificial reality environments
US11340857B1 (en) 2019-07-19 2022-05-24 Snap Inc. Shared control of a virtual object by multiple devices
US11985175B2 (en) 2020-03-25 2024-05-14 Snap Inc. Virtual interaction session to facilitate time limited augmented reality based communication between multiple users
JP2021157277A (ja) * 2020-03-25 2021-10-07 ソニーグループ株式会社 情報処理装置、情報処理方法及びプログラム
US11593997B2 (en) 2020-03-31 2023-02-28 Snap Inc. Context based augmented reality communication
CN111803947A (zh) * 2020-07-15 2020-10-23 广州玖的数码科技有限公司 虚拟空间中的游戏角色移动控制方法、存储介质和服务器
CN112308980B (zh) * 2020-10-30 2024-05-28 脸萌有限公司 增强现实交互显示方法及设备
EP4224289A1 (en) * 2022-02-08 2023-08-09 Nokia Technologies Oy Mediated reality
WO2024101038A1 (ja) * 2022-11-11 2024-05-16 株式会社Nttドコモ アバター移動装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100138704A (ko) * 2009-06-25 2010-12-31 삼성전자주식회사 가상 세계 처리 장치 및 방법
CA2686991A1 (en) * 2009-12-03 2011-06-03 Ibm Canada Limited - Ibm Canada Limitee Rescaling an avatar for interoperability in 3d virtual world environments

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3284866B2 (ja) * 1996-02-05 2002-05-20 日本電信電話株式会社 3次元仮想空間内での任意画面抽出システム
US20060119598A1 (en) 2004-12-08 2006-06-08 Evil Twin Studios, Inc. System and method for communicating travel progress within a virtual environment
JP4777182B2 (ja) * 2006-08-01 2011-09-21 キヤノン株式会社 複合現実感提示装置及びその制御方法、プログラム
DE102007025069B4 (de) * 2007-05-21 2018-05-24 Seereal Technologies S.A. Holographisches Rekonstruktionssystem
US20110109628A1 (en) 2008-06-24 2011-05-12 Rurin Oleg Stanislavovich Method for producing an effect on virtual objects
US20100088600A1 (en) * 2008-10-07 2010-04-08 Hamilton Ii Rick A Redirection of an avatar
KR101666995B1 (ko) * 2009-03-23 2016-10-17 삼성전자주식회사 멀티 텔레포인터, 가상 객체 표시 장치, 및 가상 객체 제어 방법
US8812475B2 (en) 2009-04-20 2014-08-19 International Business Machines Corporation Facilitating object searches in virtual worlds
US8392853B2 (en) 2009-07-17 2013-03-05 Wxanalyst, Ltd. Transparent interface used to independently manipulate and interrogate N-dimensional focus objects in virtual and real visualization systems
US8473852B2 (en) 2009-07-31 2013-06-25 Siemens Corporation Virtual world building operations center
US8392839B2 (en) * 2009-08-27 2013-03-05 International Business Machines Corporation System and method for using partial teleportation or relocation in virtual worlds
CN102054289B (zh) * 2009-11-04 2014-06-11 沈阳迅景科技有限公司 一种基于全景实景和地理信息的3d虚拟社区构建方法
EP2745462B1 (en) * 2011-08-18 2021-10-20 Pfaqutruma Research LLC Systems and methods of virtual world interaction
KR101463540B1 (ko) * 2012-05-23 2014-11-20 한국과학기술연구원 휴대용 전자 기기를 이용한 3차원 가상 커서 제어 방법
US20130326364A1 (en) 2012-05-31 2013-12-05 Stephen G. Latta Position relative hologram interactions
US9116666B2 (en) 2012-06-01 2015-08-25 Microsoft Technology Licensing, Llc Gesture based region identification for holograms
US9594877B2 (en) 2012-08-31 2017-03-14 Nuvectra Corporation Virtual reality representation of medical devices
US9428449B2 (en) 2013-01-16 2016-08-30 Alstom Technology Ltd Method of forming urea by integration of an ammonia production process in a urea production process and a system therefor
US9685005B2 (en) * 2015-01-02 2017-06-20 Eon Reality, Inc. Virtual lasers for interacting with augmented reality environments
US10062208B2 (en) * 2015-04-09 2018-08-28 Cinemoi North America, LLC Systems and methods to provide interactive virtual environments
CN104933753A (zh) * 2015-07-09 2015-09-23 上海苗实信息科技有限公司 一种基于互联网的三维虚拟漫游场景构建平台

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100138704A (ko) * 2009-06-25 2010-12-31 삼성전자주식회사 가상 세계 처리 장치 및 방법
CA2686991A1 (en) * 2009-12-03 2011-06-03 Ibm Canada Limited - Ibm Canada Limitee Rescaling an avatar for interoperability in 3d virtual world environments

Also Published As

Publication number Publication date
JP2019502178A (ja) 2019-01-24
GB201803619D0 (en) 2018-04-18
GB2558100A (en) 2018-07-04
AU2016364985A1 (en) 2018-03-22
WO2017096351A1 (en) 2017-06-08
US10338687B2 (en) 2019-07-02
DE112016004135T5 (de) 2018-06-07
EP3384365B1 (en) 2019-09-04
AU2016364985B2 (en) 2018-12-06
CA2998733A1 (en) 2017-06-08
CN108027658B (zh) 2021-08-03
JP6682623B2 (ja) 2020-04-15
US20170160815A1 (en) 2017-06-08
US20190265804A1 (en) 2019-08-29
CN108027658A (zh) 2018-05-11
US10558274B2 (en) 2020-02-11
EP3384365A1 (en) 2018-10-10
KR102098316B1 (ko) 2020-04-07
CA2998733C (en) 2020-06-09

Similar Documents

Publication Publication Date Title
US10558274B2 (en) Teleportation in an augmented and/or virtual reality environment
US10559117B2 (en) Interactions and scaling in virtual reality
US10620720B2 (en) Input controller stabilization techniques for virtual reality systems
KR102245245B1 (ko) 증강된 그리고/또는 가상의 현실 환경에서 6 자유도 제어기들을 이용한 가상 객체들의 조작
US10509487B2 (en) Combining gyromouse input and touch input for navigation in an augmented and/or virtual reality environment
US10083539B2 (en) Control system for navigation in virtual reality environment
CN108073276B (zh) 增强和/或虚拟现实环境的拖拽虚拟元件
KR102251252B1 (ko) 가상 현실에서의 위치 지구본

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant