Foros del Web » Creando para Internet » Flash y Actionscript »

Ayuda con efecto flash

Estas en el tema de Ayuda con efecto flash en el foro de Flash y Actionscript en Foros del Web. Hola que tal a todos, tengo esta imagen con este efecto pueso. Queria lograr un efecto de agua constante, no cuando se apsa el mouse ...
  #1 (permalink)  
Antiguo 26/05/2009, 07:17
 
Fecha de Ingreso: mayo-2009
Mensajes: 1
Antigüedad: 14 años, 10 meses
Puntos: 0
Ayuda con efecto flash

Hola que tal a todos, tengo esta imagen con este efecto pueso. Queria lograr un efecto de agua constante, no cuando se apsa el mouse como en ejemplo sino constante que lo haga solo. Queria saber si se puede hacer algo asi o otro efecto aprecido qeu simule el efecto agua. Muchas gracias

La imagen es
ww.eliseogroup.com.ar/agua

el codigo es
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);
}
}
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:34.