Многоплатформенный 2D-игровой движок

Я создаю 2D-игру, в которой я хочу использовать кросс-платформу (на платформах, таких как Windows, Mac, iOS и Android в качестве основных целей), а используемый мной движок должен быть открытым. Основная цель – обеспечить максимальную переносимость кода (возможно, через скрипты).

Я бы предпочел сделать это на C #, но использование другого языка не является серьезной проблемой, если нужно.

Я рассмотрел MonoGame и flash, используя Flex SDK, поскольку они оба претендуют на кросс-платформу и с открытым исходным кодом.

Какой из них был бы лучшим выбором, учитывая мои критерии? Или может быть более подходящим другим игровым движком / библиотекой?

Двигатели, приведенные ниже, позволяют вам многократно использовать весь свой код, только вам нужно изменить разрешение и сенсорный ввод / управление с рабочего стола на мобильный или наоборот. Я бы предложил вам проверить эти двигатели, все они с открытым исходным кодом:

  • Libgdx – Использует Java и почти так же быстро, как и XNA, но быстрее, чем MonoGame. «Опубликуйте свои игры в Windows, Mac, Linux, Android, iOS и HTML5, все с той же базой кода». – с их сайта, все, что может запускать java, может запускать вашу игру. Большое сообщество, поэтому у вас не должно быть проблем с вопросами, когда вам нужна помощь и получение.
  • Qt-Project – Qt – это кросс-платформенное приложение и платформа пользовательского интерфейса для разработчиков, использующих C ++ или QML, язык CSS и JavaScript. Начиная с Qt 5.1 вы должны иметь возможность создавать для Android и iOS, что позволяет вам создавать для всех платформ, которые вы запросили. Большое сообщество.
  • Moai – использует Lua и может развертываться на всех запрошенных вами платформах. Единственным недостатком является то, что сообщество довольно мало, а документы немного устарели, но люди на irc и форумах обычно помогут вам, но ответ не всегда будет незамедлительным. Вам также нужно создавать собственные хосты для создания платформ, которые вы хотите, но в прошлый раз, когда я проверил, были общедоступные хосты для всех платформ.

Libgdx кажется вам идеально подходящим. Производительность потрясающая, сообщество велико, и это позволяет повторно использовать один и тот же код для всех платформ, просто чтобы назвать несколько. Единственным недостатком является то, что он не использует C #. Конечно, вы должны обязательно изучить их сами и посмотреть, соответствуют ли они тем, что вы хотите. Желаю вам удачи в ваших начинаниях.

Я бы предложил Unity3D . Это 3D-платформа. Но если вы используете только 2 измерения, вам хорошо идти. В Unity3D вы можете написать свою игру на C #, Javascript или Boo.

Unity является бесплатным и может экспортироваться в Windows Phone, Windows 8 App, Windows, Mac, Linux, Android, Blackberry, iOs, Xbox360, Wii и PS3, но для последних 3 вам нужна лицензия разработчика от Microsoft / Sony / Nintendo. Но есть вероятность.

ОБНОВИТЬ

Раньше вам приходилось платить за ios и Android. Теперь они свободны:

Сегодня мы делаем еще один шаг на этом длинном пути: на данный момент независимые разработчики Unity смогут бесплатно бесплатно разместить свои игры на платформах Android и iOS. Обновите Unity, и вы найдете варианты сборки Android и iOS (ранее базовые надстройки), готовые и ожидающие вас.

Источник: http://blogs.unity3d.com/

В то же время появилась поддержка других платформ (включая Windows Phone, Winrt & Blackberry). Все это бесплатно. Если вам нужны профи, вам нужна профессиональная лицензия. Но большая часть материала, в котором вы нуждаетесь, находится в бесплатной версии. Чтобы сравнить, посмотрите на эту страницу .

Есть несколько вариантов, основанных на ваших предпочтениях; Я перечислил пару из тех, с которыми я недавно столкнулся.

  1. В наши дни серии Cocos2d очень популярны. Если вы считаете, что C ++ не проблема для вас, то Cocos2d-X будет вариантом, поскольку он предлагает множество платформ. Другие серии Cocos2d также могут привлечь ваше внимание. Я думаю, есть несколько версий, таких как HTML5, Javascript, Python. И т. Д., Но я думаю, что только cocos2d-x является кросс-платформой.
  2. Unity3D (C #, Javascript, Boo) представляется как опция, но он не является открытым исходным кодом, а также UDK (UnrealScript) тоже, но если вы думаете купить лицензию, они предлагают исходный код, я думаю
  3. Flash также может быть хорошим вариантом, как вы упомянули. Он использует AS3, который является языком ООП и может быть очень полезен, если вы новичок.
  4. И ImpactJS предлагает множество платформ также, он использует HTML5, вы можете проверить здесь http://impactjs.com/

Список может быть длиннее и длиннее и зависит от ваших потребностей. Вы должны четко указать свои потребности; Насколько глубоко вы хотите пойти, какие платформы важны для вас? и т.п.

Удачи

Вы можете попробовать следующее: http://www.appgamekit.com/ (AGK) Код на c ++, но отлично работает. Очень простой движок.