Lo strumento di Analisi della scena offre una serie di viste in Roblox Studio che ti forniscono informazioni comparative a colpo d'occhio su come le scene client e server sono assemblate, quali risorse stanno utilizzando e quali istanze sono responsabili di tale utilizzo delle risorse. L'analisi della scena è progettata per essere utilizzata durante le sessioni di gioco e test e può ispezionare sia i modelli di dati client che server.

Abilitare l'analisi della scena
- Abilita Analisi della scena in File > Funzionalità beta.
- Nella barra dei menu, seleziona Finestra > Riepilogo delle prestazioni > Analisi della scena.
Utilizzare l'analisi della scena
L'analisi della scena è progettata per essere utilizzata durante una sessione di gioco o test. Apri la finestra di analisi della scena e naviga tra le modalità disponibili. Quando una modalità è attiva, vedrai un display di riquadri—la vista del treemap squarificato—che mostra le dimensioni relative delle risorse visualizzate e le istanze che contribuiscono a esse.
- Sotto la vista del treemap squarificato c'è un elenco di tutti gli elementi nella vista corrente.
- Facendo clic destro su un elemento selezionato nell'analisi della scena di solito ti consente di passare direttamente a quell'elemento nell'Explorer.
- Puoi utilizzare la barra di ricerca per filtrare per nome nella visualizzazione corrente.
Modalità
L'analisi della scena ha molte modalità diverse, ciascuna delle quali si rivolge a un caso d'uso diverso.
Memoria degli script
Questa vista mostra quanta memoria sta utilizzando ciascun Script, LocalScript e ModuleScript nel VM Luau. Questa è la memoria utilizzata da tabelle e altre allocazioni di script, non la memoria utilizzata da asset come animazioni, texture e suoni. La vista è ulteriormente suddivisa in base alle posizioni comuni da cui vengono eseguiti gli script e per Script rispetto a ModuleScript.
Istanze non genitoriate
La vista delle istanze non genitoriate mostra quali script e moduli stanno mantenendo riferimenti a istanze, come un conteggio per tipo.
Gli script che mantengono riferimenti a istanze sono normali e non sono, da soli, un'indicazione di un bug o di una perdita di memoria. Tuttavia, se stai indagando su una perdita di memoria, questa vista rende facile capire se uno script sta facendo qualcosa che non ti aspettavi.
Se hai ancora difficoltà a trovare la causa principale di una perdita di memoria, questo strumento è complementare allo strumento Heap di Luau, che può mostrarti maggiori informazioni sulle singole allocazioni.
Fai clic destro su qualsiasi script in questa vista per selezionarlo direttamente nell'Explorer.
Composizione delle istanze
La vista della composizione delle istanze mostra quali istanze sono attualmente presenti sul client o server. Questo è prezioso quando si lavora su costruzioni grandi e complesse, poiché ogni istanza ha sia costi di replica che di memoria.
Le categorie, come Personaggi, Geometria e Texture, sono progettate per aiutarti a capire come è bilanciata la tua scena. Ad esempio, forse non intendevi avere 25.000 emettitori di particelle, ma questa vista te lo fa sapere.
Questa vista rende anche facile selezionare tutte le istanze di un dato tipo.
Memoria audio
La vista della memoria audio mostra quanta memoria ciascun asset audio sta attualmente consumando. La memoria effettiva utilizzata da un determinato brano audio è piuttosto complessa, ma in termini pratici, eliminare tutte le istanze che si riferiscono a un brano audio consente a quella memoria di essere scaricata.
Fai clic destro su qualsiasi asset audio in questa vista per selezionare tutte le istanze che lo stanno utilizzando.
Memoria delle animazioni
Gli asset di animazione sono una delle fonti più comuni di perdite di memoria in produzione. Roblox è aggressivo nel caricare asset di animazione non utilizzati, ma è comune che gli script mantengano vive le animazioni dopo che il loro modello genitore è stato distrutto.
Come per gli asset audio, eliminare tutte le istanze che si riferiscono a un asset di animazione consente di scaricarlo.
Questa vista, insieme alla vista delle istanze non genitoriate, rende facile tenere traccia del ciclo di vita delle animazioni e di quanta memoria stanno effettivamente utilizzando.
Fai clic destro su qualsiasi animazione in questa vista per selezionare tutte le istanze che la stanno utilizzando.
Composizione triangolare
La vista della composizione triangolare ti offre un'analisi più dettagliata dei triangoli e delle chiamate di disegno attualmente in fase di rendering nella finestra principale.
Queste suddivisioni includono conteggi per Ombre, Opaco, Trasparente, Terreno, Erba, Particelle, Cielo e UI.
Queste informazioni compositive ti aiutano a comprendere meglio come è composta la geometria della tua scena e identificare i casi in cui la scena contiene geometrie inaspettate.
API del motore
Puoi anche accedere ai dati dell'analisi della scena programmaticamente attraverso SceneAnalysisService, che è esposto attraverso il server MCP. Ogni metodo restituisce tabelle contenenti figli annidati con gli stessi dati utilizzati dal display visivo.
| Metodo | Descrizione |
| GetInstanceCompositionAsync | Restituisce conteggi di istanze per categoria e classe dall'albero DataModel. |
| GetScriptMemoryAsync | Restituisce l'uso della memoria del heap Luau per script in byte. |
| GetUnparentedInstancesAsync | Restituisce le istanze mantenute da Luau ma non più nel DataModel, raggruppate per script host. |
| GetTriangleCompositionAsync | Restituisce conteggi di triangoli e chiamate di disegno per passaggio di rendering. |
| GetAnimationMemoryAsync | Restituisce la memoria dei clip di animazione caricati, deduplicata per clip. |
| GetAudioMemoryAsync | Restituisce la memoria degli asset audio caricati, deduplicata per ID asset. |