IP Library Granted Patent US 10,360,736
Granted Patent B2
US 10,360,736 · App. 15/615,471 · Granted Jul 23, 2019

Visual editor for designing augmented-reality effects

Inventors: Stef Marc Smet (London, GB); Dolapo Omobola Falola (London, GB); Michael Slater (Nottingham, GB); Samantha P. Krug (New York, NY); Volodymyr Gigniak (London, GB); Hannes Luc Herman Verlinde (London, GB); Sergei Viktorovich Anpilov (London, GB); Danil Gontovnik (London, GB); Yu Hang Ng (London, GB); Siarhei Hanchar (London, GB); Milen Georgiev Dzhumerov (Sevenoaks, GB)
Assignee: Facebook, Inc.
G06T19/20G06F3/1438G06T19/006G06T2200/24G06T2215/16
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 10,360,736
App. No.
15/615,471
Granted
Jul 23, 2019
Kind
B2
Abstract

In one embodiment, a method for designing an augmented-reality effect may include receiving a model definition of a virtual object. The virtual object may be rendered in a 3D space based on the model definition. The system may display the virtual object in the 3D space from a first perspective in a first display area of a user interface. The system may display the virtual object in the 3D space from a second perspective, different from the first, in a second display area of the user interface. The system may receive a user command input by a user through the first display area for adjusting the virtual object. The virtual object may be adjusted according to the user command. The system may display the adjusted virtual object in the 3D space from the first perspective in the first display area and from the second perspective in the second display area.

Claims (85)

1. A method, comprising:

by a computing system, receiving a model definition of a virtual object;

by the computing system, rendering the virtual object in a 3D space based on the model definition;

by the computing system, displaying the virtual object in the 3D space from a first perspective in a first display area of a user interface;

by the computing system, displaying the virtual object in the 3D space from a second perspective in a second display area of the user interface, the second perspective being different from the first perspective;

by the computing system, receiving a user command for adjusting the virtual object, the user command being input by a user through the first display area;

by the computing system, adjusting the virtual object according to the user command;

by the computing system, displaying the adjusted virtual object in the 3D space from the first perspective in the first display area;

by the computing system, displaying the adjusted virtual object in the 3D space from the second perspective in the second display area; and

by the computing system, outputting an adjusted model definition of the adjusted virtual object.

2. The method of claim 1 , further comprising:

by the computing system, receiving a second user command for adjusting the virtual object, the user command being input by a user through the second display area;

by the computing system, further adjusting the adjusted virtual object according to the second user command;

by the computing system, displaying the further adjusted virtual object in the 3D space from the first perspective in the first display area; and

by the computing system, displaying the further adjusted virtual object in the 3D space from the second perspective in the second display area.

3. The method of claim 1 , further comprising:

by the computing system, displaying a representation of a mobile device and its focal plane in the 3D space from the first perspective in the first display area; and

by the computing system, displaying the representation of the mobile device and its focal plane in the 3D space from the second perspective in the second display area;

wherein the representation of the focal plane corresponds to a focal plane of a first camera of the mobile device.

4. The method of claim 3 , further comprising:

by the computing system, receiving a second user command to enable a second camera of the mobile device and to disable the first camera of the mobile device;

by the computing system, in response to the second user command:

displaying a second representation of a second focal plane in the 3D space from the first perspective in the first display area;

displaying the second representation of the second focal plane in the 3D space from the second perspective in the second display area; and

ceasing to display the representation of the focal plane;

wherein the second representation of the second focal plane corresponds to a focal plane of the second camera.

5. The method of claim 3 , further comprising:

by the computing system, receiving a second user command to change an orientation of the representation of the mobile device; and

by the computing system, in response to the second user command, changing the orientation of the displayed representation of the mobile device and its focal plane in the first display area and the second display area.

6. The method of claim 5 , wherein the second user command to change the orientation is based on gyroscope data received from a device communicatively coupled to the computing system, wherein the device comprises a gyroscope.

7. The method of claim 1 , wherein the 3D space comprises a representation of a mobile device, the method further comprising:

by the computing system, displaying in a third display area a scene in the 3D space, the scene representing a view from the mobile device through its focal plane.

8. The method of claim 1 , wherein the 3D space comprises a video sphere centered at the mobile device, the method further comprising:

by the computing system, displaying a background in the third display area, the background being a portion of the video sphere selected based on an orientation of the mobile device.

9. The method of claim 8 , further comprising:

by the computing system, overlaying a video of a person on top of the background.

10. The method of claim 9 , wherein an effect associated with the virtual object is configured to be triggered by motions of the person.

11. The method of claim 7 , wherein the virtual object is configured to be displayed in the focal plane of the mobile device regardless of the mobile device's orientation.

12. The method of claim 7 , wherein the virtual object is configured to be displayed in the third display area when mobile device is oriented such that the virtual object is visible through the focal plane.

13. The method of claim 1 , wherein the virtual object is configurable to be associated with a first camera of a mobile device or a second camera of the mobile device;

wherein when the virtual object is associated with the first camera, the virtual object is displayable in a scene captured by the first camera and not displayable in a scene captured by the second camera; and

wherein when the virtual object is associated with the second camera, the virtual object is displayable in a scene captured by the second camera and not displayable in a scene captured by the first camera.

14. One or more computer-readable non-transitory storage media embodying software that is operable when executed to:

receive a model definition of a virtual object;

render the virtual object in a 3D space based on the model definition;

display the virtual object in the 3D space from a first perspective in a first display area of a user interface;

display the virtual object in the 3D space from a second perspective in a second display area of the user interface, the second perspective being different from the first perspective;

receive a user command for adjusting the virtual object, the user command being input by a user through the first display area;

adjust the virtual object according to the user command;

display the adjusted virtual object in the 3D space from the first perspective in the first display area;

display the adjusted virtual object in the 3D space from the second perspective in the second display area; and

output an adjusted model definition of the adjusted virtual object.

15. The media of claim 14 , wherein the software is further operable when executed to:

display a representation of a mobile device and its focal plane in the 3D space from the first perspective in the first display area; and

display the representation of the mobile device and its focal plane in the 3D space from the second perspective in the second display area;

wherein the representation of the focal plane corresponds to a focal plane of a first camera of the mobile device.

16. The media of claim 15 , wherein the software is further operable when executed to:

receive a second user command to enable a second camera of the mobile device and to disable the first camera of the mobile device;

in response to the second user command:

display a second representation of a second focal plane in the 3D space from the first perspective in the first display area;

display the second representation of the second focal plane in the 3D space from the second perspective in the second display area; and

cease to display the representation of the focal plane;

wherein the second representation of the second focal plane corresponds to a focal plane of the second camera.

17. The media of claim 14 , wherein the virtual object is configurable to be associated with a first camera of a mobile device or a second camera of the mobile device;

wherein when the virtual object is associated with the first camera, the virtual object is displayable in a scene captured by the first camera and not displayable in a scene captured by the second camera; and

wherein when the virtual object is associated with the second camera, the virtual object is displayable in a scene captured by the second camera and not displayable in a scene captured by the first camera.

18. A system comprising:

one or more processors; and

one or more computer-readable non-transitory storage media coupled to one or more of the processors and comprising instructions operable when executed by one or more of the processors to cause the system to:

receive a model definition of a virtual object;

render the virtual object in a 3D space based on the model definition;

display the virtual object in the 3D space from a first perspective in a first display area of a user interface;

display the virtual object in the 3D space from a second perspective in a second display area of the user interface, the second perspective being different from the first perspective;

receive a user command for adjusting the virtual object, the user command being input by a user through the first display area;

adjust the virtual object according to the user command;

display the adjusted virtual object in the 3D space from the first perspective in the first display area;

display the adjusted virtual object in the 3D space from the second perspective in the second display area; and

output an adjusted model definition of the adjusted virtual object.

19. The system of claim 18 , wherein the processors are further operable when executing the instructions to:

display a representation of a mobile device and its focal plane in the 3D space from the first perspective in the first display area; and

display the representation of the mobile device and its focal plane in the 3D space from the second perspective in the second display area;

wherein the representation of the focal plane corresponds to a focal plane of a first camera of the mobile device.

20. The system of claim 18 , wherein the virtual object is configurable to be associated with a first camera of a mobile device or a second camera of the mobile device;

wherein when the virtual object is associated with the first camera, the virtual object is displayable in a scene captured by the first camera and not displayable in a scene captured by the second camera; and

wherein when the virtual object is associated with the second camera, the virtual object is displayable in a scene captured by the second camera and not displayable in a scene captured by the first camera.

Assignments (3)
CHANGE OF NAME Recorded Dec 20, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058553/0802 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 28, 2019
From: SCHNEIDER, GUILHERME; ROZANSKI, ALEXANDER NICHOLAS
To: FACEBOOK, INC.
Reel/Frame 050841/0787 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 7, 2017
From: SMET, STEF MARC; FALOLA, DOLAPO OMOBOLA; SLATER, MICHAEL; KRUG, SAMANTHA P.; GIGINIAK, VOLODYMYR; VERLINDE, HANNES LUC HERMAN; ANPILOV, SERGEI VIKTOROVICH; GONTOVNIK, DANIL; NG, YU HANG; HANCHAR, SIARHEI; DZHUMEROV, MILEN GEORGIEV
To: FACEBOOK, INC.
Reel/Frame 044327/0786 →
Continuity (4)
Continuation In Part 15460121 · Mar 15, 2017
Continuation In Part 15460104 · Mar 15, 2017
Continuation In Part 15460087 · Mar 15, 2017
Related Publication 20180268615A1 · Sep 20, 2018