US2022217224A1PendingUtilityA1

System and method for facilitating sharing of virtual three-dimensional space

Assignee: Constructive LabsPriority: Nov 7, 2016Filed: Mar 21, 2022Published: Jul 7, 2022
Est. expiryNov 7, 2036(~10.3 yrs left)· nominal 20-yr term from priority
Inventors:Michael Roberts
H04L 67/131H04L 67/1095G06F 3/04815H04L 67/38
55
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

One embodiment provides a system that facilitates shared virtual reality space. During operation, the system receives a first message associated with a first virtual reality object, wherein the first message includes a first address for the first virtual reality object and indicates a first action to be performed on the first virtual reality object. The system performs the first action on the first virtual reality object. The system determines a second address for a second virtual reality object that is remotely maintained and corresponds to the first virtual reality object. The system constructs a second message, which includes the second address and indicates the first action, thereby allowing the first action to be performed on the second virtual reality object.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A method for processing a virtual reality space, the method comprising:
 receiving, by a first engine on a first computing device, a first message, the first message including a first address for a first virtual reality object in the first engine and indicating a first action to be performed on the first virtual reality object;   performing, by the first engine, the first action on the first virtual reality object;   determining, by the first engine, a second address for a second virtual reality object in a second engine, the second engine being remote from the first engine, wherein the first virtual reality object and the second virtual reality object are copies of a same virtual reality object;   constructing, by the first engine, a second message, the second message including the second address and indicating the first action;   sending, by the first engine, the second message for use by the second engine,   wherein the first engine comprises a plurality of simulators, a respective simulator performing simulation on a number of objects associated with the respective simulator and having an associated message queue, and   wherein performing, by the first engine, the first action on the first virtual reality object comprises:
 routing the first message to a message queue associated with a first simulator with which the first object is associated; and 
 performing, by the first simulator, the first action on the first object. 
   
     
     
         2 . The method of  claim 1 , further comprising:
 receiving, by the second engine from the first engine, the second message; and   performing, by the second engine, the first action on the second virtual reality object.   
     
     
         3 . The method of  claim 1 ,
 wherein the second engine is on a second computing device remote from the first computing device.   
     
     
         4 . The method of  claim 1 , wherein sending, by the first engine, the second message comprises:
 sending, by the first engine, the second message for use by the second engine via a server remote from the first engine and the second engine.   
     
     
         5 . The method of  claim 1 , further comprising:
 receiving, by a user interface of the first computing device, a user input, the user input specifying the first virtual reality object and the first action; and   generating, by a message generation module of the first computing device, the first message using the user input.   
     
     
         6 . The method of  claim 1 , further comprising at least one of:
 the first virtual reality object is a replica of the second virtual reality object;   the second virtual reality object is a replica of the first virtual reality object; and   the first virtual reality object and the second virtual reality object are replicas of a third virtual reality object, the third virtual reality object being in a third engine remote from the first engine and the second engine.   
     
     
         7 . The method of  claim 1 , further comprising:
 maintaining, by the first computing device, a view list for the first virtual reality object, the view list for the first virtual reality object listing one or more additional virtual reality objects each with a respective address, the first and additional virtual reality objects being copies of a same virtual reality object,   wherein determining the second address for the second virtual reality object comprises using the view list for the first virtual reality object.   
     
     
         8 . The method of  claim 7 , further comprising:
 sending, by the first engine, to each of the additional virtual reality objects in the view list, a respective message, wherein a message for an additional virtual reality object includes the respective address for the additional virtual reality object and indicates the first action.   
     
     
         9 . The method of  claim 1 , further comprising:
 rendering, by the first engine, the virtual reality space on the first computing device, including rendering a representation of the first virtual reality object.   
     
     
         10 . The method of  claim 1 , further comprising:
 rendering, by the second engine, the virtual reality space on at least one of the first computing device and a second computing device remote from the first computing device, including rendering a representation of the second virtual reality object.   
     
     
         11 . The method of  claim 1 , wherein determining the second address is based on a list associated with the first virtual reality object, and wherein the method further comprises:
 adding to the list a new address for a new virtual reality object;   generating a representation of the first virtual reality object; and   constructing a third message, which includes the new address and the representation of the first virtual reality object, thereby allowing a replica of the first virtual object to be created remotely based on the new address.   
     
     
         12 . A system for processing a virtual reality space, the system comprising:
 a first engine on a first computing device, the first engine configured to:
 receive a first message, the first message including a first address for a first virtual reality object in the first engine and indicating a first action to be performed on the first virtual reality object; 
 perform the first action on the first virtual reality object; 
 determine a second address for a second virtual reality object in a second engine, the second engine being remote from the first engine, wherein the first virtual reality object and the second virtual reality object are copies of a same virtual reality object; 
 construct a second message, the second message including the second address and indicating the first action; 
 send the second message for use by the second engine; 
   wherein the first engine comprises a plurality of simulators, a respective simulator performing simulation on a number of objects associated with the respective simulator and having an associated message queue, and   wherein the first engine is further configured to perform the first action on the first virtual reality object by:
 routing the first message to a message queue associated with a first simulator with which the first object is associated; and 
 performing, by the first simulator, the first action on the first object. 
   
     
     
         13 . The system of  claim 12 , further comprising:
 the second engine configured to:
 receive, from the first engine, the second message; and 
 perform the first action on the second virtual reality object. 
   
     
     
         14 . The system of  claim 12 , wherein the first engine configured to send the second message comprises at least one of:
 sending the second message for use by the second engine via a server remote from the first engine and the second engine; and   sending the second message for use by the second engine, the second engine on a second computing device remote from the first computing device.   
     
     
         15 . The system of  claim 12 ,
 wherein the first computing device is configured to maintain a view list for the first virtual reality object, the view list for the first virtual reality object listing one or more additional virtual reality objects each with a respective address, the first and additional virtual reality objects being copies of a same virtual reality object, and   wherein the first engine is further configured to:
 determine the second address for the second virtual reality object comprises using the view list for the first virtual reality object; 
 send to each of the additional virtual reality objects in the view list, a respective message, wherein a message for an additional virtual reality object includes the respective address for the additional virtual reality object and indicates the first action. 
   
     
     
         16 . The system of  claim 12 ,
 wherein the first engine is further configured to render the virtual reality space on the first computing device, including rendering a representation of the first virtual reality object, and   wherein the second engine is configured to render the virtual reality space on at least one of the first computing device and a second computing device remote from the first computing device, including rendering a representation of the second virtual reality object.   
     
     
         17 . The system of  claim 12 , wherein the first engine is further configured to:
 determine the second address is based on a list associated with the first virtual reality object;   add to the list a new address for a new virtual reality object;   generate a representation of the first virtual reality object; and   construct a third message, which includes the new address and the representation of the first virtual reality object, thereby allowing a replica of the first virtual object to be created remotely based on the new address.   
     
     
         18 . A non-transitory computer-readable storage medium storing instructions that when executed by a computer cause the computer to perform a method, the method comprising:
 receiving, by a first engine on a first computing device, a first message, the first message including a first address for a first virtual reality object in the first engine and indicating a first action to be performed on the first virtual reality object;   performing, by the first engine, the first action on the first virtual reality object;   determining, by the first engine, a second address for a second virtual reality object in a second engine, the second engine being remote from the first engine, wherein the first virtual reality object and the second virtual reality object are copies of a same virtual reality object;   constructing, by the first engine, a second message, the second message including the second address and indicating the first action;   sending, by the first engine, the second message for use by the second engine,   wherein the first engine comprises a plurality of simulators, a respective simulator performing simulation on a number of objects associated with the respective simulator and having an associated message queue, and   wherein performing, by the first engine, the first action on the first virtual reality object comprises:
 routing the first message to a message queue associated with a first simulator with which the first object is associated; and 
 performing, by the first simulator, the first action on the first object. 
   
     
     
         19 . The storage medium of  claim 18 , wherein the method further comprises:
 receiving, by a user interface of the first computing device, a user input, the user input specifying the first virtual reality object and the first action; and   generating, by a message generation module of the first computing device, the first message using the user input.   
     
     
         20 . The storage medium of  claim 18 , wherein the method further comprises:
 maintaining, by the first computing device, a view list for the first virtual reality object, the view list for the first virtual reality object listing one or more additional virtual reality objects each with a respective address, the first and additional virtual reality objects being copies of a same virtual reality object, wherein determining the second address for the second virtual reality object comprises using the view list for the first virtual reality object; and   sending, by the first engine, to each of the additional virtual reality objects in the view list, a respective message, wherein a message for an additional virtual reality object includes the respective address for the additional virtual reality object and indicates the first action.

Join the waitlist — get patent alerts

Track US2022217224A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.