IP Library › Granted Patent US 11,868,526
Granted Patent B2
US 11,868,526 · App. 17/703,278 · Granted Jan 9, 2024

Method and device for debugging program execution and content playback

Inventors: Michael J. Gutensohn (Rodeo, CA); Payal Jotwani (Santa Clara, CA); Mark E. Drummond (Palo Alto, CA); Daniel L. Kovacs (Santa Clara, CA)
Assignee: APPLE INC.
G06F3/013
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 11,868,526
App. No.
17/703,278
Granted
Jan 9, 2024
Kind
B2
Abstract

In one implementation, a method for recording an XR environment. The method includes: presenting, via the display device, a graphical environment with one or more virtual agents, wherein the graphical environment corresponds to a composition of extended reality (XR) content, including the one or more virtual agents, and an image stream of a physical environment captured from a first point-of-view (POV) of the physical environment; detecting, via the one or more input devices, a user input selecting a first virtual agent from among the one or more virtual agents; and in response to detecting the user input, recording a plurality of data streams associated with the graphical environment including a first image stream of the graphical environment from the first POV and one or more data streams of the graphical environment from a current POV of the first virtual agent.

Claims (49)

1. A method comprising:

at a computing system including non-transitory memory and one or more processors, wherein the computing system is communicatively coupled to a display device and one or more input devices:

presenting, via the display device, a graphical environment with one or more virtual agents, wherein the graphical environment corresponds to a composition of extended reality (XR) content, including the one or more virtual agents, and an image stream of a physical environment captured from a first point-of-view (POV) of the physical environment;

detecting, via the one or more input devices, a user input selecting a first virtual agent from among the one or more virtual agents;

in response to detecting the user input, recording a plurality of data streams associated with the graphical environment including a first image stream of the graphical environment from the first POV and one or more data streams of the graphical environment from a current POV of the first virtual agent,

detecting, via the one or more input devices, a subsequent user input that selecting one or more layers associated with the plurality of data streams; and

in response to detecting the subsequent user input, recording the one or more layers for the plurality of data streams, wherein the one or more layers correspond to one of a texture map layer, a point cloud layer, a markup layer, a skeletal rigging layer, or an application-specific layer.

2. The method of claim 1 , wherein the one or more data streams of the graphical environment from the current POV of the first virtual agent correspond to a plurality of different sensory perceptions from the current POV of the first virtual agent including at least one of a thermal perception data stream from the current POV of the first virtual agent, an optical perception data stream from the current POV of the first virtual agent, an auditory perception data stream from the current POV of the first virtual agent, or an olfactory perception data stream from the current POV of the first virtual agent.

3. The method of claim 2 , wherein at least one of the thermal perception, the optical perception, the auditory perception, or the olfactory perception data stream from the current POV of the first virtual agent includes data gaps, and wherein the data gaps are filled using one or more data extrapolation techniques.

4. The method of claim 2 , wherein at least one of the thermal perception, the optical perception, the auditory perception, or the olfactory perception data stream from the current POV of the first virtual agent corresponds to a sensory perception gradient.

5. The method of claim 1 , further comprising:

obtaining the image stream associated with the physical environment; and

generating the graphical environment by compositing the image stream associated with the physical environment with the XR content based on the first POV of the computing system, wherein the XR content includes the one or more virtual agents.

6. The method of claim 1 , wherein the user input corresponds to one of a touch input, a hand-tracking input, a voice command, or an eye tracking input.

7. The method of claim 1 , wherein the one or more virtual agents correspond to one of a humanoid, an animal, or a robot.

8. The method of claim 1 , further comprising:

storing the plurality of data streams locally or on a remote server.

9. A device comprising:

one or more processors;

a non-transitory memory;

an interface for communicating with a display device and one or more input devices; and

one or more programs stored in the non-transitory memory, which, when executed by the one or more processors, cause the device to:

present, via the display device, a graphical environment with one or more virtual agents, wherein the graphical environment corresponds to a composition of extended reality (XR) content, including the one or more virtual agents, and an image stream of a physical environment captured from a first point-of-view (POV) of the physical environment;

detect, via the one or more input devices, a user input selecting a first virtual agent from among the one or more virtual agents;

in response to detecting the user input, record a plurality of data streams associated with the graphical environment including a first image stream of the graphical environment from the first POV and one or more data streams of the graphical environment from a current POV of the first virtual agent;

detect, via the one or more input devices, a subsequent user input that selecting one or more layers associated with the plurality of data streams; and

in response to detecting the subsequent user input, record the one or more layers for the plurality of data streams, wherein the one or more layers correspond to one of a texture map layer, a point cloud layer, a markup layer, a skeletal rigging layer, or an application-specific layer.

10. The device of claim 9 , wherein the one or more data streams of the graphical environment from the current POV of the first virtual agent correspond to a plurality of different sensory perceptions from the current POV of the first virtual agent including at least one of a thermal perception data stream from the current POV of the first virtual agent, an optical perception data stream from the current POV of the first virtual agent, an auditory perception data stream from the current POV of the first virtual agent, or an olfactory perception data stream from the current POV of the first virtual agent.

11. The device of claim 10 , wherein at least one of the thermal perception, the optical perception, the auditory perception, or the olfactory perception data stream from the current POV of the first virtual agent includes data gaps, and wherein the data gaps are filled using one or more data extrapolation techniques.

12. The device of claim 10 , wherein at least one of the thermal perception, the optical perception, the auditory perception, or the olfactory perception data stream from the current POV of the first virtual agent corresponds to a sensory perception gradient.

13. A non-transitory memory storing one or more programs, which, when executed by one or more processors of a device with an interface for communicating with a display device and one or more input devices, cause the device to:

present, via the display device, a graphical environment with one or more virtual agents, wherein the graphical environment corresponds to a composition of extended reality (XR) content, including the one or more virtual agents, and an image stream of a physical environment captured from a first point-of-view (POV) of the physical environment;

detect, via the one or more input devices, a user input selecting a first virtual agent from among the one or more virtual agents;

in response to detecting the user input, record a plurality of data streams associated with the graphical environment including a first image stream of the graphical environment from the first POV and one or more data streams of the graphical environment from a current POV of the first virtual agent;

detect, via the one or more input devices, a subsequent user input that selecting one or more layers associated with the plurality of data streams; and

in response to detecting the subsequent user input, record the one or more layers for the plurality of data streams, wherein the one or more layers correspond to one of a texture map layer, a point cloud layer, a markup layer, a skeletal rigging layer, or an application-specific layer.

14. The non-transitory memory of claim 13 , wherein the one or more data streams of the graphical environment from the current POV of the first virtual agent correspond to a plurality of different sensory perceptions from the current POV of the first virtual agent including at least one of a thermal perception data stream from the current POV of the first virtual agent, an optical perception data stream from the current POV of the first virtual agent, an auditory perception data stream from the current POV of the first virtual agent, or an olfactory perception data stream from the current POV of the first virtual agent.

15. The non-transitory memory of claim 14 , wherein at least one of the thermal perception, the optical perception, the auditory perception, or the olfactory perception data stream from the current POV of the first virtual agent includes data gaps, and wherein the data gaps are filled using one or more data extrapolation techniques.

16. The non-transitory memory of claim 14 , wherein at least one of the thermal perception, the optical perception, the auditory perception, or the olfactory perception data stream from the current POV of the first virtual agent corresponds to a sensory perception gradient.

17. The device of claim 9 , wherein the one or more programs further cause the device to:

obtain the image stream associated with the physical environment; and

generate the graphical environment by compositing the image stream associated with the physical environment with the XR content based on the first POV of the computing system, wherein the XR content includes the one or more virtual agents.

18. The device of claim 9 , wherein the user input corresponds to one of a touch input, a hand-tracking input, a voice command, or an eye tracking input.

19. The device of claim 9 , wherein the one or more virtual agents correspond to one of a humanoid, an animal, or a robot.

20. The non-transitory memory of claim 13 , wherein the one or more programs further cause the device to:

obtain the image stream associated with the physical environment; and

generate the graphical environment by compositing the image stream associated with the physical environment with the XR content based on the first POV of the computing system, wherein the XR content includes the one or more virtual agents.

21. The non-transitory memory of claim 13 , wherein the user input corresponds to one of a touch input, a hand-tracking input, a voice command, or an eye tracking input.

22. The non-transitory memory of claim 13 , wherein the one or more virtual agents correspond to one of a humanoid, an animal, or a robot.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 30, 2022
From: GUTENSOHN, MICHAEL J.; JOTWANI, PAYAL; DRUMMOND, MARK E; KOVACS, DANIEL L
To: APPLE INC.
Reel/Frame 059449/0108 →
Continuity (2)
Provisional Application 63183188 · May 3, 2021
Related Publication 20220350401A1 · Nov 3, 2022
Cited By (1)
US 12,718,494