| macOS graphics model |
|---|
![]() |
| Rendering |
| Compositing |
Core Animation is ananimation graphicscompositingframework used bymacOS (Mac OS X Leopard and later),iOS,watchOS, andtvOS to produce animated user interfaces.[1]
Core Animation provides a way for developers to produce animated user interfaces via animplicit animation model as well as an "explicit" model. The developer specifies the original and final states of an object, and Core Animation handlesinterpolation. This allows animated interfaces to be created with relative ease, as no specific code for the animation is required by the developer.[2]
Core Animation can animate any visual element, and it provides a unified way of accessingCore Image,Core Video, and the otherQuartz technologies. Core Animation rendering can be accelerated by a graphics processor (GPU).[1]
Animated sequences execute in a thread independent from the main run loop, allowing application processing to occur while the animation is in progress. In this way, application performance is not affected, and animations can be stopped, reversed, orretargeted while in progress.[1]
Core Animation first appeared inMac OS X Leopard, but actually first emerged from theiPhone software team.[citation needed] It was shown publicly for the first time on August 7, 2006[3][circular reference] duringWWDC 2006. At theMacworld Expo 2007, Apple announced that the iPhone runs a specially adapted version ofOS X and uses Core Animation.