IP Library Granted Patent US 12,300,196
Granted Patent B2
US 12,300,196 · App. 18/363,673 · Granted May 13, 2025

Enhanced state control for anchor-based cross reality applications

Inventor: Praveen Babu JD (Plantation, FL)
Assignee: MAGIC LEAP, INC.
G09G5/36G02B6/003G02B6/0035G02B6/0076G02B27/0172G02B2027/0127
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,300,196
App. No.
18/363,673
Filed
Aug 1, 2023
Granted
May 13, 2025
Kind
B2
Art Unit
2625
USPC
345/8
Abstract

Cross reality (XR) display devices, such as augmented reality devices, with enhanced state control for anchor-based augmented reality applications are disclosed. In some embodiments, the devices are configured to obtain information identifying applications with respective anchor locations located within a first threshold distance metric of an XR device, with an anchor location corresponding to a real-world location at which virtual content is to be presented; determining respective states, selected from a multitude of states, to be assigned to the applications, the states being determined based on a proximity of the anchor locations to the XR device; implementing the states, with a first application being assigned a state to render virtual content, and with the first application presenting virtual content via the XR device; and in response to movement of the XR device, determining updated states of the one or more applications.

Claims (39)

1. A method implemented by a cross-reality (XR) device comprising one or more processors, the XR device configured to present virtual content to a user of the XR device at a plurality of depth planes, the method comprising:

obtaining information identifying a plurality of applications with respective anchor locations located within a first threshold distance metric of the XR device, wherein an anchor location corresponds to a real-world location at which virtual content is to be presented by an application;

filtering the identified applications to maintain a subset of the applications, wherein filtering is triggered based on a determination that the plurality of applications located within the first threshold distance metric exceeds a threshold number of applications,

wherein the filtering is based on usability information indicating usability of each of the identified applications or interactability information indicating interactability of each of the identified applications;

determining respective states, selected from a plurality of states, to be assigned to the subset of the applications, the states being determined based on a proximity of the anchor locations to the XR device;

implementing the states, wherein a first application of the subset of the applications is assigned a state to render virtual content, and wherein the first application presents virtual content via the XR device at a first anchor location; and

in response to movement of the XR device, determining updated states for one or more applications included in the subset.

2. The method of claim 1 , wherein the filtering is further based on depth plane information associated with the identified applications, and wherein the depth plane information indicates a respective depth plane at which each of the identified applications is to present virtual content.

3. The method of claim 2 , wherein filtering based on the depth plane information comprises favoring first applications which are to present virtual content at a first depth plane and disfavoring second applications which are to present virtual content at a second depth plane.

4. The method of claim 1 , wherein the identified applications include a first group of applications and a second group of applications, wherein the usability information indicates that the usability of each of the first group of applications is higher than the usability of each of the second group of applications, and wherein the filtering maintains the first group of applications as the subset of the applications.

5. The method of claim 1 , wherein the identified applications include a first group of applications and a second group of applications, wherein the usability information indicates that the usability of each of the first group of applications is higher than the usability of each of the second group of applications, and wherein the filtering maintains the second group of applications as the subset of the applications.

6. The method of claim 1 , wherein the identified applications include a first group of applications and a second group of applications, wherein the interactability information indicates that the interactability of each of the first group of applications is higher than the interactability of each of the second group of applications, and wherein the filtering maintains the first group of applications as the subset of the applications.

7. The method of claim 1 , wherein the identified applications include a first group of applications and a second group of applications, wherein the interactability information indicates that the interactability of each of the first group of applications is higher than the interactability of each of the second group of applications, and wherein the filtering maintains the second group of applications as the subset of the applications.

8. A system comprising one or more processors, the system configured to present virtual content to a user of the system, wherein the system further comprises non-transitory computer storage media storing instructions that, when executed by the one or more processors, cause the one or more processors to perform operations comprising:

obtaining information identifying a plurality of applications with respective anchor locations located within a first threshold distance metric of a cross-reality (XR) device, wherein an anchor location corresponds to a real-world location at which virtual content is to be presented by an application;

filtering the identified applications to maintain a subset of the applications, wherein filtering is triggered based on a determination that the plurality of applications located within the first threshold distance metric exceeds a threshold number of applications,

wherein the filtering is based on usability information indicating usability of each of the identified applications or interactability information indicating interactability of each of the identified applications;

determining respective states, selected from a plurality of states, to be assigned to the subset of the applications, the states being determined based on a proximity of the anchor locations to the XR device;

implementing the states, wherein a first application of the subset is assigned a state to render virtual content, and wherein the first application presents virtual content via the XR device at a first anchor location; and

in response to movement of the XR device, determining updated states for one or more applications included in the subset.

9. The system of claim 8 , wherein the filtering is further based on depth plane information associated with the identified applications, and wherein the depth plane information indicates a respective depth plane at which each of the identified applications is to present virtual content.

10. The system of claim 9 , wherein the filtering based on the depth plane information comprises favoring first applications which are to present virtual content at a first depth plane and disfavoring second applications which are to present virtual content at a second depth plane.

11. The system of claim 8 , wherein the identified applications include a first group of applications and a second group of applications, wherein the usability information indicates that the usability of each of the first group of applications is higher than the usability of each of the second group of applications, and wherein the filtering maintains the first group of applications as the subset of the applications.

12. The system of claim 8 , wherein the identified applications include a first group of applications and a second group of applications, wherein the usability information indicates that the usability of each of the first group of applications is higher than the usability of each of the second group of applications, and wherein the filtering maintains the second group of applications as the subset of the applications.

13. The system of claim 8 , wherein the identified applications include a first group of applications and a second group of applications, wherein the interactability information indicates that the interactability of each of the first group of applications is higher than the interactability of each of the second group of applications, and wherein the filtering maintains the first group of applications as the subset of the applications.

14. The system of claim 8 , wherein the identified applications include a first group of applications and a second group of applications, wherein the interactability information indicates that the interactability of each of the first group of applications is higher than the interactability of each of the second group of applications, and wherein the filtering maintains the second group of applications as the subset of the applications.

15. Non-transitory computer storage media storing instructions that, when executed by a cross-reality (XR) device comprising one or more processors and configured to present virtual content to a user of the XR device, cause the one or more processors to perform operations comprising:

obtaining information identifying a plurality of applications with respective anchor locations located within a first threshold distance metric of the XR device, wherein an anchor location corresponds to a real-world location at which virtual content is to be presented by an application;

filtering the identified applications to maintain a subset of the applications, wherein filtering is triggered based on a determination that the plurality of applications located within the first threshold distance metric exceeds a threshold number of applications,

wherein the filtering is based on usability information indicating usability of each of the identified applications or interactability information indicating interactability of each of the identified applications;

determining respective states, selected from a plurality of states, to be assigned to the subset of the applications, the states being determined based on a proximity of the anchor locations to the XR device;

implementing the states, wherein a first application of the subset is assigned a state to render virtual content, and wherein the first application presents virtual content via the XR device at a first anchor location; and

in response to movement of the XR device, determining updated states for one or more applications included in the subset.

16. The computer storage media of claim 15 , wherein the filtering is based on depth plane information associated with the identified applications, and wherein the depth plane information indicates a respective depth plane at which each of the identified applications is to present virtual content.

17. The computer storage media of claim 16 , wherein the filtering based on the depth plane information comprises favoring first applications which are to present virtual content at a first depth plane and disfavoring second applications which are to present virtual content at a second depth plane.

18. The computer storage media of claim 15 , wherein the identified applications include a first group of applications and a second group of applications, wherein the usability information indicates that the usability of each of the first group of applications is higher than the usability of each of the second group of applications, and wherein the filtering maintains the first group of applications as the subset of the applications.

19. The computer storage media of claim 15 , wherein the identified applications include a first group of applications and a second group of applications, wherein the usability information indicates that the usability of each of the first group of applications is higher than the usability of each of the second group of applications, and wherein the filtering maintains the second group of applications as the subset of the applications.

20. The computer storage media of claim 15 , wherein the identified applications include a first group of applications and a second group of applications, wherein the interactability information indicates that the interactability of each of the first group of applications is higher than the interactability of each of the second group of applications, and wherein the filtering maintains the first group of applications as the subset of the applications.

21. The computer storage media of claim 15 , wherein the identified applications include a first group of applications and a second group of applications, wherein the interactability information indicates that the interactability of each of the first group of applications is higher than the interactability of each of the second group of applications, and wherein the filtering maintains the second group of applications as the subset of the applications.

Assignments (3)
SECURITY INTEREST Recorded Oct 31, 2025
From: MAGIC LEAP, INC.; MENTOR ACQUISITION ONE, LLC; MOLECULAR IMPRINTS, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 073439/0168 →
SECURITY INTEREST Recorded Oct 20, 2025
From: MAGIC LEAP, INC.; MENTOR ACQUISITION ONE, LLC; MOLECULAR IMPRINTS, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 073008/0696 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 28, 2023
From: BABU JD, PRAVEEN
To: MAGIC LEAP, INC.
Reel/Frame 064727/0186 →
Continuity (3)
Continuation 17157651 · Jan 25, 2021
Provisional Application 62966477 · Jan 27, 2020
Related Publication 20230395039A1 · Dec 7, 2023
References Cited (48)
US 6850221B1 · Tickle · 2005 [cited by applicant]
US 10031977B1 · Maycock · 2018 [cited by applicant]
US 10838574B2 · Agarawala et al. · 2020 [cited by applicant]
US 20060028436A1 · Armstrong · 2006 [cited by applicant]
US 20070081123A1 · Lewis · 2007 [cited by applicant]
US 20120127062A1 · Bar-Zeev et al. · 2012 [cited by applicant]
US 20120162549A1 · Gao et al. · 2012 [cited by applicant]
US 20130082922A1 · Miller · 2013 [cited by applicant]
US 20130117377A1 · Miller · 2013 [cited by applicant]
US 20130125027A1 · Abovitz · 2013 [cited by applicant]
US 20130208234A1 · Lewis · 2013 [cited by applicant]
US 20130242262A1 · Lewis · 2013 [cited by applicant]
US 20140071539A1 · Gao · 2014 [cited by applicant]
US 20140177023A1 · Gao et al. · 2014 [cited by applicant]
US 20140218468A1 · Gao et al. · 2014 [cited by applicant]
US 20140267420A1 · Schowengerdt et al. · 2014 [cited by applicant]
US 20140306866A1 · Miller et al. · 2014 [cited by applicant]
US 20150016777A1 · Abovitz et al. · 2015 [cited by applicant]
US 20150103306A1 · Kaji et al. · 2015 [cited by applicant]
US 20150178939A1 · Bradski et al. · 2015 [cited by applicant]
US 20150205126A1 · Schowengerdt · 2015 [cited by applicant]
US 20150235466A1 · Schowengerdt · 2015 [cited by applicant]
US 20150309263A2 · Abovitz et al. · 2015 [cited by applicant]
US 20150319573A1 · Huang et al. · 2015 [cited by applicant]
US 20150326570A1 · Publicover et al. · 2015 [cited by applicant]
US 20150346495A1 · Welch et al. · 2015 [cited by applicant]
US 20160011419A1 · Gao · 2016 [cited by applicant]
US 20160026253A1 · Bradski et al. · 2016 [cited by applicant]
US 20160140930A1 · Pusch et al. · 2016 [cited by applicant]
US 20160274762A1 · Lopez et al. · 2016 [cited by applicant]
US 20190188474A1 · Zahnert et al. · 2019 [cited by applicant]
US 20190197785A1 · Tate-Gans et al. · 2019 [cited by applicant]
US 20210110610A1 · Xu et al. · 2021 [cited by applicant]
US 20220326966A1 · Liu · 2022 [cited by examiner]
JP 2018129085A · 2018 [cited by applicant]
WO 2019126238A1 · 2019 [cited by applicant]
WO WO2021154656A1 · 2021 [cited by applicant]
ARToolKit: https://web.archive.org/web/20051013062315/http://www.hitI.washington.edu:80/artoolkit/documentation/hardware.htm, archived Oct. 13, 2005. [cited by applicant]
Azuma, “A Survey of Augmented Reality,” Teleoperators and Virtual Environments 6, 4 (Aug. 1997), pp. 355-385. <https://web.archive.org/web/20010604100006/http://www.cs.unc.edu/˜azuma/ARpresence.pdf>. [cited by applicant]
Azuma, “Predictive Tracking for Augmented Realty,” TR95-007, Department of Computer Science, UNC—Chapel Hill, NC, Feb. 1995. [cited by applicant]
Bimber, et al., “Spatial Augmented Reality—Merging Real and Virtual Worlds,” 2005 <https://web.media.mit.edu/˜raskar/book/BimberRaskarAugmentedRealityBook.pdf>. [cited by applicant]
Coogan et al., “Brain-Computer Interface Control in a Virtual Reality Environment and Applications for the Internet of Things,” [cited by applicant]
International Search Report and Written Opinion, mailed Apr. 2, 2021, for International Patent Application No. PCT/US2021/014946. (10 pages). [cited by applicant]
Jacob, “Eye Tracking in Advanced Interface Design,” Human-Computer Interaction Lab Naval Research Laboratory, Washington, D.C. / paper/ in Virtual Environments and Advanced Interface Design, ed. bv W. Barfield and T.A. … [cited by applicant]
Reitmayr et al., “Location based Applications for Mobile Augmented Reality,” 4th Australasian User Interface Conference, Vienna, Austria, Jan. 2003. (9 pages). <URL:https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.… [cited by applicant]
Tanriverdi and Jacob, “Interacting With Eye Movements in Virtual Environments,” Department of Electrical Engineering and Computer Science, Tufts University, Medford, MA—paper/Proc. ACM SHI 2000 Human Factors in Computin… [cited by applicant]
Anonymous, “Android Tips and Tricks: How to make your smartphone run faster by limiting background process limit,” Aug. 6, 2019, Retrieved from the Internet: URL: https://www.gadgetsnow.com/how-to/how-to-make-your-smart… [cited by applicant]
Berning et al., “A Study of Depth Perception in Hand-Held Augmented Reality using Autostereoscopic Displays,” IEEE International Symposium of Mixed and Augmented Reality (ISMAR), Sep. 10, 2014, pp. 93-98. [cited by applicant]