Czy są dostępne takie rzeczy, które pomogą mi zbudować grę na Androida?
Czy są dostępne takie rzeczy, które pomogą mi zbudować grę na Androida?
Odpowiedzi:
EDYCJA: PSA: Pamiętaj, że ta odpowiedź została napisana w 2012 roku, a 3 lata później istnieje o wiele więcej silników, a wiele z nich jest stworzonych wyłącznie na urządzenia mobilne. Nie bierz tej odpowiedzi za pewnik i szukaj w wyszukiwarce Google nowszych wyszukiwarek.
Przesyłam Irrlicht na Androida i używam go do gier 2D. To nie jest najlepsze rozwiązanie, ale mam dobre wyniki. Wypróbowałem wiele frameworków Java, ale Garbage Collector może opóźnić twoje gry w 0.2s na telefonie G1 ... Więc framework powinien bardzo ostrożnie alokować.
Komercyjne frameworki C ++:
Frameworki C ++ Open Source:
Struktury Java Open Source:
Silnik fizyki:
Ostrzeżenie: dzięki Froyo i JIT biblioteki Java działają znacznie lepiej. Ale problemy z Garbage Collector są zawsze aktualne. W przypadku piernika pojemnik na śmieci jest ciągły, więc nie ma problemu.
Dziwi mnie, że nikt nie wspomniał o libgdx. http://code.google.com/p/libgdx/
AndEngine jest całkiem nowy, ale jest open source i wygląda obiecująco.
Samoopis:
Darmowy silnik gier 2D OpenGL dla Androida. AndEngine został opracowany przez Nicolasa Gramlicha.
Myślę, że możesz użyć gry Replica Island od Chrisa Pruetta jako przykładu gry 2D. Myślę, że ma to być baza dla innych gier, jak wyjaśniono w tym filmie z Google I / O 2010. Możesz obejrzeć grę tutaj .
Unity3D (które technicznie można wykorzystać do tworzenia gier 2D) „wkrótce” na Androida: http://unity3d.com/
cocos2d dla Androida jest oparty na bibliotece cocos2d dla iPhone'a . W tej chwili nie jestem pewien, jak użyteczny, ale warto to sprawdzić.
androidbox2d to port Androida Box2D. Box2D to bogaty w funkcje silnik fizyki ciała sztywnego 2D.
Obecnie działa port SDL na Androida , a SDL jest prawdopodobnie najlepszą dostępną platformą graficzną 2D. Został zaprojektowany przez jednego z liderów Blizzarda, więc wiesz, że w to się zaangażowało.
Silnik gry SIO2. Właśnie wydałem nową wersję z pełną obsługą Androida. Za jego pomocą możesz budować gry 2D i 3D oraz przenosić je między różnymi platformami. http://sio2interactive.com
Pracuję nad silnikiem gier 2D typu open source o nazwie YoghurtGum, który powinien być przeznaczony zarówno dla systemu Windows Mobile, jak i Androida. Jednak przeniesienie całej rzeczy do Androida C ++ okazało się niezwykle trudne.
To najbardziej nieprzydatna odpowiedź, jak dobrze wiem.
Jeśli masz ochotę programować w środowisku AIR dla Androida, możesz użyć Flasha. Sam Flash nie ma w rzeczywistości żadnych funkcji specyficznych dla gry, ale dzięki sukcesowi Flasha w Internecie istnieje ogromna liczba bibliotek stron trzecich specjalnie zaprojektowanych do gier.
Niektóre z bardziej popularnych zewnętrznych platform gier dla Flasha to Flixel (http://flixel.org/) i PushButtonEngine (http://pushbuttonengine.com/), które są w pełni zaprojektowane do tworzenia gier. Flash ma również wersję Box2D (wspomniany wyżej silnik fizyki - http://box2dflash.sourceforge.net/ ) i istnieją różne biblioteki 3D, takie jak Papervision (http://code.google.com/p/papervision3d/) jeśli chcesz pójść tą drogą w przyszłości.
Główną wadą programowania w AIR jest to, że jestem prawie pewien, że będziesz musiał kierować reklamy na Froyo 2.2 lub nowszy, więc starsze telefony zostaną pominięte.
Cocos2D-x jest portem Cocos2D na iPhone'a napisanym w C ++, przeznaczonym dla Androida NDK i jest aktywnie rozwijany w celu osiągnięcia parytetu funkcji w stosunku do wersji na iPhone'a. Nie będzie miał problemów z odśmiecaniem pamięci, a w najbliższym czasie otrzymasz stosunkowo łatwy port dla iOS, Win32 i prawdopodobnie OSX.