Riferimento ai tag

*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.

Di seguito è riportato un elenco di tag comuni nel MicroProfiler, raggruppati per categoria. I tag sono anche chiamati in modo intercambiabile compiti, timer, ambiti, processi e etichette. Qualunque sia il nome, rappresentano un'unità di lavoro.

Comprendere questi tag può aiutarti a identificare il codice problematico nel tuo gioco. Le tabelle contengono etichette dei tag, descrizioni e consigli per migliorare le prestazioni e ottimizzare il tuo gioco.

Sonno

Quando i thread non stanno eseguendo attivamente compiti, entrano in uno stato di sonno, con tag che indicano per quanto tempo il thread è stato in sonno. In qualsiasi momento, è estremamente comune che la maggior parte dei thread di lavoro si trovi in uno stato di sonno.

EtichettaDescrizioneConsigli sulle prestazioni
rasterizeTileAggiorna i riquadri di navigazione necessari per una richiesta di pathfinding, solitamente seguito da computePath che richiede che quei riquadri siano aggiornati. Segue NavigationJob/preprocess nel thread principale.Riduci il numero di invalidazioni dei riquadri di pathfinding, poiché questo causa la necessità di ricalcolare quei percorsi. Questo è causato da parti non navigabili che si muovono.
computePath

Calcola i percorsi, tipicamente dopo rasterizeTile.

Riduci il numero e le estensioni mondiali delle chiamate a Path:ComputeAsync(). Prova a riutilizzare i percorsi per più agenti se ci si aspetta che inizino/fine da posizioni approssimativamente simili.
preprocess/getPrimitivesOverlappingRaccoglie la geometria del mondo per ciascun riquadro di pathfinding e pianifica i compiti di rasterizzazione da eseguire dal thread di pathfinding.Riduci il numero di parti.

Animazione e umanoidi

EtichettaDescrizioneConsigli sulle prestazioni
Simulation/gameSteppedElaborazione di oggetti specifici del gioco come Humanoids, Animations e callback di heartbeat.Vedi le etichette gameStepped qui sotto.
Simulation/gameStepped/stepHumanoidCambiamenti di stato e movimento di Humanoid.Riduci la quantità di Humanoids o disabilita gli stati di Humanoid sugli NPC che non ne hanno bisogno, come Climbing o Swimming. Riduci i callback a Humanoid.StateChanged o i cambiamenti di stato come Running o Died.
Simulation/gameStepped/stepAnimationAnimators eseguirà un passo avanti nelle animazioni attualmente in riproduzione.Riduci la quantità di Animators o giunti animati per ridurre il carico di lavoro di questo passo. Riduci il numero di callback agli eventi di animazione come AnimationTrack.KeyframeReached o AnimationTrack.Ended.
Simulation/gameStepped/RunService.SteppedEsegue funzioni collegate all'evento RunService.Stepped.Riduci la quantità o il carico di lavoro delle funzioni collegate a questo evento. Considera di ritardare o sostituire calcoli costosi o di distribuire il calcolo su più frame.

Audio

EtichettaDescrizioneConsigli sulle prestazioni
SoundElabora la simulazione acustica e aggiorna i suoni in riproduzione attiva.Vedi le etichette Sound qui sotto.
Sound/stepInstancesAggiorna il volume dei suoni attivi nello spazio di lavoro.Riduci la quantità di suoni in riproduzione attiva.

Networking

EtichettaDescrizioneConsigli sulle prestazioni
Net PacketReceiveRiceve pacchetti di rete. Se molti oggetti o eventi vengono replicati, questo passo richiede più tempo.Replica meno oggetti o eventi.
Replicator/ProcessPacketsElabora il contenuto dei pacchetti di rete, come movimento, invocazioni di eventi e cambiamenti di proprietà.Riduci il numero o la dimensione degli oggetti replicati, o fallo in passi incrementali. Potrebbe aumentare se la dimensione della mappa aumenta, poiché le mappe più grandi tendono ad avere più attività complessiva.
Allocate Bandwidth and Run Senders/Dispatch Physics Senders and TouchSendersInvia dati sull'attività nel gioco.Riduci la quantità di oggetti in movimento e/o tocchi. Vedi le sezioni seguenti.
Allocate Bandwidth and Run Senders/Dispatch StreamJobInvia regioni specifiche ai client specifici nella funzione di streaming.Riduci i raggi di streaming minimi e target.
Allocate Bandwidth and Run Senders/Dispatch Data SendersInvia cambiamenti di proprietà, invocazioni di eventi remoti, cambiamenti di stato di Humanoid, cambiamenti di stato di animazione e replicazione di nuove istanze.Riduci il numero di cambiamenti replicati al modello di dati.
Replicator SendClusterInvia dati Terrain ai client.Riduci la quantità o la dimensione delle modifiche al terreno.
ModelCompleteness Mega JobSolo server: la completezza è un concetto interno. Quando i modelli sono completamente inviati, vengono inviati eventi di completezza del modello.Aggiungi o rimuovi meno istanze.
deserializePacketElaborazione di pacchetti di rete a basso livello. Prepara per Replicator/ProcessPackets.Invia meno o aggiornamenti più piccoli.

Rendering

EtichettaDescrizioneConsigli sulle prestazioni
PrepareLe informazioni vengono raccolte dal thread principale e aggiornano varie strutture dati utilizzate per il rendering.Vedi le etichette Prepare qui sotto.
Prepare/Pass3dAdornGestisce il rendering di vari adornamenti degli oggetti, come etichette di testo sopra gli oggetti. Per le etichette di Humanoid con occlusione, questo passo include il raycasting per determinare se tali oggetti sono visibili. Questo include parti non trasparenti per facilitare le visualizzazioni di debug.Riduci il numero di oggetti adornati visibili, come BillboardGuis, etichette di nome/salute di Humanoid, ecc. Riduci il numero di parti visibili.
Prepare/Pass2dPrepara il rendering dell'interfaccia utente 2D (sia dell'utente che di Roblox).Riduci la quantità o la complessità degli elementi dell'interfaccia utente.
Prepare/UpdatePrepare/updateInvalidPartsAggiorna le parti che hanno avuto alcune proprietà cambiate o aggiunte.Riduci la quantità di cambiamenti di proprietà nel mondo. Se uno script aggiorna un grande insieme di proprietà degli oggetti, suddividilo su più frame.
Prepare/UpdatePrepare/updateInvalidatedFastClustersPrepara le geometrie "FastCluster" utilizzate per rendere Humanoids e MeshParts skinned. Le etichette specificano il numero di parti, vertici e dimensione dei vertici.Riduci i cambiamenti visivi ai modelli con Humanoids o MeshParts skinned.
Prepare/UpdatePrepare/updateDynamicPartsPrepara Beams, ParticleEmitters e Humanoids per il rendering.Riduci il numero di Beams, ParticleEmitters e Humanoids visibili.
Prepare/UpdatePrepare/updateInstancedClustersAggiorna la geometria che utilizza il rendering istanziato come le parti. Le etichette Clusters e Instances indicano il numero aggiornato.Riduci il lavoro che aggiorna implicitamente la bounding box della parte, come BasePart.CFrame, BasePart.Size o Motor6D.Transform. Aggiornamenti di proprietà creativi come Bone.Transform possono aiutare.
PerformQuando vengono creati e inviati i comandi di rendering effettivi.Vedi le etichette Perform qui sotto.
Perform/fillGuiVerticesRiempi i buffer con vertici dell'interfaccia utente per prepararsi al rendering. L'etichetta gui count indica la quantità di LayerCollectors visibili nel frame.Se il costo è elevato, riduci la quantità, la densità e lo spazio occupato dagli elementi dell'interfaccia utente. Se ci sono troppe etichette Process GuiEffect, considera di ridurre l'uso di UIGradient e UICorner sulle etichette di testo.
Perform/Scene/queryFrustumOrderedApplica il frustum culling in modo che gli oggetti non visibili non vengano renderizzati.Se c'è un costo elevato, significa che ci sono molti elementi. Forse usa alcune mesh più grandi dove una singola mesh ha più dettagli rispetto a molti piccoli pezzi individuali.
Perform/Scene/computeLightingPerformCalcolo dell'illuminazione vicino alla telecamera.Manipola il numero di sorgenti luminose o muovi meno la telecamera per ridurre il tempo necessario per ricalcolare l'illuminazione.
Perform/Scene/computeLightingPerform/LightGridCPUAggiorna l'illuminazione voxel, che viene utilizzata a livelli di qualità inferiori.Se l'aggiornamento dell'occupazione dei chunk richiede troppo tempo, considera di utilizzare geometrie a risoluzione inferiore, riducendo il numero di parti o ancorando le parti. Se le altre etichette richiedono troppo tempo, considera di ridurre il numero di luci e utilizzare geometrie che non proiettano ombre per oggetti che si muovono e invalidano l'occupazione.
Perform/Scene/computeLightingPerform/ShadowMapSystemAggiorna le mappe delle ombre. Non eseguito a livelli di qualità inferiori a 4.Riduci il numero di luci. Puoi anche utilizzare Light.Shadows e BasePart.CastShadow per disabilitare la proiezione delle ombre su istanze meno importanti. Vedi Migliora le prestazioni.
Perform/Scene/Glow, ColorCorrection, MSAA, SSAO e SSAOApplyRendering di post-elaborazione.Riduci il numero di effetti di post-elaborazione. Di solito questo non è significativo.
Perform/Scene/UIRendering dell'interfaccia utente. In Id_Screen, c'è un'etichetta con il numero di batch, materiali e triangoli utilizzati.Riduci il numero di elementi dell'interfaccia utente visibili. L'uso di CanvasGroups può aiutare a scapito di un aumento dell'uso della memoria.
Perform/Scene/UpdateView/updateParticles, updateParticleBoundingsAggiorna la posizione e i limiti delle particelle.Riduci il numero di ParticleEmitters, tassi di emissione, durate, ecc. Limita il movimento degli emettitori.
Scene/Id_Opaque, RenderView/Id_OpaqueParti nella scena con una trasparenza complessiva di 0.01 o inferiore.Riduci l'uso e la densità delle parti.
Scene/Id_Transparent, RenderView/Id_TransparentParti nella scena con una trasparenza complessiva compresa tra 0.01 e 1.Riduci l'uso della trasparenza parziale.
Scene/Id_Decals, RenderView/Id_DecalsDecalcomanie nella scena.Riduci l'uso di decalcomanie su mesh complesse.
Scene/OmbreRicalcolo delle ombre nella scena, solitamente eseguito su scene dinamiche e gameplay tipico. Le parti, indipendentemente dalla trasparenza, proiettano ombre assumendo che contengano decalcomanie. Non eseguito a livelli di qualità inferiori a 4.Se questo passo richiede troppo tempo, considera di disabilitare BasePart.CastShadow per mesh complesse, parti con alta trasparenza parziale e istanze meno importanti. Le parti completamente trasparenti che non hanno decalcomanie o non necessitano di ombre di decalcomanie dovrebbero avere BasePart.CastShadow disabilitato. Vedi Migliora le prestazioni.
Perform/PresentInoltra al thread GPU per eseguire i comandi di rendering.Riduci la complessità della scena in generale. Se questo passo richiede molto tempo, potresti essere limitato dalla GPU.
Perform/Present/waitUntilCompletedAttende che la GPU finisca di renderizzare il frame precedente.Se questo accade generalmente molto, allora la quantità di cose renderizzate è troppo alta. Il Frame Rate Manager aiuta a bilanciare questo, ma se rimane alta, prova a seguire i consigli sulle prestazioni delle singole etichette Scene.
LoadImageElabora le immagini in un formato che il motore può utilizzare.Riduci l'uso di immagini grandi.

Script

EtichettaDescrizioneConsigli sulle prestazioni
Render/PreRender/fireBindToRenderSteppedCallbacksEsecuzione di funzioni collegate al passo di rendering tramite RunService:BindToRenderStep().Assicurati che le funzioni collegate a questo evento facciano il minor lavoro possibile.
Render/PreRender/RunService.RenderSteppedEsegue funzioni collegate all'evento RunService.RenderStepped.Assicurati che le funzioni collegate a questo evento facciano il minor lavoro possibile.
WaitingHybridScriptJobRiprende gli script in attesa utilizzando Instance:WaitForChild() o Globals.Roblox.wait(). Di solito eseguito 30 volte al secondo. Questo passo ha un budget di tempo di esecuzione per eseguire script in attesa.Se hai troppi script in attesa o script con un lungo tempo di esecuzione prima di cedere, questo passo è limitato e attende più a lungo prima di poter essere eseguito di nuovo. Riduci la quantità di funzioni collegate o calcoli lunghi in questo passo.
GCCiclo di raccolta dei rifiuti di Luau.Pulisci tabelle e altri oggetti collezionabili o prova a ridurre la creazione di tabelle temporanee.
Heartbeat/RunService.HeartbeatEsegue funzioni collegate all'evento RunService.Heartbeat.Riduci la quantità o il carico di lavoro delle funzioni collegate a questo evento. Considera di ritardare o sostituire calcoli costosi o di distribuire il calcolo su più frame.

Simulazione

EtichettaDescrizioneConsigli sulle prestazioni
Distributed Physics OwnershipDetermina se il server o un client ha autorità su determinate istanze come le parti.Riduci il numero di parti che cambiano frequentemente proprietà di rete, specialmente quelle con interazioni comuni.
Simulation/assembleAggiorna un albero di oggetti connessi (assemblaggi) utilizzati dal motore fisico.Riduci il numero di giunti creati o distrutti.
Simulation/physicsSteppedTotal/physicsSteppedEsegue la simulazione fisica.Riduci il numero e la complessità dei corpi simulati fisicamente.
Simulation/physicsSteppedTotal/physicsStepped/SpatialFilter/filterStepAggiorna le isole di simulazione, disponendo le parti in base alla proprietà di rete, simulazione locale. Le isole sono gruppi di parti non interagenti che possono essere simulate indipendentemente.Evita di impostare frequentemente la proprietà di rete. Mantieni i gruppi di parti abbastanza lontani l'uno dall'altro in modo che possano essere simulati separatamente.
Simulation/physicsSteppedTotal/physicsStepped/worldStep/stepContactsAggiorna i contatti tra oggetti.Riduci il numero di corpi che collidono contemporaneamente, o utilizza scatole di collisione più semplici. I cubi sono migliori delle mesh complesse.
Simulation/physicsSteppedTotal/physicsStepped/worldStep/stepWorld OR stepWorldThrottledRisolvi le equazioni fisiche relative ai connettori, alla galleggiabilità e a Humanoids. Quando il motore è sovraccarico e non è in grado di simulare tutto in tempo reale, alcuni passi possono essere limitati (stepWorldThrottled) e solo "assemblaggi in tempo reale" come Humanoids vengono simulati.Dipende da dove va il tempo in base alle seguenti tre fasi: stepContacts: test di geometria di rilevamento delle collisioni di fase ristretta. Solver step: integra il tempo e risolve collisioni e altri vincoli updateBroadphase: aggiorna le posizioni degli assemblaggi nel sistema di rilevamento delle collisioni e trova coppie di fase ristretta che potrebbero collidere.
notifyMovingAssembliesAiuta a tenere traccia di quanto tempo i primitivi sono stati in sonno.
Simulation/physicsSteppedTotal/physicsStepped/interpolateNetworkedAssembliesInterpole gli assemblaggi non controllati dal giocatore attuale.Imposta il proprietario di rete delle parti sul giocatore attuale per ridurre questo; anche se questo di solito causerà più lavoro fisico da fare altrove.
Simulation/handleFallenPartsRimuove le parti che sono cadute sotto Workspace.FallenPartsDestroyHeight.Abbassa l'altezza di distruzione o riduci il numero di parti che cadono fino all'altezza di distruzione.
Heartbeat/heartbeatInternal/workspaceOnHeartbeat/updateVisuallySleepingSeconda parte di notifyMovingAssemblies.
Heartbeat/RunService.HeartbeatEsegue funzioni collegate all'evento RunService.Heartbeat per la simulazione e i contatti degli script. La descrizione attuale è abbastanza generica da non essere errata.Riduci la quantità o il carico di lavoro delle funzioni collegate a RunService.Heartbeat.
worldStep/stepContactsAiuta la simulazione fisica a gestire molti contatti contemporaneamente.Riduci il numero di oggetti in collisione.
SolveBatchAiuta la simulazione fisica a risolvere i movimenti di lotti di oggetti.

UI

EtichettaDescrizioneConsigli sulle prestazioni
Render/PreRender/UpdateInputAggiorna e attiva tutti gli eventi relativi all'input dell'utente se l'utente ha eseguito un input dall'ultimo frame.Prova a non fare troppo lavoro direttamente mentre ricevi l'input. Considera di fare una quantità minima di elaborazione per l'input, e i calcoli più grandi dovrebbero essere rimandati a un altro thread che avviene successivamente.
Render/PreRender/TweenServiceAggiorna gli oggetti che vengono tweened utilizzando TweenService e chiama i callback di completamento, come quelli forniti a GuiObject:TweenSize() o GuiObject:TweenPosition().Riduci il numero di oggetti che vengono tweened utilizzando TweenService e assicurati che i callback facciano il minor lavoro possibile.
Heartbeat/TweenServiceNel server, TweenService viene eseguito in RunService.Heartbeat invece di RunService.PreRender.Riduci il numero di oggetti che vengono tweened utilizzando TweenService e assicurati che i callback facciano il minor lavoro possibile.
Render/PreRender/UpdateUILayoutsAggiorna posizione e dimensione per gli elementi dell'interfaccia utente su tutti i LayerCollectors abilitati.Vedi le etichette UpdateUILayouts qui sotto.
Render/PreRender/UpdateUILayouts/Rebuild Z-order listRicostruisce l'elenco interno dell'ordine Z degli elementi dell'interfaccia utente (non confondere con GuiObject.ZIndex) in un LayerCollector al primo rendering o quando un nuovo elemento viene aggiunto, rimosso o ha cambiato il suo GuiObject.ZIndex.Riduci il numero di elementi dell'interfaccia utente in LayerCollectors prima del primo rendering e evita di cambiare frequentemente il genitore e il GuiObject.ZIndex degli elementi dell'interfaccia utente al loro interno. Più elementi ha un LayerCollector, peggio si comporta.
Render/PreRender/UpdateUILayouts/Layout

Aggiorna posizione e dimensione per gli elementi dell'interfaccia utente in un singolo LayerCollector. Può contenere un'etichetta con informazioni sull'interfaccia utente pertinente, insieme alla quantità di Relayouts, Aggiornamenti e Ridimensionamenti.

Riduci la quantità di elementi dell'interfaccia utente che vengono ridimensionati o riposizionati, come quelli gestiti da UILayout e quelli tweened con TweenService, GuiObject:TweenSize(), o GuiObject:TweenPosition(). Considera di utilizzare dimensioni fisse per BillboardGuis.
© 2026 Roblox Corporation. Roblox, il logo Roblox e Powering Imagination sono tra i nostri marchi registrati e non registrati negli Stati Uniti. e altri paesi.