Crear un copo de nieve en Flash

Jueves, 6 de diciembre 2007

Algunos lectores me han preguntado cómo se creó el copo de nieve, de modo realista, la Navidad del widget. Los que han descargado el código fuente, probablemente ya sabe ... Sin embargo, es realmente simple. En primer lugar, he seleccionado la herramienta Pincel en Flash y yo diseñamos un punto.

Copito de NieveCopito de Nieve

Me volví esto en un símbolo y me aplicó dos efectos en la secuencia correcta: bisel y desenfoque:

Copito de NieveCopito de Nieve

El resultado fue: Copito de Nieve

En este MovieClip (símbolo) que se han asociado una clase simple CNeve que en realidad crea la inteligencia de la grapa en sí:

ActionScript
  1. MovieClip { Clase CNEV extiende MovieClip (
  2. _interval ; _interval private var;
  3. _maxy : Number ; _maxy private var: Number;
  4. / /
  5. Función CNEV () (
  6. this , "_move" , 25 ) ; _interval = setInterval (this, "_Move", 25);
  7. round ( ( Stage . height + 256 ) / 2 ) + _getRndRange ( - 20 , - 7 ) ; = _maxy Matemáticas. ronda ((altura Stage. + 256) / 2) + _getRndRange (- 20, - 7);
  8. )
  9. / /
  10. _getRndRange ( min : Number , max : Number ) : Number { _getRndRange private function (min: Number, max: Number): Número (
  11. Number = Math . floor ( Math . random ( ) * ( max - min + 1 ) ) + min ; randomNum var: Número = Matemáticas. piso (Mateo aleatorio () * (max - min + 1)) + min;
  12. volver randomNum;
  13. )
  14. / /
  15. _move ( ) { _Move private function () (
  16. 1 , 5 ) ; _y _getRndRange + = (1, 5);
  17. _getRndRange ( - 50 , 50 ) ) > 0 ) ? 1 : - 1 ; _x + = ((_getRndRange (- 50, 50))> 0)? 1: - 1;
  18. 1 , 5 ) ; _getRndRange _rotation + = (1, 5);
  19. _y > _maxy ) { if (_y> _maxy) (
  20. _interval ) ; clearInterval (_interval);
  21. )
  22. ; updateAfterEvent ();
  23. )
  24. )

La _move() método _move() contiene la inteligencia de la grapa, que es la función de la caída, muy simple. Variando la _x += ((_getRndRange(-50, 50))>0) ? 1 : -1;, función aleatoria _x += ((_getRndRange(-50, 50))>0) ? 1 : -1;, _x += ((_getRndRange(-50, 50))>0) ? 1 : -1;, por ejemplo, mediante la inserción de un _getRndRange(-550, 50), podemos añadir un efecto de viento efecto, que la caída de copos, con una inclinación particular. En particular, nos puede enviar los copos de la derecha y la izquierda con un código como este:

ActionScript
  1. _getRndRange ( _getRndRange ( - 350 , - 50 ) , _getRndRange ( 50 , 350 ) ) ) > 0 ) ? 1 : - 1 ; _x + = ((_getRndRange (_getRndRange (- 350, - 50), _getRndRange (50, 350)))> 0)? 1: - 1;

_rotation += _getRndRange(1, 5); Rotación _rotation += _getRndRange(1, 5); luego le da un detalle más a la pluma en sí.
Cuando creo un arco (ver creaFiocco() función creaFiocco() a continuación), hemos añadido una alpha=90 es un escalar aleatorio, para que los copos de nieve de diferentes tamaños.

ActionScript
  1. / / Crear básicos
  2. función creaFiocco () (
  3. 20 , 100 ) ; var s = randRange (20, 100);
  4. = randRange ( - Math . floor ( ( Stage . width - 320 ) / 2), Math.round((Stage.width + 320) / 2 ) ) ; var x = randRange (- Matemáticas. piso ((ancho Stage. - 320) / 2), Math.round ((Stage.width + 320) / 2));
  5. = - Math . floor ( ( ( Stage . height - 256 ) / 2 ) ) - 10 ; var y = - Matemáticas. piso (((altura Stage. - 256) / 2)) - 10;
  6. "neve" , "neve_" + index , index , { _x : x , _y : y , _xscale : s , _yscale : s , _alpha : 90 } ) ; c_mc. attachMovie ( "nieve", "neve_" + index, índice, (_x: x, _y: y, _x: s, _yscale: S, _alpha: 90));
  7. index + +;
  8. index > 1000 ) { if (index> 1000) (
  9. ; index = 1;
  10. , 2 ) ; createEmptyMovieClip c_mc = ( "c_mc", 2);
  11. )
  12. )

Y eso es todo ... ;) ¿Has olvidado ... Saludos a todos y Felices Fiestas ... ;)

Post relacionados

Fue útil esta información?: Per nientePocoAbbastanzaMoltoMoltissimo
Loading ... Cargando ...

7 comentarios a "Crear un copo de nieve en Flash"

  1. getAvatar 1,0
    06 dic, 2007 Dieg0:

    Comprobar el estado de sitio: http://www.Dieg0.com.ar
    Recuerdos,
    Diego

  2. getAvatar 1,0
    06 dic, 2007 Giovambattista Fazioli:

    @ Diego0: Gracias por los vínculos ;)
    Diego encontró en el lugar de una secuencia de comandos JavaScript que simula la caída de copos de nieve también. La ventaja de utilizar JavaScript es que usted puede poner los copos en nuestra página, que con Flash - si un lado es possibiloe través de la transparencia - entonces, de hecho, impide la selección.

  3. getAvatar 1,0
    09 dic, 2007 Chris:

    Hola Debería haber venido por curiosidad, ya que en MyBlogLog en mi blogghetto. Estoy muy ignorante acerca de flash y sus alrededores, sabía que era escritura de la acción orientada a objetos. ¿Quién sabe cuándo puedo mirar, me atrae :-) Hola hola

  4. getAvatar 1,0
    09 dic, 2007 Giovambattista Fazioli:

    @ Chris: Gracias por su visita! Vi que estás comentario en la programación OO con C + +! Excelente elección. Para manejar bien los conceptos OO seguramente deben estar familiarizados con el C y C + +. Actionscript no es tan puro como el de C + +, aunque cada versión se acerca a la verdad y "estrecha" metodologías de desarrollo OO. Sin embargo, si usted puede trabajar con Flash, incluyendo ActionScript 2.0, seguramente encontrará revelar muchas cosas.

  5. getAvatar 1,0
    27 de octubre 2008 Widget de Navidad: la nieve caída en Flash | Undolog.com:

    [...] Update: Servicio no disponible - Véase Crear un copo de nieve en Flash [...]

  6. getAvatar 1,0
    24 de diciembre 2008 Claudio:

    "En este MovieClip (símbolo) que se han asociado una clase simple CNEV, que crea realmente la inteligencia de ..."
    ¿Ha comenzado a fácilmente y con ilustraciones muy claras, entonces te perdiste un montón de información esencial para un usuario "estándar", ya que crea la clase CNeve Vi cómo se unen al símbolo, pero echo de menos todo lo demás. Arreglista me lo contrario, pero es un pecado.

  7. getAvatar 1,0
    28 de diciembre 2008 Giovambattista Fazioli:

    @ Claudio: Lo que no está claro a usted exactamente? A veces puede parecer que se perdió algún detalle, sin embargo, que por un lado, ciertas "bases" voy a dar por sentado, de lo contrario, debería escribir un manual para cada entrada, y usted puede encontrar muchas otras preguntas en los puestos anteriores, que siempre están aquí, siguiendo el ejemplo de la categoría de ActionScript 3.0 y Flash. Sin embargo, la clase CNeve se asocia con un MovieClip vacío en la biblioteca a través de la ventana Propiedades. Para más detalles véase por ejemplo, ActionScript 3.0: todo con el operador de nuevo. Si usted tiene otras preguntas, escribir a mí también, estaré encantado de responder divisor.

Deja tu comentario

TAG XHTML RESTRICCIONES: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> código de inserción:
 <pre></pre>         // blocco generico [code][/code]       // blocco generico [as][/as]           // Actionscript [css][/css]         // CSS Style Sheet [html][/html]       // HTML [js][/js]           // Javascript [objc][/objc]       // Objective-C [php][/php]         // PHP [sql][/sql]         // SQL