2. Sobre
• Rafael Martins
• LudeoLabs. Skyzone Entertainment, Electronic Arts e Hive
Digital
• E-mail: ra.martins13@gmail.com
• Portfolio: www.mobilegamedeveloper.com.br
GameDays´15
3. O que é Cocos2d-x?
• Uma engine open source 2d otimizada com
OpenGL
• 400.000+ desenvolvedores
• Inicialmente criada por Ricardo Quesada em
2008 (Cocos2D)
• Portada por Zhe Wang em 2010 para c++
GameDays´15
4. Vantagens
• Rápida prototipação
• Comunidade Experiente
• Não são necessários conhecimentos sólidos em
OpenGL
• Abstração de camadas de sistemas operacionais
• Performance
GameDays´15
5. Pontos Negativos
• Interface visual
• Curva de aprendizado para não-programadores
• Plugins dinâmicos
GameDays´15
7. Showcase
• Badland
• Castle Clash
• Family Guy: The Quest for Stuff
• Marvel Avengers Alliance
• Angry Bird Fight
• Clash of Kings
• Star Wars: Tiny Death Star
• Final Fantasy Record
• Diamond Dash
GameDays´15
19. Input - Outros
• Keyboard
void onKeyReleased(EventKeyboard::KeyCode keyCode, Event *pEvent);
void onKeyPressed(EventKeyboard::KeyCode keyCode, Event *pEvent);
• Acelerômetro
this->setAccelerometerEnabled(true);
• Gamepad
o 3rd Party
o Implementação própria
o Joysticks virtuais
GameDays´15
20. Schedulers / Callbacks
• Schedulers são responsáveis por ativar os Callbacks
• Agenda funcões frame a frame ou periodicamente
• Loop principal
scheduleUpdate();
• Agendando uma função específica
schedule(schedule_selector(Enemy::move, 3.0f));
GameDays´15
21. Criando um projeto
• Linha de comando:
c:cocos2dx_root> cocos new MeuJogo -p
br.com.meujogo -l cpp -d Projetos
-p = nome do pacote
-l = linguagem
-d = pasta
GameDays´15
29. Texture Packer
• Gerador de Spritesheets
• Arquivo Plist
• Armazenando texturas no cache
SpriteFrameCache::getInstance()->addSpriteFramesWithFile(“sprites.plist”,
“sprites.png");
• Criando uma sprite a partir do cache
Sprite* playerSprite = Sprite::createWithSpriteFrameName(“player_idle.png”);
GameDays´15