Phoenix - Era Ognia




by Peter Mitev. T│umaczenie Marcin So│but.


WstΩp

Drogi u┐ytkowniku, poni┐ej przedstawiam Ci zestaw lekcji przeznaczonych dla naszego wspania│ego plug- ina o nazwie Phoenix. Jest on dodatkiem do programu 3D Studio Max. Mam nadziejΩ, ┐e pomogΩ Ci zrozumieµ zasadΩ dzia│ania, metody tworzenia oraz edytowania przy u┐yciu Phoenixa. WiΩc co mogΩ dodaµ : serdecznie witam CiΩ w gronie naszych cz│onków - cz│onków chaosu. Jeszcze jedno, je£li nie masz poczucia humoru nie czytaj dalej, lepiej idƒ ogl╣daµ telewizjΩ.

Pocz╣tek

Dawno, dawno temu, gdzie£ na powierzchni naszej planety, mali mieszka±cy jaskini wiedli swoje chaotyczne ┐ycie, walczyli o po┐ywienie itd. »ycie takie by│o pe│ne niejasno£ci, by│o narzucone przez odwieczne prawa natury. Natura jest potΩ┐na, to ona sprawia, ┐e jeste£my weseli, smutni, to ona pomaga nam ┐yµ oraz przetrwaµ. Pewien ma│y cz│owiek ┐yj╣cy w jaskini pomy£la│ : Co by by│o, gdybym móg│ j╣ kontrolowaµ? Co by by│o, gdybym sprawi│, ┐e inni by w to wierzyli? Co by by│o, gdybym pokaza│ im jaki jestem wszechw│adny? Co by by│o, gdyby wierzyli, ┐e mogΩ zes│aµ na nich pioruny, burze, trzΩsienia ziemi, OGIE╤? Ogie± ... powiadasz!!! Ale nie mogΩ ... Mam tak wiele rzeczy. Mam mój komputer. Mam swój ulubiony program do grafiki komputerowej (3D Studio Max) ... I wci╣┐ nie mogΩ zes│aµ ognia ... Tak naprawdΩ to mogΩ, ale nikt nie uwierzy mi, ┐e jest on prawdziwy, widaµ w nim fraktale, widaµ w nim przemieszczenia ... SiedzΩ i zastanawiam siΩ - czy nie bΩdzie jednak lepiej je£li wykrzeszΩ ogie± z kamienia? Czy bΩdzie lepiej, je£li dam komputerowi jeszcze jedn╣ szansΩ? I w ten oto sposób ma│y cz│owiek traci kolejne godziny, próbuj╣c uczyniµ by jego ogie± wygl╣da│ lepiej ... ale to nie nadchodzi.Efekty s╣ do niczego. WiΩc ma│y cz│owiek my£li - natura jest tak silna ... tak jak mój komputer ... natura ma swoje £rodowisko ... a ja mam Maxa ... natura u┐ywa swego £rodowiska aby stworzyµ ogie± ... a ja stworzΩ ogie± samemu. I tak te┐ zrobi│. Po│╣czy│ si│y ze swymi chaotycznymi kamratami ... i stworzy│ ogie± ... w £rodowisku Maxa ... A gdy ogie± zosta│ uko±czony, nazwali go PHOENIX. U┐yli go ... i spodoba│o siΩ im. ZapragnΩli go dzieliµ z innymi, by daµ im szansΩ na stworzenie ognia w ich £rodowisku Maxa. I tak spotkali cyfrowych ludzi. I pozwolili im by ca│y znany £wiat dowiedzia│ siΩ o istnieniu ognia. I tak te┐ siΩ sta│o. Ten ogie± ma charakter, ma duszΩ. Niech wskrzesz╣ legendy o tym jak kontrolowali£my ogie±, i jak mo┐e byµ on u┐yty. I tak te┐ siΩ sta│o.









Kamie± # 0 : Podstawy

Po pierwsze uruchom g│ówny generator ognia - £rodowiskowy efekt atmosferyczny Phoenix. Od momentu, gdy sta│ siΩ on efektem £rodowiskowym, znajduje siΩ w standardowym oknie kontroli atmosfery. Mo┐emy go uaktywniµ poprzez tradycyjne menu Maxa : Rendering/ îrodowisko (Environment). Naciskaj╣c przycisk dodania (Add), i wybieraj╣c efekt atmosferyczny Chaos Phoenix otrzymujemy ogie± od rΩki. Jest to centralny panel kontrolny, w którym praktycznie tworzymy ca│y ogie±.

Teraz, gdy wiemy ju┐ gdzie znajduje siΩ kontrola ognia, spójrzmy co mo┐emy spaliµ. Tak wiΩc mo┐emy spaliµ ka┐d╣ krzyw╣ - Bezier lub te┐ NURBS, ka┐d╣ geometryczn╣ siatkΩ (ka┐dy obiekt, który mo┐e zostaµ przekszta│cony na edytowaln╣ siatkΩ (Editable Mesh)), ka┐d╣ powierzchniΩ NURBS, ka┐dy podstawowy system cz╣steczek, jak i równie┐ PhoenixGen, bΩd╣cy obiektem pomocniczym znajduj╣cym siΩ w menu obiektów pomocniczych (Helpers). Innym obiektem pomocniczym, którego u┐ywa Phoenix jest PhoenixVec znajduje siΩ on w tym samym menu co PhoenixGen.

Gdy opanujemy podstawy, czas przej£µ do bardziej interesuj╣cych rzeczy takich jak u┐ycie Phoenixa w scenach Maxa.

Kamie± # 1 : Lekcja pierwsza : zabawa ukryj - i - szukaj

Otwórzmy nasz pierwszy plik. Nazywa siΩ on Phoenix_S01_01.max i znajduje siΩ w katalogu Scenes\ Phoenix. Naszym oczom powinna ukazaµ siΩ niebieska pi│ka. Je£li jej nie zobaczysz - to ƒle. Musisz ponownie wgraµ ca│ego Phoenixa. Je£li ukarze siΩ pi│ka, lecz nie jest ona niebieska - to jeszcze gorzej. Musisz zmieniµ oczy (na zapasow╣ parΩ - przypis t│umacza), a je£li to nie pomo┐e - zmie± monitor. Mam szczer╣ nadziejΩ, ┐e widzisz niebiesk╣ pi│eczkΩ wiΩc dodamy do niej ogie± i spalmy j╣. Utwórz atmosferΩ Phoenixa. Uczy± to poprzez otwarcie £rodowiskowego okna dialogowego (Rendering/ Environment). Gdy masz ju┐ otwarte powy┐sze okno, naci£nij przycisk dodania (Add) i wybierz z wy£wietlonej listy efekt atmosferyczny Chaos Phoenix. Gdy ju┐ tego dokonasz, spójrz na poni┐sze zdjΩcie :



Je£li nie wygl╣da ono podobnie, odpowiedz sobie na kilka pyta± :



Pytanie Odpowiedƒ
Czy noszΩ okulary, a jak tak to gdzie one s╣? Je£li nie ma ich na Twoim nosie - natychmiast je za│ó┐.
Czy u┐ywam tego samego schematu koloru? Je£li kolory s╣ jedyn╣ rzecz╣ wygl╣daj╣c╣ nie przyjaƒnie? Je£li tak - zapomnij o ró┐nicy i czytaj dalej.
Czy u┐ywam programu 3D Studio Max? Je£li nie - uruchom program i spróbuj ponownie.
Je£li ┐adne z powy┐szych? Tylko nie u┐ywaj "bejsbola". Wszyscy wiemy, ┐e jest on przydatny w innych, rzadkich przypadkach. (niekoniecznie rzadkich - przypis t│umacza)


Gdy masz ju┐ otwarte okno dialogowe efektu atmosferycznego Phoenix mo┐emy zacz╣µ bawiµ siΩ ogniem (nie dopuszczaµ dzieci do lat 4 - przypis t│umacza). Poka┐my Phonixowi co chcemy spaliµ. Jest to naprawdΩ bardzo prosta operacja. Naci£nij przycisk wyboru emitera (Pick Emitter) w rozwijanym menu topologii i dynamiki (Topology And Dynamics), przycisk powinien zabarwiµ siΩ na zielono, co oznacza, ┐e jeste£ w trakcie operacji dokonywania wyboru obiektu. Kursor Twojej myszy powinien zmieniµ siΩ w krzy┐yk, gdy przeniesiesz go na sferΩ. Naci£nij nastΩpnie na niebieskiej sferze (je£li oczywi£cie zastosowa│e£ siΩ do wcze£niejszych zalece±). Na prawo od przycisku wyboru emitera powinna znaleƒµ siΩ nazwa naszego obiektu - Sphere01.

W│a£nie w ten sposób wybieramy emiter - kszta│t, który zamierzamy sfajczyµ. Je£li za£ nazwa obiektu siΩ nie pojawi, a w zamian tego pozostanie napis "Brak" (None) - ponownie naci£nij przycisk wyboru emitera i wyselekcjonuj nasz╣ sferΩ poprzez naci£niΩcie na ni╣. Je£li pomimo to nazwa obiektu siΩ nie pojawia, dalsze kroki s╣ bezcelowe - przyczyn╣ tego mo┐e byµ problem z plikiem, scen╣, z programem Max, z Twym komputerem lub te┐ nawet z Tob╣ samym.

Jeste£ gotowy do wyrenderowania. Niech Max wyrenderuje Twoj╣ scenΩ. Nie wa┐ne, które okno widokowe jest aktywne, naci£nij po prostu klawisz renderowania. Reszta zale┐y od szybko£ci Twego komputera. Po zako±czonym renderingu powiniene£ widzieµ p│omienie, je£li nie co£ posz│o Ci nie tak - dalsze czytanie jest bezcelowe.

Otrzymali£my ogie± ale co je£li chcemy zobaczyµ nierówno£ci ognia w oknach widokowych, zanim przyst╣pimy do d│ugiej i zawirowanej drogi renderingu? Da siΩ to wykonaµ. Otwórz menu cz╣steczek i widoków (Particles And Viewports).

Powiniene£ widzieµ to co przedstawia poni┐sze zdjΩcie :

Je£li to co widzisz nie przypomina zdjΩcia powy┐ej, powróµ do tabeli i przestudiuj j╣ ponownie. Czerwony prostok╣t otaczaj╣cy ja£niejsz╣ czΩ£µ okna dialogowego wskazuje tΩ czΩ£µ okna, na której powiniene£ siΩ najbardziej skoncentrowaµ.

NastΩpn╣ rzecz╣, któr╣ siΩ zajmiemy w tej chwili jest menu grupy kontrolnej widoków. Znajduje siΩ ona w dolnej czΩ£ci naszego okna dialogowego (zdjΩcie powy┐ej). Naci£nij przycisk budowania kszta│tu (Build Shape Node). Powiniene£ otrzymaµ liniowy kszta│t obiektu widniej╣cy w miejscach, gdzie p│onie g│ówny obiekt (zdjΩcia poni┐ej) :



Nazywamy ten kszta│t PhoenixShapeNode. Odk╣d nasza sfera p│onie, "nici" ognia mo┐emy zauwa┐yµ na ca│ej powierzchni naszego obiektu. Powy┐sze obiekty s╣ naszymi p│omieniami, które wyrenderujemy póƒniej. Dla lepszej przejrzysto£ci sceny (szczególnie gdy jest bardzo z│o┐ona) mo┐emy kontrolowaµ procentow╣ ilo£µ p│omieni pojawiaj╣cych siΩ w naszych oknach widokowych. Dokonujemy powy┐szego poprzez ró┐ne ustawienia parametru % Of Flames. Spróbuj zmieniµ ten parametr na warto£µ 100. Aby zobaczyµ wszystkie dokonane zmiany naci£nij przycisk uaktualnienia (Update).

Mówi╣c teoretycznie powiniene£ uzyskaµ w tym momencie oko│o 40 "nici" wychodz╣cych z naszej sfery. Warto£µ ta zale┐y od kilku innych parametrów, którymi zajmiemy siΩ nieco póƒniej. Ustaw nastΩpnie warto£µ naszego parametru % Of Flames na warto£µ 0 i naci£nij przycisk uaktualnienia. Jak widzisz p│omienie ca│kowicie znik│y. Gdy chcesz unikn╣µ ci╣g│ego naciskania przycisku uaktualnienia, oznacz opcjΩ uaktualnienia automatycznego (Automatic Update). W│╣czenie tej opcji spowoduje, ┐e ilekroµ zmienisz ustawienie dotycz╣ce wygl╣du b╣dƒ te┐ ilo£ci p│omieni uaktualnienie widoku zostanie przeprowadzone automatycznie bez Twej ingerencji.

Obiekt typu PhoenixShapeNode bΩdzie ulega│ równie┐ ci╣g│emu uaktualnieniu, gdy bΩdziesz modyfikowa│ jego rdze± czyli emiter.

Teraz, gdy wiemy ju┐ jak wykonywaµ podgl╣d p│omieni w oknach widokowych, zajmiemy siΩ ich wygl╣dem. Ustaw procentow╣ warto£µ ilo£ci p│omieni na 25 i zwiΩksz ilo£µ p│omieni do 200. Ilo£µ p│omieni kontrolowana jest przez odpowiednie ustawienie parametru Num. Of Flames (jak wskazuje sama nazwa) - zdjΩcie poni┐ej :

Efekt powy┐szej zmiany przedstawiam poni┐ej :



P│omienie unosz╣ siΩ w sposób naturalny do góry, lecz czΩsto chcemy im nadaµ ró┐ny kierunek oraz d│ugo£µ. Powy┐sze parametry kontrolujemy przy pomocy wektora (PhoenixVec) oraz kontroli d│ugo£ci w menu Particles And Viewports, zdjΩcie poni┐ej :

Prze│╣czniki X, Y, Z kontroluj╣ kierunek p│omieni za£ prze│╣cznik Lenght ich d│ugo£µ. "X, Y, Z" s╣ osiami globalnymi, to znaczy, ┐e nie wa┐ne jak bΩdziemy obracali sferΩ, p│omienie zawsze bΩd╣ zwrócone w danym kierunku. "X" definiuje z jak╣ si│╣ p│omienie przemieszcz╣ siΩ wzglΩdem globalnej osi X. Zachowanie jest identyczne przy osiach Y oraz Z. Parametr d│ugo£ci jest zbli┐on╣ d│ugo£ci╣ p│omieni uzale┐nion╣ jeszcze od kilku innych parametrów, które omówimy póƒniej. Poeksperymentuj z ustawieniami omawianych parametrów. Je£li nie masz w│╣czonej opcji automatycznego uaktualniania, pamiΩtaj o naciskaniu przycisku Update po ka┐dej wprowadzonej zmianie. Przeprowadƒ równie┐ próbny rendering swojej sceny w celu zobaczenia, jak ona naprawdΩ wygl╣da.

Powy┐szy sposób kontroli p│omieni jest dobry ale ma│o u┐yteczny. Dlatego te┐ Phoenix oferuje wizualn╣ reprezentacjΩ kierunku p│omieni - obiekt pomocniczy PhoenixVec. Mo┐emy utworzyµ go na dwa ró┐ne sposoby :



W nastΩpnej kolejno£ci po stworzeniu wektora jest poinformowanie o tym Phoenixa. Dokonujemy tego w menu Particles And Viewports poprzez naci£niΩcie przycisku pobrania wektora (Pick Vector) i naci£niΩciu na stworzony przez nas obiekt pomocniczy.

W obydwu powy┐szych przypadkach nazwa wektora powinna pojawiµ siΩ tu┐ obok opcji Pick Vector. Zauwa┐, ┐e po wykonaniu powy┐szych czynno£ci warto£ci X, Y, Z oraz Lenght staj╣ siΩ szare (nieaktywne) - zdjΩcie poni┐ej :

Oznacza to, ┐e zmiany kierunku p│omieni dokonujemy poprzez transformacjΩ wektora przy│╣czonego do efektu atmosferycznego Phoenix. Je£li wci╣┐ nalegasz na zmianΩ "szarych" ustawie± z nieznanych mi powodów mo┐esz tego dokonaµ poprzez naci£niΩcie i przeci╣gniΩcie strza│ek parametrów umieszczonych po prawej stronie ... Opcja ta nie da ┐adnego efektu, chyba ┐e powiesz programowi aby nie u┐ywa│ wektora. Dokonujesz tego naciskaj╣c przycisk od│╣czania wektora (Detach Vector).

Jednak┐e, nie chcemy tego robiµ w naszej lekcji, wiΩc kontynuujmy j╣ z wektorem do│╣czonym do p│omieni.

Wielko£µ ikony przedstawiaj╣cej wektor (PhoenixVec) jak te┐ jego po│o┐enie (oprócz transformacji obrotu) w scenie nie oddzia│uje na kierunek oraz wygl╣d p│omieni. Oznacza to, ┐e mo┐emy umie£ciµ nasz wektor gdziekolwiek w przestrzeni i uczyniµ go tak wielkim jak tylko chcemy. Tylko dwie rzeczy oddzia│uj╣ na p│omienie - orientacja wektora oraz parametr d│ugo£ci. Spróbuj obróciµ wektor i zobacz jak zmienia siΩ PhoenixShapeNode (pamiΩtaj o naci£niΩciu przycisku uaktualnienia).

Teraz, gdy ju┐ wiemy jak kontrolowaµ d│ugo£µ oraz kierunek p│omieni spróbujmy wykonaµ co£ naprawdΩ fajnego. Ustaw parametr d│ugo£ci wektora PhoenixVec na 100. Przejdƒ do klatki 0 i uaktywnij przycisk animowania (Animate). Standardowo powinien staµ siΩ on czerwony (oczywi£cie je£li nie przemalowa│e£ kolorów na monitorze). Przejdƒ nastΩpnie do okna widoku z przodu (Front Viewport) i obróµ wektor tak aby "patrzy│" w lew╣ stronΩ. Przejdƒ nastΩpnie do klatki 30 i obróµ wektor PhoenixVec tak aby "patrzy│" w górΩ (pamiΩtaj, ┐e przycisk animowania powinien byµ w│╣czony). Podczas odtwarzania animacji wektor powinien siΩ obracaµ o 90 stopni zgodnie z ruchem wskazówek zegara (oczywi£cie w oknie widokowym z przodu). Wybierz nastΩpnie nasz╣ sferΩ (Sphere01) i ukryj j╣. Przejdƒ do perspektywicznego okna widokowego, zmie± go na widok z kamery (Camera01) i wyrenderuj ca│╣ sekwencjΩ. Wygl╣da to nieƒle, nieprawda┐? Scena pocz╣tkowa powy┐szej lekcji jak te┐ ko±cowa - Phoenix_S01_done.max - jest umieszczona w katalogu Scenes.

Po wykonaniu powy┐szych kroków orientujesz siΩ ju┐ w jaki sposób kontroluje siΩ kierunek, d│ugo£µ oraz emiter ognia. Mo┐emy wiΩc pój£µ dalej i odkryµ jeszcze kilka cudów naszego sztucznego £rodowiska.

Kamie± # 2 : Lekcja druga : NarzΩdzia atmosferyczne Gizmo maj╣ potΩgΩ.

Rzuµmy okiem na jeden z najpotΩ┐niejszych i wszechstronnych obiektów pomocniczych. Mo┐esz u┐yµ kolejnego pliku (Phoenix_S02_01.max), w którym wszystkie obiekty oraz efekty atmosferyczne zosta│y ju┐ dla Ciebie stworzone. Je£li znasz trochΩ Maxa, powiniene£ wiedzieµ, ┐e masz mo┐liwo£µ tworzenia obiektów pomocniczych zwanych narzΩdziami atmosferycznymi Gizmo (Atmospheric Apparatus Gizmos) - ich umiejscowienie przedstawia zdjΩcie poni┐ej :









Je£li jednak wci╣┐ nie wiesz, gdzie mo┐na je odszukaµ powiniene£ przed przyst╣pieniem do tej lekcji przeczytaµ instrukcjΩ obs│ugi Maxa. Naszym celem jest : chcemy spaliµ patyczek, w taki sposób, w jaki dzieje siΩ to naprawdΩ (najpierw zaczyna paliµ siΩ z obu stron, nastΩpnie ogie± przenosi siΩ w stronΩ centralnego, £rodkowego punktu, nastΩpnie zaczyna p│on╣µ ca│y a na ko±cu ogie± ucieka gdzie£ w powietrze). Je£li nie u┐ywasz gotowego pliku, mo┐esz stworzyµ wszystko na w│asn╣ rΩkΩ. Utwórz patyk - pude│ko (Box01) - o parametrach :



NastΩpnie utwórz dwa sferyczne atmosferyczne Gizma (SphereGizmo01 oraz SphereGizmo02) i umie£µ je po lewej oraz po prawej stronie obiektu, w taki sposób by nie nak│ada│y siΩ na pude│ko. Powinny one byµ umieszczone wzglΩdem siebie w prostej linii, jak przedstawia poni┐sze zdjΩcie :

Uaktywnij nastΩpnie atmosferΩ Phoenixa (przeczytaj ponownie pierwsz╣ lekcjΩ je£li ju┐ zapomnia│e£ jak to wykonaµ). Stworzone przez nas Gizma bΩd╣ kontrolowa│y miejsce, w którym nasz obiekt zaczyna "│apaµ" ogie±. Przejdƒ do 100 klatki animacji i uaktywnij przycisk animowania (Animate), przemie£µ Gizma tak aby siΩ z│╣czy│y. W ten sposób okre£lili£my miejsce, w którym chcemy by nasz obiekt siΩ pali│. Jedyn╣ pozosta│╣ czynno£ci╣ jest poinformowanie Phoenixa o naszych okrutnych intencjach spalenia kawa│ka "drewna". W pierwszej kolejno£ci, poka┐ Phoenixowi, ┐e chcemy spaliµ obiekt przez naci£niΩcie przycisku wyboru emitera (Pick Emitter) i wyborze naszego pude│ka- zdjΩcie poni┐ej :

NastΩpnie musimy poinformowaµ Phoenixa, ┐e powinien u┐yµ obiektów Gizma w celu kontrolowania miejsca p│oniΩcia. Na powy┐szym zdjΩciu widzisz umiejscowienie przycisków potrzebnych dla wykonania powy┐szej operacji - pobierz Gizmo (Pick Gizmo). Nazwy naszych narzΩdzi atmosferycznych powinny pojawiµ siΩ po prawej stronie powy┐szego przycisku.

Gdy ju┐ je wybierzemy (upewnij siΩ, ┐e oba Gizma zosta│y wybrane) Phoenix bΩdzie je bra│ pod uwagΩ podczas procesu p│oniΩcia emitera. Mo┐esz w│╣czyµ podgl╣d poprzez uaktywnienie przycisku Build Shape Node. Uruchom równie┐ opcjΩ automatycznego uaktualnienia widoków (Automatic Update).

Wyrenderuj ca│╣ animacjΩ - zamierzony kierunek oraz sposób p│oniΩcia jest OK, ale nasze p│omienie s╣ zbyt "rzadkie". Poprawimy to poprzez podwy┐szenie ilo£ci p│omieni z 40 do 200 - zdjΩcie poni┐ej :

Mo┐emy ponownie wyrenderowµ nasz╣ animacjΩ aby zobaczyµ rezultat. Jednak┐e pominΩli£my jeszcze jedn╣ rzecz. Obiekt zapala siΩ zbyt wolno i pali siΩ zbyt szybko. P│omienie nie maj╣ czasu by zacz╣µ p│on╣µ poniewa┐ Gizma przemieszczaj╣ siΩ zbyt szybko. Oczywi£cie Phoenix posiada wbudowan╣ kontrolΩ nad szybko£ci╣ zapalania siΩ obiektów oraz nad szybko£ci╣ ich p│oniΩcia. Skoncentrujmy siΩ na parametrze mo┐liwo£ci p│omieni (Flammability) znajduj╣cym siΩ w menu topologii i dynamiki (Topology And Dynamics) - zdjΩcie poni┐ej :

Jego domy£lna warto£µ 15 mówi Phoenixowi, ┐e ca│kowity "rozkwit" p│omieni nastΩpuje w czasie 15 klatek animacji, a nastΩpnie równie┐ w ci╣gu 15 klatek animacji nastΩpuje ca│kowity zanik p│omieni. W naszym przypadku powinni£my obni┐yµ warto£µ tego parametru do 1. NastΩpnie zwiΩkszamy d│ugo£µ p│omieni do warto£ci 80 - zdjΩcie poni┐ej :

Powy┐sze operacje spowoduj╣, ┐e Phoenix bΩdzie generowa│ p│omienie o d│ugo£ci 80 jednostek w ka┐dej jednej klatce animacji. Przeprowadƒmy ponowny rendering animacji by zobaczyµ co siΩ zmieni│o. Powinien on wygl╣daµ o niebo lepiej ni┐ poprzedni. Gotow╣ scenΩ znajdziecie w katalogu Scenes pod nazw╣ Phoenix_S02_done.max.





Kamie± # 3 : Lekcja trzecia : Tworzenie pojedynczych p│omieni nie jest wcale trudne.

Poni┐ej przedstawiΩ Ci w jaki sposób wykonujemy pojedyncze p│omienie. Stwarza to wielki problem wielu u┐ytkownikom, wiΩc wyja£niΩ powy┐sze zanim przejdziemy do dalszej czΩ£ci. Jak zwykle mamy przygotowany projekt sceny w Maxie, zapisany jest on pod nazw╣ Phoenix_S03__01.max. Jak s╣dzΩ pierwsz╣ oczywist╣ rzecz╣, która przychodzi nam do g│owy jest stworzenie prostego obiektu z jak najmniejsz╣ ilo£ci╣ powierzchni w celu przyspieszenia oblicze±. Dla naszej lekcji wybra│em obiekt p│aski (Plane). Po utworzeniu obiektu Plane01 dodajemy atmosferΩ Phoenixa i wybieramy stworzony p│aski obiekt jako emiter. Zmieniamy parametr procentowej ilo£ci p│omieni (% Of Flames) na 100 i naciskamy przycisk budowania kszta│tu (Build Shape Node). Je£li masz problemy z wykonaniem powy┐szej operacji, powróµ do lekcji pierwszej i przestudiuj j╣ ponownie. Jak widzisz na poni┐szym zdjΩciu, otrzymali£my w ten sposób oko│o 40 p│omieni (a przecie┐ nie o to nam chodzi) :

Zmie±my wiΩc parametr ilo£ci p│omieni (Num. Of Flames) na warto£µ 1 i naci£nijmy przycisk uaktualnienia (Update) - zdjΩcie poni┐ej :



Niespodzianka !!! Zamiast pojedynczego p│omienia widzimy ich ca│╣ zgrajΩ. Ale dlaczego? My£lΩ, ┐e jest to odpowiedni czas i miejsce aby wyja£niµ kilka parametrów, których nie wypróbowywali£my do tej pory. Zacznijmy od dwóch umieszczonych w menu topologii oraz dynamiki, a mianowicie - zakres mno┐enia siΩ (Spawn Rate) oraz zakres zabijania (Kill Rate). Znajduj╣ siΩ one (jak równie┐ parametr ... w czasie (... At Time)) w miejscu, które widzimy na poni┐szym zdjΩciu :

Standardowo oba te parametry powinny byµ ustawione na warto£µ 0,3. Ale co to jest te 0,3? Zakres mno┐enia siΩ reprezentuje ilo£µ p│omieni, które zostan╣ rozmno┐one, innymi s│owy - stworzone w ka┐dej nowej klatce animacji. Przy domy£lnym ustawieniu 0,3 p│omienie pojawia│y siΩ bΩd╣ z ka┐dym nastΩpnym krokiem, tzn. bΩdzie siΩ pojawia│o oko│o jednego nowego p│omienia na ka┐de 3 klatki animacji. Zakres zabijania jest ilo£ci╣ p│omieni, które znikn╣ w ka┐dej nowej klatce. Bardzo dobrym rozwi╣zaniem jest ustawienie powy┐szych parametrów na t╣ sam╣ warto£µ (poeksperymentuj trochΩ, aby zobaczyµ jaki efekt przynosz╣ poszczególne ustawienia). Parametr ... w czasie mówi, od której klatki animacji Phoenix powinien zacz╣µ liczenie - domy£ln╣ warto£ci╣ jest - 200,0. Pozwól, ┐e podsumujΩ wszystko w kilku s│owach : domy£lnie Phoenix jest ustawiony na 40 p│omieni w klatce - 200,0, tworzy nowy p│omie± co 3 klatki i "zabija" inny co 3 klatki. Oznacza to, ┐e ilo£µ pozosta│ych p│omieni jest sta│a przez ca│y czas trwania animacji. Je£li zamierzasz podwy┐szyµ ilo£µ p│omieni w czasie podnie£ warto£µ parametru mno┐enia siΩ lub te┐ zmniejsz warto£µ parametru zabijania. B╣dƒ bardzo ostro┐ny przy powy┐szych zmianach!!! Przypu£µmy, ┐e masz 40 p│omieni w klatce - 200,0 i ustawisz warto£µ zakresu mno┐enia siΩ na 5 a zabijania na 1.

Poni┐ej przedstawiam Ci tabelΩ ilustruj╣c╣, jak bΩd╣ przebiega│y obliczenia atmosfery Phoenixa oraz jak bΩdzie siΩ zmienia│a ilo£µ p│omieni w szczególnych wypadkach :



# Klatki Rozmno┐one Zabite Ilo£µ ca│kowita
- 200 0 0 40,0
- 199 5 1 44,0
- 198 5 1 48,0
- 197 5 1 52,0
... 5 1 ...
0 5 1 840,0
1 5 1 844,0
2 5 1 848,0
... 5 1 ...
100 5 1 1 240,0

My£lΩ, ┐e zrozumia│e£, ┐e podwy┐szenie powy┐szych warto£ci, zwiΩkszy w niesko±czono£µ ilo£µ p│omieni, wiΩc je£li zamierzasz wyrenderowaµ pojedyncz╣ ko±cow╣ klatkΩ animacji (powiedzmy klatkΩ # 300), Twój rendering mo┐e przebiegaµ bardzo powoli ze wzglΩdu na tysi╣ce p│omieni powsta│ych poprzez zmianΩ powy┐szych warto£ci. Z podobn╣ sytuacj╣ mamy do czynienia, gdy ustawimy warto£µ mno┐enia siΩ na 1 a zabicia na 5 - spowoduje to zabicie wszystkich p│omieni w czasie trwania animacji (przy niektórych przypadkach mo┐e to byµ bardzo u┐yteczne - przypis t│umacza).

Istnieje jeszcze jeden parametr, który musimy wzi╣µ pod uwagΩ przy mno┐eniu oraz zabijaniu p│omieni - wypróbowali£my go wcze£niej - jest nim parametr mo┐liwo£ci p│omieni (Flammability), znajduj╣cy siΩ tu┐ pod parametrem ... w czasie (... At Time). W momencie rozmna┐ania p│omienia, nie p│onie on od razu. Zamiast tego, nasilenie p│oniΩcia narasta z czasem. To, jak szybko siΩ to stanie kontrolowane jest przez powy┐szy parametr. Z podobn╣ sytuacj╣ mamy do czynienia gdy p│omie± umiera. NastΩpuje to stopniowo i jest równie┐ kontrolowane przez parametr Flammability.

Przejdƒmy teraz do naszego priorytetowego celu - stworzenia pojedynczego p│omienia. Ustaw Spawn Rate oraz Kill Rate na warto£µ 0,0, ilo£µ p│omieni na 1,0 oraz % Of Flames na 100. Naci£nij przycisk uaktualnienia (Update). I proszΩ, powiniene£ otrzymaµ pojedynczy p│omie±. Czy widzisz wiΩcej ni┐ jeden p│omie±? Je£li tak, to zadaj sobie pytanie : Ile puszek piwa wypi│em przez ostatnie godziny? Czy wiesz, ┐e alkohol jest zabójczy ... ?

Je£li za£ nie otrzyma│e£ ┐adnego p│omienia - wykonaj ca│╣, opisan╣ powy┐ej, operacjΩ od pocz╣tku. Je£li w dalszym ci╣gu nie otrzymasz po┐╣danego rezultatu - poszukaj wokó│ siebie ma│ego dziecka, aby Ci pomog│o - dzieci zazwyczaj radz╣ sobie z takimi problemami lepiej ni┐ doro£li. Boom! Bang! ... i ca│y problem jest rozwi╣zany. A je£li nawet dzieci nie potrafi╣ Ci pomóc - uruchom po prostu gotowy plik (Phoenix_S03_done.max) i zobacz co zrobi│e£ ƒle. Wyrenderuj animacjΩ i baw oczy rezultatem.

Kamie± # 4 : Lekcja czwarta : Spalanie w kolorze.

Zajmiemy siΩ nastΩpnym narzΩdziem, gradientem koloru, który nazywamy polem koloru (Color Filed). Je£li nie wiesz o czym mówiΩ spójrz na zdjΩcie poni┐ej :

Jako punktu wyj£ciowego u┐yjemy gotowej sceny utworzonej w poprzedniej lekcji. Mowa tu oczywi£cie o lekcji dotycz╣cej tworzenia pojedynczego p│omienia na p│askiej powierzchni. Dla celów tej lekcji zmniejszymy oraz ukryjemy nasz╣ powierzchniΩ, zwiΩkszymy równie┐ zasiΩg animacji do 200 klatek (gotow╣ scenΩ mo┐esz otworzyµ z pliku Phoenix_S04_01.max). Pole kolorów reprezentuje gradient 2D. 2D oznacza, ┐e gradient kontrolowany jest w dwóch kierunkach zamiast podstawowego gradientu kontrolowanego zazwyczaj w 1D. Pozwól, ┐e przedstawiΩ Ci wΩze│ (Knot) - jest on punktem kontrolnym gradientu i jest przedstawiany w polu koloru jako ma│y kwadracik przybieraj╣cy trzy kolory : bia│y - je£li dany wΩze│ mo┐e byµ edytowany (przemieszczany), czarny, gdy jest on statyczny (nie podlega edycji) oraz czerwony - gdy wΩze│ jest aktualnie animowany i znajduje siΩ aktualnie w klatce kluczowej. Dodawania oraz usuwania wΩz│ów dokonujemy poprzez, odpowiednio, naci£niΩcie przycisku CTRL lub te┐ SHIFT z jednoczesnym naci£niΩciem przycisku myszki. Kursor zmienia siΩ odpowiednio do wybranej komendy - dodawanie b╣dƒ te┐ usuwanie. Gdy kursor zostanie umieszczony nad danym wΩz│em zmienia kszta│t by ukazaµ nam, ┐e mo┐emy przenosiµ dany punkt w inne miejsce. Zmiany koloru dokonujemy poprzez naci£niΩcie prawego przycisku myszy na ┐╣danym wΩƒle. Wszystkie czynno£ci wykonywane s╣ intuicyjnie - po£wiΩµ chwilkΩ czasu na eksperymenty. Jeszcze jeden drobiazg : mo┐esz obserwowaµ jak zmiana poszczególnych parametrów, w│╣czaj╣c w to pole koloru wp│ywa na ko±cowy wygl╣d p│omienia. Dokonujemy tego w menu ró┐norodno£ci (Miscellaneous) poprzez uaktywnienie przycisku podgl╣du koloru (Preview Color Fractal).

Jak mo┐esz zauwa┐yµ pojawia siΩ ma│e okienko przedstawiaj╣ce efekt aktualnych ustawie± - zdjΩcie poni┐ej :

W│╣czenie opcji automatycznego uaktualnienia (Automatic Update) powoduje uaktualnienie powy┐szego okna w momencie wprowadzania zmian. Je£li wolisz, mo┐esz u┐ywaµ opcji manualnego uaktualniania (Manual Update) p│omieni, musisz tylko pamiΩtaµ o tym, ┐e aby zmiana parametrów odnios│a skutek nale┐y nacisn╣µ przycisk Update. DostΩpna jest równie┐ mo┐liwo£µ zmiany koloru t│a naszego okna pogl╣dowego, musimy jedynie nacisn╣µ na nim przyciskiem myszki. Kolor ten u┐ywany jest jedynie dla naszego podgl╣du. Podczas renderingu kolor ten nie wp│ywa ani na t│o, ani te┐ na kolor p│omieni. DostΩpna jest równie┐ mo┐liwo£µ skalowania okna pogl╣dowego, tak aby odpowiada│o ono naszym wymaganiom.

S╣dzΩ, ┐e wyja£ni│em wszystko odno£nie podgl╣du p│omieni. Teraz po£wiΩcΩ parΩ s│ów na temat fraktali u┐ywanych w Phoenixie. Dwoma g│ównymi s╣ fraktale zniekszta│cenia (Distortion Fractals) oraz fraktale koloru (Color Fractals).Fraktale zniekszta│cenia kontroluj╣ strzΩpiasto£µ, przemieszczenie oraz wygiΩcie p│omieni za£ fraktale koloru kontroluj╣ kolor wnΩtrza ka┐dego p│omienia - zdjΩcie poni┐ej :



G│ównych ustawie± kontroluj╣cych fraktale koloru dokonujemy w grupie parametrów Color Fractals w menu fraktali (Fractals) - zdjΩcie poni┐ej :

Bardzo dok│adnych ustawie± mo┐emy dokonaµ w menu Color Fractal Mapping zawieraj╣cego pary parametrów, z którego ka┐dy kontroluje jaki wygl╣d bΩdzie mia│ p│omie± na pocz╣tku a jaki na ko±cu. Otwórz okno podgl╣du p│omienia (omówione powy┐ej) w celu zorientowania siΩ jaki efekt przynosz╣ zmiany poszczególnych parametrów. MuszΩ CiΩ jednak ostrzec, ┐e efekty zmian niektórych z nich nie bΩd╣ mia│y skutku - odnosz╣ siΩ bowiem tylko do przestrzeni trójwymiarowej 3D. Dla przyk│adu szeroko£µ p│omienia (Flame Width) jest parametrem kontroluj╣cym szeroko£µ naszego p│omienia i odnosi siΩ jedynie do przestrzeni 3D, co oznacza, ┐e choµby£ nie wiem jak zmienia│ ten parametr to i tak okno pogl╣dowe nie zmieni swego wygl╣du. Aby zobaczyµ wprowadzone zmiany bΩdziesz musia│ zrenderowaµ swoj╣ scenΩ. A to w│a£nie jest rzecz, któr╣ zamierzamy w tej chwili wykonaµ. Za│aduj plik Phoenix_S04_01.max i wyrenderuj scenΩ korzystaj╣c z perspektywicznego okna widokowego - zdjΩcie poni┐ej :

Otwórz nastΩpnie wspomniane wcze£niej menu o nazwie Color Fractal Mapping i ustaw warto£µ szeroko£ci p│omienia (Flame Width) na pocz╣tku (At Start Of Flame) na 8 a na ko±cu (At End Of Flame) na 4. Wyrenderuj nastΩpnie scenΩ - zdjΩcie poni┐ej :

Chyba rozumiesz o czym mówi│em. Pobawmy siΩ trochΩ kolorami. Uaktywnij okno podgl╣du p│omienia oraz menu wygl╣du (Appearance), w którym znajduje siΩ pole koloru. Powiniene£ zauwa┐yµ parΩ przycisków nazywaj╣cych siΩ Show Colors For Light (poka┐ kolory dla £wiat│a) - emitowanego (Emitted) oraz poch│oniΩtego (Subtracted) - zdjΩcie poni┐ej :

Jest to opcja, któr╣ celowo pomin╣│em w poprzednich rozdzia│ach - aktualnie posiadamy dwa pola koloru - emitowane oraz poch│oniΩte. Poprzez te dwa przyciski dokonujemy wyboru, która z nich ma byµ pokazywana. Jak same nazwy wskazuj╣ pole koloru emitowanego kontroluje emisjΩ £wiat│a z p│omieni, poch│oniΩtego za£, £wiat│a poch│oniΩtego ze sceny. Oznacza to, ┐e Phoenix nie tylko emituje £wiat│o lecz równie┐ poch│ania je ze £rodowiska.

Poeksperymentujmy wiΩc z ustawieniami kolorów. Naci£nij przycisk Emitted, pole koloru powinno wygl╣daµ jak na poni┐szym zdjΩciu :



Naci£nij prawym przyciskiem myszy na drugim poziomym wΩƒle i ustaw nastΩpnie kolor na niebieski. Zrób to samo z trzecim wΩz│em. Pole koloru powinno wygl╣daµ teraz jak ilustruje poni┐sze zdjΩcie :



Po przeprowadzeniu renderingu perspektywicznego okna widokowego powiniene£ otrzymaµ co£ w tym rodzaju :

Spróbujmy nastΩpnie sprawiµ aby nasz p│omie± wygl╣da│ na bardziej "wydr╣┐ony". Mo┐emy tego dokonaµ poprzez £ci£niΩcie koloru emitowanego oraz nadanie poszerzenie czarnego £rodka. Przesu± poziome wΩz│y na prawo a pionowe na sam╣ górΩ - zdjΩcie poni┐ej :





NastΩpnie dodaj nowe poziome oraz pionowe wΩz│y, które domy£lnie bΩd╣ mia│y kolor czarny - zdjΩcie poni┐ej :

Wyrenderuj scenΩ - powiniene£ uzyskaµ efekt przedstawiony poni┐ej :

Jak widzisz osi╣gnΩli£my zamierzony efekt. Przejdƒmy do animowania kolorów. Jest to ca│kiem proste. Przejdƒ do klatki 50 i uaktywnij przycisk animowania (Animate). Ustaw kolor trzeciego oraz czwartego poziomego wΩz│a na warto£ci : R : 0, G : 150, B : 255. Powiniene£ otrzymaµ co£ takiego :

Zauwa┐, ┐e kwadraciki reprezentuj╣ce wΩz│y zabarwi│y siΩ na czerwono. Przejdƒ nastΩpnie do klatki 100 i ustaw kolor trzeciego oraz czwartego poziomego wΩz│a na warto£ci : R : 255, G : 100, B : 0. Pole koloru powinno wygl╣daµ jak poni┐ej :

Wyrenderuj nastΩpnie klatkΩ 50 oraz 100. Powiniene£ otrzymaµ nastΩpuj╣cy efekt :

Powracamy do animowania, i zmieniamy warto£µ parametru ilo£ci p│omieni na 5. Renderujemy nastΩpnie ca│╣ sekwencjΩ. Nie wiem jak Tobie ale mi siΩ bardzo podoba ten ma│y ogie±, który w│a£nie wskrzesili£my.



Powodzenia



Wszelkie pytania, zastrze┐enia oraz uwagi proszΩ kierowaµ pod : sabat@zse.edu.pl

Lekcja z przeznaczeniem jedynie do u┐ytku dla : http://3dstudiomax.punkt.pl