Чи є такі речі, які допоможуть мені створити свою гру Android?
Чи є такі речі, які допоможуть мені створити свою гру Android?
Відповіді:
EDIT: PSA: Майте на увазі, що ця відповідь була написана в 2012 році, а через 3 роки існує набагато більше двигунів, і багато з них створені виключно для мобільних пристроїв. Не сприймайте цю відповідь як належне та шукайте в Google для останніх двигунів.
Я порту Irrlicht на Android і використовую його для 2D ігор. Це не найкраще рішення, але я маю сильні виступи. Я спробував багато Java Frameworks, але Garbage Collector може затримувати ваші ігри протягом 0.2 секунд на телефоні G1 ... Тож рамки повинні робити розподіл дуже обережно.
Комерційні рамки C ++:
Структури з відкритим кодом C ++:
Кадри з відкритим кодом Java:
Фізичний двигун:
Увага: Бібліотеки Java працюють з Froyo та JIT набагато краще. Але проблеми зі збирачем сміття завжди актуальні. З пряниками, збирач сміття неперервний, тому немає проблем.
Я здивований, що ніхто не згадував libgdx. http://code.google.com/p/libgdx/
AndEngine є досить новим, але він є відкритим кодом і виглядає перспективно.
Самоопис:
Безкоштовна Android 2D OpenGL Game Engine. AndEngine розроблений Ніколасом Грамліхом.
Я думаю, ви можете використати гру Репліка-Айленд від Кріса Пруетта як приклад 2d-гри. Я думаю, що це має бути базою для інших ігор, як це пояснено у цьому відео з Google I / O 2010. Ви можете подивитися цю гру тут .
Unity3D (який технічно можна використовувати для створення 2D-ігор) "скоро" для Android: http://unity3d.com/
cocos2d для Android базується на бібліотеці iPhone cocos2d . Я не впевнений, наскільки він корисний на даний момент, але це варто перевірити.
androidbox2d - Android-порт Box2D. Box2D - багатофункціональний двигун з твердим тілом корпусу.
Зараз працює порт SDL для Android , і SDL - це, мабуть, найкраща 2D-графіка. Він був розроблений однією з лідерів компанії Blizzard, тому ви знаєте, що реальна експертиза в побудові ігор вже ввійшла в неї.
Ігровий движок SIO2. Щойно випущена нова версія з повною підтримкою Android. Ви можете створювати 2D та 3D ігри, використовуючи його та переносячись між різними платформами. http://sio2interactive.com
Я працюю над ігровим двигуном з відкритим кодом 2d під назвою YoghurtGum, який повинен бути як для Windows Mobile, так і для Android. Однак перенести все на Android C ++ виявилося надзвичайно важко.
Це найкорисніша відповідь, яку я коли-небудь знаю.
Якщо ви хочете розвиватися в AIR для Android, ви можете використовувати Flash. Насправді Flash не має особливих ігрових особливостей, але завдяки успіху Flash в Інтернеті існує величезна кількість сторонніх бібліотек для нього, спеціально розроблених для ігор.
Деякі з найпопулярніших сторонніх фреймворків для ігор у Flash включають Flixel (http://flixel.org/) та PushButtonEngine (http://pushbuttonengine.com/), які повністю розроблені для розробки ігор. Flash також має версію Box2D (згаданий вище фізичний двигун - http://box2dflash.sourceforge.net/ ) і є різні тривимірні бібліотеки, наприклад Papervision (http://code.google.com/p/papervision3d/) якщо ви хочете піти цією дорогою в майбутньому.
Однак, головним недоліком розвитку AIR є те, що я майже впевнений, що вам потрібно буде націлити Froyo 2.2 або пізнішої версії, тому старі телефони залишатимуться без уваги.
Cocos2D-x - це порт Cocos2D для iPhone, написаний на C ++, орієнтований на Android NDK і активно розробляється для досягнення паритету функцій з версією iPhone. У нього не буде проблем зі збору сміття, і ви отримаєте відносно простий порт для iOS, Win32 та, можливо, з часом OSX найближчим часом.
PlayN - це багатоплатформна 2D-ігрова рамка, яка націлена на Android, крім HTML5, Flash та JVM. Це дещо нове, але використовувалося для написання HTML5 реалізації Angry Birds та має досить активне співтовариство.