Ottimizzare il rendimento utilizzando gli strumenti e le API di Unity

Unity fornisce varie API e strumenti correlati al rendimento. Utilizza questi strumenti per misurare e monitorare le metriche di rendimento, specificare una frequenza di aggiornamento del display e analizzare il rendering della scena frame per frame.

Misurare e monitorare le metriche sul rendimento

Il pacchetto Unity OpenXR: Android XR fornisce dati completi sul rendimento che puoi utilizzare per monitorare e ottimizzare la tua app.

Puoi accedere a queste metriche tramite l'API Performance Metrics.

Vantaggi

  • Monitoraggio in tempo reale dell'utilizzo della memoria e delle prestazioni di CPU e GPU.
  • Statistiche di sistema dai livelli di compositore e runtime.
  • Misura l'impatto delle modifiche all'ottimizzazione.

Per ottenere i risultati migliori, monitora attivamente queste metriche mentre lavori alla tua app e ne ottimizzi il rendimento:

AndroidXRPerformanceMetrics androidXRPerformanceMetrics = OpenXRSettings.Instance.GetFeature<AndroidXRPerformanceMetrics>();

string values = "";

if (m_Display != null && androidXRPerformanceMetrics != null && androidXRPerformanceMetrics.supportedMetricPaths != null)
  foreach (var metric in androidXRPerformanceMetrics.supportedMetricPaths)
  {
    float stat;
    XRStats.TryGetStat(m_Display, metric, out stat);

    values += string.Format("{0}: {1:F2}\n", metric, stat);
  }

Specificare una frequenza di aggiornamento del display

Frequenza di aggiornamento del display consente all'app di richiedere frequenze fotogrammi più alte o più basse dal runtime, che il sistema tenta di rispettare.

Vantaggi

  • Regola le frequenze di aggiornamento in base alla complessità della scena.
  • Ottimizza il consumo energetico durante le scene più chiare.
  • Adattarsi dinamicamente alle esigenze delle app.

Attiva questa funzionalità

Utilizza l'API Unity per accedere all'estensione XR_FB_display_refresh_rate.

Puoi richiedere frame rate come 72 fps, 90 fps o 120 fps, quindi il sistema passa alla velocità richiesta se l'hardware è in grado di gestirla e le condizioni termiche lo consentono.

Attivare il debugger dei frame di Unity

Frame Debugger è lo strumento integrato di Unity per analizzare il rendering della scena frame per frame. Questo strumento mostra la sequenza di chiamate di disegno e ti consente di esaminarle passo passo per comprendere il comportamento di rendering.

Vantaggi

  • Identifica i colli di bottiglia del rendering e le chiamate di disegno impreviste.
  • Verifica che SRP Batcher funzioni correttamente (cerca le voci "RenderLoopNewBatcher").
  • Controlla il batching del riquadro residente della GPU (cerca le voci "Hybrid Batch Group").
  • Comprendere l'ordine delle operazioni di rendering.

Attiva questa funzionalità

  1. Nel menu principale di Unity, fai clic su Window > Analysis > Frame Debugger.
  2. Fai clic su Abilita per iniziare ad acquisire i dati dei frame.
  3. Scorri le chiamate di disegno per vedere cosa viene visualizzato e quando.