L'outil d'analyse de la scène fournit une suite de vues dans Roblox Studio qui vous donne un aperçu comparatif de la façon dont vos scènes client et serveur sont assemblées, des ressources qu'elles utilisent et quelles instances sont responsables de cette utilisation de ressources. L'analyse de la scène est conçue pour être utilisée pendant les sessions de jeu et de test, et peut inspecter à la fois les modèles de données client et serveur.

Activer l'analyse de la scène
Dans la barre de menu, sélectionnez Fenêtre > Résumé de performance > Analyse de la scène.
Utiliser l'analyse de la scène
L'analyse de la scène est conçue pour être utilisée pendant une session de jeu ou de test. Ouvrez la fenêtre d'analyse de la scène et parcourez les modes disponibles. Lorsqu'un mode est actif, vous voyez un affichage de boîtes – la vue en treemap squarifié – montrant les tailles relatives des ressources visualisées et les instances qui y contribuent.
- En dessous de la vue en treemap squarifié se trouve une liste de tous les éléments dans la vue actuelle.
- Un clic droit sur un élément sélectionné dans l'analyse de la scène vous permet généralement d'accéder directement à cet élément dans l'Explorateur.
- Vous pouvez utiliser la barre de recherche pour filtrer par nom dans l'affichage actuel.
Modes
L'analyse de la scène possède de nombreux modes différents, chacun d'eux répondant à un cas d'utilisation différent.
Mémoire des scripts
Cette vue montre combien de mémoire chaque Script, LocalScript et ModuleScript utilise dans la VM Luau. C'est la mémoire utilisée par les tables et autres allocations de scripts, et non la mémoire utilisée par des actifs tels que les animations, les textures et les sons. La vue est encore décomposée par les emplacements communs à partir desquels les scripts sont exécutés et par Script contre ModuleScript.
Instances sans parent
La vue des instances sans parent montre quels scripts et modules détiennent des références aux instances, par type.
Les scripts maintenant des références aux instances est normal et, à lui seul, n'indique pas un bug ou une fuite de mémoire. Cependant, si vous enquêtez sur une fuite de mémoire, cette vue vous permet de repérer facilement si un script fait quelque chose que vous n'attendiez pas.
Si vous avez encore des difficultés à trouver la cause profonde d'une fuite de mémoire, cet outil est complémentaire à l'outil Tas Luau, qui peut vous montrer plus d'informations sur les allocations individuelles.
Cliquez avec le bouton droit sur n'importe quel script dans cette vue pour le sélectionner directement dans l'Explorateur.
Composition des instances
La vue de composition des instances montre quelles instances sont actuellement présentes sur le client ou le serveur. Cela est inestimable lors de la création de constructions grandes et complexes, car chaque instance a des coûts de réplication et de mémoire.
Les catégories, telles que Personnages, Géométrie, et Textures, sont conçues pour vous aider à comprendre comment votre scène est équilibrée. Par exemple, peut-être que vous n'aviez pas l'intention d'avoir 25 000 émetteurs de particules, mais cette vue vous l'indique.
Cette vue facilite également la sélection de toutes les instances d'un type donné.
Mémoire audio
La vue de mémoire audio montre combien de mémoire chaque actif audio consomme actuellement. La mémoire réelle utilisée par une piste audio donnée est assez complexe, mais en termes pratiques, la suppression de toutes les instances qui font référence à une piste audio permet à cette mémoire de se décharger.
Cliquez avec le bouton droit sur n'importe quel actif audio dans cette vue pour sélectionner toutes les instances qui l'utilisent.
Mémoire des animations
Les actifs d'animation sont l'une des sources les plus courantes de fuites de mémoire en production. Roblox est agressif concernant le déchargement des actifs d'animation inutilisés, mais il est courant que des scripts maintiennent des animations actives après la destruction de leur modèle parent.
Comme pour les actifs audio, la suppression de toutes les instances qui font référence à un actif d'animation permet à celui-ci de se décharger.
Cette vue, ainsi que la vue des instances sans parent, facilite le suivi du cycle de vie des animations et de la quantité de mémoire qu'elles utilisent réellement.
Cliquez avec le bouton droit sur n'importe quelle animation dans cette vue pour sélectionner toutes les instances qui l'utilisent.
Composition triangulaire
La vue de composition triangulaire vous donne une répartition plus détaillée des triangles et des appels de rendu actuellement affichés dans le champ de vision principal.
Ces décompositions incluent des comptes pour les Ombres, Opaque, Transparent, Terrain, Herbe, Particules, Ciel et UI.
Cette information de composition vous aide à mieux comprendre comment votre géométrie de scène est composée et à identifier les cas où la scène contient une géométrie inattendue.
API de moteur
Vous pouvez également accéder aux données d'analyse de la scène de manière programmatique via SceneAnalysisService, qui est exposé via le serveur MCP. Chaque méthode renvoie des tables contenant des enfants imbriqués avec les mêmes données que l'affichage visuel utilise.
| Méthode | Description |
| GetInstanceCompositionAsync | Renvoie le nombre d'instances par catégorie et classe depuis l'arbre DataModel. |
| GetScriptMemoryAsync | Renvoie l'utilisation de la mémoire du tas Luau par script en octets. |
| GetUnparentedInstancesAsync | Renvoie les instances maintenues par Luau mais plus dans le DataModel, regroupées par script hôte. |
| GetTriangleCompositionAsync | Renvoie le nombre de triangles et d'appels de rendu par passe de rendu. |
| GetAnimationMemoryAsync | Renvoie la mémoire des clips d'animation chargés, dédupliqués par clip. |
| GetAudioMemoryAsync | Renvoie la mémoire des actifs audio chargés, dédupliqués par ID d'actif. |