Framework for Graphics Animation and Compositing Operations
First Claim
1. A method of processing graphical content for application programs, comprising:
- maintaining a plurality of renderable objects independently from graphical content of an application program executing on a processing device;
making the renderable objects available for rendering to a display of the processing device;
identifying a modification of at least a portion of the graphical content; and
manipulating at least one of the renderable objects independently from the application program to achieve a result for the modification when making the at least one renderable object available for rendering.
1 Assignment
0 Petitions
Accused Products
Abstract
A framework for performing graphics animation and compositing operations has a layer tree for interfacing with the application and a render tree for interfacing with a render engine. Layers in the layer tree can be content, windows, views, video, images, text, media, or any other type of object for a user interface of an application. The application commits change to the state of the layers of the layer tree. The application does not need to include explicit code for animating the changes to the layers. Instead, an animation is determined for animating the change in state. In determining the animation, the framework can define a set of predetermined animations based on motion, visibility, and transition. The determined animation is explicitly applied to the affected layers in the render tree. A render engine renders from the render tree into a frame buffer for display on the processing device. Those portions of the render tree that have changed relative to prior versions can be tracked to improve resource management.
-
Citations
46 Claims
-
1. A method of processing graphical content for application programs, comprising:
-
maintaining a plurality of renderable objects independently from graphical content of an application program executing on a processing device; making the renderable objects available for rendering to a display of the processing device; identifying a modification of at least a portion of the graphical content; and manipulating at least one of the renderable objects independently from the application program to achieve a result for the modification when making the at least one renderable object available for rendering. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. An Application Programming Interface for a processing device, comprising:
-
a first interface with an application program executing on a processing device; a second interface with a render engine for rendering to a display of the processing device; an input process receiving information pertaining to graphical content of the application program via the first interface and creating a data structure having a plurality of renderable objects based on the graphical content information; an output process outputting the renderable objects of the data structure to the render engine via the second interface; and an intermediate process responding to a modification of at least a portion of the graphical content in the information received via the first interface, the intermediate process determining one or more actions to achieve a result for the modification and performing the one or more actions on the data structure as the output process makes the renderable objects available to the render engine.
-
-
11. An application programming interface for use in connection with processing graphical content of an application program executing on a processing device, wherein—
-
the application programming interface receives as input information pertaining to the graphical content of the application program, creates a data structure having a plurality of renderable objects based on the input, and provides the renderable objects as output to a render engine for rendering to a display of the processing device, and the application programming interface, in response to a modification of at least a portion of the graphical content in the information received, determines one or more actions to achieve a result for the modification and performs the one or more actions on the data structure as the renderable objects are made available to the render engine.
-
-
12. A method of processing graphical content for application programs, comprising:
-
interfacing with an application program executing on a processing device; maintaining a plurality of renderable objects based on graphical content of the application program; making the renderable objects available for rendering to a display of the processing device; identifying a modification of at least a portion of the graphical content; determining one or more actions to perform on at least one of the renderable objects to achieve a result for the modification; and performing the one or more actions on the at least one renderable object to achieve the result when making the at least one renderable object available for rendering. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46)
-
Specification