Version: 5.5
Optimización del Desempeño en iOS
Midiendo el Rendimiento con el Perfilador (Profiler) Integrado

Optimizaciones Específicas para iOS

En esta página se detallan las optimizaciones aplicables únicamente para el despliegue en iOS.

Optimización de Llamados en Scripts

Muchas de las funciones en el namespace UnityEngine son implementadas en C/C++. Invocar a una función C/C++ desde un script de Mono involucra un costo en el desempeño. Puedes usar Script Call optimization en la pestaña de iOS (menú: Edit->Project Settings->Player) para ahorrar entre 1 a 4 milisegundos por frame. Las opciones para esta configuración son:-

  • Slow and Safe - El manejo por defecto de llamados internos de Mono, con soporte para excepciones.
  • Fast and Exceptions Unsupported - Una implementación más rápida del manejo de llamados internos de Mono. Sin embargo, esto no soporta excepciones, por lo que debe ser usado con precaución. Una app que no maneje excepciones explícitamente (y que no tenga que involucrarse con ellas) es un candidato ideal para esta opción.

Configurar la Velocidad de Cuadros Deseada

Unity iOS te permite cambiar la frecuencia con la que tu aplicación intentará ejecutar su ciclo de rendering, el cual está colocado por defecto a 30 frames por segundo. Puedes dejar más bajo este número para ahorrar batería, pero por supuesto este ahorro se hace al precio de tener menos actualizaciones de frames. De forma opuesta, puedes incrementar la velocidad de frames para dar prioridad al rendering sobre otras actividades tales como entradas de la pantalla táctil o procesamiento del acelerómetro. Necesitarás experimentar con tu escogencia de velocidad de frames para determinar en qué forma afecta la jugabilidad en el caso de tu juego.

Si tu aplicación involucra cálculos o rendering pesados y puedes mantener sólo 15 frames por segundo, por decir algo, entonces al configurar la velocidad deseada con un valor más alto que quince no ofrecería ningún desempeño adicional. La aplicación tiene que estar optimizada lo suficiente para permitir una velocidad de frames más alta.

Para configurar la velocidad deseada, cambia el valor de la variable Application.targetFrameRate.

Ajustar la Frecuencia de Procesamiento del Acelerómetro

Si la entrada del acelerómetro es procesada con demasiada frecuencia, entonces el desempeño global de tu juego puede verse afectado como consecuencia. Por defecto, una aplicación de Unity iOS leerá valores del acelerómetro 60 veces por segundo. Podrás ver un pequeño incremento en el desempeño reduciendo la velocidad de sampling del acelerómetro, e incluso puede llegar a cero para juegos que no usen entrada de acelerómetro. Puedes cambiar la frecuencia del acelerómetro en el panel Other Settings de los iOS Player Settings.

Optimización del Desempeño en iOS
Midiendo el Rendimiento con el Perfilador (Profiler) Integrado