You are on page 1of 30

Programação de jogos utilizando

tecnologia XNA

Danilo Correia Ruziska


Centro de Inovação Microsoft/Senac-SP
Microsoft Student Partner
O mundo dos games hoje

• Games não são brincadeira!


• Desenvolvimento de games no Brasil
acelerando, mas ainda não significativo
mundialmente
Alguns dados
• As empresas de desenvolvimento de
software ganham dinheiro com games?
• A indústria de games faturou $25
bilhões (entre games para PC, consoles,
celulares, etc...)
• Dentre os games desenvolvidos para
celular, o faturamento foi de $3 bilhões,
e o Brasil contribuiu com 0,1% dessa
quantia
Fontes:
http://www.terra.com.br/istoedinheiro/489/ecommerce/aqui_tem_jogo.htm
http://news.bbc.co.uk/2/hi/technology/5105198.stm
Evolução dos Consoles

“A evolução dos videogames”


Autor: Ricardo Guerra,
Microsoft Student Partner
Evolução dos Games
Porém...
• Não devemos notar apenas a evolução
gráfica
• ...e a jogabilidade?
• ...e a experiência do usuário?
• ...e como essa evolução afeta a vida das
pessoas?
E para nós, desenvolvedores...

• ...e a facilidade de criação?


• ...e a ajuda de comunidades?
Bem vindos ao XNA!
• XNA = XNA Não é um Acrônimo
• Iniciativa da Microsoft, com a ajuda da
comunidade para criar uma nova
plataforma de desenvolvimento de jogos
Porque o XNA foi criado?

• Facilidade de criação e aumento da


produtividade
• Criação de jogos para console (XBOX
360)
• Evolução de antigas tecnologias
XNA Game Studio Express 1.0
• IDE de desenvolvimento de jogos
• Baseada no Visual C# Express Edition
• Inclui Starter Kits, documentação online e
offline
Público-Alvo
• Desenvolvedores não profissionais na
área de games
• Hobbistas
• Estudantes de programação
Pré-Requisitos
• Software:
– .NET Framework 2.0
– Visual C# Express Edition
– Visual C# Express Edition Service Pack 1
– XNA Game Studio Express 1.0 Refresh
• Hardware
– Placa de vídeo compatível com DirectX 9.0c
e Pixel Shader 1.1 (recomendado Pixel
Shader 2.0)
Custo
• As ferramentas de desenvolvimento
para o XNA são gratuitas
• Para jogos Windows:
– Desenvolvimento e distribuição: gratuitos
• Para jogos XBOX 360
– Desenvolvimento gratuito porém para
distribuir seus jogos é necessária uma conta
no XNA Creators Club ($99 por 1 ano ou
$49 por 4 meses)
Qual o Real Poder do XNA?
• A melhor maneira de demonstrar do que
essa plataforma é capaz é mostrando
alguns conteúdos programados em XNA
Camadas do XNA Framework

Legenda XNA já provê Você cria Comunidade


Modelo de Aplicação

Legenda XNA já provê Você cria Comunidade


Ciclo de um Jogo no XNA
• Initialize() – Inicializar conteúdos
• LoadGraphicsContent() – Carregar
conteúdos
• UnloadGraphicsContent() – Descarregar
conteúdos
• Update() – Loop onde é inserida a lógica do
jogo
• Draw() – Loop onde os conteúdos gráficos
são exibidos na tela
Apostila 1 - Graphics

Legenda XNA já provê Você cria Comunidade


Framework Core - Graphics
• XNA.Framework.Graphics
• Responsável por transformar figuras 2D
ou 3D em objetos.
• Para criar um objeto 2D (Sprite),
utiliza-se a classe Texture2D
• Também é utilizada a classe
SpriteBatch, que é um conjunto de
Sprites a serem desenhados na tela
Apostila 2 - Audio

Legenda XNA já provê Você cria Comunidade


Framework Core - Audio
• XNA.Framework.Audio
• Gerencia o áudio do jogo
• Para criar um objeto de áudio no XNA,
utiliza-se a ferramenta XACT (inclusa na
instalação do XNA)
• Classes principais: Cue (representa um
único som), SoundBank (conjunto de Cues),
e WaveBank (conjunto de arquivos wave)
Apostila 3 - Input

Legenda XNA já provê Você cria Comunidade


Framework Core - Input
• XNA.Framework.Input
• Controla os diversos dispositivos de
entrada no jogo (mouse, teclado e
controle do Xbox 360)
• Principais classes: GamePad (controle),
Mouse, Keyboard
• Há componentes extras para controles
do Wii e do PS2/PS3
Apostila 4 - Math

Legenda XNA já provê Você cria Comunidade


Framework Core- Math

• XNA.Framework
• Possui alguns elementos para auxiliar em
posicionamento ou velocidade de
objetos, também auxilia em conversões
matemáticas
• Principais classes: Rectangle, Vector2
(vetor de 2 dimensões), Vector3 (vetor
de 3 dimensões) e MathHelper
Game Components

Legenda XNA já provê Você cria Comunidade


Game Components
• No XNA Framework também é possível
extender as funcionalidades já
existentes com componentes criados por
terceiros, aonde precisamos apenas
“plugá-lo” ao nosso jogo e este estará
pronto para ser usado (Contador de FPS
por exemplo)
• Isso aumenta o relacionamento da
comunidade
Starter Kits

Legenda XNA já provê Você cria Comunidade


Starter Kits
• O XNA Framework também provê jogos
já prontos, totalmente documentados e
prontos para estudar, utilizar, e
expandir
Obrigado!
• Contato: daniloruziska@hotmail.com
• Links:
– http://msdn.microsoft.com/xna
– http://creators.xna.com
– http://www.xnatutorial.com/
– http://www.riemers.net/
– http://www.ziggyware.com

You might also like