Análisis de Escenas

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

La herramienta de Análisis de Escenas proporciona un conjunto de vistas en Roblox Studio que te dan información comparativa de un vistazo sobre cómo están compuestas tus escenas de cliente y servidor, qué recursos están utilizando y qué instancias son responsables de ese uso de recursos. El Análisis de Escenas está diseñado para usarse durante sesiones de juego y prueba, y puede inspeccionar tanto el modelo de datos del cliente como el del servidor.

Resumen de la herramienta de Análisis de Escenas

Habilitar Análisis de Escenas

  1. Habilita Análisis de Escenas en Archivo > Funciones Beta.
  2. En la barra de menú, selecciona Ventana > Resumen de Rendimiento > Análisis de Escenas.

Usar Análisis de Escenas

El Análisis de Escenas está diseñado para ser utilizado durante una sesión de juego o prueba. Abre la ventana de Análisis de Escenas y navega por los modos disponibles. Cuando un modo está activo, verás una visualización de cajas—la vista de treemap cuadrado—mostrando los tamaños relativos de los recursos que se están viendo y las instancias que están contribuyendo a ellos.

  • Debajo de la vista de treemap cuadrado hay una lista de todos los elementos en la vista actual.
  • Hacer clic derecho en un elemento seleccionado en Análisis de Escenas generalmente te permite saltar directamente a ese elemento en el Explorador.
  • Puedes usar la barra de búsqueda para filtrar por nombre en la visualización actual.

Modos

El Análisis de Escenas tiene muchos modos diferentes, cada uno de los cuales se adapta a un caso de uso distinto.

Memoria de scripts

Esta vista muestra cuánta memoria está utilizando cada Script, LocalScript y ModuleScript en el VM de Luau. Esta es la memoria utilizada por tablas y otras asignaciones de scripts, no la memoria utilizada por activos como animaciones, texturas y sonidos. La vista se desglosa aún más por los lugares comunes desde los cuales se ejecutan los scripts y por Script frente a ModuleScript.

Instancias sin padre

La vista de instancias sin padre muestra qué scripts y módulos están manteniendo referencias a instancias, como un conteo por tipo.

Es normal que los scripts mantengan referencias a instancias y eso, por sí solo, no es una indicación de un error o una fuga de memoria. Sin embargo, si estás investigando una fuga de memoria, esta vista facilita ver si un script está haciendo algo que no esperabas.

Si todavía tienes problemas para encontrar la causa raíz de una fuga de memoria, esta herramienta es complementaria a la herramienta del montículo de Luau, que puede mostrarte más información sobre asignaciones individuales.

Haz clic derecho en cualquier script en esta vista para seleccionarlo directamente en el Explorador.

Composición de instancias

La vista de composición de instancias muestra qué instancias están actualmente presentes en el cliente o el servidor. Esto es invaluable cuando trabajas en construcciones grandes y complejas, ya que cada instancia tiene costos tanto de replicación como de memoria.

Las categorías, como Personajes, Geometría y Texturas, están diseñadas para ayudarte a entender cómo está equilibrada tu escena. Por ejemplo, quizás no pretendías tener 25,000 emisores de partículas, pero esta vista te lo hace saber.

Esta vista también facilita seleccionar todas las instancias de un tipo dado.

Memoria de audio

La vista de memoria de audio muestra cuánta memoria está consumiendo actualmente cada activo de audio. La memoria real utilizada por una pista de audio dada es bastante compleja, pero en términos prácticos, eliminar todas las instancias que hacen referencia a una pista de audio permite que esa memoria se descargue.

Haz clic derecho en cualquier activo de audio en esta vista para seleccionar todas las instancias que lo están utilizando.

Memoria de animación

Los activos de animación son una de las fuentes más comunes de fugas de memoria en producción. Roblox es agresivo en descargar activos de animación no utilizados, pero es común que los scripts mantengan las animaciones vivas después de que su modelo padre ha sido destruido.

Al igual que con los activos de audio, eliminar todas las instancias que hacen referencia a un activo de animación permite que se descargue.

Esta vista, junto con la vista de instancias sin padre, facilita hacer un seguimiento del ciclo de vida de las animaciones y cuánto memoria están utilizando realmente.

Haz clic derecho en cualquier animación en esta vista para seleccionar todas las instancias que la están utilizando.

Composición de triángulos

La vista de composición de triángulos te ofrece un desglose más detallado de los triángulos y llamadas de dibujo actualmente renderizadas en el área de visualización principal.

Estos desglose incluyen conteos para Sombras, Opaco, Transparente, Terreno, Césped, Partículas, Cielo y UI.

Esta información compositiva te ayuda a comprender mejor cómo se compone la geometría de tu escena e identificar casos donde la escena contiene geometría inesperada.

API del motor

También puedes acceder a los datos de Análisis de Escenas programáticamente a través de SceneAnalysisService, que se expone a través del servidor MCP. Cada método devuelve tablas que contienen hijos anidados con los mismos datos que utiliza la visualización en pantalla.

MétodoDescripción
GetInstanceCompositionAsyncDevuelve conteos de instancias por categoría y clase del árbol DataModel.
GetScriptMemoryAsyncDevuelve el uso de memoria del montículo de Luau por script en bytes.
GetUnparentedInstancesAsyncDevuelve instancias mantenidas por Luau pero ya no en el DataModel, agrupadas por script anfitrión.
GetTriangleCompositionAsyncDevuelve conteos de triángulos y llamadas de dibujo por pase de renderizado.
GetAnimationMemoryAsyncDevuelve la memoria del clip de animación cargado, desduplicada por clip.
GetAudioMemoryAsyncDevuelve la memoria del activo de audio cargado, desduplicada por ID de activo.
©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.