A wodospad to punkt w rzece lub strumieniu, w którym woda przepływa przez jeden lub więcej pionowych spadków do zbiornika wodnego. Doświadczenia często obejmują wodospady dla estetyki wizualnej, aby poprawić otoczenie lub stworzyć punkt wizualny, lub z funkcjonalnych powodów w rozgrywce, aby ukryć zasoby lub przejść graczy między różnymi obszarami w samym miejscu.
Używając pliku Waterfall Island .rbxl jako odniesienia, ten poradnik pokazuje, jak stworzyć wodospad z obiektami VFX, które reprezentują rzeczywiste zachowanie fizyczne, w tym wskazówki dotyczące:
- Rozkładania materiałów referencyjnych na poszczególne komponenty z odmiennymi cechami wizualnymi i behawioralnymi.
- Konfigurowania kaskad, które spadają z różnymi szybkościami, aby emulować rozszerzającą się wodę, gdy opada z klifu.
- Konfigurowania rozbryzgów, aby emulować wodę atomizującą się, gdy kaskady uderzają w podłoże.
- Konfigurowania białej wody, aby emulować wzburzoną, napowietrzoną wodę, gdy wypływ uderza w głazy.
- Konfigurowania piany, aby emulować falę kapilarną łamiącą napięcie powierzchniowe.
- Konfigurowania mgły, aby emulować parę mgłową unoszącą się i wznoszącą od punktu uderzenia, tworząc tęczę, którą gracze mogą zobaczyć z każdej strony.
Rozłożenie odniesienia
Aby stworzyć wiarygodne wodospady, ważne jest, aby w procesie projektowania odwoływać się do naturalnych cech świata rzeczywistego, ponieważ pozwala to rozłożyć temat na poszczególne komponenty z odmiennymi cechami wizualnymi i behawioralnymi. Na przykład, przykładowe doświadczenie Waterfall Island odnosi się do Snoqualmie Falls w stanie Waszyngton, aby informować o wszystkich decyzjach dotyczących tekstur i projektowania VFX związanych z wodospadem i jego otaczającym terenem.

Chociaż wodospad jest ciągłym i powiązanym strumieniem wody, który obejmuje wiele stanów materii z dynamicznym ruchem cieczy i powietrza, przydatne jest rozłożenie tego złożonego systemu na poszczególne komponenty, aby móc zaplanować, jak wykorzystać różne obiekty VFX do naśladowania ich rzeczywistych odpowiedników. Aby to zademonstrować, ten poradnik dzieli przykładowy wodospad na pięć unikalnych komponentów:
- Kaskady – Woda spadająca z klifu.
- Rozbryzgi – Woda, która rozpryskuje się, gdy kaskady zderzają się z podłożem.
- Biała woda – Wzburzona woda, która powstaje, gdy źródło wody zbliża się do krawędzi klifu.
- Piana – Napowietrzona woda, która rozprzestrzenia się poziomo po zderzeniu kaskad z wodami spadającymi.
- Mgła – Wodna chmura, która paruje w powietrzu w wyniku całego wodospadu.


Poniższe sekcje dostarczają dogłębnej analizy różnych decyzji projektowych i technik, których możesz użyć, aby odtworzyć każdy z tych komponentów wodospadu, które składają się na główny spadek w 3D przestrzeni przykładu. Przeglądając te decyzje i eksperymentując z różnymi właściwościami Beam i ParticleEmitter, dowiesz się, jak wykorzystać VFX, aby rozwiązać unikalne wymagania środowiskowe dla własnych doświadczeń.
Konfiguracja kaskad
Kaskada to spadająca woda, która zjeżdża po krawędzi klifów lub skał do podłożonych zbiorników. Kaskady spadają w różnych szybkościach, w zależności od obu ich objętości wody i skali spadku do zbiornika. Na przykład, główny spadek w próbce wydaje się spadać wolniej, ponieważ ma dużą objętość wody spadającej na dużą odległość, ale drugi spadek w próbce wydaje się spadać szybciej, ponieważ mniejsza objętość wody spada na krótką odległość.
Co więcej, wodospady często mają warstwy kaskad, które spadają w różnych szybkościach, ponieważ woda się rozwidla, gdy opada do zbiornika. Aby zademonstrować tę zasadę, próbka korzysta z wielu obiektów Beam z ciągłymi teksturami, które renderują się między obiektami Attachment z różnymi prędkościami i długościami. Oprócz nadawania głównemu spadkowi bardziej realistycznego zachowania opadania, ta technika tworzy również iluzję paralaksy, aby kaskada wydawała się mieć głębię i objętość, mimo że jest tylko obrazem 2D.
Aby odtworzyć kaskady dla głównego spadku w przykładowym pliku Waterfall Island:
Stwórz wypływ dla spadającej wody.
W oknie Explorer stwórz Folder w Workspace, aby pomieścić wszystkie obiekty wypływu, a następnie nazwij folder Outflow.
Wstaw dwa części block do folderu Outflow, a następnie nazwij je OutflowStart i OutflowStop.
Przesuń OutflowStart tam, gdzie chcesz, aby zaczynał się wypływ, i przesuń OutflowStop do krawędzi klifu.

Wstaw załącznik do obu, OutflowStart i OutflowStop, a następnie obróć załączniki tak, aby żółta pomoc wizualna wskazywała w górę.

Wstaw Beam do folderu Outflow, a następnie nazwij go OutflowWater.
Przypisz każdy załącznik części do OutflowWater.
- W oknie Explorer wybierz OutflowWater.
- W oknie Właściwości,
- Ustaw Attachment0 na załącznik w OutflowStart.
- Ustaw Attachment1 na załącznik w OutflowStop. Belka renderuje swoją domyślną teksturę między dwoma załącznikami.

Dostosuj wizualny wygląd belki, aby wyglądała jak płynąca woda zbliżająca się do krawędzi klifu.
- W oknie Explorer upewnij się, że OutflowWater wciąż jest wybrane.
- W oknie Właściwości,
Ustaw Texture na rbxassetid://4787437624, aby renderować nową teksturę, która wygląda jak płynąca piana.
Ustaw Width0 na 60, aby poszerzyć teksturę z osi, na której zaczyna się renderować.
Ustaw Width1 na 20, aby zawęzić teksturę do krawędzi klifu.
Ustaw TextureSpeed na 0.4, aby spowolnić przepływ tekstury.
Ustaw TextureLength na 64, aby wydłużyć długość tekstury.
Ustaw TextureMode na Wrap, aby powtórzyć teksturę do długości belki w świecie 3D między załącznikami podzieloną przez TextureLength. To pozwala teksturze wyglądać znacznie bardziej realistycznie dla płynącej wody.
Ustaw Color na sekwencję kolorów, która przechodzi od ciemnych i jasnych niebieskich do białego.
Kliknij właściwość Color, a następnie kliknij przycisk ⋯. Wyświetli się okno podręczne sekwencji kolorów.

Każdy trójkąt na dolnej osi sekwencji kolorów to punkt kluczowy, który określa wartość koloru tej właściwości w danym momencie życia cząstki.
Ustaw następujące właściwości czasu i wartości w całej sekwencji kolorów:
- Czas = 0, Wartość RGB = 208, 247, 255
- Czas = 0.135, Wartość RGB = 146, 235, 255
- Czas = 0.248, Wartość RGB = 255, 255, 255
- Czas = 0.384, Wartość RGB = 128, 183, 202
- Czas = 0.757, Wartość RGB = 166, 213, 248
- Czas = 1, Wartość RGB = 255, 255, 255

Ustaw Transparency na sekwencję liczbową, która sprawia, że woda staje się bardziej żywa, gdy zbliża się do krawędzi klifu.
Kliknij właściwość Transparency, a następnie kliknij przycisk ⋯. Wyświetli się okno sekwencji liczbowej. Domyślnie wykres to prosta linia, a obraz pozostaje w tej samej przezroczystości od lewej do prawej.

Każdy kwadrat na początku i końcu sekwencji liczbowej to punkt kluczowy, który określa wartość przezroczystości tej właściwości w danym punkcie tekstury od lewej do prawej.
Ustaw następujące właściwości czasu i wartości w całej sekwencji liczbowej:
- Czas = 0, Wartość = 1
- Czas = 0.375, Wartość = 0.725
- Czas = 0.615, Wartość = 0
- Czas = 0.92, Wartość = 1
- Czas = 1, Wartość = 1

Skaluj każdą część, aby upewnić się, że tekstura pokrywa szerokość basenu wypływu. Wypływ wydaje się teraz płynąć w kierunku krawędzi klifu ze wszystkich kątów.
Stwórz szybko płynącą wodę kaskadową ze głównego spadku.
W oknie Explorer stwórz Folder w Workspace, aby pomieścić wszystkie obiekty kaskadowe, a następnie nazwij folder Cascades.
Wstaw dwie części block do folderu Cascades, a następnie nazwij je MainDropStart i MainDropStop.
Przesuń MainDropStart do krawędzi klifu, a MainDropStop do miejsca pod zbiornikiem.

Skonfiguruj załączniki dla wszystkich strumieni kaskadowych wody z głównego spadku, które mają się renderować.
- Wstaw załącznik do MainDropStart, a następnie obróć załącznik, aż żółta pomoc wizualna będzie wskazywała od klifu.
- Wstaw załącznik do MainDropStop, a następnie obróć załącznik, aż żółta pomoc wizualna będzie wskazywała w kierunku klifu.

Wstaw Beam do folderu Cascades, a następnie nazwij go FastDrop.
Przypisz każdy załącznik części do FastDrop.
- W oknie Explorer wybierz FastDrop.
- W oknie Właściwości,
- Ustaw Attachment0 na załącznik w MainDropStart.
- Ustaw Attachment1 na załącznik w MainDropStop. Belka renderuje swoją domyślną teksturę między dwoma załącznikami.

Dostosuj wizualny wygląd belki, aby wyglądała jak szybko płynąca woda kaskadowa z głównego spadku.
W oknie Explorer upewnij się, że FastDrop wciąż jest wybrane.
W oknie Właściwości,
- Ustaw Texture na rbxassetid://16808804567, aby renderować nową teksturę, która wygląda jak płynąca woda.
- Ustaw Width0 na 5, aby poszerzyć teksturę z osi, na której zaczyna się renderować.
- Ustaw Width1 na 10, aby poszerzyć teksturę, gdy dotyka zbiornika.
- Ustaw CurveSize0 na 10, aby wygiąć teksturę z dala od klifu.
- Ustaw CurveSize1 na 20, aby wygiąć teksturę w zbiornik.
- Ustaw TextureSpeed na 1.3, aby tekstura płynęła szybko.
- Ustaw TextureLength na 2, aby nieco wydłużyć długość tekstury.
- Ustaw Color na sekwencję kolorów, która przechodzi od ciemnych i jasnych niebieskich do białego.
- Czas = 0, Wartość RGB = 208, 247, 255
- Czas = 0.135, Wartość RGB = 210, 246, 255
- Czas = 0.25, Wartość RGB = 255, 255, 255
- Czas = 0.384, Wartość RGB = 163, 187, 202
- Czas = 0.757, Wartość RGB = 214, 229, 248
- Czas = 1, Wartość RGB = 255, 255, 255

- Ustaw Transparency na sekwencję liczbową, która pozwala wodzie kaskadowej być bardziej żywej między punktami załącznika.
- Czas = 0, Wartość = 1
- Czas = 0.115, Wartość = 0
- Czas = 0.835, Wartość = 0
- Czas = 0.881, Wartość = .994
- Czas = 1, Wartość = 1

- Ustaw ZOffset na 2, aby przesunąć teksturę trochę dalej od klifu.
- Włącz FaceCamera, aby upewnić się, że kaskadowa woda jest widoczna, niezależnie od kąta gracza względem wody.
Stwórz wolno płynącą wodę kaskadową z głównego spadku.
Skopiuj FastDrop, a następnie zmień nazwę skopiowanej belki na SlowDrop.
Dostosuj wizualny wygląd belki, aby wyglądała jak wolno płynąca woda kaskadowa z głównego spadku.
- W oknie Explorer wybierz SlowDrop.
- W oknie Właściwości,
- Ustaw Width1 na 20, aby jeszcze bardziej poszerzyć teksturę, gdy dotyka zbiornika.
- Ustaw TextureLength na 1.5, aby nieco skrócić długość tekstury.
- Ustaw TextureSpeed na 1, aby tekstura płynęła mniej szybko.
- Ustaw ZOffset na 0, aby pozwolić teksturze płynąć bezpośrednio z krawędzi klifu.
W oknie Explorer wybierz wszystkie części blokowe w folderze Outflow, a następnie w oknie Właściwości ustaw Transparency na 1, aby uczynić bloki niewidocznymi.
Konfiguracja rozbryzgów
Gdy kaskady uderzają w gęstość podłoża, woda wystrzeliwuje w górę z punktu uderzenia, aby utworzyć rozbryzgi. Gdy ta aerozolowana woda wystrzeliwuje w górę, rozszerza się i rozdziela, produkując krople, które rozprzestrzeniają się w różnych kierunkach.
Aby zademonstrować ten proces, próbka wykorzystuje dwa obiekty ParticleEmitter u podstawy głównego spadku. Pierwszy emitent cząstek emituje cząstki, które wyglądają jak gęste rozbryzgi, które reprezentują wagę wody, która zaczyna unosić się w górę, gdy kaskady uderzają w zbiornik. Drugi emitent cząstek emituje cząstki, które wyglądają jak krople, reprezentujące wodę stającą się aerozolową.
Gdy konfiguruje się te emitery cząstek do emisji obu cząstek w tym samym czasie, ale w różnych szybkościach, powstający efekt wizualny naśladuje rzeczywiste zachowanie fizyczne rozbryzgów. Te rodzaje detali przyczyniają się do realizmu Twojego VFX i zanurzają graczy w przestrzeni 3D.


Aby odtworzyć rozbryzgi u podstawy głównego spadku w przykładowym pliku Waterfall Island:
W oknie Explorer stwórz Folder w Workspace, aby pomieścić wszystkie obiekty rozbryzgów, a następnie nazwij folder Splashes.
Wstaw część block do Splashes, a następnie nazwij ją MainDropSplashes.
Ustaw i skaluj MainDropSplashes na pełną powierzchnię, gdzie kaskada uderza w zbiornik.

Stwórz gęsty rozbryzg, gdzie kaskadowa woda z głównego spadku wpływa w zbiornik.
Wstaw ParticleEmitter do MainDropSplashes, a następnie nazwij emitter SplashDense.
Wybierz SplashDense, a następnie w oknie Właściwości,
- Ustaw Texture na rbxassetid://16829556885, aby renderować cząstki, które wyglądają jak gęste rozbryzgi.
- Ustaw Color na sekwencję kolorów, która zaczyna się od niebieskiego, a następnie staje się biała.
- Czas = 0, Wartość RGB = 189, 246, 255
- Czas = 1, Wartość RGB = 255, 255, 255

- Ustaw Size na sekwencję liczbową, która stopniowo zwiększa się w rozmiarze z oknem zmienności.
- Czas = 0, Wartość = 1.81, Envelope = 0.562
- Czas = 1, Wartość = 5.75, Envelope = 1.31

- Ustaw Transparency na sekwencję liczbową, w której cząstki zaczynają jako przezroczyste, stają się nieprzezroczyste, a następnie ponownie przezroczyste w ciągu ich życia z dużym oknem zmienności.
- Czas = 0, Wartość = 1, Envelope = 0
- Czas = 0.5, Wartość = 0.181, Envelope = 0.181
- Czas = 1, Wartość = 1, Envelope = 0

- Ustaw Lifetime na 0.25, 0.35, aby losowo ustawić czas życia każdej cząstki między 250 a 350 milisekundami.
- Ustaw Rate na 30, aby emitować 30 cząstek na sekundę.
- Ustaw Rotation na -45, 45, aby losowo zorientować każdą cząstkę między -45 a 45 stopni na sekundę.
- Ustaw RotSpeed na -40, 40, aby losowo emitować każdą cząstkę między -45 a 40 stopni na sekundę.
- Ustaw Speed na 20, 35, aby losowo emitować każdą cząstkę między 20 a 35 studami na sekundę.
- Ustaw SpreadAngle na 50, 50, aby emitować cząstki pod kątem wzdłuż osi X i Z.
- Ustaw Acceleration na 0, -40, 0, aby symulować grawitację i pociągnąć cząstki w dół.
- Ustaw LightEmission na 0.5, aby rozjaśnić cząstki.
- Ustaw LightInfluence na 0.1, aby znacznie zmniejszyć, jak bardzo światło otoczenia wpływa na kolor cząstek.
Stwórz krople, gdzie kaskadowa woda z głównego spadku wpływa w zbiornik.
Skopiuj SplashDense, a następnie zmień nazwę na SplashDroplets.
Wybierz SplashDroplets, a następnie w oknie Właściwości,
- Ustaw Texture na rbxassetid://17082061238, aby renderować cząstki, które wyglądają jak krople.
- Ustaw Size na sekwencję liczbową, która szybko zwiększa się w rozmiarze z oknem zmienności.
- Czas = 0, Wartość = 1.81, Envelope = 0.562
- Czas = 1, Wartość = 8.69, Envelope = 1.31

- Ustaw Transparency na sekwencję liczbową, w której cząstki zaczynają jako przezroczyste, szybko stają się nieprzezroczyste, a następnie powoli zaczynają ponownie stawać się przezroczyste w pobliżu środka ich życia.
- Czas = 0, Wartość = 1, Envelope = 0
- Czas = 0.104, Wartość = 0.0625, Envelope = 0.0625
- Czas = 0.429, Wartość = 0.0562, Envelope = 0.0562
- Czas = 1, Wartość = 1, Envelope = 0

- Ustaw Lifetime na 0.15, 0.6, aby losowo ustawić czas życia każdej cząstki między 150 a 600 milisekundami.
- Ustaw Rate na 20, aby emitować 20 cząstek na sekundę.
W oknie Explorer wybierz wszystkie części blokowe w folderze Splashes, a następnie w oknie Właściwości ustaw Transparency na 1, aby uczynić bloki niewidocznymi.
Konfiguracja białej wody
Biała woda powstaje, gdy źródło wody staje się bardziej wzburzone w miarę przyspieszania przy opadaniu i kolidowania z obiektami na swojej drodze. To skutkuje napowietrzoną, włóknistą wodą, która wydaje się biała z powodu większej ilości bąbelków powietrza w źródle wody.
Aby naśladować ten proces, próbka używa dwóch obiektów ParticleEmitter, które emitują cząstki, które wyglądają jak mocno napowietrzone rozbryzgi, gdy wypływ uderza w głazy na krawędzi klifu. Emitury nie korzystają z wbudowanego oświetlenia, a zamiast tego priorytetowo traktują białe i szare odcienie z różnymi prędkościami opadania, aby wykazać ilość powietrza w źródle wody.

Aby odtworzyć białą wodę, gdy wypływ koliduje z głazami klifu w przykładowym pliku Waterfall Island:
W oknie Explorer stwórz Folder w Workspace, aby pomieścić wszystkie obiekty białej wody, a następnie nazwij folder WhiteWater.
Wstaw część block do WhiteWater, a następnie nazwij ją MainDropWW.
Ustaw i skaluj MainDropWW na pełną powierzchnię, gdzie wypływ zaczyna przepływać przez klif.

Stwórz mniej wzburzoną białą wodę, gdy główny wypływ zderza się z otaczającymi głazami.
Wstaw ParticleEmitter do MainDropWW, a następnie nazwij emitter GentleWW.
Wybierz GentleWW, a następnie w oknie Właściwości,
- Ustaw Texture na rbxassetid://16808075391, aby renderować cząstki, które wyglądają jak włókniste rozbryzgi.
- Ustaw Color na sekwencję kolorów, która zaczyna się od niebieskiego, a następnie staje się biała.
- Czas = 0, Wartość RGB = 189, 246, 255
- Czas = 1, Wartość RGB = 255, 255, 255

- Ustaw Size na sekwencję liczbową, która stopniowo zwiększa się w rozmiarze z oknem zmienności.
- Czas = 0, Wartość = 1.13, Envelope = 0.562
- Czas = 1, Wartość = 5.56, Envelope = 0.563

- Ustaw Transparency na sekwencję liczbową, w której cząstki zaczynają jako przezroczyste, stają się o połowę nieprzezroczyste, a następnie mają niewielkie szczyty, aby ponownie stać się przezroczyste w całym swoim życiu.
- Czas = 0, Wartość = 1, Envelope = 0
- Czas = 0.143, Wartość = 0.462, Envelope = 0.0625
- Czas = 0.336, Wartość = 0.462, Envelope = 0.0562
- Czas = 0.622, Wartość = 0.788, Envelope = 0.0538
- Czas = 1, Wartość = 1, Envelope = 0

- Ustaw ZOffset na 2, aby przesunąć teksturę, by była nieco dalej od klifu.
- Ustaw Lifetime na 1.25, 1.5, aby losowo ustawić czas życia każdej cząstki między 1250 a 1500 milisekundami.
- Ustaw Rate na 12, aby emitować 12 cząstek na sekundę.
- Ustaw Rotation na -45, 45, aby losowo zorientować każdą cząstkę między -45 a 45 stopni na sekundę.
- Ustaw RotSpeed na -40, 40, aby losowo emitować każdą cząstkę między -45 a 40 stopni na sekundę.
- Ustaw Speed na 15, 18, aby losowo emitować każdą cząstkę między 20 a 35 studami na sekundę.
- Ustaw SpreadAngle na 5, 5, aby emitować cząstki pod małym kątem wzdłuż osi X i Z.
- Ustaw Acceleration na 0, -35, 0, aby symulować grawitację i pociągnąć cząstki w dół.
- Ustaw Drag na 0.25, aby cząstki traciły swoją prędkość z wykładniczym spadkiem.
- Ustaw LightEmission na 0.6, aby rozjaśnić cząstki.
- Ustaw LightInfluence na 0.1, aby znacznie zmniejszyć, jak bardzo światło otoczenia wpływa na kolor cząstek.
Stwórz bardziej wzburzoną białą wodę, gdzie główny wypływ zderza się z otaczającymi głazami.
Skopiuj GentleWW, a następnie zmień nazwę na TurbulentWW.
Wybierz TurbulentWW, a następnie w oknie Właściwości,
- Ustaw Size na sekwencję liczbową, która subtelnie zwiększa się w rozmiarze z oknem zmienności.
- Czas = 0, Wartość = 1.6, Envelope = 0.562
- Czas = 1, Wartość = 2.63, Envelope = 0.563

- Ustaw Transparency na sekwencję liczbową, w której cząstki zaczynają jako przezroczyste, stają się nieprzezroczyste, a następnie ponownie stają się przezroczyste w pobliżu środka ich życia.
- Czas = 0, Wartość = 1, Envelope = 0
- Czas = 0.156, Wartość = 0.0437, Envelope = 0.0437
- Czas = 0.55, Wartość = 0.075, Envelope = 0.0252
- Czas = 1, Wartość = 1, Envelope = 0

- Ustaw Lifetime na 0.25, 0.5, aby losowo ustawić czas życia każdej cząstki między 250 a 500 milisekundami.
- Ustaw Rate na 20, aby emitować 20 cząstek na sekundę.
- Ustaw Speed na 5, 6, aby losowo emitować każdą cząstkę między 5 a 6 studami na sekundę.
- Ustaw Acceleration na 0, -15, 0, aby symulować grawitację i pociągnąć cząstki w dół.
W oknie Explorer wybierz wszystkie części blokowe w folderze WhiteWater, a następnie w oknie Właściwości ustaw Transparency na 1, aby uczynić bloki niewidocznymi.
Konfiguracja piany
W przeciwieństwie do rozbryzgów, które wystrzeliwują w górę, gdy kaskady uderzają w zbiornik, piana to napowietrzona woda, która falując rozprzestrzenia się od bazy punktu uderzenia. Podobnie jak rozbryzgi, piana rozprzestrzenia się i zrywa z siebie na włókniste krople, gdy staje się aerozolowa.
Aby naśladować ten efekt, próbka wykorzystuje obiekt ParticleEmitter, aby emitować cząstki, które wyglądają jak fale piany, i emituje je powoli równolegle do zbiornika. Pozwala to cząstkom emulować wizualny i behawioralny efekt fali kapilarnej łamiącej napięcie powierzchniowe podległej wody.

Aby odtworzyć pianę u podstawy głównego spadku w przykładowym pliku Waterfall Island:
W oknie Explorer stwórz Folder w Workspace, aby pomieścić wszystkie obiekty piany, a następnie nazwij folder Foam.
Wstaw część block do Foam, a następnie nazwij ją MainDropFoam.
Ustaw i skaluj MainDropFoam na pełną powierzchnię, gdzie najgęstsza część głównej kaskady uderza w zbiornik.

Wstaw ParticleEmitter do MainDropFoam, a następnie nazwij emitter FoamRipples.
W oknie Explorer wybierz FoamRipples, a następnie w oknie Właściwości,
Ustaw Texture na rbxassetid://16811365086, aby renderować cząstki, które wyglądają jak fale piany.
Ustaw Orientation na VelocityPerpendicular, aby emitować cząstki prostopadle do kierunku ich ruchu.
Ustaw Transparency na sekwencję liczbową, w której cząstki zaczynają jako przezroczyste, szybko stają się nieprzezroczyste, a następnie szybko ponownie stają się przezroczyste na końcu swojego życia.
- Czas = 0, Wartość = 1, Envelope = 0
- Czas = 0.143, Wartość = 0.119, Envelope = 0.1
- Czas = 0.664, Wartość = 0.125, Envelope = 0.112
- Czas = 1, Wartość = 1, Envelope = 0

Ustaw Lifetime na 0.5, 0.7, aby losowo ustawić czas życia każdej cząstki między 500 a 700 milisekundami.
Ustaw Rate na 5, aby emitować 5 cząstek na sekundę.
Ustaw Rotation na 0, 360, aby losowo zorientować każdą cząstkę w kole od punktu emisji.
Ustaw RotSpeed na -15, 15, aby losowo emitować każdą cząstkę między -15 a 15 stopniami na sekundę.
Ustaw Speed na 0, .01, aby losowo emitować każdą cząstkę między 0 a .01 studami na sekundę.
Ustaw LightEmission na 0.25, aby delikatnie rozjaśnić cząstki.
Ustaw LightInfluence na 0, aby zapobiec wpływaniu światła otoczenia na kolor cząstek.
W oknie Command Bar wpisz następujący ciąg, aby zwiększyć rozmiar każdej cząstki z 5 do 20 studów w ciągu ich życia z niewielkim oknem zmienności:
workspace.Foam.MainDropFoam.FoamRipples.Size = NumberSequence.new{NumberSequenceKeypoint.new(0,5,0), NumberSequenceKeypoint.new(1,20,5)}W oknie Explorer wybierz wszystkie części blokowe w folderze Foam, a następnie w oknie Właściwości ustaw Transparency na 1, aby uczynić bloki niewidocznymi.
Konfiguracja mgły
Gdy kaskady uderzają w zbiornik, część wody paruje i kondensuje w chłodnym, wilgotnym powietrzu, tworząc mgłę. Opary mgły nie łapią światła w ten sam sposób, w jaki robią to twarde powierzchnie; zamiast tego, odzwierciedlają światło w często nieoczekiwany sposób, aby wydawały się jasne w całym otoczeniu, dopóki całkowicie się nie odparują.
Próbka naśladuje ten proces, używając dwóch obiektów ParticleEmitter u podstawy spadku. Pierwszy emitent cząstek energicznie emituje cząstki z dala od punktu uderzenia i klifu, a drugi emituje cząstki, które powoli unoszą się w kierunku nieba. Cząstki obu emitentów są jasne na początku swojego życia, a następnie stopniowo stają się przezroczyste pod koniec swojego życia, gdy odparowują.
Podobnie jak w rzeczywistości, proces parowania mgły pozwala tworzyć tęczę, gdy światło odbija się od małych kropli wody, co próbka również emuluje za pomocą obiektu ParticleEmitter, który emituje cząstki tęczy o krótkiej żywotności. Te cząstki zwracają się w stronę kamery, niezależnie od kąta gracza względem wodospadu, aby stworzyć iluzję optyczną światła łapiącego na samej parze.


Aby odtworzyć mgłę, która porusza się na zewnątrz i w górę z podstawy głównego spadku w przykładowym pliku Waterfall Island:
W oknie Explorer stwórz Folder w Workspace, aby pomieścić wszystkie obiekty powiązane z mgłą, a następnie nazwij folder Mist.
Stwórz mgłę, która promieniuje z uderzenia kaskady w zbiornik.
Wstaw część block do Mist, a następnie nazwij ją BaseMist.
Ustaw, skieruj i skaluj BaseMist, aby była skierowana z dala od najgęstszej części miejsca, gdzie główna kaskada uderza w zbiornik.

Wstaw ParticleEmitter do BaseMist, a następnie nazwij emitter Mist.
Wybierz Mist, a następnie w oknie Właściwości,
- Ustaw Texture na rbxassetid://16830667309, aby renderować cząstki, które wyglądają jak gęsta mgła.
- Ustaw Color na sekwencję kolorów, która zaczyna się od niebieskiego, a następnie staje się biała.
- Czas = 0, Wartość RGB = 171, 244, 255
- Czas = 0.339, Wartość RGB = 251, 254, 255
- Czas = 1, Wartość RGB = 255, 255, 255

- Ustaw Size na sekwencję liczbową, która stopniowo zwiększa się w rozmiarze.
- Czas = 0, Wartość = 8, Envelope = 0
- Czas = 1, Wartość = 10, Envelope = 0

- Ustaw Transparency na sekwencję liczbową, w której cząstki zaczynają jako przezroczyste, szybko stają się nieprzezroczyste, a następnie szybko ponownie stają się przezroczyste w ciągu swojego życia.
- Czas = 0, Wartość = 1, Envelope = 0
- Czas = 0.0971, Wartość = 0.8, Envelope = 0.0625
- Czas = 1, Wartość = 1, Envelope = 0

- Ustaw ZOffset na 2, aby przesunąć teksturę, by była nieco dalej od zbiornika.
- Ustaw Lifetime na 0.5, 1, aby losowo ustawić czas życia każdej cząstki między 500 a 1000 milisekund.
- Ustaw Rate na 20, aby emitować 20 cząstek na sekundę.
- Ustaw Rotation na -360, 360, aby losowo zorientować każdą cząstkę w kole.
- Ustaw RotSpeed na -50, 50, aby losowo emitować każdą cząstkę między -50 a 50 stopniami na sekundę.
- Ustaw Speed na 35, 50, aby losowo emitować każdą cząstkę między 35 a 50 studami na sekundę.
- Ustaw SpreadAngle na 25, 25, aby emitować cząstki pod małym kątem wzdłuż osi X i Z.
- Ustaw Acceleration na -10, -25, -10, aby symulować wpływ wybuchu rozprysku z podstawy zbiornika.
- Ustaw Drag na 1.5, aby cząstki traciły swoją prędkość z wykładniczym spadkiem.
Stwórz mgłę, która unosi się w górę z zbiornika.
- Skopiuj BaseMist, a następnie zmień nazwę na RiseMist.
- Ustaw RiseMist tak, aby górna część emitująca cząstki była skierowana ku niebu.
- Wybierz jego podchodzący emitent cząstek, a następnie w oknie Właściwości,
- Ustaw Lifetime na 4, aby ustawić czas życia każdej cząstki na 4 sekundy.
- Ustaw Rate na 3, aby emitować 3 cząstki na sekundę.
- Ustaw RotSpeed na -10, 10, aby losowo emitować każdą cząstkę między -10 a 10 stopniami na sekundę.
- Ustaw Speed na 25, aby emitować każdą cząstkę 25 studów na sekundę.
- Ustaw Acceleration na 0, 0, 0, aby usunąć wcześniejszą symulację.
- Ustaw Drag na 1, aby cząstki traciły swoją prędkość z wykładniczym spadkiem.
- W oknie Command Bar wpisz następujący ciąg, aby zwiększyć rozmiar każdej cząstki z 20 do 20 studów w ciągu ich życia z niewielkim oknem zmienności:
workspace.Mist.RiseMist.Mist.Size = NumberSequence.new{NumberSequenceKeypoint.new(0,20,1), NumberSequenceKeypoint.new(1,25,5)}Stwórz tęczę.
Wstaw część block do Mist, a następnie nazwij ją RainbowPart.
Ustaw RainbowPart nieco powyżej innych części blokowych.

Wstaw ParticleEmitter do Rainbow, a następnie nazwij emitter Rainbow.
Wybierz Rainbow, a następnie w oknie Właściwości,
- Ustaw Texture na rbxassetid://16828911033, aby renderować cząstki, które wyglądają jak delikatna tęcza.
- Ustaw Size na 25, aby renderować duże cząstki.
- Ustaw Transparency na sekwencję liczbową, w której cząstki zaczynają jako przezroczyste, stają się lekko nieprzezroczyste, a następnie ponownie stają się przezroczyste w ciągu swojego życia.
- Czas = 0, Wartość = 1, Envelope = 0
- Czas = 0.497, Wartość = 0.363, Envelope = 0.05
- Czas = 1, Wartość = 1, Envelope = 0

- Ustaw Lifetime na 2, 4, aby losowo ustawić czas życia każdej cząstki między 200 a 400 milisekundami.
- Ustaw Rate na 0.25, aby emitować cząstkę co 4 sekundy.
- Ustaw Rotation na -20, aby zorientować każdą cząstkę pod niewielkim kątem.
- Ustaw Speed na 0, aby emitować każdą cząstkę z prędkością 0 studów na sekundę.
- Ustaw Drag na 1, aby cząstki traciły swoją prędkość z wykładniczym spadkiem.
- Ustaw LightEmission na 1, aby wykonać mieszanie addytywne, aby renderować cząstki z kolorami za nimi. Ten krok również usuwa czarne tło z samej tekstury.
- Ustaw LightInfluence na 0, aby zapobiec wpływaniu światła otoczenia na kolor cząstek.
W oknie Explorer wybierz wszystkie części blokowe w folderze Mist, a następnie w oknie Właściwości ustaw Transparency na 1, aby uczynić bloki niewidocznymi.