Pull to refresh

cocos2d — фреймворк для создания игр для iPhone

Reading time2 min
Views5.4K
Cocos2d — это небольшой opensource фреймворк для создания 2D игр. Изначально он создавался для программ, написанных на python'е для платформ Windows, Linux и Mac, но потом появились версии для iPhone и даже для Android.

Мы использовали его для написания своей игры iTreasure (ссылка в iTunes) — ремейка «Тайны Океана» и ни разу не пожалели об этом.

Почему cocos2d


— Богатые возможности.
Все, что нужно от движка для двумерной игрушки в нем есть. Ниже я еще расскажу подробнее о функциональности.

— Простота.
Если вы уже писали что-нибудь для iPhone, то начать использовать cocos2d вам практически ничего не будет стоить.

— Открытость.
У движка очень хорошая лицензия — GNU Lesser GPL, что позволяет свободно использовать его в коммерческих продуктах.

— Большое комьюнити.
Уже более 200 программ игр сделано с использованием cocos2d. В интернете можно найти огромное количество информации о тонкостях и проблемах, связанных с использованием движка (правда, на английском языке).

— Множество рабочих примеров и приложений с открытым кодом.
Во-первых, очень много рабочих примеров включено в дистрибутив фреймворка. Кроме того, многие люди открывают исходники своих приложений (даже продающихся в appstore), для того, чтобы другие могли найти в них готовые решения и ответы на свои вопросы.

Немного о возможностях фреймворка


— Управление сценами.
Всю игру можно разбить на сцены. Фактически, к сцене можно относиться как к небольшому подпроекту. Между сценами можно переключаться с использованием различных эффектов: fade, slide, rotation и т.д.

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

— Анимация (actions).
Анимация в cocos2d осуществляется с помощью специальных классов, которые называются Actions. Их можно применять почти к любому объекту в игре. В движке есть большой набор типов анимаций и кроме того, можно создавать свои.

— Базовая реализация меню и кнопок.
Кнопки не такие продвинутые, как в UIKit, но для создания игровых меню их вполне достаточно. Для текста в меню можно использовать спрайтовые шрифты.

— Система частиц.
Движок поддерживает системы частиц. Можно создавать различные эффекты, типа дождя, снега, фейерверка. Частицы могут различаться размерами, вращаться, к ним может применяться гравитация, можно настраивать их время жизни и так далее.

— Встроенные физические движки Box2d и Chipmunk.
Честно говоря, мы их сами не использовали, но демо выглядят впечатляюще. Столкновения, трение, твердые тела, упругость и прочее.

— Cocos Live — сервис для онлайн-рекордов.
Движок использует сервера, предоставляемые Google App Engine для хранения онлайн-рекордов и предоставляет API для работы с этими рекордами. Но мы решили вместо Cocos Live использовать социальную сеть OpenFeint, которая тоже позволяет пользователям делиться своими рекордами с другими игроками, а кроме этого предоставляет много других возможностей. Если вам будет интересно, расскажу про нее более подробно.
Tags:
Hubs:
+16
Comments11

Articles

Change theme settings