IP Library Granted Patent US 10,089,715
Granted Patent B2
US 10,089,715 · App. 15/724,594 · Granted Oct 2, 2018

System for parametric generation of custom scalable animated characters on the web

Inventors: Asa Jonas Ivry Block (Mountain View, CA); Suzanne Chambers (Mountain View, CA); George Michael Brower (Mountain View, CA); Igor Clark (Mountain View, CA); Richard The (Mountain View, CA)
Assignee: Google LLC
G06T3/40G06F3/0481G06T13/40G06T13/80G06T19/20G06T2213/04G06T2219/2016G09G2340/04
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,089,715
App. No.
15/724,594
Granted
Oct 2, 2018
Kind
B2
Abstract

A graphic character object temporary storage stores parameters of a character and associated default values in a hierarchical data structure and one or more animation object data represented in a hierarchical data structure, the one or more animation object data having an associated animation, the graphic character object temporary storage and the animation object data being part of a local memory of a computer system. A method includes receiving a vector graphic object having character part objects which are represented as geometric shapes, displaying a two dimensional character, changing the scale of a part of the displayed two dimensional character, and storing an adjusted parameter in the graphic character object temporary storage as a percentage change from the default value, displaying a customized two dimensional character, applying keyframe data in an associated animation object data to the character parts objects, and displaying an animation according to the keyframe data.

Claims (45)

1. A method in a computing system that comprises at least one processor and a display, the method comprising, by the at least one processor:

rendering a character object as a two-dimensional character on the display, wherein the character object comprises one or more part objects which are each rendered on the display as a corresponding geometric shape, and wherein each of the one or more part objects comprises a vector graphic object that defines a size of the corresponding geometric shape as a percentage change from an initial size of the corresponding geometric shape; and,

for at least one geometric shape rendered on the display,

receiving an input to change a scale of the at least one geometric shape,

in response to the input, modifying the part object, to which the at least one geometric shape corresponds, by adjusting the percentage change, defined in the vector graphic object of the part object, according to the change in scale, and

updating the at least one geometric shape rendered on the display to reflect the modification to the part object to which the at least one geometric shape corresponds.

2. The method of claim 1 , wherein the character object comprises a data structure that hierarchically defines the one or more part objects.

3. The method of claim 2 , wherein the data structure comprises a JavaScript Objection Notation (JSON) object or an eXtensible Markup Language (XML) object.

4. The method of claim 1 , wherein the character object defines a plurality of layers in which the geometric shapes are rendered, and wherein each of the one or more part objects is associated with one of the plurality of layers such that the geometric shape, corresponding to that part object, is rendered in the associated layer.

5. The method of claim 4 , wherein the at least one geometric shape comprises a plurality of geometric shapes in one of the plurality of layers, and wherein receiving an input to change a scale of the plurality of geometric shapes comprises receiving an input to change a scale of the one layer.

6. The method of claim 4 , wherein the at least one geometric shape comprises a plurality of geometric shapes across two or more of the plurality of layers, and wherein receiving an input to change a scale of the plurality of geometric shapes comprises receiving an input to collectively change a scale of the two or more layers.

7. The method of claim 1 , wherein at least one of the one or more part objects corresponds to a geometric shape that represents a body part of the two-dimensional character.

8. The method of claim 1 , wherein at least one of the one or more part objects corresponds to a geometric shape that represents an asset of the two-dimensional character.

9. The method of claim 1 , wherein the asset comprises one or more of an item of clothing and an accessory item.

10. The method of claim 1 , wherein the input to change a scale of the at least one geometric shape comprises a selection and drag of an edge of the at least one geometric shape.

11. The method of claim 1 , further comprising, by the at least one processor:

receiving a selection of the one or more part objects from a plurality of available part objects; and

generating the character object to comprise the selected one or more part objects.

12. The method of claim 1 , further comprising, by the at least one processor:

receiving an animation object that defines an animation of at least one of the one or more part objects; and

animating the two-dimensional character on the display, according to the animation object.

13. The method of claim 12 , wherein the one or more part objects comprise a plurality of part objects, and wherein the animation object defines an animation for each of the plurality of part objects.

14. The method of claim 13 , wherein the animation object comprises a data structure that hierarchically defines each animation for each of the plurality of part objects.

15. The method of claim 13 , wherein the animation object comprises, for each animation for each of the plurality of part objects, a data structure that:

identifies the part object to be animated and a type of animation to be applied to the part object;

specifies a duration of the animation; and

specifies one or more parameters for each of a plurality of keyframes in the animation.

16. The method of claim 15 , wherein the type of animation comprises one of a change in position, a rotation, and a change in scale of the geometric shape corresponding to the identified part object.

17. The method of claim 12 , wherein animating the two-dimensional character on the display comprises animating the two-dimensional character within a video game.

18. The method of claim 1 , wherein the computing system comprises a one or more computing devices commonly coupled via a network, configured such that the one or more operations of the method are divided among the one or more computing devices, and an application associated with a local device is communicatively coupled to the one or more of the computing devices.

19. A system comprising:

a display;

at least one processor; and

a memory storing one or more instructions that, when executed by the at least one processor, cause the at least one processor to

render a character object as a two-dimensional character on the display, wherein the character object comprises one or more part objects which are each rendered on the display as a corresponding geometric shape, and wherein each of the one or more part objects comprises a vector graphic object that defines a size of the corresponding geometric shape as a percentage change from an initial size of the corresponding geometric shape, and,

for at least one geometric shape rendered on the display,

receive an input to change a scale of the at least one geometric shape,

in response to the input, modify the part object, to which the at least one geometric shape corresponds, by adjusting the percentage change, defined in the vector graphic object of the part object, according to the change in scale, and

update the at least one geometric shape rendered on the display to reflect the modification to the part object to which the at least one geometric shape corresponds.

20. A non-transitory computer readable medium having instructions stored therein, wherein the instructions, when executed by a processor, cause the processor to:

render a character object as a two-dimensional character on a display, wherein the character object comprises one or more part objects which are each rendered on the display as a corresponding geometric shape, and wherein each of the one or more part objects comprises a vector graphic object that defines a size of the corresponding geometric shape as a percentage change from an initial size of the corresponding geometric shape; and,

for at least one geometric shape rendered on the display,

receive an input to change a scale of the at least one geometric shape,

in response to the input, modify the part object, to which the at least one geometric shape corresponds, by adjusting the percentage change, defined in the vector graphic object of the part object, according to the change in scale, and

update the at least one geometric shape rendered on the display to reflect the modification to the part object to which the at least one geometric shape corresponds.

Assignments (2)
CHANGE OF NAME Recorded Aug 16, 2018
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 046840/0762 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 18, 2017
From: BLOCK, ASA JONAS IVRY; CHAMBERS, SUZANNE; BROWER, GEORGE MICHAEL; CLARK, IGOR; THE, RICHARD
To: GOOGLE INC.
Reel/Frame 043895/0340 →
Continuity (2)
Continuation 14811256 · Jul 28, 2015
Related Publication 20180025471A1 · Jan 25, 2018