![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Nov 2011
Сообщений: 1
|
Здравствуйте!
Вот проект: http://allday.ru/index.php?newsid=120453 Вот код: import flash.display.*; import flash.geom.*; import flash.filters.*; img = BitmapData.loadBitmap("imagen"); w = img.width-1; h = img.height-1; pt = new Point(); Nx = new Matrix(); Mx = new Matrix(); Mx.scale(2,2); fz = 70;// fz: fuerza del oleaje de 0 en adelante; v = (255/256)-1/100000; sal = new BitmapData(w/2, h/2); sal1 = sal2=new BitmapData(w, h); ori = acum=new BitmapData(w/2, h/2, false, 128); attachBitmap(sal2,0); ola = new ConvolutionFilter(3, 3, [1, 1, 1, 1, 1, 1, 1, 1, 1], 9); ade = new ColorTransform(0, 0, v, 1, 0, 0, 2, 0); agua = new DisplacementMapFilter(sal2, pt, 4, 4, fz, fz); onEnterFrame = function () { pul = true; clearInterval(ID); ID = setInterval(onda, 10); }; function onda() { if (pul) { cont = 0; ori.setPixel(_xmouse/2,_ymouse/2,0); agua.scaleY = agua.scaleX += 10*(agua.scaleX<(fz-10)); } else { cont++; if (cont>fz) { agua.scaleY = agua.scaleX -= 5*(agua.scaleX>50)+.25; } } sal.applyFilter(ori,new Rectangle(0, 0, w/2, h/2),pt,ola); sal.draw(sal,Nx,null,"add"); sal.draw(acum,Nx,null,"difference"); sal.draw(sal,Nx,ade); sal1.draw(sal,Mx,null,null,null,true); sal2.applyFilter(img,new Rectangle(0, 0, w, h),pt,agua); acum = ori; ori = sal.clone(); if (agua.scaleX<=0) { agua.scaleY = agua.scaleX=fz; cont = 0; clearInterval(ID); } } Задача_1: применить эффект к анимации на сцене Проблема: данный код применяет эффект только к импортируемой картинке из библиотеки Задача_2: применить эффект ко всему что есть на сцене, привязав начало эффекта к любому кадру Проблема: 1. У меня эффект начинается с 40 кадра (соответственно скрипт я записал в 40 фрейм). Проявляется это резким миганием, как если бы после 40 кадра, пару кадров у меня пустые. Как исправить это мигание? 2. Когда ролик начинается с начала, в нем остаются артефакты (картинка бутылки которая импортируется в скрипте для реализации эффекта). Как сделать так: ролик пуст от эффекта до 40 кадра, после эффект доступен, так по кругу. Спасибо! |
![]() |
![]() |
Часовой пояс GMT +4, время: 18:28. |
|
|
« Предыдущая тема | Следующая тема » |
|
|