Identificar problemas de rendimiento

*Este contenido se traduce usando la IA (Beta) y puede contener errores. Para ver esta página en inglés, haz clic en aquí.

Identificar problemas de rendimiento generalmente significa profundizar en una de tres categorías: tasa de cuadros (computación), memoria o tiempo de carga.

Roblox tiene varias herramientas para identificar problemas de rendimiento, algunas de las cuales están disponibles en el cliente de Roblox (y, por lo tanto, en Studio) y algunas de las cuales están disponibles solo en Studio. Mientras que puedes observar el comportamiento del cliente directamente, debes usar herramientas para diagnosticar problemas del servidor.

Herramientas de diagnóstico

HerramientaDescripciónUbicaciónAtajo de tecladoEntorno
Consola del DesarrolladorUna consola con mensajes de registro en tiempo real, errores e información detallada sobre el rendimiento de la memoria, la red y los scripts. Es útil para ver el consumo de memoria, las estadísticas clave de salud del servidor, las estadísticas del rendimiento de los scripts y para lanzar el MicroProfiler del cliente o del servidor.
Studio

En Juego
F9
Pruebas en Studio

Sesiones en Vivo
MicroProfilerUna herramienta de depuración que descompone cuánto tiempo computacional se dedica a las tareas en cada cuadro. Puede generar volcado para análisis que muestren un desglose preciso de cuadros individuales, lo que resulta útil para identificar la tarea específica que causa problemas de rendimiento. Puedes ejecutar el perfilador en el cliente o en el servidor, dependiendo de qué lado tenga un problema.
Studio

En Juego
CtrlAltF6 (F6)
Pruebas en Studio

Sesiones en Vivo
Análisis de EscenaProporciona información comparativa de un vistazo sobre los recursos que están usando tus escenas del cliente y del servidor y qué instancias son responsables de ese uso de recursos.StudioN/A
Pruebas en Studio
Estadísticas de rendimientoUna barra de herramientas con estadísticas básicas de rendimiento, incluyendo consumo de memoria, CPU, GPU, datos de red enviados y recibidos, y tiempo de ping.
En Juego
CtrlAltF7 (F7)
Pruebas en Studio

Sesiones en Vivo
Estadísticas de DepuraciónSuperposiciones con información detallada sobre gráficos, física, tráfico de red y FPS.
Studio

En Juego
ShiftCtrlF1 (ShiftF1), ShiftCtrlF2 (ShiftF2), ShiftCtrlF3 (ShiftF3), ShiftCtrlF4 (ShiftF4), ShiftCtrlF5 (ShiftF5)
Pruebas en Studio

Sesiones en Vivo
Simulación de RedPropiedades que simulan condiciones de red del mundo real, como latencia, jitter y pérdida de paquetes para probar conexiones.
Studio
AltS(S)
Pruebas en Studio
Tablero de RendimientoUn tablero con gráficos agregados para el uso de memoria del cliente y del servidor, la tasa de cuadros del cliente, el latido del servidor y las tasas de errores en tiempo real. Es útil para analizar patrones de rendimiento a lo largo del tiempo. Ver monitoreo de rendimiento.
Tablero del Creador
N/A
Sesiones en Vivo

Computación del servidor

El latido del servidor está limitado a 60 FPS para todos los juegos, por lo que valores más bajos podrían indicar un problema de rendimiento. Para comprobar el latido del servidor:

  • Con la Consola del Desarrollador - En la pestaña Tareas del Servidor, expande la fila Latido y verifica el valor de Pasos Por Sec, que representa el latido de tu juego.

  • Con el MicroProfiler, puedes comprobar el gráfico para ver si el cuadro tarda más de 16.67 ms.

Otro síntoma de un latido del servidor degradado es el aumento de la latencia (comúnmente conocido como ping). Cuanto más tiempo tarda el servidor en terminar de computar sus tareas en cada cuadro, más tiempo tarda en procesar los datos de red enviados y recibidos de los clientes. Para comprobar el ping promedio de todos los jugadores conectados a un servidor, ve a la pestaña Estadísticas del Servidor en la Consola del Desarrollador.

Computación del cliente

El límite de tasa de cuadros del cliente por defecto es de 60 FPS. Sin embargo, los usuarios pueden aumentar su límite de tasa de cuadros hasta 240 FPS en Windows.

La tasa de cuadros varía enormemente entre los dispositivos. Por ejemplo, una PC de alta gama podría "forzar" un problema computacional y solo experimentar una caída de tasa de cuadros imperceptible. Si realizas pruebas en dispositivos de gama baja, los problemas tienden a ser más severos y, por lo tanto, más fáciles de notar.

Para comprobar la tasa de cuadros de tu juego:

  • En el cliente, presiona ShiftF5 para mostrar el resumen de estadísticas de depuración.

  • Desde el menú VentanaRendimiento de Studio, activa Estadísticas para habilitar las estadísticas de depuración.

  • Con el MicroProfiler, puedes comprobar el gráfico para ver si el cuadro tarda más de 16.67 ms.

Memoria del servidor

Trata de mantener el uso de memoria del servidor por debajo del 50%. La memoria total del servidor utiliza la siguiente fórmula:

6.25 GiB + (100 MiB * mayor_número_de_jugadores_conectados)

Por ejemplo, un servidor con 30 jugadores conectados tiene aproximadamente 9.18 GiB de memoria total. Los servidores ganan memoria cuando los jugadores se conectan, pero no la pierden cuando los jugadores se desconectan. Si 10 jugadores se van, el servidor aún tiene 9.18 GiB de memoria en lugar de reducirse a 8.2 GiB.

Cuando los servidores se apagan (por ejemplo, cuando están vacíos o como parte del proceso de actualización), sus reemplazos comienzan con la cantidad base de memoria y comienzan a incrementarse a medida que los jugadores se conectan.

Memoria del cliente

Hay varias maneras de comprobar el uso de memoria para un juego:

  1. Abre la Consola del Desarrollador y cambia a la pestaña Memoria. Esta pestaña brinda un desglose de cómo se está asignando la memoria. Usa el cliente en lugar de Studio para obtener las lecturas más precisas.
  2. Habilita la vista de Estadísticas de Rendimiento desde el menú de configuración en el cliente para ver una superposición con el uso total de memoria del cliente.

Un alto uso de memoria no necesariamente indica un problema, pero algunas indicaciones de que puedes necesitar investigar más son:

  • Un porcentaje significativo de caídas del cliente que se muestran en el Tablero de Rendimiento, particularmente un aumento repentino que coincide con una actualización. Se espera que haya algunas caídas, pero deberías investigar si tus tasas de caída aumentan por encima del 2-3%.
  • Ocurre una caída mientras pruebas en un dispositivo que deseas que soporte tu juego.

Una parte significativa del consumo de memoria de un juego en el cliente proviene de activos, como imágenes, mallas y archivos de audio, cargados en memoria. En la Consola del Desarrollador, verifica las siguientes etiquetas bajo PlaceMemory:

  • GraphicsMeshParts - Memoria gráfica consumida por mallas.
  • GraphicsTexture - Memoria gráfica consumida por texturas.
  • Sounds - Memoria consumida por archivos de audio.

Tiempos de carga

No hay herramientas integradas para comprobar los tiempos de carga, pero dado que no requieren precisión a nivel de milisegundos, un cronómetro es generalmente todo lo que necesitas para comprender tu línea base actual y verificar si has realizado una mejora sustantiva. Puedes usar un script de cliente en ReplicatedFirst para tener una idea de cómo tus cambios impactan los tiempos de carga, pero este script no proporciona una medición completa de extremo a extremo:


local startTime = os.clock()
game.Loaded:Connect(function()
local loadTime = os.clock() - startTime
local roundedLoadTime = math.round(loadTime * 10000) / 10000 -- cuatro decimales
print("Juego cargado en " .. roundedLoadTime .. " segundos.")
print("Número de instancias cargadas: " .. #workspace:GetDescendants())
end)

Para obtener información adicional, habilita Imprimir Desglose de Tamaño de Unión desde la pestaña Red de Configuraciones de Studio para imprimir las 20 instancias principales por tamaño y un desglose porcentual por tipo de instancia cuando comiences el juego en Studio.

Ping

Las dos mediciones principales de ping (latencia) son ping de red y ping de datos.

El ping de red es el tiempo de ida y vuelta medido desde que el cliente envía un paquete de datos de red hasta que recibe la respuesta de eco del servidor. Es similar a lo que se informaría como time por la utilidad de red ping de propósito general.

El ping de red es visible en la barra de Estadísticas de Rendimiento. Está mayormente afectado por la longitud de la ruta de la red entre el cliente y el servidor, y está fuera de tu control. Sin embargo, puedes simular ping y otras condiciones de red utilizando simulación de red al probar en Studio.

El ping de datos es el tiempo de ida y vuelta medido desde que el cliente envía datos de manera confiable a través del sistema de replicación hasta que recibe una respuesta de eco del sistema de replicación del servidor. Incluye el tiempo que se pasa en las colas de replicación del cliente y del servidor, junto con retransmisiones tipo TCP de paquetes perdidos o corruptos.

El ping de datos es similar a enviar un evento remoto confiable desde el cliente, recibirlo en el servidor, y luego enviar un evento remoto confiable desde el servidor al cliente en respuesta. Debido a que el ping de datos también incluye el tiempo que se pasa en la red entre el cliente y el servidor, es mayor o igual al ping de red.

El ping de datos promedio para todos los jugadores conectados a un servidor es visible en la pestaña Estadísticas del Servidor de la Consola del Desarrollador. El ping de datos para un cliente individual es visible usando ShiftF3 para mostrar estadísticas de depuración de red.

El ping de datos se ve afectado tanto por la ruta de la red como por los retrasos en las colas de replicación. Cuando el servidor genera datos de replicación más rápido de lo que la red puede enviarlos (o más rápido de lo que el cliente puede procesarlos), los datos deben esperar en las colas de replicación. Alguna diferencia entre el ping de datos y el ping de red es normal debido tanto a retransmisiones de red como a la forma en que la aplicación Roblox procesa los datos de red. Sin embargo, si el ping de datos es significativamente más alto que el ping de red, utiliza el MicroProfiler para ver el tráfico de red. Para sugerencias de optimización, consulta redes y replicación.

©2026 Roblox Corporation. Roblox, el logotipo de Roblox y "Powering Imagination" son algunas de nuestras marcas registradas y no registradas en los Estados Unidos y otros países.