SlideShare una empresa de Scribd logo
1 de 40
Introdução ao CocosSharp 
José Antonio ”jalf” Leal de Farias 
jalf@prosperitygames.net
Quem é esse cara? 
• Desenvolvedor de jogos desde 1990 
• Produtor na Prosperity Games 
• Mestrando na Universidade Federal de Campina Grande 
• Conselheiro e um dos fundadores da ACIGAMES 
• Microsoft Most Valuable Professional 
• Criador do projeto MonoGame (http://monogame.net) 
• Criador e Administrador do portal Sharpgames 
• http://www.sharpgames.net 
• Faliu sua primeira produtora de jogos em 1999 
• ...
CocosSharp x MonoGame x Cocos2D-XNA 
• CocosSharp roda em cima do Monogame 
• Portabilidade e desempenho 
• Fork do Cocos2D – XNA 
• Ajustes de API 
• Bugs fixes 
• Maior controle 
• Treta
“CocosSharp une o poder do modelo de 
programação do Cocos2D com o C# e o .NET 
Framework...A API foi desenhada para seguir o C# 
e as linguagens do .NET” 
Miguel de Icaza 
Xamarin
Cross Platform
Anatomia de um Jogo 
• Aplicativo 
• Cenas 
• Camadas 
• Sprites 
• Ações 
• Outras coisas legais – Sistemas de Partículas, áudio, física, etc.
CocosSharp API 
Vamos ao que interessa...
CCApplication 
• Cria e inicializa o dispositivo gráfico 
• Set os delegates do aplicativo 
• Inicia o jogo
CCApplication
CCApplicationDelegate 
• Manipula o ciclo de vida do aplicativo 
• Similiar ao UIApplicationDelegate do iOS 
• Especifica a pasta de conteúdo do aplicativo 
• Carrega a janela inicial do jogo
CCApplicationDelegate
Pasta Content 
• Pasta contendo recursos do jogo 
• Fontes 
• Sons 
• Imagens 
• Setado via o ContentRootDirector do Application
CCDirector 
• Disponível via Window.DefaultDirector 
• Gerencia qualquer carga adiciona das cenas
CCDirector
CCDirector
CScene 
• Gerencia a lógica do jogo para vários pedaços do jogo 
• Contém camadas (CCLayer)
CScene 
• Gerencia a lógica do jogo para vários pedaços do jogo 
• Contém camadas (CCLayer)
CCLayer 
• Adicionado a cena 
• Contém sprites, labels, menus, etc. 
• Agenda um método para executar em um intervalo 
• Conhece a sua cena
CCLayer
CSprite 
• Sprites são elementos que exibem imagens no jogo 
• O arquivo de imagem deve estar na pasta Content 
• Suporta imagens de alta definição (-hd) 
Scaling Rotating Tinting Alpha
CCSpriteBatch 
• Carga eficiente de Sprites 
• Desenha todos os filhos
CCAction 
• Executam tarefas dentro da cena 
• Por exemplo, animar sprites 
• Pode-se executar múltiplas ações 
sequencialmente usando CCSequence
CCTouch 
• Trata um toque na tela 
• Ative TouchEnabled na camada 
• Sobrecarregue métodos touch na camada 
• TouchesBegan,TouchesMoved, TouchesEnded, etc
Accelerometer 
• Disponível via CCAccelerometer 
• Acesso via Window.Accelerometer
Accelerometer
Audio 
• SimpleAudioEngine.SharedEngine 
• Efeitos Sonoros 
• Música de fundo 
• Pausa/Retoma música de fundo em CCApplicationDelegate 
• Pausa quando o app vai para o fundo 
• Retoma quando o app entre em primeiro plano
Desenhando Primitivas 
• CCDrawNode 
• Desenha linhas, polígonos, círculos, etc ...
Desenhando Primitivas
Sistema de Partículas 
• Efeitos gráficos realizado com um 
conjunto de partículas 
• Vários tipos embutidos: fumaça, 
galáxia, chuva, etc ... 
• Pode-se criar efeitos customizados
Sistema de Partículas
Sistema de Partículas
Parallax 
• CCParallaxNode 
• Os filhos se movem em uma velocidade relativa
Parallax
Efeitos 
• Diversos efeitos visuais 
• Waves, Twirl, Lens3D, Shuffle Tile, etc.. 
• Implementado usando CCActions
Efeitos
Física 
• 2D Rigid Body 
• Porte para o C# do Box2D 
• World,body,shape,fixtue
Física
Para Saber Mais...
Vamos trocar idéias.. 
mailto://jalf@prosperitygames.net 
@sharpgames 
Facebook.com/jalfbr 
PSN/Live/Steam: jalfbr 
Obrigado!

Más contenido relacionado

La actualidad más candente

Marlon Luz - Desenvolvendo games para Nokia Ssha
Marlon Luz - Desenvolvendo games para Nokia SshaMarlon Luz - Desenvolvendo games para Nokia Ssha
Marlon Luz - Desenvolvendo games para Nokia SshaINdT
 
Computer on the Beach 2015 - Minicurso de Jogos Multiplataforma com Cocos2d-x
Computer on the Beach 2015 - Minicurso de Jogos Multiplataforma com Cocos2d-xComputer on the Beach 2015 - Minicurso de Jogos Multiplataforma com Cocos2d-x
Computer on the Beach 2015 - Minicurso de Jogos Multiplataforma com Cocos2d-xPedro Kayatt
 
Playstation Mobile - Campus Party 2013
Playstation Mobile - Campus Party 2013Playstation Mobile - Campus Party 2013
Playstation Mobile - Campus Party 2013José Farias
 

La actualidad más candente (6)

Marlon Luz - Desenvolvendo games para Nokia Ssha
Marlon Luz - Desenvolvendo games para Nokia SshaMarlon Luz - Desenvolvendo games para Nokia Ssha
Marlon Luz - Desenvolvendo games para Nokia Ssha
 
Computer on the Beach 2015 - Minicurso de Jogos Multiplataforma com Cocos2d-x
Computer on the Beach 2015 - Minicurso de Jogos Multiplataforma com Cocos2d-xComputer on the Beach 2015 - Minicurso de Jogos Multiplataforma com Cocos2d-x
Computer on the Beach 2015 - Minicurso de Jogos Multiplataforma com Cocos2d-x
 
Playstation Mobile - Campus Party 2013
Playstation Mobile - Campus Party 2013Playstation Mobile - Campus Party 2013
Playstation Mobile - Campus Party 2013
 
Aula1 intro
Aula1  introAula1  intro
Aula1 intro
 
Games, lado dev
Games, lado devGames, lado dev
Games, lado dev
 
Aula3 input
Aula3   inputAula3   input
Aula3 input
 

Similar a Introdução ao cocos sharp

TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...tdc-globalcode
 
Introdução às Game Engines
Introdução às Game Engines Introdução às Game Engines
Introdução às Game Engines Jerry Medeiros
 
Desenvolvendo jogos com PyGame - Rafael Jeffman
Desenvolvendo jogos com PyGame - Rafael JeffmanDesenvolvendo jogos com PyGame - Rafael Jeffman
Desenvolvendo jogos com PyGame - Rafael JeffmanTchelinux
 
Desenvolvendo Jogos com PyGame - Rafael Guterres Jeffman - Tchelinux Pelotas ...
Desenvolvendo Jogos com PyGame - Rafael Guterres Jeffman - Tchelinux Pelotas ...Desenvolvendo Jogos com PyGame - Rafael Guterres Jeffman - Tchelinux Pelotas ...
Desenvolvendo Jogos com PyGame - Rafael Guterres Jeffman - Tchelinux Pelotas ...Tchelinux
 
TDC2011 - Desenvolvimento de jogos com Javascript e HTML5
TDC2011 - Desenvolvimento de jogos com Javascript e HTML5TDC2011 - Desenvolvimento de jogos com Javascript e HTML5
TDC2011 - Desenvolvimento de jogos com Javascript e HTML5Willian Molinari
 
A importância do software nas organizações de Jogos Digitais
A importância do software nas organizações de Jogos DigitaisA importância do software nas organizações de Jogos Digitais
A importância do software nas organizações de Jogos DigitaisKelvin Oliveira
 
Desenvolvimento para iOS
Desenvolvimento para iOSDesenvolvimento para iOS
Desenvolvimento para iOSIgor Takenami
 
Desenvolvimento de Jogos com Cocos2d - Apresentação Coderockr Jam
Desenvolvimento de Jogos com Cocos2d - Apresentação Coderockr JamDesenvolvimento de Jogos com Cocos2d - Apresentação Coderockr Jam
Desenvolvimento de Jogos com Cocos2d - Apresentação Coderockr JamAndré Espeiorin
 
SESTINFO 2011 Apresentacao Android
SESTINFO 2011 Apresentacao AndroidSESTINFO 2011 Apresentacao Android
SESTINFO 2011 Apresentacao AndroidRafael Sakurai
 
Ionic 2/3 + Firebase
Ionic 2/3 + FirebaseIonic 2/3 + Firebase
Ionic 2/3 + FirebaseBruno Catão
 
Demonstrador virtual web com recursos de Realidade Aumentada - Apresentação
Demonstrador virtual web com recursos de Realidade Aumentada - ApresentaçãoDemonstrador virtual web com recursos de Realidade Aumentada - Apresentação
Demonstrador virtual web com recursos de Realidade Aumentada - ApresentaçãoLeonardo Pereira Santos
 

Similar a Introdução ao cocos sharp (20)

TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
 
Projeto de Jogos
Projeto de JogosProjeto de Jogos
Projeto de Jogos
 
Nokia SDK for Java
Nokia SDK for JavaNokia SDK for Java
Nokia SDK for Java
 
Introdução às Game Engines
Introdução às Game Engines Introdução às Game Engines
Introdução às Game Engines
 
Keynote ios
Keynote iosKeynote ios
Keynote ios
 
Unity3d
Unity3dUnity3d
Unity3d
 
Desenvolvendo jogos com PyGame - Rafael Jeffman
Desenvolvendo jogos com PyGame - Rafael JeffmanDesenvolvendo jogos com PyGame - Rafael Jeffman
Desenvolvendo jogos com PyGame - Rafael Jeffman
 
Desenvolvendo Jogos com PyGame - Rafael Guterres Jeffman - Tchelinux Pelotas ...
Desenvolvendo Jogos com PyGame - Rafael Guterres Jeffman - Tchelinux Pelotas ...Desenvolvendo Jogos com PyGame - Rafael Guterres Jeffman - Tchelinux Pelotas ...
Desenvolvendo Jogos com PyGame - Rafael Guterres Jeffman - Tchelinux Pelotas ...
 
Aula anima-modelos
Aula anima-modelosAula anima-modelos
Aula anima-modelos
 
TDC2011 - Desenvolvimento de jogos com Javascript e HTML5
TDC2011 - Desenvolvimento de jogos com Javascript e HTML5TDC2011 - Desenvolvimento de jogos com Javascript e HTML5
TDC2011 - Desenvolvimento de jogos com Javascript e HTML5
 
Guia xna
Guia xnaGuia xna
Guia xna
 
A importância do software nas organizações de Jogos Digitais
A importância do software nas organizações de Jogos DigitaisA importância do software nas organizações de Jogos Digitais
A importância do software nas organizações de Jogos Digitais
 
Desenvolvimento para iOS
Desenvolvimento para iOSDesenvolvimento para iOS
Desenvolvimento para iOS
 
Desenvolvimento de Jogos com Cocos2d - Apresentação Coderockr Jam
Desenvolvimento de Jogos com Cocos2d - Apresentação Coderockr JamDesenvolvimento de Jogos com Cocos2d - Apresentação Coderockr Jam
Desenvolvimento de Jogos com Cocos2d - Apresentação Coderockr Jam
 
Mean Stack
Mean StackMean Stack
Mean Stack
 
Meios de criação de Materiais Multimédia
Meios de criação de Materiais MultimédiaMeios de criação de Materiais Multimédia
Meios de criação de Materiais Multimédia
 
Apresentação Google Android
Apresentação Google AndroidApresentação Google Android
Apresentação Google Android
 
SESTINFO 2011 Apresentacao Android
SESTINFO 2011 Apresentacao AndroidSESTINFO 2011 Apresentacao Android
SESTINFO 2011 Apresentacao Android
 
Ionic 2/3 + Firebase
Ionic 2/3 + FirebaseIonic 2/3 + Firebase
Ionic 2/3 + Firebase
 
Demonstrador virtual web com recursos de Realidade Aumentada - Apresentação
Demonstrador virtual web com recursos de Realidade Aumentada - ApresentaçãoDemonstrador virtual web com recursos de Realidade Aumentada - Apresentação
Demonstrador virtual web com recursos de Realidade Aumentada - Apresentação
 

Más de José Farias

Por dentro do ID@Xbox
Por dentro do ID@XboxPor dentro do ID@Xbox
Por dentro do ID@XboxJosé Farias
 
10 questões sobre o futuro dos Games
10 questões sobre o futuro dos Games10 questões sobre o futuro dos Games
10 questões sobre o futuro dos GamesJosé Farias
 
Introdução do DirectX com C++
Introdução do DirectX com C++Introdução do DirectX com C++
Introdução do DirectX com C++José Farias
 
É Hora de criar sua própria engine de jogos?
É Hora de criar sua própria engine de jogos?É Hora de criar sua própria engine de jogos?
É Hora de criar sua própria engine de jogos?José Farias
 
Criando jogos para o windows 8
Criando jogos para o windows 8Criando jogos para o windows 8
Criando jogos para o windows 8José Farias
 
Criando Jogos com HTML5
Criando Jogos com HTML5Criando Jogos com HTML5
Criando Jogos com HTML5José Farias
 
Criando Jogos Sofisticados com DirectX
Criando Jogos Sofisticados com DirectXCriando Jogos Sofisticados com DirectX
Criando Jogos Sofisticados com DirectXJosé Farias
 
Criando aplicativos para o windows 8
Criando aplicativos para o windows 8Criando aplicativos para o windows 8
Criando aplicativos para o windows 8José Farias
 
Introdução ao XNA
Introdução ao XNAIntrodução ao XNA
Introdução ao XNAJosé Farias
 
Oportunidades com o XNA
Oportunidades com o XNAOportunidades com o XNA
Oportunidades com o XNAJosé Farias
 
Publicando jogos na Xbox Live Arcade
Publicando jogos na Xbox Live ArcadePublicando jogos na Xbox Live Arcade
Publicando jogos na Xbox Live ArcadeJosé Farias
 
Como ganhar dinheiro com games
Como ganhar dinheiro com gamesComo ganhar dinheiro com games
Como ganhar dinheiro com gamesJosé Farias
 
Criando jogos com xna para o windows phone
Criando jogos com xna para o windows phoneCriando jogos com xna para o windows phone
Criando jogos com xna para o windows phoneJosé Farias
 
Criando jogos com o kinect
Criando jogos com o kinectCriando jogos com o kinect
Criando jogos com o kinectJosé Farias
 
Xna Touch Campus Party
Xna Touch  Campus PartyXna Touch  Campus Party
Xna Touch Campus PartyJosé Farias
 
IntroduçãO Ao Xna Campus Party
IntroduçãO Ao Xna  Campus PartyIntroduçãO Ao Xna  Campus Party
IntroduçãO Ao Xna Campus PartyJosé Farias
 

Más de José Farias (19)

Por dentro do ID@Xbox
Por dentro do ID@XboxPor dentro do ID@Xbox
Por dentro do ID@Xbox
 
10 questões sobre o futuro dos Games
10 questões sobre o futuro dos Games10 questões sobre o futuro dos Games
10 questões sobre o futuro dos Games
 
Radioino
RadioinoRadioino
Radioino
 
MonoGame business
MonoGame businessMonoGame business
MonoGame business
 
Introdução do DirectX com C++
Introdução do DirectX com C++Introdução do DirectX com C++
Introdução do DirectX com C++
 
É Hora de criar sua própria engine de jogos?
É Hora de criar sua própria engine de jogos?É Hora de criar sua própria engine de jogos?
É Hora de criar sua própria engine de jogos?
 
Criando jogos para o windows 8
Criando jogos para o windows 8Criando jogos para o windows 8
Criando jogos para o windows 8
 
Criando Jogos com HTML5
Criando Jogos com HTML5Criando Jogos com HTML5
Criando Jogos com HTML5
 
Criando Jogos Sofisticados com DirectX
Criando Jogos Sofisticados com DirectXCriando Jogos Sofisticados com DirectX
Criando Jogos Sofisticados com DirectX
 
Criando aplicativos para o windows 8
Criando aplicativos para o windows 8Criando aplicativos para o windows 8
Criando aplicativos para o windows 8
 
Network com XNA
Network com XNANetwork com XNA
Network com XNA
 
Introdução ao XNA
Introdução ao XNAIntrodução ao XNA
Introdução ao XNA
 
Oportunidades com o XNA
Oportunidades com o XNAOportunidades com o XNA
Oportunidades com o XNA
 
Publicando jogos na Xbox Live Arcade
Publicando jogos na Xbox Live ArcadePublicando jogos na Xbox Live Arcade
Publicando jogos na Xbox Live Arcade
 
Como ganhar dinheiro com games
Como ganhar dinheiro com gamesComo ganhar dinheiro com games
Como ganhar dinheiro com games
 
Criando jogos com xna para o windows phone
Criando jogos com xna para o windows phoneCriando jogos com xna para o windows phone
Criando jogos com xna para o windows phone
 
Criando jogos com o kinect
Criando jogos com o kinectCriando jogos com o kinect
Criando jogos com o kinect
 
Xna Touch Campus Party
Xna Touch  Campus PartyXna Touch  Campus Party
Xna Touch Campus Party
 
IntroduçãO Ao Xna Campus Party
IntroduçãO Ao Xna  Campus PartyIntroduçãO Ao Xna  Campus Party
IntroduçãO Ao Xna Campus Party
 

Introdução ao cocos sharp