La classe ShaderFilter consente di utilizzare un effetto filtro personalizzato definito come shader di Pixel Bender. Poiché l'effetto filtro viene scritto come shader Pixel Bender, l'effetto può essere completamente personalizzato. Il contenuto filtrato viene passato allo shader come input di immagine, quindi il risultato dell'operazione shader diventa il risultato del filtro.
Nota:
il filtro Shader è disponibile in ActionScript a partire da Flash Player 10 e Adobe AIR 1.5.
Per applicare un filtro shader a un oggetto, create prima di tutto un'istanza Shader che rappresenti lo shader Pixel Bender che si desidera utilizzare. Per maggiori dettagli sulla procedura per creare un'istanza Shader e su come specificare l'immagine di input e i valori di parametro, vedete il capitolo
Uso degli shader Pixel Bender
.
Quando utilizzate uno shader come filtro, considerate i seguenti tre aspetti importanti:
-
Lo shader deve essere definito in modo da accettare almeno un'immagine di input.
-
L'oggetto filtrato (l'oggetto di visualizzazione o BitmapData a cui viene applicato il filtro) viene trasmesso allo shader come valore della prima immagine di input. Per questo motivo, evitate di specificare manualmente un valore per la prima immagine di input.
-
Se nello shader sono definite più immagini di input, gli input aggiuntivi devono essere specificati manualmente (impostando la proprietà
input
di una qualsiasi istanza ShaderInput appartenente all'istanza Shader).
Una volta ottenuto l'oggetto Shader per lo shader che desiderate utilizzare, create un'istanza ShaderFilter. Questo è l'oggetto filtro effettivo che potete utilizzare come qualsiasi altro filtro. Per creare un'istanza ShaderFilter che utilizza un oggetto Shader, chiamate la funzione di costruzione
ShaderFilter()
e passate l'oggetto Shader come argomento, come illustrato in questo esempio:
var myFilter:ShaderFilter = new ShaderFilter(myShader);
Per un esempio completo di utilizzo di un filtro shader, vedete la sezione
Uso di uno shader come filtro
.