Utilisation de services cloud pour les jeux UWP
La plateforme Windows universelle (UWP) dans Windows 10 offre un ensemble d’API qui peuvent être utilisées pour développer des jeux sur des appareils Microsoft. Lors du développement de jeux sur plusieurs plateformes et appareils, vous pouvez utiliser un back-end cloud pour vous aider à mettre à l’échelle vote jeu en fonction de la demande.
Si vous recherchez une solution complète de back-end cloud pour votre jeu, consultez Software as a Service pour le back-end de jeu.
Le cloud computing utilise des ressources informatiques et des applications à la demande sur Internet pour stocker et traiter des données pour vos appareils. Le terme cloud est une métaphore indiquant la disponibilité de vastes ressources en extérieur (pas des ressources locales) auxquelles vous pouvez accéder à partir d’emplacements non spécifiques. Le principe du cloud computing offre une nouvelle façon de consommer les ressources et les logiciels. Les utilisateurs n’ont plus besoin de payer à l’avance pour le produit complet ou les ressources, mais ils sont en mesure de consommer la plateforme, les logiciels et les ressources en tant que service. Les fournisseurs de cloud facturent souvent leurs clients en fonction de l’utilisation ou d’offres de plan de service.
L’un des avantages de l’utilisation des services cloud pour les jeux est que vous n’avez pas besoin d’investir dans des serveurs matériels physiques à l’avance, mais qu’il vous suffit de payer en fonction de l’utilisation ou des plans de service à un stade ultérieur. Il s’agit d’une façon d’aider à gérer les risques liés au développement d’un nouveau titre de jeu.
Un autre avantage est que votre jeu peut exploiter de vastes ressources cloud pour obtenir la scalabilité (gérez efficacement les pics soudains dans le nombre de joueurs simultanés, les calculs de jeu en temps réel intenses ou les besoins en données). Cela maintient la stabilité des performances de votre jeu tout au long de la journée. En outre, les ressources cloud sont accessibles à partir de n’importe quel appareil s’exécutant sur n’importe quelle plateforme partout dans le monde, ce qui signifie que vous pouvez apporter votre jeu à tout le monde.
Il est important d’offrir une expérience de jeu incroyable à vos joueurs. Étant donné que les serveurs de jeux s’exécutant dans le cloud sont indépendants des mises à jour côté client, ils peuvent vous donner un environnement plus contrôlé et sécurisé pour votre jeu dans l’ensemble. Vous pouvez également obtenir une cohérence de jeu grâce au cloud en ne faisant jamais confiance au client et en plaçant la logique de jeu côté serveur. Les connexions service à service peuvent également être configurées pour permettre une expérience de jeu plus intégrée ; des exemples incluent la liaison des achats en jeu à divers modes de paiement, le pontage entre différents réseaux de jeux, et le partage de mises à jour en jeu sur des portails de médias sociaux populaires tels que Facebook et X.
Vous pouvez également utiliser des serveurs cloud dédiés pour créer un vaste monde de jeu persistant, créer une communauté de joueurs, collecter et analyser des données sur les joueurs au fil du temps pour améliorer le jeu et optimiser le modèle de conception de monétisation de votre jeu.
En outre, les jeux qui nécessitent des fonctionnalités intensives de gestion des données de jeu comme les jeux sociaux avec des mécanismes multijoueurs asynchrones peuvent être implémentés à l’aide de services cloud.
Découvrez comment d’autres développeurs ont implémenté des solutions cloud dans leurs jeux.
Développeur | Description | Principaux scénarios de jeu | En savoir plus |
---|---|---|---|
Tencent Games | Tencent Games a développé une solution innovante à l’aide d’Azure Service Fabric, qui permet aux jeux PC traditionnels d’être livrés en tant que service. Leur solution Cloud Game utilise un modèle « client léger + cloud enrichi » qui exécute des charges de travail en tant que microservices dans le back-end. |
|
|
343 Industries | Halo 5 : Guardians a implémenté Halo : Spartan Companies en tant que plateforme de jeu sociale à l’aide d’Azure Cosmos DB (via l’API DocumentDB), qui a été sélectionné pour sa vitesse et sa flexibilité grâce à ses fonctionnalités d’indexation automatique. |
|
|
Illyriad Games | Illyriad Games a créé Age of Ascent, un jeu épique en 3D dans l’espace, massivement multijoueur (MMO) qui peut être joué sur des appareils équipés de navigateurs modernes. Ce jeu peut donc être joué sur des PC, des ordinateurs portables, des téléphones mobiles et d’autres appareils mobiles sans plug-ins. Le jeu utilise ASP.NET Core, HTML5, WebGL et Azure. |
|
|
Next Games | Next Games est le créateur du jeu vidéo The Walking Dead : No Man’s Land basé sur la série originale d’AMC. Le jeu Walking Dead a utilisé Azure comme back-end. Il a atteint 1 000 000 téléchargements pendant le week-end d’ouverture et, au cours de la première semaine, le jeu est devenu n°1 des applications gratuites sur iPhone et iPad dans l’App Store américain, n°1 des applications gratuites dans 12 pays et n°1 des jeux gratuits dans 13 pays. |
|
|
Pixel Squad | Pixel Squad a développé Crime Coast à l’aide du moteur de jeu Unity et d’Azure. Crime Coast est un jeu de stratégie sociale disponible sur les plateformes Android, iOS et Windows. Stockage Blob Azure, le cache Redis Azure managé, un tableau de machines virtuelles IIS à équilibrage de charge et le hub de notification Microsoft ont été utilisés dans leur jeu. Découvrez comment ils ont géré la mise à l’échelle et l’afflux de joueurs avec 5 000 joueurs simultanés. |
|
|
- Hitman et Azure : Créer des fonctionnalités de jeu telles que Elusive Target qui ne sont possibles qu’à l’aide du cloud
- Azure dispose de la sauce secrète pour Hitcents, Game Troopers et InnoSpark
Bien que les producteurs et les concepteurs de jeux soient en discussion sur les fonctionnalités et les caractéristiques nécessaires dans le jeu, il est bon de commencer à envisager la façon dont vous souhaitez concevoir votre infrastructure de jeu. Azure peut être utilisé comme back-end de jeu lorsque vous souhaitez développer des jeux pour différents appareils et sur différentes plateformes principales.
Tout d’abord, vous devez réfléchir au niveau de service le mieux adapté à votre jeu. Connaître les différences entre les trois services suivants peut vous aider à déterminer l’approche que vous souhaitez adopter pour créer votre back-end.
IaaS (Infrastructure as a service)
Le modèle IaaS est une infrastructure informatique instantanée, provisionnée et gérée via Internet. Imaginez avoir la possibilité que de nombreuses machines soient facilement disponibles pour effectuer rapidement un scale-up ou un scale-down en fonction de la demande. IaaS vous permet d’éviter les dépenses et la complexité liées à l’achat et à la gestion de vos propres serveurs physiques ou autre infrastructure de centre de données.
-
Platform as a Service (PaaS) est semblable à IaaS, mais inclut également la gestion de l’infrastructure comme les serveurs, le stockage et la mise en réseau. Ainsi, en plus de ne pas acheter de serveurs physiques et d’infrastructure de centre de données, vous n’avez pas non plus besoin d’acheter et de gérer des licences logicielles, une infrastructure d’application sous-jacente, un intergiciel, des outils de développement ou d’autres ressources.
-
Le modèle SaaS (Software as a service) permet aux utilisateurs de se connecter à travers Internet à des applications basées sur le cloud et de les utiliser. Il offre une solution logicielle complète que vous pouvez acquérir auprès d’un fournisseur de services cloud contre paiement à l’utilisation. Des exemples courants sont des outils de courrier, de calendrier et de bureautique (tels que les applications Microsoft Office 365). Vous louez l’utilisation d’une application pour votre organisation, et vos utilisateurs s’y connectent par Internet, en général avec un navigateur web. Toute l’infrastructure sous-jacente, incluant l’intergiciel (middleware), les logiciels applicatifs et les données d’application, est située dans le centre de données du fournisseur de services. Celui-ci gère le matériel ainsi que les logiciels, et moyennant la conclusion d’un contrat de service approprié, garantit la disponibilité et la sécurité du jeu et de vos données. SaaS permet à votre organisation de disposer rapidement d’une application opérationnelle, moyennant un investissement initial minimal.
Voici quelques façons dont les offres cloud Azure peuvent être utilisées pour un jeu. Azure fonctionne avec Windows, Linux et des technologies open source familières telles que Ruby, Python, Java et PHP. Pour plus d’informations, consultez Azure pour le gaming.
Spécifications | Scénarios d’activité | Offre de produit | Fonctionnalités du produit |
---|---|---|---|
Héberger votre domaine dans le cloud | Répondre efficacement aux requêtes DNS | Azure DNS | Héberger votre domaine avec des performances et une disponibilité élevées |
Connexion, vérification d’identité | Le joueur se connecte et son identité est authentifiée | Azure Active Directory | Authentification unique sur n’importe quelle application web cloud et locale avec authentification multifacteur |
Jeu utilisant le modèle Infrastructure as a Service (IaaS) | Le jeu est hébergé sur des machines virtuelles dans le cloud | Machines virtuelles Azure | Mettez à l’échelle de une à plusieurs milliers d’instances de machines virtuelles en tant que serveurs de jeu avec une mise en réseau virtuelle et un équilibrage de charge intégrés, tout en tirant parti de la cohérence hybride avec des systèmes locaux |
Jeux web ou mobiles utilisant un modèle PaaS (Platform as a Service) | Le jeu est hébergé sur une plateforme managée | Azure App Service | PaaS pour les sites web ou les jeux mobiles (ce qui signifie machines virtuelles Azure avec intergiciel/outils de développement/BI/gestion de base de données) |
Jeu cloud à N niveaux, hautement disponible et évolutif avec plus de contrôle du système d'exploitation (PaaS) | Le jeu est hébergé sur une plateforme managée | Service cloud Azure | PaaS conçu pour prendre en charge des applications évolutives, fiables et dont l’exploitation est peu onéreuse |
Équilibrage de charge entre les régions pour améliorer les performances et la disponibilité | Achemine les demandes de jeu entrantes. Peut agir comme premier niveau d’équilibrage de charge. | Azure Traffic Manager | Offre plusieurs options de basculement automatique et la possibilité de distribuer votre trafic de manière égale ou avec des valeurs pondérées. Peut combiner de façon transparente des systèmes cloud et locaux. |
Stockage cloud pour les données de jeu | Les dernières données de jeu sont stockées dans le cloud et envoyées aux appareils clients | Stockage Blob Azure | Aucune restriction sur les types de fichiers pouvant être stockés ; stockage d’objets pour de grandes quantités de données non structurées telles que les images, l’audio, la vidéo, etc. |
Tables de stockage de données temporaires | Les transactions de jeu (changements des états du jeu) sont stockées temporairement dans les tables | Azure Table Storage | Les données de jeu peuvent être stockées dans un schéma flexible en fonction des besoins du jeu |
Mise en file d’attente des transactions/demandes de jeu | Les transactions de jeu sont traitées sous la forme d’une file d’attente | Stockage File d’attente Azure | Les files d'attente absorbent les pics de trafic inattendus et peuvent contribuer à ce que vos serveurs ne soient pas submergés par une arrivée massive et soudaine de demandes au cours du jeu |
Base de données relationnelle de jeu évolutive | Stockage structuré de données relationnelles, comme les transactions au sein des jeux vers la base de données | Azure SQL Database | Base de données en tant que service SQL (comparer avec SQL sur une machine virtuelle) |
Base de données de jeu à faible latence distribuée évolutive | Rapidité des lectures, écritures et requêtes des données de jeu et de joueur avec flexibilité du schéma | Azure Cosmos DB | Base de données en tant que service de documents NoSQL à faible latence |
Utiliser son propre centre de données avec les services Azure | Le jeu est récupéré à partir de votre propre centre de données et envoyé aux appareils clients | Azure Stack | Permet à votre organisation de fournir des services Azure à partir de votre propre centre de données pour vous aider à obtenir plus d’informations |
Transfert de blocs de données volumineux | Les fichiers volumineux tels que les images, l’audio et les vidéos du jeu peuvent être envoyés aux utilisateurs à partir de l’emplacement contextuel du réseau de distribution de contenu (CDN) le plus proche avec Azure CDN | Azure Content Delivery Network | Reposant sur une topologie de réseau moderne de nœuds centralisés volumineux, Azure CDN gère les pics de trafic soudains et les fortes charges pour augmenter considérablement la vitesse et la disponibilité, entraînant des améliorations significatives de l’expérience utilisateur |
Latence faible | Utilisez la mise en cache pour créer des jeux rapides et évolutifs avec davantage de contrôle et une isolation des données garantie ; cette fonction peut également être utilisée pour améliorer la fonctionnalité de création de correspondance pour le jeu. | Cache Redis Azure | Accès cohérent aux données à faible latence et débit élevé pour alimenter des applications Azure rapides et évolutives |
Scalabilité élevée, faible latence | Gère les fluctuations du nombre d’utilisateurs de jeu avec une faible latence des lectures et écritures | Azure Service Fabric | Capable d’alimenter les scénarios les plus complexes, à faible latence et à forte consommation de données et de mettre à l’échelle de manière fiable pour gérer plus d’utilisateurs à la fois. Service Fabric vous permet de générer des jeux sans avoir à créer de cache ou de magasin distinct nécessaire aux applications sans état |
Possibilité de collecter des millions d’événements par seconde à partir d’appareils | Journalisation de millions d’événements par seconde à partir d’appareils | Azure Event Hubs | Intégration des informations de télémétrie à l'échelle du cloud à partir des jeux, des sites Web, des applications et des appareils |
Traitement en temps réel des données de jeu | Effectuez une analyse en temps réel des données des joueurs pour améliorer l’expérience de jeu | Azure Stream Analytics | Traitement des flux en temps réel dans le cloud |
Développer un gameplay prédictif | Créer un gameplay dynamique personnalisé basé sur des données du joueur | Azure Machine Learning | Un service cloud entièrement managé permettant de créer, de déployer et de partager facilement des solutions d’analytique prédictive |
Collecter et analyser des données du jeu | Traitement massivement parallèle des données à partir de bases de données relationnelles et non relationnelles | Azure Data Warehouse | Entrepôt de données élastique en tant que service avec fonctionnalités destinées aux entreprises |
Impliquez les utilisateurs pour augmenter l’utilisation et la rétention | Envoyez des notifications Push ciblées vers n’importe quelle plateforme de n’importe quel back-end pour générer de l’intérêt et encourager des actions de jeu spécifiques | Azure Notification Hubs | Diffusion Push rapide pour atteindre des millions d’appareils mobiles sur toutes les principales plateformes : iOS, Android, Windows, Kindle, Baidu. Votre jeu peut être hébergé sur n’importe quel back-end (cloud ou local). |
Diffusez du contenu multimédia à votre public local et mondial tout en protégeant votre contenu | Diffusez des bandes-annonces de jeu de qualité et des clips cinématiques pouvant être regardés à partir de tous les appareils | Azure Media Services | Streaming de vidéo en direct et à la demande avec les fonctionnalités du réseau de distribution de contenu intégrées. Utilisez un lecteur pour tous vos besoins de lecture, qui inclut la protection du contenu et le chiffrement. |
Développez, distribuez et testez vos applications mobiles | Tester et distribuer votre application mobile. Performances des applications et gestion de l’expérience utilisateur. | HockeyApp | Intègre le rapport d’incidents et les mesures utilisateur avec une plateforme de distribution d’applications et de commentaires d’utilisateurs. Prend en charge des applications Android, Cordova, iOS, OS X, Unity, Windows et Xamarin. Pense également à Visual Studio Mobile Center : contrôle de mission pour les applications qui combinent des analyses enrichies, des rapports d’incident, des notifications Push, la distribution d’applications, etc. |
Créez des campagnes marketing pour augmenter l’utilisation et la rétention | Envoyez des notifications Push vers des joueurs ciblés end pour générer de l’intérêt et encourager des actions de jeu spécifiques en fonction des analyses de données | Engagement sur mobile - ne sera plus disponible à partir de mars 2018. Actuellement, il reste uniquement disponible pour les clients déjà abonnés à ce service | Augmentez le temps de jeu et la rétention des utilisateurs sur toutes les principales plateformes : iOS, Android, Windows, téléphone Windows |
-
Microsoft for Startups fournit des avantages de produit, techniques et de mise sur le marché pour accélérer la croissance des start-ups. L’un de ses avantages est l’obtention d’un compte gratuit Azure. Vous disposez de 200 $ de crédit pour découvrir les services pendant 30 jours, de 12 mois de services populaires gratuits et de plus de 25 services gratuits à vie. Pour plus d’informations, consultez Donnez vie aux idées de votre start-up en créant un compte gratuit Azure.
Programmes pour les développeurs
Microsoft propose plusieurs programmes pour les développeurs tels que ID@Xbox et le Programme Créateurs Xbox Live pour vous aider à développer et publier des jeux.
- //build 2016 : CodeLabs – Utiliser Microsoft Azure App Service et le back-end Microsoft SQL Azure pour enregistrer le score de jeu dans Unity
- //build 2017 : Livraison d’expériences de jeu de classe mondiale à l’aide de Microsoft Azure : Leçons apprises à partir de titres tels que Halo, Hitman et Walking Dead (vidéo)
- Ensemble réutilisable de blocs élémentaires, de projets, de services et de meilleures pratiques conçus pour prendre en charge les charges de travail de jeux courantes à l’aide d’Azure sur GitHub : blocs élémentaires pour les jeux sur Azure
- Services de jeux sur Azure (vidéos)
Azure PlayFab gère actuellement plus de 1200 jeux en direct, avec 80 millions de joueurs actifs par mois. Il s’agit d’une plateforme back-end complète qui inclut LiveOps full stack avec un contrôle en temps réel.
Vous pouvez intégrer cette solution dans vos jeux mobiles, PC ou console à l’aide de kits SDK. Des kits SDK sont disponibles pour l’ensemble des moteurs et plateformes de jeux populaires, notamment Android, iOS, Unreal, Unity et Windows.
Elle offre des services de jeu tels que l’authentification, la gestion des données des joueurs, le mode multijoueur et l’analyse en temps réel pour aider votre jeu à étendre sa base d’utilisateurs. Exploitez la puissance du pipeline de données en temps réel et de LiveOps pour impliquer vos utilisateurs avec des éléments, des événements et des promotions personnalisés dans le jeu. Vous pouvez également effectuer des tests A/B, générer des rapports, envoyer des notifications Push, etc.
Nous innovons constamment et ajoutons de nouvelles fonctionnalités. Pour plus d’informations, consultez Azure PlayFab ; et pour connaître les tarifs, consultez Tarification.