Introdução ao cocos sharp
-
Upload
jose-farias -
Category
Technology
-
view
104 -
download
6
Transcript of Introdução ao cocos sharp
Introdução ao CocosSharp
José Antonio ”jalf” Leal de [email protected]
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 deprogramação do Cocos2D com o C# e o .NETFramework...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 APIVamos 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://[email protected]
@sharpgames
Facebook.com/jalfbr
PSN/Live/Steam: jalfbr
Obrigado!