# US 12,001,750 B2 · Location-based shared augmented reality experience system

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,001,750 B2
- Document ID: US12001750B2
- Status: Granted
- Kind: B2
- Application number: 17/725,319
- Filed: 2022-04-20
- Published: 2023-10-26
- Granted: 2024-06-04
- Earliest claimed: 2022-04-20
- Assignees: Snap Inc.
- Applicants: Snap Inc.
- Inventors: Pawel Wawruch
- Web page: https://patentgrep.com/patent/US12001750B2

## CPC

- G06F 3/1454: {involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay}
- G06T 19/006: {Mixed reality (object pose determination, tracking or camera calibration for mixed reality G06T7/00)}
- A63F 13/87: Communicating with other players during game play, e.g. by e-mail or chat
- G06F 3/011: {Arrangements for interaction with the human body, e.g. for user immersion in virtual reality (blind teaching G09B21/00)}
- G06V 20/20: in augmented reality scenes
- H04L 51/222: using geographical location information, e.g. messages transmitted or received in proximity of a certain spot or area
- A63F 2300/8082: Virtual reality
- G06T 2219/024: Multi-user, collaborative environment
- G06V 40/00: Recognition of biometric, human-related or animal-related patterns in image or video data
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- A63F: CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- G06V: IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A location-based shared augmented reality (AR) experience system is configured to permit users that find themselves in the same geographic area to easily join in a shared AR experience by creating respective instances of the shared AR experience for different previously defined geographic areas. When a user indicates a request to launch a shared AR experience accessible via a messaging client, the location-based shared AR experience system obtains or receives from the user device executing the messaging client location information of the user device, determines a previously-defined AR experience area that encompasses the location of the user device, and communicates to the user device an address of an associated instance of the shared AR experience.

## Claims

### Claim 1

A method comprising:
in a messaging system that hosts a backend service for a messaging client and that provides a shared AR experience, receiving a request to launch the shared AR experience at a first user device located at a first geographic location, the shared AR experience associated with a virtual object and an activity UI generated for respective participating devices using respective camera views of the respective participating devices, a camera view of a device with respect to an instance of the shared AR experience comprising an output of a digital image sensor of a camera of the device;
determining a first AR experience area corresponding to the first geographic location, wherein the first AR experience area enables multiple users that are within an area defined by three latitude/longitude pairs that encompass the first geographic location to simultaneously interact with the virtual object;
communicating to the first user device a first address identifying the first user device as a participating device with respect to a first instance of the shared AR experience;
causing display of the activity UI on a display of the first user device;
identifying a location of a second user device based on GPS information from the second user device;
determining that the location of the second user device is within a predefined distance from the first AR experience area and that the location of the second user device is outside of the area defined by the three latitude/longitude pairs;
generating user interface data to display directions on the second user device toward the first AR experience area;
determining that the location of the second user device is within of the area defined by the three latitude/longitude pairs; and
causing display of the activity UI on a display of the second user device.

### Claim 2 (depends on 1)

The method of claim 1, wherein the determining the first AR experience area corresponding to the first geographic location comprises:
receiving a GPS location from the first user device; and
selecting the first AR experience area encompassing the GPS location.

### Claim 3 (depends on 1)

The method of claim 1, comprising:
receiving a request to launch the shared AR experience at a further user device located at a further geographic location, the further geographic location corresponding to the first AR experience area;
communicating to the further user device an address identifying the further user device as a participating device with respect to the first instance of the shared AR experience; and
causing display of the activity UI on a display of the further user device.

### Claim 4 (depends on 3)

The method of claim 3, comprising:
determining an anchor object corresponding to a real-world object represented in the activity UI displayed on the display of the first user device;
generating a mapping of the virtual object to the anchor object; and
positioning the virtual object on the activity UI based on the mapping.

### Claim 5 (depends on 1)

The method of claim 1, comprising receiving events from the first user device and updating a state of the first instance of the shared AR experience based on the events.

### Claim 6 (depends on 1)

The method of claim 1, comprising generating a plurality of AR experience areas corresponding to respective areas in a geographic coordinate system, wherein the first AR experience area is from the plurality of AR experience areas.

### Claim 7 (depends on 6)

The method of claim 6, wherein a second AR experience area is from the plurality of AR experience areas.

### Claim 8 (depends on 7)

The method of claim 7, comprising:
receiving a request to launch the shared AR experience at a second user device located at a second geographic location;
determining the second AR experience area corresponding to the second geographic location, a second instance of the shared AR experience corresponding to the second AR experience area;
communicating to the second user device a second address identifying the second user device as a participating device with respect to the second instance of the shared AR experience; and
causing display of the activity UI on a display of the second user device.

### Claim 9 (depends on 1)

The method of claim 1, wherein the first user device is a smart phone or an AR glasses device.

### Claim 10

A system comprising:
one or more processors; and
a non-transitory computer readable storage medium comprising instructions that when executed by the one or more processors cause the one or more processors to perform operations comprising:
in a messaging system that hosts a backend service for a messaging client and that provides a shared AR experience, receiving a request to launch the shared AR experience at a first user device located at a first geographic location, the shared AR experience associated with a virtual object and an activity UI generated for respective participating devices using respective camera views of the respective participating devices, a camera view of a device with respect to an instance of the shared AR experience comprising an output of a digital image sensor of a camera of the device;
determining a first AR experience area corresponding to the first geographic location, wherein the first AR experience area enables multiple users that are within an area defined by three latitude/longitude pairs that encompass the first geographic location to simultaneously interact with the virtual object;
communicating to the first user device a first address identifying the first user device as a participating device with respect to a first instance of the shared AR experience;
causing display of the activity UI on a display of the first user device;
identifying a location of a second user device based on GPS information from the second user device;
determining that the location of the second user device is within a predefined distance from the first AR experience area and that the location of the second user device is outside of the area defined by the three latitude/longitude pairs;
generating user interface data to display directions on the second user device toward the first AR experience area;
determining that the location of the second user device is within of the area defined by the three latitude/longitude pairs; and
causing display of the activity UI on a display of the second user device.

### Claim 11 (depends on 10)

The system of claim 10, wherein the determining the first AR experience area corresponding to the first geographic location comprises:
receiving a GPS location from the first user device; and
selecting the first AR experience area encompassing the GPS location.

### Claim 12 (depends on 10)

The system of claim 10, wherein the operations caused by instructions executed by the one or more processors further include:
receiving a request to launch the shared AR experience at a further user device located at a further geographic location, the further geographic location corresponding to the first AR experience area;
communicating to the further user device an address identifying the further user device as a participating device with respect to the first instance of the shared AR experience; and
causing display of the activity UI on a display of the further user device.

### Claim 13 (depends on 12)

The system of claim 12, wherein the operations caused by instructions executed by the one or more processors further include:
determining an anchor object corresponding to a real-world object represented in the activity UI displayed on the display of the first user device;
generating a mapping of the virtual object to the anchor object; and
positioning the virtual object on the activity UI based on the mapping.

### Claim 14 (depends on 10)

The system of claim 10, wherein the operations caused by instructions executed by the one or more processors further include: receiving events from the first user device and updating a state of the first instance of the shared AR experience based on the events.

### Claim 15 (depends on 10)

The system of claim 10, wherein the operations caused by instructions executed by the one or more processors further include: generating a plurality of AR experience areas corresponding to respective areas in a geographic coordinate system, wherein the first AR experience area is from the plurality of AR experience areas.

### Claim 16 (depends on 15)

The system of claim 15, wherein a second AR experience area is from the plurality of AR experience areas.

### Claim 17 (depends on 16)

The system of claim 16, wherein the operations caused by instructions executed by the one or more processors further include:
receiving a request to launch the shared AR experience at a second user device located at a second geographic location;
determining the second AR experience area corresponding to the second geographic location, a second instance of the shared AR experience corresponding to the second AR experience area;
communicating to the second user device a second address identifying the second user device as a participating device with respect to the second instance of the shared AR experience; and
causing display of the activity UI on a display of the second user device.

### Claim 18

A machine-readable non-transitory storage medium having instruction data executable by a machine to cause the machine to perform operations comprising:
in a messaging system that hosts a backend service for a messaging client and that provides a shared AR experience, receiving a request to launch the shared AR experience at a first user device located at a first geographic location, the shared AR experience associated with a virtual object and an activity UI generated for respective participating devices using respective camera views of the respective participating devices, a camera view of a device with respect to an instance of the shared AR experience comprising an output of a digital image sensor of a camera of the device;
determining a first AR experience area corresponding to the first geographic location, wherein the first AR experience area enables multiple users that are within an area defined by three latitude/longitude pairs that encompass the first geographic location to simultaneously interact with the virtual object;
communicating to the first user device a first address identifying the first user device as a participating device with respect to a first instance of the shared AR experience;
causing display of the activity UI on a display of the first user device;
identifying a location of a second user device based on GPS information from the second user device;
determining that the location of the second user device is within a predefined distance from the first AR experience area and that the location of the second user device is outside of the area defined by the three latitude/longitude pairs;
generating user interface data to display directions on the second user device toward the first AR experience area;
determining that the location of the second user device is within of the area defined by the three latitude/longitude pairs; and
causing display of the activity UI on a display of the second user device.
