Tvoríme in-game movies pomocou TimeLine a Paths
V mnohých hrách sú okamihy, kedy potrebujeme aby sa určité akcie
vykonali v daný moment. Môžete sa pokúsiť o niečo také pomocou alarmov,
ale ak to bude rozsiahlejšie, začnete sa v tom strácať a začne to byť
príliš komplikované.
Pomocou TimeLine si jednoducho nastavíte v aký moment sa vykonajú zadané
akcie. Vytvorený timeline môžete jednoducho priradiť akémukoľvek objektu.
Instance potom bude realizovať akcie, uvedené v priradenom timeline podľa
nastavených krokov. Kde kroky sú brané podľa rýchlosti miestnosti
(predvolená 30 krokov za sekundu). Možno zmeniť v nastaveniach miestnosti (ak
nastavíte rýchlosť místosti menej ako 30 hra sa bude spomaľovať).
Ak napríklad chcete nejakého strážca čo bude chodiť okolo stráženého
miesta (napr. Pred hradom) ... Jednoducho mu v timeline nastavíte:
- Step 0: akcie pohyb doprava
- Step 60: akcie pohyb hore
- Step 120: akcie pohyb doľava
- Step 180: akcie pohyb nadol
- A pri priraďovaní timeline nastavíte loop na true (rovnako tak môžete použiť akciu na random a cestu generovať náhodne)
Pre vytvorenie timeline stačí kliknúť na ikonku presýpacích hodín hore
v lište (pokiaľ ju nevidíte -> zvoľte File / Advanced mode -> musí
byť zaškrtnutý).
Vyskočí vám okienko podobné tomu, v ktorom editujete objekt. Vľavo môžete
súčasný timeline pomenovať a sú tu akčné tlačidlá. Vedľa je zoznam
pridaných časových úsekov. Potom akcie priradené vybranému okamihu. A
nakoniec akcie, ako v editácii objekte, ktoré klasicky preťahujete alebo
môžete použiť jazyk GML na zadanie akcií, ktoré chcete v danom okamihu
vykonať.
Popíšeme si jednotlivé tlačidlá:
- Add - Slúži na pridanie okamihu do súčasnej timeline. Zadáte moment - číslo v krokoch (počítané od spustenia timeline). Potvrdíte a môžete pridávať akcie, rovnako ako je tomu u nastavovanie objektov.
- Change - Slúži pre zmenu počtu krokov pre súčasne vybraný časový okamih
- Delete - Zmažte všetky časové okamihy v zadanom intervale.
- Clear - Zmažte všetky časové okamihy
- Shift - Zadáte interval pre ktorý chcete posunúť všetky časové okamihy v ňom sa nachádzajúce o zadaný počet. Ak zmeníte počet krokov na také číslo, ktoré sa už v zozname nachádza - akcie sa presunú.
- Duplicate - Funguje na rovnakom princípe ako Shift s tým, že sa zduplikujete jednotlivé časové okamihy s akciami.
- Spread - Percentuálne rozšíri časové okamihy v zadanom intervale o zadanej percento. Pr .: máte nasledujúce kroky - 5, 8 a 12 a zadáte percento rozšírenie 200 a interval <1; 15> -> 9, 15 a 23 (kroky v intervale sa zdvojnásobili - počiatok intervalu je 1 toto číslo odpočítame od 5 -> 4 * 2 = 8 + 1 = 9; 8 - 1 = 7 * 2 = 14 + 1 = 15
- Merge - Slúži pre zlúčenie všetkých časových okamihov nachádzajúcich sa v zadanom intervale do vybraného.
doplnok:
Nevytvárajte záporné časové okamihy -> nikdy sa nevykonajú.
Tlačidlo Show Information slúži na zobrazenie súčasného
timeline pre čítanie (čo sa kedy vykoná).
Ukážeme si to na jednoduchom príklade:
Postavička ťukne na tlačidlo - nasleduje scéna ako vyletí bomba a odpáli
prekážku.
- Vytvoríme si objekt bomby a prekážky a nastavíme im príslušný sprite (pre prekážku môžeme pridať sprite rozbité / rozdrobenosť prekážky)
- Vytvoríme nový timeline v kroku 0 (hneď po spustení timeline) nastavíme
hspeed na 5 (pohyb bomby doprava)
gravitáciu na 0.5
vspeed na -10 (ako keby bola vrhnutá)
vytvoríme inštanciu objektu prekážky na súradniciach 250x120 relatívne ku bombe (aby sa prekážka vytvorila tam kde bomba vybuchne)
v kroku 50 (bomba poletí 50 krokov (podľa základnej rýchlosti miestnosti 30 necelé dve sekundy)) zmažeme bombu (destroy inštancie)
vytvoríme efekt explózie
zmeníme sprit prekážky na roztrieštený alebo prekážku zmažeme
- v kroku 0 (hneď po spustení timeline) nastavíme hspeed na 5 (pohyb bomby
doprava)
gravitáciu na 0.5
vspeed na -10 (ako keby bola vrhnutá)
vytvoríme inštanciu objektu prekážky na súradniciach 250x120 relatívne ku bombe (aby sa prekážka vytvorila tam kde bomba vybuchne)
- nastavíme hspeed na 5 (pohyb bomby doprava)
- gravitáciu na 0.5
- vspeed na -10 (ako keby bola vrhnutá)
- vytvoríme inštanciu objektu prekážky na súradniciach 250x120 relatívne ku bombe (aby sa prekážka vytvorila tam kde bomba vybuchne)
- v kroku 50 (bomba poletí 50 krokov (podľa základnej rýchlosti miestnosti
30 necelé dve sekundy)) zmažeme bombu (destroy inštancie)
vytvoríme efekt explózie
zmeníme sprit prekážky na roztrieštený alebo prekážku zmažeme
- zmažeme bombu (destroy inštancie)
- vytvoríme efekt explózie
- zmeníme sprit prekážky na roztrieštený alebo prekážku zmažeme
- do objektu bomby pridáme create event a do neho vložíme akciu
Set Time Line zo záložky Main2.
- bombu umiestnime na začiatok miestnosti a hru spustíme
Čo robí ktorá akcia je popísané tu: Ikonky záložka Main2, tu sú ich ekvivalenty v kóde GML: GML zápis Main2
S timeline sa dajú urobiť veľmi pekné meziscény, intra, Outra. Stačí len trocha fantázie a chuť si s tým pohrať
Teraz sa pozrieme na paths.
Pokiaľ chcete nakresliť krivku po ktorej sa daný objekt bude pohybovať
(napríklad máte meziscénu, kde porazenej telo bossa opustila jeho duša a
letí na určené miesto nejakú krútiaci sa cestou - použijete paths).
Vytvoriť cestu možno ľahko pomocou červenej skrútené krivky hore v lište.
Objaví sa vám takéto okienko:
Napravo hore pod krížikom si môžete zobraziť ľubovoľnú miestnosť pre
lepšiu kreslenie cesty.
Cestu navrhujete klopaním na určité miesta.
Pomocou tlačidla add môžete pridať nový bod a následne upraviť jeho
pozíciu prípadne rýchlosť inštancie v tomto bode.
Insert má rovnakú FCI ako add s tým, ževloží bod pod vybratý bod v
zozname.
Delete - zmaže vybraný bod.
Môžete si ďalej zvoliť či prepojením bodov vzniknú čiary alebo krivka
(krivka - curve má zaoblené rohy)
Closed - určuje či bude cesta uzavretá (bude končiť tam kde začína)
Precision - určuje zaoblenie krivky
Namaľujte teda nejakú uzavretú krivku a vytvorte nejaký objekt treba
guličky.
Do create eventu vložíme Set Path zo záložky move.
Vyberieme patričnú cestu nastavíme inštanciu rýchlosť tak 5, at end -
chceme aby sa nezastavovala takže zvolíme continue from štart a absolútna
(presne po zadanej krivke)
Potom objekt pridáme niekam do miestnosti a hru pustíme.
Akcia ikoniek sú popísané tu Ikonky
sada move a tu je ich GML ekvivalencie GML
zápis move
Stiahnuť
Stiahnutím nasledujúceho súboru súhlasíš s licenčnými podmienkami
Stiahnuté 336x (12.95 kB)
Aplikácia je vrátane zdrojových kódov v jazyku GameMaker