Partilhar via


Usando serviços de nuvem para jogos UWP

A Plataforma Universal do Windows (UWP) no Windows 10 oferece um conjunto de APIs que podem ser usadas para desenvolver jogos em dispositivos Microsoft. Ao desenvolver jogos em plataformas e dispositivos, você pode usar um back-end na nuvem para ajudar a dimensionar seu jogo de acordo com a demanda.

Se estiver à procura de uma solução completa de back-end em nuvem para jogos, consulte Software as a Service para back-end de jogos.

O que é a computação em nuvem?

A computação em nuvem usa recursos e aplicativos de TI sob demanda pela Internet para armazenar e processar dados para seus dispositivos. O termo nuvem é uma metáfora para a disponibilidade de vastos recursos lá fora (não recursos locais) que você pode acessar de locais não específicos. O princípio da computação em nuvem oferece uma nova forma de consumir recursos e software. Os usuários não precisam mais pagar pelo produto completo completo ou recursos antecipadamente, mas em vez disso são capazes de consumir plataforma, software e recursos como um serviço. Os provedores de nuvem geralmente faturam seus clientes de acordo com o uso ou as ofertas de planos de serviço.

Porquê utilizar serviços na nuvem?

Uma vantagem de usar serviços em nuvem para jogos é que você não precisa investir em servidores de hardware físico antecipadamente, mas só precisa pagar de acordo com o uso ou planos de serviço em um estágio posterior. É uma forma de ajudar a gerir os riscos envolvidos no desenvolvimento de um novo título de jogo.

Outra vantagem é que seu jogo pode aproveitar vastos recursos de nuvem para alcançar escalabilidade (gerenciar efetivamente quaisquer picos repentinos no número de jogadores simultâneos, cálculos intensos de jogos em tempo real ou requisitos de dados). Isso mantém o desempenho do seu jogo estável o tempo todo. Além disso, os recursos de nuvem podem ser acessados de qualquer dispositivo em execução em qualquer plataforma em qualquer lugar do mundo, o que significa que você é capaz de levar seu jogo para todos globalmente.

Oferecer uma experiência de jogo incrível aos seus jogadores é importante. Como os servidores de jogos executados na nuvem são independentes das atualizações do lado do cliente, eles podem oferecer um ambiente mais controlado e seguro para o seu jogo em geral. Você também pode alcançar consistência de jogo através da nuvem, ao nunca confiar no cliente e ao ter lógica de jogo do lado do servidor. As conexões serviço-a-serviço também podem ser configuradas para permitir uma experiência de jogo mais integrada; exemplos incluem a ligação de compras no jogo a vários métodos de pagamento, a ligação entre diferentes redes de jogos e a partilha de atualizações no jogo com portais de redes sociais populares, como o Facebook e o X.

Você também pode usar servidores de nuvem dedicados para criar um grande mundo de jogo persistente, construir uma comunidade de jogadores, coletar e analisar dados de jogadores ao longo do tempo para melhorar a jogabilidade e otimizar o modelo de design de monetização do seu jogo.

Além disso, jogos que exigem recursos intensivos de gerenciamento de dados de jogos, como jogos sociais com mecânica multiplayer assíncrona, podem ser implementados usando serviços em nuvem.

Como as empresas de jogos usam a tecnologia de nuvem

Saiba como outros desenvolvedores implementaram soluções de nuvem em seus jogos.

Desenvolvedor Descrição Principais cenários de jogo Mais informações
Tencent Jogos a Tencent Games desenvolveu uma solução inovadora usando o Azure Service Fabric que permite que jogos de PC tradicionais sejam entregues como um serviço. Sua solução de jogo na nuvem usa um modelo de 'thin client + rich cloud' executando cargas de trabalho como microsserviços no back-end.
  • Os jogos de PC tradicionais são entregues como jogos na nuvem para utilizadores de todo o mundo
  • Processo de entrega de jogos otimizado
  • Funcionalidades de jogos isoladas como microsserviços para reduzir a complexidade, reduzir a repetição de cargas de trabalho devido a dependências e a capacidade de atualizar novos recursos de forma independente
  • Pequenos downloads de pacotes de instalação para reproduzir o conteúdo mais recente do jogo (tamanho do pacote reduzido de GB para MB)
  • Custo de manutenção reduzido
343 Indústrias Halo 5: Guardians implementou Halo: Spartan Companies como sua plataforma de jogabilidade social usando o Azure Cosmos DB (via API do Banco de Dados de Documentos), que foi selecionado por sua velocidade e flexibilidade devido aos seus recursos de indexação automática.
  • Camada de dados escalável para a criação/gestão de grupos para jogos multijogador
  • Integração de jogos e redes sociais
  • Consultas de dados em tempo real através de vários atributos
  • Sincronização de conquistas e estatísticas de jogabilidade
Illyriad Jogos A Illyriad Games criou Age of Ascent, um jogo espacial 3D épico multijogador online (MMO) massivo que pode ser jogado em dispositivos que possuem navegadores modernos. Assim, este jogo pode ser jogado em PCs, laptops, telefones celulares e outros dispositivos móveis sem plug-ins. O jogo usa ASP.NET Core, HTML5, WebGL e Azure.
  • Jogo multiplataforma, baseado em navegador
  • Um grande mundo aberto persistente
  • Lida com cálculos intensivos de jogabilidade em tempo real
  • Escalas com número de jogadores
Próximos Jogos Next Games é o criador do The Walking Dead: No Man's Land videojogo, que é baseado na série original da AMC. O jogo Walking Dead usou o Azure como backend. Ele teve 1.000.000 de downloads no fim de semana de abertura e, na primeira semana, o jogo se tornou #1 iPhone & iPad Free App na App Store dos EUA, #1 Free App em 12 países e #1 Free Game em 13 países.
  • Multiplataforma
  • Multijogador baseado em turnos
  • Dimensione o desempenho de forma elástica
  • Proteção contra fraudes de jogadores
  • Entrega de conteúdo dinâmico
Pixel Esquadrão O Pixel Squad desenvolveu Crime Coast usando o mecanismo de jogo Unity e o Azure. Crime Coast é um jogo de estratégia social disponível na plataforma Android, iOS e Windows. O Armazenamento de Blobs do Azure, o Cache Redis Gerido do Azure, uma matriz de VMs do IIS com balanceamento de carga e o Hub de Notificações da Microsoft foram usados no seu jogo. Saiba como eles gerenciaram o escalonamento e lidaram com o aumento de jogadores com 5000 jogadores simultâneos.
  • Multiplataforma
  • Jogo online multijogador
  • Escala com o número de jogadores
  • Como o jogo MMO Crime Coast usou os Serviços de Nuvem do Azure

Como projetar seu back-end na nuvem

Enquanto os produtores e designers de jogos estão em discussão sobre quais recursos e funcionalidades do jogo são necessários no jogo, é bom começar a considerar como você deseja projetar sua infraestrutura de jogo. O Azure pode ser usado como back-end de jogos quando você deseja desenvolver jogos para vários dispositivos e em diferentes plataformas principais.

Noções básicas sobre IaaS, PaaS ou SaaS

Primeiro, você precisa pensar sobre o nível de serviço que é mais adequado para o seu jogo. Conhecer as diferenças nos três serviços a seguir pode ajudá-lo a determinar a abordagem que deseja adotar na criação do seu back-end.

  • Infraestrutura como um Serviço (IaaS)

    A infraestrutura como serviço (IaaS) é uma infraestrutura de computação instantânea, provisionada e gerenciada pela Internet. Imagine ter a possibilidade de muitas máquinas prontamente disponíveis para aumentar e reduzir rapidamente a escala, dependendo da demanda. A IaaS ajuda você a evitar o custo e a complexidade de comprar e gerenciar seus próprios servidores físicos e outras infraestruturas de datacenter.

  • plataforma como serviço (PaaS)

    A plataforma como serviço (PaaS) é como IaaS, mas também inclui gerenciamento de infraestrutura, como servidores, armazenamento e rede. Portanto, além de não comprar servidores físicos e infraestrutura de datacenter, você também não precisa comprar e gerenciar licenças de software, infraestrutura de aplicativos subjacentes, middleware, ferramentas de desenvolvimento ou outros recursos.

  • Software como serviço (SaaS)

    O software como serviço (SaaS) permite que os usuários se conectem e usem aplicativos baseados em nuvem pela Internet. Ele fornece uma solução de software completa que se adquire através de um fornecedor de serviços em nuvem num modelo de pagamento conforme o consumo. Exemplos comuns são email, calendário e ferramentas de escritório (como aplicativos do Microsoft 365 Office). Você aluga o uso de um aplicativo para sua organização e seus usuários se conectam a ele pela Internet, geralmente com um navegador da Web. Toda a infraestrutura subjacente, middleware, software de aplicativo e dados de aplicativo estão localizados no data center do provedor de serviços. O provedor de serviços gerencia o hardware e o software e, com o contrato de serviço apropriado, garantirá a disponibilidade e a segurança do jogo e de seus dados também. O SaaS permite que sua organização comece a trabalhar rapidamente com um aplicativo a um custo inicial mínimo.

Projete sua infraestrutura de jogos usando o Azure

A seguir estão algumas maneiras pelas quais as ofertas de nuvem do Azure podem ser usadas para um jogo. O Azure funciona com Windows, Linux e tecnologias de código aberto familiares, como Ruby, Python, Java e PHP. Para obter mais informações, consulte Azure for gaming.

Requerimentos Cenários de atividade Oferta de Produtos Capacidades do produto
Hospede seu domínio na nuvem Responda a consultas DNS de forma eficiente Azure DNS Hospede seu domínio com alto desempenho e disponibilidade
Iniciar sessão, verificação de identidade O jogador inicia sessão e a identidade do jogador é autenticada Azure Ative Directory Início de sessão único em qualquer aplicação web na nuvem e no local com autenticação multi-fator
Jogo usando infraestrutura como modelo de serviço (IaaS) O jogo está alojado em máquinas virtuais na nuvem Azure VMs Dimensione de 1 a milhares de instâncias de máquinas virtuais como servidores de jogos com rede virtual integrada e balanceamento de carga; Consistência híbrida com sistemas locais
Jogos web ou móveis usando plataforma como modelo de serviço (PaaS) O jogo está alojado numa plataforma gerida Serviço de Aplicações do Azure PaaS para sites ou jogos móveis (o que significa VMs do Azure com gerenciamento de middleware/ferramentas de desenvolvimento/BI/DB)
Jogo na nuvem de n camadas, altamente disponível e escalável, com mais controlo do sistema operativo (PaaS) O jogo está alojado numa plataforma gerida Serviço de Nuvem do Azure PaaS projetado para suportar aplicativos escaláveis, confiáveis e baratos de operar
Balanceamento de carga entre regiões para melhor desempenho e disponibilidade Encaminha solicitações de jogos recebidas. Pode atuar como primeiro nível de balanceamento de carga. Gestor de Tráfego do Azure Oferece várias opções de failover automático e capacidade de distribuir seu tráfego igualmente ou com valores ponderados. Pode combinar perfeitamente sistemas locais e na nuvem.
Armazenamento na nuvem para dados de jogos Os dados mais recentes do jogo são armazenados na nuvem e enviados para dispositivos clientes Armazenamento de Blobs do Azure Nenhuma restrição sobre os tipos de arquivo que podem ser armazenados; Armazenamento de objetos para grandes quantidades de dados não estruturados, como imagens, áudio, vídeo e muito mais.
Tabelas de armazenamento temporário de dados As transações do jogo (alterações nos estados do jogo) são armazenadas em tabelas temporariamente. Armazenamento de Tabelas do Azure Os dados do jogo podem ser armazenados em um esquema flexível de acordo com as necessidades do jogo
Fila de transações/solicitações de jogos As transações de jogos são processadas na forma de uma fila Armazenamento de Filas do Azure As filas absorvem picos de tráfego inesperados e podem evitar que os servidores sejam sobrecarregados por uma enxurrada repentina de solicitações durante o jogo
Banco de dados de jogos relacionais escalável Armazenamento estruturado de dados relacionais, como transações no jogo para o banco de dados Banco de Dados SQL do Azure Base de dados SQL como um serviço (Compare com SQL numa VM)
Banco de dados de jogos de baixa latência distribuído escalável Leitura, gravação e consulta rápidas de dados de jogos e jogadores com flexibilidade de esquema Azure Cosmos DB Banco de dados de documentos NoSQL de baixa latência como um serviço
Usar o próprio datacenter com os serviços do Azure O jogo é recuperado do seu próprio datacenter e enviado para os dispositivos clientes Azure Stack Permite que sua organização forneça serviços do Azure a partir de seu próprio datacenter para ajudá-lo a obter mais
Transferência de grandes blocos de dados Arquivos grandes, como imagens de jogos, áudio e vídeos, podem ser enviados aos usuários do local pop da Rede de Distribuição de Conteúdo (CDN) mais próximo com a CDN do Azure Rede de Entrega de Conteúdos do Azure Criada em uma topologia de rede moderna de grandes nós centralizados, a CDN do Azure lida com picos repentinos de tráfego e cargas pesadas para aumentar drasticamente a velocidade e a disponibilidade, resultando em melhorias significativas na experiência do usuário
Baixa latência Realizar caching para criar jogos rápidos e escaláveis com mais controlo e isolamento garantido de dados; também pode ser usado para melhorar a funcionalidade de matchmaking do jogo. Cache Redis do Azure Alta taxa de transferência, acesso consistente a dados de baixa latência para alimentar aplicativos do Azure rápidos e escaláveis
Alta escalabilidade, baixa latência Lida com flutuações no número de usuários de jogos com baixa latência de leitura e gravação Azure Service Fabric Capaz de alimentar os cenários mais complexos, de baixa latência e com uso intensivo de dados e dimensionar de forma confiável para lidar com mais usuários ao mesmo tempo. Service Fabric permite criar jogos sem precisar criar um armazenamento ou cache separados, conforme necessário para aplicativos sem estado.
Capacidade de coletar milhões de eventos por segundo de dispositivos Registre milhões de eventos por segundo a partir de dispositivos Hubs de Eventos do Azure Ingestão de telemetria em escala de nuvem de jogos, sites, aplicativos e dispositivos
Processamento em tempo real dos dados do jogo Realize análises em tempo real dos dados dos jogadores para melhorar a jogabilidade Azure Stream Analytics Processamento de fluxo em tempo real na nuvem
Desenvolva jogabilidade preditiva Crie uma jogabilidade dinâmica personalizada com base nos dados do jogador Azure Machine Learning Um serviço de nuvem totalmente gerenciado que permite criar, implantar e compartilhar facilmente soluções de análise preditiva
Coletar e analisar dados do jogo Processamento paralelo maciço de dados de bancos de dados relacionais e não relacionais Armazém de Dados do Azure Data warehouse elástico como serviço com recursos de classe Enterprise
Envolva os usuários para aumentar o uso e a retenção Envie notificações push direcionadas para qualquer plataforma a partir de qualquer back-end para gerar interesse e incentivar ações específicas do jogo Hubs de Notificação do Microsoft Azure Envio rápido de transmissões para alcançar milhões de dispositivos móveis em todas as principais plataformas — iOS, Android, Windows, Kindle, Baidu. Seu jogo pode ser hospedado em qualquer back-end — na nuvem ou no local.
Transmita conteúdo multimédia para o seu público local e mundial enquanto protege o seu conteúdo Trailers de jogos com qualidade de transmissão e clipes cinematográficos podem ser assistidos de todos os dispositivos Serviços de Mídia do Azure Streaming de vídeo sob demanda e ao vivo com recursos integrados da Content Delivery Network. Utilize um leitor para todas as suas necessidades de reprodução, incluindo proteção de conteúdo e encriptação.
Desenvolva, distribua e teste beta seus aplicativos móveis Teste e distribua seu aplicativo móvel. Desempenho do aplicativo e gerenciamento da experiência do usuário. Hóquei, App Integra relatórios de falhas e métricas do usuário com uma plataforma de distribuição de aplicativos e feedback do usuário. Suporta aplicações Android, Cordova, iOS, OS X, Unity, Windows e Xamarin. Além disso, considere Visual Studio Mobile Center — controle de missão para aplicativos que combina análises avançadas, relatórios de falhas, notificações por push, distribuição de aplicativos e muito mais.
Crie campanhas de marketing para aumentar o uso e a retenção Envie notificações push para jogadores segmentados para gerar interesse e incentivar ações específicas do jogo de acordo com a análise de dados Mobile engagement - será desativada em março de 2018 e atualmente está disponível apenas para clientes existentes Aumente o tempo de jogo e a retenção de usuários em todas as principais plataformas: iOS, Android, Windows, Windows Phone

Recursos para startups e desenvolvedores

Recursos de aprendizagem

Software como serviço para back-end de jogos

Azure PlayFab atualmente alimenta mais de 1.200 jogos ao vivo com 80 milhões de jogadores ativos mensais. É uma plataforma de back-end completa que inclui LiveOps full stack com controle em tempo real.

Você pode integrar essa solução em seus jogos para celular, PC ou console usando SDKs. Existem SDKs disponíveis para todos os mecanismos e plataformas de jogos populares, incluindo Android, iOS, Unreal, Unity e Windows.

Ele oferece serviços de jogos como autenticação, gerenciamento de dados de jogadores, multiplayer e análises em tempo real para ajudar seu jogo a aumentar sua base de usuários. Aproveite o poder do pipeline de dados em tempo real e do LiveOps para envolver seus usuários com itens, eventos e promoções personalizados no jogo. Você também tem a capacidade de realizar testes A/B, gerar relatórios, enviar notificações push e muito mais.

Estamos constantemente a inovar e a adicionar novas funcionalidades. Para obter mais informações, consulte Azure PlayFab; e para obter preços, consulte Preços.