Wide-area simultaneous remote digital presentation world

A computing network with user devices and a gateway facilitates real-time interaction in virtual and augmented reality environments, allowing multiple users to engage with dynamic virtual worlds through various interface modes, addressing the limitations of existing systems.

JP7717200B2Active Publication Date: 2025-08-01MAGIC LEAP INC
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2024000622
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2011-05-06
Filing Date
2024-01-05
Publication Date
2025-08-01
Estimated Expiration
2032-05-04

AI Technical Summary

Technical Problem

Existing virtual and augmented reality environments lack effective systems for multiple users to interact and engage with each other and digital worlds in real-time, with limited capabilities for simultaneous interaction and dynamic response to physical objects.

Method used

A computing network with interconnected servers and user devices, including a gateway, enables multiple users to interact with virtual or augmented reality environments through high-bandwidth communication, allowing real-time changes in the virtual world based on physical interactions and user gestures, with support for various interface modes such as augmented, virtual, and mixed reality.

Benefits of technology

Enables multiple users to simultaneously engage with shared virtual worlds, dynamically responding to physical objects and user interactions, providing seamless and immersive experiences across different interface modes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007717200000001
    Figure 0007717200000001
  • Figure 0007717200000002
    Figure 0007717200000002
  • Figure 0007717200000003
    Figure 0007717200000003
Patent Text Reader

Abstract

To provide a preferred massive simultaneous remote digital presence world.SOLUTION: Various methods and apparatuses are described herein for enabling one or more users to interface with virtual or augmented reality environments. An example system includes a computing network having computer servers interconnected through high bandwidth interfaces to gateways for processing data and / or for enabling communication of data between the servers and one or more local user interface devices. The servers include memory, processing circuitry, and software for designing and / or controlling virtual worlds, as well as for storing and processing user data and data provided by other components of the system. One or more virtual worlds may be presented to a user through a user device for the user to take experience and interact.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] (Cross - Reference to Related Applications) This application claims priority under 35 U.S.C. § 119(e) to U.S. Provisional Patent Application No. 61 / 483,505, filed on May 6, 2011, and U.S. Provisional Patent Application No. 61 / 483,511, filed on May 6, 2011.

[0002] (Field of the Invention) The present invention generally relates to methods and apparatus for enabling a two - way virtual or augmented reality environment for multiple users.

Background Art

[0003] (Background) Virtual and augmented reality environments are generated by a computer using data that partially describes the environment. This data may represent, for example, various objects that a user can perceive and interact with. Examples of these objects include objects that are rendered and displayed for the user to see, audio that is played for the user to hear, and haptic (or tactile) feedback for the user to feel. A user may perceive and interact with virtual and augmented reality environments via various visual, auditory, and tactile means.

Summary of the Invention

Means for Solving the Problems

[0004] This disclosure describes various systems and methods for enabling one or more users to interact with or participate in virtual or augmented reality environments.

[0005] In one exemplary embodiment, the system includes a computing network having computer servers interconnected to a gateway via a high-bandwidth interface to process data and / or enable communication of data between the server and one or more local user interface devices. The server includes memory, processing circuitry, and software to design and / or process virtual worlds and to store and process user data and data provided by other components of the system. One or more virtual worlds may be presented to the user through a user device for the user to experience and interact with. Multiple users may use a device to interact with one or more digital worlds simultaneously by each using the device to observe, interact with each other, and interact with objects created within the digital world.

[0006] Examples of user devices include smartphones, tablet devices, head-up displays (HUDs), gaming consoles, or generally any other device capable of communicating, presenting, viewing, listening to, and / or touching data to generate or communicate an interface to the user. Generally, the user device will include a processor for executing program code stored in memory on the device, coupled with a visual display, and a communication interface. The interface enables visual, audible, and / or physical interaction between the user and the digital world, including other users and objects (real or virtual) presented to the user. In one embodiment, the user device comprises a head-mounted display system having an interface, a user sensing system, an environmental sensing system, and a processor. This specification also provides, for example, the following items. (Item 1) A system for enabling one or more users to interact with a virtual world composed of virtual world data, the system comprising: A computer network comprising one or more computer servers, the one or more computer servers comprising a memory, a processing circuit, and software, the software being stored in the memory and executable by the processing circuit to process at least a portion of the virtual world data, The computer network is operable to transmit the virtual world data to a user device for presentation to a first user. At least a portion of the virtual world changes in response to a change in the virtual world data. A system, wherein at least a portion of the virtual world data is changed in response to a physical object sensed by the user device. (Item 2) The system according to item 1, wherein the change in the virtual world data describes a virtual object having a predetermined relationship with the physical object. (Item 3) The system according to item 2, wherein the change in the virtual world data is presented to a second user device for presentation to a second user according to the predetermined relationship. (Item 4) The system according to any one of items 1 to 3, wherein the virtual world is operable to be rendered by at least one of the computer server or the user device. (Item 5) The system according to any one of items 1 to 4, wherein the virtual world is presented in at least one of a two-dimensional format or a three-dimensional format. (Item 6) The user device is operable to provide an interface for enabling interaction between the user and the virtual world in at least one of an augmented reality mode, a virtual reality mode, or a combination of the augmented reality mode and the virtual reality mode, according to any one of items 1 to 5. (Item 7) The system according to any one of items 1 to 6, wherein the virtual world data is transmitted over a data network. (Item 8) The computer network is operable to receive at least a portion of the virtual world data from a user device, the system according to any one of Items 1 to 7. (Item 9) At least a portion of the virtual world data transmitted to the user device comprises instructions for generating at least a portion of the virtual world, the system according to any one of Items 1 to 8. (Item 10) At least a portion of the virtual world data is transmitted to a gateway, the system according to any one of Items 1 to 9. (Item 11) A system for enabling one or more users to interact with a virtual world, the system comprising: A user device for presenting the virtual world to the user and enabling the user to interact with the virtual world, the user device comprising: A memory; A processing circuit; Software stored in the memory, the software being executable by the processing circuit to render at least a portion of the virtual world from virtual world data received at least partially from a computer network; A display operable to present the virtual world to the user; A communication interface operable to communicate at least a portion of the virtual world data over a data network; A sensing system operable to sense at least one of the user, a physical object, or the physical environment around the user; And The processing circuit is operable to execute the software to render a change to the virtual world in response to at least one of the sensed user, sensed physical object, or sensed physical environment. (Item 12) The change in the virtual world comprises a virtual object, and the virtual object has a predetermined relationship with the perceived user, physical object, or physical environment, according to the system of item 11. (Item 13) The communication interface is operable to communicate the virtual object to the computer network, according to the system of item 12. (Item 14) The virtual world is presented in at least one of a two-dimensional format or a three-dimensional format, according to the system of any one of items 1 to 13. (Item 15) The user device enables interaction in at least one of an augmented reality mode, a virtual reality mode, or a combination of an augmented reality mode and a virtual reality mode, according to the system of any one of items 1 to 14. (Item 16) The user device further comprises a device for providing tactile or haptic feedback, according to the system of any one of items 1 to 15. (Item 17) At least a part of the virtual world data is received from a gateway, according to the system of any one of items 1 to 16. (Item 18) The gateway is operable to distribute the virtual world data for processing, according to the system of any one of items 1 to 17. (Item 19) A computer-implemented method, the method comprising: Presenting a virtual world to a user device; Receiving sensor data generated by one or more sensors, the one or more sensors being associated with the user device with respect to gestures made by a user using the user device; Recognizing the gesture; Generating a virtual object in response to the recognized gesture; Presenting the virtual object to the user device; A method comprising the steps of: (Item 20) The method according to item 19, further comprising presenting the virtual object on a second user device. (Item 21) The method according to any one of items 1 to 20, further comprising establishing a relationship between the virtual object and a physical object in the vicinity of the user. (Item 22) A computer-implemented method, the method comprising: Receiving, using a user device, sensory data generated by a sensor, the sensor being associated with the user device with respect to a physical object in the vicinity of the user; Recognizing the object; Generating, in response to the recognition of the object, a virtual object having a predetermined relationship with the physical object; Transmitting the virtual object to a display associated with the user device for presentation to the user according to the predetermined relationship; A method comprising the steps of: (Item 23) The method according to item 22, further comprising transmitting the virtual object to a second display associated with a second user device for presentation to a second user according to the predetermined relationship. (Item 24) A computer-implemented method, the method comprising: Storing data defining a digital world, the data defining one or more objects; Receiving sensor data generated by sensors associated with a plurality of user devices, the sensor data describing at least one physical characteristic of the environment of the user device; In response to the sensor data, generating an instance of a predefined object for each of a plurality of users; transmitting the instance of the predefined object generated for the user to each user of the plurality of users; A method comprising: (Item 25) The method according to item 24, wherein the sensor data describes one or more of physical characteristics such as position, user orientation, user movement, user device, environmental conditions, and physical objects in the vicinity of the user.

[0007] The foregoing and other features and advantages of the present disclosure will become more apparent from the following detailed description of exemplary embodiments, read in conjunction with the accompanying drawings. The detailed description and drawings merely illustrate the present disclosure rather than limiting the scope of the invention as defined by the appended claims and their equivalents.

[0008] Embodiments are illustrated by way of example in the accompanying drawings, which are not necessarily drawn to scale, in which like reference numerals indicate like parts.

Brief Description of the Drawings

[0009]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9A

Figure 9B

Figure 10

Figure 11

[0010] Referring to FIG. 1, system 100 is representative hardware for implementing the processes described below. This representative system comprises a computing network 105 composed of one or more computer servers 110 connected via one or more high-bandwidth interfaces 115. The servers within the computing network need not be located in the same place. Each of the one or more servers 110 comprises one or more processors for executing program instructions. The servers also include memory for storing program instructions and data used and / or generated by the processes executed by the servers under the instructions of the program instructions.

[0011] Computing network 105 communicates data among the servers 110 and between the servers and one or more user devices 120 at one or more data network connections 130. Examples of such data networks include, but are not limited to, any and all types of public and private data networks, both mobile and wired, including, for example, many interconnections of such networks commonly referred to as the Internet. It is not intended that any particular media, topology, or protocol be implied by that figure.

[0012] The user devices are configured to communicate directly with either the computing network 105 or one of the servers 110. Alternatively, the user devices 120 communicate locally with remote servers 110 and optionally other user devices via a specially programmed local gateway 140 for processing data and / or communicating data between network 105 and one or more local user devices 120.

[0013] As shown, gateway 140 is implemented as a separate hardware component that includes a processor for executing software instructions and a memory for storing software instructions and data. The gateway has a unique wired and / or wireless connection to a data network for communicating with server 110 comprising computing network 105. Alternatively, gateway 140 can be integrated with user device 120 worn or carried by a user. For example, gateway 140 may be implemented as a downloadable software application installed and executed on a processor included in user device 120. In one embodiment, gateway 140 provides access to computing network 105 to one or more users via data network 130.

[0014] Each of servers 110 includes, for example, a working memory and a storage device for storing data and software programs, a microprocessor for executing program instructions, a graphics processor, and other special processors for rendering and generating graphic, image, video, audio, and multimedia files. Computing network 105 may also comprise a device for storing data accessed, used, or created by servers 110.

[0015] Software programs that run on the server, optionally on the user device 120 and the gateway 140, are used to generate a digital world (also referred to herein as a virtual world) in which the user interacts with the user device 120. The digital world is represented by data and processes that describe and / or define virtual non-existent entities, environments, and conditions that can be presented to the user via the user device 120 for the user to experience and interact with. For example, any type of object, entity, or item that would appear to physically exist when instantiated in a scene viewed or experienced by the user may include an explanation of its appearance, its behavior, how the user is permitted to interact with it, and other characteristics. Data used to create the environment of the virtual world (including virtual objects) may include, for example, atmospheric data, terrain data, weather data, temperature data, location data, and other data used to define and / or describe the virtual environment. Additionally, data that defines various conditions that govern the operation of the virtual world may include, for example, physical laws, time, spatial relationships, and other data that can be used to define and / or create various conditions that govern the operation of the virtual world (including virtual objects).

[0016] Entities, objects, conditions, characteristics, behaviors, or other features in the digital world will generally be referred to herein as objects (e.g., digital objects, virtual objects, rendered physical objects, etc.) unless the context specifically indicates otherwise. Objects can be any type of living or non-living object including, but not limited to, buildings, plants, vehicles, people, animals, organisms, machines, data, videos, texts, photos, and other users. An object may also be defined in the digital world to store information about an item, behavior, or condition that actually exists in the physical world. Data that describes or defines an entity, object, or item, or stores its current state is generally referred to herein as object data. This data is processed by server 110, or depending on the implementation, by gateway 140 or user device 120, to instantiate an instance of the object and render the object in a manner appropriate for a user to experience the user device.

[0017] Programmers who develop and / or create the digital world create or define objects and the conditions under which they are instantiated. However, the digital world can be made available for others to create or modify objects. Once an object is instantiated, its state may be permitted to be changed, controlled, or manipulated by one or more users experiencing the digital world.

[0018] For example, in one embodiment, the development, production, and management of the digital world is generally provided by one or more system administrators. In some embodiments, this may include the development, design, and / or execution of the storyline, themes, and events in the digital world, as well as the delivery of conversations through various forms of events and media such as movies, digital, network, mobile, augmented reality, and live entertainment. The system administrator may also handle the technical management, discussion management, and curation of the digital world and the user community associated therewith, as well as other tasks typically performed by network administrators.

[0019] Users generally interact with one or more digital worlds using some type of local computing device designed as user device 120. Examples of such user devices include, but are not limited to, smartphones, tablet devices, head-up displays (HUDs), gaming consoles, or any other device capable of communicating data and providing an interface or display to the user, or combinations of such devices. In some embodiments, user device 120 may include or communicate with local peripherals or input / output components such as, for example, a keyboard, mouse, joystick, game controller, tactile interface device, motion capture controller, audio device, voice device, projector system, 3D display, and holographic 3D contact lenses.

[0020] An example of a user device 120 for interacting with system 100 is illustrated in FIG. 2. In the exemplary embodiment shown in FIG. 2, user 210 may interact with one or more digital worlds through smartphone 220. The gateway is implemented by software application 230 stored and executed on smartphone 220. In this particular example, data network 130 includes a wireless mobile network that connects the user device (i.e., smartphone 220) to computer network 105.

[0021] In one implementation of a preferred embodiment, system 100 can support a large number of simultaneous users (e.g., millions of users) who each interact with the same digital world or multiple digital worlds using some type of user device 120.

[0022] The user device provides the user with an interface to enable visual, audible, and / or physical interaction between the user and the digital world generated by server 110, including other users and objects (real or virtual) presented to the user. The interface provides the user with a rendered scene that can be viewed, heard, or otherwise sensed, and the ability to interact with the scene in real time. The way the user interacts with the rendered scene may be determined by the capabilities of the user device. For example, if the user device is a smartphone, the user interaction may be implemented by the user touching the touch screen. In another example, if the user device is a computer or a gaming console, the user interaction may be implemented using a keyboard or a game controller. The user device may include additional components that enable user interaction, such as sensors, and the objects and information (including gestures) detected by the sensors may be provided as input to describe the user interaction with the virtual world using the user device.

[0023] The rendered scene can be presented in various forms such as, for example, two-dimensional or three-dimensional visual displays (including projections), sound, and tactile or haptic feedback. The rendered scene may be interacted with by a user in one or more modes including, for example, augmented reality, virtual reality, and combinations thereof. The form of the rendered scene, as well as the interface mode, may be determined by one or more of the user device, data processing capabilities, user device connectivity, network capabilities, and system workload. The ability to have multiple users interacting simultaneously with the digital world and the real-time nature of data exchange are enabled by the computing network 105, the server 110, the gateway component 140 (optionally), and the user device 120.

[0024] In one embodiment, the computing network 105 is composed of a large-scale computing system having a single and / or multi-core server (i.e., the server 110) connected via a high-speed connection (e.g., a high-bandwidth interface 115). The computing network 105 may form a cloud or grid network. Each of the servers includes memory and is coupled to a computer-readable memory for storing software for implementing data to create, design, modify, or process objects of the digital world. These objects and their instantiations may be dynamic, existing, ceasing to exist, changing over time, and changing in response to other conditions. Examples of the dynamic capabilities of objects are generally discussed herein with respect to various embodiments. In some embodiments, each user interacting with the system 100 may also be represented as an object and / or a collection of objects within one or more digital worlds.

[0025] Server 110 within computing network 105 also stores computing state data for each of the digital worlds. Computing state data (also referred to herein as state data) may be a component of object data and generally defines the state of an instance of an object at a given instance in time. Thus, the computing state data may change over time and may be affected by the actions of one or more users and / or programmers maintaining system 100. When a user affects the computing state data (or other data including the digital world), the user directly changes or otherwise manipulates the digital world. If the digital world is shared or interacted with by other users, the user's actions may affect what is experienced by other users interacting with the digital world. Thus, in some embodiments, changes to the digital world made by a user will be experienced by other users interacting with system 100.

[0026] In one embodiment, the data stored in one or more servers 110 within the computing network 105 is transmitted or deployed to one or more user devices 120 and / or gateway components 140 at high speed and with low latency. In one embodiment, the object data shared by the server can be complete or compressed and contain instructions for reconstructing the complete object data on the user side, and may be rendered and visualized by the user's local computer device (e.g., gateway 140 and / or user device 120). The software running on the server 110 of the computing network 105, in some embodiments, as a function of the user's specific device and bandwidth, may adapt the data it generates and sends to a specific user's device 120 for an object in the digital world (or any other data exchanged by the computing network 105). For example, when a user interacts with the digital world through the user device 120, the server 110 recognizes the specific type of device being used by the user, the device connectivity between the user device and the server, and / or the available bandwidth, and may appropriately determine the size of the data being delivered to the device to maintain balance so as to optimize the user interaction. An example of this may include reducing the size of the transmitted data to low-resolution quality so that the data can be displayed on a specific user device having a low-resolution display. In a preferred embodiment, the computing network 105 and / or gateway component 140 delivers the data to the user device 120 at a speed sufficient to present an interface that operates at a data resolution of 15 frames per second or more and at a high-resolution quality or better.

[0027] Gateway 140 provides a local connection to computing network 105 for one or more users. In some embodiments, it may be implemented by a downloadable software application that runs on user device 120 or another local device such as that shown in FIG. 2. In other embodiments, it may be implemented by a hardware component (a component having a processor with appropriate software / firmware stored thereon) that communicates with user device 120 but is not incorporated with, or attached to, or alternatively incorporated with user device 120. Gateway 140 communicates with computing network 105 via data network 130 and provides for data exchange between computing network 105 and one or more local user devices 120. As discussed in further detail below, gateway component 140 may include software, firmware, memory, and processing circuitry and may be capable of processing data communicated between network 105 and one or more local user devices 120.

[0028] In some embodiments, the gateway component 140 monitors and adjusts the speed of data exchanged between the user device 120 and the computer network 105 to enable optimal data processing capabilities for a particular user device 120. For example, in some embodiments, the gateway 140 buffers and downloads both static and dynamic aspects of the digital world, even beyond what is presented to the user through an interface connected to the user device. In such embodiments, instances of static objects (structured data, software implementation methods, or both) may be stored in memory (local to the gateway component 140, the user device 120, or both) and referenced relative to the current location of the local user as indicated by data provided by the computing network 105 and / or the user's device 120. For example, instances of dynamic objects, which may include intelligent software agents and objects controlled by other users and / or the local user, are stored in a high-speed memory buffer. Dynamic objects that describe two-dimensional or three-dimensional objects within the scene presented to the user can be classified into component shapes such as static shapes that are moving but not changing, and dynamic shapes that are changing. Some of the changing dynamic objects can be updated by a real-time thread high-priority data stream from the server 110 through the computing network 105, which is managed by the gateway component 140. As an example of a prioritized thread data stream, data within the 60-degree field of view of the user's eye may be given a higher priority than data that is more peripheral. Another example includes prioritizing dynamic characters and / or objects within the user's field of view over static objects in the background.

[0029] In addition to managing the data connection between the computing network 105 and the user device 120, the gateway component 140 may store and / or process data that may be presented to the user device 120. For example, the gateway component 140, in some embodiments, may receive compressed data from the computing network 105, e.g., describing graphical objects to be rendered for viewing by a user, and perform advanced rendering techniques to reduce the data load transmitted from the computing network 105 to the user device 120. In another example where the gateway 140 is a separate device, the gateway 140 may store and / or process data for local instances of objects rather than communicating the data to the computing network 105 for processing.

[0030] Referring now also to FIG. 3 , the digital world may be experienced by one or more users in a variety of forms, which may depend on the capabilities of the user's device. In some embodiments, user device 120 may include, for example, a smartphone, a tablet device, a head-up display (HUD), a gaming console, or a wearable device. Generally, a user device will include a processor for executing program code stored in memory on the device, coupled with a display, and a communication interface. An exemplary embodiment of a user device is illustrated in FIG. 3 , which includes a mobile wearable device, i.e., a head-mounted display system 300. According to an embodiment of the present disclosure, head-mounted display system 300 includes a user interface 302, a user sensing system 304, an environmental sensing system 306, and a processor 308. While processor 308 is shown in FIG. 3 as a standalone component separate from head-mounted system 300 in alternative embodiments, processor 308 may be integrated with one or more components of head-mounted system 300 or incorporated into other system 100 components, such as, for example, gateway 140.

[0031] The user device presents an interface 302 to the user for interacting with and experiencing the digital world. Such interactions may involve the user and the digital world, one or more other users who interact with system 100, and objects within the digital world. Interface 302 generally provides the user with image and / or audio sensory inputs (and in some embodiments physical sensory inputs). Thus, interface 302 may include a speaker (not shown) and, in some embodiments, a display component 303 capable of enabling 3D visualization that embodies more natural characteristics of the human visual system and / or 3D visualization for stereoscopic 3D viewing. In some embodiments, display component 303 may comprise a transparent interface (such as a transparent OLED) that enables an optically correct view of the physical environment around the user with little or no optical distortion or computing overlay when in an "off" setting. As will be discussed in more detail below, interface 302 may include additional settings that enable various visual / interface performance and functionality.

[0032] In some embodiments, the user perception system 304 may include one or more sensors 310 operable to detect certain characteristics, properties, or information related to an individual user wearing the system 300. For example, in some embodiments, the sensor 310 may include a camera or optical detection / scanning circuit capable of detecting real-time optical characteristics / measurements of the user, such as, for example, one or more of pupil constriction / dilation, angular measurements / positioning of each pupil, sphericity, eye shape (as eye shape changes over time), and other anatomical data. This data may provide information (e.g., the user's visual focus) that can be used by the head-mounted system 300 and / or the interface system 100 to optimize the user's viewing experience, or may be used to calculate information. For example, in one embodiment, each of the sensors 310 may measure the constriction rate of each pupil of the user's eyes. This data may be transmitted to the processor 308 (or to the gateway component 140, or to the server 110), and the data may be used, for example, to determine the user's reaction to the brightness setting of the interface display 303. The interface 302 may be adjusted according to the user's reaction, for example, by dimming the display 303 if the user's reaction indicates that the brightness level of the display 303 is too high. The user perception system 304 may include other components other than those discussed above or illustrated in FIG. 3. For example, in some embodiments, the user perception system 304 may include a microphone for receiving voice input from the user. The user perception system may also include one or more infrared camera sensors, one or more visible spectrum camera sensors, structured light emitters and / or sensors, infrared light emitters, coherent light emitters and / or sensors, gyroscopes, accelerometers, magnetic detectors, proximity sensors, GPS sensors, ultrasonic emitters and detectors, and haptic interfaces.

[0033] The environmental perception system 306 includes one or more sensors 312 for acquiring data from the physical environment around the user. Objects or information detected by the sensors may be provided as input to the user device. In some embodiments, this input may represent a user interaction with the virtual world. For example, a user viewing a virtual keyboard on a desk may use gestures with their fingers as if typing on the virtual keyboard. The movement of the moving finger may be captured by the sensor 312 and provided as input to the user device or system, and the input may be used to change the virtual world or create a new virtual object. For example, the movement of the finger may be recognized as typing (using a software program), and the recognized typing gesture may be combined with the known locations of the virtual keys on the virtual keyboard. The system may then render a virtual monitor that is displayed to the user (or other users interacting with the system), and the virtual monitor displays the text being typed by the user.

[0034] The sensor 312 may include, for example, a substantially outward-facing camera, or, for example, a scanner for interpreting scene information through continuously and / or intermittently projected infrared structured light. The environmental sensing system 306 may be used to map one or more elements of the physical environment surrounding the user by detecting and registering the local environment, including static objects, dynamic objects, people, gestures, and various lighting, atmospheric, and acoustic conditions. Thus, in some embodiments, the environmental sensing system 306 is incorporated into a local computing system (e.g., the gateway component 140 or the processor 308) and may include image-based 3D reconstruction software operable to digitally reconstruct one or more objects or information detected by the sensor 312. In one exemplary embodiment, the environmental sensing system 306 provides one or more of motion capture data (including gesture recognition), depth sensing, face recognition, object recognition, unique object feature recognition, voice / audio recognition and processing, sound source localization, noise reduction, infrared or similar laser projection, and monochrome and / or color CMOS sensors (or other similar sensors), field of view sensors, and various other light enhancement sensors. It should be understood that the environmental sensing system 306 may include other components other than those discussed above or illustrated in FIG. 3. For example, in some embodiments, the environmental sensing system 306 may include a microphone for receiving voice from the local environment. The user sensing system may also include one or more infrared camera sensors, one or more visible spectrum camera sensors, structured light emitters and / or sensors, coherent light emitters and / or sensors, gyroscopes, infrared light emitters, accelerometers, magnetic detectors, proximity sensors, GPS sensors, ultrasonic emitters and detectors, and a tactile interface.

[0035] As described above, in some embodiments, the processor 308 may be integrated with other components of the head-mounted system 300, may be integrated with other components of the interface system 100, or may be a stand-alone device (worn or separated from the user) as shown in FIG. 3. The processor 308 may be connected to various components of the head-mounted system 300 and / or components of the interface system 100 through a physical wired connection or through a wireless connection such as, for example, a mobile network connection (including cellular phones and data networks), Wi-Fi, or Bluetooth®. The processor 308 may include a memory module, an integrated and / or additional graphics processing unit, wireless and / or wired Internet connectivity, and a codec and / or firmware capable of converting data from sources (e.g., the computing network 105, the user sensing system 304, the environmental sensing system 306, or the gateway component 140) into image and audio data, and the images / videos and audio may be presented to the user via the interface 302.

[0036] The processor 308 handles data processing for various components of the head-mounted system 300, as well as data exchange between the head-mounted system 300 and the gateway component 140, and in some embodiments, the computing network 105. For example, the processor 308 may buffer and process data streaming between the user and the computing network 105, thereby enabling a smooth, continuous, and high-fidelity user experience. In some embodiments, the processor 308 may process data at a rate sufficient to achieve any of between 8 frames per second at 320×240 resolution and 24 frames per second at high resolution (1280×720), or more than that such as 60 - 120 frames per second and resolutions above 4k (10k+ resolution and 50,000 frames per second). Additionally, the processor 308 may store and / or process data that can be presented to the user rather than streaming it in real time from the computing network 105. For example, in some embodiments, the processor 308 receives compressed data from the computing network 105 and may perform advanced rendering techniques (such as lighting or shading) to reduce the data load transmitted from the computing network 105 to the user device 120. In another example, the processor 308 may store and / or process local object data rather than transmitting the data to the gateway component 140 or the computing network 105.

[0037] In some embodiments, the head-mounted system 300 may include various settings or modes that enable various visual / interface performance and functionality. The modes may be selected manually by the user or automatically by components of the head-mounted system 300 or the gateway component 140. As described above, one example of the head-mounted system 300 includes an "off" mode in which the interface 302 provides substantially no digital or virtual content. In the off mode, the display component 303 may be transparent, thereby enabling an optically correct view of the physical environment around the user with little or no optical distortion or computing overlay.

[0038] In one exemplary embodiment, the head-mounted system 300 includes an "augmented" mode in which the interface 302 provides an augmented reality interface. In the augmented mode, the interface display 303 may be substantially transparent, thereby enabling the user to view the local physical environment. At the same time, virtual object data provided by the computing network 105, the processor 308, and / or the gateway component 140 is presented on the display 303 in combination with the physical local environment.

[0039] Figure 4 illustrates an exemplary embodiment of an object that is visible to a user when interface 302 is operating in an augmentation mode. As shown in Figure 4, interface 302 presents physical object 402 and virtual object 404. In the embodiment illustrated in Figure 4, physical object 402 is an actual physical object that exists in the user's local environment, while virtual object 404 is an object created by system 100 and displayed via user interface 302. In some embodiments, virtual object 404 may be displayed at a fixed position or location within the physical environment (e.g., a virtual monkey standing next to a specific road sign located within the physical environment), or may be presented to the user as an object located at a position relative to user interface / display 303 (e.g., a virtual clock or thermometer visible at the upper left corner of display 303).

[0040] In some embodiments, the virtual object may be signaled or otherwise triggered by an object that physically exists within or outside of the user's field of view. Virtual object 404 is signaled or otherwise triggered by physical object 402. For example, physical object 402 may actually be a stool, and virtual object 404 may be presented to the user (and in some embodiments to other users interacting with system 100) as a virtual animal standing on the stool. In such embodiments, environment sensing system 306 may use, for example, software and / or firmware stored in processor 308 to recognize various features and / or shape patterns (captured by sensor 312) that identify physical object 402 as a stool. For example, these recognized shape patterns, such as the top of the stool, may be used to trigger the placement of virtual object 404. Other examples include walls, tables, furniture, cars, buildings, people, floors, plants, animals, and any object that can be seen to trigger an augmented reality experience in relation to one or more objects.

[0041] In some embodiments, the particular virtual object 404 that is triggered may be selected by the user or automatically selected by other components of the head-mounted system 300 or the interface system 100. Additionally, in embodiments where the virtual object 404 is automatically triggered, the particular virtual object 404 may be selected based on a particular physical object 402 (or a feature thereof) for which the virtual object 404 is signaled or triggered. For example, if the physical object is identified as a diving board extending over a pool, the triggered virtual object may be a snorkeler, a swimsuit, a floating device, or a creature wearing other related items.

[0042] In another exemplary embodiment, the head-mounted system 300 may include a "virtual" mode in which the interface 302 provides a virtual reality interface. In the virtual mode, the physical environment is omitted from the display 303, and virtual object data provided by the computing network 105, the processor 308, and / or the gateway component 140 is presented on the display 303. The omission of the physical environment may be achieved by physically blocking the visual display 303 (e.g., via a cover) or through features of the interface 302 in which the display 303 transitions to an opaque setting. In the virtual mode, live and / or stored visual and auditory sensations may be presented to the user through the interface 302, and the user experiences and interacts with the digital world (digital objects, other users, etc.) through the virtual mode of the interface 302. Thus, the interface provided to the user in the virtual mode is composed of virtual object data including a virtual digital world.

[0043] FIG. 5 illustrates an exemplary embodiment of a user interface when the head-mounted interface 302 is operating in virtual mode. As shown in FIG. 5, the user interface presents a virtual world 500 composed of digital objects 510, which may include atmosphere, weather, terrain, buildings, and people. Although not illustrated in FIG. 5, the digital objects may also include, for example, plants, vehicles, animals, organisms, machines, artificial intelligence, location information, and any other object or information defining the virtual world 500.

[0044] In another exemplary embodiment, the head-mounted system 300 may include a "mixed" mode, and various features of the head-mounted system 300 (as well as features of the virtual and augmented modes) may be combined to create one or more custom interface modes. In one example of a custom interface mode, the physical environment is omitted from the display 303, and virtual object data is presented on the display 303 in a manner similar to the virtual mode. However, in this example of a custom interface mode, the virtual objects may be completely virtual (i.e., they do not exist within the local physical environment), or they may be actual local physical objects that are rendered as virtual objects within the interface 302 instead of physical objects. Thus, in a particular custom mode (referred to herein as a mixed virtual interface mode), live and / or stored visual and auditory sensations may be presented to the user through the interface 302, and the user experiences and interacts with a digital world that includes fully virtual objects and rendered physical objects.

[0045] FIG. 6 illustrates an exemplary embodiment of a user interface operating in a hybrid virtual interface mode. As shown in FIG. 6, the user interface presents a virtual world 600 composed of a fully virtual object 610 and a rendered physical object 620 (alternatively, a rendering of an object physically present in a scene). According to the embodiment illustrated in FIG. 6, the rendered physical object 620 includes a building 620A, a ground 620B, and a platform 620C, and is shown with a thick outline 630 to indicate to the user that the object is being rendered. Additionally, the fully virtual object 610 includes an additional user 610A, a cloud 610B, a sun 610C, and a flame 610D on the platform 620C. The fully virtual object 610 may include, for example, the atmosphere, weather, terrain, buildings, people, plants, vehicles, animals, organisms, machines, artificial intelligence, location information, and any other object or information not rendered from an object existing within the local physical environment that defines the virtual world 600. Conversely, the rendered physical object 620 is an actual local physical object that is rendered as a virtual object within the interface 302. The thick outline 630 describes one example for indicating the rendered physical object to the user. As such, the rendered physical object may be shown using methods other than those disclosed herein.

[0046] In some embodiments, the rendered physical object 620 is detected using the sensors 312 of the environmental perception system 306 (or using other devices such as a motion or image capture system), and may be converted into digital object data, for example, by software and / or firmware stored in the processing circuit 308. Thus, when the user interacts with the system 100 in the mixed virtual interface mode, various physical objects may be presented to the user as rendered physical objects. This can be particularly useful in enabling the user to interact with the system 100 while still being able to safely navigate the local physical environment. In some embodiments, the user may be able to selectively remove or add rendered physical objects to the interface display 303.

[0047] In another example of a custom interface mode, the interface display 303 may be substantially transparent, thereby enabling the user to view the local physical environment while various local physical objects are presented to the user as rendered physical objects. This example of a custom interface mode is similar to the augmentation mode, except that one or more of the virtual objects may be rendered physical objects, as discussed above with respect to previous examples.

[0048] The foregoing examples of custom interface modes describe some exemplary embodiments of various custom interface modes that may be provided by the mixed mode of the head-mounted system 300. Thus, various other custom interface modes may be created from various combinations of features and functionalities provided by the components of the head-mounted system 300 and the various modes discussed above, without departing from the scope of the present disclosure.

[0049] The embodiments discussed in this specification merely illustrate some examples for providing an interface that operates in off, increasing, virtual, or mixed modes, and are not intended to limit the scope or content of each interface mode or the functionality of the components of the head-mounted system 300. For example, in some embodiments, virtual objects may include data (such as time, temperature, altitude, etc.) displayed to the user, objects created and / or selected by the system 100, objects created and / or selected by the user, or even objects that describe other users interacting with the system 100. Additionally, virtual objects may include an augmentation of a physical object (such as a virtual image growing from a physical platform), and may be visually connected to or disconnected from the physical object.

[0050] Virtual objects may also be dynamic, changing over time and in accordance with various relationships (such as position, distance, etc.) between that user or multiple other users, physical objects, and other virtual objects, and / or in accordance with other variables specified in the software and / or firmware of the head-mounted system 300, the gateway component 140, or the server 110. For example, in one embodiment, a virtual object may respond to a user device or its components (e.g., a virtual ball moves when a tactile device is placed next to it), physical or verbal user interactions (e.g., a virtual creature runs away when the user approaches it or talks when the user addresses it), a chair being thrown at a virtual creature and the creature avoiding the chair, other virtual objects (e.g., a first virtual creature reacts when it sees a second virtual creature), physical variables such as position, distance, temperature, time, etc., or other physical objects in the user's environment (e.g., a virtual creature shown standing on a physical road flattens when a physical vehicle passes by).

[0051] The various modes discussed herein may be applied to user devices other than the head-mounted system 300. For example, an augmented reality interface may be provided via a cellular phone or a tablet device. In such embodiments, the phone or tablet may use a camera to capture the physical environment around the user, and virtual objects may be overlaid on the phone / tablet display screen. Additionally, a virtual mode may be provided by displaying a digital world on the display screen of the phone / tablet. Thus, these modes may be mixed using the phone / tablet components discussed herein, as well as other components connected to or used in combination with the user device, to create various custom interface modes as described above. For example, a mixed virtual interface mode may be provided by a computer monitor, a television screen, or a device lacking a camera that operates in combination with a motion or image capture system. In this exemplary embodiment, the virtual world may be viewable from the monitor / screen, and object detection and rendering may be performed by the motion or image capture system.

[0052] Figure 7 illustrates an exemplary embodiment of the present invention in which two users located at different geographical locations interact with each other and a common virtual world via their respective user devices. In this embodiment, two users 701 and 702 are throwing a virtual ball 703 (a type of virtual object) back and forth, and each user can observe the influence of the other user on the virtual world (e.g., each user can observe the virtual ball changing direction, being caught by the other user, etc.). Since the movement and position of the virtual object (i.e., virtual ball 703) are tracked by the server 110 within the computing network 105, the system 100 may, in some embodiments, communicate to users 701 and 702 the exact position and timing of the arrival of the ball 703 for each user. For example, if the first user 701 is located in London, user 701 may throw the ball 703 to the second user 702 located in Los Angeles at a speed calculated by the system 100. Accordingly, the system 100 may communicate to the second user 702 the exact time and position of the arrival of the ball (e.g., via e-mail, text message, instant message, etc.). In this way, the second user 702 may use his or her device to know that the ball 703 will arrive at a specific time and position. One or more users may also use geographical location information mapping software (or the like) to track one or more virtual objects when virtually traveling around the Earth. An example of this may be a user wearing a 3D head-mounted display looking up at the sky and seeing a virtual airplane flying overhead superimposed on the real world. The virtual airplane may be flown by the user, by an intelligent software agent (software running on the user device or gateway), by other users that may be present locally and / or remotely, and / or any combination thereof.

[0053] As described above, the user device may include a haptic interface device, and the haptic interface device provides feedback (e.g., resistance, vibration, light, sound, etc.) to the user when the haptic device is determined by the system 100 to be located at a physical spatial position relative to the virtual object. For example, the embodiment described above with respect to FIG. 7 may be augmented to include the use of a haptic device 802 as shown in FIG. 8. In this exemplary embodiment, the haptic device 802 may be displayed in the virtual world as a baseball bat. When the ball 703 arrives, the user 702 may swing the haptic device 802 towards the virtual ball 703. If the system 100 determines that the virtual bat provided by the haptic device 802 has "contacted" the ball 703, the haptic device 802 may vibrate or provide other feedback to the user 702, and the virtual ball 703 may bounce the virtual bat back in a direction calculated by the system 100 according to the detected speed, direction, and timing of the contact between the ball and the bat.

[0054] In some embodiments, the disclosed system 100 may facilitate mixed-mode interaction, where multiple users may interact with a common virtual world (and the virtual objects contained therein) using different interface modes (e.g., augmented, virtual, mixed, etc.). For example, a first user interacting with a particular virtual world in a virtual interface mode may interact with a second user interacting with the same virtual world in an augmented reality mode.

[0055] Figure 9A illustrates an example of a virtual object as it appears to a first user 901 (who interacts with the digital world of system 100 in mixed virtual interface mode) and a first object 902, and to a second user 922 who interacts with the same digital world of system 100 in full virtual reality mode. As described above, when interacting with the digital world via the mixed virtual interface mode, local physical objects (e.g., the first user 901 and the first object 902) may be scanned and rendered as virtual objects in the virtual world. The first user 901 may be scanned, for example, by a motion capture system or similar device and rendered as a first rendered physical object 931 in the virtual world (by software / firmware stored in the motion capture system, gateway component 140, user device 120, system server 110, or other device). Similarly, the first object 902 may be scanned, for example, by the environmental sensing system 306 of the head-mounted interface 300 and rendered as a second rendered physical object 932 in the virtual world (by software / firmware stored in the processor 308, gateway component 140, system server 110, or other device). The first user 901 and the first object 902 are shown as physical objects in the physical world in the first portion 910 of FIG. 9A. In the second portion 920 of FIG. 9A, the first user 901 and the first object 902 are shown as the first rendered physical object 931 and the second rendered physical object 932 when they appear to a second user 922 who interacts with the same digital world of system 100 in full virtual reality mode.

[0056] Figure 9B illustrates another exemplary embodiment of mixed-mode interaction in which a first user 901 is interacting with the digital world in a mixed virtual interface mode as discussed above, and a second user 922 is interacting with the same digital world (and the second user's physical local environment 925) in an augmented reality mode. In the embodiment of Figure 9B, the first user 901 and the first object 902 are located at a first physical location 915, and the second user 922 is located at a different second physical location 925 that is separated from the first location 915 by some distance. In this embodiment, the virtual objects 931 and 932 may be transposed in real-time (or near real-time) to locations within the virtual world corresponding to the second location 925. Accordingly, the second user 922 may observe and interact with the rendered physical objects 931 and 932 that depict the first user 901 and the first object 902, respectively, in the second user's physical local environment 925.

[0057] FIG. 10 illustrates an example of an explanatory diagram of a user's field of view when interacting with the system 100 in the augmented reality mode. As shown in FIG. 10, the user sees the local physical environment (i.e., a city with multiple buildings) and the virtual character 1010 (i.e., a virtual object). The position of the virtual character 1010 may be triggered by a 2D visual target (e.g., a signboard, a postcard, or a magazine) and / or one or more 3D reference coordinate systems such as buildings, vehicles, people, animals, airplanes, parts of buildings, and / or 3D physical objects, virtual objects, and / or combinations thereof. In the embodiment illustrated in FIG. 10, the known positions of the buildings in the city may provide an alignment reference and / or information and main features for rendering the virtual character 1010. In addition, the user's geographical spatial position (e.g., provided by GPS, attitude / position sensors, etc.) or moving position relative to the building may include data used by the computing network 105 to trigger the transmission of data for displaying the virtual character 1010. In some embodiments, the data used to display the virtual character 1010 may include the rendered character 1010 and / or instructions (executed by the gateway component 140 and / or the user device 120) for rendering the virtual character 1010 or a part thereof. In some embodiments, when the user's geographical spatial position is unavailable or unknown, the server 110, the gateway component 140, and / or the user device 120 may use the user's last known position as a function of time and / or other parameters and use an estimation algorithm to estimate where a particular virtual object and / or physical object may be located to still display the virtual object 1010. This may also be used to determine the position of any virtual object when the user's sensors are blocked and / or when experiencing other malfunctions.

[0058] In some embodiments, a virtual character or virtual object may have imagination, and the rendering of the imagination is triggered by a physical object. For example, referring to FIG. 11 here, the imagination 1110 may be triggered by an actual physical platform 1120. The triggering of the image 1110 may respond to a visual object or feature (e.g., a reference, a design feature, a geometric shape, a pattern, a physical position, an altitude, etc.) detected by a user device or other components of the system 100. When the user views the platform 1120 without using a user device, the user sees the platform 1120 without the image 1110. However, when the user views the platform 1120 via a user device, the user sees the image 1110 on the platform 1120 as shown in FIG. 11. The image 1110 is a virtual object and thus may be stationary, active, change over time or with respect to the user's viewing position, or even change according to which particular user is viewing the image 1110. For example, if the user is a small child, the image may be a dog, and if the viewer is an adult male, the image may be a large robot as shown in FIG. 11. These are examples of user-dependent and state-dependent experiences. This will enable one or more users to perceive one or more virtual objects, alone and / or in combination with physical objects, and experience customized and personalized versions of the virtual objects. The image 1110 (or a portion thereof) may be rendered by various components of the system, including software / firmware installed on the user device. In combination with the alignment features of the virtual object (i.e., the image 1110), using data indicating the position and orientation of the user device, the virtual object (i.e., the image 1110) forms a relationship with the physical object (i.e., the platform 1120).For example, the relationship between one or more virtual objects and one or more physical objects may be a function of distance, orientation, time, geographical location information, proximity to one or more other virtual objects, and / or any other functional relationship including any kind of virtual and / or physical data. In some embodiments, image recognition software in a user device may further enhance the relationship from digital objects to physical objects.

[0059] The bidirectional interface provided by the disclosed systems and methods may be implemented to facilitate various activities such as, for example, interacting with one or more virtual environments and objects, interacting with other users, and experiencing various forms of media content including advertisements, music concerts, and movies. However, the disclosed systems facilitate user interactions such that the user not only views or listens to media content, but rather actively participates in and experiences the media content. In some embodiments, user participation may include changing existing content or creating new content to be rendered in one or more virtual worlds. In some embodiments, the media content, and / or the user creating the content, may be themed around the creation of one or more virtual worlds.

[0060] In one example, a musician (or other user) may create music content that is rendered to users interacting with a particular virtual world. The music content may include, for example, various singles, EPs, albums, videos, short films, and concert performances. In one example, multiple users may interact with system 100 to simultaneously experience a virtual concert performed by a musician.

[0061] In some embodiments, the media produced may contain a unique identifier code associated with a particular entity (e.g., a band, an artist, a user, etc.). The code may be a combination of alphanumeric characters, a UPC code, a QR code (registered trademark), a 2D image trigger, a 3D physical object feature trigger, or other digital mark, and may be in the form of sound, image, and / or both. In some embodiments, the code may also be embedded in digital media that can be interacted with using the system 100. The user may obtain the code (e.g., via payment of a fee) and redeem the code to access media content produced by the entity associated with the identifier code. The media content may be added or removed from the user's interface.

[0062] The embodiments disclosed herein are provided to illustrate one or more examples of methods and apparatuses for enabling a bidirectional virtual or augmented reality environment for multiple users. As such, modifications to the methods and apparatuses disclosed herein may be made without departing from the scope of the present disclosure as recited in the claims provided below. For example, while various examples and embodiments are discussed herein with respect to a head-mounted display system, the various examples and embodiments may also be applied to other user devices capable of providing the interfaces or capabilities discussed with respect to these particular embodiments.

Claims

1. A system for enabling one or more users to interact with a virtual world, the system comprising: A wearable user device; A memory; A processing circuit; Software stored in the memory, the software being executable by the processing circuit to render at least a portion of the virtual world from virtual world data received at least in part from a computer network; A structure attachable to a body part of a person; A display operable to present the virtual world to the user; A communication interface operable to communicate at least a portion of the virtual world data over a data network; A sensing system operable to sense at least one of the user, a physical object, or the physical environment surrounding the user; A gateway for connecting the wearable user device to the computer network, the gateway being configured to monitor and adjust the speed of data exchange between the wearable user device and the computer network to enable optimal data processing capabilities for the wearable user device by determining whether an object to be rendered is a dynamic object or a static object, determining whether the object to be rendered is within the field of view of the user, and prioritizing dynamic objects or objects within the field of view of the user over static objects or objects outside the field of view of the user; Comprising; The processing circuit is operable to execute the software to render changes to the virtual world in response to at least one of the sensed user, sensed physical object, and sensed physical environment.

2. The change to the virtual world comprises virtual objects, the virtual objects having a predetermined relationship with the sensed user, physical object, or physical environment, the system of claim 1.

3. The communication interface is operable to communicate the virtual objects to the computer network, the system of claim 2.

4. The system according to claim 1, wherein the virtual world is presented in at least one of a two-dimensional format or a three-dimensional format.

5. The system according to claim 1, wherein the wearable user device enables interaction in at least one of an augmented reality mode, a virtual reality mode, or a combination of the augmented reality mode and the virtual reality mode.

6. The system according to claim 1, wherein the wearable user device further comprises a device for providing tactile or haptic feedback.

7. The system according to claim 1, wherein at least a portion of the virtual world data is communicated with a gateway.

8. The system according to claim 1, further comprising a computer network comprising one or more computer servers, the one or more computer servers comprising a memory, a processing circuit, and software stored in the memory and executable by the processing circuit to process at least a portion of the virtual world data, the computer network being operable to transmit the virtual world data to a wearable user device for presentation to a first user.

9. A system for enabling one or more users to interact with a virtual world, the system comprising: a wearable user device; a memory; a processing circuit; software stored in the memory, the software being executable by the processing circuit to render at least a portion of the virtual world from virtual world data received at least in part from a computer network; a structure attachable to a body part of a person; a display operable to present the virtual world to the user; a communication interface operable to communicate at least a portion of the virtual world data over a data network; a sensing system operable to sense at least one of the user, a physical object, or the physical environment surrounding the user; and the processing circuit is operable to execute the software to render a change in the virtual world in response to at least one of the sensed user, the sensed physical object, and the sensed physical environment. The system further comprises a computer network comprising one or more computer servers, the one or more computer servers comprising a memory, a processing circuit, and software stored in the memory and executable by the processing circuit to process at least a portion of the virtual world data, the computer network being operable to transmit the virtual world data to a wearable user device for presentation to a first user, The system further comprises a gateway operatively coupled to the wearable user device and the computer network, and different from the wearable user device and the computer network, the gateway being configured to monitor and regulate the exchange of virtual world data between the wearable user device and the computer network to enable optimal data processing for the wearable user device, the optimal data processing including assigning priorities to a plurality of renderings such that processing of rendering of dynamic virtual objects is prioritized over rendering of static virtual objects, and processing of rendering of data within a field of view having less than 60 degrees of the user's pupil is prioritized over rendering of data outside the field of view, the plurality of renderings being executed by the gateway and transmitted to the wearable user device, system.

10. A system for enabling one or more users to interact with a virtual world, the system comprising a wearable user device, a memory, a processing circuit, software stored in the memory, the software being executable by the processing circuit to render at least a portion of the virtual world from virtual world data received at least in part from a computer network, a structure attachable to a body part of a person, a display operable to present the virtual world to the user, a communication interface operable to communicate at least a portion of the virtual world data over a data network, a sensing system operable to sense at least one of the user, a physical object, or the physical environment surrounding the user comprising, the processing circuit is operable to execute the software to render changes to the virtual world in response to at least one of the sensed user, sensed physical object, and sensed physical environment, the system further comprises a computer network comprising one or more computer servers, the one or more computer servers comprising a memory, a processing circuit, and software stored in the memory and executable by the processing circuit to process at least a portion of the virtual world data, the computer network being operable to transmit the virtual world data to a wearable user device for presentation to a first user, the sensing system is connected to the wearable user device, the sensing system comprising a camera arranged to detect an angular measurement of the pupil of the user's eye, a system. **Claim 11** The system according to claim 8, wherein the sensing system is an environmental sensing system coupled to the wearable user device configured to obtain data from the physical environment around the user. **Claim 12** The system according to claim 11, wherein the environmental sensing system detects predetermined features of static physical objects external to the user. **Claim 13** The system according to claim 12, wherein at least one computer server of the computer network receives data from the environmental sensing system for triggering transmission of the virtual world data to the wearable user device. **Claim 14** The system according to claim 1, wherein at least a portion of the virtual world is configured to change in response to a change in the virtual world data. **Claim 15** In conjunction with the change in the virtual world in response to a change in the virtual world data, at least a portion of the virtual world data is changed in response to a static physical object external to the user and sensed by the wearable user device. The system according to claim 14. **Claim 16** The system according to claim 15, wherein the static physical object external to the user comprises a mapped object in the physical environment in the vicinity of the user. **Claim 17** The system according to claim 14, wherein the change in the virtual world data represents rendering at least one of a dynamic virtual object and a static virtual object based on a static physical object external to the user according to a predetermined relationship.

18. The system according to claim 1, wherein the change in the virtual world data is presented to a second user device for presentation to a second user according to a predetermined relationship.

19. The system according to claim 1, wherein the virtual world is operable to be rendered by at least one computer server of the computer network or the wearable user device.

20. The system according to claim 1, wherein the virtual world is presented in at least one of a two-dimensional format or a three-dimensional format.

21. The wearable user device is operable to provide an interface for enabling interaction between the user and the virtual world in at least one of an augmented reality mode, a virtual reality mode, or a combination of the augmented reality mode and the virtual reality mode.

22. The structure attachable to a human body part is configured to be a head-mounted structure.

Citation Information

Patent Citations

  • Device and method for processing information

    JP2000276613A

  • High quality three-dimensional stereoscopic floor plan distribution / display system

    JP2003006674A

  • Augmented reality system for identifying real marker object

    JP2006313549A

  • Virtual interactive presence systems and methods

    JP2010528354A

  • Method and system for visualization of dynamic three-dimensional virtual objects

    US20060161572A1