IT rekvalifikácia. Seniorní programátori zarábajú až 6 000 €/mesiac a rekvalifikácia je prvým krokom. Zisti, ako na to!

Diskusia – 9. diel - Unity (C #) Android: GUI - menu 1

Späť

Upozorňujeme, že diskusie pod našimi online kurzami sú nemoderované a primárne slúžia na získavanie spätnej väzby pre budúce vylepšenie kurzov. Pre študentov našich rekvalifikačných kurzov ponúkame možnosť priameho kontaktu s lektormi a študijným referentom pre osobné konzultácie a podporu v rámci ich štúdia. Toto je exkluzívna služba, ktorá zaisťuje kvalitnú a cielenú pomoc v prípade akýchkoľvek otázok alebo projektov.

Komentáre
Avatar
Tomáš Bitter
Tvůrce
Avatar
Tomáš Bitter:1.1.2015 20:37

Nešlo by udělat skript EGameStates, ve kterém by se uchovával enum aktuálního stavu, ve kterém se hra nachází (např. Menu, Game, GameOver ...) ? Vše by bylo statické, takže každý použitý skript ve scéně by akorát kontrolovat současný stav a řídil se podle něj.

 
Odpovedať
1.1.2015 20:37
Avatar
vratislavino
Tvůrce
Avatar
Odpovedá na Tomáš Bitter
vratislavino:1.1.2015 21:59

Udělat by to šlo, ale Unity staví na různých scénách a přijde mi zbytečné to potom dávat do takového enumu, když máme hru takhle rozdělenou pomocí scén. Statické položky se nedoporučují moc používat kvůli paměti. Jinak pokud by to mělo být řešené v jedné scéně (mám pocit, že original Flappy Bird tak dělaný je), vyřešil bych to spíše pomocí nějakého GUIManageru, který by rozhodoval, jaké okno se má zobrazit. Aktuálně v nových výtvorech používám nové Unity UI, tam je to rozdělené na panely. Dnes na to plánuji udělat tutoriál :)

Odpovedať
1.1.2015 21:59
Hlavou teď neprorazíš, ale stojí za to to zkoušet :)
Avatar
Tomáš Bitter
Tvůrce
Avatar
Odpovedá na vratislavino
Tomáš Bitter:1.1.2015 22:21

Samozřejmě, avšak myslím si, že se to hodí tam, kde se mění GameState v rámci jedné scény. Například v multiplayerové tahové hře, když se mění hráč na tahu (pokud je to sotisfikovaná hra, kde mohou hráči reagovat na tah jiného hráče, třeba "BANG!", i když to není PC hra), tak tam nelze jen tak přecházet mezi scénami.

 
Odpovedať
1.1.2015 22:21
Avatar
vratislavino
Tvůrce
Avatar
Odpovedá na Tomáš Bitter
vratislavino:1.1.2015 22:53

Ano ano, pochopil jsem proč, proto jsem uvedl například toho Flappyho :) ale asi bych i tak udělal spíše jeden objekt GameManager, který by rozhodoval, jaký stav má zrovna nastat, ideálně pomocí událostí :)

Odpovedať
1.1.2015 22:53
Hlavou teď neprorazíš, ale stojí za to to zkoušet :)
Robíme čo je v našich silách, aby bola tunajšia diskusia čo najkvalitnejšia. Preto do nej tiež môžu prispievať len registrovaní členovia. Pre zapojenie sa do diskusie sa zaloguj. Ak ešte nemáš účet, zaregistruj sa, je to zadarmo.

Zatiaľ nikto nevložil komentár - buď prvý!