IP Library Granted Patent US 10,679,399
Granted Patent B2
US 10,679,399 · App. 16/220,293 · Granted Jun 9, 2020

Animation generation method and apparatus

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,679,399
App. No.
16/220,293
Granted
Jun 9, 2020
Kind
B2
Abstract

An animation generation instruction identifying key frames to use for generating an animation is received. A plurality of tweens corresponding to the animation are obtained, where each tween includes tween objects between a start key frame and an end key frame. One or more timelines are generated when a quantity of tweens is greater than or equal to two, where each timeline corresponds to one or more tweens, and where a quantity of timelines is less than the quantity of tweens. The animation is generated using the plurality of tweens based on the one or more timelines.

Claims (57)

1. A computer-implemented method, comprising:

receiving an animation generation instruction identifying key frames to use for generating an animation;

obtaining a plurality of tweens corresponding to the animation, wherein each tween includes tween objects between a start key frame and an end key frame;

generating one or more timelines when a quantity of tweens is greater than or equal to two, wherein each timeline corresponds to one or more tweens, and wherein a quantity of timelines is less than the quantity of tweens; and

generating the animation using the plurality of tweens based on the one or more timelines, wherein generating the animation comprises:

when a given timeline of the one or more timelines corresponds to a plurality of tweens, determining whether there is an M-level conflicting tween group in the plurality of tweens, wherein M-level conflicting tweens in the M-level conflicting tween group have the same tween object and conflicting tween time based on an intersection between tween times between start key frames and end key frames of the conflicting tweens, M is a natural number, and an initial value is a default count initial value;

when there is the M-level conflicting tween group, updating an M-level conflicting tween that corresponds to the latest end time in the M-level conflicting tween group with an (M+1)-level conflicting tween, and determining whether there is an (M+1)-level conflicting tween group in the (M+1)-level tween, until there is no (M+K)-level conflicting tween group in an (M+K)-level conflicting tween, wherein K is a natural number greater than or equal to 0; and

generating an animation for a corresponding non-conflicting tween and the (M+K)-level tween based on the timeline.

2. The computer-implemented method of claim 1 , wherein determining whether there is an M-level conflicting tween group in the plurality of tweens comprises:

obtaining a tween object of each tween; and

when two or more tweens have the same tween object, determining whether a tween time of any one of the two or more tweens conflicts with a tween time of another tween.

3. The computer-implemented method of claim 2 , further comprising:

if the tween time of the any tween conflicts with the tween time of the another tween, determining that there is at least one M-level conflicting tween group in the plurality of tweens, wherein the M-level conflicting tween group comprises the any tween and the another tween.

4. The computer-implemented method of claim 3 , wherein the determining whether a tween time of any one of the two or more tweens conflicts with a tween time of another tween comprises:

determining whether there is an intersection between a tween time between a start key frame and an end key frame of the any tween and a tween time between a start key frame and an end key frame of the another tween, and if there is an intersection, determining that the tween time of the any tween conflicts with the tween time of the another tween.

5. The computer-implemented method of claim 1 , wherein updating the M-level conflicting tween that corresponds to the latest end time in the M-level conflicting tween group with an (M+1)-level conflicting tween comprises:

updating an M-level conflicting tween having the largest frame number of a tween end key frame in the M-level conflicting tween group with the (M+1)-level conflicting tween.

6. The computer-implemented method of claim 1 , wherein generating the animation comprises:

using a single tween object from a plurality of tween objects having conflicting tween time.

7. A non-transitory, computer-readable medium storing one or more instructions executable by a computer system to perform operations comprising:

receiving an animation generation instruction identifying key frames to use for generating an animation;

obtaining a plurality of tweens corresponding to the animation, wherein each tween includes tween objects between a start key frame and an end key frame;

generating one or more timelines when a quantity of tweens is greater than or equal to two, wherein each timeline corresponds to one or more tweens, and wherein a quantity of timelines is less than the quantity of tweens; and

generating the animation using the plurality of tweens based on the one or more timelines, wherein generating the animation comprises:

when a given timeline of the one or more timelines corresponds to a plurality of tweens, determining whether there is an M-level conflicting tween group in the plurality of tweens, wherein M-level conflicting tweens in the M-level conflicting tween group have the same tween object and conflicting tween time based on an intersection between tween times between start key frames and end key frames of the conflicting tweens, M is a natural number, and an initial value is a default count initial value;

when there is the M-level conflicting tween group, updating an M-level conflicting tween that corresponds to the latest end time in the M-level conflicting tween group with an (M+1)-level conflicting tween, and determining whether there is an (M+1)-level conflicting tween group in the (M+1)-level tween, until there is no (M+K)-level conflicting tween group in an (M+K)-level conflicting tween, wherein K is a natural number greater than or equal to 0; and

generating an animation for a corresponding non-conflicting tween and the (M+K)-level tween based on the timeline.

8. The non-transitory, computer-readable medium of claim 7 , wherein determining whether there is an M-level conflicting tween group in the plurality of tweens comprises:

obtaining a tween object of each tween; and

when two or more tweens have the same tween object, determining whether a tween time of any one of the two or more tweens conflicts with a tween time of another tween.

9. The non-transitory, computer-readable medium of claim 8 , further comprising:

if the tween time of the any tween conflicts with the tween time of the another tween, determining that there is at least one M-level conflicting tween group in the plurality of tweens, wherein the M-level conflicting tween group comprises the any tween and the another tween.

10. The non-transitory, computer-readable medium of claim 9 , wherein the determining whether a tween time of any one of the two or more tweens conflicts with a tween time of another tween comprises:

determining whether there is an intersection between a tween time between a start key frame and an end key frame of the any tween and a tween time between a start key frame and an end key frame of the another tween, and if there is an intersection, determining that the tween time of the any tween conflicts with the tween time of the another tween.

11. The non-transitory, computer-readable medium of claim 7 , wherein updating the M-level conflicting tween that corresponds to the latest end time in the M-level conflicting tween group with an (M+1)-level conflicting tween comprises:

updating an M-level conflicting tween having the largest frame number of a tween end key frame in the M-level conflicting tween group with the (M+1)-level conflicting tween.

12. The non-transitory, computer-readable medium of claim 7 , wherein generating the animation comprises:

using a single tween object from a plurality of tween objects having conflicting tween time.

13. A computer-implemented system, comprising:

one or more computers; and

one or more computer memory devices interoperably coupled with the one or more computers and having tangible, non-transitory, machine-readable media storing one or more instructions that, when executed by the one or more computers, perform one or more operations comprising:

receiving an animation generation instruction identifying key frames to use for generating an animation;

obtaining a plurality of tweens corresponding to the animation, wherein each tween includes tween objects between a start key frame and an end key frame;

generating one or more timelines when a quantity of tweens is greater than or equal to two, wherein each timeline corresponds to one or more tweens, and wherein a quantity of timelines is less than the quantity of tweens; and

generating the animation using the plurality of tweens based on the one or more timelines, wherein generating the animation comprises:

when a given timeline of the one or more timelines corresponds to a plurality of tweens, determining whether there is an M-level conflicting tween group in the plurality of tweens, wherein M-level conflicting tweens in the M-level conflicting tween group have the same tween object and conflicting tween time based on an intersection between tween times between start key frames and end key frames of the conflicting tweens, M is a natural number, and an initial value is a default count initial value;

when there is the M-level conflicting tween group, updating an M-level conflicting tween that corresponds to the latest end time in the M-level conflicting tween group with an (M+1)-level conflicting tween, and determining whether there is an (M+1)-level conflicting tween group in the (M+1)-level tween, until there is no (M+K)-level conflicting tween group in an (M+K)-level conflicting tween, wherein K is a natural number greater than or equal to 0; and

generating an animation for a corresponding non-conflicting tween and the (M+K)-level tween based on the timeline.

14. The computer-implemented system of claim 13 , wherein determining whether there is an M-level conflicting tween group in the plurality of tweens comprises:

obtaining a tween object of each tween; and

when two or more tweens have the same tween object, determining whether a tween time of any one of the two or more tweens conflicts with a tween time of another tween.

15. The computer-implemented system of claim 14 , further comprising:

if the tween time of the any tween conflicts with the tween time of the another tween, determining that there is at least one M-level conflicting tween group in the plurality of tweens, wherein the M-level conflicting tween group comprises the any tween and the another tween.

16. The computer-implemented system of claim 15 , wherein the determining whether a tween time of any one of the two or more tweens conflicts with a tween time of another tween comprises:

determining whether there is an intersection between a tween time between a start key frame and an end key frame of the any tween and a tween time between a start key frame and an end key frame of the another tween, and if there is an intersection, determining that the tween time of the any tween conflicts with the tween time of the another tween.

17. The computer-implemented system of claim 13 , wherein generating the animation comprises:

using a single tween object from a plurality of tween objects having conflicting tween time.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 10, 2020
From: ADVANTAGEOUS NEW TECHNOLOGIES CO., LTD.
To: ADVANCED NEW TECHNOLOGIES CO., LTD.
Reel/Frame 053754/0625 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 31, 2020
From: ALIBABA GROUP HOLDING LIMITED
To: ADVANTAGEOUS NEW TECHNOLOGIES CO., LTD.
Reel/Frame 053743/0464 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE'S ADDRESS PREVIOUSLY RECORDED AT REEL: 048809 FRAME: 0953. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jul 26, 2019
From: HUANG, TONG
To: ALIBABA GROUP HOLDING LIMITED
Reel/Frame 049877/0029 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 5, 2019
From: HUANG, TONG
To: ALIBABA GROUP HOLDING LIMITED
Reel/Frame 048809/0953 →