IP Library Granted Patent US 12,210,669
Granted Patent B2
US 12,210,669 · App. 17/958,899 · Granted Jan 28, 2025

Modes of user interaction

Inventors: Daniel Stephen Speelman (Fairview, PA); Rodrigo Cano (Plantation, FL); Kara Lauren Gundersen (Fort Lauderdale, FL); Griffith Buckley Hazen (San Francisco, CA); Lorena Pazmino (Wilton Manors, FL)
Assignee: MAGIC LEAP, INC.
G06F3/011G02B27/017G06F3/0346G06F3/03547G06F3/04812
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,210,669
App. No.
17/958,899
Granted
Jan 28, 2025
Kind
B2
Abstract

A mixed reality (MR) device can allow a user to switch between input modes to allow interactions with a virtual environment via devices such as a six degrees of freedom (6DoF) handheld controller and a touchpad input device. A default input mode for interacting with virtual content may rely on the user's head pose, which may be difficult to use in selecting virtual objects that are far away in the virtual environment. Thus, the system may be configured to allow the user to use a 6DoF cursor, and a visual ray that extends from the handheld controller to the cursor, to enable precise targeting. Input via a touchpad input device (e.g., that allows three degrees of freedom movements) may also be used in conjunction with the 6DoF cursor.

Claims (53)

1. A system comprising:

a hardware computer processor; and

a non-transitory computer readable medium having software instructions stored thereon, the software instructions executable by the hardware computer processor to cause the system to perform operations comprising:

accessing mixed reality environment data including information regarding a virtual environment and real-world environments of a plurality of users, wherein the mixed environment data is at least partially visible to each of the plurality of users through a field of view of wearable headsets, the virtual environment including a plurality of virtual objects that are user selectable;

determining that two or more of the plurality of users are providing inputs in the virtual environment associated with respective rays indicating targeting of the users;

assigning different visual effects to rays of each of the two or more users so that the rays are distinguishable by users viewing the virtual environment; and

wherein the system is further caused to perform operatons including, for the first user of the plurality of users;

identify a location of the cursor tip of the first ray in the virtual environment;

determine a spatial relationship between the cursor tip and a virtual object in the virtual environment; and

calculate a curvature of the first ray; and

dynamically update depiction of the first ray based on the calculated curvature of the first ray, wherein the calculated curvature of the first ray is variable based on a speed of the input of the first user.

2. The system of claim 1 , wherein the visual effects comprise different colors for each of the rays.

3. The system of claim 1 , wherein the visual effects comprise cursors at target ends of the rays including an alphanumeric character associated with the user.

4. The system of claim 1 , wherein one or more of the rays are animated to indicate an extraction process associated with targeted content of the rays.

5. The system of claim 4 , wherein the visual effects comprise animation of motes or a light traveling through the one or more of the rays.

6. The system of claim 5 , wherein the operations further comprise:

determining that extractable content is being transferred to the wearable headset of a first user and, responsive to the determination, assigning to a first ray associated with the first user an animation of motion of an enlarged portion of motes or light relative to the first ray that travels toward the first user.

7. The system of claim 6 , wherein transfer of the extractable content is activated by the first user pressing a trigger of a first handheld controller, and the operations further comprise:

responsive to the determination that extractable content is being transferred, sending a light pulse from a controller end of the first ray proximal to the handheld controller to a target end of the first ray; and

while the trigger is being held by the first user, increasing a brightness of the first ray to indicate a corresponding length of time the trigger has been held.

8. The system of claim 1 , wherein the operations further comprise:

determining that a first user has control over an application in the virtual environment and, responsive to the determination, cause a first ray associated with the first user to be brighter than rays associated with other users in the virtual environment.

9. The system of claim 1 , wherein the operations further comprise:

determining that a first user is in an idle state and, responsive to the determination, cause a first ray associated with the first user to be in a shortened configuration.

10. A computerized method, performed by a computing system having one or more hardware computer processors and one or more non-transitory computer readable storage device storing software instructions executable by the computing system to perform the computerized method comprising:

accessing mixed environment data including information regarding a virtual environment and real-world environments of a plurality of users, wherein the mixed environment data is at least partially visible to each of the plurality of users through a field of view of wearable headsets, the virtual environment including a plurality of virtual objects that are user selectable;

determining that two or more of the plurality of users are providing inputs in the virtual environment associated with respective rays indicating targeting of the users;

assigning different visual effects to rays of each of the two or more users so that the rays are distinguishable by users viewing the virtual environment;

determining that a first user hascontrol over an application in the virtual environment and, responsive to the determination;

cause a first ray associated with the first user to include a cursor tip at a targeting end of the ray; and

cause rays associated with other users in the virtual environment to not include the cursor tip

wherein the computerized method further includes, for the first user of the plurality of users;

identify a location of the cursor tip of the first ray in the virtual environment;

determine a spatial relationship between the cursor tip and a virtual object in the virtual environment; and

calculate a curvature of the first ray; and

dynamically update depiction of the first ray based on the calculated curvature of the first ray, wherein the calculated curvature of the first ray is variable based on a speed of the input of the first user.

11. The method of claim 10 , wherein the visual effects comprise different colors for each of the rays or cursors at target ends of the rays including an alphanumeric character associated with the use.

12. The method of claim 10 , wherein one or more of the rays are animated to indicate an extraction process associated with targeted content of the rays, wherein the visual effects comprise animation of motes or a light traveling through the one or more of the rays.

13. The method of claim 12 , further comprising:

determining that extractable content is being transferred to the wearable headset of a first user and, responsive to the determination, assigning to a first ray associated with the first user an animation of motion of an enlarged portion of motes or light relative to the first ray that travels previously presented toward the first user.

14. The method of claim 13 , wherein transfer of the extractable content is activated by the first user pressing a trigger of a first handheld controller, the method further comprising:

responsive to the determination that extractable content is being transferred, sending a light pulse from a controller end of the first ray proximal to the handheld controller to a target end of the first ray; and

while the trigger is being held by the first user, increasing a brightness of the first ray to indicate a corresponding length of time the trigger has been held.

15. The method of claim 10 , further comprising:

determining that a first user has control over an application in the virtual environment and, responsive to the determination, cause a first ray associated with the first user to be brighter than rays associated with other users in the virtual environment.

16. The method of claim 10 , further comprising:

determining that a first user is in an idle state and, responsive to the determination, cause a first ray associated with the first user to be in a shortened configuration.

17. The system of claim 1 , wherein the system is further caused to perform operations including, for the first user of the plurality of users:

when in a first input mode, determining a target area based on the targeting information and the mixed environment data; and

in response to determining that the target area is not on a virtual object of the plurality of virtual objects, depicting the first ray extending from a controller of the first user along a controller axis that is co-linear with a central longitudinal axis of the controller, wherein the first ray is in an idle mode; or

in response to determining that the target area is on a first virtual object of the plurality of virtual objects, depicting the first ray in an active mode, wherein the first ray extends to the first virtual object.

18. The system of claim 1 , wherein the calculated curvature of the first ray is further variable based on a weight of the virtual object.

19. The system of claim 1 , wherein the calculated curvature of the first ray increases as the virtual object encounters a virtual wall.

Assignments (5)
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 073422/0549 →
SECURITY INTEREST Recorded Oct 28, 2025
From: MAGIC LEAP, INC.; MENTOR ACQUISITION ONE, LLC; MOLECULAR IMPRINTS, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 073387/0487 →
SECURITY INTEREST Recorded Oct 28, 2025
From: MAGIC LEAP, INC.; MENTOR ACQUISITION ONE, LLC; MOLECULAR IMPRINTS, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 073388/0027 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 7, 2023
From: SPEELMAN, DANIEL STEPHEN; CANO, RODRIGO; GUNDERSEN, KARA LAUREN; HAZEN, GRIFFITH BUCKLEY; PAZMINO, LORENA
To: MAGIC LEAP, INC.
Reel/Frame 062906/0006 →
SECURITY INTEREST Recorded Feb 7, 2023
From: MAGIC LEAP, INC.; MENTOR ACQUISITION ONE, LLC; MOLECULAR IMPRINTS, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 062681/0065 →
Continuity (3)
Division 17089106 · Nov 4, 2020
Provisional Application 62933139 · Nov 8, 2019
Related Publication 20230034657A1 · Feb 2, 2023
References Cited (46)
US 6850221B1 · Tickle · 2005 [cited by applicant]
US 7031842B1 · Musat · 2006 [cited by examiner]
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 20140152558A1 · Salter · 2014 [cited by examiner]
US 20140177023A1 · Gao et al. · 2014 [cited by applicant]
US 20140218468A1 · Gao et al. · 2014 [cited by applicant]
US 20140267420A1 · Schowengerdt · 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 20150309263A2 · Abovitz 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 20170024024A1 · Khan et al. · 2017 [cited by applicant]
US 20170109936A1 · Powderly et al. · 2017 [cited by applicant]
US 20170287225A1 · Powderly et al. · 2017 [cited by applicant]
US 20180275771A1 · Wang · 2018 [cited by examiner]
US 20180307303A1 · Powderly et al. · 2018 [cited by applicant]
US 20190086053A1 · Asakawa · 2019 [cited by examiner]
US 20190340816A1 · Rogers · 2019 [cited by examiner]
US 20200281058A1 · Sooch · 2020 [cited by examiner]
US 20210109606A1 · Erivantcev et al. · 2021 [cited by applicant]
US 20210141444A1 · Speelman · 2021 [cited by applicant]
Kai Riege, T. Holtkamper, G. Wesche and B. Frohlich, “The Bent Pick Ray: An Extended Pointing Technique for Multi-User Interaction,” 3D User Interfaces (3DUI'06), Alexandria, VA, USA, 2006, pp. 62-65, doi: 10.1109/VR.20… [cited by examiner]
Ro, Hyocheol, et al. “AR pointer: Advanced ray-casting interface using laser pointer metaphor for object manipulation in 3D augmented reality environment.” Applied Sciences 9.15 (2019): 3078. (Year: 2019). [cited by examiner]
Chittaro L., Sioni R. (2019) Selecting Menu Items in Mobile Head-Mounted Displays: Effects of Selection Technique and Active Area, International Journal of Human-Computer Interaction, 35, pp. 1501-1516. (Year: 2019). [cited by examiner]
Imperfect formation (“VR_interaction testing—laser pointer 3”, YouTube video, Apr. 23, 2019, https://www.youtube.com/watch?v=8CwfdOYBhsY) (Year: 2019). [cited by examiner]
Dean Ashford (Youtube video, UE4—Tutorial—VR Widget Interactions!, https://www.youtube.com/watch?v=jC91FFkxgh4 time 10:30 to 13:26, Dec. 5, 2018) (Year: 2018). [cited by examiner]
ARToolKit: https://web.archive.org/web/20051013062315/http://www.hitl.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]
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. by W. Barfield and T.A. … [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 CHI 2000 Human Factors in Computin… [cited by applicant]