Jak zacząć tworzyć gry na Androida? [Zamknięte]

112

Jestem nowy w tworzeniu gier. Jestem zainteresowany tworzeniem gier 2D na platformę Android. Od czego najlepiej zacząć (tj.) Jakie są podstawy i jak postępować? Mam już doświadczenie w programowaniu w Javie, ale nie mam doświadczenia w grafice ani animacji.

Ragunath Jawahar
źródło
Proszę, aby pytanie (tytuł) było nieco bardziej opisowe.
Ricket
1
Czy masz doświadczenie z Androidem?
Jesse Dorsey
3
@Ricket lub moglibyśmy to dla niego zrobić :)
Andrew Russell
Jestem ciekawy, czy OpenGL, choć szybszy, zużywa więcej baterii niż zwykłe 2D przy użyciu widoku powierzchni lub jakiejkolwiek innej metody. Czy ktoś zna odpowiedź?
Kelmer
Musisz wybrać jeden silnik gry i jeden pomysł na grę, aby ubrudzić sobie ręce. AndEngine wydaje się pasować do gier 2D, a Flappy Bird to nowy „Hello World” w rozwoju gier. Sprawdź ten samouczek dotyczący Flappy Bird na Androidzie za pomocą AndEngine . Twoje zdrowie!
appsroxcom

Odpowiedzi:

82

Android może nie być najlepszym wyborem do rozpoczęcia tworzenia gier, ponieważ uczysz się kilku różnych rzeczy w tym samym czasie (Android SDK, tworzenie gier, optymalizacja, różne modele telefonów itp.). Zastanów się nad stworzeniem prostych gier Java na swoim komputerze, aby ogólnie zapoznać się z tworzeniem gier; ten samouczek wygląda na dobry początek.

Gdy poczujesz się komfortowo zarówno z Javą, jak i tworzeniem gier, zacznij od samouczków na Androida . Przewodnik programistyczny jest bardzo przydatny, w szczególności musisz znać podstawy Androida i cykl życia aktywności, a także grafikę . Pobierz próbki Androida i sprawdź próbki Lunar Lander i Snake (jest też JetBoy , ale koncentruje się na JetPlayer).

Klasa canvas jest właściwie wystarczająca dla większości gier 2D, ale jeśli potrzebujesz lepszej wydajności lub chcesz przejść do grafiki 3D, będziesz musiał nauczyć się OpenGL ES . Jest to jednak poza zakresem rozpoczęcia (chyba że znasz już OpenGL).

Firas Assaad
źródło
Dokładnie tego szukałem. Thanx @Firas Assaad
Ragunath Jawahar
Innym dobrym zasobem jest książka Hello, Android, która bada tworzenie gry Sudoku w kilku rozdziałach, w tym rysowanie za pomocą płótna i obsługę danych wprowadzanych przez użytkownika. Jest też rozdział o grafice 3D, który tworzy teksturowany obrotowy sześcian.
Firas Assaad
Właśnie przeniosłem się z BlackBerry do dewelopera gier na Androida i chcę rzucić kapelusz z Firas: klasa Canvas oferuje więcej niż wystarczającą wydajność do gry 2D. Nie ma potrzeby dodawania dodatkowej złożoności OpenGL podczas uruchamiania.
ADB
Zgadzam się z tą odpowiedzią, ale Android nie jest gorszym miejscem do rozpoczęcia! Moim pierwszym projektem programistycznym była przeglądarka komiksów. Następnie stworzyłem grę logiczną, a teraz tworzę grę 2D z grafiką OpenGL ES 2.0. Nauczyłem się na jednym kawałku krzywej, ale w ciągu ostatnich 9 miesięcy Android pomógł mi zdobyć dobre podstawy w Javie, SQLite i OpenGL, a także świetny start z OOP i koncepcjami tworzenia gier. Mógłbym zrobić gorzej niż nauczyć się programować na Androidzie.
Amplify91
66

W przepełnieniu stosu jest wiele wyników dla android game. Na szczęście dla ciebie, przejrzałem je wszystkie i wybrałem odpowiednie dla twojego pytania.

Ricket
źródło
Ten post na temat używania AndEngine do stworzenia klona Flappy Bird jest również niesamowity!
appsroxcom
1
Pierwsze dwa linki są zepsute, są już dostępne
Fahim
Tragiczny. Były też pełne treści wysokiej jakości.
Ricket
18

Jeśli znasz już system Android i robisz z nim podstawowe aplikacje UI, powinieneś rzucić okiem na ten wieloczęściowy samouczek wyjaśniający rysowanie grafiki na ekranie Androida.

Bryan Denny
źródło
5
link wydaje się być zepsuty - być może strona już nie istnieje
Nasir
4

Wszystkie są naprawdę dobrą odpowiedzią. Ale jestem trochę zaskoczony, że nikt jeszcze nie wspomniał o jMonkeyEngine .

Jego Java, oparta na modułach cieniujących, bardzo łatwa na początek, bardzo dobra dokumentacja, niesamowita społeczność, szybkie poprawki błędów, ma środowisko do tworzenia gier (jMP oparte na platformie NetBeans) i rozwija się bardzo szybko.

Chciałbym położyć na to większy nacisk, ponieważ tworzenie gier i tworzenie biblioteki, z której ktoś będzie korzystał przy tworzeniu gry, jest zupełnie inne. Tak więc, jeśli chcesz, aby gra nie jest silnikiem gry, od razu wskoczyć w jMonkey silnika z zamkniętymi oczami. :)

Quazi Irfan
źródło
Przeprowadziłem szybkie wyszukiwanie w Google dotyczące jMonkeyEngine i Androida. Zakładałem, że ponieważ Android używa własnego interpretera Java, jMonkeyEngine na nim nie działa. Nadal jest to Java, więc może zrobiliby port. W każdym razie minuta badań wskazuje, że jest to praca w toku.
xuincherguixe
jME działa na Androidzie, w sklepie jest kilka projektów. Proponuję, zamieszczając na swoim forum specyfikacje techniczne.
Quazi Irfan
3

Processing.org to kolejne dobre miejsce do rozpoczęcia (nieco uproszczonego) kodowania / programowania przed zanurzeniem się w Android SDK. Działa na systemach Max / Windows / Linux i ma wersję opracowaną specjalnie dla systemu Android. Zdecydowanie go polecam - o ile masz telefon z Androidem, możesz wdrażać w nim gry / aplikacje utworzone w tej wersji Przetwarzania. Mam nadzieję, że to pomoże.

Gary
źródło
Możesz także publikować na rynku Android od najnowszej wersji, chociaż nie próbowałem.
Gary
Słyszałem, że przetwarzanie ma problemy z wydajnością w Androidzie, czy to prawda?
Ragunath Jawahar
Nie próbowałem wystarczająco wielu różnych rzeczy, aby udzielić popartej prawdziwej / fałszywej odpowiedzi. Moje programy wydają się dobrze działać na Androidzie. Powiedziałbym, że przeszukuj internet, forum Android przetwarzania przetwarzania itp. Lub po prostu wypróbuj. ;)
gary
Ok, sprawdzę to w @gary comtois
Ragunath Jawahar
2

Jestem również nowy w tworzeniu gier na Androida i uważam, że silnik gry open source AndEngine to całkiem dobre narzędzie na początek. Ma mnóstwo przykładów i dość aktywną społeczność.

http://www.andengine.org/

Casla
źródło
0

Zdecydowanie polecam pakiet Airplay SDK, ponieważ działa on w systemie Windows i działa na większości smartfonów. Mają też świetną licencję na Indie.

Kimau
źródło
Jestem programistą Java, wygląda na to, że Airplay SDK to C ++ / XCode SDK?
Ragunath Jawahar
Airplay SDK jest teraz zestawem Marmalade SDK. Ma osobne zestawy SDK dla C ++, Lua, HTML5 i Objective C
noob