Więcej metoda Math.random () w systemie cząstek
W naszym ostatnim samouczku zakończyliśmy animację opadów śniegu dla naszego układu cząstek Flash CS3. Najpierw stworzyliśmy i animowaliśmy jeden płatek śniegu. Następnie stworzyliśmy wiele animowanych płatków śniegu, aby ukończyć animację opadów śniegu. Jednak podczas testowania filmu nie byliśmy bardzo zadowoleni z rezultatów, ponieważ w lewym dolnym rogu sceny wydaje się, że brakuje płatków śniegu.

Co możemy zrobić, aby dostosować naszą animację? Jak już go zakodowaliśmy, płatek śniegu może rozpocząć swoje życie w dowolnym miejscu na górze sceny w pozycji od 0 do 510 na osi X. Następnie ten płatek śniegu przesuwa się w dół w kierunku kątowym w prawo. Wygląda na to, że właśnie w tym kierunku kątowym brakuje płatków śniegu w lewym dolnym rogu sceny. Możemy usunąć kod, który tworzy ruch kątowy, a nasze płatki śniegu spadną prosto na scenę. Gdybyśmy to zrobili, opad śniegu pokryłby cały etap, ale stracilibyśmy złudzenie wiatru, które symuluje ruch kątowy.

Załóżmy, że chcemy zachować iluzję wiatru i dlatego musimy zachować ruch kątowy. Jak wspomniano powyżej, nasze płatki śniegu mogą zacząć się w dowolnym miejscu na szczycie sceny. Jednak nawet płatki śniegu, które zaczną spadać z lewej strony sceny (w pozycji 0 na osi X) wylądują w dolnej środkowej części sceny, pozostawiając pusty obszar po lewej stronie. Jak możemy zmienić nasz kod, aby niektóre płatki śniegu weszły na scenę w niższym punkcie wzdłuż pionowej osi Y i dlatego spadły na lewy róg sceny. Nie wchodząc w zbyt wiele matematyki w tym samouczku dla początkujących, musimy zacząć tworzyć płatki śniegu poza obszarem sceny po lewej stronie. Chociaż te płatki śniegu będą niewidoczne, gdy zaczną swoje życie, spadną co najmniej w połowie pionowej osi Y, zanim wejdą na scenę i staną się widoczne. W ten sposób zapewniamy, że płatki śniegu spadną w lewym dolnym rogu sceny.

W tej chwili generujemy losową liczbę dla właściwości_Snowflake.x. Pamiętaj, że jest to właściwość _Snowflake.x, która kontroluje początkową pozycję X dla naszych płatków śniegu. Ta pozycja początkowa może być dowolną liczbą od 0 do 510 wzdłuż osi X.

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

Jeśli powiemy Flashowi, aby użył liczby od -350 do 510, płatki śniegu zaczynające się od liczby ujemnej będą płatkami śniegu, które ostatecznie spadną w lewym dolnym rogu sceny. Możemy to zrobić, dodając liczbę -350 do liczby losowej generowanej przez metodę Math.random ().

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

Zmień ten wiersz kodu i przetestuj swój film. Co się stało? Rozwiązaliśmy nasz problem i spowodowaliśmy inny. Teraz w prawym górnym rogu sceny brakuje płatków śniegu. Dlaczego? Największa liczba dla właściwości_Snowflake.x (pozycja płatka śniegu wzdłuż osi X) będzie wynosić 160 (510 - 350). Reszta osi X między 161 a 550 nie ma żadnych płatków śniegu i dlatego w prawym górnym rogu nie ma śniegu. Jak możemy uzyskać liczbę dla właściwości_Snowflake.x w zakresie od 0 do 550? Możemy rozszerzyć zakres liczby losowej od 0 do 900 (550 + 350).

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

Zmień kod i przetestuj ponownie. To działa. Skończyliśmy? Nie, jeśli zezwolisz na uruchomienie tej animacji przez pewien czas, zauważysz, że zaczyna ona wypełniać zasoby komputera. Musimy wprowadzić pewne zmiany w języku ActionScript, aby był on bardziej wydajny.

Uwaga - Ten kod animacji nie jest kompletny, dopóki nie osiągniesz końca serii samouczka. Nie używaj tego niekompletnego kodu w swoich projektach Flash.

Prawa autorskie 2018 Adobe Systems Incorporated. Wszelkie prawa zastrzeżone. Zrzuty ekranowe produktów Adobe zostały przedrukowane za zgodą 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, Fireworks, Contribute, Captivate, Flash Catalyst i Flash Paper jest / są [a] zarejestrowanym znakiem towarowym lub znakami towarowymi Adobe Systems Incorporated w Stanach Zjednoczonych i / lub innych krajach.


Instrukcje Wideo: What is Random? (Może 2024).