Optimiza el rendimiento con las herramientas y las APIs de Unity

Unity proporciona varias herramientas y APIs relacionadas con el rendimiento. Usa estas herramientas para medir y supervisar las métricas de rendimiento, especificar una frecuencia de actualización de la pantalla y analizar cómo se renderiza tu escena fotograma por fotograma.

Mide y supervisa las métricas de rendimiento

El paquete Unity OpenXR: Android XR te brinda datos de rendimiento integrales que puedes usar para supervisar y optimizar tu app.

Puedes acceder a estas métricas a través de la API de Performance Metrics.

Beneficios

  • Supervisión en tiempo real del uso de memoria y el rendimiento de la CPU y la GPU
  • Estadísticas del sistema de las capas de compositor y de tiempo de ejecución.
  • Mide el impacto de los cambios en la optimización.

Para obtener los mejores resultados, supervisa activamente estas métricas mientras trabajas en tu app y ajustas el rendimiento:

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);
  }

Cómo especificar una frecuencia de actualización de pantalla

Display Refresh Rate permite que tu app solicite velocidades de fotogramas más altas o más bajas desde el tiempo de ejecución, que el sistema intenta cumplir.

Beneficios

  • Ajusta las frecuencias de actualización según la complejidad de la escena.
  • Optimiza el consumo de energía durante las escenas más claras.
  • Se adapta de forma dinámica a las exigencias de la app.

Habilita esta función

Usa la API de Unity para acceder a la extensión de XR_FB_display_refresh_rate.

Puedes solicitar frecuencias de fotogramas como 72 fps, 90 fps o 120 fps, y el sistema cambiará a la frecuencia solicitada si el hardware lo admite y las condiciones térmicas lo permiten.

Habilita el depurador de fotogramas de Unity

El Depurador de fotogramas es la herramienta integrada de Unity para analizar cómo se renderiza tu escena fotograma por fotograma. Esta herramienta te muestra la secuencia de llamadas de dibujo y te permite recorrerlas paso a paso para comprender el comportamiento de la renderización.

Beneficios

  • Identifica los cuellos de botella de renderización y las llamadas de dibujo inesperadas.
  • Verifica que el SRP Batcher funcione correctamente (busca entradas de "RenderLoopNewBatcher").
  • Verifica el procesamiento por lotes de GPU Resident Drawer (busca entradas de "Hybrid Batch Group").
  • Comprende el orden de las operaciones de procesamiento.

Habilita esta función

  1. En el menú principal de Unity, haz clic en Window > Analysis > Frame Debugger.
  2. Haz clic en Habilitar para comenzar a capturar datos de fotogramas.
  3. Recorre las llamadas de dibujo para ver qué se renderiza y cuándo.