Релиз графической библиотеки Clutter 1.2.0

Разработчики проекта GNOME объявили о выпуске новой стабильной ветки графической библиотеки Clutter - 1.2.0. API и ABI выпуска 1.2.0 обратно совместимы с прошлыми версиями библиотеки.

Основные новшества:

  • В COGL, входящей в комплект Clutter низкоуровневой библиотеке для абстрагирования доступа к OpenGL, переработан код обработки текстур, добавлена поддержка сглаживания текстур, реализован экспериментальный API для PBO (OpenGL Pixel Buffer Object), добавлены буферы промежуточной отрисовки для видимого и скрытого изображения.
  • Добавлен класс Animator, предназначенный для определения сложных анимационных эффектов с использованием класса для формирования сцен ClutterScript и простого C API;
  • Реализована поддержка менеджера оформления (layout manager), ориентированного на создание сложных и анимированных контейнеров с плавающим оформлением (fluid layout);
  • Проведена работа по увеличению производительности различных компонентов библиотеки;
  • В списке обязательных зависимостей присутствуют: GLib 2.16.0, Cairo 1.6, Pango 1.20, OpenGL 1.3 (или 1.2+multitexturing), OpenGL|ES 1.1, реализации GLX, SDL, WGL, Quartz или EGL. В зависимости от используемой платформы в список зависимостей попадают GDK-Pixbuf 2.0 и JSON-GLib 0.8.

Библиотека работает поверх OpenGL, GLib, GObject, GLX, SDL, WGL, Quartz, EGL и Pango, имеются биндинги для языков Perl, Python, C#, C++, Vala и Ruby. Исходные тексты распространяются в рамках лицензии LGPLv2.1. Библиотека Clutter ориентирована на активное использование анимации и визуальных эффектов, что позволяет применять при создании обычных GUI приложений методы, используемые при разработке игр. При этом сама библиотека напоминает игровой движок, в котором максимальное число операций выносится на плечи GPU. Одним из основных преимуществ Clutter является то, что для создания сложного интерфейса пользователя требуется написание минимума кода.

Библиотека Clutter активно используется для обеспечения работы пользовательского интерфейса в проекте Moblin/MeeGo, в недалеком будущем рабочая оболочка GNOME 3.0 также будет основана на использовании Clutter интерфейса к GTK+. Кроме Clutter-GTK, в настоящий момент доступны такие интеграционные модули, как Clutter-GStreamer для отображения видео потоков в виде элементов холста Clutter; Clutter-Box2D для симулирования физических процессов, таких как гравитация, инерция или реалистичные столкновения; Clutter-MozEmbed и Clutter-WebKit для рендеринга web-страниц через движок Mozilla Gecko или WebKit; Clutter-Qt для интеграции возможностей Clutter в Qt приложения.

© OpenNet