1 2 3 4 5 6 7 8 9 10 11 12 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 47 48 49 50 51
|
<?xml version="1.0" encoding="utf-8"?>
<page xmlns="http://projectmallard.org/1.0/" type="topic" id="tech-clutter" xml:lang="sl">
<info>
<link type="guide" xref="tech" group="clutter"/>
<desc>Animations and scene graph</desc>
<revision pkgversion="3.0" date="2011-04-05" status="incomplete"/>
</info>
<title>Clutter</title>
<p>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.</p>
<p>Clutter uses the <link href="http://www.khronos.org/opengl/">OpenGL</link>
and <link href="http://www.khronos.org/opengles/">OpenGL|ES</link> industry
standard API to access the accelerated graphical hardware on both desktop and
mobile environments alike, without exposing the complexities of GPU pipeline
programming.</p>
<p>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 <em>actors</em>) on the main viewport (or <em>stage</em>).</p>
<p>Clutter comes with pre-defined actors for displaying solid colors, image
data, text and custom high-precision 2D drawing using the
<link xref="tech-cairo">Cairo</link> API. Clutter also provides generic
classes for structuring a user interface using both a box-packing model like
<link xref="tech-gtk">GTK+</link>, and a series of free-form
<em>constraints</em>.</p>
<p>Clutter provides an extensible animation framework and graphical
effects. An animation is associated with a timeline and changes one or
more properties of one or more actors over time, for example their
rotation in a particular dimension, scale, size, opacity, etc.</p>
<p>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.</p>
<list style="compact">
<item><p><link href="https://developer.gnome.org/clutter-cookbook/stable/">The Clutter Cookbook</link></p></item>
<item><p><link href="http://developer.gnome.org/clutter/stable">Clutter Reference Manual</link></p></item>
<item><p><link href="http://www.clutter-project.org">The Clutter web site</link></p></item>
</list>
</page>
|