Augmented reality combines real world attributes, such as physical position or movement, with computer-generated, often graphical, data. Together, the attributes and data form a user experience occurring in a real world environment, while interacting with virtual objects, typically occurring in real time. In general, augmented realities are presented through graphical user interfaces, which can also be supplemented with auditory cues, tactile feedback, and other computer outputs. Thus, the user is able to view virtual objects positioned in the real world.
Recently, the capabilities of mobile platforms, such as portable media players, personal data assistants (PDA), and mobile telephones, have grown to enable on-the-go generation of augmented realities. Users are no longer tied to desktop environments and the physical constraints imposed by having to remain in a relatively stationary position. Moreover, these platforms are increasingly being equipped with input capabilities extending beyond the immediate user interface. For instance, mobile telephones often incorporate built-in cameras and global positioning system (GPS) receivers, the latter of which enables the device to determine the user's physical location. Similarly, portable media players are beginning to incorporate motion sensors that sense directional device orientation.
For the most part, the extended capabilities of these devices have been limited to providing abstract objects with a real world view for a single user, rather than collaboratively between multiple users. For instance, Pokemon Go by Niantic, Inc. of San Francisco, Calif., is a location based augmented reality game in which a user captures virtual Pokemon characters by moving around in the real world. A user can capture the characters by touching a virtual ball that appears on a screen of a mobile device and flinging the ball towards the virtual character positioned in the real world. However, catching the virtual characters are limited to a single user who is on a solo journey to catch and collect Pokemon characters.
In a recent update, raid battles were introduced in Pokemon Go, in which multiple players can join a raid to collaboratively attack a raid boss by independently fighting the raid boss at the same time. However, within the raid, a user is unable to interact with other users in the same battle or raid. For instance, the users are unable to communicate with one another and to coordinate moves to defeat the raid boss. Further, views of the users are not coordinated such that cooperative play can occur.
Therefore, a need remains for an approach to providing spatially accurate and oriented perspective views of virtual objects in the real world based on the location of each of a plurality of users.