KR20190139902A - 3 차원 환경 저작 및 생성 - Google Patents

3 차원 환경 저작 및 생성 Download PDF

Info

Publication number
KR20190139902A
KR20190139902A KR1020197031667A KR20197031667A KR20190139902A KR 20190139902 A KR20190139902 A KR 20190139902A KR 1020197031667 A KR1020197031667 A KR 1020197031667A KR 20197031667 A KR20197031667 A KR 20197031667A KR 20190139902 A KR20190139902 A KR 20190139902A
Authority
KR
South Korea
Prior art keywords
model
environment
representation
content
data file
Prior art date
Application number
KR1020197031667A
Other languages
English (en)
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 KR20190139902A publication Critical patent/KR20190139902A/ko

Links

Images

Classifications

    • 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
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/63Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor by the player, e.g. authoring using a level editor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/11File system administration, e.g. details of archiving or snapshots
    • G06F16/122File system administration, e.g. details of archiving or snapshots using management policies
    • 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/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/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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • G06T15/205Image-based rendering
    • 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
    • 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/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2215/00Indexing scheme for image rendering
    • G06T2215/16Using real world measurements to influence rendering
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Geometry (AREA)
  • Multimedia (AREA)
  • Architecture (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)
  • Mixers With Rotating Receptacles And Mixers With Vibration Mechanisms (AREA)
  • Processing Of Solid Wastes (AREA)
  • Moulding By Coating Moulds (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Optics & Photonics (AREA)

Abstract

본 개시 내용의 양태는 3 차원(3D) 환경 저작 및 생성에 관한 것이다. 일 예에서, 3D 환경은 하나 이상의 모델을 사용하여 저작될 수 있으며, 모델의 2 차원(2D) 표현은 저작 애플리케이션을 사용하여 조작될 수 있다. 모델은 3D 환경을 렌더링할 때 모델을 함께 스티칭하는 데 사용될 수 있는 앵커 포인트를 포함할 수 있다. 다른 예에서, 모델은 하나 이상의 콘텐츠 포인트를 포함할 수 있으며, 이 콘텐츠 포인트는 3D 환경 내에 콘텐츠를 배치하는 데 사용될 수 있다. 환경 데이터 파일은 콘텐츠 포인트와 연관된 하나 이상의 모델 및 콘텐츠에 기초하여 생성될 수 있으며, 이에 의해 다른 컴퓨팅 디바이스에 분산될 수 있는 파일을 생성할 수 있다. 뷰어 애플리케이션은 환경 데이터 파일에 기초하여 3D 환경을 생성하는 데 사용될 수 있다. 따라서, 뷰어 애플리케이션은 모델을 스티칭하고 3D 환경을 콘텐츠로 채울 수 있다.

Description

3 차원 환경 저작 및 생성
공개 사이트는 웹 상에서 정보를 공유하고 소비하는 핵심 방식이 되었다. 웹 사이트 생성을 민주화하는 소수의 서비스가 존재한다. 그러나, 3D 콘텐츠의 잠재력을 최대한 발휘하는 사이트를 생성하는 문제를 해결하기 위한 서비스는 존재하지 않는다. 3D 콘텐츠를 쉽게 생성하고 공유하기 위한 압력(Push)에 증가함에 따라, 3D 콘텐츠의 저작 및/또는 소비를 가능하게 하는 툴 및/또는 서비스가 필요하다.
이들 및 다른 일반적인 고려 사항과 관련하여 실시예가 기술된다. 또한, 비교적 특정의 문제가 논의되었지만, 실시예는 배경에서 식별되는 특정의 문제를 해결하는 것으로 제한되어서는 안된다는 것을 이해해야 한다.
본 개시 내용의 양태는 3 차원(3D) 환경 저작 및 생성에 관한 것이다. 일 예에서, 3D 환경은 하나 이상의 모델을 사용하여 저작될 수 있으며, 모델의 2 차원(2D) 표현은 저작 애플리케이션을 사용하여 선택 및 배치될 수 있다. 모델은 3D 환경을 렌더링할 때 하나 이상의 다른 모델과 함께 모델을 스티칭하는 데 사용될 수 있는 하나 이상의 앵커 포인트를 포함할 수 있다. 다른 예에서, 모델은 하나 이상의 콘텐츠 포인트를 포함할 수 있으며, 이 콘텐츠 포인트는 3D 환경 내에 콘텐츠 아이템을 배치하는 데 사용될 수 있다. 환경 데이터 파일은 콘텐츠 포인트와 연관된 하나 이상의 모델 및 콘텐츠에 기초하여 생성될 수 있으며, 이에 의해 다른 컴퓨팅 디바이스에 분산될 수 있는 파일을 생성할 수 있다.
뷰어 애플리케이션(viewer application)은 환경 데이터 파일에 기초하여 3D 환경을 생성하는 데 사용될 수 있다. 일 예로서, 뷰어 애플리케이션은 환경 데이터 파일에 의해 표시된 모델에 액세스할 수 있고 스티칭 동작(stitching operation)에 기초하여 모델을 렌더링하여 외견상 연속적인 모델의 조합을 생성할 수 있다. 뷰어 애플리케이션은 또한 모델의 콘텐츠 포인트에 기초한 콘텐츠로 3D 환경을 채울 수 있다. 따라서, 사용자가 잠재적으로 이전의 3D 설계 경험을 거의 또는 전혀 갖지 않더라도, 본원에 개시된 양태에 따라 3D 환경을 용이하게 저작할 수 있다.
본 개요는 개념의 선택을 단순화된 형태로 소개하기 위해 제공되며, 그 개념은 아래의 상세한 설명에서 추가로 기술된다. 이 개요는 청구된 발명의 요지의 핵심 특징 또는 필수 특징을 식별하기 위한 것도 아니고 청구된 발명의 요지의 범위를 제한하는 데 사용되는 것도 아니다.
비 제한적 및 비 절대적인 예가 다음의 도면을 참조하여 기술된다.
도 1은 3 차원 환경 저작 및 생성을 위한 예시적인 시스템의 개관을 도시한다.
도 2는 2 차원 표현을 사용하여 3 차원 환경을 저작하는 예시적인 방법의 개관을 도시한다.
도 3은 3 차원 환경을 생성하기 위한 예시적인 방법의 개관을 도시한다.
도 4는 2 차원 모델을 사용하여 3 차원 환경을 저작하기 위한 예시적인 사용자 인터페이스의 개관을 도시한다.
도 5는 3 차원 환경 내의 예시적인 뷰(view)를 도시한다.
도 6은 본 개시 내용의 양태를 실시할 수 있는 컴퓨팅 디바이스의 예시적인 물리적 컴포넌트를 나타내는 블록도이다.
도 7a 및 도 7b는 본 개시 내용의 양태를 실시할 수 있는 모바일 컴퓨팅 디바이스의 간략화된 블록도이다.
도 8은 본 개시 내용의 양태를 실시할 수 있는 분산 컴퓨팅 시스템의 간략화된 블록도이다.
도 9는 본 개시 내용의 하나 이상의 양태를 실행하기 위한 태블릿 컴퓨팅 디바이스를 도시한다.
다음의 상세한 설명에서, 그 일부를 형성하고, 특정 실시예 또는 예를 예시로 도시한 첨부 도면이 참조된다. 이들 양태들은 조합될 수 있고, 다른 양태들이 이용될 수 있으며, 본 개시 내용으로부터 벗어나지 않고 구조적 변경이 행해질 수 있다. 실시예는 방법, 시스템 또는 디바이스로서 실시될 수 있다. 따라서, 실시예는 하드웨어 구현, 전체 소프트웨어 구현 또는 소프트웨어 및 하드웨어 양태를 결합한 구현예의 형태를 취할 수 있다. 따라서 이하의 상세한 설명은 제한적인 의미로 해석되어서는 안되며, 본 개시 내용의 범위는 첨부된 청구범위 및 그 등가물에 의해 정의된다.
본 개시 내용의 양태는 3 차원(3D) 환경 저작 및 생성에 관한 것이다. 일 예에서, 3D 환경은 저작 애플리케이션을 사용하여 저작될 수 있으며, 저작 애플리케이션의 사용자는 환경 데이터 파일로서 저장될 수 있는 모델의 2 차원(2D) 표현을 그래픽으로 선택할 수 있다. 이후 환경 데이터 파일은 선택된 모델의 3D 렌더링을 포함하는 3D 환경을 생성하는 데 사용될 수 있다. 일부 예에서, 상이한 타입의 콘텐츠가 3D 환경에 내장되거나 포함될 수 있다. 예시적인 콘텐츠는 다른 콘텐츠 중에서도 3D 객체(예를 들어, 3D 모델, 도형, 형상 등) 또는 2D 객체(예를 들어, 파일, 이미지, 프리젠테이션, 문서, 웹 사이트, 비디오, 원격 리소스 등)를 포함하지만 이에 제한되지는 않는다. 예에서, 3D 환경은 가상 현실(VR) 세계와 같은 가상 공간일 수 있거나, 또는 현실 세계 공간일 수 있으며, 여기서, 콘텐츠는 다른 증강된 현실(AR) 또는 VR 기술 중에서도 현실 세계 위에 디스플레이되거나 계층화될 수 있다.
본원에 개시된 양태에 따라 저작된 3D 환경은 이 후 데스크탑 컴퓨터 또는 스마트폰과 같은 컴퓨팅 디바이스 상의 뷰어 애플리케이션을 사용하여 소비될 수 있다. 일 예에서, 로엔드(low-end) 디바이스(예를 들어, GOOGLE CARDBOARD)에서 하이엔드(high-end) 디바이스(예를 들어, MICROSOFT HOLOLENS, OCULOUS RIFT, HTC VIVE 등)에 이르기까지의 광범위한 디바이스에서 3D 환경을 경험할 수 있다. 동일한 3D 환경이 또한 데스크탑 또는 모바일 컴퓨팅 디바이스를 사용하여 생성될 수 있기 때문에, 3D 환경을 생성하는 데 추가적인 오버헤드(예를 들어, 모든 필요한 텍스처, 조명 맵, 오디오 파일 등의 전송)가 요구되지 않을 수 있다. 또한, 디바이스 특정 또는 플랫폼 특정의 특질은 뷰어 애플리케이션에 의해 처리될 수 있으며, 그에 의해 그러한 특질이 최종 사용자 및 3D 환경의 저자 모두에게 보이지 않게 한다.
3D 환경은 하나 이상의 모델을 포함할 수 있으며, 여기서 모델은 가상의 룸, 가상 장면 또는 가상 세계의 임의의 다른 서브 파트를 포함할 수 있다. 전술한 바와 같이, 사용자는 저작 애플리케이션을 사용하여 하나 이상의 모델을 선택, 배열 및/또는 커스텀화함으로써 3D 환경을 생성할 수 있다. 이어서, 3D 환경은 환경 데이터 파일로서 저장될 수 있으며, 환경 데이터 파일은 3D 환경에 포함시킬 하나 이상의 모델 및/또는 콘텐츠에 관한 정보를 저장할 수 있다. 뷰어 애플리케이션은 환경 데이터 파일에 기초하여 3D 환경을 렌더링하는 데 사용될 수 있다. 뷰어 애플리케이션은 환경 데이터 파일에 의해 사용되는 모델과 연관되는 컴퓨팅 리소스를 포함할 수 있으며, 그에 따라 환경 데이터 파일은 그러한 리소스를 포함할 필요가 없다. 일부 예에서, 환경 데이터 파일은 3D 환경을 렌더링할 때 사용하기 위한 컴퓨팅 리소스를 포함할 수 있거나, 또는 리소스는 다른 예 중에서 서버 또는 다른 원격 위치로부터 검색될 수 있다.
3D 환경을 렌더링할 때, 뷰어 애플리케이션은 모델 내의 하나 이상의 앵커 포인트를 식별할 수 있으며, 이는 환경 데이터 파일에 의해 특정된 인접하거나 연결된 모델들을 함께 3D 환경으로 스티칭할 때 사용될 수 있다. 일 예로서, 모델은 진입 앵커 포인트 및 진출 앵커 포인트를 포함할 수 있고, 진입 앵커 포인트는 모델로의 출입구 또는 다른 입구를 나타낼 수 있고 진출 앵커 포인트는 모델로부터의 출입구 또는 다른 출구를 나타낼 수 있다. 따라서, 다수의 모델(예를 들어, 인접하거나 연결된 모델들)을 함께 스티칭할 때, 제 1 모델의 진출 앵커 포인트는 제 2 모델(및 확장에 의한 제 2 모델)의 진입 앵커 포인트를 배치하는 데 사용될 수 있으며, 이에 의해 연속적인 모델의 조합을 생성할 수 있다. 일부 예에서, 앵커 포인트는 방향을 특정할 수 있고, 진입 앵커 포인트의 방향은 모델을 향할 수 있는 반면, 진출 앵커 포인트의 방향은 모델로부터 멀어지는 방향을 향할 수 있다.
특정 양태에서, 콘텐츠 포인트는 3D 환경 내에서 콘텐츠가 (예를 들어, 콘텐츠 아이템으로서) 배치될 수 있는 위치를 지시할 수 있다. 예에서, 앵커 또는 콘텐츠 포인트는 모델 내에서 렌더링 위치를 정의할 수 있다. 양태들에서, 하나 이상의 앵커 포인트는 모델의 일부로서 (예를 들어, 기본 넘버링 규칙을 사용하는 널 포인트 객체(null point object)로서) 포함될 수 있으며, 이는 뷰어 애플리케이션 또는 다른 렌더러에 의해 앵커 포인트에 대한 자식(children)(예를 들어, 다른 모델)을 획득 및 연결하는 데 사용될 수 있다. 유사하게, 콘텐츠 포인트는 모델 내에 콘텐츠를 배치하는 데 사용될 수 있다. 따라서, 상이한 앵커 포인트 및/또는 콘텐츠 포인트에 배치된 콘텐츠를 갖는 3D 환경은 렌더링 전에 3D 환경에 대한 정보를 요구하지 않고 생성될 수 있다. 일부 예에서, 3D 환경을 저작하는 사용자는 코드를 추가할 필요없이 3D 환경 내에 앵커 포인트 및/또는 콘텐츠 포인트를 배치할 수 있다. 다른 예에서, 사용자는 모델로부터 콘텐츠 포인트 및/또는 앵커 포인트를 추가, 이동 또는 삭제할 수 있다.
일부 예에서, 모델들의 세트가 생성될 수 있으며, 여기서 다른 룸 타입들(room types)이 세트의 파트로서 미리 정의될 수 있다. 모델들의 세트는 모델을 동일한 세트로부터의 다른 모델과 함께 스티칭하는 것이 외관상 연속하는 모델을 형성할 수 있도록 설계될 수 있다. 다른 예에서, 모델의 양태는 동적으로 또는 프로그램적으로 생성될 수 있다. 일 예에서, 모델은 그것이 스티칭될 수 있는 모델에 따라 특정 양태들이 대체될 수 있음을 나타낼 수 있다. 일 예로서, 제 1 모델은 벽(wall) 또는 아치형 통로(archway)가 도어(door)로 대체될 수 있음을 나타낼 수 있고, 따라서 제 2 모델의 진입 포인트가 도어에서 제 1 모델에 스티칭될 수 있게 된다. 본 개시 내용의 사상을 벗어나지 않고 다른 대체 또는 모델 생성 기술이 사용될 수 있음을 이해할 것이다.
도 1은 3 차원 환경 저작 및 생성을 위한 예시적인 시스템(100)의 개관을 도시한다. 도시된 바와 같이, 시스템(100)은 컴퓨팅 디바이스(102 및 104), 및 3D 환경 서비스(106)를 포함한다. 일 예에서, 컴퓨팅 디바이스(102 및 104)는 모바일 컴퓨팅 디바이스, 랩탑 컴퓨팅 디바이스, 태블릿 컴퓨팅 디바이스 또는 데스크탑 컴퓨팅 디바이스를 포함하지만 이에 제한되지 않는 임의의 다양한 컴퓨팅 디바이스일 수 있다. 일부 예에서, 3D 환경 서비스(106)는 협업, 통신 또는 생산성 플랫폼의 일부로서 제공될 수 있다. 3D 환경 서비스(106) 및 엘리먼트(108 내지 114)는 컴퓨팅 디바이스(102 및/또는 104)와 분리된 것으로 도시되어 있지만, 다른 예에서는 하나 이상의 엘리먼트(108 내지 114)는 컴퓨팅 디바이스(102 및/또는 104)에 의해 제공될 수 있다는 것이 이해될 것이다. 일 예로서, 컴퓨팅 디바이스(102)는 저작 애플리케이션(108)을 포함할 수 있는 반면, 컴퓨팅 디바이스(104)는 뷰어 애플리케이션(110)을 포함할 수 있다.
3D 환경 서비스(106)는 저작 애플리케이션(108), 뷰어 애플리케이션(110), 모델 데이터 저장소(112), 및 저작된 환경 데이터 저장소(114)를 포함한다. 저작 애플리케이션(108)은 본원에 개시된 양태에 따라 3D 환경을 저작하는 데 사용될 수 있다. 일 예에서, 저작 애플리케이션(108)은 3D 환경을 저작하기 위해 사용자에 의해 선택, 배치 및/또는 커스텀화될 수 있는, 하나 이상의 3D 모델의 2D 표현을 디스플레이할 수 있다. 모델은 하나 이상의 콘텐츠 포인트를 포함할 수 있으며, 이 콘텐츠 포인트는 3D 환경 내에 콘텐츠를 배치하는 데 사용될 수 있다. 일부 예에서, 저작 애플리케이션(108)은 다양한 테마를 제공할 수 있으며, 여기서 모델은 하나 이상의 테마와 연관될 수 있거나, 사용자의 선택된 테마에 기초하여 변경되거나 적응될 수 있다(예를 들어, 색상, 텍스처, 조명 등이 수정될 수 있다). 예에서, 모델은 다수의 테마에 의해 사용될 수 있으며, 여기서 모델의 기하학적 양태 중 적어도 일부(예를 들어, 레이아웃, 건축 또는 지리적 특징 등)는 변하지 않을 수 있지만, 모델의 미학(예를 들어, 색 체계, 조명, 오디오 등)이 변할 수 있다.
저작 애플리케이션(108)은 저작된 3D 환경을 환경 데이터 파일로서 출력할 수 있고, 환경 데이터 파일은 다른 정보 중에서도, 선택된 모델과 연관된 정보(예를 들어, 모델 식별자, 모델 이름, 모델 타입 등), 배치 정보(positioning information)(예를 들어, 좌표, 앵커 포인트 식별자 등), 콘텐츠 정보(예를 들어, 하나 이상의 콘텐츠 포인트에 대해 어떠한 콘텐츠가 표시되어야 하는지, 디스플레이될 콘텐츠, 콘텐츠에 대한 기준 등), 커스텀 리소스(예를 들어, 커스텀 텍스처, 사운드 등)를 포함할 수 있다. 일부 예에서, 저작 애플리케이션(108)은 웹 기반 애플리케이션일 수 있고, 여기서 사용자의 컴퓨팅 디바이스는 웹 브라우저를 사용하여 저작 애플리케이션(108)에 액세스할 수 있다. 다른 예에서, 저작 애플리케이션(108)은 사용자의 컴퓨팅 디바이스에 의해 검색되고 실행될 수 있는 실행 가능한 애플리케이션일 수 있다.
뷰어 애플리케이션(110)은 환경 데이터 파일에 기초하여 3D 환경을 생성, 시청, 탐색 및/또는 상호 작용하는 데 사용될 수 있다. 일 예에서, 뷰어 애플리케이션(110)은 웹 기반 애플리케이션일 수 있으며, 사용자의 컴퓨팅 디바이스는 웹 브라우저를 사용하여 뷰어 애플리케이션(110)에 액세스할 수 있다. 다른 예에서, 뷰어 애플리케이션(110)은 사용자의 컴퓨팅 디바이스에 의해 검색되고 실행될 수 있는 실행 가능한 애플리케이션일 수 있다. 본원에 개시된 양태에 따르면, 뷰어 애플리케이션(110)은 3D 환경의 하나 이상의 모델을 식별하기 위해 환경 데이터 파일을 평가할 수 있다. 환경 데이터 파일이 복수의 모델을 참조하는 경우, 그 모델은 3D 환경을 렌더링할 때 함께 스티칭될 수 있다. 뷰어 애플리케이션(110)은 환경 데이터 파일에 의해 특정된 콘텐츠에 기초하여, 하나 이상의 모델의 다양한 콘텐츠 포인트에서의 콘텐츠로 렌더링된 3D 환경을 채울 수 있다. 일 예에서, 뷰어 애플리케이션(110)은 다양한 3D 렌더링 엔진 중 임의의 것을 사용할 수 있고, 3D 환경을 렌더링할 때 디바이스 특정의 및/또는 엔진 특정의 구현 세부 사항을 처리할 수 있어서, 환경 데이터 파일의 저자는 디바이스 특정 및/또는 엔진 특정의 특질에 정통해 있을 필요는 없다.
모델 데이터 저장소(112)는 3D 환경을 저작 및/또는 생성하는 데 사용될 수 있는 하나 이상의 모델을 저장할 수 있다. 일 예에서, 모델 데이터 저장소(112)에 의해 저장된 모델은 하나 이상의 테마와 연관될 수 있어서, 저작 애플리케이션(108)의 사용자는 테마를 선택할 수 있고 선택된 테마와 연관된 모델이 제시될 수 있다. 일부 예에서, 모델들의 세트가 모델 데이터 저장소(112)에 의해 저장될 수 있으며, 여기서 다른 룸 타입들이 세트의 파트로서 미리 정의될 수 있다. 모델들의 세트는 모델을 동일한 세트로부터의 다른 모델과 함께 스티칭하는 것이 외관상 연속하는 모델을 형성할 수 있도록 설계될 수 있다. 다른 예에서, 모델 데이터 저장소(112)에 의해 저장된 모델의 양태는 동적으로 또는 프로그램적으로 생성될 수 있다. 일 예에서, 모델은 그것이 스티칭될 수 있는 모델에 따라 특정 양태들이 대체될 수 있음을 나타낼 수 있다. 일 예로서, 제 1 모델은 벽 또는 아치형 통로가 도어로 대체될 수 있음을 나타낼 수 있고, 따라서 제 2 모델의 진입 포인트가 도어에서 제 1 모델에 스티칭될 수 있게 된다. 본 개시 내용의 사상을 벗어나지 않고 다른 대체 또는 모델 생성 기술이 사용될 수 있음을 이해할 것이다.
저작된 환경 데이터 저장소(114)는 하나 이상의 환경 데이터 파일을 저장할 수 있다. 일부 예에서, 본원에서 사용되는 "환경 데이터 파일"은 파일 시스템 상의 파일, 데이터베이스 내의 엔트리일 수 있거나, 다양한 다른 데이터 저장 기술 중 임의의 것을 사용하여 저장될 수 있다. 저작 애플리케이션(108)에 의해 저작된 3D 환경은 저작된 환경 데이터 저장소(114)에 저장될 수 있다. 저작 애플리케이션(108)이 로컬로 실행되는 애플리케이션인 예에서, 환경 데이터 파일의 적어도 일부는 컴퓨팅 디바이스(102 및 104) 중 하나로부터 수신될 수 있고, 저작된 환경 데이터 저장소를 사용하여 저장될 수 있다. 일부 예에서, 뷰어 애플리케이션(110)은 저작된 환경 데이터 저장소(114)로부터 환경 데이터 파일을 검색할 수 있고, 모델 데이터 저장소(112)로부터의 하나 이상의 모델과 함께, 3D 환경을 생성하는 데 사용될 수 있다. 뷰어 애플리케이션이 로컬로 실행되는 애플리케이션인 예에서, 모델 데이터 저장소는 애플리케이션을 실행하는 디바이스에 대해 로컬로 및/또는 원격으로 저장될 수 있고, 환경 데이터 파일의 적어도 일부는 저작된 환경 데이터 저장소(114)로부터 검색될 수 있다. 일부 예에서, 데이터 파일은 청크로 스트리밍되거나 검색될 수 있어서, 대역폭 소비를 감소시키고 및/또는 응답성을 향상시킬 수 있다. 본 개시 내용의 사상을 벗어나지 않고 다른 데이터 저장 및/또는 검색 기술이 사용될 수 있음을 이해할 것이다.
컴퓨팅 디바이스(102 및 104)의 애플리케이션(116 및 118)은 각각 다양한 애플리케이션 중 임의의 것일 수 있다. 예에서, 애플리케이션(116 및/또는 118)은 전술한 바와 같은 저작 애플리케이션일 수 있으며, 컴퓨팅 디바이스(102 및/또는 104)의 사용자는 애플리케이션을 사용하여 환경 데이터 파일에 의해 설명된 3D 환경을 저작할 수 있다. 일부 예에서, 환경 데이터 파일은 저작된 환경 데이터 저장소(114)에 의해 저장될 수 있다. 다른 예에서, 애플리케이션(116 및/또는 118)은 전술한 바와 같은 뷰어 애플리케이션일 수 있으며, 이는 컴퓨팅 디바이스(102 및/또는 104)의 사용자에 의해 사용되어, 적어도 환경 데이터 파일에 의해 정의된 3D 환경을 보고, 렌더링하고 및/또는 탐색할 수 있다. 다른 예에서, 컴퓨팅 디바이스(102 및/또는 104)는 모델 데이터 저장소(112)와 유사한 모델 데이터 저장소 및/또는 저작된 환경 데이터 저장소(114)와 유사한 저작된 환경 데이터 저장소를 포함할 수 있다. 예에서, 하드웨어 AR 및/또는 VR 디바이스(도시되지 않음)는 컴퓨팅 디바이스(102 및/또는 104)에 접속될 수 있고 렌더링된 3D 환경을 보고 및/또는 이에 참여하는 데 사용될 수 있다. 예를 들어, VR 또는 AR 헤드셋이 사용될 수 있다.
도 2는 2 차원 표현을 사용하여 3 차원 환경을 저작하는 예시적인 방법(200)의 개관을 도시한다. 일 예에서, 방법(200)의 양태는 컴퓨팅 디바이스(예를 들어, 도 1의 컴퓨팅 디바이스(102 및/또는 104))에 의해 수행될 수 있거나, 저작 애플리케이션(예를 들어, 저작 애플리케이션(108))에 의해 수행될 수 있다. 흐름은 환경 템플릿이 선택될 수 있는 동작(202)에서 시작된다. 환경 템플릿은 3D 환경의 일반적인 외관 및/또는 느낌(예를 들어, 조명, 색 체계, 텍스처, 사운드, 위치 등)을 정의할 수 있다. 예를 들어, 사무실 템플릿(office template)이 선택될 수 있으며, 이는 사무실을 나타내는 3D 환경을 생성하는 데 사용될 수 있고, 정원 템플릿(garden template)은 야외 공간 등을 나타내는 3D 환경을 생성하는 데 선택될 수 있다.
환경 템플릿(environment template)을 선택할 때, 흐름은 모델 선택이 수신될 수 있는 동작(204)으로 계속된다. 본원에 기술된 바와 같이, 3D 환경을 저작할 때 하나 이상의 모델이 사용자에게 제시될 수 있다. 일부 예에서, 모델들의 세트가 제시될 수 있으며, 여기서 모델들의 세트로부터의 모델은 이 세트로부터의 다른 모델과 함께 스티칭되도록 설계되어 외관상 연속적인 모델을 생성할 수 있다. 일 예로서, 세트 내의 모델은 유사한 색상, 텍스처, 객체의 스케일 또는 테마 등을 가질 수 있다. 양태들에서, 3D 환경은 하나 이상의 상이한 모델(예를 들어, 룸, 장면 등)을 포함할 수 있다.
흐름은 동작(206)으로 진행하며, 여기서 콘텐츠 모델이 선택된 모델 내에서 선택될 수 있다. 전술한 바와 같이, 모델은 하나 이상의 콘텐츠 포인트를 포함할 수 있으며, 이 콘텐츠 포인트는 모델 내의 다양한 위치에 콘텐츠를 디스플레이 또는 제공하는 데 사용될 수 있다. 콘텐츠 포인트를 선택하면, 선택된 콘텐츠 포인트에 배치될 수 있는 다양한 타입의 콘텐츠를 디스플레이하는 메뉴가 생성될 수 있다. 일 예로서, 사용자는 3D 객체, 비디오, 이미지, 문서, 프리젠테이션, 스프레드 시트, 객체의 집합체 등에 관한 콘텐츠를 선택할 수 있다. 동작(206)에서 디스플레이된 메뉴는 선택된 콘텐츠 포인트에 배치될 하나 이상의 타입의 콘텐츠의 선택을 포함하는 사용자 입력을 수신하도록 동작 가능할 수 있다. 일부 예에서, 동작(206)에서 콘텐츠가 선택된 모델의 복수의 콘텐츠 포인트와 연관될 수 있도록 다수의 콘텐츠 포인트가 개별적으로 또는 함께 선택될 수 있다.
다양한 양태에서, 3D 환경은 다수의 상호 연결된 모델을 포함할 수 있다. 흐름은 결정 동작(208)으로 계속되어, 이 동작에서 추가 모델이 3D 환경에 추가되어야 하는지를 결정한다. 일 예에서, 결정 동작은 사용자가 다른 모델이 추가되어야 한다는 표시를 제공했는지를 결정하는 것을 포함할 수 있다. 새로운 모델의 선택을 수신하는 것에 더하여, 하나 이상의 기존 모델에 대한 모델의 배치가 수신될 수도 있다. 일 양태에서, 사용자 인터페이스 엘리먼트는 기존 모델의 앵커 포인트 근처에 배치될 수 있다. 사용자 인터페이스 엘리먼트를 선택하면, 앵커 포인트에서 기존 모델에 연결될 수 있는 모델 타입을 나타내는 메뉴가 디스플레이될 수 있다. 선택 가능한 모델은 개별 스키마(schemas)를 가질 수 있고, 양태에서, 다수의 상이한 이형(예를 들어, 도어 없음, 하나의 도어, 2 개의 도어, 원형, 사각형, 실내, 실외 등)을 가질 수 있다. 메뉴는 메뉴로부터의 모델의 선택을 수신하도록 동작 가능할 수 있다. 선택을 수신하면, 새로운 모델이 앵커 포인트에서 기존 모델에 연결될 수 있다. 추가 모델이 선택되면, 흐름은 "예"로 분기하고 동작(204)으로 되돌아 간다. 흐름은 이후 동작들(204 및 208) 사이에서 루핑(loop)될 수 있어서, 사용자가 원하는 수만큼 많은 모델들을 3D 환경에 추가할 수 있다.
그러나, 추가의 룸이 추가되지 않으면, 흐름은 대신에 "아니오"로 분기하여 동작(210)으로 진행한다. 동작(210)에서, 저작된 3D 환경을 기술하는 환경 데이터 파일이 생성될 수 있다. 일 예에서, 환경 데이터 파일은 하나 이상의 선택된 모델 및/또는 모델의 콘텐츠 포인트에 대해 선택된 콘텐츠에 관한 정보를 저장할 수 있다. 환경 데이터 파일은 본원에 개시된 양태에 따라 3D 환경을 렌더링하기 위해 뷰어 애플리케이션에 의해 사용될 수 있다. 일부 예에서, 환경 데이터 파일은 3D 환경을 렌더링할 때 사용하기 위한 컴퓨팅 리소스를 포함할 수 있거나, 또는 리소스는 다른 예 중에서 서버 또는 다른 원격 위치로부터 검색될 수 있다.
동작(212)으로 이동하여, 환경 데이터 파일이 저장될 수 있다. 환경 데이터 파일을 저장하는 것은 다른 저장 기술 중에서도, 하나 이상의 출력 파일 또는 데이터베이스 내의 엔트리를 생성하는 것을 포함할 수 있다. 일부 예에서, 환경 데이터 파일은 도 1의 저작된 환경 데이터 저장소(114)와 같은 다른 사용자에 의한 액세스를 위해 저작된 환경 데이터 저장소에 제공될 수 있다. 흐름은 동작(212)에서 종료된다. 따라서, 방법(200)은 기술적인 3D 경험이 부족한 사용자가 3D 환경을 설계 및 저작할 수 있게 한다.
도 3은 3 차원 환경을 생성하기 위한 예시적인 방법(300)의 개관을 도시한다. 일 예에서, 방법(300)의 양태는 컴퓨팅 디바이스(예를 들어, 도 1의 컴퓨팅 디바이스(102 및/또는 104))에 의해 수행될 수 있거나, 뷰어 애플리케이션(예를 들어, 뷰어 애플리케이션(110))에 의해 수행될 수 있다. 흐름은 환경 데이터 파일이 검색될 수 있는 동작(302)에서 시작된다. 환경 데이터 파일은 로컬 또는 원격 데이터 저장소에서 검색될 수 있다. 일부 예에서, 환경 데이터 파일은 도 1의 저작된 환경 데이터 저장소(114)와 같은 저작된 환경 데이터 저장소로부터 검색될 수 있다. 일부 예에서, 환경 데이터 파일의 일부만이 초기에 검색될 수 있는 반면, 후속 파트는 다른 예 중에서, 요청에 따라 또는 이용 가능한 컴퓨팅 리소스에 기초하여 검색될 수 있다.
흐름은 동작(304)으로 진행하여, 검색된 환경 데이터 파일에서 모델이 식별될 수 있다. 일 예에서, 모델은 모델 식별자, 모델 이름 등에 의해 특정될 수 있다. 다른 예에서, 모델은 다수의 출입구 또는 테마를 포함하지만 이에 제한되지 않는 다른 정보와 연관될 수 있다. 일부 예에서, 모델은 다른 기준 중에서, 3D 환경에서 사용자의 위치에 대한 모델의 근접성에 기초하거나, 또는 모델을 렌더링하기 위해 필요한 자산을 획득하는 데 예상되는 시간에 기초하여 환경 데이터 파일로부터 선택될 수 있다.
동작(306)에서, 모델의 3D 표현이 3D 환경에서 렌더링될 수 있다. 모델을 렌더링하는 것은 모델과 관련된 리소스에 액세스하는 것을 포함할 수 있다. 일 예에서, 리소스는 로컬 또는 원격으로 저장되거나 이들의 조합으로 저장될 수 있다. 일부 예에서, 제3자 렌더링 엔진이 환경을 렌더링하는 데 사용될 수 있다. 일부 예에서, 모델은 렌더링되기 전 또는 렌더링되는 동안 조정되거나 수정될 수 있다. 일 예로서, 입구 및/또는 출구는 본원에 개시된 양태에 따라 동적으로 업데이트될 수 있다. 다른 예에서, 모델의 색상, 조명 또는 텍스처가 변경될 수 있다. 본 개시 내용의 사상을 벗어나지 않고 다양한 렌더링 기술 중의 임의의 것이 사용될 수 있음을 이해할 것이다.
동작(308)으로 이동하여, 모델의 콘텐츠 포인트는 환경 데이터 파일에 의해 표시된 바와 같은 콘텐츠로 채워질 수 있다. 일 예로서, 콘텐츠의 2D 표현은 문서, 웹 페이지 또는 다른 2 차원 콘텐츠에 대해 생성될 수 있다. 다른 예에서, 다른 콘텐츠 중에서 3D 객체는 모델에서 부동으로 렌더링될 수 있거나 받침대 상에 배치될 수 있다. 콘텐츠의 적어도 일부는 환경 데이터 파일에 의해 저장될 수 있거나, 디바이스의 다른 곳에 로컬로 저장될 수 있거나, 원격 위치로부터 검색될 수 있다.
결정 동작(310)에서, 환경 데이터 파일이 다른 모델을 포함하는지가 결정될 수 있다. 일부 예에서, 결정 동작은 이용 가능한 컴퓨팅 리소스를 평가하는 것을 더 포함할 수 있고, 여기서, 흐름은 결정 동작(310)에서 컴퓨팅 리소스가 다른 동작들 중에서 3D 환경의 다른 부분들을 렌더링하는 데 전용될 수 있도록 일시 정지할 수 있다. 환경 데이터 파일이 다른 모델을 포함하지 않는 것으로 결정되면, 흐름은 "아니오"로 분기하여 동작(316)으로 진행하며, 여기서, 렌더링된 3D 환경은 사용자에게 제시될 수 있다. 일부 예에서, 적어도 일부의 렌더링된 환경이 방법(300)에서 사용자에게 먼저 제시될 수 있다. 일부 예에서, 사용자는 초기에 환영 룸에 배치되거나 또는 3D 환경에서 미리 정의된 위치에 배치될 수 있다. 흐름은 동작(316)에서 종료된다.
그러나, 결정 동작(310)에서 환경 데이터 파일이 추가 모델을 포함하는 것으로 결정되면, 흐름은 대신 "예"로 분기하여 동작(312)으로 진행하고, 여기서 다음 모델이 환경 데이터 파일로부터 식별될 수 있다. 다른 예에서, 모델은 모델 식별자, 모델 이름 등에 의해 특정될 수 있다. 다른 예에서, 모델은 다수의 출입구 또는 테마를 포함하지만 이에 제한되지 않는 다른 정보와 연관될 수 있다. 일부 예에서, 모델은 다른 기준 중에서, 3D 환경에서 사용자의 위치에 대한 모델의 근접성에 기초하거나, 또는 모델을 렌더링하기 위해 필요한 자산을 획득하는 데 예상되는 시간에 기초하여 환경 데이터 파일로부터 선택될 수 있다.
흐름은 동작(314)으로 진행하며, 여기서 새롭게 식별된 모델이 이전의 모델과 스티칭될 수 있다. 일 예에서, 두 모델의 앵커 포인트가 식별되어 다음 모델이 렌더링되어야 하는 위치를 결정하는 데 사용될 수 있다. 예를 들어, 이전 모델의 진출 앵커 포인트가 식별되어 새로운 모델의 진입 앵커 포인트에 대한 위치를 결정하는 데 사용될 수 있다. 다른 예에서, 모델이 조정될 수 있다(예를 들어, 벽을 도어로 대체하거나, 텍스처를 개선하거나, 스케일링을 변경하는 등). 본 개시 내용의 사상을 벗어나지 않고 두 개의 모델을 스티칭하는 데 다른 동작이 수행될 수 있음을 이해할 것이다. 이어서, 흐름은 동작(306)으로 이동하여, 동작(314)로부터의 스티칭 결정에 따라, 새로운 모델이 3D 환경에서 렌더링될 수 있다. 그 후, 흐름은 새롭게 식별된 모델에 기초하여 동작(308 및 310)을 계속한다. 결국, 렌더링을 위한 추가 모델이 제시되지 않을 것이며, 흐름은 전술한 바와 같은 동작(316)에서 종료될 것이다.
도 4는 2 차원 모델을 사용하여 3 차원 환경을 저작하기 위한 예시적인 사용자 인터페이스(400)의 개관을 도시한다. 사용자 인터페이스(400)에 도시된 예시적인 3D 환경은 3 개의 상이한 모델을 포함하는데, 본 예에서의 모델에는 룸(402, 404 및 406)이 존재한다. 일 예에서, 별(426)은 3D 환경이 처음 렌더링될 때 사용자의 관점에 대한 초기 위치를 나타낼 수 있다. 일부 예에서, 초기 위치는 사용자 인터페이스(400)를 사용하여 이동 가능할 수 있는 반면, 다른 예에서, "환영"룸 타입은 3D 환경에서 사용자의 초기 위치를 특정할 수 있다.
도시된 바와 같이, 룸(402, 404 및 406)은 콘텐츠 포인트(416)와 같은 하나 이상의 콘텐츠 포인트를 포함한다. 콘텐츠 포인트(416)는 체크 마크로 도시되어, 콘텐츠가 콘텐츠 포인트(416)와 연관됨을 나타낸다. 대조적으로, 콘텐츠 포인트(408)는 (회색의 연관되지 않은 콘텐츠 포인트와 비교하여) 어두운 플러스로 도시되어, 콘텐츠 포인트(408)가 현재 선택되어 있음을 나타낸다. 선택에 응답하여, 다양한 타입의 이용 가능한 콘텐츠를 디스플레이하는 메뉴(410)가 디스플레이될 수 있다. 메뉴(410)가 3 개의 콘텐츠 옵션을 제공하는 것으로 도시되어 있지만, 다양한 콘텐츠 중 임의의 것이 위에서 보다 상세히 논의된 바와 같이 선택될 수 있음을 이해할 것이다. 메뉴(410)를 통해 이용 가능한 콘텐츠 타입 중 하나의 선택을 수신하면, 선택된 콘텐츠는 콘텐츠 포인트(408)에 배치될 수 있다.
앵커 포인트(418, 420, 422 및 424)는 룸(402, 404 및 406)에 대한 앵커 포인트를 나타낼 수 있다. 3D 환경이 최종적으로 렌더링될 때 앵커 포인트가 보이지 않을 수 있지만, 사용자 인터페이스(400)는 3D 환경의 흐름을 예시하고 룸(402, 404 및 406)이 어떻게 피팅되는지에 관한 표시를 제공하기 위해 진출 앵커 포인트(418 및 422)를 따라 진입 앵커 포인트(418 및 424)를 디스플레이할 수 있다.
사용자 인터페이스(400)는 또한 기존 모델의 연결 포인트에서 새로운 모델의 추가를 제공하는 하나 이상의 사용자 인터페이스 엘리먼트를 포함할 수 있다. 예를 들어, 사용자 인터페이스 엘리먼트(412)는 새로운 방을 추가하기 위한 선택을 수신하도록 동작 가능할 수 있다. 사용자 인터페이스 엘리먼트(412)에서 선택을 수신하면, 룸 메뉴(414)가 디스플레이될 수 있다. 룸 메뉴(414)는 연결 포인트에서 연결될 수 있는 하나 이상의 다양한 타입의 룸을 디스플레이할 수 있다. 룸 메뉴(414)에서 룸의 선택을 수신하면, 새로운 룸이 3D 환경의 디스플레이된 2D 표현에 추가될 수 있다. 예시적인 룸 및 모델이 본원에서 논의되지만, 본 개시 내용의 사상을 벗어나지 않고 다양한 모델 및/또는 룸 타입의 임의의 것이 사용될 수 있음을 이해할 것이다.
도 5는 3 차원 환경 내의 예시적인 뷰(500)를 도시한다. 일 예에서, 뷰(500)는 본원에 개시된 양태에 따라 환경 데이터 파일에 기초하여 생성된 뷰일 수 있다. 뷰(500)는 3D 환경의 모델(예를 들어, 도 4의 룸(402)) 내의 사용자의 관점일 수 있어서, 3D 환경의 저자는 콘텐츠(502 및 504)가 모델의 콘텐츠 포인트에서 사용자에게 제시되어야 한다는 것을 특정할 수 있다.
도 6 내지 도 9 및 그 관련 설명은 본 개시 내용의 양태가 실시될 수 있는 다양한 동작 환경에 대한 설명을 제공한다. 그러나, 도 6 내지 도 9와 관련하여 도시되고 설명된 디바이스 및 시스템은 예시 및 설명의 목적을 위한 것이며, 본원에 기술된 본 개시 내용의 양태를 실시하는 데 이용될 수 있는 방대한 양의 컴퓨팅 디바이스 구성을 제한하는 것은 아니다.
도 6은 본 개시 내용의 양태를 실시할 수 있는 컴퓨팅 디바이스(600)의 예시적인 물리적 컴포넌트(예를 들어, 하드웨어)를 나타내는 블록도이다. 아래에 설명된 컴퓨팅 디바이스 컴포넌트는 컴퓨팅 디바이스(102 및 104) 및 3D 환경 서비스(106)를 포함하는 전술한 컴퓨팅 디바이스에 적합할 수 있다. 기본적인 구성에서, 컴퓨팅 디바이스(600)는 적어도 하나의 프로세싱 유닛(602) 및 시스템 메모리(604)를 포함할 수 있다. 컴퓨팅 디바이스의 구성 및 타입에 따라, 시스템 메모리(604)는 휘발성 저장 디바이스(예를 들어, 랜덤 액세스 메모리), 비 휘발성 저장 디바이스(예를 들어, 판독 전용 메모리), 플래시 메모리, 또는 그러한 메모리의 임의의 조합을 포함할 수 있지만, 이에 국한되는 것은 아니다.
시스템 메모리(604)는 운영 체제(605), 및 본원에 기술된 시스템에 의해 지원되는 하나 이상의 컴포넌트와 같이 소프트웨어 애플리케이션(620)을 실행하기에 적합한 하나 이상의 프로그램 모듈(606)을 포함할 수 있다. 예로서, 시스템 메모리(604)는 저작 애플리케이션(624) 및 환경 데이터 저장(626)을 저장할 수 있다. 운영 체제(605)는, 예를 들어, 컴퓨팅 디바이스(600)의 동작을 제어하는 데 적합할 수 있다.
또한, 본 개시 내용의 실시예는 그래픽 라이브러리, 다른 운영 체제 또는 임의의 다른 애플리케이션 프로그램과 함께 실시될 수 있으며, 임의의 특정 애플리케이션 또는 시스템에 국한되는 것은 아니다. 이러한 기본 구성은 파선(608) 내의 컴포넌트에 의해 도 6에 도시된다. 컴퓨팅 디바이스(600)는 추가적인 특징 또는 기능성을 가질 수 있다. 예를 들어, 컴퓨팅 디바이스(600)는 또한 추가의 데이터 저장 디바이스(착탈식 및/또는 비 착탈식), 가령, 예를 들어, 자기 디스크, 광학 디스크 또는 테이프를 포함할 수 있다. 이러한 추가의 저장 디바이스는 착탈식 저장 디바이스(609) 및 비 착탈식 저장 디바이스(610)에 의해 도 6에 도시된다.
전술한 바와 같이, 다수의 프로그램 모듈 및 데이터 파일은 시스템 메모리(604)에 저장될 수 있다. 프로세싱 유닛(602) 상에서 실행되는 동안, 프로그램 모듈(606)(예를 들어, 애플리케이션(620))은 본원에 기술된 바와 같은 양태를 포함하지만 이에 제한되지 않는 프로세스를 수행할 수 있다. 본 개시 내용의 양태에 따라 사용될 수 있는 다른 프로그램 모듈은 전자 메일 및 연락처 애플리케이션, 워드 프로세싱 애플리케이션, 스프레드 시트 애플리케이션, 데이터베이스 애플리케이션, 슬라이드 프리젠테이션 애플리케이션, 드로잉 또는 컴퓨터 지원 애플리케이션 프로그램 등을 포함할 수 있다.
또한, 본 개시 내용의 실시예는 이산 전자 엘리먼트를 포함한 전자 회로로, 로직 게이트를 포함한 패키징된 또는 집적된 전자 칩으로, 마이크로프로세서를 이용하는 회로로, 또는 전자 엘리먼트 또는 마이크로프로세서를 포함하는 단일 칩 상에서 실시될 수 있다. 예를 들어, 본 개시 내용의 실시예는 도 6에 도시된 각각의 또는 다수의 컴포넌트가 단일 집적 회로 상에 집적될 수 있는 시스템 온 칩(system-on-a-chip)(SOC)을 통해 실시될 수 있다. 이러한 SOC 디바이스는 하나 이상의 프로세싱 유닛, 그래픽 유닛, 통신 유닛, 시스템 가상화 유닛 및 다양한 애플리케이션 기능성을 포함할 수 있으며, 이들의 모두는 단일 집적 회로로서 칩 기판 상에 통합(또는 "burned")된다. SOC를 통해 동작할 때, 프로토콜을 스위칭하기 위한 클라이언트의 기능과 관련하여 본원에 기술된 기능성은 단일 집적 회로 (칩) 상의 컴퓨팅 디바이스(600)의 다른 컴포넌트와 통합된 애플리케이션 특정 로직(application-specific logic)을 통해 동작될 수 있다. 본 개시 내용의 실시예는 또한 로직 동작, 가령, 예를 들어, 기계적, 광학적, 유체 및 양자 기술을 포함하지만 이에 국한되지 않는, AND, OR, 및 NOT을 수행할 수 있는 다른 기술을 사용하여 실시될 수 있다. 또한, 본 개시 내용의 실시예는 범용 컴퓨터 내에서 또는 임의의 다른 회로 또는 시스템에서 실시될 수 있다.
컴퓨팅 디바이스(600)는 또한 키보드, 마우스, 펜, 사운드 또는 음성 입력 디바이스, 터치 또는 스와이프 입력 디바이스 등과 같은 하나 이상의 입력 디바이스(들)(612)를 가질 수 있다. 디스플레이, 스피커, 프린터 등과 같은 출력 디바이스(들)(614)가 또한 포함될 수 있다. 전술한 디바이스는 예시이며 다른 것도 사용될 수 있다. 컴퓨팅 디바이스(600)는 다른 컴퓨팅 디바이스(650)와의 통신을 허용하는 하나 이상의 통신 접속물(616)을 포함할 수 있다. 적합한 통신 접속물(616)의 예는 RF 송신기, 수신기, 및/또는 송수신기 회로; 범용 직렬 버스(USB), 병렬 포트, 및/또는 직렬 포트를 포함하지만, 이에 국한되는 것은 아니다.
본원에서 사용되는 컴퓨터 판독 가능 매체라는 용어는 컴퓨터 저장 매체를 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독 가능 명령어, 데이터 구조 또는 프로그램 모듈과 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현되는 휘발성 및 비 휘발성, 착탈식 및 비 착탈식 매체를 포함할 수 있다. 시스템 메모리(604), 착탈식 저장 디바이스(609), 및 비 착탈식 저장 디바이스(610)는 모두 컴퓨터 저장 매체의 예이다(예를 들어, 메모리 저장 디바이스이다). 컴퓨터 저장 매체는 RAM, ROM, 전기적 소거 가능 판독 전용 메모리(EEPROM), 플래시 메모리 또는 다른 메모리 기술, CD-ROM, DVD 또는 다른 광학 저장 디바이스, 자기 카세트, 자기 테이프, 자기 디스크 저장 디바이스 또는 다른 자기 저장 디바이스, 또는 임의의 다른 제품을 포함할 수 있으며, 이들은 정보를 저장하는 데 사용될 수 있고 컴퓨팅 디바이스(600)에 의해 액세스될 수 있다. 임의의 그러한 컴퓨터 저장 매체는 컴퓨팅 디바이스(600)의 일부일 수 있다. 컴퓨터 저장 매체는 반송파 또는 다른 전파되거나 변조된 데이터 신호를 포함하지는 않는다.
통신 매체는 컴퓨터 판독 가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파 또는 다른 전송 메커니즘과 같은 변조된 데이터 신호에서의 다른 데이터에 의해 구현될 수 있으며, 임의의 정보 전달 매체를 포함한다. "변조된 데이터 신호"라는 용어는 신호 내의 정보를 인코딩하는 것과 같은 방식으로 설정되거나 변경된 하나 이상의 특성을 갖는 신호를 나타낼 수 있다. 제한이 아닌 예로서, 통신 매체는 유선 네트워크 또는 직접 유선 접속과 같은 유선 매체, 및 음향, 무선 주파수(RF), 적외선 및 다른 무선 매체 매체와 같은 무선 매체를 포함할 수 있다.
도 7a 및 도 7b는 본 개시 내용의 실시예를 실시할 수 있는, 모바일 전화기, 스마트폰, 웨어러블 컴퓨터(가령, 스마트 시계), 태블릿 컴퓨터, 랩탑 컴퓨터 등과 같은 모바일 컴퓨팅 디바이스(700)를 도시한다. 일부 양태에서, 클라이언트는 모바일 컴퓨팅 디바이스일 수 있다. 도 7a를 참조하면, 본 양태를 구현하기 위한 모바일 컴퓨팅 디바이스(700)의 일 양태가 도시되어 있다. 기본 구성에서, 모바일 컴퓨팅 디바이스(700)는 입력 엘리먼트와 출력 엘리먼트를 모두 갖는 핸드헬드 컴퓨터이다. 모바일 컴퓨팅 디바이스(700)는 일반적으로, 사용자가 모바일 컴퓨팅 디바이스(700)에 정보를 입력할 수 있게 하는 하나 이상의 입력 버튼(710) 및 디스플레이(705)를 포함한다. 모바일 컴퓨팅 디바이스(700)의 디스플레이(705)는 또한 입력 디바이스(예를 들어, 터치 스크린 디스플레이)로서 기능할 수 있다.
포함되는 경우, 선택적인 측면 입력 엘리먼트(715)는 추가의 사용자 입력을 가능하게 한다. 측면 입력 엘리먼트(715)는 회전식 스위치, 버튼, 또는 임의의 다른 타입의 수동 입력 엘리먼트일 수 있다. 대안적인 양태에서, 모바일 컴퓨팅 디바이스(700)는 더 많거나 적은 입력 엘리먼트를 포함할 수 있다. 예를 들어, 일부 실시예에서 디스플레이(705)는 터치 스크린이 아닐 수도 있다.
또 다른 대안적인 실시예에서, 모바일 컴퓨팅 디바이스(700)는 셀룰러폰과 같은 휴대용 전화기 시스템이다. 모바일 컴퓨팅 디바이스(700)는 선택적 키패드(735)를 또한 포함할 수 있다. 선택적 키패드(735)는 물리적인 키패드일 수 있거나, 또는 터치 스크린 디스플레이 상에 생성된 "소프트" 키패드일 수 있다.
다양한 실시예에서, 출력 엘리먼트는 그래픽 사용자 인터페이스(GUI), 시각적 표시기(720)(예를 들어, 발광 다이오드), 및/또는 오디오 변환기(725)(예를 들어, 스피커)를 나타내기 위한 디스플레이(705)를 포함한다. 일부 양태에서, 모바일 컴퓨팅 디바이스(700)는 촉각 피드백을 사용자에게 제공하기 위한 진동 변환기를 포함한다. 또 다른 양태에서, 모바일 컴퓨팅 디바이스(700)는 오디오 입력(예를 들어, 마이크로폰 잭), 오디오 출력(예를 들어, 헤드폰 잭) 및 비디오 출력(예를 들어, HDMI 포트)과 같은 입력 및/또는 출력 포트를 포함하여, 외부 디바이스와 신호를 송수신한다.
도 7b는 모바일 컴퓨팅 디바이스의 일 양태의 아키텍처를 나타내는 블록도이다. 즉, 모바일 컴퓨팅 디바이스(700)는 일부 양태를 구현하기 위한 시스템(예를 들어, 아키텍처)(702)을 포함할 수 있다. 일 예에서, 시스템(702)은 하나 이상의 애플리케이션(예를 들어, 브라우저, 전자 메일, 일정, 연락처 관리자, 메시징 클라이언트, 게임, 및 미디어 클라이언트/플레이어)을 실행할 수 있는 "스마트폰"으로서 구현된다. 일부 양태에서, 시스템(702)은 통합된 개인 휴대 정보 단말기(PDA) 및 무선 전화기와 같은 컴퓨팅 디바이스로서 통합된다.
하나 이상의 애플리케이션 프로그램(766)은 메모리(762)에 로딩되어 운영 체제(764) 상에서 또는 이와 관련하여 실행될 수 있다. 애플리케이션 프로그램의 예는 전화기 다이얼러 프로그램, 전자 메일 프로그램, 개인 정보 관리(personal information management)(PEVI) 프로그램, 워드 프로세싱 프로그램, 스프레드 시트 프로그램, 인터넷 브라우저 프로그램, 메시징 프로그램 등을 포함한다. 시스템(702)은 또한 메모리(762) 내에 비 휘발성 저장 영역(768)을 포함한다. 비 휘발성 저장 영역(768)은 시스템(702)의 전원이 다운되는 경우에 상실되어서는 안되는 영구 정보를 저장하는 데 사용될 수 있다. 애플리케이션 프로그램(766)은 전자 메일 애플리케이션에 의해 사용되는 전자 메일 또는 다른 메시지 등의 정보를 비 휘발성 저장 영역(768)에서 사용 및 저장할 수 있다. 동기화 애플리케이션(도시되지 않음)은 또한 시스템(702) 상에 상주하며, 호스트 컴퓨터 상에 상주하는 상응하는 동기화 애플리케이션과 상호 작용하여 비 휘발성 저장 영역(768)에 저장된 정보가 호스트 컴퓨터에 저장된 대응 정보와 동기화되어 유지되도록 프로그래밍된다. 이해되는 바와 같이, 다른 애플리케이션이 메모리(762)에 로딩되어 본원에 기술된 모바일 컴퓨팅 디바이스(700)(예를 들어, 검색 엔진, 추출기 모듈, 관련성 순위 모듈, 답변 스코어링 모듈 등) 상에서 실행될 수 있다.
시스템(702)은 하나 이상의 배터리로서 구현될 수 있는 전원(770)을 갖는다. 전원(770)은 배터리를 보충하거나 재충전하는 AC 어댑터 또는 파워드 도킹 크래들(powered docking cradle)과 같은 외부 전원을 추가로 포함할 수 있다.
시스템(702)은 또한 무선 주파수 통신을 송신 및 수신하는 기능을 수행하는 무선 인터페이스 계층(772)을 포함할 수 있다. 무선 인터페이스 계층(772)은 통신 캐리어 또는 서비스 제공자를 통해, 시스템(702)과 "외부 세계" 사이의 무선 접속을 가능하게 한다. 무선 인터페이스 계층(772)으로의 또는 무선 인터페이스 계층(272)으로부터의 전송은 운영 체제(OS)(764)의 제어 하에 수행된다. 다시 말하면, 무선 인터페이스 계층(772)에 의해 수신되는 통신은 운영 체제(764)를 통해 애플리케이션 프로그램(766)에 전파될 수 있으며, 그 반대도 마찬가지이다.
시각적 표시기(720)는 시각적 통지를 제공하는 데 사용될 수 있고, 및/또는 오디오 인터페이스(774)는 오디오 변환기(225)를 통해 가청 통지를 생성하기 위해 사용될 수 있다. 도시된 실시예에서, 시각적 표시기(720)는 발광 다이오드(LED)이고 오디오 변환기(725)는 스피커이다. 이들 디바이스는 전원(770)에 직접 연결될 수 있어서, 프로세서(760) 및 다른 컴포넌트가 배터리 전력을 보존하기 위해 셧다운될 지라도, 활성화될 경우, 통지 메커니즘에 의해 지시된 지속 기간 동안 온 상태를 유지하게 된다. LED는 디바이스의 전원 온 상태를 나타내기 위해 사용자가 조치를 취할 때까지 무기한으로 온 상태를 유지하도록 프로그래밍될 수 있다. 오디오 인터페이스(774)는 사용자에게 가청 신호를 제공하고 사용자로부터 가청 신호를 수신하는 데 사용된다. 예를 들어, 오디오 변환기(725)에 연결되는 것에 부가하여, 오디오 인터페이스(774)는 또한 마이크로폰에 연결되어 가청 입력을 수신함으로써, 가령, 전화 대화를 가능하게 할 수 있다. 본 개시 내용의 실시예에 따르면, 마이크로폰은 또한 오디오 센서로서의 역할을 하여, 후술되는 바와 같이, 통지의 제어를 가능하게 할 수 있다. 시스템(702)은 스틸 이미지, 비디오 스트림 등을 레코딩하는 온보드 카메라(730)의 동작을 가능하게 하는 비디오 인터페이스(776)를 추가로 포함할 수 있다.
시스템(702)을 구현하는 모바일 컴퓨팅 디바이스(700)는 추가적인 특징 또는 기능성을 가질 수 있다. 예를 들어, 모바일 컴퓨팅 디바이스(700)는 또한 추가의 데이터 저장 디바이스(착탈식 및/또는 비 착탈식), 가령, 자기 디스크, 광학 디스크 또는 테이프를 포함할 수 있다. 이러한 추가의 데이터 저장 디바이스는 도 7b에서 비 휘발성 저장 영역(768)에 의해 도시된다.
모바일 컴퓨팅 디바이스(700)에 의해 생성되거나 캡처되고 시스템(702)을 통해 저장되는 데이터/정보는 전술한 바와 같이 모바일 컴퓨팅 디바이스(700) 상에 로컬로 저장될 수 있거나, 또는 그 데이터는 임의의 개수의 저장 매체 상에 저장될 수 있으며, 이 저장 매체는 모바일 컴퓨팅 디바이스에 의해, 무선 인터페이스 계층(772)을 통해 또는 모바일 컴퓨팅 디바이스(700)와 모바일 컴퓨팅 디바이스(700)와 관련된 별도의 컴퓨팅 디바이스, 예를 들어, 인터넷과 같은 분산 컴퓨팅 네트워크 내의 서버 컴퓨터 간의 유선 접속을 통해 액세스될 수 있다. 이해될 수 있는 바와 같이, 이러한 데이터/정보는 무선 인터페이스 계층(772)을 통한 모바일 컴퓨팅 디바이스(700)를 통해 또는 분산 컴퓨팅 네트워크를 통해 액세스될 수 있다. 유사하게, 이러한 데이터/정보는 전자 메일 및 협업 데이터/정보 공유 시스템을 포함하는 널리 주지된 데이터/정보 전달 및 저장 수단에 따른 저장 및 사용을 위해 컴퓨팅 디바이스 간에 용이하게 전송될 수 있다.
도 8은 전술한 바와 같이 퍼스널 컴퓨터(804), 태블릿 컴퓨팅 디바이스(806) 또는 모바일 컴퓨팅 디바이스(808)와 같은 원격 소스로부터 컴퓨팅 시스템에서 수신된 데이터를 처리하기 위한 시스템의 아키텍처의 일 양태를 도시한다. 서버 디바이스(802)에 디스플레이되는 콘텐츠는 다른 통신 채널 또는 다른 저장 타입에 저장될 수 있다. 예를 들어, 디렉토리 서비스(822), 웹 포털(824), 메일박스 서비스(826), 인스턴트 메시징 저장소(828) 또는 소셜 네트워킹 사이트(830)를 사용하여 다양한 문서가 저장될 수 있다.
환경 뷰어 애플리케이션(820)은 서버 디바이스(802)와 통신하는 클라이언트에 의해 이용될 수 있고/있거나 3D 환경 데이터 저장소(821)는 서버 디바이스(802)에 의해 이용될 수 있다. 서버 디바이스(802)는 네트워크(815)를 통해 퍼스널 컴퓨터(804), 태블릿 컴퓨팅 디바이스(806) 및/또는 모바일 컴퓨팅 디바이스(808)(예를 들어, 스마트폰)와 같은 클라이언트 컴퓨팅 디바이스와 데이터를 주고 받을 수 있다. 예로서, 전술한 컴퓨터 시스템은 퍼스널 컴퓨터(804), 태블릿 컴퓨팅 디바이스(806) 및/또는 모바일 컴퓨팅 디바이스(808)(예를 들어, 스마트폰)로 구현될 수 있다. 컴퓨팅 디바이스의 이들 실시예 중 임의의 것은 그래픽 발신 시스템에서 전처리되거나 수신 컴퓨팅 시스템에서 후처리될 수 있도록 사용 가능한 그래픽 데이터를 수신하는 것 외에도, 저장소(816)로부터 콘텐츠를 획득할 수 있다.
도 9는 본원에 개시된 하나 이상의 양태를 실행할 수 있는 예시적인 태블릿 컴퓨팅 디바이스(900)를 도시한다. 또한, 본원에 기술된 양태 및 기능성은 분산 시스템(예를 들어, 클라우드 기반 컴퓨팅 시스템)을 통해 동작할 수 있고, 여기서 애플리케이션 기능성, 메모리, 데이터 저장 및 검색 및 다양한 처리 기능은 분산 컴퓨팅 네트워크, 가령, 인터넷 또는 인트라넷을 통해 서로로부터 원격으로 동작될 수 있다. 다양한 타입의 사용자 인터페이스 및 정보는 온보드 컴퓨팅 디바이스 디스플레이를 통해 또는 하나 이상의 컴퓨팅 디바이스와 연관된 원격 디스플레이 유닛을 통해 디스플레이될 수 있다. 예를 들어, 다양한 타입의 사용자 인터페이스 및 정보는 다양한 타입의 사용자 인터페이스 및 정보가 투영되는 벽면 상에 디스플레이되어 상호 작용될 수 있다. 본 발명의 실시예가 실시될 수 있는 다수의 컴퓨팅 시스템과의 상호 작용은 키 스트로크 엔트리, 터치 스크린 엔트리, 음성 또는 다른 오디오 엔트리, 제스처 엔트리를 포함하며, 여기서 연관된 컴퓨팅 디바이스에는 컴퓨팅 디바이스의 기능성을 제어하기 위한 사용자 제스처를 캡처 및 해독하기 위한 검출(예를 들어, 카메라) 기능성 등이 탑재된다.
전술한 개시 내용으로부터 이해될 바와 같이, 본 기술의 일 양태는 적어도 하나의 프로세서; 및 상기 적어도 하나의 프로세서에 의해 실행될 때, 시스템으로 하여금 동작의 세트를 수행하게 하는 명령어를 저장하는 메모리를 포함하는 시스템에 관한 것이다. 동작의 세트는 환경 데이터 파일을 검색하는 것 - 상기 환경 데이터 파일은 3 차원(3D) 환경에 대한 복수의 모델을 포함함 -; 상기 3D 환경에서, 상기 복수의 모델 중 제 1 모델의 제 1의 3D 표현을 생성하는 것 - 상기 제 1 모델은 진출 앵커 포인트와 연관됨 -; 상기 환경 데이터 파일이 상기 복수의 모델 중 제 2 모델이 상기 제 1 모델에 인접하고 있음을 나타내는 것으로 결정하는 것 - 상기 제 2 모델은 진입 앵커 포인트와 연관됨 -; 및 상기 제 2 모델이 상기 제 1 모델에 인접하다는 결정에 기초하여, 상기 제 2 모델의 제 2의 3D 표현을 생성하는 것을 포함하고, 상기 제 2 모델의 표현은 상기 제 2 모델과 연관된 진입 앵커 포인트가 상기 제 1 모델의 진입 포인트에 인접하게 배치되도록 상기 3D 환경 내에 배치된다. 일 예에서, 상기 제 1 모델의 제 1의 3D 표현을 생성하는 것은: 상기 환경 데이터 파일이 상기 제 1 모델의 콘텐츠 포인트와 연관된 콘텐츠 아이템을 특정한다고 결정하는 것; 및 상기 제 1의 3D 표현에서 상기 제 1 모델의 콘텐츠 포인트에서의 콘텐츠 아이템의 표현을 생성하는 것을 포함한다. 다른 예에서, 상기 콘텐츠 아이템의 표현을 생성하는 것은 상기 콘텐츠 아이템과 연관된 원격 리소스에 대한 요청을 생성하는 것을 포함한다. 추가의 예에서, 동작의 세트는 사용자 디바이스의 디스플레이 상에 상기 3D 표현을 제시하는 것을 더 포함한다. 또 다른 예에서, 상기 제 1 모델은 사용자의 관점에 대한 초기 위치를 나타내고, 상기 3D 표현을 제시하는 것은 사용자의 관점에 대한 초기 위치로부터 상기 3D 표현을 제시하는 것을 포함한다. 또 다른 예에서, 상기 환경 데이터 파일을 검색하는 것은 원격 데이터 저장소로부터 상기 환경 데이터 파일의 적어도 일부를 요청하는 것을 포함한다. 다른 예에서, 상기 제 1 모델 및 상기 제 2 모델은 유사한 테마를 갖는 모델의 세트를 포함한다.
다른 양태에서, 본 기술은 3 차원(3D) 환경을 나타내는 환경 데이터 파일을 생성하는 방법에 관한 것이다. 상기 방법은 상기 3D 환경에 대한 환경 템플릿의 사용자 선택을 수신하는 단계; 제 1 모델의 사용자 선택을 수신하는 단계 - 상기 제 1 모델은 선택된 환경 템플릿과 연관됨 -; 상기 제 1 모델의 2 차원(2D) 디스플레이를 제시하는 단계 - 상기 2D 디스플레이는 상기 제 1 모델의 하나 이상의 콘텐츠 포인트의 디스플레이를 포함함 -; 상기 선택된 콘텐츠 포인트에 디스플레이하기 위한 콘텐츠를 표시하는 하나 이상의 콘텐츠 포인트로부터 콘텐츠 포인트의 사용자 선택을 수신하는 단계; 및 상기 환경 데이터 파일을 생성하는 단계를 포함하고, 상기 환경 데이터 파일은 상기 선택된 환경 템플릿, 상기 제 1 모델 및 상기 선택된 콘텐츠 포인트에 대한 정보를 포함하고, 상기 선택된 콘텐츠 포인트는 상기 표시된 콘텐츠와 연관된다. 일 예에서, 상기 방법은 상기 선택된 환경 템플릿과 연관된 하나 이상의 모델의 디스플레이를 제시하는 단계를 더 포함하며, 상기 하나 이상의 모델은 2D 표현을 사용하여 디스플레이된다. 다른 예에서, 상기 방법은 사용자의 관점에 대한 초기 위치의 선택을 수신하는 단계 - 상기 선택은 상기 제 1 모델 내에 위치됨 -; 및 상기 수신된 선택을 상기 환경 데이터 파일의 일부로서 저장하는 단계를 더 포함한다. 다른 예에서, 상기 방법은 제 2 모델의 선택을 수신하는 단계를 더 포함하고, 상기 선택은 상기 제 2 모델이 상기 제 1 모델에 인접하여 배치된다는 표시를 포함한다. 또 다른 예에서, 상기 환경 데이터 파일은 상기 제 1 모델과 연관된 식별자 및 상기 제 2 모델과 연관된 식별자를 포함한다. 또 다른 예에서, 상기 방법은 상기 생성된 환경 데이터 파일을 하나 이상의 사용자 디바이스에 의한 액세스를 위한 원격 데이터 저장소에 저장하는 단계를 더 포함한다.
다른 양태에서, 본 기술은 환경 데이터 파일을 사용하여 3 차원(3D) 환경을 생성하는 방법에 관한 것이다. 상기 방법은: 환경 데이터 파일을 검색하는 단계 - 상기 환경 데이터 파일은 3 차원(3D) 환경에 대한 복수의 모델을 포함함 -; 상기 3D 환경에서, 상기 복수의 모델 중 제 1 모델의 제 1의 3D 표현을 생성하는 단계 - 상기 제 1 모델은 진출 앵커 포인트와 연관됨 -; 상기 환경 데이터 파일이 상기 복수의 모델 중 제 2 모델이 상기 제 1 모델에 인접하고 있음을 나타내는 것으로 결정하는 단계 - 상기 제 2 모델은 진입 앵커 포인트와 연관됨 -; 및 상기 제 2 모델이 상기 제 1 모델에 인접하다는 결정에 기초하여, 상기 제 2 모델의 제 2의 3D 표현을 생성하는 단계를 포함하고, 상기 제 2 모델의 표현은 상기 제 2 모델과 연관된 진입 앵커 포인트가 상기 제 1 모델의 진입 포인트에 인접하게 배치되도록 상기 3D 환경 내에 배치된다. 일 예에서, 상기 제 1 모델의 제 1의 3D 표현을 생성하는 단계는: 상기 환경 데이터 파일이 상기 제 1 모델의 콘텐츠 포인트와 연관된 콘텐츠 아이템을 특정한다고 결정하는 단계; 및 상기 제 1의 3D 표현에서 상기 제 1 모델의 콘텐츠 포인트에서의 콘텐츠 아이템의 표현을 생성하는 단계를 포함한다. 다른 예에서, 상기 콘텐츠 아이템의 표현을 생성하는 단계는 상기 콘텐츠 아이템과 연관된 원격 리소스에 대한 요청을 생성하는 단계를 포함한다. 추가의 예에서, 상기 방법은 사용자 디바이스의 디스플레이 상에 상기 3D 표현을 제시하는 단계를 더 포함한다. 또 다른 예에서, 상기 제 1 모델은 사용자의 관점에 대한 초기 위치를 나타내고, 상기 3D 표현을 제시하는 단계는 사용자의 관점에 대한 초기 위치로부터 상기 3D 표현을 제시하는 단계를 포함한다. 또 다른 예에서, 상기 환경 데이터 파일을 검색하는 단계는 원격 데이터 저장소로부터 상기 환경 데이터 파일의 적어도 일부를 요청하는 단계를 포함한다. 다른 예에서, 상기 제 1 모델 및 상기 제 2 모델은 유사한 테마를 갖는 모델의 세트를 포함한다.
본 개시 내용의 양태는, 예를 들어, 본 개시 내용의 양태에 따른 방법, 시스템 및 컴퓨터 프로그램 제품의 블록도 및/또는 동작 예시를 참조하여 위에서 기술된다. 블록들에 언급된 기능/행위는 임의의 흐름도에 도시된 바와 같은 순서를 벗어 나서 발생할 수 있다. 예를 들어, 연속적으로 도시된 두 개의 블록은 사실상 실질적으로 동시에 실행될 수 있거나, 관련된 기능성/행위에 따라 때때로 그 블록들이 역순으로 실행될 수 있다.
본 출원에 제공된 하나 이상의 양태의 설명 및 예시는 어떠한 방식으로든 청구되는 본 개시 내용의 범위를 한정하거나 제한하려는 것이 아니다. 본 출원에 제공된 양태, 예 및 세부 사항은 소유물을 전달하고 다른 사람들이 청구된 개시 내용의 최상의 모드를 만들어 사용할 수 있도록 하는 것으로 간주된다. 청구된 개시 내용은 본 출원에서 제공되는 임의의 양태, 예 또는 상세 사항으로 제한되는 것으로 해석되어서는 안된다. 조합하여 또는 개별적으로 도시 및 설명되는지에 관계없이, 다양한 특징(구조 및 방법 모두의 특징)은 특정 특징들의 세트를 갖는 실시예를 생성하도록 선택적으로 포함되거나 생략되도록 의도된다. 본 출원의 설명 및 예시가 제공되었으며, 본 기술 분야의 기술자는, 본 출원에서 구현되는 일반적인 본 발명의 개념의 보다 넓은 양태의 사상 내에 속하며 청구된 개시 내용의 보다 넓은 범위로부터 벗어 나지 않는 변형, 수정 및 대안적인 양태를 예상할 수 있다.

Claims (15)

  1. 시스템으로서,
    적어도 하나의 프로세서; 및
    상기 적어도 하나의 프로세서에 의해 실행될 때, 상기 시스템으로 하여금 동작의 세트를 수행하게 하도록 하는 명령어를 저장하는 메모리를 포함하고,
    상기 동작의 세트는:
    환경 데이터 파일을 검색하는 것 - 상기 환경 데이터 파일은 3 차원(3D) 환경에 대한 복수의 모델을 포함함 -;
    상기 3D 환경에서, 상기 복수의 모델 중 제 1 모델의 제 1의 3D 표현을 생성하는 것 - 상기 제 1 모델은 진출 앵커 포인트와 연관됨 -;
    상기 환경 데이터 파일이 상기 복수의 모델 중 제 2 모델이 상기 제 1 모델에 인접하고 있음을 나타내는 것으로 결정하는 것 - 상기 제 2 모델은 진입 앵커 포인트와 연관됨 -; 및
    상기 제 2 모델이 상기 제 1 모델에 인접하다는 결정에 기초하여, 상기 제 2 모델의 제 2의 3D 표현을 생성하는 것을 포함하고,
    상기 제 2 모델의 표현은 상기 제 2 모델과 연관된 진입 앵커 포인트가 상기 제 1 모델의 진입 포인트에 인접하게 배치되도록 상기 3D 환경 내에 배치되는
    시스템.
  2. 제1항에 있어서,
    상기 제 1 모델의 상기 제 1의 3D 표현을 생성하는 것은:
    상기 환경 데이터 파일이 상기 제 1 모델의 콘텐츠 포인트와 연관된 콘텐츠 아이템을 특정한다고 결정하는 것; 및
    상기 제 1의 3D 표현에서 상기 제 1 모델의 콘텐츠 포인트에서의 콘텐츠 아이템의 표현을 생성하는 것을 포함하는
    시스템.
  3. 제1항에 있어서,
    상기 동작의 세트는 사용자 디바이스의 디스플레이 상에 상기 3D 표현을 제시하는 것을 더 포함하는
    시스템.
  4. 3 차원(3D) 환경을 나타내는 환경 데이터 파일을 생성하기 위한 컴퓨터로 구현되는 방법으로서,
    상기 3D 환경에 대한 환경 템플릿의 사용자 선택을 수신하는 단계;
    제 1 모델의 사용자 선택을 수신하는 단계 - 상기 제 1 모델은 선택된 환경 템플릿과 연관됨 -;
    상기 제 1 모델의 2 차원(2D) 디스플레이를 제시하는 단계 - 상기 2D 디스플레이는 상기 제 1 모델의 하나 이상의 콘텐츠 포인트의 디스플레이를 포함함 -;
    상기 선택된 콘텐츠 포인트에 디스플레이하기 위한 콘텐츠를 표시하는 하나 이상의 콘텐츠 포인트로부터 콘텐츠 포인트의 사용자 선택을 수신하는 단계; 및
    상기 환경 데이터 파일을 생성하는 단계를 포함하고,
    상기 환경 데이터 파일은 상기 선택된 환경 템플릿, 상기 제 1 모델 및 상기 선택된 콘텐츠 포인트에 대한 정보를 포함하고, 상기 선택된 콘텐츠 포인트는 상기 표시된 콘텐츠와 연관되는
    방법.
  5. 제4항에 있어서,
    상기 방법은 상기 선택된 환경 템플릿과 연관된 하나 이상의 모델의 디스플레이를 제시하는 단계를 더 포함하며, 상기 하나 이상의 모델은 2D 표현을 사용하여 디스플레이되는
    방법.
  6. 제4항에 있어서,
    상기 방법은 제 2 모델의 선택을 수신하는 단계를 더 포함하고, 상기 선택은 상기 제 2 모델이 상기 제 1 모델에 인접하여 배치된다는 표시를 포함하는
    방법.
  7. 환경 데이터 파일을 사용하여 3 차원(3D) 환경을 생성하기 위한 컴퓨터로 구현되는 방법으로서,
    환경 데이터 파일을 검색하는 단계 - 상기 환경 데이터 파일은 3 차원(3D) 환경에 대한 복수의 모델을 포함함 -;
    상기 3D 환경에서, 상기 복수의 모델 중 제 1 모델의 제 1의 3D 표현을 생성하는 단계 - 상기 제 1 모델은 진출 앵커 포인트와 연관됨 -;
    상기 환경 데이터 파일이 상기 복수의 모델 중 제 2 모델이 상기 제 1 모델에 인접하고 있음을 나타내는 것으로 결정하는 단계 - 상기 제 2 모델은 진입 앵커 포인트와 연관됨 -; 및
    상기 제 2 모델이 상기 제 1 모델에 인접하다는 결정에 기초하여, 상기 제 2 모델의 제 2의 3D 표현을 생성하는 단계를 포함하고,
    상기 제 2 모델의 표현은 상기 제 2 모델과 연관된 진입 앵커 포인트가 상기 제 1 모델의 진입 포인트에 인접하게 배치되도록 상기 3D 환경 내에 배치되는
    방법.
  8. 제7항에 있어서,
    상기 방법은 사용자 디바이스의 디스플레이 상에 상기 3D 표현을 제시하는 단계를 더 포함하는
    방법.
  9. 제8항에 있어서,
    상기 제 1 모델은 사용자의 관점에 대한 초기 위치를 나타내고, 상기 3D 표현을 제시하는 단계는 사용자의 관점에 대한 초기 위치로부터 상기 3D 표현을 제시하는 단계를 포함하는
    방법.
  10. 제7항에 있어서,
    상기 환경 데이터 파일을 검색하는 단계는 원격 데이터 저장소로부터 상기 환경 데이터 파일의 적어도 일부를 요청하는 단계를 포함하는
    방법.
  11. 제3항에 있어서,
    상기 제 1 모델은 사용자의 관점에 대한 초기 위치를 나타내고, 상기 3D 표현을 제시하는 단계는 사용자의 관점에 대한 초기 위치로부터 상기 3D 표현을 제시하는 단계를 포함하는
    방법.
  12. 제1항에 있어서,
    상기 제 1 모델 및 상기 제 2 모델은 유사한 테마를 갖는 모델의 세트를 구성하는
    시스템.
  13. 제4항에 있어서,
    상기 방법은
    사용자의 관점에 대한 초기 위치의 선택을 수신하는 단계 - 상기 선택은 상기 제 1 모델 내에 위치됨 -; 및
    상기 수신된 선택을 상기 환경 데이터 파일의 일부로서 저장하는 단계를 더 포함하는
    방법.
  14. 제6항에 있어서,
    상기 환경 데이터 파일은 상기 제 1 모델과 연관된 식별자 및 상기 제 2 모델과 연관된 식별자를 포함하는
    방법.
  15. 제7항에 있어서,
    상기 제 1 모델의 상기 제 1의 3D 표현을 생성하는 단계는:
    상기 환경 데이터 파일이 상기 제 1 모델의 콘텐츠 포인트와 연관된 콘텐츠 아이템을 특정한다고 결정하는 단계; 및
    상기 제 1의 3D 표현에서 상기 제 1 모델의 콘텐츠 포인트에서의 콘텐츠 아이템의 표현을 생성하는 단계를 포함하는
    방법.
KR1020197031667A 2017-04-25 2018-04-11 3 차원 환경 저작 및 생성 KR20190139902A (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201762489904P 2017-04-25 2017-04-25
US62/489,904 2017-04-25
US15/636,125 2017-06-28
US15/636,125 US10388077B2 (en) 2017-04-25 2017-06-28 Three-dimensional environment authoring and generation
PCT/US2018/026994 WO2018200199A1 (en) 2017-04-25 2018-04-11 Three-dimensional environment authoring and generation

Publications (1)

Publication Number Publication Date
KR20190139902A true KR20190139902A (ko) 2019-12-18

Family

ID=63854033

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020197031667A KR20190139902A (ko) 2017-04-25 2018-04-11 3 차원 환경 저작 및 생성
KR1020197031706A KR20190141162A (ko) 2017-04-25 2018-04-11 컨테이너 기반 가상 카메라 회전

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020197031706A KR20190141162A (ko) 2017-04-25 2018-04-11 컨테이너 기반 가상 카메라 회전

Country Status (18)

Country Link
US (5) US10388077B2 (ko)
EP (3) EP3616043A1 (ko)
JP (2) JP7189152B2 (ko)
KR (2) KR20190139902A (ko)
CN (4) CN110573224B (ko)
AU (2) AU2018260575B2 (ko)
BR (1) BR112019022129A2 (ko)
CA (2) CA3056953A1 (ko)
CL (2) CL2019002951A1 (ko)
CO (2) CO2019011870A2 (ko)
IL (2) IL270112B (ko)
MX (2) MX2019012626A (ko)
MY (1) MY202365A (ko)
PH (2) PH12019550188A1 (ko)
RU (2) RU2019137605A (ko)
SG (2) SG11201909454QA (ko)
WO (3) WO2018200201A1 (ko)
ZA (2) ZA201905870B (ko)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109196447B (zh) * 2016-03-31 2022-06-17 奇跃公司 使用姿势和多dof控制器与3d虚拟对象的交互
US10388077B2 (en) 2017-04-25 2019-08-20 Microsoft Technology Licensing, Llc Three-dimensional environment authoring and generation
EP3486749B1 (en) * 2017-11-20 2022-05-11 Nokia Technologies Oy Provision of virtual reality content
US10225360B1 (en) * 2018-01-24 2019-03-05 Veeva Systems Inc. System and method for distributing AR content
EP3769242A4 (en) * 2018-03-22 2021-11-10 Hewlett-Packard Development Company, L.P. DIGITAL MARKUP IN A THREE-DIMENSIONAL ENVIRONMENT
US10916066B2 (en) * 2018-04-20 2021-02-09 Edx Technologies, Inc. Methods of virtual model modification
US20190391647A1 (en) * 2018-06-25 2019-12-26 Immersion Corporation Real-world haptic interactions for a virtual reality user
JP6745301B2 (ja) * 2018-07-25 2020-08-26 株式会社バーチャルキャスト コンテンツ配信システム、コンテンツ配信方法、コンピュータプログラム
WO2020186478A1 (en) * 2019-03-20 2020-09-24 Beijing Xiaomi Mobile Software Co., Ltd. Method and device for transmitting viewpoint switching capabilities in a vr360 application
CN110010019B (zh) * 2019-04-15 2021-07-06 珠海格力智能装备有限公司 一种装配led屏的控制方法及装置
WO2020213088A1 (ja) * 2019-04-17 2020-10-22 楽天株式会社 表示制御装置、表示制御方法、プログラム、ならびに、非一時的なコンピュータ読取可能な情報記録媒体
US11039061B2 (en) * 2019-05-15 2021-06-15 Microsoft Technology Licensing, Llc Content assistance in a three-dimensional environment
US11164395B2 (en) * 2019-05-15 2021-11-02 Microsoft Technology Licensing, Llc Structure switching in a three-dimensional environment
US11087560B2 (en) 2019-05-15 2021-08-10 Microsoft Technology Licensing, Llc Normalization of objects for a 3D environment within an authoring application
US11030822B2 (en) 2019-05-15 2021-06-08 Microsoft Technology Licensing, Llc Content indicators in a 3D environment authoring application
US11287947B2 (en) 2019-05-15 2022-03-29 Microsoft Technology Licensing, Llc Contextual input in a three-dimensional environment
US11048376B2 (en) 2019-05-15 2021-06-29 Microsoft Technology Licensing, Llc Text editing system for 3D environment
US11010984B2 (en) * 2019-06-05 2021-05-18 Sagan Works, Inc. Three-dimensional conversion of a digital file spatially positioned in a three-dimensional virtual environment
CN114787874A (zh) * 2019-12-19 2022-07-22 索尼集团公司 信息处理装置、信息处理方法和记录介质
KR20220046356A (ko) * 2020-10-07 2022-04-14 삼성전자주식회사 이동 통신 시스템에서 컨텐츠를 렌더링하는 방법 및 장치
US11847746B2 (en) * 2020-12-03 2023-12-19 Electronics And Telecommunications Research Institute Server and method for generating best view spots

Family Cites Families (90)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5511157A (en) 1993-12-13 1996-04-23 International Business Machines Corporation Connection of sliders to 3D objects to allow easy user manipulation and viewing of objects
JPH09282483A (ja) 1996-04-19 1997-10-31 Nec Corp 映像生成装置
CN1168057C (zh) 1996-08-14 2004-09-22 挪拉赫梅特·挪利斯拉莫维奇·拉都包夫 追踪并显示使用者在空间的位置与取向的方法,向使用者展示虚拟环境的方法以及实现这些方法的系统
US6050822A (en) 1997-10-01 2000-04-18 The United States Of America As Represented By The Secretary Of The Army Electromagnetic locomotion platform for translation and total immersion of humans into virtual environments
JP3123501B2 (ja) 1998-03-16 2001-01-15 日本電気株式会社 空間視点制御装置
JP3341734B2 (ja) 1999-09-13 2002-11-05 凸版印刷株式会社 映像表示装置
US7043695B2 (en) 2000-09-19 2006-05-09 Technion Research & Development Foundation Ltd. Object positioning and display in virtual environments
JP4497690B2 (ja) 2000-09-20 2010-07-07 株式会社バンダイナムコゲームス ゲームシステム及び情報記憶媒体
US6646643B2 (en) 2001-01-05 2003-11-11 The United States Of America As Represented By The Secretary Of The Navy User control of simulated locomotion
US20020158873A1 (en) 2001-01-26 2002-10-31 Todd Williamson Real-time virtual viewpoint in simulated reality environment
JP3701614B2 (ja) 2001-03-09 2005-10-05 株式会社ソニー・コンピュータエンタテインメント 仮想空間制御プログラム、仮想空間制御プログラムを記録した記録媒体、プログラム実行装置、仮想空間制御方法
CA2347290C (en) 2001-05-09 2006-10-17 Free Radical Design Limited Methods and apparatus for constructing virtual environments
US7107549B2 (en) 2001-05-11 2006-09-12 3Dna Corp. Method and system for creating and distributing collaborative multi-user three-dimensional websites for a computer system (3D Net Architecture)
US7269632B2 (en) 2001-06-05 2007-09-11 Xdyne, Inc. Networked computer system for communicating and operating in a virtual reality environment
US20030146973A1 (en) 2001-11-09 2003-08-07 Swift David C 3D stereoscopic enabling methods for a monoscopic application to support 3D stereoscopic imaging
US7117450B1 (en) 2002-03-15 2006-10-03 Apple Computer, Inc. Method and apparatus for determining font attributes
EP1565888A2 (en) 2002-11-29 2005-08-24 Bracco Imaging S.p.A. System and method for displaying and comparing 3d models
JP4122983B2 (ja) 2003-01-17 2008-07-23 株式会社三洋物産 遊技機
US7570261B1 (en) * 2003-03-06 2009-08-04 Xdyne, Inc. Apparatus and method for creating a virtual three-dimensional environment, and method of generating revenue therefrom
US6990637B2 (en) 2003-10-23 2006-01-24 Microsoft Corporation Graphical user interface for 3-dimensional view of a data collection based on an attribute of the data
DE102004017730B4 (de) 2004-04-10 2006-05-24 Christian-Albrechts-Universität Zu Kiel Verfahren zur Rotationskompensation sphärischer Bilder
US8585476B2 (en) 2004-11-16 2013-11-19 Jeffrey D Mullen Location-based games and augmented reality systems
WO2006135756A1 (en) * 2005-06-09 2006-12-21 Intepoint, Llc Multi-infrastructure modeling system
US8473263B2 (en) 2005-06-09 2013-06-25 William J. Tolone Multi-infrastructure modeling and simulation system
WO2007044301A2 (en) 2005-10-04 2007-04-19 Intersense, Inc. Tracking objects with markers
CN100421119C (zh) 2006-07-11 2008-09-24 北京金山软件有限公司 一种游戏中的地图绘制方法
US8601386B2 (en) 2007-04-20 2013-12-03 Ingenio Llc Methods and systems to facilitate real time communications in virtual reality
US8584025B2 (en) 2008-05-02 2013-11-12 International Business Machines Corporation Virtual world teleportation
US8737721B2 (en) 2008-05-07 2014-05-27 Microsoft Corporation Procedural authoring
US20100045701A1 (en) 2008-08-22 2010-02-25 Cybernet Systems Corporation Automatic mapping of augmented reality fiducials
US8493408B2 (en) 2008-11-19 2013-07-23 Apple Inc. Techniques for manipulating panoramas
US9067097B2 (en) 2009-04-10 2015-06-30 Sovoz, Inc. Virtual locomotion controller apparatus and methods
CN101930623B (zh) * 2009-06-26 2012-12-12 比亚迪股份有限公司 一种三维道路模型化方法及装置
EP2382599B1 (en) 2009-07-29 2012-12-12 Metaio GmbH Method for determining the pose of a camera with respect to at least one real object
US20110270135A1 (en) 2009-11-30 2011-11-03 Christopher John Dooley Augmented reality for testing and training of human performance
EP2381423A1 (en) 2010-03-26 2011-10-26 Alcatel Lucent Method for transforming web from 2d into 3d
US20120233555A1 (en) 2010-11-08 2012-09-13 Eyelead Sa Real-time multi-user collaborative editing in 3d authoring system
US20120143681A1 (en) * 2010-12-02 2012-06-07 Microsoft Corporation Room-based computing environments
US9407904B2 (en) 2013-05-01 2016-08-02 Legend3D, Inc. Method for creating 3D virtual reality from 2D images
KR101971948B1 (ko) 2011-07-28 2019-04-24 삼성전자주식회사 평면 특성 기반 마커리스 증강 현실 시스템 및 그 동작 방법
WO2013019961A2 (en) 2011-08-02 2013-02-07 Design Play Technologies Inc. Real-time collaborative design platform
US10019962B2 (en) 2011-08-17 2018-07-10 Microsoft Technology Licensing, Llc Context adaptive user interface for augmented reality display
US9311883B2 (en) 2011-11-11 2016-04-12 Microsoft Technology Licensing, Llc Recalibration of a flexible mixed reality device
KR102440195B1 (ko) 2011-11-23 2022-09-02 매직 립, 인코포레이티드 3차원 가상 및 증강 현실 디스플레이 시스템
US8681179B2 (en) 2011-12-20 2014-03-25 Xerox Corporation Method and system for coordinating collisions between augmented reality and real reality
US9311744B2 (en) 2012-01-09 2016-04-12 Fca Us Llc System and method for generating an outer layer representation of an object
US9210413B2 (en) 2012-05-15 2015-12-08 Imagine Mobile Augmented Reality Ltd System worn by a moving user for fully augmenting reality by anchoring virtual objects
US9429912B2 (en) 2012-08-17 2016-08-30 Microsoft Technology Licensing, Llc Mixed reality holographic object development
CA3135585C (en) 2012-10-23 2023-10-03 Roam Holdings, LLC Three-dimensional virtual environment
US9251590B2 (en) 2013-01-24 2016-02-02 Microsoft Technology Licensing, Llc Camera pose estimation for 3D reconstruction
US20140245160A1 (en) * 2013-02-22 2014-08-28 Ubiquiti Networks, Inc. Mobile application for monitoring and controlling devices
US9898866B2 (en) 2013-03-13 2018-02-20 The University Of North Carolina At Chapel Hill Low latency stabilization for head-worn displays
US9367136B2 (en) * 2013-04-12 2016-06-14 Microsoft Technology Licensing, Llc Holographic object feedback
CN105378433B (zh) * 2013-06-07 2018-01-30 诺基亚技术有限公司 用于自适应地显现基于位置的数字信息的方法和装置
US10139623B2 (en) 2013-06-18 2018-11-27 Microsoft Technology Licensing, Llc Virtual object orientation and visualization
KR102191867B1 (ko) 2013-07-10 2020-12-16 엘지전자 주식회사 복수의 유저 인터페이스 포맷을 포함하는 헤드 마운티드 디스플레이 디바이스 및 그 제어 방법
US8860818B1 (en) 2013-07-31 2014-10-14 Apple Inc. Method for dynamically calibrating rotation offset in a camera system
US9451162B2 (en) 2013-08-21 2016-09-20 Jaunt Inc. Camera array including camera modules
US20160217623A1 (en) 2013-09-30 2016-07-28 Pcms Holdings, Inc. Methods, apparatus, systems, devices, and computer program products for providing an augmented reality display and/or user interface
CN103761996B (zh) 2013-10-18 2016-03-02 中广核检测技术有限公司 基于虚拟现实技术的无损检测机器人智能检测方法
US9669300B2 (en) 2013-12-27 2017-06-06 Ballcraft, Llc Motion detection for existing portable devices
CA2843576A1 (en) 2014-02-25 2015-08-25 Evelyn J. Saurette Computer-implemented method of real estate sales
US9817375B2 (en) 2014-02-26 2017-11-14 Board Of Trustees Of The University Of Alabama Systems and methods for modeling energy consumption and creating demand response strategies using learning-based approaches
US10203762B2 (en) 2014-03-11 2019-02-12 Magic Leap, Inc. Methods and systems for creating virtual and augmented reality
US9579797B2 (en) 2014-04-10 2017-02-28 Quanser Consulting Inc. Robotic systems and methods of operating robotic systems
US9392212B1 (en) 2014-04-17 2016-07-12 Visionary Vr, Inc. System and method for presenting virtual reality content to a user
AU2015270559A1 (en) 2014-06-02 2016-11-24 Apelab Sarl A method and system for providing interactivity within a virtual environment
US9766460B2 (en) 2014-07-25 2017-09-19 Microsoft Technology Licensing, Llc Ground plane adjustment in a virtual reality environment
US10416760B2 (en) 2014-07-25 2019-09-17 Microsoft Technology Licensing, Llc Gaze-based object placement within a virtual reality environment
US9892560B2 (en) 2014-09-11 2018-02-13 Nant Holdings Ip, Llc Marker-based augmented reality authoring tools
US9911235B2 (en) 2014-11-14 2018-03-06 Qualcomm Incorporated Spatial interaction in augmented reality
KR20210099163A (ko) 2014-12-18 2021-08-11 페이스북, 인크. 가상 현실 환경에서의 내비게이션을 위한 방법, 시스템 및 장치
US9652047B2 (en) 2015-02-25 2017-05-16 Daqri, Llc Visual gestures for a head mounted device
JP6110893B2 (ja) 2015-06-12 2017-04-05 株式会社コロプラ 仮想空間位置指定方法、プログラム、プログラムを記録した記録媒体、および、装置
US9520002B1 (en) 2015-06-24 2016-12-13 Microsoft Technology Licensing, Llc Virtual place-located anchor
US20160379405A1 (en) * 2015-06-26 2016-12-29 Jim S Baca Technologies for generating computer models, devices, systems, and methods utilizing the same
WO2017024118A1 (en) 2015-08-04 2017-02-09 Google Inc. Hover behavior for gaze interactions in virtual reality
JP6346131B2 (ja) 2015-09-07 2018-06-20 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置および画像生成方法
JP5869177B1 (ja) 2015-09-16 2016-02-24 株式会社コロプラ 仮想現実空間映像表示方法、及び、プログラム
JP6361714B2 (ja) 2015-09-30 2018-07-25 キヤノンマーケティングジャパン株式会社 情報処理装置、情報処理システム、その制御方法及びプログラム
JP6298432B2 (ja) 2015-10-19 2018-03-20 株式会社コロプラ 画像生成装置、画像生成方法、及び画像生成プログラム
US10018847B2 (en) 2015-10-28 2018-07-10 Honeywell International Inc. Methods of vestibulo-ocular reflex correction in display systems
CN105912310A (zh) 2015-12-04 2016-08-31 乐视致新电子科技(天津)有限公司 基于虚拟现实应用的用户界面控件实现方法和装置
US11010972B2 (en) 2015-12-11 2021-05-18 Google Llc Context sensitive user interface activation in an augmented and/or virtual reality environment
US10419747B2 (en) 2015-12-22 2019-09-17 Google Llc System and methods for performing electronic display stabilization via retained lightfield rendering
KR20170099755A (ko) 2016-02-24 2017-09-01 주식회사 메타포트 보행 시뮬레이터용 hmd
RU168332U1 (ru) 2016-06-06 2017-01-30 Виталий Витальевич Аверьянов Устройство для воздействия на виртуальные объекты дополненной реальности
US20170372499A1 (en) * 2016-06-27 2017-12-28 Google Inc. Generating visual cues related to virtual objects in an augmented and/or virtual reality environment
US10388077B2 (en) 2017-04-25 2019-08-20 Microsoft Technology Licensing, Llc Three-dimensional environment authoring and generation
US11087560B2 (en) 2019-05-15 2021-08-10 Microsoft Technology Licensing, Llc Normalization of objects for a 3D environment within an authoring application

Also Published As

Publication number Publication date
SG11201909454QA (en) 2019-11-28
CN110573224B (zh) 2023-09-01
MX2019012626A (es) 2020-01-30
US12008725B2 (en) 2024-06-11
ZA201905873B (en) 2020-12-23
CN110573224A (zh) 2019-12-13
EP3616032A1 (en) 2020-03-04
RU2019137607A3 (ko) 2021-07-12
EP3615155A1 (en) 2020-03-04
ZA201905870B (en) 2020-11-25
JP7080902B2 (ja) 2022-06-06
US10453273B2 (en) 2019-10-22
CN110573997B (zh) 2021-12-03
US10388077B2 (en) 2019-08-20
CN110573997A (zh) 2019-12-13
CO2019011966A2 (es) 2020-01-17
US20200013236A1 (en) 2020-01-09
CO2019011870A2 (es) 2020-01-17
IL270118B1 (ko) 2023-02-01
PH12019550189A1 (en) 2020-06-29
BR112019019556A2 (pt) 2020-04-22
RU2019137607A (ru) 2021-05-25
AU2018257944B2 (en) 2022-09-29
IL270118B2 (en) 2023-06-01
SG11201909455UA (en) 2019-11-28
WO2018200199A1 (en) 2018-11-01
MY202365A (en) 2024-04-24
MX2019012624A (es) 2020-01-30
AU2018260575A1 (en) 2019-09-19
EP3616043A1 (en) 2020-03-04
CL2019002950A1 (es) 2020-03-13
US11138809B2 (en) 2021-10-05
CN110832450B (zh) 2024-04-23
JP2020518071A (ja) 2020-06-18
AU2018257944A1 (en) 2019-09-19
RU2019137605A (ru) 2021-05-25
IL270118A (ko) 2019-12-31
WO2018200200A1 (en) 2018-11-01
US20180308274A1 (en) 2018-10-25
BR112019022129A2 (pt) 2020-05-05
US20180308289A1 (en) 2018-10-25
IL270112B (en) 2022-07-01
RU2765341C2 (ru) 2022-01-28
US11436811B2 (en) 2022-09-06
CN118170283A (zh) 2024-06-11
NZ756888A (en) 2023-10-27
US20220375181A1 (en) 2022-11-24
JP7189152B2 (ja) 2022-12-13
AU2018260575B2 (en) 2022-04-21
US20180308290A1 (en) 2018-10-25
WO2018200201A1 (en) 2018-11-01
CN110832450A (zh) 2020-02-21
JP2020518077A (ja) 2020-06-18
CL2019002951A1 (es) 2020-03-13
CA3056953A1 (en) 2018-11-01
IL270112A (ko) 2019-12-31
KR20190141162A (ko) 2019-12-23
CA3056956A1 (en) 2018-11-01
PH12019550188A1 (en) 2020-06-08

Similar Documents

Publication Publication Date Title
AU2018257944B2 (en) Three-dimensional environment authoring and generation
US10684769B2 (en) Inset dynamic content preview pane
US11287947B2 (en) Contextual input in a three-dimensional environment
US11164395B2 (en) Structure switching in a three-dimensional environment
US20150286349A1 (en) Transient user interface elements
US20210075757A1 (en) Automated display state of electronic mail items
US20240069687A1 (en) Presenting participant reactions within a virtual working environment
CN109891445B (zh) 经由跨iframe信令重新归位嵌入式网络内容
US20180173377A1 (en) Condensed communication chain control surfacing
US20240069857A1 (en) Providing change in presence sounds within virtual working environment
BR112019019556B1 (pt) Sistema para gerar um ambiente de realidade virtual tridimensional, método implementado por computador para gerar um arquivo de dados de ambiente e método implementado por computador para gerar um ambiente de realidade virtual tridimensional

Legal Events

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