System for multi-user collaboration within a virtual reality environment related application
Real-world users of an event simulation system can playback a digital representation of an event that is mapped onto a virtual model of a real-world venue to simulate the event being presented at a real-world venue. As the real-world users are viewing this virtual event, these users can virtually interact with the virtual event, for example, move around the virtual event to view the virtual event at various locations and/or modify parameters, characteristics, and/or attributes of the virtual event. Thereafter, the event simulation system can propagate these modifications across multiple real-world users of the event simulation system to allow these real-world users to collaboratively interact with the virtual event.
1 . A method for collaborating among a plurality of real-world users for planning a real-world event, the method comprising:
playing back, by a first user device from among a plurality of user devices that is associated with a first real-world user from among the plurality of real-world users, a first virtual event that is mapped onto a virtual model of a real-world venue to virtually simulate the real-world event being presented at the real-world venue;
processing, by the first user device, the first virtual event as the first virtual event is being played back to provide a first virtual event view of the first virtual event that corresponds to a first location within the virtual model of the real-world venue;
displaying, by the first user device, the first virtual event view to simulate a first virtual user that is associated with the first real-world user being at the first location within the virtual model of the real-world venue;
receiving, by the first user device, a second virtual event including a modification to the first virtual event provided by a second user device from among the plurality of user devices that is associated with a second real-world user from among the plurality of real-world users; and
playing back, by the first user device, the second virtual event that is mapped onto the virtual model of the real-world venue to continue to virtually simulate the real-world event being presented at the real-world venue.
2 . The method of claim 1 , further comprising:
moving, by the first user device, the first virtual user from the first location to a second location within the virtual model of the real-world venue;
processing, by the first user device, the first virtual event as the first virtual event is being played back to provide a second virtual event view of the first virtual event that corresponds to the second location of the first virtual user within the virtual model of the real-world venue; and
displaying, by the first user device, the second virtual event view to simulate the first virtual user being at the second location within the virtual model of the real-world venue.
3 . The method of claim 1 , wherein the processing comprises:
tracking the first location within the virtual model of the real-world venue;
estimating a line of sight of the first virtual user at the first location;
estimating a field of view of the first virtual user that is associated with the line of sight; and
matching the first virtual event view to the field of view of the first virtual user at the first location.
4 . The method of claim 1 , further comprising receiving, by the first user device, one or more interactions between the first real-world user and one or more virtual graphical elements that are associated with the first user device to modify the first virtual event as the first virtual event is being played back or the second virtual event as the second virtual event is being played back.
5 . The method of claim 1 , wherein the modification comprises:
a modification to remove one or more parameters, characteristics, or attributes of the first virtual event from the virtual model;
a modification to move the one or more parameters, characteristics, or attributes of the first virtual event within the virtual model; or
a modification to insert the one or more parameters, characteristics, or attributes of the first virtual event into the virtual model.
6 . The method of claim 1 , wherein the receiving comprises receiving the second virtual event from an event simulation server communicatively coupled to the plurality of user devices.
7 . The method of claim 6 , further comprising establishing, by the first user device, a communication session with the second user device via the event simulation server to provide audio, video, or data communication capabilities between the first real-world user and the second real-world user.
8 . A first user device for collaborating among a plurality of real-world users for planning a real-world event, the first user device comprising:
a memory configured to store a first virtual event that is mapped onto a virtual model of a real-world venue; and
a processor configured to execute instructions stored in the memory, the instructions, when executed by the processor, configuring the processor to:
play back the first virtual event to virtually simulate the real-world event being presented at the real-world venue,
process the first virtual event as the first virtual event is being played back to provide a first virtual event view of the first virtual event that corresponds to a first location within the virtual model of the real-world venue,
cause the first virtual event view to be displayed to simulate a first virtual user that is associated with a first real-world user from among the plurality of real-world users being at the first location within the virtual model of the real-world venue,
receive a second virtual event including a modification to the first virtual event provided by a second user device from among the plurality of user devices that is associated with a second real-world user from among the plurality of real-world users, and
play back the second virtual event that is mapped onto the virtual model of the real-world venue to continue to virtually simulate the real-world event being presented at the real-world venue.
9 . The first user device of claim 8 , wherein the instructions, when executed by the processor, further configure the processor to:
move the first virtual user from the first location to a second location within the virtual model of the real-world venue;
process the first virtual event as the first virtual event is being played back to provide a second virtual event view of the first virtual event that corresponds to the second location of the first virtual user within the virtual model of the real-world venue; and
cause the second virtual event view to be displayed to simulate the first virtual user being at the second location within the virtual model of the real-world venue.
10 . The first user device of claim 8 , wherein the instructions, when executed by the processor, configure the processor to:
track the first location within the virtual model of the real-world venue;
estimate a line of sight of the first virtual user at the first location;
estimate a field of view of the first virtual user that is associated with the line of sight; and
match the first virtual event view to the field of view of the first virtual user at the first location.
11 . The first user device of claim 8 , wherein the instructions, when executed by the processor, further configure the processor to receive one or more interactions between the first real-world user and one or more virtual graphical elements that are associated with the first user device to modify the first virtual event as the first virtual event is being played back or the second virtual event as the second virtual event is being played back.
12 . The first user device of claim 8 , wherein the modification comprises:
a modification to remove one or more parameters, characteristics, or attributes of the first virtual event from the virtual model;
a modification to move the one or more parameters, characteristics, or attributes of the first virtual event within the virtual model; or
a modification to insert the one or more parameters, characteristics, or attributes of the first virtual event into the virtual model.
13 . The first user device of claim 8 , wherein the instructions, when executed by the processor, configure the processor to receive the second virtual event from an event simulation server communicatively coupled to the plurality of user devices.
14 . The first user device of claim 13 , wherein the instructions, when executed by the processor, further configure the processor to establish a communication session with the second user device via the event simulation server to provide audio, video, or data communication capabilities between the first real-world user and the second real-world user.
15 . A system for collaborating among a plurality of real-world users for planning a real-world event, the system comprising:
a first user device from among a plurality of user devices that is associated with a first real-world user from among the plurality of real-world users configured to:
play back a first virtual event that is mapped onto a virtual model of a real-world venue to virtually simulate the real-world event being presented at the real-world venue;
process the first virtual event as the first virtual event is being played back to provide a first virtual event view of the first virtual event that corresponds to a first location within the virtual model of the real-world venue;
display the first virtual event view to simulate a first virtual user that is associated with the first real-world user being at the first location within the virtual model of the real-world venue; and
a second user device from among the plurality of user devices that is associated with a second real-world user from among the plurality of real-world users configured to:
play back a second virtual event that is mapped onto the virtual model of the real-world venue to virtually simulate the real-world event being presented at the real-world venue;
process the second virtual event as the second virtual event is being played back to provide a second virtual event view of the second virtual event that corresponds to a second location within the virtual model of the real-world venue;
display the second virtual event view to simulate a second virtual user that is associated with the second real-world user being at the second location within the virtual model of the real-world venue,
wherein the first user device is further configured to:
receive a third virtual event including a modification to the first virtual event provided by the second user device,
play back the third virtual event that is mapped onto the virtual model of the real-world venue to continue to virtually simulate the real-world event being presented at the real-world venue
process the third virtual event as the third virtual event is being played back to provide a third virtual event view of the third virtual event that corresponds to the first location within the virtual model of the real-world venue, and
continue to simulate the first virtual user being at the first location within the virtual model of the real-world venue.
16 . The system of claim 15 , wherein the first user device is further configured to:
move the first virtual user from the first location to a third location within the virtual model of the real-world venue;
process the third virtual event as the third virtual event is being played back to provide a fourth virtual event view of the third virtual event that corresponds to the third location of the first virtual user within the virtual model of the real-world venue; and
display the fourth virtual event view to simulate the first virtual user being at the third location within the virtual model of the real-world venue.
17 . The system of claim 15 , wherein the first user device is further configured to:
track the first location within the virtual model of the real-world venue;
estimate a line of sight of the first virtual user at the first location;
estimate a field of view of the first virtual user that is associated with the line of sight; and
match the third virtual event view to the field of view of the first virtual user at the first location.
18 . The system of claim 15 , wherein the first user device is further configured to receive one or more interactions between the first real-world user and one or more virtual graphical elements that are associated with the first user device to modify the first virtual event as the first virtual event is being played back or the second virtual event as the second virtual event is being played back.
19 . The system of claim 15 , wherein the modification comprises:
a modification to remove one or more parameters, characteristics, or attributes of the first virtual event from the virtual model;
a modification to move the one or more parameters, characteristics, or attributes of the first virtual event within the virtual model; or
a modification to insert the one or more parameters, characteristics, or attributes of the first virtual event into the virtual model.
20 . The system of claim 15 , wherein the first user device is further configured to establish a communication session with the second user device via an event simulation server communicatively coupled to the plurality of user devices to provide audio, video, or data communication capabilities between the first real-world user and the second real-world user.