
Cette page fournit une introduction approfondie à l'ajout du Profile Analyzer à votre arsenal d'outils de profilage Unity et de plateformes natives.
Le Profile Analyzer est l'une des nombreuses fonctionnalités couvertes dans l'e-book Guide ultime du profilage des jeux Unity (édition Unity 6). Ce guide rassemble des connaissances avancées et des conseils d'experts Unity externes et internes sur la façon de profiler une application dans Unity, de gérer sa mémoire et d'optimiser sa consommation d'énergie de A à Z.

Voulez-vous savoir où améliorer les performances ? Vous souhaitez comparer les performances avant et après une modification ? Connaissez-vous l'impact qu'aura une mise à jour de Unity sur votre jeu ? Le Profile Analyzer vous aidera à répondre à ce genre de questions. Alors que le Profiler Unity standard vous permet de faire une analyse image par image, le Profile Analyzer peut agréger et visualiser les données des marqueurs de profilage capturées à partir d'un ensemble d'images du Profiler Unity.
Alors que le Profiler Unity standard permet une analyse détaillée des images individuelles, le Profile Analyzer agrège et visualise les données des marqueurs capturées à partir de plusieurs images du Profiler Unity, fournissant une vue d'ensemble plus large, "'big picture". Cela facilite la comparaison et l'analyse des données de performance à travers plusieurs images ou à travers différentes sessions de profilage.
Pour commencer avec le Profile Analyzer :
1. Installez le package Profile Analyzer via Window > Package Management > Package Manager.
2. Allez dans le registre Unity et parcourez ou utilisez le filtre de recherche pour trouver le package Profile Analyzer.
Le Profile Analyzer extrait un ensemble d'images capturées dans le Profiler Unity et effectue une analyse statistique sur celles-ci. Les données affichées fournissent des informations utiles sur le temps de performance pour chaque fonction, telles que les temps Min, Max, Moyenne et Médiane.
Comme l'Analyseur de Profil est excellent pour effectuer des comparaisons de jeux de données, envisagez de l'utiliser tout au long de votre développement de jeu pour obtenir des éclaircissements sur les performances et les défis d'optimisation. Vous pouvez également l'utiliser pour tester A/B un scénario de jeu pour des différences de performance, comparer les données de profilage avant et après le refactoring de code et l'optimisation, les nouvelles fonctionnalités, ou même les mises à niveau de version Unity. Un conseil utile est de sauvegarder les sessions de profilage pour comparer les performances avant et après le travail d'optimisation en utilisant l'Analyseur de Profil.
L'Analyseur de Profil vous aide à identifier où concentrer vos efforts. Il vous fournit un moyen de comparer deux captures de profilage de performance Unity côte à côte et d'inspecter les impacts de vos changements.
L'Analyseur de Profil complète l'analyse d'image unique déjà disponible dans le Profiler Unity. Il agrège et visualise les données de trame et de marqueur d'une gamme de trames du Profiler Unity pour vous aider à voir des modèles de performance au fil du temps sur de nombreuses trames.
L'Analyseur de Profil effectue une analyse de performance CPU sur plusieurs trames des trames de session Profiler actuelles ou à partir de captures précédemment sauvegardées. L'outil est livré avec des statistiques et des visualisations pour vous aider à analyser rapidement les informations stockées dans les captures. Sa fonctionnalité Filtrage Complet vous permet également de vous concentrer sur les sections qui vous intéressent. Vous pouvez l'utiliser pour comparer deux jeux de données, ou vous pouvez exporter des données brutes pour analyse avec d'autres outils.
Vous pouvez installer l'Analyseur de Profil via Fenêtre > Gestionnaire de Paquet.

Pour commencer, vous devez d'abord capturer des données à l'aide du Profiler, puis peupler l'Analyseur de Profil avec ces données pour effectuer une analyse.
Utiliser des données agrégées vous donne une manière plus informée de voir ce qui se passe dans votre jeu, plutôt que de ne visualiser qu'une seule trame à la fois. Par exemple, dans une capture de jeu de 300 images (10 secondes) ou une séquence de chargement de 20 secondes, vous pourriez avoir besoin de savoir :
- Quels sont les plus grands coûts CPU sur les threads principal et de rendu ?
- Quel est le coût moyen/médian/total de chacun de ces marqueurs ?
Répondre à ces questions essentielles peut vous aider à localiser les plus gros problèmes et à prioriser leurs optimisations.
Les statistiques et les détails disponibles avec l'Analyseur de Profil vous permettent d'explorer plus en profondeur les caractéristiques de performance de votre code lors de l'exécution sur plusieurs trames, ou même comparées avec des sessions de capture de profil précédentes.

Remarquez la sélection Mode en haut de la fenêtre. L'Analyseur de Profil a plusieurs vues et approches pour analyser les données de profilage. Utilisez les différentes vues pour sélectionner, trier, visualiser et comparer des ensembles de données de profilage.

Utilisez le panneau de contrôle des images pour sélectionner une image, ou une plage d'images. Lorsqu'il est sélectionné, le panneau Détails du Marqueur se met à jour pour afficher des données agrégées pour la sélection avec une liste triable de marqueurs contenant des statistiques utiles.
Le Panneau de Résumé des Marqueurs affiche des informations détaillées sur les marqueurs sélectionnés. Chaque marqueur de la liste est une agrégation de toutes les instances de ce marqueur, à travers tous les fils filtrés dans la plage des images sélectionnées.

La vue Unique est le point de départ par défaut de l'Analyseur de Profil, fournissant des réponses aux questions de performance globale dans le temps dès le départ. La vue Unique affiche des informations sur un seul ensemble de données de profil capturées. Utilisez-le pour analyser comment les marqueurs de profil se comportent à travers les images. Cette vue est divisée en plusieurs panneaux, qui contiennent des informations sur les temps, ainsi que les valeurs min, max, médiane, moyenne, et les quartiles inférieurs/supérieurs pour les images, les fils et les marqueurs.

La vue de Comparaison est particulièrement efficace pour analyser les variations de performance, car elle vous permet de charger deux ensembles de données distincts qui sont ensuite affichés dans des couleurs différentes pour une comparaison claire, côte à côte.

Utilisez les étapes suivantes pour comparer les changements de performance en utilisant l'Analyseur de Profil. Vous pouvez soit utiliser l'option Extraire les Données d'une capture active du Profiler Unity ou l'option Charger les Données d'une session enregistrée. Lors du chargement, les fichiers doivent être au format .pdata de l'Analyseur de Profil. Pour les fichiers .data du Profiler Unity, ouvrez-les d'abord dans la fenêtre Profiler, puis utilisez Pull Data dans l'Analyseur de Profil. Il est également recommandé de sauvegarder vos fichiers .data originaux du Profiler.
1. Préparez un test: Choisissez une section cohérente de votre jeu à profiler pour une comparaison de référence significative. Un passage scripté ou manuel répétable fonctionne le mieux afin de minimiser les effets secondaires aléatoires qui impactent les performances.
2. Capturez les données "avant":
- Ouvrez l'Analyseur de Profil (Fenêtre > Analyse > Analyseur de Profil).
- Dans le Profiler Unity, enregistrez une session de profilage de votre gameplay choisi avant d'apporter des optimisations.
- Dans l'onglet Comparer de l'Analyseur, cliquez sur le premier bouton Pull Data. Cela charge la capture actuelle du Profiler ou, alternativement, vous pouvez sauvegarder la session.
3. Optimisez et capturez les données "après":
- Appliquez vos améliorations de code ou de performance.
- Effacez les données précédentes du Profiler Unity, puis enregistrez une nouvelle session de profilage du même gameplay.
- Dans l'Analyseur de Profil, cliquez sur le deuxième bouton Pull Data pour charger cette nouvelle session.
4. Analysez les différences:
- Le panneau Comparaison des Marqueurs montre comment les temps des marqueurs diffèrent entre vos captures "avant" (gauche) et "après" (droite).
- Les colonnes marquées avec < ou > indiquent quelle capture avait une valeur plus grande pour ce métrique.
- Vous pouvez changer les métriques comparées en utilisant le filtre Colonnes de Marqueurs.
Référez-vous à la page d'entrée de la vue Comparer pour plus de détails sur chaque colonne de Comparaison de Marqueurs.
Comparer les images médianes et les plus longues
Comparez les images médianes et les plus longues dans une seule capture de Profiler pour identifier les éléments présents dans la dernière qui n'apparaissent pas dans la première, ou pour voir ce qui prend plus de temps que la moyenne à se compléter.
Ouvrez la vue Comparer de l'Analyseur de Profil et chargez le même ensemble de données pour les côtés gauche et droit. Vous pouvez également charger un ensemble de données dans la vue Unique, puis passer à Comparer.
Cliquez avec le bouton droit sur le graphique Contrôle de l'image supérieur, et choisissez Sélectionner l'image médiane. Cliquez avec le bouton droit sur le graphique inférieur, et choisissez Sélectionner l'image la plus longue.
Le panneau de comparaison des marqueurs de l'Analyseur de Profil se met à jour pour afficher les différences.
Une autre astuce utile pour comparer les données est de trier les deux graphiques par durée d'image (Cliquez avec le bouton droit > Trier par durée d'image), puis de sélectionner une plage dans chaque ensemble, en se concentrant sur, ou en excluant, les images aberrantes (images qui sont disproportionnellement longues ou courtes).
Cela vous permet de comparer les images les plus typiques avec les plus extrêmes. Les données sont ensuite affichées dans le tableau de comparaison des marqueurs pour la plage sélectionnée, ce qui facilite l'analyse de ce qui contribue aux pics de performance ou aux incohérences.

- Plongez dans les scripts utilisateur (en ignorant les niveaux de l'API Unity Engine) en sélectionnant un Niveau de profondeur de 4. Après avoir filtré à ce niveau et en regardant le Profiler Unity en mode Chronologie, vous pouvez corréler la profondeur de la pile d'appels pour faire une sélection ici – les scripts Monobehaviour apparaîtront en bleu au quatrième niveau. C'est un moyen rapide de voir si votre logique spécifique et vos scripts de gameplay sont taxants par eux-mêmes sans aucun autre "bruit".
- Filtrez les données de la même manière pour d'autres domaines du moteur Unity, tels que les animateurs ou la physique du moteur.
- Sur le côté droit dans la section Résumé de l'image, vous trouverez l'histogramme de la plage de performance de la méthode mise en surbrillance. Survolez le nombre Image max (l'image exacte dans laquelle le timing maximum a été trouvé) pour obtenir un lien cliquable pour voir la sélection d'image dans le Profiler Unity. Utilisez cette vue pour analyser d'autres facteurs qui contribuent potentiellement au temps d'image maximum élevé.
- Si vous avez un écran large ou deux moniteurs disponibles, il peut être utile d'ouvrir l'Analyseur de Profil et le Profiler Unity côte à côte. Cette configuration vous permet de double-cliquer sur une image dans l'Analyseur de Profil pour sélectionner automatiquement la même image dans le Profiler Unity, à partir de laquelle vous pouvez l'examiner plus en détail en utilisant les vues Chronologie ou Hiérarchie.
En savoir plus sur le Profile Analyzer avec ces ressources:
- Guide et tutoriel sur le Profile Analyzer
- Analyse des performances CPU avec le Profile Analyzer de Unity

Vous pouvez trouver de nombreuses autres meilleures pratiques et conseils pour les développeurs et créateurs Unity avancés sur le hub des meilleures pratiques de Unity. Choisissez parmi plus de 30 guides, créés par des experts de l'industrie, ainsi que par des ingénieurs et artistes techniques de Unity, qui vous aideront à développer efficacement avec les outils et systèmes de Unity.