Desenvolvimento de jogos com Cocos2d-x

57
Desenvolvimento de Jogos com Cocos2d-x Universidade de Blumenau (FURB) Semana Acadêmica 2013 Bruno Cicanci Letícia Reis

description

Palestra apresentada por mim e pela Letícia Reis na Semana Acadêmica 2013 na Universidade de Blumenau (FURB).

Transcript of Desenvolvimento de jogos com Cocos2d-x

Page 1: Desenvolvimento de jogos com Cocos2d-x

Desenvolvimento de Jogos com Cocos2d-x

Universidade de Blumenau (FURB)

Semana Acadêmica 2013

Bruno Cicanci

Letícia Reis

Page 2: Desenvolvimento de jogos com Cocos2d-x

Conteúdo

Por onde começar

Protótipos

Programação

Cocos2d-x

Bonus Level

Page 3: Desenvolvimento de jogos com Cocos2d-x

Por onde começar

Page 4: Desenvolvimento de jogos com Cocos2d-x

Do conceito...

Page 5: Desenvolvimento de jogos com Cocos2d-x

... ao jogo!

Page 6: Desenvolvimento de jogos com Cocos2d-x

Game Design

http://catavento.art.br/ppt/15semcomp.pdf

Page 7: Desenvolvimento de jogos com Cocos2d-x

Gameplay jogando

Page 8: Desenvolvimento de jogos com Cocos2d-x

Programação sem ter a arte final

Page 9: Desenvolvimento de jogos com Cocos2d-x

Art Of Game Design (Aplicativo)

https://play.google.com/store/apps/details?id=com.schellgames.deckoflenses

Page 10: Desenvolvimento de jogos com Cocos2d-x

Protótipos

Page 11: Desenvolvimento de jogos com Cocos2d-x

Objetivo do protótipo: Validar a mecânica do jogo

Page 12: Desenvolvimento de jogos com Cocos2d-x

Protótipo de papel

Page 13: Desenvolvimento de jogos com Cocos2d-x

Protótipo Digital

Page 14: Desenvolvimento de jogos com Cocos2d-x

Playground

Bioshock Infinity: http://www.youtube.com/watch?v=5OAj5JBMvBo

Page 15: Desenvolvimento de jogos com Cocos2d-x

Programação

Page 16: Desenvolvimento de jogos com Cocos2d-x

Jogue fora o protótipo!

Page 17: Desenvolvimento de jogos com Cocos2d-x

Tommy Refenes (Super Meat Boy)

http://supermeatboy.com/134/How_do_I_get_started_programming_games___/

Page 18: Desenvolvimento de jogos com Cocos2d-x

Controle de versão

Page 19: Desenvolvimento de jogos com Cocos2d-x

Design Patterns

Page 20: Desenvolvimento de jogos com Cocos2d-x

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

Page 21: Desenvolvimento de jogos com Cocos2d-x

Game Loop

Toda LÓGICA do jogo é processada de acordo com o INPUT do jogador, e o resultado é exibido GRAFICAMENTE na tela

Page 22: Desenvolvimento de jogos com Cocos2d-x

Game Loop - Exemplo

Page 23: Desenvolvimento de jogos com Cocos2d-x

Finite State Machine (FSM)

Page 24: Desenvolvimento de jogos com Cocos2d-x

Cocos2d-x

Page 25: Desenvolvimento de jogos com 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

Page 26: Desenvolvimento de jogos com Cocos2d-x

Exemplo de Arquitetura (mobile)

Page 27: Desenvolvimento de jogos com Cocos2d-x

Arquitetura da Cocos2d-x

Page 28: Desenvolvimento de jogos com 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)

Page 29: Desenvolvimento de jogos com Cocos2d-x

Jogos em 2D

Page 30: Desenvolvimento de jogos com Cocos2d-x

CCScene

Page 31: Desenvolvimento de jogos com Cocos2d-x

CCScene e CCDirector

Page 32: Desenvolvimento de jogos com Cocos2d-x

CCLayer

Page 33: Desenvolvimento de jogos com Cocos2d-x

CCLayer e update

Page 34: Desenvolvimento de jogos com Cocos2d-x

CCSprite e CCLabelTTF

Page 35: Desenvolvimento de jogos com Cocos2d-x

CCSprite e CCLabelTTF

Page 36: Desenvolvimento de jogos com Cocos2d-x

CCTouch e CCPoint

Page 37: Desenvolvimento de jogos com Cocos2d-x

CCMenu e CCMenuItemImage

Page 38: Desenvolvimento de jogos com Cocos2d-x

CCTransitionScene

http://www.cocos2d-x.org/reference/native-cpp/da/d00/group__transition.html

Page 39: Desenvolvimento de jogos com Cocos2d-x

CCRect

Page 40: Desenvolvimento de jogos com Cocos2d-x

SimpleAudioEngine

Page 41: Desenvolvimento de jogos com Cocos2d-x

Tiled (Editor de nível)

Page 42: Desenvolvimento de jogos com Cocos2d-x

Tiled (Implementação)

Page 43: Desenvolvimento de jogos com Cocos2d-x

TexturePacker (Sprite sheet)

Page 44: Desenvolvimento de jogos com Cocos2d-x

TexturePacker (Implementação)

Page 45: Desenvolvimento de jogos com Cocos2d-x

Particles

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

Page 46: Desenvolvimento de jogos com Cocos2d-x

Effects

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

Page 47: Desenvolvimento de jogos com Cocos2d-x

Fórum, documentação, wiki, tutoriais

http://www.cocos2d-x.org/

Page 48: Desenvolvimento de jogos com Cocos2d-x

Bonus Level

Page 49: Desenvolvimento de jogos com Cocos2d-x

Modelos de Negócio

Funciona bem com jogos de iOS, porém desde que tenha uma versão de demonstração para o jogador testar

Jogos indie geralmente tem preços entre $0.99 e $2.99

A versão de demonstração pode ser limitada ou uma versão do jogo usando o modelo de negócio gratuito

Funciona bem com jogos de Android, pois a pirataria neste OS é maior

Anúncios, quando colocados em locais corretos e com uma freqüência adequada, podem dar um bom retorno

Jogos Freemium são muito comuns no Android OS e iOS

Pago Gratuito

Page 50: Desenvolvimento de jogos com Cocos2d-x

Arte 2D para programadores

http://2dgameartforprogrammers.blogspot.com.br/

Page 51: Desenvolvimento de jogos com Cocos2d-x

Concursos

Page 52: Desenvolvimento de jogos com Cocos2d-x

Social

Page 53: Desenvolvimento de jogos com Cocos2d-x

Publicidade no Jogo

Page 54: Desenvolvimento de jogos com Cocos2d-x

Links interessantes

Mecânicas de jogohttp://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 gameficationhttp://www.gamification.co/2013/01/04/top-articles-by-gamification-experts-in-2012/

10 livros sobre games que você precisa lerhttp://arena.ig.com.br/2012-06-28/dez-livros-de-games-que-voce-precisa-ler.html

Page 55: Desenvolvimento de jogos com Cocos2d-x

Livros Desenvolvimento de Jogos e Programação:

Code Complete - http://amzn.to/oqrBeP

Effective C++ - http://amzn.to/NJ2ed2

More Effective C++ - http://amzn.to/qQSksw

Desenvolvimento de Jogos Eletrônicos - http://novatec.com.br/livros/jogos2/

Software Engineering for Game Developers - http://amzn.to/qrY571

Game Engine Architecture - http://amzn.to/pgnZFR

Game Coding Complete - http://amzn.to/qA0Nz4

Programming Game AI by Example - http://amzn.to/nQ5SdY

Real-time Rendering - http://amzn.to/pbHDTp

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

Game Design:

Game Design Workshop - http://amzn.to/pVvJE0

Rules of Play: Game Design Fundamentals - http://amzn.to/oHmOZ8

The Game Design Reader: A Rules of Play Anthology - http://amzn.to/pTjOd7

Half-Real: Video Games between Real Rules and Fictional Worlds - http://amzn.to/qA7yd6

A Theory of Fun for Game Design - http://amzn.to/nmR1Ya

The Art of Game Design: A book of lenses - http://amzn.to/p0Z5xr

Page 56: Desenvolvimento de jogos com Cocos2d-x

Sites e revistas

Sites: Gamasutra -

http://www.gamasutra.com/ Gamesindustry -

http://www.gamesindustry.biz/ AppData - http://www.appdata.com/ Ars Technica -

http://arstechnica.com/gaming/ GameCareerGuide -

http://www.gamecareerguide.com/

Fóruns GameDev -

http://www.gamedev.com.br/ PDJ -

http://www.programadoresdejogos.com/

UniDev - http://www.unidev.com.br/

Blogs: AltDevBlogADay -

http://altdevblogaday.com/ Game Developer –

http://gamedeveloper.com.br Game Producer -

http://www.gameproducer.net/ Indie Games -

http://indiegames.com/index.html

Revistas: Casual Connect -

http://casualconnect.org/magazine-archive/

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

Page 57: Desenvolvimento de jogos com Cocos2d-x

Obrigado!