Partager via


Principaux outils et techniques pour rendre les jeux Windows plus robustes

L’un des coûts les plus indésirables de la production de jeux est les appels au support. Chaque fois qu’un utilisateur contacte le support client, le profit du jeu est réduit. Bien que certains appels au support client ne puissent être évités, d’autres peuvent être éliminés ou réduits en employant de bonnes pratiques de développement. Cet article décrit des outils et techniques que vous pouvez utiliser pour réduire le nombre d’appels de support que vous recevez.

Tous les outils décrits ici sont gratuits, et les techniques sont suffisamment simples pour être ajoutées à la plupart des méthodes de développement.

Outils et techniques :

PREfast

PREfast for Drivers est un outil proposé par Microsoft qui analyse les chemins d’exécution dans le C ou C++ compilé pour aider à trouver des bogues d’exécution. PREfast fonctionne en parcourant tous les chemins d’exécution dans toutes les fonctions et en évaluant chaque chemin pour y déceler des problèmes. Bien que cet outil soit normalement utilisé pour développer des pilotes et autres codes noyaux, il peut aider les développeurs de jeux à gagner du temps en éliminant certains bogues difficiles à trouver ou ignorés par le compilateur. L’utilisation de PREfast est un excellent moyen de réduire votre charge de travail post-lancement et les coûts de support.

PREfast est fourni avec Visual Studio Team System et fait partie du Windows Driver Kit. Pour plus d’informations, veuillez consulter la section PREfast Build.

AppVerifier

Le Microsoft Application Verifier, ou AppVerifier, est un outil qui peut aider les testeurs en fournissant plusieurs fonctions en un seul outil. AppVerifier a été développé pour faciliter le test des erreurs de programmation courantes. AppVerifier peut vérifier les paramètres passés dans les appels API, injecter des entrées erronées pour tester la capacité de gestion des erreurs, et journaliser les modifications du registre et du système de fichiers. AppVerifier peut également détecter les dépassements de tampon dans le tas, vérifier qu’une liste de contrôle d’accès (ACL) a été correctement définie, et imposer l’utilisation sûre des API de sockets.

Bien qu’il ne soit pas exhaustif, AppVerifier peut être un autre composant de la boîte à outils d’un testeur pour aider un studio de développement à sortir un produit de qualité et réduire les coûts potentiels post-lancement.

Pour plus d’informations sur Application Verifier, veuillez consulter la section Application Verifier et Utilisation d’Application Verifier au sein de votre cycle de vie de développement logiciel.

Un outil similaire pour les pilotes, Driver Verifier, est également disponible. Pour plus d’informations, veuillez consulter la section Utilisation de Driver Verifier pour identifier les problèmes liés aux pilotes Windows pour les utilisateurs avancés sur l’aide et le support Microsoft.

Microsoft Application Compatibility Toolkit

Microsoft Application Compatibility Toolkit est un ensemble d’outils gratuits pour aider les développeurs à vérifier rapidement comment leurs versions fonctionneront sur les nouveaux packs de services de Microsoft Windows. En étant prêt pour les nouveaux packs de services, les développeurs peuvent prévenir ou être prêts à toute éventualité.

Le Application Compatibility Toolkit, et plus d’informations, peuvent être trouvés à la section Application Compatibility Toolkit (ACT).

Test de protection des comptes d’utilisateur

Windows Vista et Windows 7 ont deux types principaux de comptes utilisateur : Utilisateur Standard et Administrateur. Les comptes Utilisateur Standard sont le type préféré pour tous les utilisateurs, car ils réduisent le risque de dommages au système par des applications malveillantes. Parce que l’Utilisateur Standard a des restrictions d’accès - comme l’impossibilité d’écrire dans le dossier Program Files ou dans HKEY_LOCAL_MACHINE (HKLM) dans le registre - il est important que les jeux soient conçus et testés pour fonctionner avec un compte Utilisateur Standard.

Plus d’informations sur cette rubrique peuvent être trouvées dans les articles Patching Game Software dans Windows XP, Windows Vista, et Windows 7 et Contrôle de compte d’utilisateur pour les développeurs de jeux.

PIX pour Windows

PIX est un outil de collecte et d’analyse des informations de performance d’une application en cours d’exécution. PIX peut recueillir des données statistiques sur les raisons pour lesquelles certains cadres sont rendus plus lentement que d’autres et peut identifier une mauvaise utilisation des API. PIX peut également être automatisé pour tester la build quotidienne et signaler les changements soudains de performance de l’application. En utilisant PIX sur une variété de configurations matérielles, les testeurs et les développeurs peuvent aider à minimiser les appels de support liés à la performance du jeu.

Détection de configuration

Les capacités des appareils exposées par les pilotes ne sont pas toujours correctes. Une solution consiste à utiliser un système de configuration basé sur une base de données, comme le système démontré dans l’exemple ConfigSystem, qui est inclus avec le DirectX SDK. Un modèle de détection similaire au système de l’exemple peut aider à identifier les capacités des appareils qui entravent la performance du jeu, et ainsi, réduire le nombre d’appels de support concernant la performance.

Activer les avertissements complets du compilateur

Il est bon de réactiver tous les avertissements du compilateur qui ont été désactivés par #pragma warning une fois qu’un projet est devenu stable. Les développeurs devraient essayer d’éliminer tous les avertissements avant de sortir un produit. Même si un avertissement ne provoque pas de crash ou d’erreur sur le système d’un développeur, il pourrait quand même causer un problème sur le système d’un utilisateur. Si un avertissement ne peut pas être éliminé, l’équipe de test doit déterminer si l’avertissement causera peu ou pas d’erreurs sur le système d’un utilisateur.

Serveur de symboles Microsoft

Microsoft fournit un serveur accessible par Internet qui fournit des fichiers symboles pour les systèmes d’exploitation Microsoft Windows, ainsi que d’autres produits Microsoft. Des symboles sont également disponibles sur le serveur pour les versions bêtas et candidates de Windows, ainsi que pour les correctifs et packs de services. Vous pouvez configurer le débogueur pour télécharger les symboles selon les besoins pendant une session de débogage, plutôt que de télécharger les fichiers symboles séparément avant une session de débogage. Les symboles sont téléchargés à un emplacement de répertoire que vous spécifiez, et le débogueur les charge à partir de là.

Pour plus d’informations sur le serveur de symboles Microsoft, veuillez consulter la section Symboles pour le débogage Windows.

Rapport d’erreurs Windows

Windows Error Reporting (WER) est un service fourni par Microsoft pour aider les développeurs à collecter des informations sur les erreurs des applications de manière unifiée et organisée. Bien que ce soit complètement volontaire, les développeurs devraient tirer parti de ce service pour aider à déterminer quels bogues se produisent le plus souvent. L’utilisation de WER peut aider au débogage des problèmes couramment signalés, ce qui aidera à éliminer les appels de support pour les bogues les plus courants.

Pour plus d’informations sur WER, veuillez consulter la section Analyse du vidage sur incident.

Outils de réglage des performances

Les développeurs peuvent utiliser des analyseurs de performance pour optimiser les performances de leur jeu. En plus de PIX, il existe un certain nombre d’analyseurs de performance populaires pour Windows, tels que l’Intel VTune Performance Analyzer et le AMD CodeAnalyst Performance Analyzer. Ces outils aident à identifier les goulots d’étranglement et à décider comment améliorer la performance globale d’une application. Améliorer les goulots d’étranglement de performance avant la sortie aidera à réduire les coûts post-lancement.

Résumé

Tous ceux impliqués dans la conception, le développement et les tests doivent considérer comment leur travail affectera le coût post-lancement d’un produit. En utilisant les outils et méthodes susmentionnés dans le processus de production, le volume des appels de support peut être réduit. Cela augmentera, à son tour, les profits en réduisant les coûts post-lancement du développement de jeux.