Tutoriál 8 - Startující stíhačka
Upozornění:
Podkladová grafika zde použitá je chráněna autorskými
právy a nesmí být dále šířena ani použita ve vašich
projektech!
V této animaci kamera sleduje start stíhačky. Pohyb stíhačky je znázorněn pohyblivým pozadím.
Download podrobnějšího náhledu (5 MB)
Vzorem stíhačky byl americký F-22 Raptor. Grafiku jsem nakreslil v Illustrátoru. V této animaci nebude statické pozadí. Sledování kamery je simulováno tak, že kolem stíhačky ubíhá pozadí. Pro vytvoření dojmu prostorovosti je pozadí rozděleno do pásů, které se pohybují různou rychlostí. Pod stíhačkou ubíhá přistávací dráha, ta se pohybuje maximální rychlostí. Aby bylo znát, že se dráha pohybuje, je povrch dráhy narušen několika prasklinami a okraj dráhy tvoří přerušovaná čára. Za dráhou ubíhá pomalejší rychlostí pás trávy s květinami. Za květinami je pás s keři, opět s ještě nižší rychlostí. Za keřy je pás stromů (v dálce), ty mají nejnižší rychlost. No a nakonec je v dálce pás s oblohou a horami, ty se nepohybují vůbec. Pozadí je tedy rozděleno celkem na 5 pásů.
Pro samotnou stíhačku je zapotřebí jednak tělo stíhačky, dále jako samostatný obrázek kokpit (aby mohl být zprůhledněn), přední kolečko a zadní kolečko. Přední kolečko je uchycené na držáku. Abych nemusel doplňovat kloub, rozšířil jsem plochu kolem kolečka tak, aby střed osy otáčení držáku byl ve středu obrázku. Dále byl potřeba plamen z trysek. Ten jsem chtěl animovat a proto jsem připravil 3 malinko odlišné varianty plamene, které se budou střídat. Při exportu do PNG je nutné zachovat přesně stejnou velikost obrázků jednotlivých fází plamene, proto jsem musel u některých obrázků plamene zvětšit plochu na největší společnou velikost. Dále je potřeba stín. Pro zjednodušení jsem ho neřešil průhledností, ale připravil jsem přímo obrázek elipsy v barvě povrchu přistávací dráhy (ve středu ztmavený). A nakonec zmenšený obrázek stíhačky, aby mohla v jedné chvíli přeletět v dálce kolem hor. Bylo by možné k tomu využít už připravený velký obrázek stíhačky.
Sestavování scény jsem začal pozadím. Načetl jsem a umístil obrázek hor s oblohou. Pod ni jsem přidal pás se stromy, dále pás s keři, pás s květinami a nakonec pás přistávací dráhy. Pásy se budou pohybovat tak, že se budou posouvat do strany a budou se horizontálně opakovat, jako dlouhý pás stejných obrázků. Proto je nutné zajistit seamless pásů už při kresbě, tedy aby začátek a konec pásu na sebe mohly navazovat (aby na okraji nebyla např. jen půlka stromu).
Pás s horami se nemění, toho jsem si dál už nevšímal. Pás se stromy se bude pohybovat nejnižší rychlostí. Tipnul jsem si, že za celou dobu animace by se pás mohl posunout o 1 celou šířku obrazovky. Zduplikoval jsem obrázek pásu se stromy. Kopii jsem připojil k původnímu obrázku jako k rodiči a posunul jsem ji o 1920 bodů doleva. Připojení je užitečné k tomu, aby při animacích s pásy stačilo manipulovat pouze s prvním z obrázků. Posun pásu jsem zajistil tak, že ve snímku 0 jsem nastavil souřadnici X prvního obrázku pásu na hodnotu 0 a v posledním snímku 879 na hodnotu 1920. Když animaci vyzkoušíte, pás se stromy by se měl pomalu posouvat směrem doprava a při přetečení konce animace by měl pás na sebe plynule navazovat. Na konci je sice malá nepřesnost animace 2 pixely (na posledním snímku by mělo být X = 1920 - 1920/880 = 1918), ale animace se tam stejně zastavuje, tak to nevadí. Během animace bude pás dělat složitější animaci, ale tyto 2 koncové body zatím stačí.
Další je pás s keři. Ten se bude posouvat rychleji, o 2 šířky. Proto obrázek pásu s keři zduplikuji 2x a obě kopie připojím k původnímu obrázku jako k rodiči. Druhý obrázek posunu doleva o 1920 pixelů, třetí obrázek doleva o 3840 pixelů. Na prvním snímku prvního obrázku pásu uzamknu souřadnici X na hodnotě 0 a na posledním snímku 879 nastavím souřadnici X na hodnotu 3840. Při přehrátí animace se pás pohybuje směrem doprava, rychleji než pás se stromy, a začátek a konec animace na sebe navazují.
Podobně rozpohybuji pás s květinami. Ten se posune o 3 šířky a proto jsou potřeba 3 další kopie obrázku pásu. Všechny připojím k původnímu obrázku a posunu je doleva na souřadnici X = -1920, -3840 a -5760. Souřadnici X prvního obrázku uzamknu v prvním snímku na hodnotě 0, v posledním snímku nastavím 5760. Opět mohu zkontrolovat.
Poslední je pás přistávací dráhy. Posune se o 5 šířek a proto potřebuji 5 dalších kopií obrázku pásu. Obrázky připojím k prvnímu obrázku a nastavím jejich souřadnice na hodnoty X = -1920, -3840, -5760, -7680 a -9600. Souřadnici X prvního obrázku pásu uzamknu v prvním snímku na hodnotě 0, v posledním snímku nastavím 9600. Když animaci přehraji, měly by pásy ubíhat s postupně klesající rychlostí a mělo by to vytvářet prostorový dojem.
V souvislosti s pásy musím upozornit na jeden technický problém. Z interních důvodů není plně zajištěno, aby přesně souhlasily souřadnice a rozměry obrázku připojeného k rodiči. Je-li obrázek připojen k rodiči, vzniká v jeho pozici a rozměru malá chyba, která se zvětšuje se vzdáleností od rodiče v seznamu obrázků. U pásů se to může projevit např. tak, že mezi pásy může vzniknout malá ale viditelná škvírka. Snažte se proto v seznamu obrázků držet potomky pokud možno blízko svého rodiče (např. část obrázků umístit nad rodiče a část pod rodiče) nebo chybu opravte malou korekcí souřadnic či rozměrů.
Připojím tělo stíhačky. Souřadnici X ponechám na 0 a souřadnicí Y usadím stíhačku na dráhu. Během animace se bude stíhačka pomalu rozjíždět, což se znázorní zvyšující se rychlostí pozadí. Po chvíli se začne zvedat. Postupně stále zvyšuje rychlost, až začne mizet ze záběru kamery směrem doleva. Po chvíli přeletí v dálce nad horami jako malá stíhačka, směrem zleva doprava. Po další chvíli se objeví opět vpravo a začne přistávat. Kamera se opět rozjede a stíhačku sleduje až do chvíle, kdy se úplně zastaví.
Ke stíhačce připojím kolečka a obrázky plamenů. Plameny načítám jako animovanou sekvenci s prodlevou 4. Když přehraji animaci, plameny by měly vzadu ze stíhačky plápolat. Plameny trochu zprůhledním nastavením Alfa na asi 160, přitom musím stáhnout Ořez na asi 60. Ke stíhačce připojím ještě kokpit a trochu ho zprůhledním nastavením Alfa na 140.
Připravím si středové místo animací, kdy stíhačka přelétá nad horami. V té chvíli jsou posuny pozadí zastavené uprostřed. Doba této fáze animace bude trvat 200 snímků a proběhne ve snímcích 340 až 540. U každého pásu nastavím X na střední hodnotu posunu, ve snímcích 340 a 540. To znamená - pás stromů bude stát na hodnotě X = 960, pás keřů 1920, pás květin 2880 a pás dráhy 4800. Při přehrátí animace se pásy pohybují (rychleji než dříve) a ve středu animace se na chvíli zastaví.
Vracím se ke stíhačce. Ve snímcích 0 a 100 uzamykám rotaci, X a Y na aktuálních klidových hodnotách. Ve snímku 200 souřadnici Y trochu zvýším (stíhačka se začíná zvedat), X zůstává uzamknuté na 0 a rotaci nastavuji na -5 stupňů. U souřadnice X zapínám přepínač "Plynule", u ostatních zůstává přepínač vypnutý. Přecházím na snímek 300 a tam souřadnici Y ještě dál zvýším, souřadnici X nastavují na -1600 a rotaci na -10 stupňů, vše opět bez přepínače plynulosti. A vypnu viditelnost stíhačky. Během této fáze animace se stíhačka začíná zvedat a odlétá směrem doleva. Přepínač "Plynule" u souřadnice X ve snímku 200 zajistí, že stíhačka se rozletí plynule a její rychlost se bude zvyšovat.
Obdobně zajistím přistání. To začíná 300 snímků před koncem animace, tedy na snímku 580, a končí opět na snímku 0 (ten je společný). Postupuji obdobně jako při vzlétnutí, ale opačným směrem. Na snímku 780 uzamknu hodnoty X, Y a rotace na stavu podle snímku 0 (tedy X a rotace jsou 0). Na snímku 680 trochu zvýším Y, uzamknu X na hodnotě 0 se zapnutým přepínačem "Plynule", rotaci nastavím na -5. Na snímku 580 ještě víc zvýším Y, rotaci zvýším na -10 a X nastavím na 1600, tedy hodně doprava. A zapnout viditelnost. Zkontroluji přehrátí animace - stíhačka by měla nejdříve odlětet směrem doleva, pak přiletět zprava.
Upřesním animaci plamenů. Plameny se celou dobu animují v běžné velikosti, pouze na začátku a konci animace mizí (stíhačka stojí). Nejdříve ve snímcích 100 a 780 uzamknu aktuální hodnoty plamenů. To jsou místa, kdy se plameny budou ještě chovat běžně. Ve snímku 0 nastavím menší velikost plamenů a souřadnicí X posunu plameny blíž ke stíhačce (protože se zmenšily).
Doplním animaci koleček. Po startu se musí podvozek zatáhnout a před přistáním zase vysunout. Asi tak ve snímcích 150 a 690 nejdříve uzamknu aktuální pozici koleček. To jsou hranice klidové polohy koleček po přistání. Přejdu na snímek 200 (doba zasouvání podvozku bude 50 snímků). Přední kolo se zasouvá směrem vpřed. Proto změním rotaci na asi -120, čímž se přední kolečko zasune směrem dopředu. Zadní kolečko se zasouvá sklopením do stran, proto tam změním souřadnici Y tak, aby kolečko zajelo směrem nahoru. Samozřejmě obě kolečka musí být v seznamu obrázků nad obrázkem těla stíhačky, aby byla za ní. Stejně nastavím kolečka i ve snímku 640 - to zajistí, že kolečka se budou 50 snímků vysouvat.
Přidám stín pod stíhačku. U stínu nastavím souřadnici X a viditelnost přesně stejně jako u stíhačky. Tím se zajistí, že stín bude stíhačku sledovat. Alternativou by bylo stín připojit ke stíhačce - v tom případě by se musela opačně kompenzovat změna souřadnice Y stíhačky.
Přidám malou stíhačku. Ta je celkem jednoduchá. Nejříve si ji výškově usadím nad horami. Přejdu na snímek 340 (tedy 40 snímků od chvíle, kdy stíhačka zmizela doleva). Malé stíhačce zapnu viditelnost a souřadnici X nastavím na -1500, čímž ji přesunu úplně doleva. Pak přejdu na snímek 540 (40 snímků před přistáním stíhačky), souřadnici X změním na +1500 a vypnu viditelnost. To zajístí, že malá stíhačka uprostřed animace proletí v dálce nad horami.
Poslední úkon je rozpohybování pásů pozadí tak, aby se plynule rozjížděly a plynule zastavovaly, čímž bude simulováno zrychlení a zpomalení stíhačky. Zpočátku máme u pásů nastaveno, že pásy se pohybují konstantí rychlostí během vzlétnutí (0-300) a přistání (580-879) stíhačky, ale stojí když stíhačka letí nad horami (300-580). Přestože se pohyb bude zpomalovat či zrychlovat, ve středu intervalu bude pohyb odpovídat střední rychlosti - proto uzamknu souřadnici X všech pásů při středním snímku 150 a 730.
Dále je to záležitost spíše nastavení zkusmo. Aby se pás plynule zrychlil v intervalu snímků 0 až 150, přejdu asi tak doprostřed (snímek 75) a hodnotu X trochu snížím, blíže k výchozí hodnotě ve snímku 0, a současně zapnu přepínač "Plynule". Pokud není zrychlení dostatečně plynulé, bude potřeba zkusmo hodnotu X zvýšit nebo snížit nebo přidat ještě další mezikroky u jiných snímků. Podobně opravit zpomalení a zrychlení v ostatních 3 úsecích.
Jiným řešením by bylo připravit si výpočet v tabulce v Excelu. Počítaly by se hodnoty v závislosti na časové ose (číslo snímku), se zadaným zrychlením. Tabulkou by se vypočítaly souřadnice X příslušející různým snímkům (nemusí to být po každém snímku).