Erstellen Sie eine Schneeflocke in Flash
Donnerstag, 6. Dezember, 2007Einige Leser haben mich gefragt, wie es erstellt wurde Schneeflocke, so realistisch, das Widget Weihnachten. Diejenigen, die heruntergeladen haben, die Quelle wahrscheinlich schon weiß ... jedoch war sehr einfach. Zunächst möchte ich den ausgewählten Pinsel-Werkzeug in Flash und ich haben einen Punkt.
![]() | ![]() |
Ich habe diese sich in ein Symbol, und ich habe zwei Effekte, die in die richtige Reihenfolge: Fase und Unschärfe:
![]() | ![]() |
Das Ergebnis war: 
In diesem MovieClip (Symbol) Ich habe im Zusammenhang einer einfachen Klasse CNeve de facto Intelligenz Grundnahrungsmittel von sich selbst:
- { CNEVA Klasse erweitert MovieClip (
- _interval; var private _interval;
- _maxy: Number ; var private _maxy: Zahl;
- / /
- CNEVA Funktion () (
- this , "_move" , 25 ) ; _interval = setInterval (this, "_Move", 25);
- ( ( Stage . height + 256 ) / 2 ) +_getRndRange ( - 20 , - 7 ) ; _maxy = Math. Runde ((Stage. Höhe + 256) / 2) + _getRndRange (- 20 bis 7);
- )
- / /
- _getRndRange ( min : Number , max : Number ) : Number { private Funktion _getRndRange (min: Anzahl, max: Number): Anzahl (
- = Math . floor ( Math . random ( ) * ( max- min + 1 ) ) + min ; var randomNum: Number = Math. Stock (Math. random () * (max-min + 1)) + min;
- randomNum return;
- )
- / /
- _move ( ) { _Move Private function () (
- 1 , 5 ) ; _Y + _getRndRange = (1, 5);
- _getRndRange ( - 50 , 50 ) ) > 0 ) ? 1 : - 1 ; _X + = ((_getRndRange (- 50, 50))> 0)? 1 bis 1;
- 1 , 5 ) ; _rotation + _getRndRange = (1, 5);
- _y>_maxy ) { if (_Y> _maxy) (
- _interval ) ; clearInterval (_interval);
- )
- ; updateAfterEvent ();
- )
- )
Die Methode _move() enthält die Intelligenz der Grundnahrungsmittel, oder dem Fall, sehr einfach. Durch die Veränderung der zufälligen _x += ((_getRndRange(-50, 50))>0) ? 1 : -1;, _x += ((_getRndRange(-50, 50))>0) ? 1 : -1;, durch Aufnahme eines _getRndRange(-550, 50), Wind-Effekt, nämlich die Flocken fallen mit einer bestimmten Neigung. Insbesondere die Flocken können Sie auf beiden Seiten mit einem Code wie folgt aus:
- _getRndRange ( _getRndRange ( - 350 , - 50 ) , _getRndRange ( 50 , 350 ) ) ) > 0 ) ? 1 : - 1 ; _X + = ((_getRndRange (_getRndRange (- 350, - 50), _getRndRange (50, 350)))> 0)? 1 bis 1;
Die Rotation _rotation += _getRndRange(1, 5); gibt weitere Details zum Grundnahrungsmittel sich.
Wenn ich einen Grundnahrungsmittel (siehe Funktion creaFiocco() unten) ich auch angefügt ein alpha=90 einer Skala zufällige, haben Schneeflocken in verschiedenen Größen.
- / / Create Grundnahrungsmittel
- creaFiocco Funktion () (
- 20 , 100 ) ; var s = randRange (20, 100);
- - Math . floor ( ( Stage . width - 320 ) / 2 ) , Math . round ( ( Stage . width + 320 ) / 2 ) ) ; var x = randRange (- Math. floor ((Stage. Breite - 320) / 2), Math. Runde ((Stage. Breite + 320) / 2));
- . floor ( ( ( Stage . height - 256 ) / 2 ) ) - 10 ; var y = - Math. Stock (((Stage. Höhe - 256) / 2)) - 10;
- "neve" , "neve_" + index , index , { _x :x, _y :y, _xscale :s, _yscale :s, _alpha : 90 } ) ; c_mc. attachMovie ( "Schnee", "neve_" + Index, Index, (_X: x, _Y: y, _xscale: s, _yscale: s, _alpha: 90));
- Index + +;
- index> 1000 ) { if (index> 1000) (
- ; Index = 1;
- "c_mc" , 2 ) ; c_mc = createEmptyMovieClip ( "c_mc", 2);
- )
- )
Und das ist alles ...
Vergessen ... Grüße an alle und Happy Ferien ... ![]()























Dieg0 sagte:
Überprüfen Sie meine Website: http://www.Dieg0.com.ar
Grüße,
Diego
Giovambattista Fazioli sagte:
@ Diego0: Vielen Dank für Links
Auf der Website von Diego Javascript ist ein Skript, dass simuliert auch fallen Schneeflocken. Der Vorteil der Verwendung von Javascript ist es, die Flocken auf unserer Seite, die mit Flash - während possibiloe ist durch Transparenz - verhindert, dass dann aus der Auswahl.
Chris sagte:
Es hallo Sohn kam die Suche in vedendoti MyBlogLog auf meinem blogghetto. Es ist ignorant über Blitz und der Umgebung, ich wusste nicht, wurde OOP Aktion Skript. Wer weiß, wann es wird uns einen Blick, was zieht mir!
Hallo hallo
Giovambattista Fazioli sagte:
@ Chris: Vielen Dank für Ihren Besuch! Ich sah, dass Sie comentar in OO-Programmierung mit C + +! Ausgezeichnete Wahl. Um auch OO-Konzepte müssen doch wissen, dass die in C, C + +. Actionscript ist nicht als "reine" wie C + +, obwohl jede Version ist näher und näher an die eigentliche "close" OO Entwicklung von Methoden. Allerdings, wenn Sie können mit Flash, einschließlich Actionscript 2.0, können Sie sicherlich viele Dinge aufschlussreich.
Widget Weihnachten: Schnee, die in Flash | Undolog.com sagte:
[...] Update: Service nicht verfügbar - Siehe Erstellen Sie eine Schneeflocke in Flash [...]