Googles 3D-Rendering-Engine SwiftShader wird Open Source

SwiftShader soll keine Alternative zu WebGL werden, sondern ist für den reinen CPU-Betrieb gedacht und zielt auf Geräte, bei denen die GPU-Beschleunigung nicht angemessen funktioniert.

In Pocket speichern vorlesen Druckansicht
Googles 3D-Rendering-Engine SwiftShader wird Open Source
Lesezeit: 1 Min.

Browser nutzen zur Darstellung von 3D-Grafik üblicherweise den Khronos-Standard WebGL. Die API verwendet die auf dem System vorhandenen GPU für die Shader-Funktionen. Google hat im eigenen Browser Chrome zusätzlich eine Bibliothek namens SwiftShader implementiert, die das Rendering komplett auf der CPU durchführt.

Das ist mangels Beschleunigungsfunktionen zwar weniger effizient, aber laut Googles Developer-Blog auf einigen Systemen der einzig gangbare Weg. Die Bibliothek übernimmt immer dann die Arbeit, wenn es keine passende GPU gibt oder die Treiber so fehlerhaft sind, dass das Rendering unzuverlässig bis unmöglich ist. SwiftShader ist auch für Cloud-Anwendungen gedacht, die auf Systemen ohne GPU laufen.

SwiftShader ist seit 2009 Bestandteil von Chrome. Die Bibliothek nutzt dieselbe OpenGL-ES-API, die auch WebGL verwendet, sodass sie alle Inhalte darstellen soll. Einige Optimierungen sollen die Performance-Einbußen gegenüber dem Ablauf auf beschleunigten GPUs verringern. So erstellt das System den Code dynamisch, um ihn zur Laufzeit zu optimieren. SwiftShader besitzt dafür mit Reactor eine speziell zugeschnittene Spracherweiterung für C++.

Weitere Details und Links zu Dokumentationen sowie zu einer Mailing-Liste finden sich im Blog-Beitrag. Der Sourcecode ist auf der Google-Source-Site zum Download verfügbar. (rme)