IP Library Granted Patent US 12,039,143
Granted Patent B2
US 12,039,143 · App. 18/308,074 · Granted Jul 16, 2024

Real-time preview of connectable objects in a physically-modeled virtual space

Inventors: Edmund Graves Brown, IV (Weston, FL); Javier Antonio Busto (Plantation, FL); Jeffrey A. Scott (Tamarac, FL); Jeremy Vanhoozer (Delray Beach, FL)
Assignee: MAGIC LEAP, INC.
G06F3/04815G06F3/017G06F3/04845G06F3/14
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,039,143
App. No.
18/308,074
Granted
Jul 16, 2024
Kind
B2
Abstract

Virtual reality (VR), augmented reality (AR), and/or mixed reality (MR) systems may enable one or more users to connect two or more connectable objects together. These connectable objects may be real objects from the user's environment, virtual objects, or a combination thereof. A preview system may be included as a part of the VR, AR, and/or MR systems that provide a preview of the connection between the connectable objects prior to the user(s) connecting the connectable objects. The preview may include a representation of the connectable objects in a connected state along with an indication of whether the connected state is valid or invalid. The preview system may continuously physically model the connectable objects while simultaneously displaying a preview of the connection process to the user of the VR, AR, or MR system.

Claims (59)

1. An augmented reality (AR) system, comprising:

a user input device configured to receive user input in an environment of a user of the AR system, the environment having a plurality of connectable virtual objects;

a display configured to present virtual content to the user of the AR system;

non-transitory computer storage configured to store software instructions; and

a hardware processor in communication with the non-transitory computer storage, the hardware processor configured to execute the software instructions to:

identify at least one of the connectable virtual objects as an active connectable virtual object based on user input received from the user input device;

identify at least one of the connectable virtual objects as a target connectable virtual object;

determine if the active connectable virtual object and the target connectable virtual object are compatible for connection; and

generate a preview of the active connectable virtual object connected to the target connectable virtual object based on the determination of compatibility.

2. The system of claim 1 , wherein the hardware processor is further programmed to:

determine whether the preview overlaps another object; and

generate a visual indication of whether the preview overlaps the another object.

3. The system of claim 1 , wherein the hardware processor is further programmed to:

determine that the active connectable virtual object and the target connectable virtual object are not within a threshold distance of each other; and

hide the preview from being displayed in response to determining that the active connectable virtual object and the target connectable virtual object are not within the threshold distance of each other.

4. The system of claim 1 , wherein the hardware processor is further programmed to:

receive input from a plurality of users;

generate a list of active connectable virtual objects based on the input received from the plurality of users; and

for each of the active connectable virtual objects, generate a preview of the active connectable virtual objects connected to corresponding target connectable virtual objects.

5. The system of claim 1 , wherein the one or more target connectable virtual objects includes at least one virtual object and at least one virtual representation of a real-world object.

6. The system of claim 1 , wherein the preview includes a visual indication of whether connection between the active connectable virtual object and the selected target connectable virtual object is valid.

7. The system of claim 1 , wherein, to generate the preview, the hardware processor is further programmed to:

reposition and rotate the active connectable virtual object to be coupled to the selected target connectable virtual object.

8. The system of claim 1 ,

wherein the active connectable virtual object includes one or more connection node defining a portion of the active connectable virtual object that is connectable to the one or more target connectable virtual objects, each of the one or more target connectable virtual objects include one or more target connection nodes; and

wherein the hardware processor is further programmed to:

generate a list of the one or more connection nodes for the active connectable virtual object.

9. The system of claim 8 , wherein the hardware processor is further programmed to:

generate a list of target nodes comprising available target nodes from the target nodes of target connectable virtual objects excluding the active connectable virtual object,

generate a list of node pairs comprising valid pairs of nodes between the list of active nodes and the list of target nodes; and

select the target connectable virtual object based on the list of node pairs.

10. The system of claim 9 , wherein to select the target connectable virtual object, the hardware processor is further programmed to:

calculate a connection score for each of the node pairs using a connection score heuristic,

select the node pair having a highest or lowest connection score as an active node pair, and

select the target connectable virtual object sharing a node in the active node pair.

11. The system of claim 10 , wherein the connection score heuristic comprises a measurement of a distance between the nodes for each of the node pairs.

12. The system of claim 10 , wherein the hardware processor is further programmed to:

determine whether the nodes of the active node pair are compatible using a compatibility heuristic, and

generate a visual indication of whether the connection between the active connectable virtual object and the target connectable virtual object is valid based on the determination of whether the nodes of the active node pair are compatible.

13. The system of claim 1 , wherein the hardware processor is further programmed to:

responsive to user input to connect the active connectable virtual object to the target connectable virtual object, connect the active connectable virtual object with the target connectable virtual object; and

stop display of the preview in response to connecting the active connectable virtual object with the target connectable virtual object.

14. 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:

receiving user input in an environment of a user of the computing system, the environment having a plurality of connectable virtual objects;

identifying, with the computing system, at least one of the connectable virtual objects as an active connectable virtual object based on user input received from the user input device;

identifying, with the computing system, at least one of the connectable virtual objects as a target connectable virtual object;

determining, with the computing system, if the active connectable virtual object and the target connectable virtual object are compatible for connection; and

generating, with the computing system on a visual display, a preview of the active connectable virtual object connected to the target connectable virtual object based on the determination of compatibility.

15. The method of claim 14 , further comprising:

determining whether the preview overlaps another object; and

generating a visual indication of whether the preview overlaps the another object.

16. The method of claim 14 , further comprising:

determining that the active connectable virtual object and the target connectable virtual object are not within a threshold distance of each other; and

hiding the preview from being displayed in response to determining that the active connectable virtual object and the target connectable virtual object are not within the threshold distance of each other.

17. The method of claim 14 , further comprising:

receiving input from a plurality of users;

generating a list of active connectable virtual objects based on the input received from the plurality of users; and

for each of the active connectable virtual objects, generating a preview of the active connectable virtual objects connected to corresponding target connectable virtual objects.

18. The method of claim 14 , wherein the one or more target connectable virtual objects includes at least one virtual object and at least one virtual representation of a real-world object.

Assignments (3)
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 15, 2025
From: MAGIC LEAP, INC.; MENTOR ACQUISITION ONE, LLC; MOLECULAR IMPRINTS, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 073109/0238 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 27, 2023
From: BROWN, EDMUND GRAVES, IV; BUSTO, JAVIER ANTONIO; SCOTT, JEFFREY A.; VANHOOZER, JEREMY
To: MAGIC LEAP, INC.
Reel/Frame 063464/0511 →
Continuity (3)
Continuation 17308920 · May 5, 2021
Continuation 16508197 · Jul 10, 2019
Related Publication 20230266857A1 · Aug 24, 2023