Cocos2d-x против cocos2d-android для игры для Android - PullRequest
19 голосов
/ 13 декабря 2011

После использования «cocos2d-iphone» в одном из моих проектов я пытаюсь решить, какой вариант Cocos2d мне следует использовать для игры для Android. Мой личный список плюсов и минусов:

Cocos2d-х

плюсы: проще будет вывести игру на iOS позже, возможно, и на другие платформы

минусы / сомнения: отладка кода C ++ на Android (просто или нет?), Совместимость приложения NDK с различными устройствами Android (насколько это сложно?), Доступ к платформе -специфичная функциональность (встроенные покупки и т. д.)

cocos2d-андроида

плюсы: все Java, проще в настройке и доступе к функциям платформы

минусы: придется переводить с Java на c ++ или Objective-C для других платформ

Есть ли другие проблемы с одним из вариантов, о которых я не думал? Если кто-то должен был сделать этот выбор, что вы выбрали и почему?

Ответы [ 4 ]

25 голосов
/ 13 декабря 2011

Обратите внимание, что есть два проекта с почти одинаковыми именами: cocos2d-android и cocos2d-android * 1 *.Последний является ответвлением от первого, и его автор сделал это, потому что проект cocos2d-android был почти мертв.

Вначале у меня были сомнения по поводу cocos2d-android1 (который, кажется, очень хорошая работа) иcocos2d-x, но возможность развиваться на C ++ (что мне очень нравится) и быть мультиплатформенным заставила меня выбрать cocos2d-x.

Я все еще пытаюсь выучить cocos2d-x.

Что мне нравится в этом:

  • Элемент списка

  • это C ++ framework

  • Вы можете разрабатывать для Android, iPhone, Bada, Blackblerry Playbook, Windows и Linux.Обратите внимание, что на данный момент команда cocos2d-x сообщает, что порт Windows и Linux предназначен для облегчения вашей разработки, а не для производства.

  • имеет привязку Lua

  • у него есть версия для Marmalade (платный мультиплатформенный SDK)

cocos2d-x работает с NDK начиная с версии 4. В настоящее время я использую NDK r7.Вы можете разрабатывать для устройств, работающих под управлением Android 2.1 (API 7)

Кажется, что есть некоторые проблемы с cocos2d-x на Android 4 (что не должно быть проблемой, потому что и это все еще не так широко распространено иКоманда cocos2d-x исправит любую проблему, с которой они столкнутся).

Вы сможете получить доступ к специфическим функциям платформы, таким как покупка в приложении, но это будет иметь цену: вы будете делать практически все, используя JNI.

Определенно, это сложнее, чем просто поместить jar SDK в папку libs и напрямую вызывать функции Java, но это выполнимо.

Вы можете разрабатывать на Windows, Linux или Mac.Для каждой ОС, которую вы используете в машине разработки, процедуры для подготовки вашей среды (cocos2d-x + target SDK) различны.Это не проблема, потому что вы обычно придерживаетесь одного из них.

Теперь позвольте мне сказать вам, что отладить код JNI / Java не так просто.Зачем?Поскольку для его включения необходимо выполнить много шагов, а процесс отладки идет медленно.

Чтобы команда cocos2d-x посоветовала разработать всю вашу игру для Linux или Windows, и после этого все будет готово, и вы скомпилируете ее.на Android.Таким образом, у вас будут небольшие проблемы, которые нужно решить (если они есть)

Я предпочитаю разрабатывать для Android с самого начала.

В общем, я очень рад кодированию с cocos2d-x.Сообщество очень увлечено cocos2d-x, и они очень его поддерживают.

В процессе обучения я написал два учебника:

С уважением.

5 голосов
/ 23 мая 2012

У меня была такая же проблема 2 месяца назад.Cocos2d-Android мертв, поэтому используйте cocos2d-x. Здесь некоторые ссылки и руководства, чтобы начать его использовать.

2 голосов
/ 26 февраля 2014

Если вы знакомы с C / C ++, во что бы то ни стало идите по пути Cocos2d-x. ОДНАКО, если вы пришли из Android и Java, не имея опыта работы с C ++, это может быть очень болезненный опыт - привести все в порядок. Поскольку проект Cocos2D для Android в последнее время был медленным, я не скажу особо, что он мертв. Я использовал версию, размещенную на github здесь .. https://github.com/ZhouWeikuan/cocos2d

Есть несколько руководств по началу работы.

Пошаговое руководство о том, как создать свою первую игру Slider Puzzle в Cocos2d для Android - часть 1 http://denvycom.com/blog/step-by-step-guide-on-how-to-build-your-first-slider-puzzle-game-in-cocos2d-for-android-part-1/

Как сделать простую игру для Android с Cocos2D http://dan.clarke.name/2011/04/how-to-make-a-simple-android-game-with-cocos2d/

Надеюсь, что для всех, кто придет в эту ветку, это полезно!

0 голосов
/ 09 октября 2013

cocos2d-x (98% в C ++ и некоторых кодах Android Java) - единственная версия cocos2d, полезная для Android.

cocos2d Android (все Java) может быть полезен, если вы хотите создать несколько прототипов, но в качестве активного проекта разработки с открытым исходным кодом он давно устарел и не поддерживается.

Если вы хотите написать Java-игру на Android, используйте AndEngine - он активен и в хорошем состоянии.

...