Skip to main content
Utilisez cette rubrique pour optimiser votre titre et éviter les pièges courants de la diffusion de jeux en continu. Tous les jeux de la plateforme XBOX peuvent être diffusés en continu, que ce soit à partir d’une console locale avec XBOX Remote Play ou par le nuage avec XBOX Game Streaming. Bien que les jeux puissent être diffusés en continu sans personnalisation, certains comportements et de petites modifications amélioreront l’expérience des joueurs et contribueront à accroître l’engagement et le temps de jeu de votre titre. Les conseils ci-dessous constituent un ensemble de pratiques exemplaires issues de la recherche sur les utilisateurs, de détails techniques sur la diffusion vidéo en continu et de constats tirés de studios travaillant en étroite collaboration sur la diffusion en continu, qui ont tous démontré qu’ils augmentent la jouabilité et le plaisir lors de l’utilisation de la diffusion de jeux en continu.

Contexte et fonctionnement interne de la diffusion de jeux en continu

Fondamentalement, XBOX Game Streaming se compose de milliers d’appareils XBOX en configuration serveur (serveurs XBOX) répartis dans un réseau mondial de centres de données Azure. De façon générale, la configuration d’une session XBOX Game Streaming fonctionne comme suit :
  1. L’utilisateur sélectionne un jeu auquel il souhaite jouer.
  2. Le service XBOX Game Streaming attribue à l’utilisateur un serveur XBOX parmi un bassin de serveurs disponibles.
  3. Le service connecte l’utilisateur au serveur, synchronise la sauvegarde de jeu et le PLS (qui n’est pas itinérant entre les consoles à domicile), lance le jeu et démarre la session de diffusion de jeux en continu.
  4. Lorsque l’utilisateur a fini de jouer, le jeu est quitté, les données de la partie enregistrée sont synchronisées, le PLS est téléversé et l’utilisateur est déconnecté.

Généralités

Certaines caractéristiques en jeu nuiront à l’expérience des utilisateurs et pourraient mettre fin à une session utilisateur sur XBOX Game Streaming. Assurez-vous que votre jeu prend les mesures appropriées pour atténuer ces risques.
  • Sachez quand votre jeu est diffusé en continu. Avant tout, il est simple de tester votre jeu dans un environnement de diffusion en continu. Consultez Configuration de votre XBOX Development Kit pour la diffusion en continu pour savoir comment configurer un XBOX Development Kit, et communiquez avec votre représentant de compte Microsoft pour obtenir l’accès à un environnement infonuagique privé pour votre titre. L’optimisation la plus élémentaire consiste à vérifier si le jeu s’exécute dans un environnement de diffusion en continu au moyen d’un appel d’API Cloud Aware. Cela permet de savoir facilement quand modifier les comportements pour la diffusion en continu.
De nombreuses fonctionnalités et recommandations de ce document peuvent profiter aux joueurs et améliorer l’accessibilité, indépendamment de la diffusion de jeux en continu.
  • Permettez aux nouveaux utilisateurs de lancer le jeu et d’y plonger le plus rapidement possible. Les sessions de diffusion en continu sont de durée plus variable et ne permettent pas toujours de longues sessions de jeu. Vous pouvez utiliser des points de sauvegarde automatiques qui ne peuvent être repris et avancés que lorsque l’utilisateur diffuse en continu.
  • Assurez-vous que les utilisateurs ne sont pas déconnectés pour cause d’« inactivité » pendant de longues cinématiques. XBOX Game Streaming met fin aux sessions utilisateur lorsqu’il détecte que les utilisateurs sont inactifs. Les développeurs doivent utiliser l’API XDisplayAcquireTimeoutDeferral pour éviter que la session passe à un état inactif et que l’utilisateur soit déconnecté.

Vidéo

  • Adaptez votre affichage tête haute (HUD) et la disposition de votre interface utilisateur à la taille de l’écran. Les joueurs peuvent diffuser en continu sur une grande variété d’appareils ayant des facteurs de forme, des distances de visionnement et des résolutions différents. Bien que le texte et les éléments d’interface utilisateur en jeu puissent être lisibles sur un téléviseur à grand écran, ils peuvent devenir difficiles à lire sur des appareils plus petits. L’API XGameStreamingGetStreamPhysicalDimensions peut aider à s’assurer que les éléments d’interface utilisateur adaptables sont suffisamment grands pour l’appareil précis vers lequel le jeu est diffusé. La vue d’ensemble de la résolution personnalisée vous permet d’aller encore plus loin et d’utiliser la totalité de l’écran de l’appareil de l’utilisateur, dont bon nombre ne correspondent pas à la résolution 16:9 traditionnelle d’un téléviseur, pour offrir une expérience plus immersive et naturelle. Cela améliore aussi la convivialité des jeux qui utilisent l’entrée tactile native.
  • Évitez le texte rouge dans la mesure du possible En raison des formats de compression vidéo et de la sensibilité de l’œil humain au rouge, cette couleur est souvent perçue comme la plus touchée. Éviter cette couleur, particulièrement avec les bordures nettes et les lignes fines du texte, réduira les artefacts de compression perçus.
  • Permettez de configurer le gamma et d’autres paramètres vidéo Les joueurs peuvent diffuser en continu sur une grande variété d’appareils ayant des facteurs de forme et des caractéristiques d’écran différents. XGameStreamingGetClients peut être utilisée pour obtenir un identificateur unique pour chaque appareil vers lequel le jeu est diffusé; utilisez cet identificateur pour enregistrer et restaurer les paramètres vidéo par appareil afin de tenir compte des différences de luminosité entre les appareils.
  • Réduisez la latence vidéo Rendre votre jeu compatible avec DirectCapture réduira considérablement la latence vidéo pour les joueurs, ce qui créera une expérience plus réactive et agréable. Consultez la vue d’ensemble de DirectCapture pour plus de détails.

Entrée

  • Permettez aux utilisateurs d’interagir avec le jeu d’une manière naturelle pour leur appareil. Les joueurs peuvent diffuser en continu sur une grande variété d’appareils ayant des facteurs de forme et des types d’entrée différents, comme la souris et le clavier, les écrans tactiles, etc. Dans la mesure du possible, prenez en charge ces autres modalités. La vue d’ensemble de la configuration de diffusion en continu de l’application de test de contenu (CTA) contient plus d’informations sur la façon de tester la diffusion en continu avec des types d’entrée autres qu’une manette. Pour plus d’informations sur les commandes tactiles et l’entrée tactile native, consultez Prise en main de l’entrée tactile.
  • Répondez au type d’entrée le plus récent Les joueurs peuvent reprendre des jeux et continuer à jouer en diffusion en continu sur divers appareils, et n’ont pas toujours une manette physique. Dans ces cas, les joueurs s’attendent à pouvoir passer sans heurt de la manette à l’entrée tactile, puis à la souris et au clavier. Les jeux peuvent utiliser une stratégie selon laquelle « la dernière entrée l’emporte » pour adapter l’expérience utilisateur et les invites au type d’entrée préféré des joueurs. Dans la mesure du possible, n’enfermez pas les joueurs dans un type d’entrée et n’exigez pas l’utilisation d’une manette pour passer à un autre type d’entrée. Consultez la vue d’ensemble de GameInput pour plus d’informations sur la gestion des différents types d’entrée.
  • Tenez compte de la latence d’entrée La latence est une réalité inévitable dans les environnements de diffusion en continu. Bien que la plateforme tente de réduire la latence autant que possible, les jeux peuvent mieux comprendre la latence et en tenir compte lors de l’interprétation des entrées. Consultez Mesure de la latence en diffusion de jeux en continu et la vue d’ensemble de la compensation de la latence en diffusion de jeux en continu pour plus d’informations sur les techniques disponibles pour réduire la latence perçue par les joueurs.

Localisation

  • Utilisez Intelligent Delivery pour la localisation du contenu plutôt que plusieurs packages XBOX Game Streaming détecte la région physique (c’est-à-dire le pays ou la région) à partir de laquelle l’utilisateur se connecte. De plus, XBOX Game Streaming détecte les paramètres régionaux que l’utilisateur a définis sur son appareil local. Ces valeurs détectées pour la région et les paramètres régionaux sont transmises au serveur XBOX pour le configurer en conséquence. XBOX Game Streaming s’assure également que l’utilisateur reçoit le package de jeu qui a été configuré dans Partner Center pour la région. Par conséquent, nous recommandons aux développeurs de soumettre un seul package pour leur jeu contenant tout le contenu localisé au moyen des spécificateurs de langue d’Intelligent Delivery, plutôt que plusieurs packages avec différents ensembles de contenu localisé. Cela garantit que les utilisateurs vivront le jeu dans leur langue préférée, peu importe le pays ou la région à partir duquel ils jouent à ce moment-là.

Stockage

  • Évitez d’exiger un lecteur temporaire pour conserver des données entre les sessions de jeu XBOX Game Streaming efface toutes les données du lecteur temporaire entre les sessions. Les sessions de jeu subséquentes peuvent se dérouler sur un autre serveur XBOX dans un autre centre de données. Les jeux ne doivent stocker sur le lecteur temporaire aucune donnée nécessaire entre les sessions.
  • Évitez une utilisation importante du stockage local persistant (PLS) XBOX Game Streaming transfère le stockage local persistant d’une session à l’autre; utiliser plus de 4 Go de PLS augmente le temps de lancement de votre jeu sur XBOX Game Streaming. Pour chaque tranche supplémentaire de 4 Go utilisée dans le PLS, prévoyez une augmentation de 20 secondes des temps de chargement.

Réseau

  • Attendez-vous à une latence et à des caractéristiques réseau différentes XBOX Game Streaming exécute des consoles XBOX à partir de centres de données Azure. Cela signifie qu’un même utilisateur peut jouer à partir de plusieurs plages d’adresses IP et peut avoir des temps de ping inférieurs à ceux des joueurs sur console à domicile.
  • Évitez le port 9002 XBOX Game Streaming utilise le port 9002 pour les communications réseau; les développeurs de jeux ne doivent donc pas utiliser le port 9002, que ce soit pour les communications TCP ou UDP. Consultez Configuration de l’accès réseau de développement pour plus d’informations sur les ports précis et la configuration réseau de votre jeu.
Le port 9002 est maintenant bloqué dans les GDK récents.

Scénarios en jeu non pris en charge

Les scénarios en jeu suivants ne sont pas pris en charge pendant la diffusion en continu infonuagique, car XBOX Game Streaming est conçu pour limiter l’expérience utilisateur au jeu uniquement. Certains de ces scénarios peuvent toutefois fonctionner lorsqu’un utilisateur diffuse en continu à partir de sa console à domicile.
  • Évitez d’essayer de lancer d’autres applications ou jeux XBOX Game Streaming ne prend pas en charge le lancement d’autres jeux ou applications, à l’exception du navigateur Edge.
  • Évitez de vous fier à la présence d’un navigateur Web sur la même machine physique que le jeu en cours Les activations de protocole sur XBOX Game Streaming vers un navigateur Web ou un composant Web hébergé par le système entraînent le lancement de cette activation sur l’appareil local sur lequel l’utilisateur joue. Les développeurs doivent s’assurer que ces expériences ne dépendent pas de l’exécution du navigateur sur le même appareil que le jeu. Exemple : le jeu lance un site Web comportant un bouton « Précédent » qui tente d’activer le jeu par protocole.
  • Évitez d’exiger que l’utilisateur redémarre manuellement le jeu à quelque moment que ce soit Cela comprend les scénarios où un jeu se met à jour et exige que l’utilisateur le redémarre manuellement. XBOX Game Streaming met fin aux sessions utilisateur une fois le jeu fermé; par conséquent, le redémarrage d’un jeu met fin à la diffusion en continu.
  • Évitez de pénaliser indûment les utilisateurs inactifs trop longtemps XBOX Game Streaming maintient une session utilisateur active de 5 à 10 minutes après une déconnexion inattendue de la session. Par conséquent, si les jeux pénalisent les utilisateurs inactifs, ils nuiront inutilement aux utilisateurs de XBOX Game Streaming. Les jeux peuvent utiliser l’API XGameStreamingGetClients pour détecter précisément la déconnexion d’un client GameStreaming.

Services de jeu

XBOX Game Streaming rend les jeux accessibles à un plus vaste public au moyen de serveurs XBOX situés dans des centres de données, ce qui a des répercussions sur les services de jeu qui utilisent des caractéristiques d’appareil comme le temps de ping ou les identificateurs d’appareil pour modifier le comportement du jeu.
  • Évitez d’utiliser le jeton de sécurité des services XBOX (XSTS) pour le bannissement ou la détection de fraude Les utilisateurs de XBOX Game Streaming obtiennent un nouveau serveur XBOX à chaque session; il est donc tout à fait normal de voir de nombreuses sessions utilisateur distinctes provenant du même appareil. De plus, les services de jeu ne doivent pas bannir ces appareils dans ce cas. Pour savoir que ces sessions proviennent d’un serveur XBOX, les développeurs peuvent utiliser l’API GDK XGameStreamingGetServerLocationName dans leur jeu. Vous pouvez également le détecter à partir du jeton XSTS; consultez Référencement des serveurs XBOX Game Streaming dans les revendications du jeton de sécurité des services XBOX (XSTS) pour plus d’informations sur la gestion de l’identité des appareils dans vos services de jeu.
  • Évitez d’empêcher les utilisateurs de jouer si trop de personnes jouent sur le même serveur XBOX Chaque serveur XBOX sera utilisé par plusieurs joueurs à différents moments; si votre jeu bannit de telles instances, cela nuira à l’expérience des joueurs de XBOX Game Streaming. (Par exemple, si le jeu présente des problèmes lorsque trop de sessions de jeu proviennent de la même adresse IP ou du même identificateur d’appareil.)
  • Évitez que les services de jeu signalent comme suspectes de nombreuses sessions provenant de la même adresse IP Plusieurs serveurs XBOX d’un centre de données peuvent partager la même adresse IP publique pour les communications sortantes et entrantes. Assurez-vous que vos services de jeu peuvent gérer plus de 100 consoles XBOX distinctes ayant la même adresse IP.
  • Évitez d’utiliser une logique qui dépend de l’adresse IP de l’endroit où le jeu s’exécute pour prendre des décisions de politique concernant l’utilisateur Les serveurs XBOX ne se trouvent pas nécessairement dans le même pays ou la même région que les utilisateurs. L’utilisation de l’adresse IP pour prendre des décisions de jeu nuira à l’expérience utilisateur. La fonction XGameStreamingGetClientIPAddress peut être utilisée pour déterminer l’adresse IP du client de diffusion en continu et convient mieux à la logique de jeu.
    [!IMPORTANT] XGameStreamingGetClientIPAddress est déconseillée depuis la version 2604 du GDK et sera supprimée dans une version ultérieure. Pour déterminer l’emplacement de l’utilisateur, utilisez plutôt les revendications du jeton XSTS. Consultez Référencement des serveurs XBOX Game Streaming dans les revendications XSTS pour plus de détails.
  • Évitez que le jeu ou les services de jeu fassent défaut ou pénalisent les utilisateurs lorsque les vérifications de latence révèlent une latence très faible En raison de la configuration des centres de données, les temps de ping des utilisateurs de XBOX Game Streaming seront toujours inférieurs à ceux des utilisateurs sur des consoles locales. Même si vous recevez un temps de ping de 0 ms, il est important de ne pas utiliser les temps de ping pour dégrader l’expérience des utilisateurs ou les bannir. Ne supprimez ni n’ajustez aucune logique interne du jeu ou du serveur en fonction des temps de ping.

Voir aussi

Appels d’API Cloud Aware XGameStreamingGetStreamPhysicalDimensions XGameStreamingGetClientIPAddress XGameStreamingGetClients Prise en main de l’entrée tactile Vue d’ensemble de DirectCapture Vue d’ensemble de la résolution personnalisée Référencement des serveurs XBOX Game Streaming dans les revendications du jeton de sécurité des services XBOX (XSTS)
Last modified on October 6, 2026