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

Efecto de cenizas flotando

Estas en el tema de Efecto de cenizas flotando en el foro de Flash y Actionscript en Foros del Web. Lo que trato de hacer para mi flash es algo con volcanes, quisiera crear un efecto de cenizas o algo como en esta web http://swordandwow.net/ ...
  #1 (permalink)  
Antiguo 21/12/2010, 12:05
Avatar de AngarTan  
Fecha de Ingreso: septiembre-2010
Ubicación: Namekusei
Mensajes: 75
Antigüedad: 13 años, 7 meses
Puntos: 0
Efecto de cenizas flotando

Lo que trato de hacer para mi flash es algo con volcanes, quisiera crear un efecto de cenizas o algo como en esta web

http://swordandwow.net/

En la imagen de la web hay puntos rojos flotando hacia arriba quisiera crear un efecto igual y si se puede tambien los relampagos

Muchas gracias
  #2 (permalink)  
Antiguo 21/12/2010, 12:45
 
Fecha de Ingreso: junio-2010
Ubicación: Charlotte, NC
Mensajes: 611
Antigüedad: 13 años, 10 meses
Puntos: 95
Respuesta: Efecto de cenizas flotando

En que version de ActionScript? Te dejo el codigo para AS3.0
  #3 (permalink)  
Antiguo 21/12/2010, 13:25
Avatar de AngarTan  
Fecha de Ingreso: septiembre-2010
Ubicación: Namekusei
Mensajes: 75
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: Efecto de cenizas flotando

Para cualquier AS
Si puedes un ejemplo en archivo fla ya que aveces los codigos no me van bien
Gracias
  #4 (permalink)  
Antiguo 21/12/2010, 14:33
 
Fecha de Ingreso: junio-2010
Ubicación: Charlotte, NC
Mensajes: 611
Antigüedad: 13 años, 10 meses
Puntos: 95
Respuesta: Efecto de cenizas flotando

Mira se me olvido poner el codigo, pero ya que mencionas que prefieres el archivo FLA, te lo dejo en FLA.

Estoy pensando en hacer un tutorial de como hacer este tipo de efectos, ya que es un efecto muy facil de programar y muy solicitado.

El archivo fla, con su archivo externo de clases viene incluido.
Si quieres cambiar el tipo de ceniza, la forma o los colores, simplemente modifica el MovieClip.
Con este mismo codigo, con pequenas modificaciones al codigo puedes crear efectos como fuego, nieve, humo, agua o cualquier fluido.
El codigo fuente:
Particulas.zip
Ejemplo en ejecucion:
Particulas

Si no sabes como funciona un archivo externo de clases, fijate en mi tutorial de como programar un videojuego y veras como prepare el ambiente de trabajo para trabajar con el archivo externo de clases.

http://www.forosdelweb.com/f62/tutor...-flash-867992/


El codigo fuente viene comentarizado, para que lo entiendas mejor. Cualquier pregunta, no dudes en publicarla y con gusto te respondere.

Si la ceniza se crea muy rapido, sustituye el metodo crearCeniza() por el siguiente codigo:
Código AS3:
Ver original
  1. public function crearCeniza() {
  2. var miCeniza:MovieClip;
  3. miCeniza = new ceniza();
  4. var ralentizador:Number = Math.random()*100 + 1;
  5. if(ralentizador < 50)
  6. {
  7.             miCeniza.alpha = 20 + Math.random()*60;
  8.             miCeniza.x = ancho/2
  9.             miCeniza.y = alto/2
  10.             miCeniza.scaleX = miCeniza.scaleY = Math.ceil(Math.random()*(tamanoMaximo));
  11.             miCeniza.k = 1+Math.random()*2;
  12.             miCeniza.viento = 1.5 + Math.random()*(1.4*3);
  13.             addChild(miCeniza);
  14.             miCeniza.play();
  15.             cenizas.push(miCeniza);
  16. }
  17. }

Lo que hace, es crear un numero aleatorio entre 0 y 100, y cada vez que este numero sea menor a 50, entonces creara una ceniza.
La condicion la puedes aumentar o disminuir. No se cual es la tendencia del generador de numeros aleatorios de Flash de crear numeros, pero si haces un pequeno analisis y de ahi sacas una estadisitica, podrias incluso programar una probabilidad de que se cree dicha particula.

Última edición por AlanChavez; 21/12/2010 a las 14:49
  #5 (permalink)  
Antiguo 21/12/2010, 16:39
Avatar de AngarTan  
Fecha de Ingreso: septiembre-2010
Ubicación: Namekusei
Mensajes: 75
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: Efecto de cenizas flotando

Cuando modifico el mc, la pelicula esta en blanco sin ningun efecto
Podrias ponerlo sin archivo externo y unas cenizas rojas fosforesentes
muchas gracias
  #6 (permalink)  
Antiguo 21/12/2010, 17:17
 
Fecha de Ingreso: junio-2010
Ubicación: Charlotte, NC
Mensajes: 611
Antigüedad: 13 años, 10 meses
Puntos: 95
Respuesta: Efecto de cenizas flotando

Tienes el archivo externo de clases en la misma carpeta que la pelicula?
No tiene mucha ciencia cambiar ese archivo que tienes, a uno sin archivo externo.

Primero tienes que quitar la referencia de la clase, en el archivo FLA (caja de propiedades)
posteriormente, copiar y pegar el codigo del archivo externo en el primer fotograma de tu escena.

Y eliminar del codigo
packege {

los imports

las palabra clave "public"

el constructor de la clase y el codigo del constructor dejarlo fuera de cualquier funcion, ya que es el primer codigo en ejecutarse, y naturalmente quitar el } correspondiente para packet (siempre es el ultimo } )

Aun asi, me tome la molestia de cambiarle de color a la particula y ponerlo todo en un solo archivo FLA, aunque siempre es una buena practica de programacion tener un archivo externo de clases confrome tu proyecta crezca ;)

Descargalo de aqui:

Generador de ceniza AS3
  #7 (permalink)  
Antiguo 21/12/2010, 17:36
Avatar de AngarTan  
Fecha de Ingreso: septiembre-2010
Ubicación: Namekusei
Mensajes: 75
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: Efecto de cenizas flotando

Muchas gracias ya me funciono todo perfecto tratare de modificar el codigo
Saludos

Última edición por AngarTan; 21/12/2010 a las 17:42
  #8 (permalink)  
Antiguo 21/12/2010, 17:46
 
Fecha de Ingreso: junio-2010
Ubicación: Charlotte, NC
Mensajes: 611
Antigüedad: 13 años, 10 meses
Puntos: 95
Respuesta: Efecto de cenizas flotando

Me da gusto que te haya funcionado :)
Cualquier pregunta, no dudes en publicarla

Etiquetas: efecto
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 21:43.