Blame platform-overview/it/tech-clutter.page

Packit 1470ea
Packit 1470ea
<page xmlns="http://projectmallard.org/1.0/" xmlns:its="http://www.w3.org/2005/11/its" type="topic" id="tech-clutter" xml:lang="it">
Packit 1470ea
Packit 1470ea
  <info>
Packit 1470ea
    <link type="guide" xref="tech" group="clutter"/>
Packit 1470ea
    <revision pkgversion="3.0" date="2011-04-05" status="incomplete"/>
Packit 1470ea
Packit 1470ea
    <credit type="author copyright">
Packit 1470ea
      <name>Shaun McCance</name>
Packit 1470ea
      <email its:translate="no">shaunm@gnome.org</email>
Packit 1470ea
      <years>2011–2012</years>
Packit 1470ea
    </credit>
Packit 1470ea
Packit 1470ea
    <include xmlns="http://www.w3.org/2001/XInclude" href="cc-by-sa-3-0.xml"/>
Packit 1470ea
Packit 1470ea
    <desc>Animations and scene graph</desc>
Packit 1470ea
  </info>
Packit 1470ea
Packit 1470ea
<title>Clutter</title>
Packit 1470ea
Packit 1470ea

Clutter is a library for doing animations and using a 2.5-D canvas.

Packit 1470ea
You create graphical objects out of images, and you can manipulate
Packit 1470ea
them later to move them, rotate them, or give them quasi-3D
Packit 1470ea
effects.

Packit 1470ea
Packit 1470ea

Clutter uses the <link href="http://www.khronos.org/opengl/">OpenGL</link>

Packit 1470ea
and <link href="http://www.khronos.org/opengles/">OpenGL|ES</link> industry
Packit 1470ea
standard API to access the accelerated graphical hardware on both desktop and
Packit 1470ea
mobile environments alike, without exposing the complexities of GPU pipeline
Packit 1470ea
programming.

Packit 1470ea
Packit 1470ea

Clutter does not specify any visual style, and does not provide any

Packit 1470ea
pre-defined complex user interface control; it lets the developer define what
Packit 1470ea
is needed, using a flexible scene graph API, with free-form placement of the
Packit 1470ea
scene elements (or actors) on the main viewport (or stage).

Packit 1470ea
Packit 1470ea
  

Clutter comes with pre-defined actors for displaying solid colors, image

Packit 1470ea
  data, text and custom high-precision 2D drawing using the
Packit 1470ea
  <link xref="tech-cairo">Cairo</link> API. Clutter also provides generic
Packit 1470ea
  classes for structuring a user interface using both a box-packing model like
Packit 1470ea
  <link xref="tech-gtk">GTK+</link>, and a series of free-form
Packit 1470ea
  constraints.

Packit 1470ea
Packit 1470ea

Clutter provides an extensible animation framework and graphical

Packit 1470ea
effects. An animation is associated with a timeline and changes one or
Packit 1470ea
more properties of one or more actors over time, for example their
Packit 1470ea
rotation in a particular dimension, scale, size, opacity, etc.

Packit 1470ea
Packit 1470ea

A number of third-party libraries allow integration with other

Packit 1470ea
technologies, such as: Clutter-GTK, for embedding a Clutter stage inside a
Packit 1470ea
GTK+ application; Clutter-GStreamer, for embedding GStreamer video and audio
Packit 1470ea
pipelines; Clutter-Box2D and Clutter-Bullet, for adding physics interaction
Packit 1470ea
in both 2D and 3D environments.

Packit 1470ea
Packit 1470ea
<list style="compact">
Packit 1470ea
  <item>

<link href="https://developer.gnome.org/clutter-cookbook/stable/">The Clutter Cookbook</link>

</item>
Packit 1470ea
  <item>

<link href="http://developer.gnome.org/clutter/stable">Clutter Reference Manual</link>

</item>
Packit 1470ea
  <item>

<link href="http://www.clutter-project.org">The Clutter web site</link>

</item>
Packit 1470ea
</list>
Packit 1470ea
Packit 1470ea
</page>