Das GNOME-Projekt hat die Grafikbibliothek Clutter in die Liste der eingestellten Projekte ĂŒberfĂŒhrt. Ab GNOME 42 werden die Bibliothek Clutter sowie die damit verbundenen Komponenten Cogl, Clutter-GTK und Clutter-GStreamer aus dem GNOME SDK entfernt, und der dazugehörige Code wird in Archiv-Repositorys verschoben.
Um die KompatibilitĂ€t mit bestehenden Erweiterungen zu gewĂ€hrleisten, werden interne Kopien von Cogl und Clutter im GNOME Shell beibehalten, die in naher Zukunft weiterhin bereitgestellt werden. Entwicklern von Anwendungen, die GTK3 zusammen mit Clutter, Clutter-GTK oder Clutter-GStreamer verwenden, wird geraten, ihre Programme auf GTK4, libadwaita und GStreamer zu migrieren. Falls dies nicht möglich ist, sollten Cogl, Clutter, Clutter-GTK und Clutter-GStreamer separat zu den AbhĂ€ngigkeiten der Pakete im Flatpak-Format hinzugefĂŒgt werden, da sie aus dem Haupt-GNOME-Runtime ausgeschlossen werden.
Das Projekt Clutter ist seit langem stagnierend und wird nicht weiterentwickelt â die letzte signifikante Version 1.26 wurde 2016 veröffentlicht, und das letzte Korrektur-Update wurde Anfang 2020 angeboten. Die Funktionen und Ideen, die in Clutter entwickelt wurden, werden nun durch das GTK4-Framework, libadwaita, GNOME Shell und den Kompositeur Mutter bereitgestellt. dem Server durch Mutter.
Die Clutter-Bibliothek zielt darauf ab, die BenutzeroberflĂ€che zu rendern. Die Funktionen der Clutter-Bibliothek sind auf die intensive Nutzung von Animationen und visuellen Effekten ausgerichtet, was es ermöglicht, Methoden anzuwenden, die normalerweise in Spieleentwicklungen verwendet werden, auch bei der Erstellung herkömmlicher GUI-Anwendungen. Die Bibliothek Ă€hnelt dabei einer Spiel-Engine, in der die meisten Operationen auf die GPU ausgelagert werden, und es wird nur ein Minimum an Code benötigt, um komplexe BenutzeroberflĂ€chen zu gestalten. UrsprĂŒnglich wurde die Bibliothek hauptsĂ€chlich mit OpenGL verwendet, kann jedoch auch mit GLib, GObject, GLX, SDL, WGL, Quartz, EGL und Pango betrieben werden. Es gibt Bindings fĂŒr Perl, Python, C#, C++, Vala und Ruby.
Quelle: opennet.ru
