Здравствуйте! Стоит задача сделать анимацию блика на кнопке с использованием шейдера. Делаю так: блик - это мувиклип, на него накладывается ShaderFilter, который придает блику форму кнопки.
Код в Pixel Bender Toolkit:

Код:
input image4 foreground;
input image4 background;
output pixel4 dst;
void evaluatePixel()
{
float4 a = sampleLinear(background, outCoord()); // кнопка
float4 b = sampleLinear(foreground, outCoord()); // блик
if (a.a <1.0) // если на кнопке прозрачный пиксель
b.a = a.a;
dst = b;
}
Код в as3:

Код AS3:
skin = new Button();
addChild(skin);
var blik:MovieClip = new Blik();
blik.width = skin.width;
blik.height = skin.height;
skin.addChild(blik);
var bd:BitmapData = new BitmapData(skin.width, skin.height);
bd.draw(skin);
var shader:Shader = new Shader(new ShaderClass());
shader.data.background.input = bd;
bd.draw(blik);
shader.data.foreground.input = bd;
f = new ShaderFilter(shader);
blik.filters = [f];
В результате никакого прозрачного блика - просто белая полоса. В чем может быть проблема?
Добавлено через 1 час 33 минуты
Т.е. проблема заключается в потере прозрачности