IP Library Granted Patent US 11,295,504
Granted Patent B1
US 11,295,504 · App. 16/529,434 · Granted Apr 5, 2022

Systems and methods for dynamic digital animation

Inventors: Robert Alexander Allen, Jr. (Oakland, CA); Michael O'Brien (Oakland, CA); Nicholas J. Kwiatek (New York, NY); Alexander Zats (New York, NY); Jerod Wanner (Oakland, CA); Emily Dubinsky Gasca (New York, NY); Eduardo de Mello Maia (San Francisco, CA); Christopher Slowik (Union City, CA); Renyu Liu (Sunnyvale, CA); Rajesh Janakiraman (Sunnyvale, CA); David Graham McDermott (Berkeley, CA)
Assignee: Meta Platforms, Inc.
G06T13/80G06Q50/01G06T11/60
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,295,504
App. No.
16/529,434
Granted
Apr 5, 2022
Kind
B1
Abstract

Systems, methods, and non-transitory computer-readable media can receive render instructions for rendering an animation. The animation comprises a plurality of layers, each layer comprising one or more layer properties, and a first dynamic property to be defined at runtime prior to rendering the animation. The first dynamic property is mapped to a first set of layer properties of the one or more layer properties. A first dynamic property value is received for the first dynamic property. The first set of layer properties are defined based on the first dynamic property value. The animation is rendered on a computing device based on the render instructions and the first dynamic property value.

Claims (36)

1. A computer-implemented method comprising:

receiving, by a computing system, render instructions for rendering variations of an animation, wherein the animation comprises a plurality of layers, each layer defining a portion of a frame in the animation and comprising one or more layer properties;

receiving, by the computing system, a first dynamic property value for a first dynamic property based on first information associated with a first user for whom a first variation of the animation is to be rendered, wherein receiving the first dynamic property value comprises randomly determining the first dynamic property value;

receiving, by the computing system, a second dynamic property value for the first dynamic property based on second information associated with a second user for whom a second variation of the animation is to be rendered, wherein the first dynamic property value and the second dynamic property value are received after the animation is generated and prior to rendering the variations of the animation;

applying, by the computing system, for each layer of the plurality of layers, the first dynamic property value to a first set of layer properties of the layer to render the first variation of the animation and the second dynamic property value to the first set of layer properties of the layer to render the second variation of the animation; and

causing, by the computing system, the first variation of the animation to be rendered for the first user and the second variation of the animation to be rendered for the second user, wherein each layer of the plurality of layers is rendered independently for the first user and the second user based on the first set of layer properties.

2. The computer-implemented method of claim 1 , wherein receiving the first dynamic property value comprises retrieving the information associated with the first user, and determining the first dynamic property value based on the information associated with the first user.

3. The computer-implemented method of claim 2 , wherein the first dynamic property is a dynamic color property, and the determining the first dynamic property value comprises determining a first color value based on the information associated with the first user.

4. The computer-implemented method of claim 2 , wherein the first dynamic property is an image property, and the determining the first dynamic property value comprises determining an image value based on the information associated with the first user.

5. The computer-implemented method of claim 4 , wherein the image value defines an image to be used in the animation.

6. The computer-implemented method of claim 1 , wherein the animation further comprises a first dynamic composition, and further wherein the first dynamic composition is associated with a plurality of interchangeable compositions.

7. The computer-implemented method of claim 6 , wherein each composition of the plurality of interchangeable compositions comprises a plurality of layers, and each layer of the plurality of layers comprises one or more layer properties defining the layer.

8. The computer-implemented method of claim 6 , further comprising identifying a first composition of the plurality of interchangeable compositions, wherein each layer of the plurality of layers is rendered on the computing device based on the identifying the first composition.

9. The computer-implemented method of claim 8 , wherein identifying the first composition of the plurality of interchangeable compositions comprises randomly selecting a first composition of the plurality of interchangeable compositions.

10. A system comprising:

at least one processor; and

a memory storing instructions that, when executed by the at least one processor, cause the system to perform a method comprising:

receiving render instructions for rendering variations of an animation, wherein the animation comprises a plurality of layers, each layer defining a portion of a frame in the animation and comprising one or more layer properties;

receiving a first dynamic property value for a first dynamic property based on first information associated with a first user for whom a first variation of the animation is to be rendered, wherein receiving the first dynamic property value comprises randomly determining the first dynamic property value;

receiving a second dynamic property value for the first dynamic property based on second information associated with a second user for whom a second variation of the animation is to be rendered, wherein the first dynamic property value and the second dynamic property value are received after the animation is generated and prior to rendering the variations of the animation;

applying, for each layer of the plurality of layers, the first dynamic property value to a first set of layer properties of the layer to render the first variation of the animation and the second dynamic property value to the first set of layer properties of the layer to render the second variation of the animation; and

causing the first variation of the animation to be rendered for the first user and the second variation of the animation to be rendered for the second user, wherein each layer of the plurality of layers is rendered independently for the first user and the second user the first set of layer properties.

11. The system of claim 10 , wherein receiving the first dynamic property value comprises retrieving the information associated with the first user, and determining the first dynamic property value based on the information associated with the first user.

12. The system of claim 11 , wherein first dynamic property is a dynamic color property, and the determining the first dynamic property value comprises determining a first color value based on the information associated with the first user.

13. The system of claim 11 , wherein the first dynamic property is an image property, and the determining the first dynamic property value comprises determining an image value based on the information associated with the first user.

14. The system of claim 13 , wherein the image value defines an image to be used in the animation.

15. A non-transitory computer-readable storage medium including instructions that, when executed by at least one processor of a computing system, cause the computing system to perform a method comprising:

receiving render instructions for rendering variations of an animation, wherein the animation comprises a plurality of layers, each layer defining a portion of a frame in the animation and comprising one or more layer properties;

receiving a first dynamic property value for a first dynamic property based on first information associated with a first user for whom a first variation of the animation is to be rendered, wherein receiving the first dynamic property value comprises randomly determining the first dynamic property value;

receiving a second dynamic property value for the first dynamic property based on second information associated with a second user for whom a second variation of the animation is to be rendered, wherein the first dynamic property value and the second dynamic property value are received after the animation is generated and prior to rendering the variations of the animation;

applying, for each layer of the plurality of layers, the first dynamic property value to a first set of layer properties of the layer to render the first variation of the animation and the second dynamic property value to the first set of layer properties of the layer to render the second variation of the animation; and

causing the first variation of the animation to be rendered for the first user and the second variation of the animation to be rendered for the second user, wherein each layer of the plurality of layers is rendered independently for the first user and the second user based on the first set of layer properties.

16. The non-transitory computer-readable storage medium of claim 15 , wherein receiving the first dynamic property value comprises retrieving the information associated with the first user, and determining the first dynamic property value based on the information associated with the first user.

17. The non-transitory computer-readable storage medium of claim 16 , wherein first dynamic property is a dynamic color property, and the determining the first dynamic property value comprises determining a first color value based on the information associated with the first user.

18. The non-transitory computer-readable storage medium of claim 16 , wherein the first dynamic property is an image property, and the determining the first dynamic property value comprises determining an image value based on the information associated with the first user.

19. The non-transitory computer-readable storage medium of claim 15 , wherein the image value defines an image to be used in the animation.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 12, 2022
From: ALLEN, ROBERT ALEXANDER, JR.
To: META PLATFORMS, INC.
Reel/Frame 058636/0982 →
CHANGE OF NAME Recorded Nov 23, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058235/0904 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 28, 2020
From: ALLEN, ROBERT ALEXANDER; O'BRIEN, MICHAEL; KWIATEK, NICHOLAS J.; ZATS, ALEXANDER; WANNER, JEROD; GASCA, EMILY DUBINSKY; MAIA, EDUARDO DE MELLO; SLOWIK, CHRISTOPHER; LIU, RENYU; JANAKIRAMAN, RAJESH; MCDERMOTT, DAVID GRAHAM
To: FACEBOOK, INC.
Reel/Frame 051646/0861 →