A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Introdução ao XNA e ao Game Developer Express

Apresentações semelhantes


Apresentação em tema: "Introdução ao XNA e ao Game Developer Express"— Transcrição da apresentação:

1 Introdução ao XNA e ao Game Developer Express
4/2/2017 2:23 PM Introdução ao XNA e ao Game Developer Express José Antonio “jalf” Leal de Farias Microsoft Most Valuable Professional Comunidade SharpGames

2 Agenda Introdução XNA Game Studio XNA Framework Xbox Live
Community Games XNA Challenge SharpGames XNA Game Studio Starter Kit XNA Framework Modelo de Aplicação; Content Pipeline Gráficos; Audio; Input Armazenamento Matemática

3 Academia Geração de Talentos Technology Crescimento!
4/2/2017 2:23 PM Academia Geração de Talentos Technology Crescimento!

4 4/2/2017 2:23 PM O que é XNA?

5 XNA Game Studio Express
Desenhado com acadêmicos, hobistas e pequenos desenvolvedores de games Ideal para jogos casuais Nova plataforma para desenvolvimento de jogos baseado em .NET 3.0, .NET Compact Framework Extensão da IDE do Visual C# 2008 Grupo de bibliotecas multi-plataforma optimizada para jogos

6 XNA Framework O XNA Framework é uma plataforma de desenvolvimento de jogos baseada em .NET que pode ser usada para criar jogos para Windows e Xbox 360 Suporta as plataformas de jogos da Microsoft Foco no jogo, não na plataforma APIs consistentes e de fácil utilização

7 Instalação .NET 3.0 Visual Studio 2008 (Qualquer Versão) XNA Framework
XNA Game Studio

8 Modifique os jogos e crie o seu próprio
Platform Framework Core Extended Games XACT XINPUT XContent Direct3D Graphics Audio Input Math Storage Application Model Content Pipeline Starter Kits Code Content Comps Starter Kits Modifique os jogos e crie o seu próprio Um jogo completamente funcional Use como um começo para seus próprios jogos Acessado via “New Project…” Pressione F5 e divirta-se! Documentação e tutoriais Disponibilidade 2 jogos incluídos com XNA Game Studio Express Novos kits saem regularmente

9 Camadas do XNA Framework
Jogos Starter Kits Code Content Components Extended Framework Application Model Content Pipeline Core Framework Graphics Audio Input Math Storage Plataforma XACT XINPUT XContent Direct3D Legenda XNA Fornece Você Fornece Comunidade

10 Extended Framework

11 Mantenha-se focado no jogo e não em qual plataforma ele está rodando
Platform Framework Core Extended Games XACT XINPUT XContent Direct3D Graphics Audio Input Math Storage Application Model Content Pipeline Starter Kits Code Content Comps Modelo de Aplicação Mantenha-se focado no jogo e não em qual plataforma ele está rodando Configurado e rodando rapidamente As primeiras linhas de código já serão para seu jogo. Abstração de Plataforma Qual a melhor maneira de criar um game loop? Como eu crio e gerencio minha janela? Como eu sigo as melhores práticas para a plataforma? Game É o tipo principal de seu jogo Eventos de Load, Update e Draw

12 Platform Framework Core Extended Games XACT XINPUT XContent Direct3D Graphics Audio Input Math Storage Application Model Content Pipeline Starter Kits Code Content Comps Modelo de Aplicação Crie componentes reusáveis que podem facilmente ser integrados ao seu jogo GameComponent, DrawableGameComponent Base para todos os componentes XNA O Autor escreve o Load, Update, e Draw Pode descobrir e interagir com outros componentes Game.Components Gerenciado em tempo de execução pelo jogo Grande suporte a ‘design time’ pelo IDE

13 XNA Framework Content Pipeline Princípios de Design
Platform Framework Core Extended Games XACT XINPUT XContent Direct3D Graphics Audio Input Math Storage Application Model Content Pipeline Starter Kits Code Content Comps XNA Framework Content Pipeline Princípios de Design Liberdade de escolha Ferramenta de criação de conteúdo Game engines Menos código para a criação Mais tempo para a criação do jogo Forte integração entre código e conteúdo Build de código e de conteúdo unificados

14 XNA Framework Content Pipeline
Importadores Conteúdo de jogo adicionado ao Visual Studio Processadores Conversões de tipo altamante tipadas Extensões de código gerenciado 3D File Formats 2D File Formats Material File Formats Audio File Formats .FBX .X .DDS .BMP .JPG .PNG .TGA .FX .XAP (XACT) ContentManager xnaLoader = new ContentManager(); myAsset = xnaLoader.Load<Mesh>("MyAssetName");

15 Core Framework

16 Fornece recursos de renderização de baixo nível
Platform Framework Core Extended Games XACT XINPUT XContent Direct3D Graphics Audio Input Math Storage Application Model Content Pipeline Starter Kits Code Content Comps Graphics Fornece recursos de renderização de baixo nível Construído sob o Direct3D 9 APIs atualizadas que seguem as regras do .NET Efeitos Recursos Lock/Unlock Vertex streams Recursos fornecidos Model, Mesh, Bones Texturas Efeitos e shaders

17 XNA Framework Effects

18 XNA Framework Effects

19 É muito fácil tocar seus sons
Platform Framework Core Extended Games XACT XINPUT XContent Direct3D Graphics Audio Input Math Storage Application Model Content Pipeline Starter Kits Code Content Comps Audio É muito fácil tocar seus sons Construa seus pacotes de som usando a ferramenta XACT Adicionar sons Ajustar propriedades Construir bancos de sons Fácil integração para desenvolvedores Acesse-os via seus nomes lógicos Looping, streaming, e gerenciamento de memória Sem gerenciamento de buffer de baixo nível

20 Torna fácil a obtenção de dados de entrada
Platform Framework Core Extended Games XACT XINPUT XContent Direct3D Graphics Audio Input Math Storage Application Model Content Pipeline Starter Kits Code Content Comps Input Torna fácil a obtenção de dados de entrada Pronto para usar Sem inicialização Sem gerenciamento de estado Dispositivos Joystick do Xbox 360 Teclado Mouse (apenas no Windows)

21 Fornece um jeito fácil para ler e salvar informações do jogo
Platform Framework Core Extended Games XACT XINPUT XContent Direct3D Graphics Audio Input Math Storage Application Model Content Pipeline Starter Kits Code Content Comps Storage Fornece um jeito fácil para ler e salvar informações do jogo StorageContainer atua como um sistema de arquivos virtual Arquivos armazenados no local correto de cada plataforma Suporta mútiplos dispositivos de armazenamento e perfis no Xbox 360 Baseado em Streams, o que facilita a integração com o System.IO

22 Biblioteca de funções matemáticas para jogos
Platform Framework Core Extended Games XACT XINPUT XContent Direct3D Graphics Audio Input Math Storage Application Model Content Pipeline Starter Kits Code Content Comps Math Biblioteca de funções matemáticas para jogos Vector, Matrix, Quaternion, Plane, AABB, Sphere, Ray, Frustum, Curve Regra-da-mão-direita por default Fácil integração Testes de intersecção Facilitadores para movimentos

23 Criando Jogos para o Xbox 360

24 Pré-requisitos e Instalação
Assinatura da Xbox live XNA Creator’s Club (US$99 por um ano) Instale o XNA Game launcher a partir da Xbox marketplace Compre o XNA Creaters Club a partir Xbox marketplace Para obter seu código de conexão, rode o XNA Game launcer de: GamesDemos and More no Xbox 360

25 Experiência de desenvolvimento
Platform Framework Core Extended Games XACT XINPUT XContent Direct3D Graphics Audio Input Math Storage Application Model Content Pipeline Starter Kits Code Content Comps Xbox 360 Development Experiência de desenvolvimento Project templates para jogos do Xbox 360 F5 faz o deploy para o console Remote debugging Breakpoints Watches Debug e Trace para o PC Sem Edit and Continue Debug Visualizers

26 Criando um jogo

27 XNA 2D game “Rock Rain” Construção de um jogo simples
O jogador deve guiar a nave evitando os asteróides É um jogo 2D simples, baseado em sprites

28 Construção de um jogo em XNA Basedo na forma como um jogo funciona
Todo jogo tem algums comportamentos fundamentais: Inicializa todos os recursos no início Inicializa todas as texturas, modelos, som, etc Continuamente roda o Game Loop: Atualiza a game engine Lê os controladores, atualiza o estado e a posição dos game elements Desenha o ambiente do jogo renderiza os game elements na tela

29 Esqueleto de um jogo XNA
partial class Game1 : Microsoft.Xna.Framework.Game { public Game1() { graphics = new GraphicsDeviceManager(this); content = new ContentManager(Services); } protected override void LoadGraphicsContent(bool loadAllContent) { } protected override void Update(GameTime gameTime) { protected override void Draw(GameTime gameTime) { } }

30 Inicialização do jogo Texture2D cheeseTexture; SpriteBatch spriteBatch; protected override void LoadGraphicsContent(bool loadAllContent) { if (loadAllContent) { cheeseTexture = content.Load<Texture2D>("cheese"); spriteBatch = new SpriteBatch(graphics.GraphicsDevice); } LoadGraphicsContent é chamada quando seu jogo inicializa Ele cria a textura do queijo e carrega uma imagem nele Também cria um SpriteBatch para gerenciar o processo de renderização

31 Usando o Content Pipeline
O content pipeline gerencia os recursos Cada recurso recebe um nome O método Load do ContentManager fornece acesso ao recurso Note o uso de generics cheeseTexture = content.Load<Texture2D>(“rockrain");

32 XNA Game Drawing protected override void Draw(GameTime gameTime) {
graphics.GraphicsDevice.Clear(Color.Black); // Desenha o Background spriteBatch.Begin(); spriteBatch.Draw(backgroundTexture,new Rectangle(0, 0, graphics.GraphicsDevice.DisplayMode.Width, graphics.GraphicsDevice.DisplayMode.Height),Color.LightGray); spriteBatch.End(); // sprites spriteBatch.Begin(SpriteBlendMode.AlphaBlend); base.Draw(gameTime); }

33 Update do Jogo protected override void Update() {
foreach (GameComponent gc in Components) if (gc is Meteor) hasColision = ((Meteor)gc).CheckCollision(shipRectangle); if (hasColision) audioComponent.PlayCue("explosion"); Start(); break; } UpdateComponents();

34 Leitura do Joystick GamePadState padState = GamePad.GetState(PlayerIndex.One); if (padState.IsConnected) { if (padState.DPad.Left == ButtonState.Pressed) breadX--; } if (padState.DPad.Right == ButtonState.Pressed) breadX++; /// repetir para o eixo Y do pão

35 Leitura analógica do Joystick
int padXSpeed = 10; int padYSpeed = 10; GamePadState padState = GamePad.GetState(PlayerIndex.One); if (padState.IsConnected) { breadX += (int) (padState.ThumbSticks.Left.X * padXSpeed); breadY -= (int) (padState.ThumbSticks.Left.Y * padYSpeed); }

36 4/2/2017 2:23 PM Xbox LIVE Arcade?? Xbox Live é o lugar para usuários que querem testar e comprar conteúdo no Xbox 360 Xbox Live Arcade contém conteúdo de jogos Alta Visibilidade em qualquer console (Aba ‘Games’) Integração com o Marketplace (Download, compra, licenças) Disponível para assinantes Silver & Gold Banner de promoção de novos títulos Diversos recursos para a retenção e re-play de jogos 36

37 Introdução a Xbox Live Arcade
4/2/2017 2:23 PM Introdução a Xbox Live Arcade Usuários & receita continuam a crescer +80 jogos disponíveis atualmente Um ou mais títulos chegam por semana Melhor serviço de download de jogos em um console no mercado Novos Jogos Clássicos Jogos Independentes Conectado aos serviços da Live (MSN) 37 ©2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

38 Como é um jogo da Xbox LIVE Arcade?
Completa experiência de jogo Sem pedaços de jogos separados Não deve ter dependências Pequeno em Tamanho <150 MB (a maioria tem <50 MB) Jogável sem mídia física ou qualquer outra dependência Sem necessidade de manual de instruções “Baixar e jogar” Versão de testes limitada mas divertida Deve oferecer a opção de compra da versão completa Promoção de venda do jogo dentro do jogo é permitida Experiências de jogo associadas a Live Arcade Ranks globais Achievements & Gamerscore Convites entre jogos

39 ‘Aba’ da Xbox Live Arcade

40 Como os jogos chegam a Arcade
Desenvolvedor Publisher Arcade Publishing Team Microsoft 3PP Team Gerência do Portfólio

41 E os jogos da comunidade?
Revisados pelo membros do Creator’s Club Critérios como violência, sexo, sangue, etc. Critérios Técnicos Formado EXCLUSIVAMENTE pela comunidade

42 Que tipo de games estamos procurando? Nós queremos jogos que …
4/2/2017 2:23 PM Que tipo de games estamos procurando? Nós queremos jogos que … © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

43 … sejam atraentes “Baixar e jogar” “Divertido para toda a família”
4/2/2017 2:23 PM … sejam atraentes “Baixar e jogar” “Divertido para toda a família” “Divertido para todas as idades” Jogos casuais © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

44 … suportem vários dispositivos
4/2/2017 2:23 PM … suportem vários dispositivos Social em sua natureza Controladores mais atrativos Quebrar paradigmas © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

45 … inspirem Saúde física e mental Ensinem sobre o mundo real
4/2/2017 2:23 PM … inspirem Saúde física e mental Ensinem sobre o mundo real Faça você uma pessoa melhor Ajudar os outros Time “wasted” gaming  time “spent” gaming  time “invested” gaming Games that aspire to do more Exercise your mind, body, spirit Learn about the real world Make you a better person © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

46 …unam as pessoas Jogos sociais
4/2/2017 2:23 PM …unam as pessoas Jogos sociais Multiplayer Competitivo Cooperativo “Backseat driver” Party Games Social, party, multiplayer, coop, assym, etc – lots of examples © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

47 … Jogos que funcionem entre plataformas
4/2/2017 2:23 PM … Jogos que funcionem entre plataformas Tip of the hat toward live anywhere © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

48 O que isso tudo significa para você?
4/2/2017 2:23 PM O que isso tudo significa para você? Primeiro, negócio é negócio: Se você tem um grande jogo, nos queremos vê-lo Compreendendo o valor de seu serviço para o cliente vai lhe ajudar a criar um melhor jogo para ele Novas áreas de interesse: Simples, Atrativos Suporte a vários tipos de controladores Temas e conteúdo inspirativos Social, Social, Social © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

49 Guia de Conceito Os 6 Pilares do que queremos em jogos
4/2/2017 2:23 PM Guia de Conceito Os 6 Pilares do que queremos em jogos Inovação Jogabilidade Visual Multiplayer & Social Plataformas Global 49

50 Jogabilidade Tem de caber em 150 MB! Idéias únicas “Baixar e jogar”
Permitir pequenas seções de jogo ‘Planejado para a família INTEIRA Opções para crianças Dificuldade progressiva

51 Visual Este jogo merece estar no Xbox 360?
4/2/2017 2:23 PM Visual Este jogo merece estar no Xbox 360? Re-Design, não apenas um porte Exemplos: RoboBlitz Small Arms Jetpac Refuelled 51

52 Multiplayer Xbox LIVE & desenhado para poucos participantes
“Join In Progress” Migração de Host Multiplayer Local (2+ em um console) Co-Op Experiências Sociais Offline gameplay & tracking

53 Apelo Global Planeje seu jogo com o mercado global em mente
Localização Inglês, Frances, Italiano, Alemão, Espanhol, Japonês, Koreano, Chinês (tradicional), Português (pt-br opcional).

54 Guia de criação de conceito documentos de projeto
4/2/2017 2:23 PM Guia de criação de conceito documentos de projeto Documentos de projeto contém Descrição mínima da jogabilidade Quantidade e variedade de exemplos de arte Screenshots é melhor, mas arte conceitual ajuda Evidência de diferenciação Como esse jogo é diferente de outros títulos semelhantes? O que exatamente “novas formas de jogar” significa? Suporte a PDLC não é, automaticamente, um diferencial 54 ©2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

55 José Antonio “jalf” Leal de Farias
Dúvidas? José Antonio “jalf” Leal de Farias Microsoft Most Valuable Professional


Carregar ppt "Introdução ao XNA e ao Game Developer Express"

Apresentações semelhantes


Anúncios Google