Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze – Lekce 5 - Unity (C#) Android: GUI - menu 1

Zpět

Upozorňujeme, že diskuze pod našimi online kurzy jsou nemoderované a primárně slouží k získávání zpětné vazby pro budoucí vylepšení kurzů. Pro studenty našich rekvalifikačních kurzů nabízíme možnost přímého kontaktu s lektory a studijním referentem pro osobní konzultace a podporu v rámci jejich studia. Toto je exkluzivní služba, která zajišťuje kvalitní a cílenou pomoc v případě jakýchkoli dotazů nebo projektů.

Komentáře
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.

 
Odpovědět
1.1.2015 20:37
Avatar
vratislavino
Tvůrce
Avatar
Odpovídá 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 :)

Odpovědět
1.1.2015 21:59
Hlavou teď neprorazíš, ale stojí za to to zkoušet :)
Avatar
Tomáš Bitter
Tvůrce
Avatar
Odpovídá 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.

 
Odpovědět
1.1.2015 22:21
Avatar
vratislavino
Tvůrce
Avatar
Odpovídá 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í :)

Odpovědět
1.1.2015 22:53
Hlavou teď neprorazíš, ale stojí za to to zkoušet :)
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 4 zpráv z 4.