Desenvolvimento de Jogos com Cocos2d-x
Universidade de Blumenau (FURB)

Semana Acadêmica 2013




Bruno Cicanci

Letícia Reis
Conteúdo

 Por onde começar

 Protótipos

 Programação

 Cocos2d-x

 Bonus Level
Por onde começar
Do conceito...
... ao jogo!
Game Design




     http://catavento.art.br/ppt/15semcomp.pdf
Gameplay jogando
Programação sem ter a arte final
Art Of Game Design (Aplicativo)




https://play.google.com/store/apps/details?id=com.schellgames.deckoflenses
Protótipos
Objetivo do protótipo: Validar a mecânica do jogo
Protótipo de papel
Protótipo Digital
Playground




Bioshock Infinity: http://www.youtube.com/watch?v=5OAj5JBMvBo
Programação
Jogue fora o protótipo!
Tommy Refenes (Super Meat Boy)




http://supermeatboy.com/134/How_do_I_get_started_programming_games___/
Controle de versão
Design Patterns
Boas práticas de programação
 Variáveis:
   mVariavel (private)
   sVariavel (static)
   pVariavel (param)
   VARIAVEL (constant)

 Métodos:
   Get()
   CheckCollision(Player pPlayer1, Player pPlayer2)

 Comentários:
   No início da classe com exemplo de utilização e autor
   Explicações em partes complexas
   Justificativas de código temporário
Game Loop



            Toda LÓGICA do jogo é
            processada de acordo com o
            INPUT do jogador, e o
            resultado é exibido
            GRAFICAMENTE na tela
Game Loop - Exemplo
Finite State Machine (FSM)
Cocos2d-x
Cocos2d-x

             Versão C/C++ da cocos2d-
             iphone

             Multiplataforma

             Baseada em eventos

             Código aberto no github*

             Electronic Arts, Wooga, Glu,
             Konami, Gamevil, entre outras

            * https://github.com/cocos2d/cocos2d-x
Exemplo de Arquitetura (mobile)
Arquitetura da Cocos2d-x
Vantagens de programar em C++

Código nativo funciona em praticamente
QUALQUER PLATAFORMA


            DIVERSOS frameworks disponíveis


Principal linguagem utilizada nas EMPRESAS
DE JOGOS (não só mobile)
Jogos em 2D
CCScene
CCScene e CCDirector
CCLayer
CCLayer e update
CCSprite e CCLabelTTF
CCSprite e CCLabelTTF
CCTouch e CCPoint
CCMenu e CCMenuItemImage
CCTransitionScene




http://www.cocos2d-x.org/reference/native-cpp/da/d00/group__transition.html
CCRect
SimpleAudioEngine
Tiled (Editor de nível)
Tiled (Implementação)
TexturePacker (Sprite sheet)
TexturePacker (Implementação)
Particles




http://www.cocos2d-x.org/projects/cocos2d-x/wiki/Particles
Effects




http://www.cocos2d-x.org/projects/cocos2d-x/wiki/Effects
Fórum, documentação, wiki, tutoriais




http://www.cocos2d-x.org/
Bonus Level
Modelos de Negócio
Pago                           Gratuito
 Funciona bem com jogos de       Funciona bem com jogos
  iOS, porém desde que tenha       de Android, pois a pirataria
  uma versão de demonstração       neste OS é maior
  para o jogador testar
                                  Anúncios, quando
 Jogos indie geralmente tem
  preços entre $0.99 e $2.99
                                   colocados em locais
                                   corretos e com uma
 A versão de demonstração         freqüência
  pode ser limitada ou uma         adequada, podem dar um
  versão do jogo usando o          bom retorno
  modelo de negócio gratuito
                                  Jogos Freemium são muito
                                   comuns no Android OS e
                                   iOS
Arte 2D para programadores




  http://2dgameartforprogrammers.blogspot.com.br/
Concursos
Social
Publicidade no Jogo
Links interessantes

Mecânicas de jogo
http://www.squidi.net/three/index.php

Então, você quer ser um game designer?
http://www.youtube.com/watch?v=zQvWMdWhFCc

Então, você quer trabalhar na indústria de games?
http://www.youtube.com/watch?v=u_fr8tEQSGE

Gerador de personages em 2D (pixelart)
http://charas-project.net/charas2/index.php

Artigos sobre gamefication
http://www.gamification.co/2013/01/04/top-articles-by-gamification-experts-in-2012/

10 livros sobre games que você precisa ler
http://arena.ig.com.br/2012-06-28/dez-livros-de-games-que-voce-precisa-ler.html
Livros
   Desenvolvimento de Jogos e Programação:                            Game Design:
       Code Complete - http://amzn.to/oqrBeP                              Game Design Workshop - http://amzn.to/pVvJE0
       Effective C++ - http://amzn.to/NJ2ed2                              Rules of Play: Game Design Fundamentals -
       More Effective C++ - http://amzn.to/qQSksw                          http://amzn.to/oHmOZ8
       Desenvolvimento de Jogos Eletrônicos -                             The Game Design Reader: A Rules of Play
        http://novatec.com.br/livros/jogos2/                                Anthology - http://amzn.to/pTjOd7
       Software Engineering for Game Developers -                         Half-Real: Video Games between Real Rules and
        http://amzn.to/qrY571                                               Fictional Worlds - http://amzn.to/qA7yd6
       Game Engine Architecture - http://amzn.to/pgnZFR
                                                                           A Theory of Fun for Game Design -
       Game Coding Complete - http://amzn.to/qA0Nz4                        http://amzn.to/nmR1Ya
       Programming Game AI by Example - http://amzn.to/nQ5SdY             The Art of Game Design: A book of lenses -
       Real-time Rendering - http://amzn.to/pbHDTp                         http://amzn.to/p0Z5xr

       Game Programming All in One - http://amzn.to/p2S05M
       Beginning C++ through Game Programming -
        http://amzn.to/q0X1fV
       XNA Game Studio Creators Guide - http://amzn.to/nmSlFf
       iPhone Programming The Big Nerd Ranch Guide -
        http://amzn.to/p6kUkJ
       Head First iPhone and iPad Development -
        http://amzn.to/p0qXOo
       Agile Game Development with Scrum - http://amzn.to/nfp3T3
Sites e revistas

   Sites:                                                 Blogs:
       Gamasutra - http://www.gamasutra.com/                  AltDevBlogADay - http://altdevblogaday.com/
       Gamesindustry - http://www.gamesindustry.biz/          Game Developer –
                                                                http://gamedeveloper.com.br
       AppData - http://www.appdata.com/
                                                               Game Producer -
       Ars Technica - http://arstechnica.com/gaming/           http://www.gameproducer.net/
       GameCareerGuide -                                      Indie Games -
        http://www.gamecareerguide.com/                         http://indiegames.com/index.html
   Fóruns                                                 Revistas:
       GameDev - http://www.gamedev.com.br/                   Casual Connect -
       PDJ - http://www.programadoresdejogos.com/              http://casualconnect.org/magazine-archive/
       UniDev - http://www.unidev.com.br/                     Develop - http://www.develop-online.net/
                                                               EDGE - http://www.next-gen.biz/
                                                               Game Developer Magazine -
                                                                http://www.gdmag.com/homepage.htm
                                                               Game Sauce - http://gamesauce.org/news/
                                                               Wired - http://www.wired.com/gaming
Obrigado!

Desenvolvimento de jogos com Cocos2d-x

  • 1.
    Desenvolvimento de Jogoscom Cocos2d-x Universidade de Blumenau (FURB) Semana Acadêmica 2013 Bruno Cicanci Letícia Reis
  • 2.
    Conteúdo  Por ondecomeçar  Protótipos  Programação  Cocos2d-x  Bonus Level
  • 3.
  • 4.
  • 5.
  • 6.
    Game Design http://catavento.art.br/ppt/15semcomp.pdf
  • 7.
  • 8.
  • 9.
    Art Of GameDesign (Aplicativo) https://play.google.com/store/apps/details?id=com.schellgames.deckoflenses
  • 10.
  • 11.
    Objetivo do protótipo:Validar a mecânica do jogo
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
    Jogue fora oprotótipo!
  • 17.
    Tommy Refenes (SuperMeat Boy) http://supermeatboy.com/134/How_do_I_get_started_programming_games___/
  • 18.
  • 19.
  • 20.
    Boas práticas deprogramação  Variáveis:  mVariavel (private)  sVariavel (static)  pVariavel (param)  VARIAVEL (constant)  Métodos:  Get()  CheckCollision(Player pPlayer1, Player pPlayer2)  Comentários:  No início da classe com exemplo de utilização e autor  Explicações em partes complexas  Justificativas de código temporário
  • 21.
    Game Loop Toda LÓGICA do jogo é processada de acordo com o INPUT do jogador, e o resultado é exibido GRAFICAMENTE na tela
  • 22.
    Game Loop -Exemplo
  • 23.
  • 24.
  • 25.
    Cocos2d-x Versão C/C++ da cocos2d- iphone Multiplataforma Baseada em eventos Código aberto no github* Electronic Arts, Wooga, Glu, Konami, Gamevil, entre outras * https://github.com/cocos2d/cocos2d-x
  • 26.
  • 27.
  • 28.
    Vantagens de programarem C++ Código nativo funciona em praticamente QUALQUER PLATAFORMA DIVERSOS frameworks disponíveis Principal linguagem utilizada nas EMPRESAS DE JOGOS (não só mobile)
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
    Fórum, documentação, wiki,tutoriais http://www.cocos2d-x.org/
  • 48.
  • 49.
    Modelos de Negócio Pago Gratuito  Funciona bem com jogos de  Funciona bem com jogos iOS, porém desde que tenha de Android, pois a pirataria uma versão de demonstração neste OS é maior para o jogador testar  Anúncios, quando  Jogos indie geralmente tem preços entre $0.99 e $2.99 colocados em locais corretos e com uma  A versão de demonstração freqüência pode ser limitada ou uma adequada, podem dar um versão do jogo usando o bom retorno modelo de negócio gratuito  Jogos Freemium são muito comuns no Android OS e iOS
  • 50.
    Arte 2D paraprogramadores http://2dgameartforprogrammers.blogspot.com.br/
  • 51.
  • 52.
  • 53.
  • 54.
    Links interessantes Mecânicas dejogo http://www.squidi.net/three/index.php Então, você quer ser um game designer? http://www.youtube.com/watch?v=zQvWMdWhFCc Então, você quer trabalhar na indústria de games? http://www.youtube.com/watch?v=u_fr8tEQSGE Gerador de personages em 2D (pixelart) http://charas-project.net/charas2/index.php Artigos sobre gamefication http://www.gamification.co/2013/01/04/top-articles-by-gamification-experts-in-2012/ 10 livros sobre games que você precisa ler http://arena.ig.com.br/2012-06-28/dez-livros-de-games-que-voce-precisa-ler.html
  • 55.
    Livros  Desenvolvimento de Jogos e Programação:  Game Design:  Code Complete - http://amzn.to/oqrBeP  Game Design Workshop - http://amzn.to/pVvJE0  Effective C++ - http://amzn.to/NJ2ed2  Rules of Play: Game Design Fundamentals -  More Effective C++ - http://amzn.to/qQSksw http://amzn.to/oHmOZ8  Desenvolvimento de Jogos Eletrônicos -  The Game Design Reader: A Rules of Play http://novatec.com.br/livros/jogos2/ Anthology - http://amzn.to/pTjOd7  Software Engineering for Game Developers -  Half-Real: Video Games between Real Rules and http://amzn.to/qrY571 Fictional Worlds - http://amzn.to/qA7yd6  Game Engine Architecture - http://amzn.to/pgnZFR  A Theory of Fun for Game Design -  Game Coding Complete - http://amzn.to/qA0Nz4 http://amzn.to/nmR1Ya  Programming Game AI by Example - http://amzn.to/nQ5SdY  The Art of Game Design: A book of lenses -  Real-time Rendering - http://amzn.to/pbHDTp http://amzn.to/p0Z5xr  Game Programming All in One - http://amzn.to/p2S05M  Beginning C++ through Game Programming - http://amzn.to/q0X1fV  XNA Game Studio Creators Guide - http://amzn.to/nmSlFf  iPhone Programming The Big Nerd Ranch Guide - http://amzn.to/p6kUkJ  Head First iPhone and iPad Development - http://amzn.to/p0qXOo  Agile Game Development with Scrum - http://amzn.to/nfp3T3
  • 56.
    Sites e revistas  Sites:  Blogs:  Gamasutra - http://www.gamasutra.com/  AltDevBlogADay - http://altdevblogaday.com/  Gamesindustry - http://www.gamesindustry.biz/  Game Developer – http://gamedeveloper.com.br  AppData - http://www.appdata.com/  Game Producer -  Ars Technica - http://arstechnica.com/gaming/ http://www.gameproducer.net/  GameCareerGuide -  Indie Games - http://www.gamecareerguide.com/ http://indiegames.com/index.html  Fóruns  Revistas:  GameDev - http://www.gamedev.com.br/  Casual Connect -  PDJ - http://www.programadoresdejogos.com/ http://casualconnect.org/magazine-archive/  UniDev - http://www.unidev.com.br/  Develop - http://www.develop-online.net/  EDGE - http://www.next-gen.biz/  Game Developer Magazine - http://www.gdmag.com/homepage.htm  Game Sauce - http://gamesauce.org/news/  Wired - http://www.wired.com/gaming
  • 57.