Clutter (toolkit)
# Clutter (toolkit)

Clutter è una libreria grafica per creare interfacce utente accelerate dall'hardware.

Si appoggia a OpenGL (1.4+) o OpenGL ES (1.1 o 2.0) per il rendering, può essere compilato in diverse piattaforme (X11, Wayland, Darwin e Win32) e ha binding per diversi linguaggi (fra cui, Mono, Perl, Python, Ruby e Vala. Inoltre supporta anche la riproduzione multimediali tramite GStreamer e il rendering 2D tramite Cairo.

Clutter è stata creata dalla OpenedHand Ltd, adesso accorpata nella Intel.

Clutter è un software libero e open source, soggetto ai requisiti della GNU Lesser General Public License (LGPL), version 2.1.

## Architettura

Clutter si basa su un canvas scenico vettoriale dove ogni oggetto nella scena è un oggetto 2D dentro uno spazio 3D. Clutter astrae tutto il contenuto della finestra in uno spazio che è lo spazio principale del programma. Questo spazio viene chiamato stage. Gli oggetti dentro uno stage vengono chiamati actors. Invece di operare sulle matrici, come fa OpenGL, Clutter permette la modifica delle proprietà di ogni actor tenendone conto nel momento in cui verranno visualizzati, renderizzando la scena in maniera appropriata.

## Piattaforme supportate

Clutter è stato inizialmente sviluppato per X Windows System e per Wayland, successivamente con la release 0.6 è stato aggiunto il supporto per Mac OS X e con la release 0.8 il supporto per Windows.

## Implementazioni

Clutter viene utilizzato da software come Totem, GNOME Shell e Ease.

Clayland è un compositore Wayland basato su Clutter.

I toolkit grafici Netbook Toolkit (nbtk) e Mx usano Clutter.

