Skuggningsfilter

Flash Player 10 och senare, Adobe AIR 1.5 och senare

Med klassen ShaderFilter kan du använda en anpassad filtereffekt som har definierats som en Pixel Bender-skuggning. Eftersom filtereffekten skrivs som en Pixel Bender-skuggning kan effekten anpassas fullständigt. Det filtrerade innehållet skickas till skuggningen som bildindata, och resultatet från skuggningsåtgärden blir filterresultatet.

Obs! Skuggningsfiltret är tillgängligt i ActionScript från och med Flash Player 10 och Adobe AIR 1.5.

Om du vill tillämpa ett skuggningsfilter på ett objekt måste du först skapa en Shader-instans som representerar Pixel Bender-skuggningen som du använder. Mer information om hur du skapar en Shader-instans och hur du anger indatabilds- och parametervärden finns i Arbeta med Pixel Bender-skuggningar.

När du använder en skuggning som ett filter finns det tre viktiga saker som du måste ha i åtanke:

  • Skuggningen måste ha definierats till att acceptera minst en indatabild.

  • Det filtrerade objektet (visningsobjektet eller BitmapData-objektet som filtret tillämpas på) skickas till skuggningen som det första indatabildvärdet. Därför ska du inte manuellt ange något värde för första bildindata.

  • Om skuggningen definierar fler än en indatabild, måste de övriga indata anges manuellt (d.v.s. egenskapen input ställs in för den ShaderInput-instans som tillhör Shader-instansen).

När du har ett Shader-objekt för skuggningen skapar du en ShaderFilter-instans. Detta är det faktiska filterobjektet som du använder på samma sätt som andra filter. Du skapar ett ShaderFilter som använder ett Shader-objekt genom att anropa ShaderFilter()-konstruktorn och skicka Shader-objektet som ett argument, vilket visas i detta exempel:

var myFilter:ShaderFilter = new ShaderFilter(myShader);

Ett fullständigt exempel på hur du använder ett skuggningsfilter finns i Använda en skuggning som ett filter.