Что такое Cocos 2D на хабре уже писали, но как им пользоватся — не нашел, поэтому решил восполнить этот пробел.
Итак, начинаем…
Скачать фреймворк можна здесь. Последняя стабильная версия 1.0.1. Скачав архив и распаковав его, открываем терминал и переходим в корень скачаного архива, после чего запускаем скрипт установки:
sudo ./install-templates.sh
после чего терминал запросит пароль суперюзера, а получив его — начнет инсталяцию.
Следует отметить, что при наличии нескольких версий iPhone SDK, Cocos устанавливается в ту, которая находится в каталоге /Developer У меня там старый XCode 3.2.5 и iOS SDK 4.2
После установки Cocos2D запускаем ХCode и создаем новый проект. Кроме iOS-проектов и MAC-проектов, появился еще пункт «User Templates», где лежат 4 шаблона:
Первые два шаблона — это шаблоны приложений cocos2d для iOS и MAC OS. Другие два — шаблоны приложений cocos2d для iOS с встроеными физическими движками — box2d и Сhipmunck.
При этом если сам Cocos2D(по краней мере интерфейс) написан на Objective C, то Box2D — на С++.
Выбираем cocos2d Application.
В созданом проекте сразу бросается б глаза, что в папке Classesкроме стандартных двух класов *AppDelegate и RootViewController есть еще и третий — HelloWorldLayer. Это и есть стартовый слой Cocos2D, в которой и происходить прорисовка первой сцены.
Немного об основных классах в Cocos 2D. Базовым класом большинства графических обьектов есть CCNode. В нем содержатся основные свойства таких обьектов: положение(position), масштабирование(scale, scaleX, scaleY), видимость(visible).
CCLayer — слой, на котором рендерится сцена. Может принимать ивенты от touch-screen, мыши и клавиатуры(приналичии устройств)
ССSprite — спрайт.
CCLabelAtlas, CCLabelBMFont — текстовые поля, текст выводится с помощью шрифта, сымволы которого записаны на текстуре.
ССLabelTTF — текстовое поле, которое выводит текст с помощью системных шрифтов.
ССMenu — меню, состоит из пунктов CCMenuItem, которые можна инициализировать с помощью текста или текстур.
CCDirector — один из самых важных классов, отвечает за работу с системой: инициализация OpenGL, установка параметров вывода, смена и рендеринг сцен, размеры екрана и физическое расположение сцен на екране.
CCTouchDispatcher — отвечает за передачу touch-событий отдельным обьектам сцены.
CCAction — базовый класс для анимаций.
P.S. Если кого то заинтересует, то могу описать процес создание пин-понга с помощью Box2d, подробнее остановившись на некоторых из описаных компонентов.
Итак, начинаем…
Скачать фреймворк можна здесь. Последняя стабильная версия 1.0.1. Скачав архив и распаковав его, открываем терминал и переходим в корень скачаного архива, после чего запускаем скрипт установки:
sudo ./install-templates.sh
после чего терминал запросит пароль суперюзера, а получив его — начнет инсталяцию.
Следует отметить, что при наличии нескольких версий iPhone SDK, Cocos устанавливается в ту, которая находится в каталоге /Developer У меня там старый XCode 3.2.5 и iOS SDK 4.2
После установки Cocos2D запускаем ХCode и создаем новый проект. Кроме iOS-проектов и MAC-проектов, появился еще пункт «User Templates», где лежат 4 шаблона:
- cocos2d Application
- cocos2d Application — MAC
- cocos2d box2d Application
- cocos2d Сhipmunck Application
Первые два шаблона — это шаблоны приложений cocos2d для iOS и MAC OS. Другие два — шаблоны приложений cocos2d для iOS с встроеными физическими движками — box2d и Сhipmunck.
При этом если сам Cocos2D(по краней мере интерфейс) написан на Objective C, то Box2D — на С++.
Выбираем cocos2d Application.
В созданом проекте сразу бросается б глаза, что в папке Classesкроме стандартных двух класов *AppDelegate и RootViewController есть еще и третий — HelloWorldLayer. Это и есть стартовый слой Cocos2D, в которой и происходить прорисовка первой сцены.
Немного об основных классах в Cocos 2D. Базовым класом большинства графических обьектов есть CCNode. В нем содержатся основные свойства таких обьектов: положение(position), масштабирование(scale, scaleX, scaleY), видимость(visible).
CCLayer — слой, на котором рендерится сцена. Может принимать ивенты от touch-screen, мыши и клавиатуры(приналичии устройств)
ССSprite — спрайт.
CCLabelAtlas, CCLabelBMFont — текстовые поля, текст выводится с помощью шрифта, сымволы которого записаны на текстуре.
ССLabelTTF — текстовое поле, которое выводит текст с помощью системных шрифтов.
ССMenu — меню, состоит из пунктов CCMenuItem, которые можна инициализировать с помощью текста или текстур.
CCDirector — один из самых важных классов, отвечает за работу с системой: инициализация OpenGL, установка параметров вывода, смена и рендеринг сцен, размеры екрана и физическое расположение сцен на екране.
CCTouchDispatcher — отвечает за передачу touch-событий отдельным обьектам сцены.
CCAction — базовый класс для анимаций.
P.S. Если кого то заинтересует, то могу описать процес создание пин-понга с помощью Box2d, подробнее остановившись на некоторых из описаных компонентов.