02. Hra a pohyb
Začnime tým, že si otvoríme náš uložený projekt z predošlej lekcie. Ak nemáte svoj, stiahnite si tento a pridajte si ho do Unity Hubu. Budeme do tohto projektu pridávať ďalšiu funkcionalitu.
Ak sa vám niekedy otvorí projekt v Unity a vyzerá, že v scéne nič nie je, tak sa neľakajte. To si len Unity nepamätá, ktorú scénu ste mali otvorenú. Otvore svoju scénu cez File > Open Scene

Spúšťame hru
V hornej časti okna sú ovládacie prvky na spustenie, pauznutie a krokovanie hry:

Doteraz sme sa na scénu pozerali ako autori-editori. Po spustení hry (tlačidlo ▶ alebo CTRL-P) sa okno Scene prepne do okna Game a scénu uvidíme z pohľadu kamery v scéne. Tak ako ju uvidí hráč:

V hre sa zatiaľ nič nedeje a vyzerá ako statický obrázok. Nič sa ani hýbať nemôže, lebo zatiaľ sme žiaden z game objektov nenaučili hýbať sa.
Keď je hra spustená, je stále možné meniť game objektom ich vlastnosti cez inšpektor. Skúste napríklad posunúť loptičku na úroveň stola.
Pozor: Zmeny, ktoré urobíte počas behu hry sa po vypnutí behu neukladajú. Scéna aj vlastnosti v inšpektore sa vrátia naspäť tam, kde boli pred spustením hry. Toto býva častým zdrojom omylov a občas vás to nahnevá. Ale takto je to lepšie. (Ak vás zaujíma prečo, spýtajte sa na hodine)
Hru vypneme takisto, ako sme ju spustili, stlačením ▶ alebo CTRL-P.
Učíme kameru chodiť
Komponenty sú to, čo dáva game objektom ich schopnosti. Ak chceme, aby sa niečo v scéne začalo hýbať, musíme zatiaľ statickým objektom popridávať komponenty, ktoré ich to naučia.
Unity obsahuje viacero už hotových komponentov, ale teraz budeme potrebovať vlastný. Vlastný komponent sa vyrába programovaním, k tomu sa dostanem neskôr. Zatiaľ si naprogramovaný komponent len stiahneme do assetov.
Vyrobte v assetoch adresár Scripts.
Stiahnite si skript FreeMovement.cs a naimportujte ho do assetov do adresára Scripts.
(Ak neviete ako naimportovať asset, pozrite si predošlú lekciu.)
Spomeňme si, že asset sám o sebe ešte nič nerobí a musíme ho použiť v scéne. Tento asset je skript, resp. komponent a budeme ho pridávať na kameru, lebo kameru chceme rozpohybovať. Označme si preto kameru a v inšpektore vidíme jej súčasné komponenty:

Pridať komponent game objektu sa dá niekoľkými spôsobmi:
- Pretiahnuť skript z assetov na game objekt v scéne (podobne ako materiál)
- Pretiahnuť skript z assetov na game objekt v hierarchii
- Pretiahnuť skript z assetov do inšpektora game objektu
- Kliknúť na Add Component v inšpektore a nájsť skript podľa názvu, v našom prípade sa skript volá FreeMovement.

- Predtým ako otestujeme či komponent funguje, ešte nastavte v komponente Transform pozíciu a rotáciu kamery ako na obrázku vyššie.
- Spustite hru a skúste sa prechádzať po stole pomocou kláves WASD a myši
- V komponente Free Movement zvýšte hodnoty Move Speed a/alebo Rotate Speed tak aby ste boli spokojní s rýchlosťou pohybu.
Výroba spustiteľnej aplikácie
Zatiaľ sme hru spúšťali len v Unity editore. Ak ju chceme uložiť ako spustiteľnú aplikáciu, budeme ju treba buildnúť. (Toto je slovo, ktoré niektorí puristi prekladajú ako „zostaviť“, ale zostava je niečo, čo sa cvičí na gymnastike, takže my budeme buildovať.)
Pri buildovaní sa zozbierajú všetky potrebné súbory našich assetov, pripoja sa k nim súbory, ktoré dodáva Unity a ďalšie súbory potrebné pre spustenie aplikácie. Všetko sa to dá na jedno miesto na disku, aby bolo možné hotovú aplikáciu kopírovať a spúšťať aj mimo editora.
V menu vyberieme File > Build settings. Otvorí sa okno, ktoré obsahuje veľa možností.

Sú tu na výber rôzne platformy, z ktorých si môžeme vybrať: Android, PS4, iOS a pod. Zatiaľ do tohto nevŕtajme a zostaňme pri PC, Mac & Linux. Takisto nemeňme zatiaľ nič ostatné.
Z možností Build a Build And Run si zatiaľ vyberme Build. Unity sa spýta kam má uložiť buildnutú aplikáciu. Vytvorme si v adresári projektu nový podadresár Build:

Zbuildovanie chvíľu trvá a po jeho dokončení nám Unity otvorí adresár so zbuildovanou aplikáciou:

Hotovú aplikáciu môžeme spustiť cez súbor MojaHra.exe. Otvorí sa na celej obrazovke. Keď ju chceme zavrieť, tak zatiaľ len klávesovou skratkou ALT-F4. V budúcnosti si dorobíme ukončenie cez Esc ako u normálnych ľudí.
Rozdiel medzi Build a Build And Run je len ten, že Build And Run po buildnutí rovno aj spustí hru.
Hotový projekt po skončení tejto lekcie: MojaHra_02.zip