• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Moja pierwsza gra Android. Dzięki dla M. Zelenta za zainteresowanie programowaniem :)

Hosting forpsi easy 1 pln
+22 głosów
1,309 wizyt
pytanie zadane 27 sierpnia 2016 w Nasze projekty przez czesiobar Początkujący (320 p.)

Cześć wszystkim :slight_smile: 
Właśnie skończyłem pracować nad moją pierwszą grą. Dajcie znać co o niej sądzicie:https://play.google.com/store/apps/details?id=com.artec.jumpgame.android5
Tutaj filmik przedstawiający gameplay: https://www.youtube.com/watch?v=fXKWERYGQp47

Dla zainteresowanych technikaliami. 
Napisałem tę grę w Javie, LibGDX. 
Grafika powstała w Inkscape.
Wszystkie dźwięki pochodzą z opengameart.org.

 

Krótka historia:

W październiku 2015 zacząłem uczyć się programowania w C++. Po miesiącu zacząłem się do tego zniechęcać. Później trafiłem na kursy M. Zelenta i od razu wróciła chęć do nauki. Po ogarnięciu podstaw C++ uczyłem się Javy. 3 miesiące później przyszedł czas na LibGDX. Miesiąc nauki tego framework'u i byłem gotowy zacząć swój pierwszy projekt. Na tworzeniu tej gry spędziłem 3 miesiące i wydaje mi się, że osiągnąłem całkiem fajny efekt.

 

W każdym razie dajcie znać co o niej myślicie. Co byście w niej zmienili/dodali? Jakie wywołuje w was odczucia? Czy sprawia przyjemność?

4 odpowiedzi

+1 głos
odpowiedź 27 sierpnia 2016 przez itcloud Gaduła (3,380 p.)
Bardzo szybko Ci poszło, gratuluję - gra naprawdę wygląda kozacko. Aż trudno mi uwierzyć, że w tak krótkim czasie stworzyłeś takie coś - np. są tam takie detale, że nawet nie wiedziałbym jak do tego podejść proceduralnie... rozbijasz stworka, ok - pojawia się plama grafiki ale np. poza tym kilka jego "kropel" przemieszcza się razem z ruchomymi blokami.

Co do technikalii: to jest tylko java + libgdx, żadnej bazy danych? Jak zapisywane są savegamey czy inne rzeczy?
1
komentarz 27 sierpnia 2016 przez czesiobar Początkujący (320 p.)
Cieszę się, że ci się podoba :)

Te "krople" to zwykłe tekstury, które po rozbiciu stworka pojawiają się i przemieszczają się w losowym kierunku żeby potem można je było zebrać.

Co do detali - zauważyłeś, że stworki patrzą się na siebie nawzajem(tzn. ich oczy się ruszają)? :)

Savegamey zapisuję w Preferencjach (https://github.com/libgdx/libgdx/wiki/Preferences)

To taki prosty plik .xml w którym zapisane są proste wartości - coś w stylu Best Score: 100
komentarz 27 sierpnia 2016 przez itcloud Gaduła (3,380 p.)
Tak, zauważyłem - to po prostu animowane gify, czy jakaś metoda w libgdx gdzie wczytujesz kilka obrazków a framework zajmuje się animacją  ? Tzn zmierzam do tego, czy bez libgdx też byłbyś w stanie "oprogramować" taką grę, nawet zakładając że miałbyś na to 3x więcej czasu?
komentarz 27 sierpnia 2016 przez niezalogowany
@itcloud Pewnie, że bez libgdx można by było takie coś zrobić ;) Tylko że libgdx jest głównie na Javę (jeśli w ogóle ma jakieś porty), więc jeśli chcesz takie coś zrobić np. w C++ (chociaż w C++ to już raczej nie na telefon, tylko na komputer), tylko musisz mieć jakąś bibliotekę graficzną.
komentarz 27 sierpnia 2016 przez czesiobar Początkujący (320 p.)
Animacje w LibGDX działają na takiej zasadzie, że ładujesz wszystkie klatki w formie obrazków i podajesz co ile czasu mają się zmieniać. W mojej grze tak działa animacja ruchu przeciwników, czy animacja ich śmierci.

Jeśli pytasz o to jak działają ruchome oczy To są to dwie tekstury (mniejsza ciemna i większa biała), które ruszają się względem siebie. Wszystko za pomocą kodu.

 

Co do tego czy byłbym w stanie oprogramować ją bez LibGDX...  Pewnie tak ale byłoby to dużo bardziej frustrujące. Musiałbym przecież nauczyć się obsługi OpenGL do rysowania tekstur, zamiast wywołania jednej metody we framework'u. Taki LibGDX napewno dużo ułatwia (co nie znaczy że jest łatwo :) ) i zapewnia pracę na wyższym poziomie abstrakcji. Nie muszę się martwić o to jak Android radzi sobie z graniem dźwięków, wystarczy że wywołam jedną metodę.
komentarz 27 sierpnia 2016 przez itcloud Gaduła (3,380 p.)
Żeby była jasność: wiem, po co są frameworki i że nie należy wyważać otwartych drzwi.

Wysłałem wiadomość prywatną zresztą dot. tego, jak się uczyć EFEKTYWNIE.

A tak ogólnie: wiem, że powinno się oprócz czytania/oglądania tutków od razu coś pisać. Tylko że na chwilę obecną ja mam problem taki, że mam świadomość iż nie przerobiłem jeszcze całej terorii. Teraz kończę wyjątki (nie wiem, czy masz je dobrze opanowane, czy w ogóle potrzeba). Przede mną jeszcze drugie 50% książki "Java Podstawy". No ale jak mam cos samemu napisac, to pewnie najprzyjemniej byłoby mi zacząć np. od arkanoida, ew. "gry w statki". Też uważam, że framework typu libgdx będzie tu bardzo przydatny, dla mnie niezbędny. Moment, kiedy pierwszy raz napisze coś w android studio będzie chyba wtedy, gdy przeczytam przynajmniej jedną książkę o javie (niekoniecznie o androidzie - bo podstawy android studio mniej więcej znam z tutoriali na ytb), ale czytam wolno bo musze wszystko rozumieć, bez przeskakiwania dalej. I to jest frustrujące momentami.
komentarz 27 sierpnia 2016 przez niezalogowany
Jak się uczyć efektywnie? Jak już się uczyć, to tylko efektywnie, bo wtedy nauka jakby nie ma sensu :| Czasem to jest dziwne, jak ktoś na forum pisze "Jakie macie metody nauki, motywowania się?", jak się coś bardzo lubi, to nauka idzie bardzo łatwo i tyle :)

W Javie nie programuję, więc nie pomogę ;)
1
komentarz 27 sierpnia 2016 przez nerdxg Obywatel (1,760 p.)
@itcloud

Polecam się też uczyć z wielu źródeł jednocześnie. Np. z javy przerabiałem własnie Java Podstawy wyd. IX i te same działy przerabiałem w kursach video lub innych książkach/poradnikach. Ja tak szybciej rozumiałem pewne zagadnienia :)

A jeśli jesteś ciekaw biblioteki libgdx to zajrzył na kanał Brent'a Aureli (https://www.youtube.com/user/Profyx/videos). Pokazuje jak zrobić Flappy Bird i Mario własnie w libgdx :)
komentarz 27 sierpnia 2016 przez itcloud Gaduła (3,380 p.)
Też uczę się z wielu źródeł. Dzięki za linka.
0 głosów
odpowiedź 27 sierpnia 2016 przez Surykat Stary wyjadacz (14,760 p.)
Świetna giera! Będzie na windows phone? :D
komentarz 27 sierpnia 2016 przez czesiobar Początkujący (320 p.)
Dzięki :) LibGDX wspiera tylko Androida i IOS'a, więc Windows Phone odpada :(
komentarz 27 sierpnia 2016 przez Surykat Stary wyjadacz (14,760 p.)
Szkoda, ale powodzenia. ;)
0 głosów
odpowiedź 27 sierpnia 2016 przez mowmiheniek Stary wyjadacz (11,900 p.)
Po prawie roku nauki programowania, gra wyszła naprawdę super. Czy dobrze zauważyłem, że układ kładek jest losowy?Graficznie dopracowana, ale dla mnie za trudna. Jakie następne plany?
komentarz 27 sierpnia 2016 przez czesiobar Początkujący (320 p.)
Tak, platformy są generowane losowo. Dodatkowo im wyżej jesteś tym te platformy stają się mniejsze. Co do grafiki, to zacząłem się uczyć Inkscape mniej więcej w momencie kiedy zacząłem ten projekt nie mając wcześniej żadnego doświadczenia w tworzeniu grafik. Dlatego sam jestem zaskoczony, że wyszło całkiem fajnie :). Co do następnych planów to pewnie cały czas będę się rozwijał w stronę gamedevu. Narazie chciałbym trochę odpocząć, bo całe wakacje spędziłem nad tą grą :)
0 głosów
odpowiedź 27 sierpnia 2016 przez RegularLemon Stary wyjadacz (12,260 p.)
Dobra gra. Brawo za utrzymanie motywacji do nauki przez tak długi okres.
komentarz 27 sierpnia 2016 przez czesiobar Początkujący (320 p.)
Dzięki.

Duża w tym zasługa filmów Pana Mirka i jego nastawienia Slight Edge'owego.

Podobne pytania

+4 głosów
1 odpowiedź 285 wizyt
pytanie zadane 1 października 2017 w Nasze projekty przez gujanczyk Obywatel (1,680 p.)
+2 głosów
0 odpowiedzi 188 wizyt
+4 głosów
2 odpowiedzi 393 wizyt

92,079 zapytań

140,733 odpowiedzi

317,692 komentarzy

61,395 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia w koszyku, uzyskując rabat aż -50% (w dniach 24.11 - 29.11 z okazji Black Friday, a potem będzie to -30%) na bilety w wersji "Standard"! Więcej informacji na temat akademii znajdziecie tutaj. Dziękujemy Sekurakowi za tak fajną zniżkę dla Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 15% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...