Выбор кроссплатформенного мобильного движка для разработки игр?
Цель: разработка кросплатформенных игр на мобильные телефоны. Основной target: iOS (iPhone/iPad) и Android, большим плюсом будет поддержка Windows Phone 7, Symbian, Bada.
Задача: максимально быстрая и удобная разработка игр, цена движка роли не играет. Из игр, предположительно 2D аркады, казуалки. Должна быть возможность показа рекламы, поддержка мультиплеера и интеграции с Game Center (iOS) / OpenFeint, шаринг в соц сети. Доступ к Native API будет большим плюсом. Большое количество 3rd Party Tools, плагинов и наработок, ускоряющих процесс разработки тоже крайне желательно.
На данный момент есть два претендента: Corona SDK и Unity 3d. У обоих есть как плюсы так и минусы. Слышал разработка 2D игр на Unity требует довольно больших усилий, за то в замен получаем desktop и web версии!
В общем дискас. Плюсы, минусы, подводные камни. Возможно есть еще годные аналоги которые я упустил.
p.s. Топики «Выбираем мультиплатформенный движок для разработки мобильных игр 1,2» смотрел. Но в них тема не очень раскрыта, интересует больше опыт использования в реальных проектах.
В общем тогда остановились на Corona, сделали пару игр, намучались жутко из-за багов и ограничений платформы, купили ентерпрайз версию, но все равно не решили всех проблем. В общем перешли на Unity и очень счастливы по сей день.
Пользуюсь Мармеладом:
+ Быстрый
+ Поддерживает кучу платформ (естественно, не включая WP7, так как там все еще нету NDK)
+ Обертки для многих системных сервисов
+ Можно писать нейтивные модули под основные платформы
+ Компилируется в клик под все платформы
+ Стандартный С++, легко прикручиваются практически любые стандартные библиотеки.
+ Уже есть набор готовых портов библиотек и движков (Box2D, chipmunk, ODE, boost, cocos-x, и т.д.)
+- Относительно низкоуровневевая (частично компенсируется сторонними библиотеками)
— Очень слабая гуй-библиотека, не смотря на зявление, о том, что на нем можно писать не только игры — их гуй библиотека мало подходить для хоть чего-то серьёзного.
— Некоторые вещи завязанные на систему (например сплешскрины) достаточно сложно сделать так, что везде работали одинакого хорошо.
— Достаточно дорогая лицензия
В целом доволен. Первые два проекты делал на голом SDK, но фактически пришлось игровой движек писать самому. Для следующего, думаю попробую использовать cocos2d-x в качестве высокоуровневой надстройки.
Можете посмотреть материалы по докладу Дмитрия Жестилевского с Yet Another Conference. Они в Яндексе при создании мобильных «Панорам» использовали OpenKODE с множеством своих костылей. Быстрой разработку не назовешь, однако опыт может быть полезен.