Mer Math.random () -metode i partikkelsystem
I vår siste opplæring fullførte vi snøfallanimasjonen for vårt Flash CS3 partikkelsystem. Først opprettet og animerte vi en snøfnugg. Så laget vi mange animerte snøflak for å fullføre snøfallanimasjonen. Da vi testet filmen, var vi imidlertid ikke veldig fornøyde med resultatene fordi snøfnuggene ser ut til å mangle nede i venstre hjørne av scenen.

Hva kan vi gjøre for å justere animasjonen vår? Slik vi har den kodet nå, kan en snøfnugg begynne livet hvor som helst langs toppen av scenen i en posisjon mellom 0 og 510 på X-aksen. Så tar denne snøfnugg veien nedover i en vinkelretning mot høyre. Det ser ut til at det er denne kantete retningen som fører til at snøfnuggene mangler fra scenen nede til venstre. Vi kan ta ut koden som skaper vinkelbevegelsen, og snøfnuggene våre bare vil falle rett ned på scenen. Hvis vi gjorde dette, ville snøfallet dekke hele scenen, men vi ville miste illusjonen om vind som vinkelbevegelsen simulerer.

La oss anta at vi ønsker å beholde denne illusjonen av vind, og at vi derfor trenger å beholde vinkelbevegelsen. Som vi nevnte ovenfor, kan snøfnuggene begynne hvor som helst på toppen av scenen. Selv snøfnuggene som begynner å falle helt til venstre på scenen (i 0-stillingen på X-aksen) vil imidlertid lande i bunnen av midten av scenen, og forlate venstre område tomt. Hvordan kan vi endre koden vår slik at noen av snøflakene kommer inn på scenen på et lavere punkt langs den vertikale Y-aksen og derfor faller over venstre hjørne av scenen. Uten å gå for mye i matematikk for denne tutorialen for nybegynnere, må vi begynne å lage snøfnugg utenfor sceneområdet til venstre. Selv om disse snøflakene vil være usynlige når de begynner livet, vil de falle minst halvparten av veien ned den vertikale Y-aksen før de kommer inn på scenen og blir synlige. Ved å gjøre dette, forsikrer vi at disse snøflakene vil falle over scenen nedre venstre hjørne.

Akkurat nå genererer vi et tilfeldig tall for egenskapen_Snowflake.x. Husk at det er _Snowflake.x-egenskapen som styrer den opprinnelige X-stillingen for snøfnuggene våre. Denne startposisjonen kan være et hvilket som helst tall mellom 0 og 510 langs X-aksen.

_Snowflake.x = Math.random () * 510;

Hvis vi ber Flash om å bruke et tall mellom -350 og 510, vil snøflakene som begynner med et negativt tall være snøfnuggene som til slutt faller over scenens nedre venstre hjørne. Vi kan gjøre dette ved å legge til et -350 til det tilfeldige tallet som er generert av Math.random () -metoden.

_Snowflake.x = -350 + Math.random () * 510;

Endre denne kodelinjen og test filmen. Hva skjedde? Vi løste problemet og forårsaket et annet. Nå mangler snøfnuggene fra øverste høyre hjørne av scenen. Hvorfor? Det største tallet for eiendommen_Snowflake.x (snøfnuggens plassering langs X-aksen) vil være 160 (510 - 350). Resten av X-aksen mellom 161 og 550 har ingen snøfnugg, og det er grunnen til at øverste høyre hjørne er tom for snø. Hvordan kan vi få tallet for egenskapen_Snowflake.x til å variere mellom 0 og 550? Vi kan utvide rekkevidden for det tilfeldige tallet til mellom 0 og 900 (550 + 350).

_Snowflake.x = -350 + Math.random () * 900;

Endre koden og test igjen. Det fungerer. Er vi ferdige? Nei, hvis du lar denne animasjonen løpe i noen tid, vil du merke at den begynner å oppgave datamaskinens ressurser. Vi må gjøre noen endringer i ActionScript for å gjøre det mer effektivt.

Merk - Denne animasjonskoden er ikke fullført før du kommer til slutten av opplæringsserien. Ikke bruk denne ufullstendige koden i Flash-prosjektene dine.

Copyright 2018 Adobe Systems Incorporated. Alle rettigheter forbeholdt. Adobes produktskjermbilder er skrevet ut på nytt med tillatelse fra Adobe Systems Incorporated. Adobe, Photoshop, Photoshop Album, Photoshop Elements, Illustrator, InDesign, GoLive, Acrobat, Cue, Premiere Pro, Premiere Elements, Bridge, After Effects, InCopy, Dreamweaver, Flash, ActionScript, Fyrverkeri, Bidra, Captivate, Flash Catalyst og Flash Paper er / er enten [a] registrert varemerke [s] eller et varemerke [s] fra Adobe Systems Incorporated i USA og / eller andre land.


Video Instruksjoner: How Laser Tattoo Removal Works - Smarter Every Day 123 (Mars 2024).