![]() |
|
||||||||||
|
|||||
|
Регистрация: Jul 2011
Адрес: где-то на планете земля
Сообщений: 23
|
Собственно два вопроса.
1. Во флешке двигаются картинки, при очень медленном перемещении все более-мение смотрибельно, но если увеличить скорость, то картинка дергается(горизонтальные полосы). Как реализовать во флеше двойную буферизацию или другой способ избавиться от побочного эффекта рендеринга? 2. Нашел в инете любопытную статью, думал попробовать поэкспериментировать, однако в AS3 код отказался работать, подскажите в чем загвоздка? собственно сам код (по идее должен добавить эффект размытия сцены, но не тут то было): var backBuffer:BitmapData; var b:Bitmap = new Bitmap(backBuffer,PixelSnapping.ALWAYS); var blur_filter:BlurFilter = new BlurFilter(10,10,2); backBuffer = new BitmapData(stage.stageWidth, stage.stageHeight, false); addChild(b); b.blendMode="normal"; addEventListener(Event.ENTER_FRAME, update); function update(e : Event):void { b.visible=false; backBuffer.lock(); backBuffer.draw(this,null,null,null,new Rectangle(0,0,stage.stageWidth, stage.stageHeight)); backBuffer.applyFilter(backBuffer, new Rectangle(0,0,stage.stageWidth, stage.stageHeight), new Point(0, 0), blur_filter); backBuffer.unlock(); b.visible=true; } ![]() Последний раз редактировалось lolsuicide; 14.07.2011 в 18:22. |
|
|||||
var backBuffer:BitmapData = new BitmapData(stage.stageWidth, stage.stageHeight, false); var b:Bitmap = new Bitmap(backBuffer,PixelSnapping.ALWAYS); b.blendMode = BlendMode.OVERLAY; var blur_filter:BlurFilter = new BlurFilter(10,10,1); backBuffer.draw(this,null,null,null,new Rectangle(0,0,stage.stageWidth, stage.stageHeight)); backBuffer.applyFilter(backBuffer, new Rectangle(0,0,stage.stageWidth, stage.stageHeight), new Point(0, 0), blur_filter); addChild(b); addEventListener(Event.ENTER_FRAME, update); function update(e : Event):void { b.visible=false; backBuffer.lock(); backBuffer.fillRect(new Rectangle(0,0,stage.stageWidth, stage.stageHeight), 0xFFFFFF); // <- пропущено в оригинале. backBuffer.draw(this,null,null,null,new Rectangle(0,0,stage.stageWidth, stage.stageHeight)); backBuffer.applyFilter(backBuffer, new Rectangle(0,0,stage.stageWidth, stage.stageHeight), new Point(0, 0), blur_filter); backBuffer.unlock(); b.visible=true; } Последний раз редактировалось nOobCrafter; 15.07.2011 в 13:39. |
|
|||||
|
Регистрация: Jul 2011
Адрес: где-то на планете земля
Сообщений: 23
|
Пытал флеш на предмет 1го вопроса, в итоге лучшей картинки дабился при использование аппаратного ускорение GPU и установкой 60fps, но этот способ нещадно жрет процессор (~40% 2core). Еще наткнулся на метод "bitmap + copyPixels", только не нашел более конкретной информации, в чем его смысл и как применять, мб кто знает о чем это? =)
Цитата:
Еще пара вопросов по этой теме. С блюром беда, вроде стоит, но эффекта не дает и где добавить альфу, а то при других фильтрах экран цвета "заливки" (поменять цвет может не тот эффект дать)?
__________________
CS5, AS3.0 Последний раз редактировалось lolsuicide; 15.07.2011 в 19:03. |
![]() |
![]() |
Часовой пояс GMT +4, время: 19:24. |
|
|
« Предыдущая тема | Следующая тема » |
|
|