Aktuálně: Postihly zákazy tvou profesi? Poptávka po ajťácích prudce roste, využij slevové akce 30% výuky zdarma!
Hledáme fulltime PHP programátora do ITnetwork týmu - 100% homeoffice, 100% časově flexibilní #bezdeadlinu Mám zájem!

Lekce 19 - Unity (C#) Android - Asynchronní načtení scény

V minulé lekci, Unity (C#) Android - Přizpůsobení hry různým rozlišením, jsme přizpůsobili naše UI pro všechna rozlišení a podívali se na další dostupné UI prvky.

V dnešní lekci se budeme soustředit na asynchronní načtení scény.

Motivace

Pokud nyní klikneme v menu například na "Survival", Unity začne scénu načítat až po kliknutí. To na pomalejších počítačích a nebo na telefonech může způsobit zaseknutí. Hráč klikne na "Survival" a zobrazí se mu na chvíli jen černá obrazovka, aniž by vlastně věděl, co se děje. Představme si tuto situaci u složitějších her, kdy začneme hrát a následuje třeba minutové načítání, kde bychom viděli pouze černou obrazovku. Není to moc pěkné a ani příjemné pro uživatele.

Proto zařídíme, aby po kliknutí a načítání mapy nebyla vidět jen černá obrazovka, ale abychom viděli procentuální ukazatel načítání.

Předem malé upozornění. Pravděpodobně si ani nevšimnete rozdílu před a po dnešní lekci. Načítáme totiž velice malý level a pokud nemáte archaický počítač, bude načtený prakticky okamžitě. Jenže ukázat vám takovouto možnost je skoro nutností, protože jistě budete tvořit v budoucnu i složitější hry. Nemohl jsem vás o ni tedy připravit.

Příprava Canvas

Do Canvas si přidáme nový panel z nabídky UI -> Panel a pojmenujeme jej loadLevelPanel. Nastavíme mu černou neprůhlednou barvu. Dále si do tohoto panelu přidáme Text. Zvětšíme ho, nacentrujeme do středu obrazovky a jako text nastavíme 0%. Také si nastavíme barvu na bílou, aby byl vidět:

Tento text nám bude zobrazovat kolik % máme načteno z příslušného levelu. Po dosažení 100% černá obrazovka s načítáním zmizí a pustí nás rovnou do hry.

Skript

Otevřeme si Reaction skript, kde


 

...konec náhledu článku...
Pokračuj dál

Znalosti v hodnotě stovek tisíc získáš za pár korun

Došel jsi až sem a to je super! Věříme, že ti první lekce ukázaly něco nového a užitečného.
Chceš v kurzu pokračovat? Přejdi do prémiové sekce.

Omezená nabídka: Nauč se vše a ušetři

Koupit lekce a funkce postupně a po jednom 110 bodů
Koupit všechny aktuálně dostupné lekce s funkcí odevzdávání úloh za exkluzivní cenu 94 bodů (234 Kč)
Na svém účtu máš aktuálně 0 bodů
Koupí tohoto výhodného balíčku získáš přístup ke všem 25 lekcím s kontrolou a certifikací a ještě navíc ušetříš 42 Kč. Nabídka je omezená pouze pro první lekce z kurzu a obsahuje exkluzivní slevu 15%.
94 bodů získáš za přidání svého článku na síť nebo odpovídá 275 Kč 234 Kč

Pozor, pokud si koupíš pouze tuto lekci, ztratíš nárok na speciální slevu 15% na balíček všech lekcí.

Koupit jen lekci 10 bodů
Na svém účtu máš aktuálně 0 bodů
10 bodů získáš za přidání svého článku na síť nebo odpovídá 25 Kč

Před koupí tohoto článku je třeba koupit předchozí díl

Obsah článku spadá pod licenci Premium, koupí článku souhlasíš se smluvními podmínkami.

Co od nás v dalších lekcích dostaneš?
  • Neomezený a trvalý přístup k jednotlivým lekcím.
  • Kvalitní znalosti v oblasti IT.
  • Dovednosti, které ti pomohou získat vysněnou a dobře placenou práci.

Popis článku

Požadovaný článek má následující obsah:

V tutoriálu se budeme zabývat asynchronním načtením scény naší Android hry v Unity, aby nezpůsobilo zaseknutí hry.

Body získáš, když podpoříš naši síť. To můžeš udělat buď zasláním symbolické částky na podporu provozu nebo přidáním obsahu na síť.

Článek pro vás napsal Jan Kubice
Avatar
Aktivity (6)