KR20210096695A - 개선된 상호작용 및 컬래버레이션을 위한 가상 공간, 혼합 현실 공간 및 결합된 혼합 현실 공간 - Google Patents

개선된 상호작용 및 컬래버레이션을 위한 가상 공간, 혼합 현실 공간 및 결합된 혼합 현실 공간 Download PDF

Info

Publication number
KR20210096695A
KR20210096695A KR1020217023722A KR20217023722A KR20210096695A KR 20210096695 A KR20210096695 A KR 20210096695A KR 1020217023722 A KR1020217023722 A KR 1020217023722A KR 20217023722 A KR20217023722 A KR 20217023722A KR 20210096695 A KR20210096695 A KR 20210096695A
Authority
KR
South Korea
Prior art keywords
user
virtual
users
items
item
Prior art date
Application number
KR1020217023722A
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
Priority claimed from US16/234,013 external-priority patent/US10921878B2/en
Priority claimed from US16/233,846 external-priority patent/US20200210137A1/en
Priority claimed from US16/234,128 external-priority patent/US11024074B2/en
Application filed by 페이스북 테크놀로지스, 엘엘씨 filed Critical 페이스북 테크놀로지스, 엘엘씨
Publication of KR20210096695A publication Critical patent/KR20210096695A/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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/147Digital output to display device ; Cooperation and interconnection of the display device with other functional units using display panels
    • 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/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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • 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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1423Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
    • 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/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/003Navigation within 3D models or images
    • 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
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G3/00Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes
    • G09G3/001Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes using specific devices not provided for in groups G09G3/02 - G09G3/36, e.g. using an intermediate record carrier such as a film slide; Projection systems; Display of non-alphanumerical information, solely or in combination with alphanumerical information, e.g. digital display on projected diapositive as background
    • G09G3/003Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes using specific devices not provided for in groups G09G3/02 - G09G3/36, e.g. using an intermediate record carrier such as a film slide; Projection systems; Display of non-alphanumerical information, solely or in combination with alphanumerical information, e.g. digital display on projected diapositive as background to produce spatial visual effects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/01Indexing scheme relating to G06F3/01
    • G06F2203/012Walk-in-place systems for allowing a user to walk in a virtual environment while constraining him to a given position in the physical environment
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2354/00Aspects of interface with display user

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Business, Economics & Management (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Graphics (AREA)
  • Primary Health Care (AREA)
  • Tourism & Hospitality (AREA)
  • Computing Systems (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Multimedia (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Transfer Between Computers (AREA)
  • Position Input By Displaying (AREA)

Abstract

일 실시예에서, 방법은 하나 이상의 제2 가상 콘텐트를 포함하는 가상 영역에서 제1 가상 콘텐트를 제1 사용자에게 디스플레이하는 단계, 제1 사용자 행동들 또는 상황 정보 중 하나 이상에 기초하여 제1 가상 콘텐트와 상호작용할 제1 사용자의 의도를 추론하는 단계, 및 제1 가상 콘텐트와 상호작용할 제1 사용자의 의도의 추론에 기초하여 제2 가상 콘텐트 중 하나 이상과 연관된 하나 이상의 구성들을 조정하는 단계를 포함한다.

Description

개선된 상호작용 및 컬래버레이션을 위한 가상 공간, 혼합 현실 공간 및 결합된 혼합 현실 공간
본 개시는 일반적으로 가상 현실 환경 및 혼합 가상 현실 환경을 포함하는 인공 현실 환경에 관한 것이다.
인공 현실은 사용자에게 제시하기 전에 일부 방식으로 조정된 현실의 형태이고, 이는 예를 들어 가상 현실(VR), 증강 현실(AR), 혼합 현실(MR), 하이브리드 현실 또는 이들의 일부 조합 및/또는 그 유도물을 포함할 수 있다. 인공 현실 콘텐트는 캡쳐된 콘텐트(예컨대, 실세계 사진들(real-world photographs))와 조합된 생성된 콘텐트 또는 완전히 생성된 콘텐트를 포함할 수 있다. 인공 현실 콘텐트는 비디오, 오디오, 햅틱 피드백, 또는 그들의 일부 조합을 포함할 수 있으며, 그들 중 임의의 것은 단일 채널로 또는 다중 채널들(예컨대, 뷰어(view)에게 3차원 효과를 생성하는 스테레오 비디오와 같음)에 제공될 수 있다. 인공 현실은 예컨대, 인공 현실에서 콘텐트를 생성하기 위해 사용되고/거나 인공 현실에서 사용되는(예컨대, 인공 현실에서 활동들을 수행하는) 애플리케이션들, 제품들, 액세서리들, 서비스들, 또는 그들의 일부 조합과 연관될 수 있다. 인공 현실 콘텐트를 제공하는 인공 현실 시스템은 호스트 컴퓨터 시스템에 연결된 헤드-마운티드 디스플레이(Head Mounted Display)(HMD), 독립형 HMD, 모바일 디바이스 또는 컴퓨팅 시스템, 또는 인공 현실 콘텐트를 하나 이상의 뷰어들에게 제공할 수 있는 임의의 다른 하드웨어 플랫폼을 포함하는 다양한 플랫폼들에서 구현될 수 있다.
여기에 설명된 특정 실시예들은 사용자를 위한 분리된 경험(isolated experience)을 생성할 목적으로 VR 환경을 수정하기 위해 상황 정보 및 사용자의 의도를 사용하기 위한 시스템을 생성하는 방법에 관한 것이다. 이러한 시스템은 먼저 사용자의 움직임, 오브젝트와의 상호작용, 및 눈 움직임에 기초하여 사용자가 특정 오브젝트와의 상호작용에 집중하기를 원하는지 여부를 결정할 수 있다. 시스템이 사용자가 특정 오브젝트와 상호작용하기를 원한다고 결정하면, 그때 시스템은 특정 오브젝트와의 사용자 경험을 극대화하기 위해 환경을 수정할 수 있다.
여기에 설명된 특정 실시예들은 각 사용자의 자유 공간을 사용하여 공동 VR 공간(joint VR space)을 생성하기 위해 다양한 사용자 위치들 사이의 현실들을 병합하기 위한 시스템을 생성하는 것에 관한 것이다. 이러한 시스템은 먼저 특정 사용자의 자유 공간이 공동 VR 공간을 수용할 만큼 충분히 크다고 결정할 수 있다. 그런 다음, 시스템은 특정 사용자의 자유 공간의 맵을 매핑하거나 검색할 수 있으며, 사용자들 각각의 자유 공간 제한들을 수용하고 사용자들의 자유 공간들 사이의 오버랩을 극대화하는 공동 VR 공간에 대한 프레임워크를 결정 및 생성함으로써 공동 VR 공간에 참여하기를 원하는 다른 사용자들과 협력(coordinate)할 수 있다.
여기에 설명된 특정 실시예들은 사용자 상호작용, 커뮤니케이션, 및 다른 사용자들과의 협력(예를 들어, 프로젝트 컬래버레이션(collaborating on projects)을 위해)을 향상시키기 위해 실제(real life)의 콘텐트 및 오브젝트들을 디지털/VR 환경의 것들과 동기화하는 것에 관한 것이다. 이러한 시스템은 먼저 사용자가 다른 사용자들과 컬래버레이션을 하기 위해 사용자의 실제 환경 내에서 어떤 오브젝트들을 사용하기를 원할 수 있는지를 결정할 수 있다. 그런 다음, 시스템은 VR 공유 공간의 다른 사용자들이 오브젝트들을 보고 상호작용할 수 있도록 VR 공유 공간의 UI 내의 실제 오브젝트들을 실시간으로 카피하고 제시할 수 있다.
본 발명의 실시예들은 인공 현실 시스템을 포함하거나 이와 관련하여 구현될 수 있다. 인공 현실은 사용자에게 제공 전에 일부 방식으로 조정된 현실의 형태이고, 이는 예를 들어 가상 현실(VR), 증강 현실(AR), 혼합 현실(MR), 하이브리드 현실 또는 이들의 일부 조합 및/또는 유도물을 포함할 수 있다. 인공 현실 콘텐트는 캡쳐된 콘텐트(예컨대, 실세계 사진들)와 조합된 생성된 콘텐트 또는 완전히 생성된 콘텐트를 포함할 수 있다. 인공 현실 콘텐트는 비디오, 오디오, 햅틱 피드백, 또는 그들의 일부 조합을 포함할 수 있으며, 그들 중 임의의 것은 단일 채널로 또는 다중 채널들(예컨대, 뷰어에게 3차원 효과를 생성하는 스테레오 비디오와 같음)에 제공될 수 있다. 추가적으로, 일부 실시예들에서, 인공 현실은 예컨대, 인공 현실에서 콘텐트를 생성하기 위해 사용되고/거나 인공 현실에서 사용되는(예컨대, 인공 현실에서 활동들을 수행하는) 애플리케이션들, 제품들, 액세서리들, 서비스들, 또는 그들의 일부 조합과 연관될 수 있다. 인공 현실 콘텐츠를 제공하는 인공 현실 시스템은 호스트 컴퓨터 시스템에 연결된 헤드-마운티드 디스플레이(HMD), 독립형 HMD, 모바일 디바이스 또는 컴퓨팅 시스템, 또는 인공 현실 콘텐트를 하나 이상의 뷰어들에게 제공할 수 있는 임의의 다른 하드웨어 플랫폼을 포함하는 다양한 플랫폼들에서 구현될 수 있다.
본 명세서에 개시된 실시예들은 단지 예들이고, 본 개시의 범위는 그들로 제한되지 않는다. 특정 실시예들은 여기에 실시예들의 구성요소들, 요소들, 피쳐들, 기능들, 동작들, 또는 단계들의 전부, 일부를 포함할 수 있거나, 그들 중 어느 것도 포함하지 않을 수 있다. 본 발명에 따른 실시예들은 특히, 방법, 저장 매체, 시스템, 및 컴퓨터 프로그램 제품과 관련된 첨부된 청구 범위에 개시되며, 하나의 청구항 카테고리, 예컨대 방법에 언급된 임의의 피처는 다른 청구항 카테고리, 예컨대 시스템에서도 역시 청구될 수 있다. 첨부된 청구 범위에서 종속하거나 또는 참조하는 것은 형식적인 이유로만 선택된다. 그러나 임의의 이전 청구항들(특히 다중 종속)에 대한 의도적인 참조에 의해 기인한 어떠한 청구 대상도 역시 청구될 수 있으므로, 청구 범위 및 그 특징들의 어떠한 조합도 개시되는 것이며 첨부된 청구 범위에서 선택된 종속과는 상관없이 청구될 수 있다. 청구될 수 있는 청구 대상은 첨부된 청구 범위에 명시된 특징들의 조합들뿐만 아니라 청구 범위 내의 특징들의 어떠한 다른 조합도 포함하며, 청구 범위에서 언급된 각 특징은 임의의 다른 특징 또는 청구 범위 내의 다른 특징들의 조합과 결합될 수 있다. 더욱이, 본 명세서에 기재되거나 묘사된 실시예들 및 특징들의 어떠한 것도 별도의 청구항으로 및/또는 본 명세서에 기재되거나 묘사된 임의의 실시예 또는 특징 또는 첨부된 청구 범위의 임의의 특징들과의 임의의 조합으로 청구될 수 있다.
일 실시예에서, 방법은 컴퓨팅 시스템에 의해:
하나 이상의 제2 가상 콘텐트를 포함하는 가상 영역에서 제1 가상 콘텐트를 제1 사용자에게 디스플레이하는 단계;
제1 사용자 행동들 또는 상황 정보(contextual information) 중 하나 이상에 기초하여 제1 가상 콘텐트와 상호작용할 제1 사용자의 의도를 추론하는 단계; 및
제1 가상 콘텐트와 상호작용할 제1 사용자의 의도의 추론에 기초하여 제2 가상 콘텐트 중 하나 이상과 연관된 하나 이상의 구성들을 조정하는 단계를 포함한다.
제1 사용자 행동들은 다음들 중 하나 이상을 포함할 수 있다:
제1 가상 콘텐트에 초점을 맞춘 사용자의 눈 움직임들;
제1 사용자에 의한 구두 요청들(verbal requests);
제1 가상 콘텐트와 연관된 사용자 입력들; 또는
제2 가상 콘텐트 중 하나 이상과 연관된 사용자 입력들.
상황 정보는 다음들 중 하나 이상을 포함할 수 있다:
제1 사용자와 연관된 위치 정보;
제1 사용자와 연관된 움직임 정보;
제1 사용자와 연관된 시간 정보;
제1 가상 콘텐트와 연관된 사전 설정 행동들;
제1 가상 콘텐트가 연관된 콘텐트 유형; 또는
제1 가상 콘텐트가 연관된 서비스 유형.
제1 사용자와 연관된 시간 정보는 사용자가 행동하지 않는(user inaction) 미리 결정된 기간의 시간을 포함할 수 있다.
제1 사용자의 의도를 추론하는 것은 연관된 소셜 네트워크의 하나 이상의 사용자들에 적어도 부분적으로 기초할 수 있는 가상적인 사용자(hypothetical user)의 관점에 적어도 부분적으로 기초할 수 있다.
가상적인 사용자는 적어도 부분적으로 다음들에 기초할 할 수 있다:
소셜 네트워크의 각각의 사용자; 또는
소셜 네트워크 사용자들의 하나 이상의 서브세트들.
제2 가상 콘텐트와 연관된 하나 이상의 구성들을 조정하는 것은 다음들 중 하나 이상을 포함할 수 있다:
제2 가상 콘텐트 중 하나 이상에 대한 하나 이상의 시각적 속성들을 조정;
제2 가상 콘텐트 중 하나 이상에 대한 하나 이상의 오디오 속성들을 조정; 또는
제2 가상 콘텐트 중 하나 이상에 대한 하나 이상의 소셜 네트워킹 속성들을 조정.
제2 가상 콘텐트 중 하나 이상에 대한 시각적 속성들 또는 오디오 속성들의 조정은 제2 가상 콘텐트가 연관되는 콘텐트의 유형 또는 제2 가상 콘텐트가 연관되는 서비스의 유형에 적어도 부분적으로 기초하여 결정될 수 있다.
소셜 네트워킹 속성들의 조정은 제2 가상 콘텐트와 연관된 소셜 네트워크로부터의 모든 통지들을 일시적으로 제한하거나 제거하는 것을 포함할 수 있다.
가상 영역은 가상 현실 환경에 상주할 수 있고, 제1 사용자는 가상 현실 환경에 있는 가상 사용자일 수 있다.
일 실시예에서, 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체는, 실행될 때 본 명세서의 실시예 중 임의의 것에 따른 방법을 수행하거나 다음들을 수행하도록 동작 가능한 소프트웨어를 포함할 수 있다:
하나 이상의 제2 가상 콘텐트를 포함하는 가상 영역에서 제1 가상 콘텐트를 제1 사용자에게 디스플레이;
제1 사용자 행동들 또는 상황 정보 중 하나 이상에 기초하여 제1 가상 콘텐트와 상호작용할 제1 사용자의 의도를 추론; 및
제1 가상 콘텐트와 상호작용할 제1 사용자의 의도의 추론에 기초하여 제2 가상 콘텐트 중 하나 이상과 연관된 하나 이상의 구성들을 조정.
제1 사용자 행동은 다음들 중 하나 이상을 포함할 수 있다:
제1 가상 콘텐트에 초점을 맞춘 사용자의 눈 움직임들;
제1 사용자에 의한 구두 요청들;
제1 가상 콘텐트와 연관된 사용자 입력들; 또는
제2 가상 콘텐트 중 하나 이상과 연관된 사용자 입력들.
상황 정보는 다음들 중 하나 이상을 포함할 수 있다:
제1 사용자와 연관된 위치 정보;
제1 사용자와 연관된 움직임 정보;
제1 사용자와 연관된 시간 정보;
제1 가상 콘텐트와 연관된 하나 이상의 사전 설정 행동들;
제1 가상 콘텐트가 연관된 콘텐트 유형; 또는
제1 가상 콘텐트가 연관된 서비스 유형.
제1 사용자의 의도를 추론하는 것은 연관된 소셜 네트워크의 하나 이상의 사용자들에 적어도 부분적으로 기초할 수 있는 가상적인 사용자의 관점에 적어도 부분적으로 기초할 수 있다.
제2 가상 콘텐트와 연관된 하나 이상의 구성들을 조정하는 것은 다음들 중 하나 이상을 포함할 수 있다:
제2 가상 콘텐트 중 하나 이상에 대한 하나 이상의 시각적 속성들을 조정;
제2 가상 콘텐트 중 하나 이상에 대한 하나 이상의 오디오 속성들을 조정; 또는
제2 가상 콘텐트 중 하나 이상에 대한 하나 이상의 소셜 네트워킹 속성들을 조정.
일 실시예에서, 시스템은: 하나 이상의 프로세서들; 및 상기 프로세서들에 결합되고 상기 프로세서들에 의해 실행 가능한 명령들을 포함하는 메모리를 포함하며, 상기 프로세서들은 상기 명령들을 실행할 때 본 명세서의 실시예들 중 임의의 것에 따른 방법을 수행하거나 또는 다음들을 수행하도록 동작 가능하다:
하나 이상의 제2 가상 콘텐트를 포함하는 가상 영역에서 제1 가상 콘텐트를 제1 사용자에게 디스플레이;
제1 사용자 행동들 또는 상황 정보 중 하나 이상에 기초하여 제1 가상 콘텐트와 상호작용할 제1 사용자의 의도를 추론; 및
제1 가상 콘텐트와 상호작용할 제1 사용자의 의도의 추론에 기초하여 제2 가상 콘텐트 중 하나 이상과 연관된 하나 이상의 구성들을 조정.
제1 사용자 행동들은 다음들 중 하나 이상을 포함할 수 있다:
제1 가상 콘텐트에 초점을 맞춘 사용자의 눈 움직임들;
제1 사용자에 의한 구두 요청들;
제1 가상 콘텐트와 연관된 사용자 입력들; 또는
제2 가상 콘텐트 중 하나 이상과 연관된 사용자 입력들.
상황 정보는 다음들 중 하나 이상을 포함할 수 있다:
제1 사용자와 연관된 위치 정보;
제1 사용자와 연관된 움직임 정보;
제1 사용자와 연관된 시간 정보;
제1 가상 콘텐트와 연관된 하나 이상의 사전 설정 행동들;
제1 가상 콘텐트가 연관된 콘텐트 유형; 또는
제1 가상 콘텐트가 연관된 서비스 유형.
제1 사용자의 의도를 추론하는 것은 연관된 소셜 네트워크의 하나 이상의 사용자들에 적어도 부분적으로 기초할 수 있는 가상적인 사용자의 관점에 적어도 부분적으로 기초할 수 있다.
제2 가상 콘텐트와 연관된 하나 이상의 구성들을 조정하는 것은 다음들 중 하나 이상을 포함할 수 있다:
제2 가상 콘텐트 중 하나 이상에 대한 하나 이상의 시각적 속성들을 조정;
제2 가상 콘텐트 중 하나 이상에 대한 하나 이상의 오디오 속성들을 조정; 또는
제2 가상 콘텐트 중 하나 이상에 대한 하나 이상의 소셜 네트워킹 속성들을 조정.
일 실시예에서, 방법, 특히 본 명세서의 임의의 실시예에 따른 방법은, 컴퓨팅 시스템에 의해:
제1 사용자로부터, 하나 이상의 제2 사용자들과 함께 사용할 공동 가상 공간을 생성하라는 요청을 수신하는 단계;
제1 방(room)과 연관된 공간 제한 및 제1 방 내의 하나 이상의 아이템들의 위치들에 적어도 부분적으로 기초하여 제1 사용자와 연관된 제1 방 내의 제1 영역을 결정하는 단계;
제2 사용자들 각각에 대한 하나 이상의 제2 방들과 연관된 정보를 검색하는 단계;
제1 방의 제1 영역 및 제2 방들 각각과 연관된 정보에 기초하여 공동 가상 공간을 생성하는 단계; 및
제1 사용자 및 하나 이상의 제2 사용자들 각각에게 공동 가상 공간에 대한 액세스를 제공하는 단계를 포함할 수 있다.
일 실시예에서, 방법은 하나 이상의 제2 방들과 연관된 정보를 검색하기 전에,
상기 제1 방의 제1 영역이 미리 결정된 최소 영역과 같거나 큰지를 결정하는 단계를 포함할 수 있다.
제1 영역은 공간 제한들 및 제1 방에 있는 하나 이상의 아이템들의 위치들을 평가한 후 제1 방과 연관된 최대 자유 공간을 계산함으로써 결정될 수 있다.
제2 방들과 연관된 검색된 정보는 적어도 다음을 포함할 수 있다:
제2 사용자들 각각에 대한 제2 방들 각각과 연관된 공간 제한들; 및
제2 사용자들 각각에 대한 제2 방들 각각에 있는 하나 이상의 아이템들의 위치들.
일 실시예에서, 방법은:
공간 제한들 및 하나 이상의 아이템들의 위치들에 적어도 부분적으로 기초하여 하나 이상의 제2 방들 각각에 대한 제2 영역을 결정하는 단계를 포함할 수 있으며,
제2 영역은 공간 제한 및 하나 이상의 제2 방들 각각에서 하나 이상의 아이템들의 위치들을 평가한 후 하나 이상의 제2 방들 각각과 연관된 최대 자유 공간(maximum free space)을 계산함으로써 결정된다.
공동 가상 공간은 제1 방과 연관된 최대 자유 공간과 하나 이상의 제2 방들 각각과 연관된 최대 자유 공간 사이의 최대 오버랩을 결정함으로써 생성될 수 있다.
공동 가상 공간에 대한 액세스를 제공하는 단계는 공동 가상 공간이 사용 가능하다는 것을 제1 사용자 및 하나 이상의 제2 사용자들 각각에게 통지하는 단계를 포함할 수 있다.
제1 사용자 및 하나 이상의 제2 사용자들 각각에게 통지하는 단계는 제1 사용자 및 하나 이상의 제2 사용자들 각각이 공동 가상 공간에 가상으로 액세스하도록 허용하는 포털 오브젝트를 생성하도록 하는 명령들을 제1 사용자 및 하나 이상의 제2 사용자들 각각에게 보내는 단계를 포함할 수 있다.
포털 오브젝트를 생성하는 단계는 다음 단계들을 포함할 수 있다:
제1 사용자가 공동 가상 공간에 가상으로 액세스하도록 허용하는 제1 방의 제1 영역 내에 가상 출입구를 그리게(draw) 하는 명령들을 제1 사용자에게 보내는 단계; 및
제2 사용자들 각각이 공동 가상 공간에 가상으로 액세스하도록 허용하는 제2 방들 각각에 가상 출입구를 그리게 하는 명령들을 제2 사용자들 각각에게 보내는 단계.
공동 가상 공간은 가상 현실 환경에 상주할 수 있으며, 제1 사용자 및 하나 이상의 제2 사용자들 각각은 가상 현실 환경의 가상 사용자들일 수 있다.
일 실시예에서, 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체, 특히 본 명세서의 임의의 실시예에 따른 매체는, 실행될 때 본 명세서의 실시예 중 임의의 것에 따른 방법을 수행하거나 다음들을 수행하도록 동작 가능한 소프트웨어를 포함할 수 있다:
제1 사용자로부터, 하나 이상의 제2 사용자들과 함께 사용할 공동 가상 공간을 생성하라는 요청을 수신;
제1 방과 연관된 공간 제한 및 제1 방 내의 하나 이상의 아이템들의 위치들에 적어도 부분적으로 기초하여 제1 사용자와 연관된 제1 방 내의 제1 영역을 결정;
제2 사용자들 각각에 대한 하나 이상의 제2 방들과 연관된 정보를 검색;
제1 방의 제1 영역 및 제2 방들 각각과 연관된 정보에 기초하여 공동 가상 공간을 생성; 및
제1 사용자 및 하나 이상의 제2 사용자들 각각에게 공동 가상 공간에 대한 액세스를 제공.
제1 영역은 공간 제한들 및 제1 방에 있는 하나 이상의 아이템들의 위치들을 평가한 후 제1 방과 연관된 최대 자유 공간을 계산함으로써 결정될 수 있다.
제2 방들과 연관된 검색된 정보는 적어도 다음을 포함할 수 있다:
제2 사용자들 각각에 대한 제2 방들 각각과 연관된 공간 제한들; 및
제2 사용자들 각각에 대한 제2 방들 각각에 있는 하나 이상의 아이템들의 위치들.
일 실시예에서, 매체는:
공간 제한들 및 하나 이상의 아이템들의 위치들에 적어도 부분적으로 기초하여 하나 이상의 제2 방들 각각에 대한 제2 영역을 결정하는 것을 포함할 수 있으며,
제2 영역은 공간 제한 및 하나 이상의 제2 방들 각각에서 하나 이상의 아이템들의 위치들을 평가한 후 하나 이상의 제2 방들 각각과 연관된 최대 자유 공간을 계산함으로써 결정된다.
공동 가상 공간은 제1 방과 연관된 최대 자유 공간과 하나 이상의 제2 방들 각각과 연관된 최대 자유 공간 사이의 최대 오버랩을 결정함으로써 생성될 수 있다.
일 실시예에서, 시스템, 특히 본 명세서의 임의의 실시예에 따른 시스템은: 하나 이상의 프로세서들; 및 상기 프로세서들에 결합되고 상기 프로세서들에 의해 실행 가능한 명령들을 포함하는 메모리를 포함하며, 상기 프로세서들은 상기 명령들을 실행할 때 본 명세서의 실시예들 중 임의의 것에 따른 방법을 수행하거나 또는 다음들을 수행하도록 동작 가능하다:
제1 사용자로부터, 하나 이상의 제2 사용자들과 함께 사용할 공동 가상 공간을 생성하라는 요청을 수신;
제1 방과 연관된 공간 제한 및 제1 방 내의 하나 이상의 아이템들의 위치들에 적어도 부분적으로 기초하여 제1 사용자와 연관된 제1 방 내의 제1 영역을 결정;
제2 사용자들 각각에 대한 하나 이상의 제2 방들과 연관된 정보를 검색;
제1 방의 제1 영역 및 제2 방들 각각과 연관된 정보에 기초하여 공동 가상 공간을 생성; 및
제1 사용자 및 하나 이상의 제2 사용자들 각각에게 공동 가상 공간에 대한 액세스를 제공.
제1 영역은 공간 제한들 및 제1 방에 있는 하나 이상의 아이템들의 위치들을 평가한 후 제1 방과 연관된 최대 자유 공간을 계산함으로써 결정될 수 있다.
제2 방들과 연관된 검색된 정보는 적어도 다음을 포함할 수 있다:
제2 사용자들 각각에 대한 제2 방들 각각과 연관된 공간 제한들; 및
제2 사용자들 각각에 대한 제2 방들 각각에 있는 하나 이상의 아이템들의 위치들.
일 실시예에서, 시스템은:
공간 제한들 및 하나 이상의 아이템들의 위치들에 적어도 부분적으로 기초하여 하나 이상의 제2 방들 각각에 대한 제2 영역을 결정하는 것을 포함할 수 있으며,
제2 영역은 공간 제한 및 하나 이상의 제2 방들 각각에서 하나 이상의 아이템들의 위치들을 평가한 후 하나 이상의 제2 방들 각각과 연관된 최대 자유 공간을 계산함으로써 결정된다.
공동 가상 공간은 제1 방과 연관된 최대 자유 공간과 하나 이상의 제2 방들 각각과 연관된 최대 자유 공간 사이의 최대 오버랩을 결정함으로써 생성될 수 있다.
일 실시예에서, 방법, 특히 본 명세서의 임의의 실시예에 따른 방법은, 컴퓨팅 시스템에 의해:
제1 인터랙티브 아이템의 디스플레이를 하나 이상의 사용자들과 공유하도록 하는 요청을 수신하는 단계;
제1 인터랙티브 아이템의 카피로서 제1 가상 아이템을 생성하는 단계; 및
가상 현실 환경의 제1 가상 아이템을 하나 이상의 사용자들의 서브세트에 디스플레이하는 단계를 포함할 수 있으며,
제1 인터랙티브 아이템에 대한 변경이 수신되면, 가상 현실 환경에서 제1 가상 아이템의 디스플레이는 제1 인터랙티브 아이템과 동일한 변경을 포함하도록 업데이트된다.
제1 인터랙티브 아이템의 디스플레이를 공유하기 위한 요청은 제1 인터랙티브 아이템과 현재 상호작용하고 있는 하나 이상의 사용자들 중 제1 사용자로부터의 것일 수 있다.
제1 인터랙티브 아이템의 디스플레이를 공유하기 위한 요청은 하나 이상의 제2 사용자로부터의 것일 수 있으며, 하나 이상의 제2 사용자는 가상 현실 환경과 연관된 가상 사용자이다.
일 실시예에서, 방법은, 제1 인터랙티브 아이템의 디스플레이를 공유하도록 하는 요청을 수신하기 전에,
환경에서 하나 이상의 인터랙티브 아이템들을 결정하는 단계; 및
가상 현실 환경에 디스플레이할 인터랙티브 아이템들 중 적어도 하나의 선택을 위해 인터랙티브 아이템들의 리스트를 제1 사용자에게 보내는 단계를 포함할 수 있다.
하나 이상의 사용자들의 서브세트는 가상 현실 환경의 가상 사용자들을 포함할 수 있다.
제1 인터랙티브 아이템은 실세계 환경에 위치할 수 있다.
일 실시예에서, 방법은:
실세계 환경에서 제1 인터랙티브 아이템을 둘러싸는 하나 이상의 다른 아이템들과 관련하여 제1 인터랙티브 아이템의 위치에 액세스하는 단계;
하나 이상의 다른 아이템들의 카피들로서 하나 이상의 제2 가상 아이템들을 생성하는 단계; 및
실세계 환경의 하나 이상의 다른 아이템들과 관련하여 제1 인터랙티브 아이템의 위치에 기초하여 가상 현실 환경에서 제1 가상 아이템 및 하나 이상의 제2 가상 아이템들을 디스플레이하는 단계를 포함할 수 있다.
일 실시예에서, 방법은:
실세계 환경에서 제1 인터랙티브 아이템의 지향방향(orientation)에 액세스하는 단계; 및
실세계 환경에서 제1 인터랙티브 아이템의 지향방향에 기초하여 가상 현실 환경에서 제1 가상 아이템을 디스플레이하는 단계를 포함할 수 있다.
일 실시예에서, 방법은:
사용자들의 서브세트 중 하나 이상의 사용자들로부터 제1 가상 아이템과 연관된 코멘트들을 수신하는 단계; 및
실세계 환경에서 제1 인터랙티브 아이템과 현재 상호작용하고 있는 하나 이상의 사용자들 중 제1 사용자에게 디스플레이될 코멘트들을 보내는 단계를 포함할 수 있다.
코멘트들은 오디오 코멘트, 비디오 코멘트, 또는 서면 코멘트(written comments) 중 하나 이상을 포함할 수 있다.
일 실시예에서, 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체, 특히 본 명세서의 임의의 실시예에 따른 매체는, 실행될 때 본 명세서의 실시예 중 임의의 것에 따른 방법을 수행하거나, 또는:
제1 인터랙티브 아이템의 디스플레이를 하나 이상의 사용자들과 공유하도록 하는 요청을 수신하고;
제1 인터랙티브 아이템의 카피로서 제1 가상 아이템을 생성하고;
가상 현실 환경의 제1 가상 아이템을 하나 이상의 사용자들의 서브세트에 디스플레이하도록 동작 가능한 소프트웨어를 포함할 수 있으며,
제1 인터랙티브 아이템에 대한 변경이 수신되면, 가상 현실 환경에서 제1 가상 아이템의 디스플레이는 제1 인터랙티브 아이템과 동일한 변경을 포함하도록 업데이트된다.
소프트웨어는 실행될 때, 제1 인터랙티브 아이템의 디스플레이를 공유하도록 하는 요청을 수신하기 전에,
환경에서 하나 이상의 인터랙티브 아이템들을 결정하고;
가상 현실 환경에 디스플레이할 인터랙티브 아이템들 중 적어도 하나의 선택을 위해 인터랙티브 아이템들의 리스트를 제1 사용자에게 보내도록 동작할 수 있다.
제1 인터랙티브 아이템은 실세계 환경에 위치할 수 있다.
상기 소프트웨어는 실행될 때:
실세계 환경에서 제1 인터랙티브 아이템을 둘러싸는 하나 이상의 다른 아이템들과 관련하여 제1 인터랙티브 아이템의 위치에 액세스하고;
하나 이상의 다른 아이템들의 카피들로서 하나 이상의 제2 가상 아이템들을 생성하고;
실세계 환경의 하나 이상의 다른 아이템들과 관련하여 제1 인터랙티브 아이템의 위치에 기초하여 가상 현실 환경에서 제1 가상 아이템 및 하나 이상의 제2 가상 아이템들을 디스플레이하도록 동작할 수 있다.
상기 소프트웨어는 실행될 때:
실세계 환경에서 제1 인터랙티브 아이템의 지향방향에 액세스하고;
실세계 환경에서 제1 인터랙티브 아이템의 지향방향에 기초하여 가상 현실 환경에서 제1 가상 아이템을 디스플레이하도록 동작할 수 있다.
일 실시예에서, 시스템, 특히 본 명세서의 임의의 실시예에 따른 시스템은: 하나 이상의 프로세서들; 및 상기 프로세서들에 결합되고 상기 프로세서들에 의해 실행 가능한 명령들을 포함하는 메모리를 포함하며, 상기 프로세서들은 상기 명령들을 실행할 때 본 명세서의 실시예들 중 임의의 것에 따른 방법을 수행하거나 또는:
제1 인터랙티브 아이템의 디스플레이를 하나 이상의 사용자들과 공유하도록 하는 요청을 수신하고;
제1 인터랙티브 아이템의 카피로서 제1 가상 아이템을 생성하고;
가상 현실 환경의 제1 가상 아이템을 하나 이상의 사용자들의 서브세트에 디스플레이하도록 동작할 수 있으며,
제1 인터랙티브 아이템에 대한 변경이 수신되면, 가상 현실 환경에서 제1 가상 아이템의 디스플레이는 제1 인터랙티브 아이템과 동일한 변경을 포함하도록 업데이트된다.
프로세서들은 명령들을 실행할 때, 제1 인터랙티브 아이템의 디스플레이를 공유하도록 하는 요청을 수신하기 전에,
환경에서 하나 이상의 인터랙티브 아이템들을 결정하고;
가상 현실 환경에 디스플레이할 인터랙티브 아이템들 중 적어도 하나의 선택을 위해 인터랙티브 아이템들의 목록을 제1 사용자에게 보내도록 동작할 수 있다.
제1 인터랙티브 아이템은 실세계 환경에 위치할 수 있다.
프로세서들은 명령들을 실행할 때:
실세계 환경에서 제1 인터랙티브 아이템을 둘러싸는 하나 이상의 다른 아이템들과 관련하여 제1 인터랙티브 아이템의 위치에 액세스하고;
하나 이상의 다른 아이템들의 카피들로서 하나 이상의 제2 가상 아이템들을 생성하고;
실세계 환경의 하나 이상의 다른 아이템들과 관련하여 제1 인터랙티브 아이템의 위치에 기초하여 가상 현실 환경에서 제1 가상 아이템 및 하나 이상의 제2 가상 아이템들을 디스플레이하도록 동작할 수 있다.
프로세서들은 명령들을 실행할 때:
실세계 환경에서 제1 인터랙티브 아이템의 지향방향에 액세스하고;
실세계 환경에서 제1 인터랙티브 아이템의 지향방향에 기초하여 가상 현실 환경에서 제1 가상 아이템을 디스플레이하도록 동작할 수 있다.
일 실시예에서, 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체는 소프트웨어로서 실행될 때 전술한 실시예들 중 임의의 실시예에 따른 또는 그 내의 방법을 수행하도록 동작 가능한 상기 소프트웨어를 포함할 수 있다.
일 실시예에서, 시스템은 하나 이상의 프로세서들; 및 상기 프로세서들에 결합되고 상기 프로세서들에 의해 실행 가능한 명령들을 포함하는 적어도 하나의 메모리를 포함하며, 상기 프로세서들은 상기 전술한 실시예들 중 임의의 실시예에 따른 또는 그 내의 방법을 수행하기 위해 상기 명령들을 실행할 때 동작가능하다.
일 실시예에서, 바람직하게는 컴퓨터 판독 가능한 비-일시적 저장 매체를 포함하는 컴퓨터 프로그램 제품은 상기 전술한 실시예들 중 임의의 실시예에 따른 또는 그 내의 방법을 수행하기 위해 데이터 처리 시스템 상에서 실행될 때 동작가능할 수 있다.
도 1은 예시적인 인공 현실 시스템을 도시한다.
도 2는 예시적인 3D 눈 추적 시스템을 도시한다.
도 3은 예시적인 인공 현실 공간을 도시한다.
도 4은 예시적인 VR 환경을 도시한다.
도 5는 VR 환경의 다른 예를 도시한다.
도 6은 사용자의 의도 및 상황 정보에 기초하여 VR 환경을 업데이트하는 예시적인 방법을 도시한다.
도 7은 제1 사용자가 다른 사용자들과 공동 VR 공간으로 병합하기 위한 공간을 지정하는 예를 도시한다.
도 8은 제2 사용자가 다른 사용자들과 공동 VR 공간으로 병합하기 위한 공간을 지정하는 예를 도시한다.
도 9는 병합된 VR 환경의 예시를 도시한다.
도 10a 및 도 10b는 병합된 VR 환경에 액세스하기 위한 포털 오브젝트를 생성하는 예를 도시한다.
도 11은 다른 사용자들과 인공 현실 시스템을 병합하기 위한 공간을 지정하는 예시적인 방법을 도시한다.
도 12는 제1 사용자가 인공 현실 시스템에서 다른 사용자들과 공유하기 위한 오브젝트를 지정하는 것을 도시한다.
도 13은 제2 사용자가 인공 현실 시스템에서 다른 사용자들과 공유하기 위한 오브젝트를 지정하는 것을 도시한다.
도 14a 및 14b는 공유된 오브젝트를 보기 위한 다양한 사용자들에 대한 다양한 환경들을 도시한다.
도 15는 인공 현실 시스템에서 다양한 오브젝트들을 지정하고 다른 사용자들과 공유하기 위한 예시적인 방법을 도시한다.
도 16은 소셜 네트워킹 시스템과 연관된 예시적인 네트워크 환경을 도시한다.
도 17은 예시적인 소셜 그래프를 도시한다.
도 18은 예시적인 컴퓨터 시스템을 도시한다.
인공 현실 개요(Artificial Reality Overview)
도 1은 예시적인 인공 현실 시스템(100)을 도시한다. 특정 실시예들에서, 인공 현실 시스템(100)은 헤드셋(194), 컨트롤러(106), 및 컴퓨팅 시스템(108)을 포함할 수 있다. 사용자(102)는 시각적 인공 현실 콘텐트를 사용자(102)에게 디스플레이할 수 있는 헤드셋(104)을 착용할 수 있다. 헤드셋(104)은 오디오 인공 현실 콘텐트를 사용자(102)에게 제공할 수 있는 아트 오디오 디바이스를 포함할 수 있다. 헤드셋(104)은 환경들의 이미지 및 비디오를 캡처할 수 있는 하나 이상의 카메라들을 포함할 수 있다. 헤드셋(104)은 사용자(102)의 수렴 거리(vergence distance)를 결정하기 위해 눈 추적 시스템(eye tracking system)을 포함할 수 있다. 수렴 거리는 사용자의 눈들에서부터 사용자의 눈들이 수렴되는 오브젝트(예를 들어, 실세계의 오브젝트들 또는 가상 공간의 가상 오브젝트들)까지의 거리일 수 있다. 헤드셋(104)은 헤드 마운트 디스플레이(head-mounted display)(HMD)로 지칭될 수 있다. 컨트롤러(106)는 트랙 패드(trackpad) 및 하나 이상의 버튼들을 포함할 수 있다. 컨트롤러(106)는 사용자(102)로부터 입력을 수신할 수 있고 그 입력을 컴퓨팅 시스템(108)으로 중계할 수 있다. 컨트롤러(206)는 또한 사용자(102)에게 햅틱 피드백을 제공할 수 있다. 컴퓨팅 시스템(108)은 케이블 또는 무선 연결을 통해 헤드셋(104) 및 컨트롤러(106)에 연결될 수 있다. 컴퓨팅 시스템(108)은 인공 현실 콘텐트를 사용자(102)에게 제공하고 사용자(102)로부터 입력을 수신하도록 헤드셋(104) 및 컨트롤러(106)를 제어할 수 있다. 컴퓨팅 시스템(108)은 독립형 호스트 컴퓨터 시스템, 헤드셋(104)과 통합된 온-보드 컴퓨터 시스템(on-board computer system), 모바일 디바이스, 또는 인공 현실 콘텐트를 사용자(102)에게 제공하고 사용자(102)로부터 입력을 수신할 수 있는 임의의 다른 하드웨어 플랫폼일 수 있다.
특정 실시예들에서, 인공 현실 시스템은 사용자의 눈들을 실시간으로 추적하기 위한 눈 추적 시스템을 포함할 수 있다. 눈 추적 시스템은 사용자의 눈 움직임(예를 들어, 응시 방향, 응시 각도, 수렴(convergence))을 추적하고 사용자가 바라보고 있는 곳(예를 들어, 수렴 거리 또는 응시 지점)을 결정하는 3D 눈 추적 시스템일 수 있다. 도 2는 예시적인 3D 눈 추적 시스템(200)을 도시한다. 3차원 눈 추적 시스템(200)은 3차원 눈 움직임을 추적하여 사용자의 수렴 거리 또는 응시 지점(gazing point)을 결정할 수 있다. 사용자의 수렴 거리는 사용자의 눈들에서부터 사용자의 눈들이 수렴되는 지점까지의 거리일 수 있다. 사용자의 응시 지점은 사용자가 응시하고 있는 지점일 수 있다. 눈 추적 시스템(200)은 렌즈(210), 복수의 적외선 광원들(예를 들어, 212A-H), 핫 미러(hot mirror)(220), 및 적외선 카메라(240)를 포함할 수 있다. 광원들(212A-H)은 렌즈(210)에 장착된 적외선 LED(Light Emitting Diode)들일 수 있다. 핫 미러(220)는 가시광은 통과시키고 적외선광은 반사시키는 다이크로익 필터(dichroic filter)일 수 있다. 광원들(212A-H) 중 하나 이상에 의해 방출된 적외선광(예를 들어, 214)은 눈(250)에 도달하여 반사될 수 있다. 반사된 광(216)은 또한 핫 미러(220)에 의해 반사되어 적외선 카메라(240)에 도달할 수 있다. 카메라(240)는 반사된 적외선을 이용하여 눈(250)의 이미지들을 캡처하는 적외선 카메라일 수 있다. 눈 추적 시스템(200)은 사용자의 양쪽 눈들(예를 들어, 동공들)의 이미지들을 캡처하고 컴퓨터 비전 기술을 사용하여 그 이미지들을 처리할 수 있다. 눈 추적 시스템(200)은 두 눈들의 각도를 측정하고 기하학적 관계를 이용하여 사용자의 수렴 거리 및 응시 지점을 결정할 수 있다. 3차원 눈 추적 시스템(200)은 예를 들어, 1도의 정확도로 사용자의 시선 각도(eye angle)를 측정할 수 있다. 디스플레이 스크린(230)으로부터의 가시광(232)은 핫 미러(220) 및 렌즈(210)를 통과하여, 사용자가 디스플레이 스크린(230)에 의해 렌더링된 콘텐트를 볼 수 있도록 눈(250)에 도달할 수 있다. 특정 실시예들에서, 3D 눈 추적 시스템(200)은 눈 이미지들을 캡처하기 위해 환경으로부터의 주변 광(260)을 사용할 수 있다. 주변 광(240)은 눈(250)에 도달할 수 있고, 눈(250)에서 반사될 수 있다. 반사된 광은 렌즈(210)를 통과하여 핫 미러(220) 및 카메라(240)에 도달할 수 있다. 카메라(240)는 눈(250)에서 반사된 주변 광에 기초하여 눈(250)의 이미지들을 캡처할 수 있다. 특정 실시예들에서, 3D 눈 추적 시스템은 눈 이미지들을 캡처하고 눈 움직임들을 추적하기 위해 광원들(예를 들어, 212A-212H)과 주변광(260) 모두를 사용하는 하이브리드 방법을 사용할 수 있다.
특정 실시예들에서, 308은 눈 추적을 위한 머신 러닝(ML) 기반 접근 방식을 사용할 수 있다. 헤드셋 시스템은 헤드셋을 착용한 사용자의 눈들의 일련의 이미지들을 취하고(예를 들어, 3D 눈 추적 시스템의 카메라 사용), 머신 러닝(ML) 알고리즘을 사용하여 이미지들을 처리하고 수렴 정보를 출력할 수 있다. 예를 들어, 머신 러닝(ML) 알고리즘은 수렴 거리 및 사용자의 응시 지점을 결정하기 위한 추론 모델(inference model)을 포함할 수 있다. 특정 실시예들에서, 헤드셋 시스템은 3D 눈 추적과 ML 기반 눈 추적을 결합한 하이브리드 접근 방식을 포함할 수 있다.
특정 실시예들에서, 인공 현실 시스템은 접근 방식들의 조합을 사용하여 사용자의 수렴 거리 및 응시 지점을 결정할 수 있다. 상기 접근 방식들은 예를 들어 제한이 아닌 예로서, 눈 추적 기반 접근 방식들(예를 들어, 3D 눈 추적, ML 기반 눈 추적), 신체 기반 접근 방식들(예를 들어, 헤드 위치/움직임, 손 위치/움직임, 신체 위치/이동), 및 콘텐트 기반 접근 방식들(예를 들어, Z 버퍼(Z-buffer), 얼굴/오브젝트 인식, 개발자 제공 정보)을 포함할 수 있다. 2018년 9월 14일에 출원된 "수렴 결정(Vergence Determination)"이라는 제목의 미국 특허 출원 번호 16/132,153은 접근 방식들의 다른 조합을 사용하여 수렴 거리 또는 응시 지점을 결정하는 예들을 개시하며, 이는 제한이 아닌 예시로서 참조로 포함된다.
도 3은 예시적인 인공 현실 공간(300)을 도시한다. 특정 실시예들에서, 인공 현실 공간(300)은 제1 사용자(302), 제2 사용자(304), 및 제3 사용자(306)를 포함할 수 있다. 특정 실시예들에서, 인공 현실 공간(300)은 헤드셋들(308, 310 및 312)을 각각 착용한 제1 사용자(302), 제2 사용자(304) 및 제3 사용자(306) 각각의 시야와 헤드셋에 의해 가상 공간에서 렌더링된 가상 현실 장면을 포함할 수 있다. 아래에서 더 자세히 논의되는 바와 같이, 제1 사용자(302), 제2 사용자(304) 및 제3 사용자(306)는 인공 현실 공간(300)에 위치된 하나 이상의 오브젝트들 또는 아이템들과 상호작용하는 것 외에도 서로 만나서 컬래버레이션을 하기 위해 인공 현실 공간(300)에 액세스할 수 있다.
트리거(Triggers)
특정 실시예들에서, VR 환경은 VR 환경에서 사용자의 움직임들 및/또는 VR 환경에서 하나 이상의 아이템들과의 상호작용들에 대한 분석에 기초하여 변경되거나 업데이트되어 사용자의 요구에 더 잘 맞거나 더 나은 사용자 경험을 제공할 수 있다. 여기에 설명된 특정 실시예들은 사용자를 위한 분리된 경험을 생성할 목적으로 VR 환경을 수정하기 위해 상황 정보 및 사용자의 의도를 사용하기 위한 인공 현실에 관한 것이다. 아래에서 더 자세히 설명하는 바와 같이, 이러한 시스템은 다양한 소셜 네트워킹 정보(아래에서 논의됨) 외에도, 사용자의 움직임, 오브젝트와의 상호작용 및 눈 움직임에 기초하여 사용자가 특정 오브젝트와의 상호작용에 집중하고 싶은지 여부를 먼저 결정할 수 있다. 시스템이 사용자가 특정 오브젝트와 상호작용하기를 원한다고 결정하면, 그때 시스템은 특정 오브젝트와의 사용자 경험을 극대화하기 위해 환경을 수정할 수 있다.
특정 실시예들에서, 시스템은 사용자의 움직임 또는 위치에 기초하여 특정 오브젝트와 상호작용하는 데 초점을 맞추는 사용자의 의도를 추론할 수 있다. 도 4은 예시적인 VR 환경(400)을 도시한다. 도 4에 도시된 바와 같이, VR 환경(400)은 스크린(410), 스피커(412), 램프(414), 알람(416), 라디오(418), 및 소파(420)를 포함한다. 또한, 도 5는 VR 환경(500)의 다른 예를 도시한다. 도 5에 도시된 바와 같이, VR 환경(500)은 소파(510), 책장(512), 커피 테이블(514), 천장 램프(516), 플로어 램프(518), 블라인드(520)로 덮인 창, 및 라디오(522)를 포함한다. 특정 실시예들에서, 인공 현실 시스템은 상황 정보 및 VR 환경에서 하나 이상의 "트리거(triggers)"에 기초하여 사용자의 의도를 추론할 수 있으며, 이는 사용자의 움직임 및/또는 위치가 VR 환경에서 하나 이상의 오브젝트들(예를 들어, 가상 스크린, 책장)과 관련된 미리 결정된 거리 또는 위치 내에 있다는 결정을 포함할 수 있다. 이러한 트리거들은 사용자와 연관된 특정 조건들이 충족될 때(예를 들어, 사용자가 하나 이상의 오브젝트들에 대해 미리 결정된 위치 또는 거리 내에 있는 경우, 하나 이상의 오브젝트들과 관련된 사용자 움직임 등) 트리거되는 VR 환경의 하나 이상의 오브젝트들과 연관된 명령들을 포함할 수 있다.
예를 들어, 도 4에 도시된 바와 같이, 사용자가 VR 환경에서 스크린(410)의 위치에 가까운 위치 쪽으로 움직이는 데(예를 들어, 스크린(410) 앞의 소파(420)에 앉거나, 스크린(410) 옆에 서 있는 등) 기초하여, 인공 현실 시스템이 사용자가 VR 환경에서 스크린(410)(예를 들어, 가상 텔레비전 스크린, 가상 프로젝션 스크린 등)에서 쇼를 보기를 원한다고 결정하는 경우, 시스템은 사용자가 스크린(410)에서 쇼를 보는 데 주의를 집중하기를 원하고 다른 모든 주위를 산만하게 하는 방해 요소들(distractions)을 최소화하기를 원한다고 결정할 수 있다. 이와 같이, 시스템은 사용자 경험을 극대화하기 위해 사용자를 위한 분리된 경험을 생성하기 위해 사용자를 둘러싸는 VR 환경을 수정할 수 있다. 제한이 아닌 예로서, 시스템은 스크린(410)에서 쇼를 시청할 때 사용자의 경험을 분리시키기 위해(to isolate) 시스템이 조명(414)을 흐리게 하거나 끔으로써 임의의 그리고 모든 주위를 산만하게 하는 방해 요소들을 제거할 수 있다고 결정할 수 있다. 또한, 시스템은 알람(416), 라디오(418), 및 다른 관련 오브젝트들을 끄는 것과 같이 주의를 산만하게 하는 오브젝트들을 제거할 수 있다. 더욱이, 시스템은 다른 사용자들(예를 들어, 아래에서 더 자세히 논의되는 바와 같이 소셜 네트워크의 사용자들)과의 상호작용을 일시적으로 제한할 수 있다.
다른 예로서, 도 5에 도시된 바와 같이, 사용자가 VR 환경에서 책장(512)의 위치에 가까운 위치 쪽으로 움직이는 데(예를 들어, 책장(512) 앞에 서 있거나 소파(510)에 앉는 등) 기초하여, 인공 현실 시스템이 사용자가 VR 환경에서 책장(512)에서 책을 읽기를 원한다고 결정하는 경우, 시스템은 사용자가 책장(512)에서 책을 읽는 데 주의를 집중하기를 원하고 모든 다른 방해 요소들을 최소화하기를 원한다고 결정할 수 있다. 이와 같이, 시스템은 경험을 극대화하기 위해 사용자를 위한 분리된 경험을 생성하도록 사용자를 둘러싸는 VR 환경을 수정할 수 있다. 제한이 아닌 예로서, 시스템은 오버헤드 조명(516)을 밝게 하고 또한 방의 불필요한 조명을 줄이도록 플로어 램프(518)를 흐리게 함으로써 임의의 그리고 모든 방해 요소들을 제거할 수 있다. 또한, 시스템은 조용한 음악을 제공하기 위해 라디오(522)를 켤 수 있다. 더욱이, 시스템은 주의를 산만하게 하는 오브젝트들을 제거하고 다른 사용자들과의 상호작용들을 일시적으로 제한할 수 있다.
특정 실시예들에서, 인공 현실 시스템은 사용자의 오브젝트와의 상호작용에 기초하여 특정 오브젝트와의 상호작용에 초점을 맞추려는 사용자의 의도를 추론할 수 있다. 특정 실시예들에서, 시스템은 상황 정보 및 VR 환경에서 하나 이상의 트리거들(triggers)에 기초하여 사용자의 의도를 추론할 수 있으며, 이는 VR 환경에서 하나 이상의 오브젝트들(예를 들어, 가상 스크린, 책장)과의 상호작용의 사용자 레벨을 결정하는 것을 포함한다. 이러한 트리거들은 하나 이상의 오브젝트들과 사용자의 상호작용과 연관된 특정 조건들이 충족될 때 트리거되는 VR 환경에서 하나 이상의 오브젝트들과 연관된 명령들을 포함할 수 있다. 예로서, 도 4에 도시된 바와 같이, VR 환경에서 사용자가 스크린(410)과 상호작용하거나(예를 들어, 스크린(410) 상의 쇼를 제어하기 위해 컨트롤러를 사용함으로써, 켜거나 쇼를 재생하도록 구두로 스크린(410)에 요청함으로써 등) 또는 소파(420)와 상호작용(예를 들어, 스크린(410) 앞의 소파(420)에 앉음으로써)하는 데 기초하여 인공 현실 시스템이 사용자가 VR 환경에서 스크린(410)에서 쇼를 보기를 원한다고 결정하는 경우, 시스템은 사용자가 스크린(410)에서 쇼를 보는 데 주의를 집중하고 다른 모든 산만한 방해 요소들을 최소화(예를 들어, 위에서 논의된 바와 같이 시각적 속성, 오디오 속성 및/또는 소셜 네트워킹 속성을 조정하는 방법을 사용)하기를 원한다고 결정할 수 있다. 다른 예로서, 도 5에 도시된 바와 같이, 사용자가 VR 환경에서 책장(512)의 책과 상호작용(예를 들어, 책장(512)에서 책을 꺼냄으로써)하거나 또는 소파(510)와 상호작용(예를 들어, 소파(510)에 앉음으로써)하는 데 기초하여 인공 현실 시스템이 사용자가 VR 환경에서 책장(512)에서 책을 읽기를 원한다고 결정하는 경우, 시스템은 사용자가 책장(512)에서 책을 읽는 데 주의를 집중하기를 원하고 모든 다른 방해 요소들을 최소화(위에서 논의된 방법을 사용)하기를 원한다고 결정할 수 있다.
특정 실시예들에서, 인공 현실 시스템은 (예를 들어, 도 2와 관련하여 위에서 설명된 방법들을 사용하여) 사용자의 눈 움직임의 추적에 기초하여 특정 오브젝트와의 상호작용에 초점을 맞추려는 사용자의 의도를 추론할 수 있다. 특정 실시예들에서, 시스템은 상황 정보 및 VR 환경에서 하나 이상의 트리거들에 기초하여 사용자의 의도를 추론할 수 있으며, 이는 VR 환경에서 하나 이상의 오브젝트들(예를 들어, 가상 스크린, 책장)과 관련하여 사용자의 눈 움직임을 결정하는 것을 포함한다. 이러한 트리거들은 사용자의 눈 움직임을 추적하는 것과 연관된 특정 조건들이 충족될 때 트리거되는 VR 환경에서 하나 이상의 오브젝트들과 연관된 명령들을 포함할 수 있다. 더욱이, 사용자의 의도의 추론은 시각적 성분(예를 들어, 미리 결정된 사용자 비활동 시간의 기간)과 조합하여 사용자의 눈 움직임의 추적에 기초하여 결정될 수 있다. 예를 들어, 도 4에 도시된 바와 같이, 인공 현실 시스템이 사용자의 눈 움직임을 추적하고, 사용자가 미리 결정된 양의 시간 동안 VR 환경에서 스크린(410)을 바라보고 있다고 결정하면(예를 들어, 사용자의 눈이 스크린(410) 상의 한 지점(422)에 초점이 맞춰진 것으로 결정함으로써), 시스템은 사용자가 스크린(410)에서 쇼를 보는 데 주의를 집중하고 모든 다른 산만하게 하는 방해 요소들를 최소화하기를 원한다고 결정할 수 있다(예를 들어, 위에서 논의된 바와 같이 시각적 특성, 오디오 속성 및/또는 소셜 네트워킹 속성을 조정하는 방법을 사용). 상기 결정은 사용자가 비활동하는 미리 결정된 기간의 시간이 경과했음을 추가로 결정함으로써 이루어질 수 있다. 또 다른 예로서, 도 5에 도시된 바와 같이, 인공 현실 시스템이 사용자의 눈 움직임을 추적하고, 사용자가 VR 환경에서 책장(512)에서 책을 읽기를 원한다고 결정하는 경우(예를 들어, 사용자의 눈이 책장(512)의 한 지점(524)에 초점이 맞춰져 있다고 결정함으로써), 시스템은 사용자가 책장(512)에서 책을 읽는 데 주의를 집중하고 다른 모든 주의를 산만하게 하는 방해 요소들을 최소화하기를 원한다고 결정할 수 있다(예를 들어, 위에서 논의된 바와 같은 방법을 사용). 이러한 두 예들 모두에 대해, 상기 결정은 사용자와 연관된 시간 정보에 추가로 액세스함으로써 이루어질 수 있다(예를 들어, 사용자가 비활동하는 미리 결정된 기간의 시간이 경과한 것으로 결정).
특정 실시예들에서, VR 환경에 대한 수정들은 사용자가 상호작용하기를 원하는 특정 오브젝트의 오브젝트 유형(예를 들어, 스크린(410), 책장(512)에서 꺼낸 책 등)에 기초하여, 사용자가 참여하기를 원하는 활동 유형(예를 들어, 쇼 보기, 책 읽기 등)에 기초하여, 또는 특정 오브젝트가 연관되는 서비스 유형(예를 들어, 스크린(410)은 비디오 애플리케이션과 연관, 책장(512)의 책은 읽기 애플리케이션과 연관)에 기초하여, 다양한 오브젝트들에 코딩되거나 또는 연관될 수 있다. 또한, VR 환경에 대한 수정들은 사용자 지정되거나 또는 사용자 입력될 수 있으며, 사용자에 의해 변경 또는 업데이트될 수 있는 미리 설정된 설정들(예를 들어, 공장 설정)에 기초할 수 있다.
특정 실시예들에서, 인공 현실 시스템은 소셜 네트워킹 시스템에 의해 저장되거나 이용 가능한 하나 이상의 정보 아이템들에 기초하여 특정 오브젝트와의 상호작용에 초점을 맞추려는 사용자의 의도를 추론할 수 있다(아래에서 더 자세히 논의됨). 소셜 네트워킹 시스템에 의해 저장된 정보 아이템들의 예는 타겟 사용자(즉, 하나 이상의 오브젝트들과 상호작용하는 사용자)와 연관된 소셜 그래프 정보를 포함할 수 있다. 소셜 네트워킹 시스템에서 이용 가능한 정보 아이템들의 예들은 소셜 네트워킹 시스템에 의해 액세스할 수 있고 하나 이상의 클라이언트 시스템들, 하나 이상의 제3자 시스템들, 하나 이상의 네트워크들, 또는 이들의 임의의 조합에 저장된 정보 아이템들을 포함할 수 있다. 특정 실시예들에서, 의도가 추론될 수 있는 정보 아이템들은 소셜 그래프 정보(예를 들어, 노드 및 에지(nodes and edges), 친화도(affinities), 및 분리 정도(degrees of separation)), 콘텐트 오브젝트, 포스트(posts), 텍스트 데이터, 위치 정보, 미디어, 사용자 프로필 정보, 시간 정보, 및 프라이버시 설정을 포함할 수 있다. 특정 실시예들에서, 정보 아이템들 중 하나 이상은 다중 카테고리들에 속할 수 있다. 예를 들어, 정보 아이템들 중 하나 이상은 소셜 그래프 정보, 포스트, 및 미디어로 분류될 수 있다. 대안적으로, 특정 실시예들에서, 정보 아이템들 중 하나 이상은 하나의 카테고리에만 속할 수 있다.
특정 실시예들에서, 인공 현실 시스템은 소셜 네트워크의 하나 이상의 사용자들의 하나 이상의 관점들에 기초하여 특정 오브젝트와 상호작용하는 데 초점을 맞추려는 사용자의 의도를 추론할 수 있다. 예를 들어, 추론된 의도는 소셜 네트워크의 하나 이상의 사용자들에 기초하는 가상적인 사용자의 관점에 기초할 수 있다. 특정 실시예들에서, 가상적인 사용자는 소셜 네트워크의 모든 사용자에 기초할 할 수 있다. 제한이 아닌 예로서, 소셜 네트워크의 모든 사용자에 기초하는 가상적인 사용자가 도 4에 도시된 스크린(410) 근처에 서서 상호작용하고/하거나 시청함으로써(예를 들어, 눈 움직임을 추적하는 데 기초하여 결정) 쇼를 보려는 의도가 있다고 추론될 수 있다. 다른 예로서, 소셜 네트워크의 모든 사용자에 기초하는 가상적인 사용자가 책장(524)의 책과 상호작용하거나 책을 바라보고 있거나 또는 도 5에 도시된 바와 같이 책장(524) 옆의 소파(510)에 앉아 있음으로써 책을 읽을 의도가 있다고 추론될 수 있다.
또 다른 예로서, 특정 실시예들에서, 추론된 의도는 소셜 네트워크의 사용자들의 서브세트에 기초하는 가상적인 사용자의 관점에 기초할 수 있다. 특정 실시예들에서, 사용자들의 서브세트는, 이에 제한되는 것은 아니지만, 하나 이상의 수치적 제한, 하나 이상의 시간적 제한, 하나 이상의 위치 기반 제한, 하나 이상의 분리 정도, 사용자들의 서브세트를 포함하는 사용자들과 타겟 사용자 사이의 하나 이상의 제휴 계수(affiliation coefficients), 사용자들의 서브세트를 포함하는 사용자들과 타겟 사용자 사이의 하나 이상의 공통점, 또는 이들의 임의의 조합을 포함하는 임의의 적절한 수단에 의해 결정될 수 있다. 특정 실시예들에서, 공통점은, 이에 제한되는 것은 아니지만, 위치, 연령, 종교 또는 종교적 신념, 교육, 정치적 소속 또는 정치적 신념, 또는 공통의 관심사(예를 들어, 음식, 책, 영화, 또는 음악에 대한 관심사)을 포함하여, 사용자들의 서브세트를 포함하는 사용자들과 타겟 사용자 사이에 공유되는 임의의 특징 또는 특성을 포함할 수 있다. 예를 들어, 타겟 사용자와 공통 관심사를 공유하고 타겟 사용자와 2 분리 정도 내에(within two degrees of separation) 있으며 스크린(410)에 가까이 서 있고 스크린(410)과 상호작용하고 있거나 및/또는 스크린을 보고 있는(예를 들어, 눈 움직임 추적에 기초하여 결정됨) 소셜 네트워킹 시스템의 100명의 사용자들의 샘플 세트에 기초하여 가상적인 사용자가 스크린(410)에서 쇼를 시청할 의도를 가질 것으로 추론될 수 있다. 또 다른 예로서, 타겟 사용자의 연령에서 3년 내에 있고 타겟 사용자와 1 분리 정도 내에 있으며 타겟 사용자와 유사한 장르의 책들을 현재 읽고 있고 책장(524)의 책과 상호작용하고 있거나 책을 보고 있거나 또는 책장(524) 옆에 있는 소파(510)에 앉아 있는 25명의 사용자들의 샘플 세트에 기초하여 가상적인 사용자가 책장(524)의 책을 읽을 의도가 있다고 추론될 수 있다.
도 6은 사용자의 의도 및 상황 정보에 기초하여 VR 환경을 업데이트하는 예시적인 방법(600)을 도시한다. 상기 방법은 단계(610)에서 시작할 수 있으며, 여기에서 인공 현실 시스템은 하나 이상의 제2 가상 콘텐트를 포함하는 가상 영역에서 제1 가상 콘텐트를 제1 사용자에게 디스플레이할 수 있다. 단계(620)에서, 인공 현실 시스템은 제1 사용자 행동들 또는 상황 정보 중 하나 이상에 기초하여 제1 가상 콘텐트와 상호작용할 제1 사용자의 의도를 추론할 수 있다. 단계(630)에서, 인공 현실 시스템은 제1 가상 콘텐트와 상호작용할 제1 사용자의 의도의 추론에 기초하여 제2 가상 콘텐트 중 하나 이상과 연관된 하나 이상의 구성들을 조정할 수 있다. 특정 실시예들에서, 제1 사용자 행동은 제1 가상 콘텐트에 초점을 맞춘 사용자 눈 움직임, 제1 사용자에 의한 구두 요청, 제1 가상 콘텐트와 연관된 사용자 입력, 또는 제2 가상 콘텐트 중 하나 이상과 연관된 사용자 입력 중 하나 이상을 포함할 수 있다. 특정 실시예들에서, 상황 정보는 제1 사용자와 연관된 위치 정보, 제1 사용자와 연관된 움직임 정보, 제1 사용자와 연관된 시간 정보, 제1 가상 콘텐트와 연관된 미리 설정된 행동, 제1 가상 콘텐트가 연관되는 콘텐트 유형, 또는 제1 가상 콘텐트가 연관되는 서비스 유형 중 하나 이상을 포함할 수 있다. 예로서, 제1 사용자와 연관된 시간 정보는 사용자가 행동하지 않는 미리 결정된 기간의 시간을 포함할 수 있다.
특정 실시예들에서, 제1 사용자의 의도를 추론하는 것은 연관된 소셜 네트워크의 하나 이상의 사용자들에 적어도 부분적으로 기초할 수 있는 가상적인 사용자의 관점에 적어도 부분적으로 기초할 수 있다. 예로서, 가상적인 사용자는 소셜 네트워크의 사용자들 각각 또는 소셜 네트워크의 사용자들의 하나 이상의 서브세트들에 적어도 부분적으로 기초할 수 있다. 특정 실시예들에서, 제2 가상 콘텐트와 연관된 하나 이상의 구성들을 조정하는 것은, 하나 이상의 제2 가상 콘텐트 중 하나 이상의 시각적 속성들을 조정하는 것, 하나 이상의 제2 가상 콘텐트 중 하나 이상의 오디오 속성들을 조정하는 것, 또는 하나 이상의 제2 가상 콘텐트 중 하나 이상의 소셜 네트워킹 속성들을 조정하는 것 중 하나 이상을 포함한다. 예로서, 제2 가상 콘텐트 중 하나 이상에 대한 시각적 속성들 또는 오디오 속성들의 조정은 제2 가상 콘텐트가 연관되는 콘텐트의 유형 또는 제2 가상 콘텐트가 연관되는 서비스의 유형에 적어도 부분적으로 기초하여 결정될 수 있다. 또 다른 예로서, 소셜 네트워킹 속성들의 조정은 특정 실시예들에서 제2 가상 콘텐트와 연관된 소셜 네트워크로부터의 모든 통지들을 일시적으로 제한하거나 제거하는 것을 포함할 수 있고, 가상 영역은 가상 현실 환경에 상주할 수 있고, 제1 사용자는 가상 현실 환경에서 가상 사용자가 될 수 있다.
특정 실시예들은 적절한 경우 도 6의 방법의 하나 이상의 단계들을 반복할 수 있다. 본 개시가 특정 순서로 일어나는 것으로서 도 6의 방법의 특정 단계들을 설명하고 예시하지만, 본 개시는 임의의 적절한 순서로 일어나는 도 6의 방법의 임의의 적절한 단계들을 고려한다. 더욱이, 본 개시는 도 6의 방법의 특정 단계들을 포함하는 사용자의 의도 및 상황 정보에 기초하여 VR 환경을 업데이트하기 위한 예시적인 방법을 설명하고 도시하지만, 본 개시는 적절한 경우 도 6의 방법의 단계들 모두 또는 일부를 포함하거나 또는 전혀 포함하지 않을 수 있는, 임의의 적절한 단계들을 포함하여 사용자의 의도 및 상황 정보에 기초하여 VR 환경을 업데이트하기 위한 임의의 적절한 방법을 고려한다. 또한, 본 개시가 도 6의 방법의 특정 단계들을 수행하는 특정 구성 요소들, 디바이스들, 또는 시스템들을 설명하고 예시하지만, 본 개시는 도 6의 방법의 임의의 적절한 단계들을 수행하는 임의의 적절한 구성 요소들, 디바이스들, 또는 시스템들의 임의의 적절한 조합을 고려한다.
포털(Portals)
특정 실시예들에서, 하나 이상의 사용자들은 사용자가 액세스할 수 있고 서로 상호작용하기 위해 사용할 수 있는 공동 VR 공간을 생성하기를 원할 수 있다. 여기에 설명된 특정 실시예들은 각 사용자의 자유 공간을 사용하여 공동 VR 공간을 생성하기 위해 다양한 사용자 위치들 사이의 현실들을 병합하기 위한 인공 현실 시스템을 생성하는 것에 관한 것이다. 이러한 시스템은 먼저 특정 사용자의 자유 공간이 공동 VR 공간을 수용할 만큼 충분히 크다고 결정할 수 있다. 그런 다음, 시스템은 특정 사용자의 자유 공간의 맵을 매핑하거나 검색할 수 있으며, 사용자들 각각의 자유 공간 제한들을 수용하고 사용자들의 자유 공간들 사이의 오버랩을 극대화하는 공동 VR 공간에 대한 프레임워크를 결정 및 생성함으로써 공동 VR 공간에 참여하기를 원하는 다른 사용자들과 협력할 수 있다. 특정 실시예들에서, 공동 VR 공간이 생성되면, 시스템은 예를 들어 공동 VR 공간에 들어가는 데 사용될 수 있는 출입구(예를 들어, "포털")를 그려 사용자가 공동 VR 공간에 참여할 수 있게 할 것이다. 사용자가 공동 VR 공간에 들어가면, 이들은 공간에서 다른 사용자들과 상호작용하고 컬래버레이션을 할 수 있다. 특정 실시예들에서, 사용자의 사용 가능한 자유 공간을 넘어서기 때문에 사용자들 중 하나 이상이 액세스할 수 없게 될 수 있는 영역들을 차단(cordon)함으로써 공동 VR 공간의 사용자들의 움직임을 제한하는 데 가디언 박스들(guardian boxes)이 사용될 수 있다.
특정 실시예들에서, 공동 VR 공간을 생성하기 위해, 인공 현실 시스템은 먼저 사용자가 공동 VR 공간을 수용하기에 충분한 자유 공간이 있는지 여부를 결정할 수 있다. 예를 들어, 인공 현실 시스템은 측정을 위해 공간을 스캔하도록 사용자에게 시스템 컨트롤러(예를 들어, 컨트롤러(106))를 사용할 것을 요청함으로써 사용자가 최소량의 자유 공간을 갖는지 여부를 결정할 수 있다. 도 7은 제1 사용자가 다른 사용자들과 공동 VR 공간으로 병합하기 위한 공간(700)을 지정하는 예를 도시한다. 도 7에 도시된 바와 같이, 공간(700)은 책상(712), 의자(714), 침대(716), 및 옷장(718)을 포함하는 방(710)에서 자유 공간을 차단할 수 있는 다양한 아이템들을 포함한다. 방(710)의 중앙에는 공동 VR 공간을 생성하는 데 사용될 수 있는 빈 영역이 있다. 사용자(720)는 컨트롤러(722)(예를 들어, 컨트롤러(106))를 사용하여 빈 영역을 측정하기 위해 방(710)을 스캔할 수 있다. 예를 들어, 사용자(720)는 컨트롤러(722)를 사용하여 직선들(예를 들어, 도 7에 도시된 바와 같이), 오브젝트들의 윤곽을 따르는 선들, 다른 적절한 방법들 또는 이들의 조합것을 사용하여 빈 영역의 경계들의 윤곽을 나타냄으로써 빈 영역을 매핑할 수 있다. 다른 예로서, 인공 현실 시스템은 사용자에 의해 수동으로 입력될 수 있는 측정치들을 사용자에게 요청할 수 있다. 컨트롤러에 의해 얻어지거나 사용자가 입력한 측정치들에 액세스함으로써 인공 현실 시스템은 방(710)에서의 자유 공간의 영역을 계산할 수 있다. 시스템이 이러한 영역이 미리 결정된 최소 영역보다 크다고 결정하면, 시스템은 사용자가 공동 VR 공간에 사용될 영역을 계속 지정할 수 있도록 허용할 것이다. 반면에, 시스템이 공동 VR 공간에 참여하는 데 필요한 미리 결정된 최소 영역보다 작기 때문에 이 영역이 충분하지 않다고 결정하면, 시스템은 사용자에게 에러 메시지를 출력하고 사용자에게 더 큰 영익이 필요하다는 것을 통지할 것이다.
특정 실시예들에서, 시스템이 면적이 공동 VR 공간에 참여하는 데 필요한 미리 결정된 최소 면적보다 크다고 결정하면, 시스템은 사용자(720)에게 컨트롤러(722)를 사용하여 방의 빈 공간을 매핑하기 위해 방(710)을 스캔하도록 요청할 수 있다. 도 7에 도시된 바와 같이, 사용자(720)는 컨트롤러(722)를 사용하여 공동 VR 공간에 사용될 영역으로서 영역(724)(점선으로 도시됨)을 지정할 수 있다. 예를 들어, 시스템은, 최대량의 공간이 다양한 사용자의 공간들 사이의 오버랩을 결정하는 데 사용될 수 있도록, 사용자(720)에게 공동 VR 공간에서 사용할 수 있는 가능한 가장 큰 영역을 지정하도록 요청할 수 있다. 또 다른 예로서, 시스템은 평가 이외의 다른 영역들(예를 들어, 복도 영역, 보도를 위한 영역 등)을 남겨두고 사용자가 공동 VR 공간이 커버하기를 원하는 영역만을 지정하도록 사용자(720)에게 요청할 수 있다. 특정 실시예들에서, 방(710)의 이러한 스캔은 사용자(720)가 공동 VR 공간에 참여하기 위해 처음으로 요청할 때만 필요할 수 있다. 시스템이 방의 빈 공간을 매핑하면, 시스템은 나중에 사용할 수 있도록 그 정보를 저장할 수 있다. 특정 실시예들에서, 시스템은 사용자(720)에게 방의 빈 영역을 매핑하도록 요청하기 전에 먼저 이전에 저장된 방의 맵에 대해 저장된 정보를 확인할 수 있다. 시스템이 이전에 저장된 방의 맵을 찾으면, 시스템은 먼저 사용자(720)에게 이전에 저장된 방의 맵을 사용하기 원하는지 여부를 묻고/묻거나 추가의 측정들을 취하기 전에 이전에 저장된 방의 맵이 저장된 이후 방 구성에 변경 사항이 있는지 여부를 사용자(720)에게 요청할 수 있다.
특정 실시예들에서, 인공 현실 시스템이 사용자(720)가 하나 이상의 다른 사용자들과 공동 VR 공간을 생성하기를 원한다고 결정하고 사용자(720)가 방(710)에 충분한 자유 공간을 갖고 있다고 결정한 후, 인공 현실 시스템은 공동 VR 공간에 참여할 하나 이상의 다른 사용자들을 결정한다. 예를 들어, 인공 현실 시스템은 사용자(720)가 공동 VR 공간에 참여하기 위해 초대하기를 원하는 다른 사용자들을 사용자(720)에게 요청할 수 있다. 또 다른 예로서, 인공 현실 시스템은 다른 사용자들의 리스트를 사용자(720)에게 보내 이로부터 선택하도록 할 수 있다. 또 다른 예로서, 인공 현실 시스템은 다른 사용자들과 상호작용하기 위해 공동 VR 공간에 합류하는 데 관심을 표명한 다른 사용자들의 리스트를 유지할 수 있다. 다른 사용자들은 아래에서 더 자세히 논의되는 바와 같이, 소셜 그래프 정보(예를 들어, 노드 및 에지, 친화도, 및 분리 정도)를 통해 결정되는 사용자의 소셜 네트워크의 사용자들일 수 있다. 특정 실시예들에서, 다른 사용자들은, 이에 제한되는 것은 아니지만, 하나 이상의 시간적 제한(예를 들어, 사용자(720)와 동일한 기간 동안 인공 현실 시스템을 사용하는 다른 사용자들), 하나 이상의 위치 기반 제한(예를 들어, 지리적 거리 내 또는 특정 지리적 영역 내의 다른 사용자들), 하나 이상의 분리 정도, 사용자(720)와 다른 사용자들 사이의 하나 이상의 제휴 계수들, 사용자(720)와 다른 사용자들 사이의 하나 이상의 공통점, 또는 이들의 조합을 포함하는 임의의 적절한 수단에 의해 결정될 수 있다.
특정 실시예들에서, 인공 현실 시스템이 공동 VR 공간에 참여할 하나 이상의 다른 사용자들을 결정한 후, 시스템은 다른 사용자들 각각의 자유 공간의 공간 제한들에 관한 정보를 검색할 수 있다. 예를 들어, 시스템은 다른 사용자들 각각으로부터 공간 제한 정보를 요청하고 수신할 수 있다. 공간 제한 정보가 사용될 수 없는 경우, 시스템은 다른 사용자들의 시스템들에게 공간 제한 정보를 결정하도록 요청할 수 있다(위에서 설명한 방법과 유사하게). 도 8은 제2 사용자가 다른 사용자들과 공동 VR 공간으로 병합하기 위한 공간(800)을 지정하는 예를 도시한다. 도 8에 도시된 바와 같이, 공간(800)은 텔레비전 스탠드(812), 책장(814), 및 소파(816)를 포함하여 방(810)의 자유 공간을 차단할 수 있는 다양한 아이템들을 포함한다. 방(810)의 중앙에는 공동 VR 공간을 생성하는 데 사용될 수 있는 빈 영역이 있다. 사용자(818)는 컨트롤러(820)(예를 들어, 컨트롤러(106))를 사용하여 빈 영역을 측정하기 위해 방(810)을 스캔할 수 있다. 예를 들어, 사용자(818)는 컨트롤러(820)를 사용하여 직선들(예를 들어, 도 8에 도시된 바와 같이), 오브젝트들의 윤곽을 따르는 선들, 다른 적절한 방법들 또는 이들의 조합것을 사용하여 빈 영역의 경계들의 윤곽을 나타냄으로써 빈 영역을 매핑할 수 있다. 시스템이 면적이 공동 VR 공간에 참여하는 데 필요한 미리 결정된 최소 면적보다 크다고 결정하면, 시스템은 사용자(818)에게 컨트롤러(820)를 사용하여 방의 빈 공간을 매핑하기 위해 방(810)을 스캔하도록 요청할 수 있다. 도 8에 도시된 바와 같이, 사용자(818)는 컨트롤러(820)를 사용하여 공동 VR 공간에 사용될 영역으로서 영역(822)(점선으로 도시됨)을 지정할 수 있다.
공동 VR 공간에 참여하기를 원하는 다른 모든 사용자들에 대한 공간 제한 정보가 수신되면, 인공 현실 시스템은 사용자들 각각의 자유 공간 제한들을 수용하고 사용자들의 자유 공간들 사이의 오버랩을 극대화하는 공동 VR 공간에 대한 프레임워크를 결정하고 생성할 수 있다. 도 9은 예시적인 병합된 VR 환경(900)을 도시한다. 도 9에 도시된 바와 같이, 병합된 VR 환경(900)은 사용자(720)와 사용자(818)의 자유 공간들 사이의 오버랩을 극대화함으로써 생성된다. 도 9에 실선으로 도시된 사용자(720)의 방(710)의 자유 공간은 책상(712), 의자(714), 침대(716), 옷장(718)을 포함하는 방(710) 내의 다양한 아이템들에 의해 차단된다. 또한, 밝은 점선을 사용하여 도 9에 도시된 바와 같이, 사용자(818)의 방(810)의 자유 공간은 텔레비전 스탠드(812), 책장(814), 소파(816)를 포함하는 방(810) 내의 다양한 아이템들에 의해 차단된다. 도 9에 도시된 바와 같이, 방(710)은 방(810)보다 더 큰 영역과 더 큰 자유 공간 영역을 가지므로, 병합된 VR 환경(900)은 방(810)의 자유 공간 영역에 의해 제한된다. 방(710)과 방(810) 사이의 최대 오버랩 영역(910)을 결정할 때, 인공 현실 시스템은 방(710)과 연관된 최대 자유 공간과 방(810)과 연관된 최대 자유 공간 사이의 최대 오버랩을 결정할 수 있다. 이러한 최대 오버랩 영역(910)은 사용자들(720, 818)이 서로 및 다른 사용자들과 상호작용하기 위해 함께 사용할 수 있는 공동 VR 공간으로 사용된다. 특정 실시예들에서, 공동 VR 공간으로 사용되는 최대 오버랩 영역은 정사각형, 직사각형, 원형, 다각형, 또는 이용 가능한 자유 공간을 극대화하는 다른 적절한 영역일 수 있다.
특정 실시예들에서, 공동 VR 공간으로 사용되는 최대 오버랩 영역은 사용자들이 사용자 방의 특정 영역들에 가까이 이동하는 데 부딪히지 않도록 차단된 특정 영역들을 포함할 수 있다(예를 들어, 스토브 주변 영역이 자유 공간 영역에 위치하더라도 스토브 주변 영역을 차단함). 예를 들어, 이러한 영역들은 병합된 VR 환경에 디스플레이되는 가디언 박스들 사용하여 차단될 수 있다. 가디언 박스들은 병합된 VR 환경 다이어트의 사용자들에게 해당 영역이 액세스가 제한됨을 알리는 시각적 신호일 수 있다.
특정 실시예들에서, 공동 VR 공간이 생성되면, 인공 현실 시스템은 사용자들(720, 818)에게 공동 VR 공간이 이용 가능하고 서로 상호작용하기 위해 액세스 가능하다는 것을 통지할 수 있다. 예를 들어, 사용자들(720, 818)에게 통지하는 것은 사용자들(720, 818)이 공동 가상 공간에 가상으로 액세스할 수 있게 하는 포털 오브젝트를 생성하기 위한 명령들을 사용자(720, 818)에게 보내는 것을 포함할 수 있다. 도 10a 및 도 10b는 병합된 VR 환경에 액세스하기 위해 공간(1000)에 포털 오브젝트를 생성하는 예를 도시한다. 특정 실시예들에서, 포털 오브젝트를 생성하는 것은, 사용자들(720, 818) 각각이 공동 가상 공간에 가상으로 액세스할 수 있도록 하는 그들 각자의 방들(710 및 810)의 영역 내에 가상 출입구를 그리라는 명령들을 인공 현실 시스템이 사용자들(720 및 818) 모두에게 보내는 것을 포함할 수 있다. 도 10a에 도시된 바와 같이, 공간(1000)은 텔레비전 스탠드(1012), 책장(1014), 및 소파(1016)를 포함하여 방(1010)의 자유 공간을 차단할 수 있는 다양한 아이템들을 포함한다. 방(1010)의 중앙에는 공동 VR 공간을 생성하는 데 사용되는 빈 영역(1018)이 있다. 인공 현실 시스템이 사용자(1020)에게 공동 VR 공간이 이용 가능하다는 것을 통지할 때, 인공 현실 시스템은 공동 VR 공간에 액세스하기 위해 포털 오브젝트를 생성하라는 명령들을 사용자(1020)에게 보낼 수 있다. 예로서, 도 10a에 도시된 바와 같이, 인공 현실 시스템은 공동 VR 공간에 액세스하기 위해 포털 오브젝트(1022)(예를 들어, 문)를 생성하라는 명령들을 사용자(1020)에게 보낼 수 있다. 포털 오브젝트(1022)는 포털 오브젝트(1022)의 아웃라인을 추적하거나, 선택 리스트에서 포털 오브젝트(1022)를 선택하거나 또는 임의의 다른 적절한 수단을 사용함으로써 컨트롤러(1024)(예를 들어, 컨트롤러(106))를 사용하여 사용자(1020)에 의해 생성될 수 있다. 포털 오브젝트(1022)가 생성되면, 도 10b에 도시된 바와 같이, 사용자(1020)는 공동 VR 공간에 액세스하기 위해 포털 오브젝트(1022)와 상호작용할 수 있다(예를 들어, 문을 열고 출입구(1026)를 통해 걸어감).
도 11은 다른 사용자들과 인공 현실 시스템을 병합하기 위한 공간을 지정하는 예시적인 방법을 도시한다. 상기 방법은 단계(1110)에서 시작할 수 있으며, 여기에서 인공 현실 시스템은 제1 사용자로부터 하나 이상의 제2 사용자들과 함께 사용할 공동 가상 공간을 생성하라는 요청을 수신할 수 있다. 단계(1120)에서, 인공 현실 시스템은 제1 방과 연관된 공간 제한 및 제1 방 내의 하나 이상의 아이템들의 위치들에 적어도 부분적으로 기초하여 제1 사용자와 연관된 제1 방 내의 제1 영역을 결정할 수 있다. 단계(1130)에서, 인공 현실 시스템은 제2 사용자들 각각에 대한 하나 이상의 제2 방들과 연관된 정보를 검색할 수 있다. 단계(1140)에서, 인공 현실 시스템은 제1 방의 제1 영역 및 제2 방들 각각과 연관된 정보에 기초하여 공동 가상 공간을 생성할 수 있다. 단계(1150)에서, 인공 현실 시스템은 제1 사용자 및 하나 이상의 제2 사용자들 각각에게 공동 가상 공간에 대한 액세스를 제공할 수 있다.
특정 실시예들에서, 인공 현실 시스템은 하나 이상의 제2 방들과 연관된 정보를 검색하기 전에, 제1 방의 제1 영역이 미리 결정된 최소 영역과 같거나 큰지 여부를 결정할 수 있다. 특정 실시예들에서, 제1 영역은 공간 제한들 및 제1 방에 있는 하나 이상의 아이템들의 위치들을 평가한 후 제1 방과 연관된 최대 자유 공간을 계산함으로써 결정될 수 있다. 제2 방들과 연관된 검색된 정보는 적어도, 제2 사용자들 각각에 대한 제2 방들 각각과 연관된 공간 제한들, 및 제2 사용자들 각각에 대한 제2 방들 각각에 있는 하나 이상의 아이템들의 위치들을 포함할 수 있다. 인공 현실 시스템은 공간 제한들 및 하나 이상의 아이템들의 위치들에 적어도 부분적으로 기초하여 하나 이상의 제2 방들 각각에 대한 제2 영역을 결정할 수 있고, 제2 영역은 공간 제한들 및 하나 이상의 제2 방들 각각에 있는 하나 이상의 아이템들의 위치들을 평가한 후 하나 이상의 제2 방들 각각과 연관된 최대 자유 공간을 계산함으로써 결정된다. 공동 가상 공간은 제1 방과 연관된 최대 자유 공간과 하나 이상의 제2 방들 각각과 연관된 최대 자유 공간 사이의 최대 오버랩을 결정함으로써 생성될 수 있다.
특정 실시예들에서, 공동 가상 공간에 대한 액세스를 제공하는 것은 공동 가상 공간이 사용 가능하다는 것을 제1 사용자 및 하나 이상의 제2 사용자들 각각에게 통지하는 것을 포함한다. 제1 사용자 및 하나 이상의 제2 사용자들 각각에게 통지하는 것은 제1 사용자 및 하나 이상의 제2 사용자들 각각이 공동 가상 공간에 가상으로 액세스하도록 허용하는 포털 오브젝트를 생성하도록 하는 명령들을 제1 사용자 및 하나 이상의 제2 사용자들 각각에게 보내는 것을 포함할 수 있다. 특정 실시예들에서, 포털 오브젝트를 생성하는 것은 제1 사용자가 공동 가상 공간에 가상으로 액세스하도록 허용하는 제1 방의 제1 영역 내에 가상 출입구를 그리라는 명령들을 제1 사용자에게 보내는 것, 및 제2 사용자들 각각이 공동 가상 공간에 가상으로 액세스하도록 허용하는 제2 방들 각각에 가상 출입구를 그리라는 명령들을 제2 사용자들 각각에게 보내는 것을 포함할 수 있다. 특정 실시예들에서, 공동 가상 공간은 가상 현실 환경에 상주할 수 있으며, 제1 사용자 및 하나 이상의 제2 사용자들 각각은 가상 현실 환경의 가상 사용자들일 수 있다.
특정 실시예들은 적절한 경우 도 11의 방법의 하나 이상의 단계들을 반복할 수 있다. 본 개시가 특정 순서로 일어나는 것으로서 도 11의 방법의 특정 단계들을 설명하고 예시하지만, 본 개시는 임의의 적절한 순서로 일어나는 도 11의 방법의 임의의 적절한 단계들을 고려한다. 더욱이, 본 개시는 도 11의 방법의 특정 단계들을 포함하여 인공 현실 시스템을 다른 사용자들과 병합하기 위한 공간을 지정하기 위한 예시적인 방법을 설명하고 예시하지만, 본 개시는 적절한 경우, 도 11의 방법의 단계들 중 전부, 일부를 포함하거나 또는 전혀 포함하지 않을 수 있는 임의의 적절한 단계들을 포함하여 인공 현실 시스템을 다른 사용자들과 병합하기 위한 공간을 지정하기 위한 임의의 적절한 방법을 고려한다. 또한, 본 개시가 도 11의 방법의 특정 단계들을 수행하는 특정 구성 요소들, 디바이스들, 또는 시스템들을 설명하고 예시하지만, 본 개시는 도 11의 방법의 임의의 적절한 단계들을 수행하는 임의의 적절한 구성 요소들, 디바이스들, 또는 시스템들의 임의의 적절한 조합을 고려한다.
공유된 공간들(Shared Spaces)
특정 실시예들에서, 하나 이상의 사용자들은 모든 사용자들이 볼 수 있고 동적으로 상호작용할 수 있는 콘텐트를 사용하여 서로 컬래버레이션을 원할 수 있다. 여기에 설명된 특정 실시예들은 사용자 상호작용, 커뮤니케이션, 및 다른 사용자들과의 협력(예를 들어, 프로젝트 컬래버레이션을 위해)을 향상시키기 위해 실제(real life)의 콘텐트 및 오브젝트들을 디지털/VR 환경의 것들과 동기화하는 인공 현실 시스템에 관한 것이다. 이러한 시스템은 먼저 사용자가 다른 사용자들과 컬래버레이션하기 위해 사용자의 실제 환경 내에서 어떤 오브젝트들을 사용하기를 원할 수 있는지를 결정할 수 있다. 그런 다음, 시스템은 VR 공유 공간의 다른 사용자들이 오브젝트들을 보고 상호작용할 수 있도록 VR 공유 공간의 UI 내의 실제 오브젝트들을 실시간으로 카피하고 제시할 수 있다.
특정 실시예들에서, 인공 현실 시스템은 먼저 사용자가 다른 사용자들과 커뮤니케이션하고 컬래버레이션하는 데 사용될 수 있는 오브젝트와 상호작용하는지 여부를 결정할 수 있다. 예로서, 시스템은 사용자가 상호작용하고 있는 오브젝트가 다른 사용자들에게 보여지고 그들과 공유될 수 있거나 또는 다른 사용자들에게 보여지고 그들과 공유될 수 있는 오브젝트로서 지정되었음을 검출할 수 있다. 대안적으로, 사용자는 이미지, 비디오, 실시간 뷰, 또는 오브젝트의 임의의 다른 적절한 프레젠테이션을 다른 사용자에게 제시함으로써 다른 사용자들과 오브젝트를 공유하도록 시스템을 요청할 수 있다. 도 12는 제1 사용자가 인공 현실 시스템에서 다른 사용자들과 공유하기 위한 오브젝트를 지정하는 것을 도시한다. 도 12에 도시된 바와 같이, 사용자(1210)는 디바이스(1214)를 사용하여 독립형 스크린(1212)과 상호작용하고 있다. 예를 들어, 스크린(1212)은 가상 현실 시스템과 연결되지 않은 스크린(예를 들어, 칠판, 화이트보드 등)일 수 있다. 또 다른 예로서, 스크린(1212)은 스크린에 기록된 모든 정보는 시스템을 통해 카피, 저장 및 액세스될 수 있는 가상 현실 시스템에 연결된 스크린일 수 있다. 또한, 예로서, 디바이스(1214)는 사용자(1210)가 실세계에서 스크린(1212)과 상호작용할 수 있게 하는 물리적 디바이스(예를 들어, 쓰기 디바이스, 포인터 디바이스 등)일 수 있다. 다른 예로서, 디바이스(1214)는 사용자(1210)가 실세계(예를 들어, 전자 포인터 디바이스) 또는 가상 세계(예를 들어, 컨트롤러(106))에서 스크린(1212)과 상호작용할 수 있게 하는 전자 디바이스일 수 있다.
특정 실시예들에서, 도 12에 도시된 바와 같이, 사용자(1210)를 둘러싸는 영역에는 책장(1216), 침대(1218), 및 책상(1220)도 있다. 방에 있는 이러한 오브젝트들 중에서, 인공 현실 시스템은 책장(1216) 및 침대(1218)가 인공 현실 시스템에서 다른 사용자들과 정보를 공유하기 위한 오브젝트들로서 지정될 오브젝트들이 아니라고 결정할 수 있는 반면, 책상(1220)은 인공 현실 시스템에서 다른 사용자들을 위해 정보를 공유하기 위한 오브젝트로서 지정될 수 있다. 또한, 사용자(1210)는 스크린(1212)을 다른 사용자들과 정보를 공유하기 위한 오브젝트로 지정할 수 있다. 특정 실시예들에서, 인공 현실 시스템은 책장(1216), 침대(1218), 및 책상(1220)의 포지션들, 위치들, 및/또는 지향방향들을 결정하기 위해 사용자(1210)를 둘러싸는 환경에 액세스할 수 있고, 스크린(1212)과 함께 가상 현실 디스플레이에 이러한 오브젝트들을 포함할 수 있다. 이러한 것은 스크린(1212)의 위치에 대한 보다 사실적인 장면 및 컨텍스트를 사용자에게 제공할 수 있으므로, 사용자는 3D 공간에 떠다니는 스크린을 보고 있는 것이 아니다.
도 13은 제2 사용자가 인공 현실 시스템에서 다른 사용자들과 공유하기 위한 오브젝트를 지정하는 것을 도시한다. 도 13에 도시된 바와 같이, 사용자(1310)는 방의 벽에 위치한 스크린(1312)과 상호작용하고 있다. 예를 들어, 스크린(1312)은 벽에 위치하는 물리적인 스크린일 수 있다. 대안적으로, 스크린(1312)은 벽 상에 위치되고 인공 현실 시스템 또는 다른 프로젝션 시스템의 구성요소로부터 투영된 프로젝션 스크린(projected screen)일 수 있다. 또한, 상기한 예와 유사하게, 스크린(1312)은 가상 현실 시스템과 연결되지 않은 스크린(예를 들어, 물리적 스크린의 경우)일 수도 있거나, 또는 스크린에 기록된 모든 정보가 시스템을 통해 카피, 저장 및 액세스할 수 있는(예를 들어, 프로젝션 스크린의 경우) 가상 현실 시스템과 연결된 스크린일 수도 있다. 사용자(1310)는 사용자(1310)가 실세계에서 스크린(1312)과 상호작용하도록 허용하는 물리적 디바이스일 수 있는 디바이스(1314), 또는 사용자(1310)가 실세계(예를 들어, 전자 포인터 디바이스) 또는 가상 세계(예를 들어, 컨트롤러(106))에서 스크린(1312)과 상호작용하도록 허용하는 전자 디바이스를 사용하여 스크린(1312)과 상호작용할 수 있다.
특정 실시예들에서, 도 13에 도시된 바와 같이, 사용자(1210)를 둘러싸는 영역에는 책장(1316), 텔레비전 스텐드(1318), 및 소파(1320)도 있다. 방에 있는 이러한 오브젝트들 중에서, 인공 현실 시스템은 책장(1316) 및 소파(1320)가 인공 현실 시스템에서 다른 사용자들과 정보를 공유하기 위한 오브젝트들로서 지정될 오브젝트들이 아니라고 결정할 수 있는 반면, (관련 텔레비전이 있는) 텔레비전 스텐드(1318)는 인공 현실 시스템에서 다른 사용자들을 위해 정보를 공유하기 위한 오브젝트로서 지정될 수 있다. 또한, 사용자(1310)는 스크린(1312)을 다른 사용자들과 정보를 공유하기 위해 및/또는 다른 사용자들로부터 공유된 정보를 수신하기 위한 오브젝트로 지정할 수 있다. 특정 실시예들에서, 인공 현실 시스템은 책장(1316), 텔레비전 스텐드(1318), 및 소파(1320)의 포지션들, 위치들, 및/또는 지향방향들을 결정하기 위해 사용자(1310)를 둘러싸는 환경에 액세스할 수 있고, 스크린(1312)과 함께 가상 현실 디스플레이에 이러한 오브젝트들을 포함할 수 있다. 위에서 논의된 바와 같이, 이러한 것은 스크린(1312)의 위치에 대한 보다 사실적인 장면 및 컨텍스트를 사용자에게 제공할 수 있으므로, 사용자는 3D 공간에 떠다니는 스크린을 보고 있는 것이 아니다.
특정 실시예들에서, 인공 현실 시스템이 사용자가 다른 사용자들과 커뮤니케이션하고 컬래버레이션하는 데 사용될 수 있는 오브젝트와 상호작용하고 있다고 결정하면, 인공 현실 시스템은 사용자가 하나 이상의 다른 사용자들과 인터랙티브 오브젝트의 디스플레이를 공유하기 원하는지 여부를 결정하기 위해 사용자에게 질의(query)를 보낼 수 있다. 대안적으로, 인공 현실 시스템은 인터랙티브 오브젝트의 디스플레이를 하나 이상의 다른 사용자들과 공유하도록 요청하는 사용자로부터 요청을 수신할 수 있다. 두 상황 모두에서, 인공 현실 시스템은 사용자가 인터랙티브 오브젝트의 디스플레이 공유에 참여하는 데 있어 어느 다른 사용자들을 초대하기를 원하는지 사용자에게 요청할 수 있다. 또 다른 예로서, 인공 현실 시스템은 다른 사용자들의 리스트를 사용자에게 보내 이로부터 선택하도록 할 수 있다. 또 다른 예로서, 인공 현실 시스템은 인터랙티브 오브젝트의 디스플레이 공유에 참여하는 데 관심을 표명한 다른 사용자들의 리스트를 유지할 수 있다. 다른 사용자들은 아래에서 더 자세히 논의되는 바와 같이, 소셜 그래프 정보(예를 들어, 노드 및 에지, 친화도, 및 분리 정도)를 통해 결정되는 사용자의 소셜 네트워크의 사용자들일 수 있다. 특정 실시예들에서, 다른 사용자들은, 이에 제한되는 것은 아니지만, 하나 이상의 시간적 제한(예를 들어, 사용자와 동일한 기간 동안 인공 현실 시스템을 사용하는 다른 사용자들), 하나 이상의 위치 기반 제한(예를 들어, 지리적 거리 내 또는 특정 지리적 영역 내의 다른 사용자들), 하나 이상의 분리 정도, 사용자와 다른 사용자들 사이의 하나 이상의 제휴 계수들, 사용자와 다른 사용자들 사이의 하나 이상의 공통점, 또는 이들의 조합을 포함하는 임의의 적절한 수단에 의해 결정될 수 있다.
도 14a 및 14b는 공유된 오브젝트를 보기 위한 다양한 사용자들에 대한 다양한 환경들(1400, 1450)을 도시한다. 특정 실시예들에서, 사용자는 실제 화이트보드에 글을 쓸 수 있고, 인공 현실 시스템은 화이트보드 상의 글을 가상 화이트보드와 동기화하여 가상 현실의 다른 사용자들이 (예를 들어, 위에서 설명된 것과 유사한 VR 공유 공간에서) 사용자 및 화이트보드 상의 콘텐트를 보고 상호작용할 수 있다. 도 14에 도시된 바와 같이, 사용자(1410)는 실제 화이트보드와 상호작용하고 다른 사용자들(1414, 1416)과 컬래버레이션하기 위해 콘텐트를 작성하고 디스플레이하기 위해 화이트보드를 사용하는 사용자일 수 있다. 다른 사용자들(1414 및 1416)은 실제 화이트보드의 카피인 가상 화이트보드(1412) 상의 콘텐트 디스플레이를 보기 위해 헤드셋들(1418 및 1420)을 각각 사용하는 가상 사용자들일 수 있다. 사용자들(1414, 1416)은 (위에서 논의된 바와 같이) VR 공유 공간을 통해 디스플레이된 화이트보드(1412)에 액세스할 수 있다. 특정 실시예들에서, 가상 현실에서 화이트보드를 디스플레이하기 위해, 인공 현실 시스템은 실제 화이트보드의 카피로서 가상 화이트보드(1412)(예를 들어, 가상 아이템)를 생성한 다음, 가상 현실 환경(예를 들어, VR 공유 공간)에서 가상 화이트보드(1412)를 사용자들(1414 및 1416)에 대해 디스플레이할 수 있다. 또한, 인공 현실 시스템은 사용자(1410)의 카피를 생성하거나 또는 사용자(1410)와 연관된 아바타를 사용하여 가상 화이트보드(1412)와 함께 가상 현실 환경에 디스플레이되도록 할 수도 있다. 특정 실시예들에서, 실제 화이트보드에 변경이 이루어지면(예를 들어, 사용자(1410)가 화이트보드에 더 많은 콘텐트를 작성함), 인공 현실 시스템은 실제 화이트보드와 동일한 변경들을 포함하도록 가상 화이트보드(1412)를 업데이트할 것이다. 이러한 것은 실제의 콘텐트 및 오브젝트들을 가상 현실 환경에서의 이들의 대응하는 버전들과 동기화하는 것을 가능하게 하여 사용자들 사이의 상호작용, 커뮤니케이션, 및 컬래버레이션을 향상시키는 혼합 현실 환경을 만들 수 있다. 예로서, 사용자들(1414, 1416)은 가상 화이트보드(1412) 상의 콘텐트와 연관된 코멘트를 제공할 수 있으며, 이는 사용자(1410)에게 개별적으로 보내지거나 가상 화이트보드(1412)를 보고 있는 모든 사용자들에게 보여질 수 있다.
특정 실시예들에서, 사용자가 실제 화이트보드에 글을 쓰고 있고 인공 현실 시스템이 화이트보드 상의 글을 가상 화이트보드와 동기화하여 가상 현실의 다른 사용자들이 (예를 들어, 위에서 설명된 것과 유사한 VR 공유 공간에서) 사용자 및 화이트보드 상의 콘텐트를 보고 상호작용할 수 있을 때, 실제 화이트보드의 카피만이 가상 현실에 디스플레이된다(사용자(1410)는 아님). 대신에, 사용자들(1414, 1416) 및 추가의 신규 사용자(1452)는 헤드셋들(1418, 1420, 1454)을 각각 통해 가상 화이트보드(1412)만을 볼 수 있고, 가상 화이트보드(1412) 상의 콘텐트와만 상호작용한다. 위에서 논의된 실시예와 유사하게, 실제 화이트보드에 변경이 이루어지면(예를 들어, 사용자(1410)가 화이트보드에 더 많은 콘텐트를 작성함), 인공 현실 시스템은 실제 화이트보드와 동일한 변경들을 포함하도록 가상 화이트보드(1412)를 업데이트할 것이다. 이러한 것은 실제의 콘텐트 및 오브젝트들을 가상 현실 환경에서의 이들의 대응하는 버전들과 동기화하는 것을 가능하게 하여 사용자들 사이의 상호작용, 커뮤니케이션, 및 컬래버레이션을 향상시키는 혼합 현실 환경을 만들 수 있다. 예로서, 사용자들(1414, 1416 및 1454)은 가상 화이트보드(1412) 상의 콘텐트와 연관된 코멘트를 제공할 수 있으며, 이는 사용자(1410)에게 개별적으로 보내지거나 가상 화이트보드(1412)를 보고 있는 모든 사용자들에게 보여질 수 있다.
특정 실시예들에서, 또 다른 예로서, 사용자는 자신의 컴퓨터 스크린에 있는 특정 콘텐트에 관해 질문을 할 수 있고, 컴퓨터 스크린 상의 콘텐트에 관한 질문에 답하거나 문제를 해결하는 것을 돕도록 VR 공유 공간에 다른 사용자를 초대하기 위해 컴퓨터 스크린을 가상 컴퓨터 스크린과 동기화하도록 시스템에 요청할 수 있다. 위에서 논의된 상황과 유사하게, 인공 현실 시스템은 컴퓨터 스크린의 디스플레이를 하나 이상의 제2 사용자들과 공유하기 위한 제1 사용자로부터의 요청을 수신할 수 있다. 예로서, 이러한 것은 제1 사용자가 컴퓨터에서 겪고 있는 컴퓨터 문제에 기인할 수 있으며, 문제를 해결하는 가장 빠른 방법은 (전화로 문제를 설명하는 대신에) 컴퓨터를 시각적으로 평가하도록 다른 사용자에게 요청하는 것이 될 수 있다. 또 다른 예로서, 이러한 것은 컴퓨터 스크린 상의 콘텐트를 다른 사용자와 공유하기를 원하는 제1 사용자에 기인할 수 있다(예를 들어, 프로젝트 컬래버레이션을 위해). 이와 같이, 인공 현실 시스템은 가상 환경에서 디스플레이할 컴퓨터 스크린의 카피를 생성한 다음, 제2 사용자가 가상 환경에서 가상 컴퓨터 스크린을 볼 수 있도록 할 수 있다. 제1 사용자에 의해 컴퓨터 스크린 상에 디스플레이된 콘텐트에 대한 변경이 이루어지면, 가상 컴퓨터 스크린은 해당 변경 사항들을 디스플레이하도록 업데이트된다. 위에서 논의된 실시예와 유사하게, 이러한 것은 실제의 콘텐트 및 오브젝트들을 가상 현실 환경에서의 이들의 대응하는 버전들과 동기화하는 것을 가능하게 하여 사용자들 사이의 상호작용, 커뮤니케이션, 및 컬래버레이션을 향상시키는 혼합 현실 환경을 만들 수 있다.
도 15는 인공 현실 시스템에서 다양한 오브젝트들을 지정하고 다른 사용자들과 공유하기 위한 예시적인 방법을 도시한다. 상기 방법은 단계(1510)에서 시작할 수 있으며, 여기에서 인공 현실 시스템은 제1 인터랙티브 아이템의 디스플레이를 하나 이상의 사용자들과 공유하라는 요청을 수신할 수 있다. 단계(1520)에서, 인공 현실 시스템은 제1 인터랙티브 아이템의 카피로서 제1 가상 아이템을 생성할 수 있다. 단계(1530)에서, 인공 현실 시스템은 가상 현실 환경의 제1 가상 아이템을 하나 이상의 사용자들의 서브세트에 디스플레이할 수 있고, 여기서 제1 인터랙티브 아이템에 대해 이루어진 변경이 수신되면, 가상 현실 환경에서 제1 가상 아이템의 디스플레이는 제1 인터랙티브 아이템과 동일한 변경 사항들을 포함하도록 업데이트된다. 특정 실시예들에서, 제1 인터랙티브 아이템의 디스플레이를 공유하기 위한 요청은 제1 인터랙티브 아이템과 현재 상호작용하고 있는 하나 이상의 사용자들 중 제1 사용자로부터의 것일 수 있다. 특정 실시예들에서, 제1 인터랙티브 아이템의 디스플레이를 공유하기 위한 요청은 하나 이상의 제2 사용자로부터의 것일 수 있으며, 하나 이상의 제2 사용자는 가상 현실 환경과 연관된 가상 사용자이다. 특정 실시예들에서, 제1 인터랙티브 아이템의 디스플레이를 공유하라는 요청을 수신하기 전에, 인공 현실 시스템은 한 환경에서 하나 이상의 인터랙티브 아이템들을 결정할 수 있고, 가상 현실 환경에서 디스플레이할 인터랙티브 아이템들 중 적어도 하나의 선택을 위해 인터랙티브 아이템들의 리스트를 제1 사용자에게 보낼 수 있다. 특정 실시예들에서, 하나 이상의 사용자들의 서브세트는 가상 현실 환경의 가상 사용자들을 포함할 수 있다.
특정 실시예들에서, 제1 인터랙티브 아이템은 실세계 환경에 위치할 수 있다. 인공 현실 시스템은 실세계 환경에서 제1 인터랙티브 아이템을 둘러싼 하나 이상의 다른 아이템들과 관련하여 제1 인터랙티브 아이템의 위치에 액세스할 수 있고, 하나 이상의 다른 아이템들의 카피들로서 하나 이상의 제2 가상 아이템들을 생성할 수 있고, 실세계 환경에서 하나 이상의 다른 아이템들과 연관된 제1 인터랙티브 아이템의 위치에 기초하여 가상 현실 환경에서 제1 가상 아이템 및 하나 이상의 제2 가상 아이템들을 디스플레이할 수 있다. 또한, 인공 현실 시스템은 실세계 환경에서 제1 인터랙티브 아이템의 지향방향에 액세스할 수 있고, 실세계 환경에서 제1 인터랙티브 아이템의 지향방향에 기초하여 가상 현실 환경에서 제1 가상 아이템을 디스플레이할 수 있다. 특정 실시예들에서, 인공 현실 시스템은 사용자들의 서브세트 중 하나 이상의 사용자들로부터 제1 가상 아이템과 연관된 코멘트들을 수신할 수 있고, 실세계 환경에서 제1 인터랙티브 아이템과 현재 상호작용하고 있는 하나 이상의 사용자들 중 제1 사용자에게 디스플레이될 코멘트들을 보낼 수 있다. 코멘트들은 오디오 코멘트, 비디오 코멘트, 또는 서면 코멘트 중 하나 이상을 포함할 수 있다.
특정 실시예들은 적절한 경우 도 15의 방법의 하나 이상의 단계들을 반복할 수 있다. 본 개시가 특정 순서로 일어나는 것으로서 도 15의 방법의 특정 단계들을 설명하고 예시하지만, 본 개시는 임의의 적절한 순서로 일어나는 도 15의 방법의 임의의 적절한 단계들을 고려한다. 더욱이, 본 개시는 도 15의 방법의 특정 단계들을 포함하여 인공 현실 시스템에서 다양한 오브젝트를 지정하고 다른 사용자들과 공유하기 위한 예시적인 방법을 설명하고 예시하지만, 본 개시는 적절한 경우, 도 15의 방법의 단계들 모두 또는 일부를 포함하거나 또는 전혀 포함하지 않을 수 있는 임의의 적절한 단계들을 포함하여 인공 현실 시스템에서 다양한 오브젝트들을 지정하고 다른 사용자들과 공유하기 위한 임의의 적절한 방법을 고려한다. 또한, 본 개시가 도 15의 방법의 특정 단계들을 수행하는 특정 구성 요소들, 디바이스들, 또는 시스템들을 설명하고 예시하지만, 본 개시는 도 15의 방법의 임의의 적절한 단계들을 수행하는 임의의 적절한 구성 요소들, 디바이스들, 또는 시스템들의 임의의 적절한 조합을 고려한다.
시스템 개요(System Overview)
도 16은 소셜 네트워킹 시스템과 연관된 일 예시적인 네트워크 환경(1600)을 도시한다. 네트워크 환경(1600)은 사용자(1601), 클라이언트 시스템(1630), 소셜 네트워킹 시스템(1660), 및 네트워크(1610)에 의해 서로 연결된 제3자 시스템(1670)을 포함한다. 도 1이 사용자(1601), 클라이언트 시스템(1630), 소셜 네트워킹 시스템(1660), 제3자 시스템(1670), 및 네트워크(1610)의 특정한 배열을 예시하지만, 본 개시는 사용자(1601), 클라이언트 시스템(1630), 소셜 네트워킹 시스템(160), 제3자 시스템(1670), 및 네트워크(1610)의 임의의 적합한 배열을 고려한다. 제한이 아닌 예로서, 클라이언트 시스템(1630), 소셜 네트워킹 시스템(1660), 및 제3자 시스템(1670) 중 2개 이상은 네트워크(1610)를 우회하여 서로 직접적으로 연결될 수 있다. 또 다른 예로서, 클라이언트 시스템(1630), 소셜 네트워킹 시스템(1660), 및 제3자 시스템(1670) 중 2개 이상은 물리적으로 또는 논리적으로 서로 전체적으로 또는 부분적으로 공동 위치될 수 있다. 게다가, 도 16이 특정한 수의 사용자들(1601), 클라이언트 시스템들(1630), 소셜 네트워킹 시스템들(1660), 제3자 시스템들(1670), 및 네트워크들(1610)을 예시하지만, 본 개시는 임의의 적합한 수의 사용자들(1601), 클라이언트 시스템들(1630), 소셜 네트워킹 시스템들(1660), 제3자 시스템들(1670), 및 네트워크들(1610)을 고려한다. 제한이 아닌 예로서, 네트워크 환경(1600)은 다수의 사용자들(1601), 클라이언트 시스템(1630), 소셜 네트워킹 시스템들(1660), 제3자 시스템들(1670), 및 네트워크들(1610)을 포함할 수 있다.
특정 실시예들에서, 사용자(1601)는 개인(인간 사용자), 엔티티(예를 들어, 기업, 비즈니스, 또는 제3자 애플리케이션), 또는 소셜 네트워킹 시스템(1660)과 또는 이를 통해 상호 작용하거나 통신하는 그룹(예를 들어, 개인들 또는 엔티티들)이 될 수 있다. 특정 실시예들에서, 소셜 네트워킹 시스템(1660)은 온라인 소셜 네트워크를 호스팅하는 네트워크 주소지정 가능한 컴퓨팅 시스템일 수 있다. 소셜 네트워킹 시스템(1660)은 예를 들면, 사용자 프로필 데이터, 콘셉트 프로필 데이터(concept-profile data), 소셜 그래프 정보, 또는 온라인 소셜 네트워크와 관련된 다른 적합한 데이터와 같은, 소셜 네트워킹 데이터를 생성하고, 저장하고, 수신하고, 송신할 수 있다. 소셜 네트워킹 시스템(1660)은 네트워크 환경(1600)의 다른 구성요소들에 의해 직접적으로 또는 네트워크(1610)를 통해 액세스될 수 있다. 특정 실시예들에서, 소셜 네트워킹 시스템(160)은 사용자들(1601)이 예를 들면, 적절한 프라이버시 설정들을 설정함으로써, 소셜 네트워킹 시스템(1660)에 의해 그들의 활동들이 기록되게 하거나 다른 시스템들(예를 들어, 제3자 시스템(1670))과 공유되게 하는 것을 선택하거나 선택 해제할 수 있도록 허용할 수 있는 승인 서버(authorization server)(또는 다른 적절한 구성요소(들))를 포함할 수 있다. 사용자의 프라이버시 설정은 사용자와 연관된 어떤 정보가 기록될 수 있는지, 사용자와 연관된 정보가 어떻게 기록될 수 있는지, 사용자와 연관된 정보가 언제 기록될 수 있지, 사용자와 연관된 정보를 누가 기록할 수 있는지, 사용자와 연관된 어떤 정보가 공유될 수 있는지, 어떤 목적으로 사용자와 연관된 정보가 기록되거나 공유될 수 있는지를 결정할 수 있다. 승인 서버들(authorization servers)은 블록킹(blocking), 데이터 해싱(data hashing), 익명화(anonymization), 또는 다른 적절한 기술들을 통해 소셜 네트워킹 시스템(30)의 사용자들의 하나 이상의 프라이버시 설정들을 시행하는 데 사용될 수 있다. 특정 실시예들에서, 제3자 시스템(1670)은 네트워크 주소지정 가능한 컴퓨팅 시스템일 수 있다. 제3자 시스템(1670)은 네트워크 환경(1600)의 다른 구성요소들에 의해 직접적으로 또는 네트워크(1610)를 통해 액세스될 수 있다. 특정 실시예들에서, 하나 이상의 사용자들(1601)은 하나 이상의 클라이언트 시스템들(1630)을 사용하여 소셜 네트워킹 시스템(1660) 또는 제3자 시스템(1670)에 액세스하고, 데이터를 보내고, 그로부터 데이터를 수신할 수 있다. 클라이언트 시스템(1630)은 소셜 네트워킹 시스템(1660) 또는 제3자 시스템(1670)에 직접적으로, 네트워크(1610)를 통해, 또는 제3자 시스템을 통해 액세스할 수 있다. 제한이 아닌 예로서, 클라이언트 시스템(1630)은 소셜 네트워킹 시스템(1660)을 통해 제3자 시스템(1670)에 액세스할 수 있다. 클라이언트 시스템(1630)은 예를 들어 개인용 컴퓨터, 랩톱 컴퓨터, 셀룰러 전화, 스마트폰, 태블릿 컴퓨터, 또는 증강/가상 현실 디바이스와 같은 임의의 적절한 컴퓨팅 디바이스일 수 있다.
본 개시는 임의의 적합한 네트워크(1610)를 고려한다. 제한이 아닌 예로서, 네트워크(1610)의 하나 이상의 부분들은 애드 혹 네트워크(ad hoc network), 인트라넷, 엑스트라넷, 가상 사설망(VPN), 근거리 통신망(LAN), 무선 LAN(WLAN), 광역 통신망(WAN), 무선 WAN(WWAN), 도시권 통신망(MAN), 인터넷의 일부, 공중 전화 교환망(PSTN)의 일부, 셀룰러 전화 네트워크, 또는 이들 중 2개 이상의 조합을 포함할 수 있다. 네트워크(1610)는 하나 이상의 네트워크들(1610)을 포함할 수 있다.
링크들(1650)은 클라이언트 시스템(1630), 소셜 네트워킹 시스템(1660), 및 제3자 시스템(1670)을 통신 네트워크(1610)에 또는 서로 연결할 수 있다. 본 개시는 임의의 적합한 링크들(1650)을 고려한다. 특정한 실시예들에서, 하나 이상의 링크들(1650)은 하나 이상의 유선(예를 들면, 디지털 가입자 라인(DSL) 또는 DOCSIS(Data Over Cable Service Interface Specification)과 같은), 무선(예를 들면, 와이파이 또는 WiMAX(Worldwide Interoperability for Microwave Access)와 같은), 또는 광학(예를 들면, 동기식 광 통신망(Synchronous Optical Network; SONET) 또는 동기식 디지털 계층(Synchronous Digital Hierarchy; SDH)과 같은) 링크들을 포함한다. 특정한 실시예들에서, 하나 이상의 링크들(1650)은 각각, 애드 혹 네트워크, 인트라넷, 엑스트라넷, VPN, LAN, WLAN, WAN, WWAN, MAN, 인터넷의 일부, PSTN의 일부, 셀룰러 기술 기반 네트워크, 위성 통신 기술 기반 네트워크, 또 다른 링크(1650), 또는 2개 이상의 이러한 링크들(1650)의 조합을 포함한다. 링크들(1650)은 반드시 동일한 전체 네트워크 환경(1600)일 필요는 없다. 하나 이상의 제1 링크들(1650)은 하나 이상의 제2 링크들(1650)과 하나 이상의 측면들에서 상이할 수 있다.
소셜 그래프(Social Graphs)
도 17은 예시적인 소셜 그래프(1700)를 도시한다. 특정 실시예들에서, 소셜 네트워킹 시스템(160)은 하나 이상의 소셜 그래프들(1700)을 하나 이상의 데이터 저장소들에 저장할 수 있다. 특정 실시예들에서, 소셜 그래프(1700)는 다수의 사용자 노드들(1702) 또는 다수의 콘셉트 노드들(1704)을 포함할 수 있는 다수의 노드들 및 노드들을 연결하는 다수의 에지들(1706)을 포함할 수 있다. 도 17에 예시된 예시적인 소셜 그래프(1700)는 교훈적인 목적을 위해 2 차원의 시각적 맵 표현으로 도시된다. 특정 실시예들에서, 소셜 네트워킹 시스템(1660), 클라이언트 시스템(1630), 또는 제3자 시스템(1670)은 적절한 애플리케이션들을 위해 소셜 그래프(1700) 및 관련 소셜 그래프 정보에 액세스할 수 있다. 소셜 그래프(1700)의 노드들 및 에지들은 예를 들어 데이터 저장소(예를 들어, 소셜 그래프 데이터베이스)에 데이터 오브젝트들로서 저장될 수 있다. 그러한 데이터 저장소는 소셜 그래프(1700)의 노드들 또는 에지들의 하나 이상의 검색 가능하거나 쿼리 가능한 인덱스들을 포함할 수 있다.
특정 실시예들에서, 사용자 노드(1702)는 소셜 네트워킹 시스템(1660)의 사용자에 대응할 수 있다. 제한이 아닌 예로서, 사용자는 개인(인간 사용자), 엔티티(예를 들어, 기업, 비즈니스, 또는 제3자 애플리케이션), 또는 소셜 네트워킹 시스템(1660)과 또는 이를 통해 상호 작용하거나 통신하는 그룹(예를 들어, 개인들 또는 엔티티들)이 될 수 있다. 특정 실시예들에서, 사용자가 소셜 네트워킹 시스템(1660)에 계정을 등록 할 때, 소셜 네트워킹 시스템(1660)은 사용자에 대응하는 사용자 노드(1702)를 생성할 수 있고 사용자 노드(1702)를 하나 이상의 데이터 저장소들에 저장할 수 있다. 여기에 설명된 사용자들 및 사용자 노드들(1702)은 적절한 경우 등록된 사용자들 및 등록된 사용자들과 연관된 사용자 노드들(1702)을 지칭할 수 있다. 추가로 또는 대안으로서, 여기에 설명된 사용자들 및 사용자 노드들(1702)은 적절한 경우 소셜 네트워킹 시스템(1660)에 등록되지 않은 사용자들을 지칭할 수 있다. 특정 실시예들에서, 사용자 노드(1702)는 사용자에 의해 제공된 정보 또는 소셜 네트워킹 시스템(1660)을 포함하는 다양한 시스템들에 의해 수집된 정보와 연관될 수 있다. 제한이 아닌 예로서, 사용자는 자신의 이름, 프로필 픽처, 연락처 정보, 생년월일, 성별, 결혼 여부, 가족 상태, 고용 여부, 학력, 선호도, 관심사, 또는 기타 인구 통계 정보를 제공할 수 있다. 특정 실시예들에서, 사용자 노드(1702)는 사용자와 연관된 정보에 대응하는 하나 이상의 데이터 오브젝트들과 연관될 수 있다. 특정 실시예들에서, 사용자 노드(1702)는 하나 이상의 웹 페이지들에 대응할 수 있다.
특정 실시예들에서, 콘셉트 노드(1704)는 콘셉트에 대응할 수 있다. 제한이 아닌 예로서, 콘셉트는 장소(예를 들어, 영화관, 레스토랑, 랜드 마크, 또는 도시), 웹 사이트(예를 들어, 소셜 네트워크 시스템(1660)과 연관된 웹 사이트 또는 웹 애플리케이션 서버와 연관된 제3자 웹 사이트); 엔티티(예를 들어, 사람, 비즈니스, 그룹, 스포츠 팀, 또는 유명인); 소셜 네트워킹 시스템(1660) 내에 또는 웹 애플리케이션 서버와 같은 외부 서버에 위치할 수 있는 리소스(예를 들어, 오디오 파일, 비디오 파일, 디지털 사진, 텍스트 파일, 구조화된 문서, 또는 애플리케이션); 부동산 또는 지적 재산(예를 들어, 조각, 그림, 영화, 게임, 노래, 아이디어, 사진, 또는 서면 작업); 게임; 활동; 아이디어 또는 이론; 또 다른 적절한 콘셉트; 또는 두 개 이상의 그러한 콘셉트들에 대응할 수 있다. 콘셉트 노드(1704)는 사용자에 의해 제공된 콘셉트 또는 소셜 네트워킹 시스템(1660)을 포함하는 다양한 시스템들에 의해 수집된 정보와 연관될 수 있다. 제한이 아닌 예로서, 콘셉트의 정보는 이름 또는 제목; 하나 이상의 이미지들(예를 들어, 책 표지의 이미지); 위치(예를 들어, 주소 또는 지리적 위치); 웹 사이트(URL과 연결될 수 있음); 연락처 정보(예를 들어, 전화 번호 또는 이메일 주소); 다른 적절한 콘셉트 정보; 또는 그러한 정보의 임의의 적절한 조합을 포함할 수 있다. 특정 실시예들에서, 콘셉트 노드(1704)는 콘셉트 노드(1704)와 연관된 정보에 대응하는 하나 이상의 데이터 오브젝트들과 연관될 수 있다. 특정 실시예들에서, 콘셉트 노드(1704)는 하나 이상의 웹 페이지들에 대응할 수 있다.
특정 실시예들에서, 소셜 그래프(1700)의 노드는 웹 페이지( "프로필 페이지"로 지칭될 수 있음)를 나타내거나 그에 의해 나타낼 수 있다. 프로필 페이지들은 소셜 네트워킹 시스템(1606)에 의해 호스팅되거나 액세스 가능하게 될 수 있다. 프로필 페이지들은 또한 제3자 시스템(1670)과 연관된 제3자 웹 사이트들에서 호스팅될 수 있다. 제한이 아닌 예로서, 특정 외부 웹 페이지에 대응하는 프로필 페이지는 특정 외부 웹 페이지일 수 있고, 프로필 페이지는 특정 콘셉트 노드(1704)에 대응할 수 있다. 프로필 페이지들은 다른 사용자들의 전체 또는 선택된 하위 집합이 볼 수 있다. 제한이 아닌 예로서, 사용자 노드(1702)는 대응하는 사용자가 콘텐트를 추가할 수 있거나, 선언을 할 수 있거나, 그렇지 않으면 자신을 표현할 수 있는 대응하는 사용자 프로필 페이지를 가질 수 있다. 제한이 아닌 다른 예로서, 콘셉트 노드(1704)는 특히 콘셉트 노드(1704)에 대응하는 콘셉트와 관련하여, 하나 이상의 사용자들이 콘텐트를 추가할 수 있거나, 선언을 할 수 있거나, 또는 자신을 표현할 수 있는 대응하는 콘셉트 프로필 페이지를 가질 수 있다.
특정 실시예들에서, 콘셉트 노드(1704)는 제3자 시스템(1670)에 의해 호스팅되는 제3자 웹 페이지 또는 리소스를 나타낼 수 있다. 제3자 웹 페이지 또는 리소스는 무엇보다도 콘텐트, 선택 가능한 또는 다른 아이콘, 또는 행동 또는 활동을 나타내는 다른 상호작용 가능한 오브젝트(예를 들어, JavaScript, AJAX, 또는 PHP 코드로 구현될 수 있음)를 포함할 수 있다. 제한이 아닌 예로서, 제3자 웹 페이지는 "좋아요", "체크-인", "먹기", "추천” 또는 다른 적절한 행동이나 활동과 같은 선택 가능한 아이콘을 포함할 수 있다. 제3자 웹 페이지를 보는 사용자는 아이콘들 중 하나(예를 들어, "체크-인")를 선택하여 클라이언트 시스템(130)으로 하여금 사용자의 행동을 나타내는 메시지를 소셜 네트워킹 시스템(1660)으로 보내게 함으로써 행동을 수행할 수 있다. 상기 메시지에 응답하여, 소셜 네트워킹 시스템(1660)은 사용자에 대응하는 사용자 노드(1702)와 제3자 웹 페이지 또는 리소스에 대응하는 콘셉트 노드(1704) 사이에 에지(예를 들어, 체크-인 타입 에지(check-in-type edge))를 생성할 수 있고, 하나 이상의 데이터 저장소들에 에지(1706)를 저장한다.
특정 실시예들에서, 소셜 그래프(1700)에서 한 쌍의 노드들은 하나 이상의 에지들(1706)에 의해 서로 연결될 수 있다. 한 쌍의 노드들을 연결하는 에지(1706)는 상기 쌍의 노드들 간의 관계를 나타낼 수 있다. 특정 실시예들에서, 에지(1706)는 한 쌍의 노드들 사이의 관계에 대응하는 하나 이상의 데이터 오브젝트들 또는 속성들을 포함하거나 나타낼 수 있다. 제한이 아닌 예로서, 제1 사용자는 제2 사용자가 제1 사용자의 "친구"임을 나타낼 수 있다. 이러한 표시에 응답하여, 소셜 네트워킹 시스템(1660)은 "친구 요청"을 제2 사용자에게 보낼 수 있다. 제2 사용자가 "친구 요청"을 확인하면, 소셜 네트워킹 시스템(1660)은 소셜 그래프(1700)에서 제1 사용자의 사용자 노드(1702)를 제2 사용자의 사용자 노드(1702)에 연결하는 에지(1706)를 생성하고, 데이터 저장소들(1664) 중 하나 이상에 소셜 그래프 정보로서 에지(1706)를 저장할 수 있다. 도 17의 예에서, 소셜 그래프(1700)는 사용자 "A”와 사용자 "B"의 사용자 노드들(1702) 사이의 친구 관계를 나타내는 에지(1706) 및 사용자 "C"와 사용자 "B”의 사용자 노드들(1702) 사이의 친구 관계를 나타내는 에지를 포함한다. 본 개시는 특정 사용자 노드(1702)를 연결하는 특정 속성들을 갖는 특정 에지들(1706)을 설명하거나 예시하지만, 본 개시는 사용자 노드(1702)를 연결하는 임의의 적절한 속성들을 갖는 임의의 적절한 에지들(1706)을 고려한다. 제한이 아닌 예로서, 에지(1706)는 우정, 가족 관계, 사업 또는 고용 관계, 팬 관계(예를 들어, 좋아요 등을 포함), 팔로워 관계, 방문자 관계(예를 들어, 접근(accessing), 보기(viewing), 체크-인(checking-in), 공유(sharing) 등을 포함), 가입자 관계, 상위/하위 관계, 상호 관계, 비 상호 관계, 다른 적절한 유형의 관계, 또는 둘 이상의 이러한 관계들을 나타낼 수 있다. 더욱이, 본 개시는 일반적으로 노드들이 연결된 것으로 설명하지만, 본 개시는 또한 사용자들 또는 콘셉트들이 연결된 것으로 설명한다. 여기에서, 연결되는 사용자들 또는 콘셉트들에 대한 참조들은 적절한 경우 하나 이상의 에지들(1706)에 의해 소셜 그래프(1700)에서 연결되는 사용자들 또는 콘셉트들에 대응하는 노드들을 지칭할 수 있다.
특정 실시예들에서, 사용자 노드(1702)와 콘셉트 노드(1704) 사이의 에지(1706)는 콘셉트 노드(1704)와 연관된 콘셉트를 향해 사용자 노드(1702)와 연관된 사용자에 의해 수행되는 특정 행동 또는 활동을 나타낼 수 있다. 제한이 아닌 예로서, 도 17에 예시된 바와 같이, 사용자는 콘셉트를 "좋아요", "참석", "재생", "듣기", "요리", "작업” 또는 "시청"할 수 있으며, 그 각각은 에지 유형 또는 하위 유형에 대응할 수 있다. 콘셉트 노드(1704)에 대응하는 콘셉트 프로필 페이지는 예를 들어, 선택 가능한 "체크-인" 아이콘(예를 들어, 클릭 가능한 "체크-인" 아이콘) 또는 선택 가능한 "즐겨 찾기에 추가" 아이콘을 포함할 수 있다. 유사하게, 사용자가 이들 아이콘들을 클릭한 후, 소셜 네트워킹 시스템(160)은 각각의 행동에 대응하는 사용자의 행동에 응답하여 "즐겨 찾기" 에지 또는 "체크 인" 에지를 생성할 수 있다. 제한이 아닌 다른 예로서, 사용자(사용자 "C")는 특정 애플리케이션(온라인 음악 애플리케이션인 SPOTIFY)을 사용하여 특정 노래( "Imagine")를 들을 수 있다. 이 경우, 소셜 네트워킹 시스템(1660)은 사용자에 대응하는 사용자 노드들(1702)과 노래 및 애플리케이션에 대응하는 콘셉트 노드들(1704) 사이에 "듣기" 에지(1706) 및 "사용" 에지(도 17에 예시된 바와 같이)를 생성하여, 사용자가 노래를 듣고 애플리케이션을 사용했음을 나타낸다. 더욱이, 소셜 네트워킹 시스템(1660)은 특정 노래가 특정 애플리케이션에 의해 재생되었음을 나타내기 위해 노래와 애플리케이션에 대응하는 콘셉트 노드들(1704) 사이에 "재생" 에지(1706)(도 17에 도시된 바와 같이)를 생성할 수 있다. 이 경우, "재생" 에지(1706)는 외부 오디오 파일(노래 "Imagine")에 대해 외부 애플리케이션(SPOTIFY)에 의해 수행되는 행동에 대응한다. 본 개시는 사용자 노드들(1702) 및 콘셉트 노드들(1704)을 연결하는 특정 속성들을 갖는 특정 에지들(1706)을 설명하지만, 본 개시는 사용자 노드들(1702) 및 콘셉트 노드들(1704)을 연결하는 임의의 적절한 속성들을 갖는 임의의 적절한 에지들(1706)을 고려한다. 더욱이, 본 개시는 단일 관계를 나타내는 사용자 노드(1702)와 콘셉트 노드(1704) 사이의 에지들을 설명하지만, 본 개시는 하나 이상의 관계를 나타내는 사용자 노드(1702)와 콘셉트 노드(1704) 사이의 에지들을 고려한다. 제한이 아닌 예로서, 에지(1706)는 사용자가 특정 콘셉트에서 좋아하고 사용한 것을 모두 나타낼 수 있다. 대안적으로, 다른 에지(1706)는 (사용자 "E"에 대한 사용자 노드(1702)와 "SPOTIFY”에 대한 콘셉트 노드(1704) 사이에서 도 17에 예시된 바와 같이) 사용자 노드(1702)와 콘셉트 노드(1704) 사이에서 각각의 관계 유형(또는 여러 가지의 단일 관계)을 나타낼 수 있다.
특정 실시예들에서, 소셜 네트워킹 시스템(1660)은 소셜 그래프(1700)에서 사용자 노드(1702)와 콘셉트 노드(1704) 사이에 에지(1706)를 생성할 수 있다. 제한이 아닌 예로서, (예를 들어, 웹 브라우저 또는 사용자의 클라이언트 시스템(1630)에 의해 호스팅되는 특수 목적 애플리케이션을 사용하여) 콘셉트 프로필 페이지를 보는 사용자는, 자신이 "좋아요" 아이콘을 클릭하거나 선택함으로써 콘셉트 노드(1704)가 나타내는 콘셉트을 좋아한다는 것을 나타낼 수 있으며, 이는 사용자의 클라이언트 시스템(1630)으로 하여금 콘셉트 프로필 페이지와 연관된 콘셉트에 대한 사용자의 선호도를 나타내는 메시지를 소셜 네트워킹 시스템(1660)으로 보내게 할 수 있다. 상기 메시지에 응답하여, 소셜 네트워킹 시스템(1660)은 사용자와 콘셉트 노드(1704) 사이의 "좋아함" 에지(1706)에 의해 예시된 바와 같이, 사용자와 연관된 사용자 노드(1702)와 콘셉트 노드(1704) 사이에 에지(1706)를 생성할 수 있다. 특정 실시예들에서, 소셜 네트워킹 시스템(1660)은 하나 이상의 데이터 저장소들에 에지(1706)를 저장할 수 있다. 특정 실시예들에서, 에지(1706)는 특정 사용자 행동에 응답하여 소셜 네트워킹 시스템(1660)에 의해 자동으로 형성될 수 있다. 제한이 아닌 예로서, 제1 사용자가 픽처를 업로드하거나, 영화를 보거나, 노래를 듣는 경우, 제1 사용자에 대응하는 사용자 노드(1702)와 이들 콘셉트들에 대응하는 콘셉트 노드들(1704) 사이에 에지(1706)가 형성될 수 있다. 본 개시는 특정 방식들로 특정 에지들(1706)을 형성하는 것을 설명하지만, 본 개시는 임의의 적절한 방식으로 임의의 적절한 에지들(1706)을 형성하는 것을 고려한다.
소셜 그래프 친화도 및 계수(Social Graph Affinity and Coefficient)
특정 실시예들에서, 소셜 네트워킹 시스템(1660)은 서로에 대한 다양한 소셜 그래프 엔티티들의 소셜 그래프 친화도(본 명세서에서 "친화도"로 지칭될 수 있음)을 결정할 수 있다. 친화도는 사용자들, 콘셉트들, 콘텐트, 행동들, 광고들, 온라인 소셜 네트워크와 연관된 다른 오브젝트들, 또는 이들의 임의의 적절한 조합과 같은 온라인 소셜 네트워크와 연관된 특정 오브젝트들 사이의 관심 수준 또는 관계의 강도를 나타낼 수 있다. 친화도는 또한 제3자 시스템(1670) 또는 다른 적절한 시스템들과 연관된 오브젝트들에 대해 결정될 수도 있다. 각 사용자, 주제, 또는 콘텐트 유형에 대해 소셜 그래프 엔티티에 대한 전체 친화도가 설정될 수 있다. 전체 친화도는 소셜 그래프 엔티티와 연관된 행동들 또는 관계들에 대한 지속적인 모니터링에 기초하여 변경될 수 있다. 본 개시는 특정 방식으로 특정 친화도를 결정하는 것을 기술하지만, 본 개시는 임의의 적합한 방식으로 임의의 적합한 친화도들을 결정하는 것을 고려한다.
특정 실시예들에서, 소셜 네트워킹 시스템(1660)은 친화도 계수(본 명세서에서 "계수"로 지칭될 수 있음)를 사용하여 소셜 그래프 친화도를 측정하거나 정량화할 수 있다. 계수는 온라인 소셜 네트워크와 연관된 특정 오브젝트들 사이의 관계의 강도를 나타내거나 정량화할 수 있다. 계수는 또한 사용자가 행동에 대한 사용자의 관심에 기초하여 특정 행동을 수행할 예측 확률을 측정하는 확률 또는 함수를 나타낼 수 있다. 이러한 방식으로, 사용자의 이전 행동들에 기초하여 사용자의 미래 행동들이 예측될 수 있고, 여기서 계수는 사용자 행동들의 이력으로 적어도 부분적으로 계산될 수 있다. 계수들은 온라인 소셜 네트워크 내부 또는 외부에 있을 수 있는 여러 행동들을 예측하는 데 사용될 수 있다. 제한이 아닌 예로서, 이러한 행동들은 메시지 보내기, 콘텐트 포스팅, 또는 콘텐트에 코멘트 달기와 같은 다양한 유형의 통신들; 프로필 페이지, 미디어, 또는 다른 적절한 콘텐트에 대한 액세스 또는 보기와 같은 다양한 유형의 관찰 행동들; 동일한 그룹에 속하거나, 동일한 사진에 태그가 지정되거나, 동일한 위치에서 체크-인하거나, 또는 동일한 이벤트에 참석하는 것과 같은 둘 이상의 소셜 그래프 엔티티들에 관한 다양한 유형의 일치 정보(coincidence information); 또는 다른 적절한 행동들을 포함할 수 있다. 본 개시는 특정 방식으로 친화도를 측정하는 것을 기술하지만, 본 개시는 임의의 적합한 방식으로 친화도를 측정하는 것을 고려한다.
특정 실시예들에서, 소셜 네트워킹 시스템(1660)은 계수를 계산하기 위해 다양한 인자들(factors)들을 사용할 수 있다. 이러한 인자들은 예를 들어 사용자 행동, 오브젝트들 사이의 관계 유형, 위치 정보, 다른 적절한 인자들, 또는 이들의 조합을 포함할 수 있다. 특정 실시예들에서, 계수를 계산할 때 상이한 인자들이 다르게 가중될 수 있다. 각각의 인자에 대한 가중치들은 정적일 수 있거나, 또는 예를 들어 사용자, 관계의 유형, 행동의 유형, 사용자의 위치 등에 따라 가중치들이 변경될 수 있다. 인자들에 대한 레이팅(ratings)은 사용자에 대한 전체 계수를 결정하도록 가중치들에 따라 결합될 수 있다. 제한이 아닌 예로서, 특정 사용자 행동들에는 레이팅과 가중치가 모두 할당될 수 있으며, 특정 사용자 행동과 연관된 관계에는 레이팅 및 상관 가중치가 할당된다(예를 들어, 가중치들의 총합은 100%). 특정 오브젝트에 대한 사용자의 계수를 계산하기 위해, 사용자의 행동들에 할당된 레이팅은 예를 들어 전체 계수의 60%를 포함할 수 있으며, 사용자와 오브젝트 사이의 관계는 전체 계수의 40%를 포함할 수 있다. 특정 실시예들에서, 소셜 네트워킹 시스템(160)은, 예를 들어 정보가 액세스된 이후의 시간, 감쇠 인자, 액세스 빈도, 정보에 대한 관계 또는 정보가 액세스된 오브젝트에 대한 관계, 오브젝트에 연결된 소셜 그래프 엔티티에 대한 관계, 사용자 행동의 장단기 평균, 사용자 피드백, 다른 적절한 변수, 또는 이들의 임의의 조합과 같이, 계수를 계산하는 데 사용되는 다양한 인자들에 대한 가중치들을 결정할 때 다양한 변수들을 고려할 수 있다. 제한이 아닌 예로서, 계수는 특정 행동들에 의해 제공되는 신호의 강도가 시간이 지남에 따라 감쇠하게 하는 감쇠 인자를 포함할 수 있으며, 그에 따라서 계수를 계산할 때 보다 최근의 행동들이 더 관련있게 된다. 레이팅들과 가중치들은 계수들이 기반으로 하는 행동들의 지속적인 추적에 기초하여 지속적으로 업데이트될 수 있다. 임의의 유형의 프로세스 또는 알고리즘이 각 인자에 대한 레이팅들 및 인자들에 할당된 가중치들을 할당, 결합, 평균화 등을 위해 이용될 수 있다. 특정 실시예들에서, 소셜 네트워킹 시스템(160)은 과거의 행동들 및 과거 사용자 응답들에 대해 훈련된 기계 학습 알고리즘, 또는 다양한 옵션들에 사용자들을 노출시키고 응답들을 측정함으로써 사용자들로부터 형성된 데이터를 사용하여 계수를 결정할 수 있다. 본 개시는 특정한 방식으로 계수들을 계산하는 것을 기술하지만, 본 개시는 임의의 적절한 방식으로 계수들을 계산하는 것을 고려한다.
특정 실시예들에서, 소셜 네트워킹 시스템(1660)은 사용자의 행동들에 기초하여 계수를 계산할 수 있다. 소셜 네트워킹 시스템(1660)은 온라인 소셜 네트워크, 제3자 시스템(1670), 다른 적절한 시스템들, 또는 이들의 임의의 조합에서 이러한 동작들을 모니터링할 수 있다. 임의의 적절한 유형의 사용자 행동들이 추적되거나 모니터링될 수 있다. 일반적인 사용자 행동들은 프로필 페이지 보기, 콘텐트 생성 또는 포스팅, 콘텐트와 상호작용, 이미지에 태그 지정하거나 태그 지정됨, 그룹 가입, 이벤트 참석에 리스팅 및 확인, 장소에서의 체크-인, 특정 페이지에 좋아요, 페이지 생성, 및 사회적 행동을 가능하게 하는 다른 작업들을 수행을 포함한다. 특정 실시예들에서, 소셜 네트워킹 시스템(1660)은 특정 유형의 콘텐트에 대한 사용자의 행동에 기초하여 계수를 계산할 수 있다. 콘텐트는 온라인 소셜 네트워크, 제3자 시스템(1670), 또는 다른 적절한 시스템과 연관될 수 있다. 콘텐트는 사용자, 프로필 페이지, 포스트, 뉴스 기사, 헤드라인, 인스턴트 메시지, 채팅방 대화, 이메일, 광고, 사진, 비디오, 음악, 다른 적절한 오브젝트들, 또는 이들의 조합을 포함할 수 있다. 소셜 네트워킹 시스템(1660)은 사용자의 행동을 분석하여 행동들 중 하나 이상이 주제, 콘텐트, 다른 사용자들 등에 대한 친화도를 나타내는지 여부를 결정할 수 있다. 제한이 아닌 예로서, 사용자가 "커피" 또는 그 변형물과 연관된 콘텐트를 자주 게시할 수 있는 경우, 소셜 네트워킹 시스템(1660)은 사용자가 "커피" 콘셉트에 대해 높은 계수를 갖는 것으로 결정할 수 있다. 특정 행동들 또는 행동들의 유형들은 전체 계산 계수에 영향을 미칠 수 있는 다른 행동들보다 더 높은 가중치 및/또는 레이팅이 할당될 수 있다. 제한이 아닌 예로서, 제1 사용자가 제2 사용자에게 이메일을 보내는 경우, 그 행동에 대한 가중치 또는 레이팅은 제1 사용자가 제2 사용자의 사용자 프로필 페이지를 단순히 보는 경우보다 더 높을 수 있다.
특정 실시예들에서, 소셜 네트워킹 시스템(1660)은 특정 오브젝트들 사이의 관계 유형에 기초하여 계수를 계산할 수 있다. 소셜 그래프(1700)를 참조하면, 소셜 네트워킹 시스템(1660)은 계수를 계산할 때 특정 사용자 노드(1702)와 콘셉트 노드(1704)를 연결하는 에지들(1706)의 수 및/또는 유형을 분석할 수 있다. 제한이 없는 예로서, 배우자 유형 에지들(두 사용자가 결혼했음을 나타냄)에 의해 연결된 사용자 노드들(1702)은 친구 유형 에지에 의해 연결된 사용자 노드들(1702)보다 더 높은 계수가 할당될 수 있다. 즉, 특정 사용자에 대한 행동들 및 관계들에 할당된 가중치들에 따라 사용자의 친구에 대한 콘텐트보다 사용자의 배우자에 대한 콘텐트에 대한 전체 친화도가 더 높게 결정될 수 있다. 특정 실시예들에서, 사용자가 다른 오브젝트와 갖는 관계들은 그 오브젝트에 대한 계수를 계산하는 것과 관련하여 사용자의 행동들의 가중치들 및/또는 레이팅들에 영향을 미칠 수 있다. 제한이 아닌 예로서, 사용자가 제1 사진에 태그되었지만 단순히 제2 사진을 좋아하는 경우, 소셜 네트워킹 시스템(1660)은 사용자가 제2 사진보다 제1 사진에 대해 더 높은 계수를 갖는 것으로 결정할 수 있으며, 이는 콘텐트와 태그 유형 관계를 갖는 것이 콘텐트와 좋아하는 유형 관계를 갖는 것보다 더 높은 가중치 및/또는 레이팅이 할당될 수 있기 때문이다. 특정 실시예들에서, 소셜 네트워킹 시스템(1660)은 하나 이상의 제2 사용자들이 특정 오브젝트와 갖는 관계에 기초하여 제1 사용자에 대한 계수를 계산할 수 있다. 즉, 다른 사용자가 오브젝트에 대해 갖는 연결들 및 계수들이 오브젝트에 대한 제1 사용자의 계수에 영향을 미칠 수 있다. 제한이 아닌 예로서, 제1 사용자가 하나 이상의 제2 사용자들에 연결되거나 그들에 대해 높은 계수를 갖고, 이들 제2 사용자들이 특정 오브젝트에 연결되거나 그에 대해 높은 계수를 갖는 경우, 소셜 네트워킹 시스템(1660)은 제1 사용자가 또한 특정 오브젝트에 대해 상대적으로 높은 계수를 가져야 한다고 결정할 수 있다. 특정 실시예들에서, 계수들은 특정 오브젝트들 사이의 분리 정도(degree of separation)에 기초할 수 있다. 더 낮은 계수는 소셜 그래프(1700)에서 제1 사용자와 간접적으로 연결된 사용자의 콘텐트 오브젝트들에 대해 제1 사용자가 관심을 공유할 가능성이 감소함을 나타낼 수 있다. 제한이 아닌 예로서, 소셜 그래프(1700)에서 더 가까운(즉, 더 적은 분리 정도) 소셜 그래프 엔티티들은 소셜 그래프(1700)에서 더 멀리 떨어져 있는 엔티티들보다 더 높은 계수를 가질 수 있다.
특정 실시예들에서, 소셜 네트워킹 시스템(1660)은 위치 정보에 기초하여 계수를 계산할 수 있다. 서로 간에 지리적으로 더 가까운 오브젝트들은 더 멀리 있는 오브젝트들보다 서로 더 관련이 있거나 더 관심이 있는 것으로 간주될 수 있다. 특정 실시예들에서, 특정 오브젝트에 대한 사용자의 계수는 사용자와 연관된 현재 위치(또는 사용자의 클라이언트 시스템(1630)의 위치)에 대한 오브젝트의 위치의 근접성에 기초할 수 있다. 제1 사용자는 제1 사용자에 더 가까운 다른 사용자들 또는 콘셉트들에 더 관심이 있을 수 있다. 제한이 아닌 예로서, 사용자가 공항에서 1마일, 주유소에서 2마일 거리에 있다면, 소셜 네트워킹 시스템(1660)은 사용자에 대한 공항의 근접성에 기초하여 사용자가 주유소보다 공항에 대해 더 높은 계수를 갖는 것으로 결정할 수 있다.
특정 실시예들에서, 소셜 네트워킹 시스템(1660)은 계수 정보에 기초하여 사용자와 관련한 특정 행동들을 수행할 수 있다. 계수들은 사용자가 행동에 대한 사용자의 관심에 기초하여 특정 행동을 수행할지 여부를 예측하는 데 사용될 수 있다. 계수는 광고, 검색 결과, 뉴스 기사, 미디어, 메시지, 통지, 또는 다른 적절한 오브젝트들과 같은 모든 유형의 오브젝트들을 생성하거나 사용자에게 제시할 때 사용될 수 있다. 계수는 또한 적절한 경우 이러한 오브젝트들의 순위를 매기고 순서를 정하는 데 이용될 수 있다. 이러한 방식으로, 소셜 네트워킹 시스템(1660)은 사용자의 관심 및 현재 상황과 관련된 정보를 제공하여 사용자들이 그러한 관심 정보를 찾을 가능성을 높일 수 있다. 특정 실시예들에서, 소셜 네트워킹 시스템(1660)은 계수 정보에 기초하여 콘텐트를 생성할 수 있다. 컨텐트 오브젝트들은 사용자에 특정된 계수들에 기초하여 제공되거나 선택될 수 있다. 제한이 아닌 예로서, 계수는 사용자를 위한 미디어를 생성하는 데 사용될 수 있으며, 여기서 사용자는 미디어 오브젝트에 대하여 사용자가 높은 전체 계수를 갖는 미디어를 제시받을 수 있다. 제한이 아닌 또 다른 예로서, 계수는 사용자를 위한 광고들을 생성하는 데 사용될 수 있으며, 여기서 사용자는 광고된 오브젝트에 대하여 사용자가 높은 전체 계수를 갖는 광고를 제시받을 수 있다. 특정 실시예들에서, 소셜 네트워킹 시스템(1660)은 계수 정보에 기초하여 검색 결과를 생성할 수 있다. 특정 사용자에 대한 검색 결과는 질의하는 사용자에 대하여 검색 결과와 연관된 계수에 기초하여 점수가 매겨지거나 순위가 매겨질 수 있다. 제한이 아닌 예로서, 더 높은 계수들을 갖는 오브젝트들에 대응하는 검색 결과들은 더 낮은 계수들을 갖는 오브젝트들에 대응하는 결과들보다 검색 결과 페이지에서 더 높은 순위가 매겨질 수 있다.
특정 실시예들에서, 소셜 네트워킹 시스템(1660)은 특정 시스템 또는 프로세스로부터의 계수에 대한 요청에 응답하여 계수를 계산할 수 있다. 주어진 상황에서 사용자가 취할 수 있는(또는 대상이 될 수 있는) 가능한 행동들을 예측하기 위해, 어떠한 프로세스도 사용자에 대해 계산된 계수를 요청할 수 있다. 상기 요청은 또한 계수를 계산하는 데 사용되는 다양한 인자들에 대해 사용할 가중치들의 세트를 포함할 수 있다. 이러한 요청은 온라인 소셜 네트워크에서 실행되는 프로세스, (예를 들어, API 또는 다른 통신 채널을 통한) 제3자 시스템(1670)으로부터, 또는 다른 적절한 시스템으로부터 올 수 있다. 요청에 응답하여, 소셜 네트워킹 시스템(1660)은 계수를 계산할 수 있다(또는 이전에 계산되어 저장되어 있다면 그 계수 정보에 액세스할 수 있음). 특정 실시예들에서, 소셜 네트워킹 시스템(1660)은 특정 프로세스에 대하여 친화도를 측정할 수 있다. 상이한 프로세스들(온라인 소셜 네트워크의 내부 및 외부 모두)은 특정 오브젝트 또는 오브젝트들의 세트에 대한 계수를 요청할 수 있다. 소셜 네트워킹 시스템(1660)은 친화도 측정치를 요청한 특정 프로세스와 관련한 친화도 측정치를 제공할 수 있다. 이러한 방식으로, 각 프로세스는 프로세스가 친화도 측정치를 사용할 상이한 컨텍스트에 맞게 조정된 친화도 측정치를 수신한다.
소셜 그래프 친화도 및 친화도 계수들과 관련하여, 특정 실시예들은 2006년 8월 11일에 출원된 미국 특허 출원 번호 11/503093, 2010년 12월 22일에 출원된 미국 특허 출원 번호 12/977027, 2010년 12월 23일에 출원된 미국 특허 출원 번호 12/978265, 및 2012년 10월 1일에 출원된 미국 특허 출원 번호 13/632869 에 개시된 하나 이상의 시스템들, 구성요소들, 요소들, 기능들, 방법들, 동작들, 또는 단계들을 이용할 수 있으며, 이들 각각은 참고로 포함된다.
프라이버시(Privacy)
특정 실시예들에서, 온라인 소셜 네트워크의 콘텐트 오브젝트들 중 하나 이상은 프라이버시 설정과 연관될 수 있다. 오브젝트에 대한 프라이버시 설정들(또는 "액세스 설정들")은 예를 들어 오브젝트와 관련하여, 승인 서버(authorization server)의 인덱스에 관련하여, 다른 적절한 방식에 관련하여, 또는 이들의 조합과 같은 임의의 적절한 방식으로 저장될 수 있다. 오브젝트의 프라이버시 설정은 온라인 소셜 네트워크를 사용하여 오브젝트(또는 오브젝트와 연관된 특정 정보)에 액세스(예를 들어, 보기(viewed) 또는 공유(shared))할 수 있는 방법을 지정할 수 있다. 오브젝트에 대한 프라이버시 설정이 특정 사용자가 해당 오브젝트에 액세스할 수 있는 경우, 해당 오브젝트는 해당 사용자에 대하여 "보이는(visible)" 것으로 설명될 수 있다. 제한이 아닌 예로서, 온라인 소셜 네트워크의 사용자는 사용자 프로필 페이지에 대한 프라이버시 설정들을 지정할 수 있으며 사용자 프로필 페이지의 작업 경험 정보에 액세스할 수 있는 사용자들의 세트를 식별하여 다른 사용자들이 정보에 액세스하는 것을 배제할 수 있다. 특정 실시예들에서, 프라이버시 설정들은 오브젝트와 연관된 특정 정보에 액세스하는 것이 허용되지 않아야 하는 사용자들의 "차단 리스트"를 지정할 수 있다. 즉, 차단 리스트는 오브젝트를 볼 수 없는 하나 이상의 사용자들 또는 엔티티들을 지정할 수 있다. 제한이 아닌 예로서, 사용자는 사용자와 연관된 사진 앨범들에 액세스할 수 없는 사용자들의 세트를 지정할 수 있으므로, 해당 사용자들이 사진 앨범들에 액세스하는 것을 배제할 수 있다(상기 사용자들의 세트 내에 있지 않은 특정 사용들에 대해서는 상기 사진 앨범들에 액세하도록 허용함). 특정 실시예들에서, 프라이버시 설정들은 특정 소셜 그래프 요소들과 연관될 수 있다. 노드 또는 에지와 같은 소셜 그래프 요소의 프라이버시 설정들은 소셜 그래프 요소, 소셜 그래프 요소와 연관된 정보, 또는 소셜 그래프 요소와 연관된 콘텐트 오브젝트들이 온라인 소셜 네트워크를 액세스될 수 있는 방법을 지정할 수 있다. 제한이 아닌 예로서, 특정 사진에 대응하는 특정 콘셉트 노드(1704)는 사진에 태그가 지정된 사용자들 및 그들의 친구들에 의해서만 사진이 액세스될 수 있음을 지정하는 프라이버시 설정을 가질 수 있다. 특정 실시예들에서, 프라이버시 설정들은 사용자들이 소셜 네트워킹 시스템(160)에 의해 그들의 행동들이 기록되게 하거나 다른 시스템들(예를 들어, 제3자 시스템(1670))과 공유되게 하는 것을 선택하거나 선택 해제할 수 있도록 허용할 수 있다. 특정 실시예들에서, 오브젝트와 연관된 프라이버시 설정들은 허용된 액세스 또는 액세스 거부의 임의의 적절한 입도(granularity)를 지정할 수 있다. 제한이 아닌 예로서, 액세스 또는 액세스 거부는 특정 사용자들(예를 들어, 나, 나의 룸메이트, 및 나의 상사만), 특정 분리 정도 내의 사용자들(예를 들어, 친구들 또는 친구의 친구들), 사용자 그룹들(예를 들어, 게임 클럽, 나의 가족), 사용자 네트워크들(예를 들어, 특정 고용주들의 직원들, 정 대학의 학생들 또는 졸업생들), 모든 사용자들("공용"), 사용자 배제(no users)("개인 전용(private)"), 제3자 시스템들(170)의 사용자들, 특정 애플리케이션들(예를 들어, 제3자 애플리케이션들, 외부 웹사이트들), 다른 적절한 사용자들 또는 엔티티들, 또는 이들의 임의의 조합에 대해 특정될 수 있다. 본 개시는 특정 방식으로 특정 프라이버시 설정들을 사용하는 것을 설명하지만, 본 개시는 임의의 적절한 방식으로 임의의 적절한 프라이버시 설정들을 사용하는 것을 고려한다.
특정 실시예들에서, 하나 이상의 서버들(1662)은 프라이버시 설정들을 시행하기 위한 승인/프라이버시 서버일 수 있다. 데이터 저장소(1664)에 저장된 특정 오브젝트에 대한 사용자(또는 다른 엔티티)로부터의 요청에 응답하여, 소셜 네트워킹 시스템(160)은 오브젝트에 대한 요청을 데이터 저장소(1664)에 보낼 수 있다. 상기 요청은 상기 요청과 연관된 사용자를 식별할 수 있고, 승인 서버가 오브젝트와 연관된 프라이버시 설정들에 기초하여 사용자가 오브젝트에 액세스할 권한이 있다고 결정하는 경우에만 사용자(또는 사용자의 클라이언트 시스템(1630))에게 보내질 수 있다. 요청하는 사용자가 오브젝트에 액세스할 수 있는 권한이 없다면, 승인 서버는 요청된 오브젝트가 데이터 저장소(1664)에서 검색되는 것을 방지하거나 또는 요청된 오브젝트가 사용자에게 보내지는 것을 방지할 수 있다. 검색 질의 컨텍스트(search query context)에서 질의하는 사용자가 오브젝트에 액세스할 수 있는 권한이 있는 경우에만 오브젝트가 검색 결과로서 생성될 수 있다. 즉, 오브젝트는 질의하는 사용자가 볼 수 있는 가시성이 있어야 한다. 오브젝트가 사용자가 볼 수 없는 가시성이 있는 경우, 오브젝트는 검색 결과들에서 배제될 수 있다. 본 개시는 특정 방식으로 프라이버시 설정들을 시행하는 것을 설명하지만, 본 개시는 임의의 적절한 방식으로 프라이버시 설정들을 시행하는 것을 고려한다.
시스템 및 방법
도 18는 예시적인 컴퓨터 시스템(1800)을 도시한다. 특정한 실시예들에서, 하나 이상의 컴퓨터 시스템들(1800)은 본 명세서에서 설명되거나 예시된 하나 이상의 방법들의 하나 이상의 단계들을 수행한다. 특정한 실시예들에서, 하나 이상의 컴퓨터 시스템들(1800)은 본 명세서에서 설명되거나 예시된 기능을 제공한다. 특정한 실시예들에서, 하나 이상의 컴퓨터 시스템들(1800)에서 실행되는 소프트웨어는 본 명세서에서 설명되거나 예시된 하나 이상의 방법들의 하나 이상의 단계들을 수행하거나 본 명세서에서 설명되거나 예시된 기능을 제공한다. 특정한 실시예들은 하나 이상의 컴퓨터 시스템들(1800)의 하나 이상의 부분들을 포함한다. 본 명세서에서, 컴퓨터 시스템에 대한 참조는 적절한 경우, 컴퓨팅 디바이스를 포함할 수 있으며, 그 반대도 마찬가지이다. 게다가, 컴퓨터 시스템에 대한 참조는 적절한 경우, 하나 이상의 컴퓨터 시스템들을 포함할 수 있다.
본 개시는 임의의 적합한 수의 컴퓨터 시스템들(1800)을 고려한다. 본 개시는 임의의 적합한 물리적 형태를 취하는 컴퓨터 시스템(1800)을 고려한다. 제한이 아닌 예로서, 컴퓨터 시스템(1800)은 내장된 컴퓨터 시스템, 시스템 온 칩(SOC), 단일 보드 컴퓨터 시스템(SBC)(예를 들면, 컴퓨터 온 모듈(COM) 또는 시스템 온 모듈(SOM)과 같음), 데스크탑 컴퓨터 시스템, 랩탑 또는 노트북 컴퓨터 시스템, 대화형 키오스크, 메인프레임, 컴퓨터 시스템들의 메쉬, 모바일 전화, 개인 휴대용 정보 단말기(PDA), 서버, 태블릿 컴퓨터 시스템, 또는 그들 중 2개 이상의 조합일 수 있다. 적절한 경우, 컴퓨터 시스템(1800)은 하나 이상의 컴퓨터 시스템들(1800)을 포함할 수 있거나; 단일 또는 분산될 수 있거나; 다수의 위치들에 걸쳐 있을 수 있거나; 다수의 기계들에 걸쳐 있을 수 있거나; 다수의 데이터 센터들에 걸쳐 있을 수 있거나; 하나 이상의 네트워크들에 하나 이상의 클라우드 구성요소들을 포함할 수 있는 클라우드에 상주할 수 있다. 적절한 경우, 하나 이상의 컴퓨터 시스템들(1800)은 본 명세서에서 설명되거나 예시된 하나 이상의 방법들의 하나 이상의 단계들을 실질적인 공간적 또는 시간적 제한 없이 수행할 수 있다. 제한이 아닌 예로서, 하나 이상의 컴퓨터 시스템들(1800)은 본 명세서에서 설명되거나 예시된 하나 이상의 방법들의 하나 이상의 단계들을 실시간 또는 배치 모드로 수행할 수 있다. 하나 이상의 컴퓨터 시스템들(1800)은 적절한 경우, 본 명세서에서 설명되거나 예시된 하나 이상의 방법들의 하나 이상의 단계들을 상이한 시간들에서 또는 상이한 위치들에서 수행할 수 있다.
특정한 실시예들에서, 컴퓨터 시스템(1800)은 프로세서(1802), 메모리(1804), 저장장치(1806), 입력/출력(I/O) 인터페이스(1808), 통신 인터페이스(1810), 및 버스(1812)를 포함한다. 본 개시가 특정한 배열로 특정한 수의 특정한 구성요소들을 가지는 특정한 컴퓨터 시스템을 설명하고 예시하더라도, 본 개시는 임의의 적합한 배열로 임의의 적합한 수의 임의의 적합한 구성요소들을 가지는 임의의 적합한 컴퓨터 시스템을 고려한다.
특정한 실시예들에서, 프로세서(1802)는 컴퓨터 프로그램을 구성하기 위한 명령들과 같은, 명령들을 실행하기 위한 하드웨어를 포함한다. 제한이 아닌 예로서, 명령들을 실행하기 위해, 프로세서(1802)는 내부 레지스터, 내부 캐시, 메모리(1804), 또는 저장장치(1806)로부터 명령들을 검색(또는 인출)하고; 그들을 디코딩하고 실행하며; 그 다음, 하나 이상의 결과들을 내부 레지스터, 내부 캐시, 메모리(1804), 또는 저장장치(1806)에 기록할 수 있다. 특정한 실시예들에서, 프로세서(1802)는 데이터, 명령들, 또는 주소들을 위한 하나 이상의 내부 캐시들을 포함할 수 있다. 본 개시는 적절한 경우, 임의의 적합한 수의 임의의 적합한 내부 캐시들을 포함하는 프로세서(1802)를 고려한다. 제한이 아닌 예로서, 프로세서(1802)는 하나 이상의 명령 캐시들, 하나 이상의 데이터 캐시들, 및 하나 이상의 변환 색인 버퍼(translation lookaside buffer; TLB)들을 포함할 수 있다. 명령 캐시들에서의 명령들은 메모리(1804) 또는 저장장치(1806)에서의 명령들의 카피들일 수 있고, 명령 캐시들은 프로세서(1802)에 의한 그들 명령들의 검색의 속도를 높일 수 있다. 데이터 캐시들에서의 데이터는 동작할 프로세서(1802)에서 실행되는 명령들을 위한 메모리(1804) 또는 저장장치(1806)에서의 데이터; 프로세서(1802)에서 실행되는 후속 명령들에 의해 액세스하기 위해 또는 메모리(1804) 또는 저장장치(1806)에 기록하기 위해 프로세서(1802)에서 실행된 이전 명령들의 결과들; 또는 다른 적합한 데이터의 카피들일 수 있다. 데이터 캐시들은 프로세서(1802)에 의한 판독 또는 기록 동작들의 속도를 높일 수 있다. TLB들은 프로세서(1802)를 위한 가상 주소 변환의 속도를 높일 수 있다. 특정한 실시예들에서, 프로세서(1802)는 데이터, 명령들, 또는 주소들을 위한 하나 이상의 내부 레지스터들을 포함할 수 있다. 본 개시는 적절한 경우, 임의의 적합한 수의 임의의 적합한 내부 레지스터들을 포함하는 프로세서(1802)를 고려한다. 적절한 경우, 프로세서(1802)는 하나 이상의 산술 논리 유닛(ALU)들을 포함하거나; 멀티 코어 프로세서일 수 있거나; 하나 이상의 프로세서들(1802)을 포함할 수 있다. 본 개시가 특정한 프로세서를 설명하고 예시하지만, 본 개시는 임의의 적합한 프로세서를 고려한다.
특정한 실시예들에서, 메모리(1804)는 프로세서(1802)가 실행할 명령들 또는 프로세서(1802)가 동작할 데이터를 저장하기 위한 메인 메모리를 포함한다. 제한이 아닌 예로서, 컴퓨터 시스템(1800)은 저장장치(1806) 또는 또 다른 소스(예를 들면, 또 다른 컴퓨터 시스템(1800)과 같음)로부터 메모리(1804)로 명령들을 로딩할 수 있다. 프로세서(1802)는 그 다음, 메모리(1804)로부터 내부 레지스터 또는 내부 캐시로 명령들을 로딩할 수 있다. 명령들을 실행하기 위해, 프로세서(1802)는 내부 레지스터 또는 내부 캐시로부터 명령들을 검색하고 그들을 디코딩할 수 있다. 명령들의 실행 동안 또는 이후에, 프로세서(1802)는 하나 이상의 결과들(중간 또는 최종 결과들일 수 있음)을 내부 레지스터 또는 내부 캐시에 기록할 수 있다. 프로세서(1802)는 그 다음, 그들 결과들 중 하나 이상을 메모리(1804)에 기록할 수 있다. 특정한 실시예들에서, 프로세서(1802)는 하나 이상의 내부 레지스터들 또는 내부 캐시들에서 또는 메모리(1804)(저장장치(1806)와는 대조적으로 또는 어딘가의)에서 단지 명령들을 실행하고 하나 이상의 내부 레지스터들 또는 내부 캐시들에서 또는 메모리(1804)(저장장치(1806)와는 대조적으로 또는 어딘가의)에서 단지 데이터에 따라 동작한다. 하나 이상의 메모리 버스들(주소 버스 및 데이터 버스를 각각 포함할 수 있음)은 프로세서(1802)를 메모리(1804)에 결합할 수 있다. 버스(1812)는 하기에 설명된 바와 같이, 하나 이상의 메모리 버스들을 포함할 수 있다. 특정한 실시예들에서, 하나 이상의 메모리 관리 유닛(MMU)들은 프로세서(1802)와 메모리(1804) 사이에 상주하고 프로세서(1802)에 의해 요청된 메모리(1804)에 대한 액세스들을 용이하게 한다. 특정한 실시예들에서, 메모리(1804)는 랜덤 액세스 메모리(RAM)를 포함한다. 이 RAM은 적절한 경우, 휘발성 메모리일 수 있다. 적절한 경우, 이 RAM은 동적 RAM(DRAM) 또는 정적 RAM(SRAM)일 수 있다. 게다가, 적절한 경우, 이 RAM은 단일 포트되거나 다중 포트된 RAM일 수 있다. 본 개시는 임의의 적합한 RAM을 고려한다. 메모리(1804)는 적절한 경우, 하나 이상의 메모리들(1804)을 포함할 수 있다. 본 개시가 특정한 메모리를 설명하고 예시하지만, 본 개시는 임의의 적합한 메모리를 고려한다.
특정한 실시예들에서, 저장장치(1806)는 데이터 또는 명령들을 위한 대용량 저장장치를 포함한다. 제한이 아닌 예로서, 저장장치(1806)는 하드 디스크 드라이브(HDD), 플로피 디스크 드라이브, 플래시 메모리, 광 디스크, 광 자기 디스크, 자기 테이프, 또는 범용 직렬 버스(Universal Serial Bus; USB) 드라이브 또는 그들 중 2개 이상의 조합을 포함할 수 있다. 저장장치(1806)는 적절한 경우, 제거가능하거나 제거가능하지 않은(또는 고정된) 매체들을 포함할 수 있다. 저장장치(1806)는 적절한 경우, 컴퓨터 시스템(1800)의 내부 또는 외부에 있을 수 있다. 특정한 실시예들에서, 저장장치(1806)는 비 휘발성, 고체 상태 메모리이다. 특정한 실시예들에서, 저장장치(1806)는 판독 전용 메모리(ROM)를 포함한다. 적절한 경우, 이 ROM은 마스크 프로그래밍된 ROM, 프로그래밍가능한 ROM(PROM), 소거가능한 PROM(EPROM), 전기적으로 소거가능한 PROM(EEPROM), 전기적으로 개조가능한 ROM(EAROM), 또는 플래시 메모리 또는 그들 중 2개 이상의 조합을 포함한다. 본 개시는 임의의 적합한 물리적 형태를 취하는 대용량 저장장치(1806)를 고려한다. 저장장치(1806)는 적절한 경우, 프로세서(1802)와 저장장치(1806) 사이의 통신을 용이하게 하는 하나 이상의 저장 제어 유닛들을 포함할 수 있다. 적절한 경우, 저장장치(1806)는 하나 이상의 저장장치들(1806)을 포함할 수 있다. 본 개시가 특정한 저장장치를 설명하고 예시하지만, 본 개시는 임의의 적합한 저장장치를 고려한다.
특정한 실시예들에서, I/O 인터페이스(1808)는 컴퓨터 시스템(1800)과 하나 이상의 I/O 디바이스들 사이의 통신을 위한 하나 이상의 인터페이스들을 제공하는 하드웨어, 소프트웨어, 또는 둘 모두를 포함한다. 컴퓨터 시스템(1800)은 적절한 경우, 이들 I/O 디바이스들 중 하나 이상을 포함할 수 있다. 이들 I/O 디바이스들 중 하나 이상은 사람과 컴퓨터 시스템(1800) 사이의 통신을 가능하게 할 수 있다. 제한이 아닌 예로서, I/O 디바이스는 키보드, 키패드, 마이크로폰, 모니터, 마우스, 프린터, 스캐너, 스피커, 고정형 카메라, 스타일러스, 태블릿, 터치 스크린, 트랙볼, 비디오 카메라, 또 다른 적합한 I/O 디바이스 또는 이들 중 2개 이상의 조합을 포함할 수 있다. I/O 디바이스는 하나 이상의 센서들을 포함할 수 있다. 본 개시는 임의의 적합한 I/O 디바이스들 및 그들을 위한 임의의 적합한 I/O 인터페이스들(1808)을 고려한다. 적절한 경우, I/O 인터페이스(1808)는 프로세서(1802)가 이들 I/O 디바이스들 중 하나 이상을 구동하는 것을 가능하게 하는 하나 이상의 디바이스 또는 소프트웨어 구동기들을 포함할 수 있다. I/O 인터페이스(1808)는 적절한 경우, 하나 이상의 I/O 인터페이스들(1808)을 포함할 수 있다. 본 개시가 특정한 I/O 인터페이스를 설명하고 예시하지만, 본 개시는 임의의 적합한 I/O 인터페이스를 고려한다.
특정한 실시예들에서, 통신 인터페이스(1810)는 컴퓨터 시스템(1800)과 하나 이상의 다른 컴퓨터 시스템들(1800) 또는 하나 이상의 네트워크들 사이의 통신(예를 들면, 패킷 기반 통신과 같음)을 위한 하나 이상의 인터페이스들을 제공하는 하드웨어, 소프트웨어, 또는 둘 모두를 포함한다. 제한이 아닌 예로서, 통신 인터페이스(1810)는 이더넷 또는 다른 유선 기반 네트워크와 통신하기 위한 네트워크 인터페이스 제어기(NIC) 또는 네트워크 어댑터 또는 와이파이 네트워크와 같은, 무선 네트워크와 통신하기 위한 무선 NIC(WNIC) 또는 무선 어댑터를 포함할 수 있다. 본 개시는 임의의 적합한 네트워크 및 그것을 위한 임의의 적합한 통신 인터페이스(1810)를 고려한다. 제한이 아닌 예로서, 컴퓨터 시스템(1800)은 애드 혹 네트워크, 근거리 개인 통신망(PAN), 근거리 통신망(LAN), 광역 통신망(WAN), 도시권 통신망(MAN), 또는 인터넷의 하나 이상의 부분들 또는 그들 중 2개 이상의 조합과 통신할 수 있다. 이들 네트워크들 중 하나 이상의 하나 이상의 부분들은 유선 또는 무선일 수 있다. 일례로서, 컴퓨터 시스템(1800)은 무선 PAN(WPAN)(예를 들면, 블루투스 WPAN과 같음), 와이파이 네트워크, WI-MAX 네트워크, 셀룰러 전화 네트워크(예를 들면, 모바일 통신을 위한 글로벌 시스템(Global System for Mobile Communications; GSM) 네트워크와 같음), 또는 다른 적합한 무선 네트워크 또는 이들 중 2개 이상의 조합과 통신할 수 있다. 컴퓨터 시스템(1800)은 적절한 경우, 이들 네트워크 중 임의의 것을 위한 임의의 적합한 통신 인터페이스(1810)를 포함할 수 있다. 통신 인터페이스(1810)는 적절한 경우, 하나 이상의 통신 인터페이스들(1810)을 포함할 수 있다. 본 개시가 특정한 통신 인터페이스를 설명하고 예시하지만, 본 개시는 임의의 적합한 통신 인터페이스를 고려한다.
특정한 실시예들에서, 버스(1812)는 컴퓨터 시스템(1800)의 구성요소들을 서로 결합하는 하드웨어, 소프트웨어, 또는 둘 모두를 포함한다. 제한이 아닌 예로서, 버스(1812)는 가속화된 그래픽 포트(Accelerated Graphics Port; AGP) 또는 다른 그래픽 버스, 향상된 산업 표준 아키텍처(Enhanced Industry Standard Architecture; EISA) 버스, FSB(front-side bus), 하이퍼트랜스포트(HYPERTRANSPORT)(HT) 상호연결, 산업 표준 아키텍처(ISA) 버스, 인피니밴드 상호연결, LPC(low-pin-count) 버스, 메모리 버스, 마이크로 채널 아키텍처(Micro Channel Architecture; MCA) 버스, 주변 구성요소 상호연결(Peripheral Component Interconnect; PCI) 버스, PCI-Express(PCIe) 버스, SATA(serial advanced technology attachment) 버스, VLB(Video Electronics Standards Association local) 버스, 또는 또 다른 적합한 버스 또는 이들 중 2개 이상의 조합을 포함할 수 있다. 버스(1812)는 적절한 경우, 하나 이상의 버스들(1812)을 포함할 수 있다. 본 개시가 특정한 버스를 설명하고 예시하지만, 본 개시는 임의의 적합한 버스 또는 상호연결부를 고려한다.
본 명세서에서, 컴퓨터 판독 가능한 비-일시적 저장 매체 또는 매체들은 하나 이상의 반도체 기반 또는 다른 집적 회로들(ICs)(예를 들면, 필드 프로그래밍가능한 게이트 어레이들(FPGAs) 또는 주문형 반도체들(ASICs)과 같음), 하드 디스크 드라이브들(HDDs), 하이브리드 하드 드라이브들(HHDs), 광 디스크들, 광 디스크 드라이브들(ODDs), 광 자기 디스크들, 광 자기 드라이브들, 플로피 디스켓들, 플로피 디스크 드라이브들(FDDs), 자기 테이프들, 고체 상태 드라이브들(SSDs), RAM 드라이브들, 보안 디지털 카드들 또는 드라이브들, 임의의 다른 적합한 컴퓨터 판독 가능한 비-일시적 저장 매체들, 또는 적절한 경우, 이들 중 2개 이상의 임의의 적합한 조합을 포함할 수 있다. 컴퓨터 판독 가능한 비-일시적 저장 매체는 적절한 경우, 휘발성, 비 휘발성, 또는 휘발성 및 비 휘발성의 조합일 수 있다.
본 명세서에서, "또는"은 명확하게 다르게 나타내거나 맥락에 의해 다르게 나타내지 않는 한, 포괄적이고 배타적이지 않다. 따라서, 본 명세서에서, "A 또는 B"는 명확하게 다르게 나타내거나 맥락에 의해 다르게 나타내지 않는 한, "A, B, 또는 둘 모두"를 의미한다. 게다가, "및"은 명확하게 다르게 나타내거나 맥락에 의해 다르게 나타내지 않는 한, 공동 및 몇몇 둘 모두이다. 따라서, 본 명세서에서, "A 및 B"는 명확하게 다르게 나타내거나 맥락에 의해 다르게 나타내지 않는 한, "A 및 B, 공동으로 또는 개별적으로"를 의미한다.
본 개시의 범위는 당업자가 이해할 본 명세서에서 설명되고 도시된 예시적인 실시예들에 대한 모든 변경들, 교체들, 변형들, 개조들, 및 수정들을 포함한다. 본 개시의 범위는 본 명세서에서 설명되고 도시된 예시적인 실시예들에서 제한되지 않는다. 게다가, 본 개시가 본 명세서에서의 각각의 실시예들을 특정한 구성요소들, 요소들, 피처, 기능들, 동작들, 또는 단계들을 포함하는 것으로 설명하고 예시하지만, 이들 실시예들 중 임의의 것은 당업자가 이해할 본 명세서의 어딘가에서 설명되고 예시된 구성요소들, 요소들, 피처들, 기능들, 동작들, 또는 단계들 중 임의의 것의 임의의 조합 또는 순열을 포함할 수 있다. 더욱이, 특정 기능을 수행하도록 적응되거나, 배열되거나, 할 수 있거나, 구성되거나, 할 수 있게 되거나, 동작 가능하거나, 또는 동작하는 장치 또는 시스템, 또는 장치 또는 시스템의 구성요소에 대한 첨부된 청구범위에서의 참조는, 그 장치, 시스템, 또는 구성성분이 적응되고, 배열되고, 할 수 있고, 구성되고, 할 수 있게 되고, 동작 가능하고, 동작하는 한, 그 장치, 시스템, 또는 구성성분, 또는 그 특정 기능이 활성화되거나, 턴 온되거나, 또는 잠금해제되는 것과는 무관하게 그 장치, 시스템, 또는 구성요소를 망라한다.

Claims (99)

  1. 컴퓨팅 시스템에 의한 방법으로서:
    하나 이상의 제2 가상 콘텐트를 포함하는 가상 영역에서 제1 가상 콘텐트를 제1 사용자에게 디스플레이하는 단계;
    제1 사용자 행동들 또는 상황 정보 중 하나 이상에 기초하여 제1 가상 콘텐트와 상호작용할 제1 사용자의 의도를 추론하는 단계; 및
    제1 가상 콘텐트와 상호작용할 제1 사용자의 의도의 추론에 기초하여 제2 가상 콘텐트 중 하나 이상과 연관된 하나 이상의 구성들을 조정하는 단계를 포함하는, 방법.
  2. 제1항에 있어서, 상기 제1 사용자 행동들은:
    상기 제1 가상 콘텐트에 초점을 맞춘 사용자의 눈 움직임들;
    상기 제1 사용자에 의한 구두 요청들;
    상기 제1 가상 콘텐트와 연관된 사용자 입력들; 또는
    상기 제2 가상 콘텐트 중 하나 이상과 연관된 사용자 입력들, 중 하나 이상을 포함하는, 방법.
  3. 제1항에 있어서, 상기 상황 정보는:
    상기 제1 사용자와 연관된 위치 정보;
    상기 제1 사용자와 연관된 움직임 정보;
    상기 제1 사용자와 연관된 시간 정보;
    상기 제1 가상 콘텐트와 연관된 사전 설정 행동들;
    상기 제1 가상 콘텐트가 연관된 콘텐트 유형; 또는
    상기 제1 가상 콘텐트가 연관된 서비스 유형, 중 하나 이상을 포함하는, 방법.
  4. 제3항에 있어서, 상기 제1 사용자와 연관된 시간 정보는 사용자가 행동하지 않는(user inaction) 미리 결정된 기간의 시간을 포함하는, 방법.
  5. 제1항에 있어서, 상기 제1 사용자의 의도를 추론하는 것은 연관된 소셜 네트워크의 하나 이상의 사용자들에 적어도 부분적으로 기초하는 가상적인 사용자의 관점에 적어도 부분적으로 기초하는, 방법.
  6. 제5항에 있어서, 상기 가상적인 사용자는 적어도 부분적으로:
    상기 소셜 네트워크의 각각의 사용자; 또는
    상기 소셜 네트워크 사용자들의 하나 이상의 서브세트들에 기초하는, 방법.
  7. 제1항에 있어서, 상기 제2 가상 콘텐트와 연관된 하나 이상의 구성들을 조정하는 것은:
    상기 제2 가상 콘텐트 중 하나 이상에 대한 하나 이상의 시각적 속성들을 조정하는 것;
    상기 제2 가상 콘텐트 중 하나 이상에 대한 하나 이상의 오디오 속성들을 조정하는 것; 또는
    상기 제2 가상 콘텐트 중 하나 이상에 대한 하나 이상의 소셜 네트워킹 속성들을 조정하는 것, 중 하나 이상을 포함하는, 방법.
  8. 제7항에 있어서, 상기 제2 가상 콘텐트 중 하나 이상에 대한 시각적 속성들 또는 오디오 속성들의 조정은 상기 제2 가상 콘텐트가 연관되는 콘텐트의 유형 또는 상기 제2 가상 콘텐트가 연관되는 서비스의 유형에 적어도 부분적으로 기초하여 결정되는, 방법.
  9. 제7항에 있어서, 상기 소셜 네트워킹 속성들의 조정은 상기 제2 가상 콘텐트와 연관된 소셜 네트워크로부터의 모든 통지들을 일시적으로 제한하거나 제거하는 것을 포함하는, 방법.
  10. 제1항에 있어서, 상기 가상 영역은 가상 현실 환경에 상주하고, 상기 제1 사용자는 상기 가상 현실 환경에 있는 가상 사용자인, 방법.
  11. 소프트웨어를 포함하는 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체로서, 상기 소프트웨어는 실행될 때:
    하나 이상의 제2 가상 콘텐트를 포함하는 가상 영역에서 제1 가상 콘텐트를 제1 사용자에게 디스플레이하고;
    제1 사용자 행동들 또는 상황 정보 중 하나 이상에 기초하여 상기 제1 가상 콘텐트와 상호작용할 제1 사용자의 의도를 추론하고;
    상기 제1 가상 콘텐트와 상호작용할 제1 사용자의 의도의 추론에 기초하여 상기 제2 가상 콘텐트 중 하나 이상과 연관된 하나 이상의 구성들을 조정하도록 동작 가능한, 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체.
  12. 제11항에 있어서, 상기 제1 사용자 행동들은:
    상기 제1 가상 콘텐트에 초점을 맞춘 사용자의 눈 움직임들;
    상기 제1 사용자에 의한 구두 요청들;
    상기 제1 가상 콘텐트와 연관된 사용자 입력들; 또는
    상기 제2 가상 콘텐트 중 하나 이상과 연관된 사용자 입력들, 중 하나 이상을 포함하는, 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체.
  13. 제11항에 있어서, 상기 상황 정보는:
    상기 제1 사용자와 연관된 위치 정보;
    상기 제1 사용자와 연관된 움직임 정보;
    상기 제1 사용자와 연관된 시간 정보;
    제1 가상 콘텐트와 연관된 하나 이상의 사전 설정 행동들;
    상기 제1 가상 콘텐트가 연관된 콘텐트 유형; 또는
    상기 제1 가상 콘텐트가 연관된 서비스 유형, 중 하나 이상을 포함하는, 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체.
  14. 제11항에 있어서, 상기 제1 사용자의 의도를 추론하는 것은 연관된 소셜 네트워크의 하나 이상의 사용자들에 적어도 부분적으로 기초하는 가상적인 사용자의 관점에 적어도 부분적으로 기초하는, 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체.
  15. 제11항에 있어서, 상기 제2 가상 콘텐트와 연관된 하나 이상의 구성들을 조정하는 것은:
    상기 제2 가상 콘텐트 중 하나 이상에 대한 하나 이상의 시각적 속성들을 조정하는 것;
    상기 제2 가상 콘텐트 중 하나 이상에 대한 하나 이상의 오디오 속성들을 조정하는 것; 또는
    상기 제2 가상 콘텐트 중 하나 이상에 대한 하나 이상의 소셜 네트워킹 속성들을 조정하는 것, 중 하나 이상을 포함하는, 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체.
  16. 시스템으로서:
    하나 이상의 프로세서들; 및
    상기 프로세서들에 결합되고 상기 프로세서들에 의해 실행 가능한 명령들을 포함하는 메모리를 포함하며,
    상기 프로세서들은 상기 명령들을 실행할 때:
    하나 이상의 제2 가상 콘텐트를 포함하는 가상 영역에서 제1 가상 콘텐트를 제1 사용자에게 디스플레이하고;
    제1 사용자 행동들 또는 상황 정보 중 하나 이상에 기초하여 상기 제1 가상 콘텐트와 상호작용할 제1 사용자의 의도를 추론하고;
    상기 제1 가상 콘텐트와 상호작용할 제1 사용자의 의도의 추론에 기초하여 상기 제2 가상 콘텐트 중 하나 이상과 연관된 하나 이상의 구성들을 조정하도록 동작 가능한, 시스템.
  17. 제16항에 있어서, 상기 제1 사용자 행동들은:
    상기 제1 가상 콘텐트에 초점을 맞춘 사용자의 눈 움직임들;
    상기 제1 사용자에 의한 구두 요청들;
    상기 제1 가상 콘텐트와 연관된 사용자 입력들; 또는
    상기 제2 가상 콘텐트 중 하나 이상과 연관된 사용자 입력들, 중 하나 이상을 포함하는, 시스템.
  18. 제16항에 있어서, 상기 상황 정보는:
    상기 제1 사용자와 연관된 위치 정보;
    상기 제1 사용자와 연관된 움직임 정보;
    상기 제1 사용자와 연관된 시간 정보;
    제1 가상 콘텐트와 연관된 하나 이상의 사전 설정 행동들;
    상기 제1 가상 콘텐트가 연관된 콘텐트 유형; 또는
    상기 제1 가상 콘텐트가 연관된 서비스 유형, 중 하나 이상을 포함하는, 시스템.
  19. 제16항에 있어서, 상기 제1 사용자의 의도를 추론하는 것은 연관된 소셜 네트워크의 하나 이상의 사용자들에 적어도 부분적으로 기초하는 가상적인 사용자의 관점에 적어도 부분적으로 기초하는, 시스템.
  20. 제16항에 있어서, 상기 제2 가상 콘텐트와 연관된 하나 이상의 구성들을 조정하는 것은:
    상기 제2 가상 콘텐트 중 하나 이상에 대한 하나 이상의 시각적 속성들을 조정하는 것;
    상기 제2 가상 콘텐트 중 하나 이상에 대한 하나 이상의 오디오 속성들을 조정하는 것; 또는
    상기 제2 가상 콘텐트 중 하나 이상에 대한 하나 이상의 소셜 네트워킹 속성들을 조정하는 것, 중 하나 이상을 포함하는, 시스템.
  21. 컴퓨팅 시스템에 의한 방법으로서:
    제1 사용자로부터, 하나 이상의 제2 사용자들과 함께 사용할 공동 가상 공간을 생성하라는 요청을 수신하는 단계;
    제1 방(room)과 연관된 공간 제한들 및 상기 제1 방 내의 하나 이상의 아이템들의 위치들에 적어도 부분적으로 기초하여 상기 제1 사용자와 연관된 제1 방 내의 제1 영역을 결정하는 단계;
    상기 제2 사용자들 각각에 대한 하나 이상의 제2 방들과 연관된 정보를 검색하는 단계;
    상기 제1 방의 제1 영역 및 상기 제2 방들 각각과 연관된 정보에 기초하여 공동 가상 공간을 생성하는 단계; 및
    상기 제1 사용자 및 상기 하나 이상의 제2 사용자들 각각에게 상기 공동 가상 공간에 대한 액세스를 제공하는 단계를 포함하는, 방법.
  22. 제21항에 있어서, 상기 하나 이상의 제2 방들과 연관된 정보를 검색하기 전에, 상기 제1 방의 제1 영역이 미리 결정된 최소 영역과 같거나 큰지 여부를 결정하는 단계를 더 포함하는, 방법.
  23. 제21항에 있어서, 상기 제1 영역은 상기 공간 제한들 및 상기 제1 방에 있는 하나 이상의 아이템들의 위치들을 평가한 후 상기 제1 방과 연관된 최대 자유 공간을 계산함으로써 결정되는, 방법.
  24. 제23항에 있어서, 상기 제2 방들과 연관된 검색된 정보는 적어도:
    상기 제2 사용자들 각각에 대한 제2 방들 각각과 연관된 공간 제한들; 및
    상기 제2 사용자들 각각에 대한 제2 방들 각각에 있는 하나 이상의 아이템들의 위치들을 포함하는, 방법.
  25. 제24항에 있어서,
    상기 공간 제한들 및 상기 하나 이상의 아이템들의 위치들에 적어도 부분적으로 기초하여 상기 하나 이상의 제2 방들 각각에 대한 제2 영역을 결정하는 단계를 더 포함하며,
    상기 제2 영역은 상기 공간 제한 및 상기 하나 이상의 제2 방들 각각에서 상기 하나 이상의 아이템들의 위치들을 평가한 후 상기 하나 이상의 제2 방들 각각과 연관된 최대 자유 공간을 계산함으로써 결정되는, 방법.
  26. 제25항에 있어서, 상기 공동 가상 공간은 상기 제1 방과 연관된 최대 자유 공간과 상기 하나 이상의 제2 방들 각각과 연관된 최대 자유 공간 사이의 최대 오버랩을 결정함으로써 생성되는, 방법.
  27. 제21항에 있어서, 상기 공동 가상 공간에 대한 액세스를 제공하는 것은 상기 공동 가상 공간이 사용 가능하다는 것을 상기 제1 사용자 및 상기 하나 이상의 제2 사용자들 각각에게 통지하는 것을 포함하는, 방법.
  28. 제27항에 있어서, 상기 제1 사용자 및 상기 하나 이상의 제2 사용자들 각각에게 통지하는 것은 상기 제1 사용자 및 상기 하나 이상의 제2 사용자들 각각이 상기 공동 가상 공간에 가상으로 액세스하도록 허용하는 포털 오브젝트를 생성하도록 하는 명령들을 상기 제1 사용자 및 상기 하나 이상의 제2 사용자들 각각에게 보내는 것을 포함하는, 방법.
  29. 제21항에 있어서, 상기 포털 오브젝트를 생성하는 것은:
    상기 제1 사용자가 상기 공동 가상 공간에 가상으로 액세스하도록 허용하는 상기 제1 방의 제1 영역 내에 가상 출입구를 그리게(draw) 하는 명령들을 상기 제1 사용자에게 보내는 것; 및
    상기 제2 사용자들 각각이 상기 공동 가상 공간에 가상으로 액세스하도록 허용하는 상기 제2 방들 각각에 가상 출입구를 그리게 하는 명령들을 상기 제2 사용자들 각각에게 보내는 것을 포함하는, 방법.
  30. 제21항에 있어서, 상기 공동 가상 공간은 가상 현실 환경에 상주하며, 상기 제1 사용자 및 상기 하나 이상의 제2 사용자들 각각은 상기 가상 현실 환경의 가상 사용자들인, 방법.
  31. 소프트웨어를 포함하는 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체로서, 상기 소프트웨어는 실행될 때:
    상기 제1 사용자로부터, 하나 이상의 제2 사용자들과 함께 사용할 공동 가상 공간을 생성하라는 요청을 수신하고;
    제1 방과 연관된 공간 제한들 및 상기 제1 방 내의 하나 이상의 아이템들의 위치들에 적어도 부분적으로 기초하여 상기 제1 사용자와 연관된 제1 방 내의 제1 영역을 결정하고;
    상기 제2 사용자들 각각에 대한 하나 이상의 제2 방과 연관된 정보를 검색하고;
    상기 제1 방의 제1 영역 및 상기 제2 방들 각각과 연관된 정보에 기초하여 상기 공동 가상 공간을 생성하고;
    상기 제1 사용자 및 상기 하나 이상의 제2 사용자들 각각에게 상기 공동 가상 공간에 대한 액세스를 제공하도록 동작 가능한, 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체.
  32. 제31항에 있어서, 상기 제1 영역은 상기 공간 제한들 및 상기 제1 방에 있는 하나 이상의 아이템들의 위치들을 평가한 후 상기 제1 방과 연관된 최대 자유 공간을 계산함으로써 결정되는, 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체.
  33. 제32항에 있어서, 상기 제2 방들과 연관된 검색된 정보는 적어도:
    상기 제2 사용자들 각각에 대한 제2 방들 각각과 연관된 공간 제한들; 및
    상기 제2 사용자들 각각에 대한 제2 방들 각각에 있는 하나 이상의 아이템들의 위치들을 포함하는, 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체.
  34. 제33항에 있어서,
    상기 공간 제한들 및 상기 하나 이상의 아이템들의 위치들에 적어도 부분적으로 기초하여 상기 하나 이상의 제2 방들 각각에 대한 제2 영역을 결정하는 것을 더 포함하고,
    상기 제2 영역은 상기 공간 제한 및 상기 하나 이상의 제2 방들 각각에서 상기 하나 이상의 아이템들의 위치들을 평가한 후 상기 하나 이상의 제2 방들 각각과 연관된 최대 자유 공간을 계산함으로써 결정되는, 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체.
  35. 제34항에 있어서, 상기 공동 가상 공간은 상기 제1 방과 연관된 최대 자유 공간과 상기 하나 이상의 제2 방들 각각과 연관된 최대 자유 공간 사이의 최대 오버랩을 결정함으로써 생성되는, 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체.
  36. 시스템으로서:
    하나 이상의 프로세서들; 및
    상기 프로세서들에 결합되고 상기 프로세서들에 의해 실행 가능한 명령들을 포함하는 메모리를 포함하며,
    상기 프로세서들은 상기 명령들을 실행할 때:
    상기 제1 사용자로부터, 하나 이상의 제2 사용자들과 함께 사용할 공동 가상 공간을 생성하라는 요청을 수신하고;
    제1 방과 연관된 공간 제한들 및 상기 제1 방 내의 하나 이상의 아이템들의 위치들에 적어도 부분적으로 기초하여 상기 제1 사용자와 연관된 제1 방 내의 제1 영역을 결정하고;
    상기 제2 사용자들 각각에 대한 하나 이상의 제2 방들과 연관된 정보를 검색하고;
    상기 제1 방의 제1 영역 및 상기 제2 방들 각각과 연관된 정보에 기초하여 상기 공동 가상 공간을 생성하고;
    상기 제1 사용자 및 상기 하나 이상의 제2 사용자들 각각에게 상기 공동 가상 공간에 대한 액세스를 제공하도록 동작 가능한, 시스템.
  37. 제36항에 있어서, 상기 제1 영역은 상기 공간 제한들 및 상기 제1 방에 있는 하나 이상의 아이템들의 위치들을 평가한 후 상기 제1 방과 연관된 최대 자유 공간을 계산함으로써 결정되는, 시스템.
  38. 제37항에 있어서, 상기 제2 방들과 연관된 검색된 정보는 적어도:
    상기 제2 사용자들 각각에 대한 제2 방들 각각과 연관된 공간 제한들; 및
    상기 제2 사용자들 각각에 대한 제2 방들 각각에 있는 하나 이상의 아이템들의 위치들을 포함하는, 시스템.
  39. 제38항에 있어서,
    상기 공간 제한들 및 상기 하나 이상의 아이템들의 위치들에 적어도 부분적으로 기초하여 상기 하나 이상의 제2 방들 각각에 대한 제2 영역을 결정하는 것을 더 포함하고,
    상기 제2 영역은 상기 공간 제한 및 상기 하나 이상의 제2 방들 각각에서 상기 하나 이상의 아이템들의 위치들을 평가한 후 상기 하나 이상의 제2 방들 각각과 연관된 최대 자유 공간을 계산함으로써 결정되는, 시스템.
  40. 제39항에 있어서, 상기 공동 가상 공간은 상기 제1 방과 연관된 최대 자유 공간과 상기 하나 이상의 제2 방들 각각과 연관된 최대 자유 공간 사이의 최대 오버랩을 결정함으로써 생성되는, 시스템.
  41. 컴퓨팅 시스템에 의한 방법으로서:
    제1 인터랙티브 아이템의 디스플레이를 하나 이상의 사용자들과 공유하도록 하는 요청을 수신하는 단계;
    상기 제1 인터랙티브 아이템의 카피로서 제1 가상 아이템을 생성하는 단계; 및
    가상 현실 환경의 제1 가상 아이템을 상기 하나 이상의 사용자들의 서브세트에 디스플레이하는 단계를 포함하며,
    상기 제1 인터랙티브 아이템에 대한 변경이 수신되면, 상기 가상 현실 환경에서 상기 제1 가상 아이템의 디스플레이가 상기 제1 인터랙티브 아이템과 동일한 변경을 포함하도록 업데이트되는, 방법.
  42. 제41항에 있어서, 상기 제1 인터랙티브 아이템의 디스플레이를 공유하기 위한 요청은 제1 인터랙티브 아이템과 현재 상호작용하고 있는 상기 하나 이상의 사용자들 중 제1 사용자로부터의 것인, 방법.
  43. 제41항에 있어서, 상기 제1 인터랙티브 아이템의 디스플레이를 공유하기 위한 요청은 상기 하나 이상의 제2 사용자로부터의 것이며, 상기 하나 이상의 제2 사용자들은 상기 가상 현실 환경과 연관된 가상 사용자들인, 방법.
  44. 제41항에 있어서, 상기 제1 인터랙티브 아이템의 디스플레이를 공유하도록 하는 요청을 수신하기 전에,
    환경에서 하나 이상의 인터랙티브 아이템들을 결정하는 단계; 및
    가상 현실 환경에 디스플레이할 인터랙티브 아이템들 중 적어도 하나의 선택을 위해 인터랙티브 아이템들의 리스트를 제1 사용자에게 보내는 단계를 더 포함하는, 방법.
  45. 제41항에 있어서, 상기 하나 이상의 사용자들의 서브세트는 상기 가상 현실 환경의 가상 사용자들을 포함하는, 방법.
  46. 제41항에 있어서, 상기 제1 인터랙티브 아이템은 실세계 환경에 위치하는, 방법.
  47. 제45항에 있어서,
    상기 실세계 환경에서 상기 제1 인터랙티브 아이템을 둘러싸는 하나 이상의 다른 아이템들과 관련하여 상기 제1 인터랙티브 아이템의 위치에 액세스하는 단계;
    상기 하나 이상의 다른 아이템들의 카피들로서 하나 이상의 제2 가상 아이템들을 생성하는 단계; 및
    상기 실세계 환경의 하나 이상의 다른 아이템들과 관련하여 상기 제1 인터랙티브 아이템의 위치에 기초하여 상기 가상 현실 환경에서 상기 제1 가상 아이템 및 상기 하나 이상의 제2 가상 아이템들을 디스플레이하는 단계를 더 포함하는, 방법.
  48. 제46항에 있어서,
    상기 실세계 환경에서 상기 제1 인터랙티브 아이템의 지향방향(orientation)에 액세스하는 단계; 및
    상기 실세계 환경에서 상기 제1 인터랙티브 아이템의 지향방향에 기초하여 상기 가상 현실 환경에서 상기 제1 가상 아이템을 디스플레이하는 단계를 더 포함하는, 방법.
  49. 제41항에 있어서,
    사용자들의 서브세트 중 하나 이상의 사용자들로부터 상기 제1 가상 아이템과 연관된 코멘트들을 수신하는 단계; 및
    상기 실세계 환경에서 상기 제1 인터랙티브 아이템과 현재 상호작용하고 있는 하나 이상의 사용자들 중 제1 사용자에게 디스플레이될 코멘트들을 보내는 단계를 더 포함하는, 방법.
  50. 제49항에 있어서, 상기 코멘트들은 오디오 코멘트들, 비디오 코멘트들, 또는 서면 코멘트들(written comments) 중 하나 이상을 포함하는, 방법.
  51. 소프트웨어를 포함하는 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체로서, 상기 소프트웨어는 실행될 때:
    제1 인터랙티브 아이템의 디스플레이를 하나 이상의 사용자들과 공유하도록 하는 요청을 수신하고;
    상기 제1 인터랙티브 아이템의 카피로서 제1 가상 아이템을 생성하고;
    가상 현실 환경의 제1 가상 아이템을 상기 하나 이상의 사용자들의 서브세트에 디스플레이하도록 동작 가능하고;
    상기 제1 인터랙티브 아이템에 대한 변경이 수신되면, 상기 가상 현실 환경에서 상기 제1 가상 아이템의 디스플레이가 상기 제1 인터랙티브 아이템과 동일한 변경을 포함하도록 업데이트되는, 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체.
  52. 제51항에 있어서, 상기 소프트웨어는 또한, 실행될 때, 상기 제1 인터랙티브 아이템의 디스플레이를 공유하도록 하는 요청을 수신하기 전에,
    환경에서 하나 이상의 인터랙티브 아이템들을 결정하고;
    상기 가상 현실 환경에 디스플레이할 인터랙티브 아이템들 중 적어도 하나의 선택을 위해 인터랙티브 아이템들의 리스트를 제1 사용자에게 보내도록 동작 가능한, 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체.
  53. 제51항에 있어서, 상기 제1 인터랙티브 아이템은 실세계 환경에 위치하는, 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체.
  54. 제53항에 있어서, 상기 소프트웨어는 또한 실행될 때:
    상기 실세계 환경에서 상기 제1 인터랙티브 아이템을 둘러싸는 하나 이상의 다른 아이템들과 관련하여 상기 제1 인터랙티브 아이템의 위치에 액세스하고;
    상기 하나 이상의 다른 아이템들의 카피들로서 하나 이상의 제2 가상 아이템들을 생성하고;
    상기 실세계 환경의 하나 이상의 다른 아이템들과 관련하여 상기 제1 인터랙티브 아이템의 위치에 기초하여 상기 가상 현실 환경에서 상기 제1 가상 아이템 및 상기 하나 이상의 제2 가상 아이템들을 디스플레이하도록 동작 가능한, 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체.
  55. 제53항에 있어서, 상기 소프트웨어는 또한 실행될 때:
    상기 실세계 환경에서 상기 제1 인터랙티브 아이템의 지향방향에 액세스하고;
    상기 실세계 환경에서 상기 제1 인터랙티브 아이템의 지향방향에 기초하여 상기 가상 현실 환경에서 상기 제1 가상 아이템을 디스플레이하도록 동작 가능한, 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체.
  56. 시스템으로서:
    하나 이상의 프로세서들; 및
    상기 프로세서들에 결합되고 상기 프로세서들에 의해 실행 가능한 명령들을 포함하는 메모리를 포함하며,
    상기 프로세서들은 상기 명령들을 실행할 때:
    제1 인터랙티브 아이템의 디스플레이를 하나 이상의 사용자들과 공유하도록 하는 요청을 수신하고;
    상기 제1 인터랙티브 아이템의 카피로서 제1 가상 아이템을 생성하고;
    가상 현실 환경의 제1 가상 아이템을 상기 하나 이상의 사용자들의 서브세트에 디스플레이하도록 동작 가능하며,
    상기 제1 인터랙티브 아이템에 대한 변경이 수신되면, 상기 가상 현실 환경에서 상기 제1 가상 아이템의 디스플레이가 상기 제1 인터랙티브 아이템과 동일한 변경을 포함하도록 업데이트되는, 시스템.
  57. 제56항에 있어서, 상기 프로세서들은 또한, 상기 명령들을 실행할 때, 상기 제1 인터랙티브 아이템의 디스플레이를 공유하도록 하는 요청을 수신하기 전에,
    환경에서 하나 이상의 인터랙티브 아이템들을 결정하고;
    상기 가상 현실 환경에 디스플레이할 인터랙티브 아이템들 중 적어도 하나의 선택을 위해 인터랙티브 아이템들의 리스트를 제1 사용자에게 보내도록 동작 가능한, 시스템.
  58. 제56항에 있어서, 상기 제1 인터랙티브 아이템은 실세계 환경에 위치하는, 시스템.
  59. 제58항에 있어서, 상기 프로세서들은 또한, 상기 명령들을 실행할 때:
    상기 실세계 환경에서 상기 제1 인터랙티브 아이템을 둘러싸는 하나 이상의 다른 아이템들과 관련하여 상기 제1 인터랙티브 아이템의 위치에 액세스하고;
    상기 하나 이상의 다른 아이템들의 카피들로서 하나 이상의 제2 가상 아이템들을 생성하고;
    상기 실세계 환경의 하나 이상의 다른 아이템들과 관련하여 상기 제1 인터랙티브 아이템의 위치에 기초하여 상기 가상 현실 환경에서 상기 제1 가상 아이템 및 상기 하나 이상의 제2 가상 아이템들을 디스플레이하도록 동작 가능한, 시스템.
  60. 제58항에 있어서, 상기 프로세서들은 또한, 상기 명령들을 실행할 때:
    상기 실세계 환경에서 상기 제1 인터랙티브 아이템의 지향방향에 액세스하고;
    상기 실세계 환경에서 제1 인터랙티브 아이템의 지향방향에 기초하여 상기 가상 현실 환경에서 상기 제1 가상 아이템을 디스플레이하도록 동작 가능한, 시스템.
  61. 컴퓨팅 시스템에 의한 방법으로서:
    하나 이상의 제2 가상 콘텐트를 포함하는 가상 영역에서 제1 가상 콘텐트를 제1 사용자에게 디스플레이하는 단계;
    제1 사용자 행동들 또는 상황 정보 중 하나 이상에 기초하여 제1 가상 콘텐트와 상호작용할 제1 사용자의 의도를 추론하는 단계; 및
    상기 제1 가상 콘텐트와 상호작용할 상기 제1 사용자의 의도의 추론에 기초하여 상기 제2 가상 콘텐트 중 하나 이상과 연관된 하나 이상의 구성들을 조정하는 단계를 포함하는, 방법.
  62. 제61항에 있어서, 상기 제1 사용자 행동들은:
    상기 제1 가상 콘텐트에 초점을 맞춘 사용자의 눈 움직임들;
    상기 제1 사용자에 의한 구두 요청들;
    상기 제1 가상 콘텐트와 연관된 사용자 입력들; 또는
    상기 제2 가상 콘텐트 중 하나 이상과 연관된 사용자 입력들, 중 하나 이상을 포함하는, 방법.
  63. 제61항 또는 제62항에 있어서, 상기 상황 정보는:
    상기 제1 사용자와 연관된 위치 정보;
    상기 제1 사용자와 연관된 움직임 정보;
    상기 제1 사용자와 연관된 시간 정보;
    상기 제1 가상 콘텐트와 연관된 사전 설정 행동들;
    상기 제1 가상 콘텐트가 연관된 콘텐트 유형; 또는
    상기 제1 가상 콘텐트가 연관된 서비스 유형, 중 하나 이상을 포함하며,
    선택적으로, 상기 제1 사용자와 연관된 시간 정보는 사용자가 행동하지 않는 미리 결정된 기간의 시간을 포함하는, 방법.
  64. 제61항 내지 제63항 중 어느 한 항에 있어서,
    상기 제1 사용자의 의도를 추론하는 것은 연관된 소셜 네트워크의 하나 이상의 사용자들에 적어도 부분적으로 기초하는 가상적인 사용자의 관점에 적어도 부분적으로 기초하며,
    선택적으로, 상기 가상적인 사용자는 적어도 부분적으로:
    상기 소셜 네트워크의 각각의 사용자; 또는
    상기 소셜 네트워크 사용자들의 하나 이상의 서브세트들에 기초하는, 방법.
  65. 제61항 내지 제64항 중 어느 한 항에 있어서, 상기 제2 가상 콘텐트와 연관된 하나 이상의 구성들을 조정하는 것은:
    상기 제2 가상 콘텐트 중 하나 이상에 대한 하나 이상의 시각적 속성들을 조정하는 것;
    상기 제2 가상 콘텐트 중 하나 이상에 대한 하나 이상의 오디오 속성들을 조정하는 것; 또는
    상기 제2 가상 콘텐트 중 하나 이상에 대한 하나 이상의 소셜 네트워킹 속성들을 조정하는 것, 중 하나 이상을 포함하며,
    선택적으로, 상기 제2 가상 콘텐트 중 하나 이상에 대한 시각적 속성들 또는 오디오 속성들의 조정은 상기 제2 가상 콘텐트가 연관되는 콘텐트의 유형 또는 상기 제2 가상 콘텐트가 연관되는 서비스의 유형에 적어도 부분적으로 기초하여 결정되고,
    선택적으로, 상기 소셜 네트워킹 속성들의 조정은 상기 제2 가상 콘텐트와 연관된 소셜 네트워크로부터의 모든 통지들을 일시적으로 제한하거나 제거하는 것을 포함하는, 방법.
  66. 제61항 내지 제65항 중 어느 한 항에 있어서, 상기 가상 영역은 가상 현실 환경에 상주하고, 상기 제1 사용자는 상기 가상 현실 환경에 있는 가상 사용자인, 방법.
  67. 소프트웨어를 포함하는 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체로서, 상기 소프트웨어는 실행될 때 제61항 내지 제66항 중 어느 한 항에 따른 방법을 수행하거나, 또는:
    하나 이상의 제2 가상 콘텐트를 포함하는 가상 영역에서 제1 가상 콘텐트를 제1 사용자에게 디스플레이하고;
    제1 사용자 행동들 또는 상황 정보 중 하나 이상에 기초하여 상기 제1 가상 콘텐트와 상호작용할 제1 사용자의 의도를 추론하고;
    상기 제1 가상 콘텐트와 상호작용할 제1 사용자의 의도의 추론에 기초하여 상기 제2 가상 콘텐트 중 하나 이상과 연관된 하나 이상의 구성들을 조정하도록 동작 가능한, 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체.
  68. 제67항에 있어서, 상기 제1 사용자 행동들은:
    상기 제1 가상 콘텐트에 초점을 맞춘 사용자의 눈 움직임들;
    상기 제1 사용자에 의한 구두 요청들;
    상기 제1 가상 콘텐트와 연관된 사용자 입력들; 또는
    상기 제2 가상 콘텐트 중 하나 이상과 연관된 사용자 입력들, 중 하나 이상을 포함하는, 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체.
  69. 제67항 또는 제68항에 있어서, 상기 상황 정보는:
    상기 제1 사용자와 연관된 위치 정보;
    상기 제1 사용자와 연관된 움직임 정보;
    상기 제1 사용자와 연관된 시간 정보;
    제1 가상 콘텐트와 연관된 하나 이상의 사전 설정 행동들;
    상기 제1 가상 콘텐트가 연관된 콘텐트 유형; 또는
    상기 제1 가상 콘텐트가 연관된 서비스 유형, 중 하나 이상을 포함하는, 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체.
  70. 제67항 내지 제69항 중 어느 한 항에 있어서,
    상기 제1 사용자의 의도를 추론하는 것은 연관된 소셜 네트워크의 하나 이상의 사용자들에 적어도 부분적으로 기초하는 가상적인 사용자의 관점에 적어도 부분적으로 기초하고; 및/또는
    상기 제2 가상 콘텐트와 연관된 하나 이상의 구성들을 조정하는 것은:
    상기 제2 가상 콘텐트 중 하나 이상에 대한 하나 이상의 시각적 속성들을 조정하는 것;
    상기 제2 가상 콘텐트 중 하나 이상에 대한 하나 이상의 오디오 속성들을 조정하는 것; 또는
    상기 제2 가상 콘텐트 중 하나 이상에 대한 하나 이상의 소셜 네트워킹 속성들을 조정하는 것, 중 하나 이상을 포함하는, 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체.
  71. 시스템으로서:
    하나 이상의 프로세서들; 및
    상기 프로세서들에 결합되고 상기 프로세서들에 의해 실행 가능한 명령들을 포함하는 메모리를 포함하며,
    상기 프로세서들은 상기 명령들을 실행할 때 제61항 내지 제66항 중 어느 한 항에 따른 방법을 수행하거나, 또는:
    하나 이상의 제2 가상 콘텐트를 포함하는 가상 영역에서 제1 가상 콘텐트를 제1 사용자에게 디스플레이하고;
    제1 사용자 행동들 또는 상황 정보 중 하나 이상에 기초하여 상기 제1 가상 콘텐트와 상호작용할 제1 사용자의 의도를 추론하고;
    상기 제1 가상 콘텐트와 상호작용할 제1 사용자의 의도의 추론에 기초하여 상기 제2 가상 콘텐트 중 하나 이상과 연관된 하나 이상의 구성들을 조정하도록 동작 가능한, 시스템.
  72. 제71항에 있어서, 상기 제1 사용자 행동들은:
    상기 제1 가상 콘텐트에 초점을 맞춘 사용자의 눈 움직임들;
    상기 제1 사용자에 의한 구두 요청들;
    상기 제1 가상 콘텐트와 연관된 사용자 입력들; 또는
    상기 제2 가상 콘텐트 중 하나 이상과 연관된 사용자 입력들, 중 하나 이상을 포함하는, 시스템.
  73. 제71항 또는 제72항에 있어서, 상기 상황 정보는:
    상기 제1 사용자와 연관된 위치 정보;
    상기 제1 사용자와 연관된 움직임 정보;
    상기 제1 사용자와 연관된 시간 정보;
    제1 가상 콘텐트와 연관된 하나 이상의 사전 설정 행동들;
    상기 제1 가상 콘텐트가 연관된 콘텐트 유형; 또는
    상기 제1 가상 콘텐트가 연관된 서비스 유형, 중 하나 이상을 포함하는, 시스템.
  74. 제71항 내지 제73항 중 어느 한 항에 있어서,
    상기 제1 사용자의 의도를 추론하는 것은 연관된 소셜 네트워크의 하나 이상의 사용자들에 적어도 부분적으로 기초하는 가상적인 사용자의 관점에 적어도 부분적으로 기초하고; 및/또는
    상기 제2 가상 콘텐트와 연관된 하나 이상의 구성들을 조정하는 것은:
    상기 제2 가상 콘텐트 중 하나 이상에 대한 하나 이상의 시각적 속성들을 조정하는 것;
    상기 제2 가상 콘텐트 중 하나 이상에 대한 하나 이상의 오디오 속성들을 조정하는 것; 또는
    상기 제2 가상 콘텐트 중 하나 이상에 대한 하나 이상의 소셜 네트워킹 속성들을 조정하는 것, 중 하나 이상을 포함하는, 시스템.
  75. 제61항에 있어서, 컴퓨팅 시스템에 의해:
    제1 사용자로부터, 하나 이상의 제2 사용자들과 함께 사용할 공동 가상 공간을 생성하라는 요청을 수신하는 단계;
    제1 방과 연관된 공간 제한들 및 상기 제1 방 내의 하나 이상의 아이템들의 위치들에 적어도 부분적으로 기초하여 상기 제1 사용자와 연관된 제1 방 내의 제1 영역을 결정하는 단계;
    상기 제2 사용자들 각각에 대한 하나 이상의 제2 방들과 연관된 정보를 검색하는 단계;
    상기 제1 방의 제1 영역 및 상기 제2 방들 각각과 연관된 정보에 기초하여 공동 가상 공간을 생성하는 단계; 및
    상기 제1 사용자 및 상기 하나 이상의 제2 사용자들 각각에게 상기 공동 가상 공간에 대한 액세스를 제공하는 단계를 포함하는, 방법.
  76. 제75항에 있어서, 상기 하나 이상의 제2 방들과 연관된 정보를 검색하기 전에:
    상기 제1 방의 제1 영역이 미리 결정된 최소 영역과 같거나 큰지를 결정하는 단계를 더 포함하는, 방법.
  77. 제75항 또는 제76항에 있어서,
    상기 제1 영역은 상기 공간 제한들 및 상기 제1 방에 있는 하나 이상의 아이템들의 위치들을 평가한 후 상기 제1 방과 연관된 최대 자유 공간을 계산함으로써 결정되며,
    선택적으로, 상기 제2 방들과 연관된 검색된 정보는 적어도:
    상기 제2 사용자들 각각에 대한 제2 방들 각각과 연관된 공간 제한들; 및
    상기 제2 사용자들 각각에 대한 제2 방들 각각에 있는 하나 이상의 아이템들의 위치들을 포함하고,
    선택적으로,
    상기 공간 제한들 및 상기 하나 이상의 아이템들의 위치들에 적어도 부분적으로 기초하여 하나 이상의 제2 방들 각각에 대한 제2 영역을 결정하는 단계를 더 포함하고,
    상기 제2 영역은 상기 공간 제한 및 상기 하나 이상의 제2 방들 각각에서 상기 하나 이상의 아이템들의 위치들을 평가한 후 상기 하나 이상의 제2 방들 각각과 연관된 최대 자유 공간을 계산함으로써 결정되고,
    선택적으로, 상기 공동 가상 공간은 상기 제1 방과 연관된 최대 자유 공간과 상기 하나 이상의 제2 방들 각각과 연관된 최대 자유 공간 사이의 최대 오버랩을 결정함으로써 생성되는, 방법.
  78. 제75항 내지 제77항 중 어느 한 항에 있어서,
    상기 공동 가상 공간에 대한 액세스를 제공하는 단계는 상기 공동 가상 공간이 사용 가능하다는 것을 상기 제1 사용자 및 상기 하나 이상의 제2 사용자들 각각에게 통지하는 것을 포함하며,
    선택적으로, 상기 제1 사용자 및 상기 하나 이상의 제2 사용자들 각각에게 통지하는 것은 상기 제1 사용자 및 상기 하나 이상의 제2 사용자들 각각이 상기 공동 가상 공간에 가상으로 액세스하도록 허용하는 포털 오브젝트를 생성하도록 하는 명령들을 상기 제1 사용자 및 상기 하나 이상의 제2 사용자들 각각에게 보내는 것을 포함하는, 방법.
  79. 제75항 내지 제78항 중 어느 한 항에 있어서,
    상기 포털 오브젝트를 생성하는 것은:
    상기 제1 사용자가 상기 공동 가상 공간에 가상으로 액세스하도록 허용하는 상기 제1 방의 제1 영역 내에 가상 출입구를 그리게 하는 명령들을 상기 제1 사용자에게 보내는 것; 및
    상기 제2 사용자들 각각이 상기 공동 가상 공간에 가상으로 액세스하도록 허용하는 상기 제2 방들 각각에 가상 출입구를 그리게 하는 명령들을 상기 제2 사용자들 각각에게 보내는 것을 포함하는, 방법.
  80. 제75항 내지 제79항 중 어느 한 항에 있어서, 상기 공동 가상 공간은 가상 현실 환경에 상주하며, 상기 제1 사용자 및 상기 하나 이상의 제2 사용자들 각각은 상기 가상 현실 환경의 가상 사용자들인, 방법.
  81. 소프트웨어를 포함하는 특히 제67항에 따른 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체로서, 상기 소프트웨어는 실행될 때 제75항 내지 제80항 중 어느 한 항에 따른 방법을 수행하거나, 또는:
    상기 제1 사용자로부터, 하나 이상의 제2 사용자들과 함께 사용할 공동 가상 공간을 생성하라는 요청을 수신하고;
    제1 방과 연관된 공간 제한들 및 상기 제1 방 내의 하나 이상의 아이템들의 위치들에 적어도 부분적으로 기초하여 상기 제1 사용자와 연관된 제1 방 내의 제1 영역을 결정하고;
    상기 제2 사용자들 각각에 대한 하나 이상의 제2 방들과 연관된 정보를 검색하고;
    상기 제1 방의 제1 영역 및 상기 제2 방들 각각과 연관된 정보에 기초하여 상기 공동 가상 공간을 생성하고;
    상기 제1 사용자 및 상기 하나 이상의 제2 사용자들 각각에게 상기 공동 가상 공간에 대한 액세스를 제공하도록 동작 가능한, 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체.
  82. 제81항에 있어서,
    상기 제1 영역은 상기 공간 제한들 및 상기 제1 방에 있는 하나 이상의 아이템들의 위치들을 평가한 후 상기 제1 방과 연관된 최대 자유 공간을 계산함으로써 결정되며,
    선택적으로, 상기 제2 방들과 연관된 검색된 정보는 적어도:
    상기 제2 사용자들 각각에 대한 제2 방들 각각과 연관된 공간 제한들; 및
    상기 제2 사용자들 각각에 대한 제2 방들 각각에 있는 하나 이상의 아이템들의 위치들을 포함하는, 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체.
  83. 제82항에 있어서,
    상기 공간 제한들 및 상기 하나 이상의 아이템들의 위치들에 적어도 부분적으로 기초하여 상기 하나 이상의 제2 방들 각각에 대한 제2 영역을 결정하는 것을 더 포함하고,
    상기 제2 영역은 상기 공간 제한 및 상기 하나 이상의 제2 방들 각각에서 상기 하나 이상의 아이템들의 위치들을 평가한 후 상기 하나 이상의 제2 방들 각각과 연관된 최대 자유 공간을 계산함으로써 결정되고,
    선택적으로, 상기 공동 가상 공간은 상기 제1 방과 연관된 최대 자유 공간과 상기 하나 이상의 제2 방들 각각과 연관된 최대 자유 공간 사이의 최대 오버랩을 결정함으로써 생성되는, 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체.
  84. 제71항에 있어서,
    하나 이상의 프로세서들; 및
    상기 프로세서들에 결합되고 상기 프로세서들에 의해 실행 가능한 명령들을 포함하는 메모리를 포함하며,
    상기 프로세서들은 상기 명령들을 실행할 때 제75항 내지 제80항 중 어느 한 항에 따른 방법을 수행하거나, 또는:
    상기 제1 사용자로부터, 하나 이상의 제2 사용자들과 함께 사용할 공동 가상 공간을 생성하라는 요청을 수신하고;
    제1 방과 연관된 공간 제한들 및 상기 제1 방 내의 하나 이상의 아이템들의 위치들에 적어도 부분적으로 기초하여 상기 제1 사용자와 연관된 제1 방 내의 제1 영역을 결정하고;
    상기 제2 사용자들 각각에 대한 하나 이상의 제2 방들과 연관된 정보를 검색하고;
    상기 제1 방의 제1 영역 및 상기 제2 방들 각각과 연관된 정보에 기초하여 상기 공동 가상 공간을 생성하고;
    상기 제1 사용자 및 상기 하나 이상의 제2 사용자들 각각에게 상기 공동 가상 공간에 대한 액세스를 제공하도록 동작 가능한, 시스템.
  85. 제84항에 있어서, 상기 제1 영역은 상기 공간 제한들 및 상기 제1 방에 있는 하나 이상의 아이템들의 위치들을 평가한 후 상기 제1 방과 연관된 최대 자유 공간을 계산함으로써 결정되며,
    선택적으로, 상기 제2 방들과 연관된 검색된 정보는 적어도:
    상기 제2 사용자들 각각에 대한 제2 방들 각각과 연관된 공간 제한들; 및
    상기 제2 사용자들 각각에 대한 제2 방들 각각에 있는 하나 이상의 아이템들의 위치들을 포함하는, 시스템.
  86. 제85항에 있어서,
    상기 공간 제한들 및 상기 하나 이상의 아이템들의 위치들에 적어도 부분적으로 기초하여 하나 이상의 제2 방들 각각에 대한 제2 영역을 결정하는 것을 더 포함하고,
    상기 제2 영역은 상기 공간 제한 및 상기 하나 이상의 제2 방들 각각에서 상기 하나 이상의 아이템들의 위치들을 평가한 후 상기 하나 이상의 제2 방들 각각과 연관된 최대 자유 공간을 계산함으로써 결정되고,
    선택적으로, 상기 공동 가상 공간은 상기 제1 방과 연관된 최대 자유 공간과 상기 하나 이상의 제2 방들 각각과 연관된 최대 자유 공간 사이의 최대 오버랩을 결정함으로써 생성되는, 시스템.
  87. 제61항 또는 제75항에 있어서, 컴퓨팅 시스템에 의해:
    제1 인터랙티브 아이템의 디스플레이를 하나 이상의 사용자들과 공유하도록 하는 요청을 수신하는 단계;
    상기 제1 인터랙티브 아이템의 카피로서 제1 가상 아이템을 생성하는 단계; 및
    가상 현실 환경의 제1 가상 아이템을 상기 하나 이상의 사용자들의 서브세트에 디스플레이하는 단계를 포함하며,
    상기 제1 인터랙티브 아이템에 대한 변경이 수신되면, 상기 가상 현실 환경에서 상기 제1 가상 아이템의 디스플레이가 상기 제1 인터랙티브 아이템과 동일한 변경을 포함하도록 업데이트되는, 방법.
  88. 제87항에 있어서, 상기 제1 인터랙티브 아이템의 디스플레이를 공유하기 위한 요청은 제1 인터랙티브 아이템과 현재 상호작용하고 있는 상기 하나 이상의 사용자들 중 제1 사용자로부터의 것인, 방법.
  89. 제87항 또는 제88항에 있어서, 상기 제1 인터랙티브 아이템의 디스플레이를 공유하기 위한 요청은 상기 하나 이상의 제2 사용자로부터의 것이며, 상기 하나 이상의 제2 사용자들은 상기 가상 현실 환경과 연관된 가상 사용자들인, 방법.
  90. 제87항 내지 제89항 중 어느 한 항에 있어서, 상기 제1 인터랙티브 아이템의 디스플레이를 공유하도록 하는 요청을 수신하기 전에,
    환경에서 하나 이상의 인터랙티브 아이템들을 결정하는 단계; 및
    상기 가상 현실 환경에 디스플레이할 인터랙티브 아이템들 중 적어도 하나의 선택을 위해 인터랙티브 아이템들의 리스트를 제1 사용자에게 보내는 단계를 더 포함하는, 방법.
  91. 제87항 내지 제90항 중 어느 한 항에 있어서, 상기 하나 이상의 사용자들의 서브세트는 상기 가상 현실 환경의 가상 사용자들을 포함하는, 방법.
  92. 제87항 내지 제91항 중 어느 한 항에 있어서, 상기 제1 인터랙티브 아이템은 실세계 환경에 위치하며,
    선택적으로,
    상기 실세계 환경에서 상기 제1 인터랙티브 아이템을 둘러싸는 하나 이상의 다른 아이템들과 관련하여 상기 제1 인터랙티브 아이템의 위치에 액세스하는 단계;
    상기 하나 이상의 다른 아이템들의 카피들로서 하나 이상의 제2 가상 아이템들을 생성하는 단계; 및
    상기 실세계 환경의 하나 이상의 다른 아이템들과 관련하여 상기 제1 인터랙티브 아이템의 위치에 기초하여 상기 가상 현실 환경에서 상기 제1 가상 아이템 및 상기 하나 이상의 제2 가상 아이템들을 디스플레이하는 단계를 더 포함하고,
    선택적으로,
    상기 실세계 환경에서 상기 제1 인터랙티브 아이템의 지향방향에 액세스하는 단계; 및
    상기 실세계 환경에서 상기 제1 인터랙티브 아이템의 지향방향에 기초하여 상기 가상 현실 환경에서 상기 제1 가상 아이템을 디스플레이하는 단계를 더 포함하는, 방법.
  93. 제87항 내지 제92항 중 어느 한 항에 있어서,
    사용자들의 서브세트 중 하나 이상의 사용자들로부터 상기 제1 가상 아이템과 연관된 코멘트들을 수신하는 단계; 및
    상기 실세계 환경에서 상기 제1 인터랙티브 아이템과 현재 상호작용하고 있는 하나 이상의 사용자들 중 제1 사용자에게 디스플레이될 코멘트들을 보내는 단계를 더 포함하며,
    선택적으로, 상기 코멘트들은 오디오 코멘트들, 비디오 코멘트들, 또는 서면 코멘트들 중 하나 이상을 포함하는, 방법.
  94. 소프트웨어를 포함하는 특히 제67항 또는 제81항에 따른 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체로서, 상기 소프트웨어는 실행될 때 제87항 내지 제93항 중 어느 한 항에 따른 방법을 수행하거나, 또는:
    제1 인터랙티브 아이템의 디스플레이를 하나 이상의 사용자들과 공유하도록 하는 요청을 수신하고;
    상기 제1 인터랙티브 아이템의 카피로서 제1 가상 아이템을 생성하고;
    가상 현실 환경의 제1 가상 아이템을 상기 하나 이상의 사용자들의 서브세트에 디스플레이하도록 동작 가능하며,
    상기 제1 인터랙티브 아이템에 대한 변경이 수신되면, 상기 가상 현실 환경에서 상기 제1 가상 아이템의 디스플레이가 상기 제1 인터랙티브 아이템과 동일한 변경을 포함하도록 업데이트되는, 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체.
  95. 제94항에 있어서, 상기 소프트웨어는 또한, 실행될 때, 상기 제1 인터랙티브 아이템의 디스플레이를 공유하도록 하는 요청을 수신하기 전에,
    환경에서 하나 이상의 인터랙티브 아이템들을 결정하고;
    상기 가상 현실 환경에 디스플레이할 인터랙티브 아이템들 중 적어도 하나의 선택을 위해 인터랙티브 아이템들의 리스트를 제1 사용자에게 보내도록 동작 가능한, 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체.
  96. 제94항 또는 제95항에 있어서, 상기 제1 인터랙티브 아이템은 실세계 환경에 위치하며,
    선택적으로, 상기 소프트웨어는 또한 실행될 때:
    상기 실세계 환경에서 상기 제1 인터랙티브 아이템을 둘러싸는 하나 이상의 다른 아이템들과 관련하여 상기 제1 인터랙티브 아이템의 위치에 액세스하고;
    상기 하나 이상의 다른 아이템들의 카피들로서 하나 이상의 제2 가상 아이템들을 생성하고;
    상기 실세계 환경의 하나 이상의 다른 아이템들과 관련하여 상기 제1 인터랙티브 아이템의 위치에 기초하여 상기 가상 현실 환경에서 상기 제1 가상 아이템 및 상기 하나 이상의 제2 가상 아이템들을 디스플레이하도록 동작 가능하며,
    선택적으로, 상기 소프트웨어는 또한 실행될 때:
    상기 실세계 환경에서 상기 제1 인터랙티브 아이템의 지향방향에 액세스하고;
    상기 실세계 환경에서 제1 인터랙티브 아이템의 지향방향에 기초하여 상기 가상 현실 환경에서 상기 제1 가상 아이템을 디스플레이하도록 동작 가능한, 하나 이상의 컴퓨터 판독 가능한 비-일시적 저장 매체.
  97. 제71항 또는 제84항에 있어서,
    하나 이상의 프로세서들; 및
    상기 프로세서들에 결합되고 상기 프로세서들에 의해 실행 가능한 명령들을 포함하는 메모리를 포함하며,
    상기 프로세서들은 상기 명령들을 실행할 때 제87항 내지 제93항 중 어느 한 항에 따른 방법을 수행하거나, 또는:
    제1 인터랙티브 아이템의 디스플레이를 하나 이상의 사용자들과 공유하도록 하는 요청을 수신하고;
    상기 제1 인터랙티브 아이템의 카피로서 제1 가상 아이템을 생성하고;
    가상 현실 환경의 제1 가상 아이템을 상기 하나 이상의 사용자들의 서브세트에 디스플레이하도록 동작 가능하며,
    상기 제1 인터랙티브 아이템에 대한 변경이 수신되면, 상기 가상 현실 환경에서 상기 제1 가상 아이템의 디스플레이가 상기 제1 인터랙티브 아이템과 동일한 변경을 포함하도록 업데이트되는, 시스템.
  98. 제97항에 있어서, 상기 프로세서들은 또한, 상기 명령들을 실행할 때, 상기 제1 인터랙티브 아이템의 디스플레이를 공유하도록 하는 요청을 수신하기 전에:
    환경에서 하나 이상의 인터랙티브 아이템들을 결정하고;
    상기 가상 현실 환경에 디스플레이할 인터랙티브 아이템들 중 적어도 하나의 선택을 위해 인터랙티브 아이템들의 리스트를 제1 사용자에게 보내도록 동작 가능한, 시스템.
  99. 제97항 또는 제98항에 있어서, 상기 제1 인터랙티브 아이템은 실세계 환경에 위치하며,
    선택적으로, 상기 프로세서들은 또한, 상기 명령들을 실행할 때:
    상기 실세계 환경에서 상기 제1 인터랙티브 아이템을 둘러싸는 하나 이상의 다른 아이템들과 관련하여 상기 제1 인터랙티브 아이템의 위치에 액세스하고;
    상기 하나 이상의 다른 아이템들의 카피들로서 하나 이상의 제2 가상 아이템들을 생성하고;
    상기 실세계 환경의 하나 이상의 다른 아이템들과 관련하여 상기 제1 인터랙티브 아이템의 위치에 기초하여 상기 가상 현실 환경에서 상기 제1 가상 아이템 및 상기 하나 이상의 제2 가상 아이템들을 디스플레이하도록 동작 가능하며,
    선택적으로, 상기 프로세서들은 또한, 상기 명령들을 실행할 때:
    상기 실세계 환경에서 상기 제1 인터랙티브 아이템의 지향방향에 액세스하고;
    상기 실세계 환경에서 제1 인터랙티브 아이템의 지향방향에 기초하여 상기 가상 현실 환경에서 상기 제1 가상 아이템을 디스플레이하도록 동작 가능한, 시스템.
KR1020217023722A 2018-12-27 2019-02-14 개선된 상호작용 및 컬래버레이션을 위한 가상 공간, 혼합 현실 공간 및 결합된 혼합 현실 공간 KR20210096695A (ko)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US16/234,128 2018-12-27
US16/234,013 US10921878B2 (en) 2018-12-27 2018-12-27 Virtual spaces, mixed reality spaces, and combined mixed reality spaces for improved interaction and collaboration
US16/234,013 2018-12-27
US16/233,846 2018-12-27
US16/233,846 US20200210137A1 (en) 2018-12-27 2018-12-27 Virtual spaces, mixed reality spaces, and combined mixed reality spaces for improved interaction and collaboration
US16/234,128 US11024074B2 (en) 2018-12-27 2018-12-27 Virtual spaces, mixed reality spaces, and combined mixed reality spaces for improved interaction and collaboration
PCT/US2019/017947 WO2020139409A1 (en) 2018-12-27 2019-02-14 Virtual spaces, mixed reality spaces, and combined mixed reality spaces for improved interaction and collaboration

Publications (1)

Publication Number Publication Date
KR20210096695A true KR20210096695A (ko) 2021-08-05

Family

ID=71125881

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217023722A KR20210096695A (ko) 2018-12-27 2019-02-14 개선된 상호작용 및 컬래버레이션을 위한 가상 공간, 혼합 현실 공간 및 결합된 혼합 현실 공간

Country Status (4)

Country Link
JP (1) JP2022521117A (ko)
KR (1) KR20210096695A (ko)
CN (1) CN113544633A (ko)
WO (1) WO2020139409A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116382613A (zh) * 2023-06-05 2023-07-04 江西格如灵科技股份有限公司 虚拟现实环境下的白板同步方法、装置、设备及介质
CN117170504B (zh) * 2023-11-01 2024-01-19 南京维赛客网络科技有限公司 在虚拟人物交互场景中带人观看的方法、系统及存储介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008109798A2 (en) * 2007-03-07 2008-09-12 Ideaflood, Inc. Multi-instance, multi-user animation platforms
US20120142415A1 (en) * 2010-12-03 2012-06-07 Lindsay L Jon Video Show Combining Real Reality and Virtual Reality
US9645394B2 (en) * 2012-06-25 2017-05-09 Microsoft Technology Licensing, Llc Configured virtual environments
AU2013346430A1 (en) * 2012-11-14 2015-07-02 Rounds Entertainment Ltd. Multi-user interactive virtual environment system and method
US9818225B2 (en) * 2014-09-30 2017-11-14 Sony Interactive Entertainment Inc. Synchronizing multiple head-mounted displays to a unified space and correlating movement of objects in the unified space
US10062208B2 (en) * 2015-04-09 2018-08-28 Cinemoi North America, LLC Systems and methods to provide interactive virtual environments
US20170256096A1 (en) * 2016-03-07 2017-09-07 Google Inc. Intelligent object sizing and placement in a augmented / virtual reality environment
US11163358B2 (en) * 2016-03-17 2021-11-02 Sony Interactive Entertainment Inc. Spectating virtual (VR) environments associated with VR user interactivity

Also Published As

Publication number Publication date
WO2020139409A1 (en) 2020-07-02
CN113544633A (zh) 2021-10-22
JP2022521117A (ja) 2022-04-06

Similar Documents

Publication Publication Date Title
US10921878B2 (en) Virtual spaces, mixed reality spaces, and combined mixed reality spaces for improved interaction and collaboration
US11024074B2 (en) Virtual spaces, mixed reality spaces, and combined mixed reality spaces for improved interaction and collaboration
KR102630902B1 (ko) 서술적 모델들에 기초한 자동화된 결정들
US20200210137A1 (en) Virtual spaces, mixed reality spaces, and combined mixed reality spaces for improved interaction and collaboration
US10719989B2 (en) Suggestion of content within augmented-reality environments
US20180300822A1 (en) Social Context in Augmented Reality
CN112639682A (zh) 在增强现实环境中的多设备地图构建和协作
CN110908501B (zh) 人工现实中防止视场遮挡的显示不透明度控制
AU2017254967A1 (en) Presence granularity with augmented reality
US10425579B2 (en) Social camera for auto group selfies
US10541001B2 (en) Video highlights
US10038885B2 (en) Continuous capture with augmented reality
US10157307B2 (en) Accessibility system
US20220345537A1 (en) Systems and Methods for Providing User Experiences on AR/VR Systems
US11557093B1 (en) Using social connections to define graphical representations of users in an artificial reality setting
US20190208115A1 (en) Identifying User Intent for Auto Selfies
US10831286B1 (en) Object tracking based on detected tracking patterns in a non-visible spectrum range
KR20210096695A (ko) 개선된 상호작용 및 컬래버레이션을 위한 가상 공간, 혼합 현실 공간 및 결합된 혼합 현실 공간
KR20220062661A (ko) 제 3 자 시스템들로부터의 증강 현실 데이터의 효과적인 스트리밍
US11172189B1 (en) User detection for projection-based augmented reality system
US11006097B1 (en) Modeling for projection-based augmented reality system
US11196985B1 (en) Surface adaptation for projection-based augmented reality system
US11070792B1 (en) Surface selection for projection-based augmented reality system
US11816759B1 (en) Split applications in a multi-user communication session
US20240233363A9 (en) High accuracy people identification over time by leveraging re-identification

Legal Events

Date Code Title Description
E902 Notification of reason for refusal