Programowanie gier dla Androida

Programowanie gier dla Androida 15: Tworzenie Stage

42 filmy

238 minuty

Od chwili, kiedy zaczynają się tworzyć rodzaj gry, aby stworzyć scenę. Mam zamiar zrobić jako nowej klasy, że będę MainGameScreen połączeń, które rozciągają się na BaseScreen. W tej chwili tylko będzie ekran, ale jest to gwarancja na przyszłość, bo wtedy będziemy chcieli mieć korekt, będziemy chcieli mieć opcje, bo może nie każdy lubi to Joe, więc będziemy w stanie umieścić kilka Joes,

a może nie każdy lubi muzykę. Jak będziemy mieli do wprowadzenia wielu wyświetlaczy również, kiedy przed nami w celu skorygowania Kod wtedy mniej, tym lepiej. Teraz ta klasa zmusi mnie do zabicia samej gry jako parametr, więc to nie ma znaczenia: po instancję tej MainGameScreen Muszę też powiedzieć, że gra, która jest związana, ale to, co dobre jest to, że od tej chwili, powiedzmy, że chcę, aby nawiązać połączenie, aby pokazać

i chcę, aby załadować coś lub zrobić coś, co mogę zrobić game.setScreen i powiedzieć, co na ekranie, za które będzie zmienić grę. Po naciśnięciu przycisku Wstecz, mówimy powrót do ekranu z menu Start lub gdy wracamy przycisk UI Scene2D mówimy przejść do innego ekranu. Mamy wszystko w naszym guście. Zobaczmy, jak możemy zrobić, aby pracować z Scene2D. Jak mówiłem na wstępie, Scene2D charakteryzuje się etap, etap,

a scena jest miejscem, gdzie możemy umieścić aktorów, z których każdy ze znaków lub elementów naszej gry. Pierwszą rzeczą, jaką zrobić, to stworzyć na scenie, bo jeśli nie kilku graczy będzie mógł wejść. I etap to przede wszystkim dlatego, że mamy do rysowania, obciążenie ... więc będę tworzyć Stage bezpośrednio w polu, bo ja zamierzam wykorzystać na wiele sposobów: Muszę usunąć swoje zasoby (wiesz, że

jest SpriteBatch wewnątrz), rysuję ... najprostsze jest 'Stage Stage = new ()', aby ukryć () może zrobić Stage.dispose (). Niektóre poprosi, bo dostać się ukryć (), a nie Dispose (). To dlatego, że za każdym razem, kiedy zadzwonić show (), wyobraź sobie, że wyjść z menu albo idę do menu Start, gry, wyjdę ... za każdym razem wrócę będę wystąpienie nowego obiektu typu Stage. Jeśli po prostu zrobić

Stage Stage = new () i zutylizować () zostawić go wyrzucać (), jeśli pójdę cztery razy na ekranie, stworzy cztery razy jeden etap, ale jako Ja tylko tworzenie Dispose () raz, bo po prostu zamknąć grę raz, nie będzie 3 etapy, które zostaną zamknięte w pamięci, na przykład SpriteBatch Zostaje ona zablokowana w pamięci i nie zamierzamy go zwolnić. A to byłoby marnotrawstwo zasobów. Potem źle pomimo tego, co musimy zrobić, to

Etap pozbyć, gdy wyszliśmy z ekranu, na przykład, aby powrócić do menu Start. Drugi zachowanie musimy zrobić, to remis. Na etapie teraz dodamy do każdego z aktorów, którzy wezmą udział w naszej grze, na przykład dodać szaszłyki, gleba, minijoe ... każdy z tych podmiotów jest określony przez niezależne, ponieważ jest to zaleta Scene2D każdy podmiot jest niezależnie od innych, ale jakoś

powiedzieć Stage koordynować tego i powiedzieć 'Stage wzywa wszystkie podmioty do rysowania' lub 'Stage poprosić aktorów mają być aktualizowane.' Za to, Mamy dwie ważne metody w etapie; Jednym z nich jest rysować, których używamy do rysowania wszyscy gracze na scenę, co jest w porządku, bo nie mamy już zrobić to sami; a druga jest aktem, używany do aktualizacji aktorów, więc uważamy, że, na przykład, na szaszłyki, kto będzie się poruszać

nam się na ekranie. Musimy im powiedzieć, żeby przenieść okresowo iść przesuwając się ku nam. Z ustawy (metoda) możemy dostać to zrobić. Mówimy, że w każdej iteracji metody akt (), aby przesunąć trochę w lewo i przez wezwanie do działania () zajmuje się tym. Jak jest niewygodne zapominamy, zrobię wezwanie do GL_CLEAR, a teraz, że będzie zatelefonować do ClearColor, bo będę się przydać

wygrać jasnego nieba, aby nie trzeba załadować tekstury. Przede wszystkim, to sprawdzenie, czy ten działa. Nie wiem, dlaczego testowanie bo oczywiście to nie będzie działać, bo zapomniał o jednej ważnej rzeczy, która ma przedstawić ten ekran w sposobie tworzenia () z setScreen (New MainGameScreen (ta)). Spędziłem ESTA, ponieważ jest to mój MainGame. To znaczy, ja, którzy uważają, mój ekran. Teraz powinno działać.

To, co zobaczył, zanim był test, który przeprowadzono przed i poza kamerą zapomniał umieścić wyraźne, evidentemen 它 是 干净 的 蓝色 屏幕, 因为 它 是 这样 的. 这个 阶段 是 一 点点 死亡, 失踪 的 事情. 让 我们 来 看看 如何 创建 角色.

Aby znaleźć nowe kursy, zapisz. Nie będzie spam, obiecał :)

o autorze

foto de jotajotavm
José Javier Villena

Biografia: Analityk-Programmer w różnych językach. Platformy Opiekun PREMIUM rozpoznawane na całym świecie jako CodigoFacilito. Artykuły Edytor Cristalab. Mój kanał YouTube jest sponsorowany przez wydawcę Anaya LaTostadora. Lubię szczegółowo wyjaśnić i podać kilka przykładów dla uniknięcia wątpliwości.