Разработка кросплатформенного игроого приложения на движке Cocos2d-x

С детства мне нравилось играть в игры, сначала на игровой приставке, затем и на компьютере. Это в определенной мере повлияло на то, что я поступил учится Донецкий национальный технический университет на Факультет компьютерных наук и технологий. При обучении здесь часто приходилось создавать определенные программы в которых нужно показать степень овладения предметом. Мне всегда не нравилось создавать программы, которые в дальнейшем откладываются в дальний ящик и больше не используются и вскоре забываются. Поэтому я иногда в качестве курсовых проектов и даже в дипломной работе бакалаврата создавал простенькие игры в которых применял нужные алгоритмы.

За годы учебы я выбрал для себя игровой движок который мне нравиться больше всего ¬– Cocos2d-x. Мой выбор пал на него из-за того, что я предпочитаю создавать программы на языке C++, а данный движок как раз позволяет разработку на этом языке (в числе прочего данный движок поддерживает разработку игр на Javascript и Lua). Также немаловажным является и то что Кокос позволяет создавать приложения практически для всех самых распространенных операционных систем, в том числе и мобильных.

Cocos2d-x logo

Рисунок 1 – Логотип Cocos2d-x

Оригинальный Cocos 2D был разработан на Python в 2008 году, затем в том же году он был портирован на языке Objective C под iPhone (версия Cocos 2D-iPhone); два годя спустя была выпущена кросс-платформенная версия Cocos 2D-X на C++.

Если коротко проследить дальнейшую историю, то видно, что потом появились версии с поддержкой Android (Java), XNA (C#) и HTML 5 (JavaScript). Также имеется расширение для визуализации трехмерной графики Cocos 3D, но оно не получило особого развития и распространения просто потому, что юзерам не хочется 3D на мобильном девайсе.

Самая востребованная версия именно Cocos 2D-X, благодаря C++ и кросс-платформенности. Заявлена поддержка: iOS, Android, Windows Phone 7 (XNA), BlackBerry, Tizen, Bada, Marmalade, Windows, Linux. Используя Cocos 2D-X, можно кодить на C++, Lua и JavaScript. Движком пользуются как программисты-исследователи, небольшие инди-команды, так и монстры игровой индустрии: Zynga, Konami, Disney Mobile. Благодаря бешеной популярности движка — полтора миллиарда закачек основанных на нем игр — в его развитии принимают участие разработчики из Google, Microsoft, Intel.

Поддержка движком акселерометра позволяет создавать динамичные игры с перемещением в пространстве. Безусловно, для обработки физики используется Box 2D, плюс, на выбор, движок Chipmunk. Имеется несколько специальных отдельных редакторов (как платных, так и бесплатных), служащих для создания определенного контента: атласы, шрифты, частицы, спрайтовые таблицы и так далее. Набор GUI-элементов довольно мал, но можно создать недостающие компоненты самостоятельно.

Cocos2d-x logo

Рисунок 2 – Снимок из моей игры

Мне этим движком нравится пользоваться из-за того, что разрабатывая игру для мобильного устройства, я могу тестировать ее на своем компьютере. А вот скриншот из игры, которую я делал для своей бакалаврской дипломной работы. Это игра Жизнь и вней я делал простенький искусственный интеллект, который мог быть оппонентом.


Список источников

  1. Cocos2d-x Официальн сайт [Электронный ресурс]. – Режим доступа : http://www.cocos2d-x.org
  2. Обзор самых популярных движков для разработки игр [Электронный ресурс]. – Режим доступа : https://xakep.ru/2014/09/05/game-development-engines-review/#toc06.