Passer au contenu principal

Bibliothèque de solutions AWS

Guide pour un environnement de production de jeux sur AWS

Présentation

Le présent guide vous permet de configurer un environnement de production de jeux complet pour Unreal Engine, hautement disponible et fourni aux utilisateurs avec un temps de latence réduit. Il permet également d'accélérer les tâches gourmandes en calcul en répartissant le travail sur d'autres machines à la demande, grâce à un poste de travail virtuel haute performance et un système de contrôle de version centralisé. L'exemple de code vous montre comment configurer cet environnement de production de jeux pour votre équipe.

Fonctionnement

Ce schéma d'architecture montre comment les développeurs de jeux peuvent créer un environnement de développement Unreal Engine 5 (UE5) basé sur le cloud avec une station de travail virtuelle et un contrôle de version avec Perforce Helix Core et comment ils peuvent développer l'accélération avec Incredibuild et Unreal Engine Swarm. La station de travail virtuelle dotée de graphismes accélérés par GPU permet aux développeurs de travailler dans leur environnement à distance et en toute sécurité, tout en tirant parti du réseau AWS haut débit pour accélérer les tâches de génération et de synchronisation du contrôle des versions.

Piliers Well-Architected

Le diagramme d'architecture ci-dessus est un exemple de solution créée en tenant compte des bonnes pratiques Well-Architected. Pour être totalement conforme à Well-Architected, vous devez suivre autant de bonnes pratiques Well-Architected que possible.

AWS Cloud Development Kit (AWS CDK) permet des déploiements cohérents et reproductibles des éléments de l'environnement de développement. Les sources d'erreur sont ainsi éliminées lors du déploiement, ce qui améliore la sécurité et la fiabilité et réduit les coûts. Amazon CloudWatch fournit des mesures opérationnelles et une journalisation pour les ressources de l'environnement de développement. Les déploiements automatisés, cohérents et reproductibles à partir de la journalisation AWS CDK avec CloudWatch permettent aux composants applicatifs de l'environnement de développement de disposer d'un emplacement unique où enregistrer leurs données, quel que soit le nombre de ressources mises à l'échelle. Les paramètres opérationnels et sanitaires se mettent également à l'échelle et sont activés par défaut pour tous les services du présent guide.

Lire le livre blanc sur l'excellence opérationnelle

NICE DCV sécurise à la fois les pixels et les entrées de l'utilisateur final à l'aide d'un cryptage AES-256 de bout en bout entre le client et le serveur. Il nécessite également l'authentification du client avant d'autoriser une connexion. Étant donné que le poste de travail se trouve dans un sous-réseau public, il est important que la communication entre le service distant du poste de travail et le client soit sécurisée et que les clients dépourvus d'informations d'authentification ne puissent pas accéder au poste de travail.

Amazon VPC permet de séparer les préoccupations. Sa politique de « confidentialité par défaut » renforce la sécurité des ressources qui n'ont pas besoin d'être exposées à l'internet public. La plupart des ressources de l'environnement de développement n'ont pas besoin d'être exposées à l'Internet public et sont placées dans des sous-réseaux privés d'Amazon VPC auxquels seules les autres ressources d'Amazon VPC peuvent accéder.

Lire le livre blanc sur la sécurité

Amazon Elastic Block Store (Amazon EBS) dissocie le stockage de l'instance. Amazon EC2 permet le déploiement dans plusieurs zones de disponibilité isolées au sein d'une région AWS, ce qui maximise la disponibilité de l'application et assure une reprise après sinistre robuste. Amazon EBS permet aux instances Workspace, Perforce et Unreal Swarm Coordinator de subir une défaillance sans perte de données. De plus, la création d'instantanés est simplifiée pour la sauvegarde.

Lire le livre blanc sur la fiabilité

Amazon EC2 Auto Scaling permet aux ressources de construction dans l'environnement de développement d'augmenter horizontalement à la demande. Plus précisément, les agents Unreal Engine Swarm et Incredibuild peuvent augmenter verticalement leurs capacités lorsqu'il y a des tâches de compilation volumineuses ou un grand nombre de tâches de compilation. Les temps de compilation sont ainsi réduits et les fréquences d'itération augmentées. Amazon EC2 vous permet de déployer dans des régions AWS ou des AWS Local Zones géographiquement proches des utilisateurs, ce qui permet de réduire la latence entre les clients locaux et les serveurs distants et d'optimiser l'expérience des postes de travail virtuels. NICE DCV fournit des protocoles optimisés pour réduire au minimum la quantité de données à transférer entre le client et le serveur, ce qui permet un rendu plus élevé en images par seconde et une latence moins perceptible entre les entrées et l'affichage.

Lire le livre blanc sur l'efficacité des performances

Amazon EC2 vous permet de choisir différents types d'instances et modèles de paiement afin d'optimiser les coûts liés à leurs charges de travail spécifiques. Vous pouvez ainsi faire correspondre les charges de travail à des options moins coûteuses. En outre, les instances à la demande réduisent le besoin de payer pour des serveurs qui ne sont pas utilisés.

Lire le livre blanc sur l'optimisation des coûts

Les types d'instance Amazon EC2 Auto Scaling et Amazon EC2 vous permettent de provisionner les ressources minimales requises pour répondre aux besoins de charge de travail. La réduction des ressources pour s'adapter aux charges de travail, que ce soit par le biais de la mise à l'échelle ou du choix de types d'instances, vous permet de créer des services efficaces qui minimisent l'impact environnemental de votre charge de travail.

Lisez le livre blanc sur le développement durable

Ressources d'implémentation

L'exemple de code est un point de départ. Il s'agit d'un document validé par l'industrie, prescriptif mais non définitif, et d'un aperçu pour vous aider à commencer.
Ouvrir un exemple de code sur GitHub

Clause de non-responsabilité

Les exemples de code, les bibliothèques de logiciels, les outils de ligne de commande, les preuves de concept, les modèles ou toute autre technologie connexe (y compris tout ce qui précède qui est fourni par notre personnel) vous sont fournis en tant que contenu AWS en vertu du contrat client AWS ou de l'accord écrit pertinent entre vous et AWS (selon le cas). Vous ne devez pas utiliser ce contenu AWS dans vos comptes de production, ni sur des données de production ou autres données critiques. Vous êtes responsable des tests, de la sécurisation et de l'optimisation du contenu AWS, tel que les exemples de code, comme il convient pour une utilisation en production, en fonction de vos pratiques et normes de contrôle de qualité spécifiques. Le déploiement de contenu AWS peut entraîner des frais AWS pour la création ou l'utilisation de ressources payantes AWS, telles que l'exécution d'instances Amazon EC2 ou l'utilisation du stockage Amazon S3.

Avez-vous trouvé les informations que vous recherchiez ?

Faites-nous part de vos commentaires afin que nous puissions améliorer le contenu de nos pages