Shaun McCance
shaunm@gnome.org 2011–2012
Animations and scene graph

# Clutter

Clutter is a library for doing animations and using a 2.5-D canvas. You create graphical objects out of images, and you can manipulate them later to move them, rotate them, or give them quasi-3D effects.

Clutter utilise OpenGL et OpenGL|ES pour bénéficier de l'accélération de la carte graphique, sans pour autant exposer la complexité de la programmation d'un GPU.

Clutter does not specify any visual style, and does not provide any pre-defined complex user interface control; it lets the developer define what is needed, using a flexible scene graph API, with free-form placement of the scene elements (or actors) on the main viewport (or stage).

Clutter comes with pre-defined actors for displaying solid colors, image data, text and custom high-precision 2D drawing using the Cairo API. Clutter also provides generic classes for structuring a user interface using both a box-packing model like GTK, and a series of free-form constraints.

Clutter fournit un cadre applicatif extensible d'animations et des effets graphiques. Une animation est associée à un axe temporel et modifie une ou plusieurs propriétés d'un ou plusieurs acteurs au cours du temps, par exemple leur rotation dans un certain sens, l'échelle, la taille, l'opacité, etc.

A number of third-party libraries allow integration with other technologies, such as: Clutter-GTK, for embedding a Clutter stage inside a GTK application; Clutter-GStreamer, for embedding GStreamer video and audio pipelines; Clutter-Box2D and Clutter-Bullet, for adding physics interaction in both 2D and 3D environments.

The Clutter Cookbook

Clutter Reference Manual

The Clutter web site