Laden oder Einbetten eines ShadersFlash Player 10 und höher, Adobe AIR 1.5 und höher Um einen Pixel Bender-Shader in ActionScript zu verwenden, benötigen Sie zunächst Zugriff auf den Shader im ActionScript-Code. Da Shader mit dem Adobe Pixel Bender Toolkit erstellt und in der Pixel Bender-Programmiersprache geschrieben werden, ist kein direkter Zugriff in ActionScript möglich. Sie müssen stattdessen eine Instanz der Shader-Klasse erstellen, die den Pixel Bender-Shader in ActionScript repräsentiert. Mithilfe des Shader-Objekts können Sie Informationen über den Shader ermitteln, z. B. ob Parameter oder Werte für Eingabebilder erforderlich sind. Um den Shader zu verwenden, übergeben Sie das Shader-Objekt an andere Objekte. Um den Shader beispielsweise als Filter zu verwenden, weisen Sie das Shader-Objekt der shader-Eigenschaft eines ShaderFilter-Objekts zu. Alternativ können Sie den Shader auch als Füllung für eine Zeichnung verwenden, indem Sie das Shader-Objekt als Argument an die Graphics.beginShaderFill()-Methode übergeben. Der ActionScript-Code kann auf einen mit dem Adobe Pixel Bender Toolkit erstellten Shader (eine .pbj-Datei) auf zwei Arten zugreifen:
In beiden Fällen verknüpfen Sie den unformatierten Shader-Bytecode (die URLLoader.data-Eigenschaft oder eine Instanz der [Embed]-Datenklasse) mit der Shader-Instanz. Wie im vorherigen Beispiel zu sehen ist, können Sie den Bytecode auf zwei Arten mit der Shader-Instanz verknüpfen. Sie können den Shader-Bytecode als Argument an den Shader()-Konstruktor übergeben. Oder Sie legen ihn als byteCode-Eigenschaft der Shader-Instanz fest. Nachdem ein Pixel Bender-Shader erstellt und mit einem Shader-Objekt verknüpft wurde, können Sie mit dem Shader auf unterschiedliche Weise Effekte erstellen. Sie können den Shader als Filter, Mischmodus oder Bitmap-Füllung sowie zur eigenständigen Verarbeitung von Bitmaps und anderen Daten verwenden. Darüber hinaus können Sie mit der data-Eigenschaft des Shader-Objekts auf die Metadaten des Shaders zugreifen, Eingabebilder angeben und Parameterwerte festlegen. |
|