Просмотр полной версии : помощь с фильтром
Здравствуйте, подскажите можно ли сделать такой фильтр - прозрачный слой, изображение за которым размывалось бы. Заранее благодарен.
>>прозрачный слой, изображение за которым размывалось бы
как вариант: битмап, в который на ENTER_FRAME рисуем заблуренную копию того, что там должно размываться
но, само собой, тормоза пропорционально размерам обеспечены
public class Main extends Sprite
{
private var bitmapData:BitmapData;
private var filter:BlurFilter = new BlurFilter();
public function Main():void
{
// пара компонентов из MinimalComps для теста
new PushButton(this, 20, 20, "test");
new ColorChooser(this, 140, 20).usePopup = true;
// рабочий битмап
bitmapData = new BitmapData(stage.stageWidth, stage.stageHeight, true);
addChild(new Bitmap(bitmapData));
addEventListener(Event.ENTER_FRAME, this_enterFrame);
}
private function this_enterFrame(e:Event):void
{
bitmapData.fillRect(bitmapData.rect, 0x0);
bitmapData.draw(stage);
bitmapData.applyFilter(bitmapData, bitmapData.rect, new Point(), filter);
}
}
Добавлю, что если существенные тормоза, то изображение можно заблюрить предварительно фотошопом (или на серваке), загрузить оба,а дальше просто два слоя и маска на слое с размытием.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.