Para perfilar(profile) su juego corriendo en otro dispositivo o un reproductor corriendo en otro computador, es posible conectar el editor a ese otro reproductor. El despegable Active Profiler va a mostrar todos los jugadores corriendo en la red local. Estos jugadores son identificados por el tipo de reproductor y el nombre del anfitrión corriendo el reproductor “iPhonePlayer (Toms iPhone)”. Para poderse conectar a un reproductor, el reproductor debe ser ejecutado con la casilla de verificación Development Build encontrada en el diálogo Build Settings . Desde aquí es también posible hacer tick a la casilla de verificación para hacer que el Editor y el Reproductor Autoconnect (auto-conecten) en el inicio.
Los controles del Profiler están en la barra de herramientas en la parte superior de la ventana. Use estos para activar y desactivar el profiling, navegar a través de los frames perfilados y así. Los controles de Transporte están en el extremo derecho de la barra de herramientas. Tenga en cuenta que cuando el juego esté corriendo y el profiler esté colectando datos, haciendo click en cualquiera de estos controles de transporte va a pausar el juego. Los controles van al primer cuadro guardado, pasa un cuadro atrás, pasa un frame adelante y van al último frame respectivamente. El profiler no mantiene todos los frames guardados, entonces la noción del primer frame realmente debería ser entendida como el frame más antiguo que aún se conserva en la memoria. El botón del transport “current” (actual) causa que la ventana de estadísticas del profile muestre datos recolectados en tiempo real. El menú emergente Active Profiler le permite seleccionar si el profiling (perfilamiento) debe ser hecho en el editor o en un reproductor a parte (por ejemplo, un juego que se ejecuta en un dispositivo iOS conectado).
Cuando prenda Deep Profile, todo su código script es perfilado - eso es, todas las funciones llamadas son grabadas. Esto es útil para saber exactamente dónde se está gastando más tiempo en el código de su juego.
Tenga en cuenta que Deep Profiling incurre una gran sobrecarga y usa mucha memoria, y como un resultado su juego va a correr significantemente más lento mientras esté perfilando(profiling). Si usted está usando un código script complejo, el Deep Profiling puede que no sea para nada posible. Deep Profiling debería trabajar lo suficientemente rápido para juegos pequeños con un scripting simple. Si usted encuentra que Deep Profiling su juego entero causa la velocidad de frames caer lo suficiente para que su juego apenas corra, usted debería considerar no usar este acercamiento, y más bien utilizar el acercamiento descrito abajo. Usted puede encontrar Deep Profiling más útil mientras usted esté diseñando su juego y decidiendo cómo es la mejor manera de implementar las características claves. Tenga en cuenta que para juegos grandes Deep Profiling puede causar que Unity se quede sin memoria y por esta razón deep profiling puede no ser posible.
Manualmente perfilando sus bloques de código script va a tener una menor sobrecarga en vez de usar Deep Profiling. Use estas funciones de scripting Profiler.BeginSample y Profiler.EndSample para habilitar y deshabilitar el perfilamiento alrededor de secciones de código.
Cuando se corra a una velocidad de cuadro fija o se corra en una sincronización con el vertical blank, Unity graba el tiempo de espera en “Wait For Target FPS”. Por defecto esta cantidad de tiempo no es mostrada en el perfilador. Para ver cuánto tiempo se gasta esperando, usted puede activar “View SyncTime”. Esto también es una medida de cuánto espacio para el encabezado tiene antes de pierda cuadros.
La parte superior de la ventana del perfilador muestra los datos de rendimiento en el tiempo. Cuando usted corre un juego, la información es guardada en cada cuadro, y la historia de los últimos cientos de cuadros se muestra. Haciendo click en un cuadro en particular va a mostrar sus detalles en la parte inferior de la ventana. Los detalles diferentes son mostrados dependiendo de cuál área de la linea del tiempo está actualmente seleccionada.
La escala vertical de la linea del tiempo es administrada automáticamente y va intentar llenar el espacio vertical de la ventana. Tenga en cuenta que para obtener más detalles de digamos del área del uso del CPU usted puede quitar las áreas de Memory y Rendering. Además, el divisor entre la línea de tiempo y el área de estadísticas se puede seleccionar y arrastrar hacia abajo para aumentar el área de la pantalla utilizada para la gráfica de la linea del tiempo.
La linea de tiempo consiste en varias áreas: El uso del CPU, Rendering y Memory. Estas áreas pueden ser quitadas al hacer click en el botón de cerrar en el panel, y re-agregadas nuevamente usando el despegable Add Area en la barra de los controles del perfilador.
Tenga en cuenta que los cuadrados coloreados en el área de la etiqueta pueden controlar si se muestra la línea de tiempo asociada o no. Para quitar una muestra de la pantalla haga click en la tecla de color. La tecla se atenuará, y los datos serán removidos de la gráfica. Esto puede ser útil para identificar la causa de los picos de la gráfica de la CPU, por ejemplo.