Flash CS3 ActionScript 3 részecskerendszer
A többi hibaüzenet azért történt, mert eltávolítottuk a havazás funkciót a hópehely funkcióból. Emiatt a havazás funkció nem ismeri a hópelyhek felismerését. Meg kell változtatnunk a havazás funkciókódját, hogy felismerjük, hogy felismeri az éppen létrehozott hópehelyet. Az "_Snowflake" -et "event.target" -re változtatjuk a négy helyszínen.

Van még egy javítás, mielőtt újra kipróbálhatjuk a filmünket. Térjünk vissza a hópehely funkciókódhoz. A kódban szereplő eseményfigyelő hívja a havazás funkciót. De még mindig hallgatja a színpadot. Ezt meg kell változtatnunk úgy, hogy az Esemény-figyelőt minden létrehozott új hópehelyhez csatoljuk, és nem az animáció minden egyes új keretéhez. Az Esemény-figyelő kód elején váltson a "színpadra" a "_Snowflake" -re.

Tesztelje újra. Nincs hiba, és mind a 70 hópehely leesett a színpad aljára. De akkor az animáció leáll, mert a kezdeti 70 hópehely után nem hozunk létre új hópelyheket. Hozzá kell adnunk néhány kódot, amely újra felhasználja ezeket a 70 hópelyheket a színpad tetejére. Amint ezeket a hópelyheket visszavisszük a tetejére, használjuk ugyanazt a Math.random () kódot, amelyet a hópehely funkcióban használtunk az újrahasznosított hópelyhek véletlenszerű elhelyezése céljából. De ezúttal az "event.target" -et kell használni a "_Snowflake" helyett.

Végül el kell távolítanunk az removeEventListener kódot a havazás funkcióból. Többé nem akarjuk megakadályozni, hogy hópelyhek leesjenek. Azt akarjuk, hogy menjenek a tetejére és ismét esjenek le. Itt van a feltételes utasítás új kódja.

Vizsgálja meg újra, és látni fogja, hogy 70 hópehely esik felülről a színpadra, majd az újrahasznosított hópelyhek követik. De van néhány másodperc, mielőtt az újrahasznosított hópelyhek esni kezdenek. Sokkal simább animáció lenne, ha megváltoztathatnánk a kódot úgy, hogy a kezdeti 70 hópehely az egész színpadon helyezkedjen el, nem csak a tetején. Térjünk vissza a hópehely funkcióhoz és változtassuk meg a "40" -ről "400" -ra a_Snowflake.y tulajdonság számára. Ez a 70 kezdeti hópelyheket véletlenszerűen 0 és 400 közötti helyre helyezi az Y tengely mentén, amely lefedi az egész fázist.

Próbáld újra, és sikerünk van. Mentse el a hó jelenetét a SnowScene10.fla néven.

Most optimalizáltuk és tökéletesen animáljuk animációinkat, itt megállhatunk. De csak néhány változtatással módosíthatjuk ezt a kódot modulárisabb részecskerendszerré. Akkor felhasználhatjuk a kódot, hogy bármit is készítsünk az esőtől a sertésekig az égből. Ezt a következőt fogjuk megtenni.

← Vissza

Szerzői jog 2018 Adobe Systems Incorporated. Minden jog fenntartva. Az Adobe termék képernyőképe (i) újra kinyomtatva az Adobe Systems Incorporated engedélyével. Adobe, Photoshop, Photoshop Album, Photoshop Elements, Illustrator, InDesign, GoLive, Acrobat, Cue, Premiere Pro, Premiere Elements, Bridge, After Effects, InCopy, Dreamweaver, Flash, ActionScript, Fireworks, Contribute, Captivate, Flash Catalyst és Flash Paper vagy bejegyzett védjegy (ek) vagy az Adobe Systems Incorporated védjegye (i) az Egyesült Államokban és / vagy más országokban.