GUI programming with Clutter

Clutter is usually used for creating more compelling GUI applications as it provides rich animation and effective features, and is also used for rendering with OpenGL. Yet, it hides all OpenGL-specific programming from the developers. Different from GTK+, Clutter is a scene graph based canvas, which we can put anything into in any place we want. Every object on the stage is a 2D surface, while the stage itself is a 3D space.