PixelBender

Mit der Einführung des FlashPlayer 10 wird es möglich eigene Filter, Effekte und Überbelndungen mittels PixelBender zu schreiben und zu implementieren. Dabei wurde bei PixelBender, ehemals Hydra, auf eine einfache Sprachstruktur Wert gelegt und ist C sehr ähnlich. Hinzu kommt nicht nur die Verwendbarkeit in Flash sondern auch anderen Adobe Produkten wie After Effects.

Adobe bietet zur Entwicklung ein Toolkit an, mit dem sich PixelBender Filter und Effekte erzeugen lassen an. Diesen Toolkit sowie weitere Informationen lassen sich unter labs.adobe.com finden.

PixelBender ist eine Programmiersprache, die www.infopotenzmittel.com – this website hardwareunabhängig ist und zur Beschreibung von bildverarbeitenden Algorithmen gedacht. Es nutzt CPU, GPU wie auch Multicore-Prozessoren. Mit dieser Unterstützung lassen sich auch rechenaufwändige Algorithmen schnell verarbeiten. Wie bereits erwähnt ähnelt PixelBender sehr stark C und unterstützt durch seinen Aufbau die Nutzung und Verwendung durch Dritthersteller, die ihrerseits wieder die Filter und Effekte weiterverbreiten können.

Die Basiseinheit der Bildverarbeitung in PixelBender ist der „kernel„. Jedes PixelBender-Programm definiert genau einen kernel, wobei dieser das Ergebnis eines output-Pixels basierend auf verschiedenen Input-Pixeln als Objekt bereitstellt. Das parallele Modell des Aufbaus bewirkt, dass es keine Interaktion zwischen den individuellen Aufrufen einer kernel-Funktion für jeden Output-Pixel gibt.

Wie beschrieben wirkt sich der kernel parallel auf alle Pixel des Output-Bildes aus. Das einzige was sich ändert sind die Koordinaten des Bildes, auslesbar durch ‚outCoord‚. Das Resultat hiervon ist ein float2 (Vektor mit 2 floats) welche die x und y Koordinaten repräsentieren. Desweiteren haben die Input-Bilder für PixelBender keine Größe. Jedes Bild wird als infinite Ebene von konkreten Pixel-Koordinaten angesehen. Dies macht PixelBender zum einen unabhängier, zum anderen kann ein Bild nicht über sein Zentrum gespiegelt werden, da das Bild kein Zetrum hat. Vielmehr muss das Bild über den Ursprung gespiegelt und verschoben werden um diesen Effekt zu erzeugen. PixelBender bietet nicht nur die Möglichkeit ein Bild zu verändern, sondern mehrere Bilder zur Veränderung zu nutzen und miteinander zu verrechnen.

Insgesamt bietet Pixelbender ein enorme Fülle an Möglichkeiten, welche nicht nur auf ein Programm oder eine Umgebung beschränkt ist. Vielmehr lassen sich die kernels unterschiedlich nutzen und verbreiten. Damit ist der effizienten Gestaltung von Filtern sowie deren kreativer Gebrauch keine Grenzen mehr gesetzt. Interessant ist PixelBender besonders in Hinsicht auf den Flashplayer 10. Hier lassen sich diese Filter dann zur Laufzeit animieren und verändern, wobei die Frage nach der Leistungsfähigkeit bleibt.