Cada componente de construcción y programación que agregas a tu experiencia consume memoria.Cuando el uso de memoria llega a los límites del motor, el dispositivo o el servidor del usuario puede fallar, por lo que debe monitorear activamente el uso de memoria y tomar medidas de optimización. La consola del desarrollador proporciona dos herramientas para monitorear el uso de la memoria, incluyendo:
Memoria — Ver el consumo de memoria en tiempo real por categorías de uso, incluso el uso de memoria por ambos componentes personalizados y los procesos internos del motor.
Pila de Luau — Crea instantáneas en la memoria del heap, que se refiere a la asignación de memoria a tus scripts.Esta herramienta proporciona varias vistas de asignación de memoria para ayudarlo a identificar la asignación de memoria actual y los problemas desde diferentes perspectivas, como tipos de objetos y Clasesde motor.También te permite crear múltiples instantáneas para comparar las diferencias en el uso de la memoria con el tiempo.
Puedes abrir la consola durante una sesión de prueba o experiencia en vivo usando cualquiera de los siguientes métodos:
- Presione F9.
- Escribe /console en el chat.
- Usa el menú en la experiencia:
Abre el menú en experiencia Roblox .
Seleccione la pestaña Configuración .
Desplácese hacia abajo hasta Consola del desarrollador y haga clic en Abrir .
Memoria
La herramienta Memoria categoriza y muestra el uso de memoria en tiempo real.Muestra el uso de memoria en MB de cada categoría y genera un gráfico sobre el cambio de uso a lo largo del tiempo.
Para ver la asignación de memoria:
Abre la Consola del desarrollador .
Expandir el cuadro de herramientas para seleccionar Memoria .
Expand the client-server dropdown to select Cliente or Servidor .
Navegue por las categorías y elementos de uso de memoria.Para categorías o elementos que desea ver el patrón de uso de tiempo extra, expanda la categoría para mostrar el gráfico.
Memoria del núcleo — El uso de memoria por los procesos de construcción del núcleo del motor, incluida la red, los avatares y los elementos de interfaz gráfica del usuario (IGU) que no tienes control directo.
Memoria de lugar — Uso de memoria basado en cómo construyes tu experiencia, incluidos modelos, terreno, partes, scripts y todos los demás elementos personalizados que agregas a tu experiencia.
Referencia de memoria de lugarCategoría Descripción HttpCache Recursos (imágenes, mallas, etc.) cargados desde los servidores de Roblox y ahora almacenados en caché en la memoria. Instancias Instances en el lugar. Señales Señales que disparan entre instancias (un evento que dispara en una instancia para activar un evento en otra instancia). Pila de Lua Memoria de pila para ambos scripts principales (scripts que se envían con el cliente de Roblox) y scripts personalizados. Guión Luau Guiones. Colisión de físicas Datos de colisión para simulaciones de física. Partes de física Geometría y cinemática de física. Modelos sólidos gráficos Datos gráficos para renderizar modelos sólidos. Partes de malla gráfica Gráficos para MeshPart objetos. Partículas gráficas Gráficos para sistemas de partículas. Partes gráficas Gráficos para piezas. Hash espacial gráfico Renderizado general. Terreno gráfico Gráficos para terreno. Textura gráfica Memoria de textura. Personaje de textura gráfica Memoria de textura para personajes. Sonidos Sonidos en memoria. Sonidos de streaming Sonidos de transmisión. Voxeles de terreno Voxeles de terreno. Física del terreno Física de terreno. Interfaz Memoria utilizada por elementos de interfaz gráfica comunes. Animación Memoria utilizada para datos de animación, como poses y KeyframeSequence datos almacenados en caché para animaciones de avatares. Navegación Memoria utilizada por las estructuras de soporte para PathfindingService . Memoria no rastreada — Asignaciones de memoria que el sistema no puede atribuir fácilmente a una de origenespecífica.
Memoria de script de lugar — Uso de memoria de tus scripts con información sobre cómo contribuyen los scripts individuales y las etiquetas de memoria personalizadas al uso total de memoria.
Memoria de script de núcleo — Uso de memoria por scripts internos del motor que no tienes control directo.
Entre estas categorías, PlaceMemory y PlaceScriptMemory son las más importantes para la optimización del rendimiento, porque te ayudan a comprender cómo afectan tus decisiones de construcción y programación el consumo de memoria y las áreas potenciales para la optimización.Para obtener más información sobre Memoria de lugar de script , puedes usar la herramienta Luau heap para crear instantáneas y analizar la asignación de memoria por diferentes métricas.
Pila de Luau
La herramienta pila Luau le permite crear instantáneas sobre la asignación actual de memoria de pila, que se refiere a la asignación de memoria a los scripts Luau para almacenar variables, tablas, funciones y otras estructuras de datos de tiempo de ejecución.Esta herramienta proporciona varias vistas de asignación de memoria para ayudarlo a identificar la asignación de memoria y los problemas desde diferentes perspectivas, como tipos de objetos y Clasesde motor.También te permite crear múltiples instantáneas para comparar las diferencias en el uso de la memoria con el tiempo.
Crear instantáneas
Para crear un punto de instantánea de tu asignación de memoria:
Abre la Consola del desarrollador .
Expanda el cuadro de herramientas para seleccionar LuauHeap .
Expand the client-server dropdown to select Cliente or Servidor .
Haga clic en el botón Crear instantánea .
Analizar el uso de memoria
La herramienta proporciona cinco vistas que puedes seleccionar para ver tu asignación de memoria Luau en función de diferentes vistas:
- Gráfico — Muestra un árbol de uso de memoria agregada con cada nodo que representa un objeto con memoria asignada.
- Etiquetas de objeto — Muestra tamaños de memoria y cantidades por tipos de tiempo de ejecución, como function , table y thread .
- Categorías de memoria — Muestra tamaños y cantidades de memoria asignados por el motor a las categorías de memoria asignadas.El motor asigna una categoría de memoria a un objeto al momento de la asignación.
- Clases de objetos — Muestra tamaños de memoria y cantidades por clases de motor que usan y almacenan sus instancias, como EnumItem , Animation , CFrame .
- Referencias únicas — Muestra los recuentos y el número total de instancias que no tienen un padre en el modelo de datos y solo se pueden alcanzar por scripts, junto con todos los caminos que fijan el objeto de instancia.
Gráfico
La vista Gráfico es la más detallada y compleja de todas las vistas de pila Luau.Muestra un árbol de uso de memoria agregada con cada nodo que representa un objeto con memoria asignada.El árbol muestra cómo los objetos se conectan entre sí y deriva el camino más corto entre las referencias de objetos.Tiene las siguientes columnas de tamaño de memoria: Tamaño — El uso de memoria propia más el uso de memoria por contenido dentro de la estructura de datos.Uno mismo — La memoria directamente asignada para la propia estructura de datos, excluyendo el uso de la memoria por cualquier contenido que contenga.

La raíz del diagrama de árbol es registry, que almacena todas las referencias de motores y Luau, como funciones conectadas a señales o la biblioteca de tareas, tablas devueltas por scripts de módulo, y funciones globales, tablas y Clases.Por lo general, patrocina las siguientes entradas comunes:
- Module @Path.To.Module es la tabla devuelta por un script de módulo.
- name:123 =Path.To.Module es una función dentro de un script especificado.Las funciones anónimas no tienen nombres.El nodo de nivel superior a menudo se refiere a la función de script global.Las funciones anónimas no tienen nombres.Ejemplo: :1= Workspace.[Username].Animate .
- upvalue es una referencia para las funciones capturadas. Vea Capturar alcance local para más información.
- env se refiere al entorno de una función. Para la mayoría de los casos, es una tabla que representa el alcance global de un script.
- globals se refiere al entorno de un subproceso.
- [key] representa objetos que sirven como claves de tabla.
- array representa un matriz/lista.
- stack se refiere al array que almacena todas las funciones locales.
- constants representa todos los valores constantes que usan las funciones.
Categorías de memoria
La vista Categorías de memoria muestra tamaños de memoria y recuentos por categorías de memoria, que el motor asigna a los objetos al momento de la asignación.Por defecto, la categoría de memoria tiene el mismo nombre que el script, o puedes asignar nombres de categoría de memoria personalizados usando la función debug.setmemorycategory.
Refencias únicas
La vista Referencias únicas muestra el uso de memoria de instancias que no tienen un padre en el modelo de datos y solo se pueden acceder por medio de scripts, junto con todos los caminos que fijan el objeto de instancia.Esta vista tiene dos métricas:
- Contar — Muestra el número de instancias con el mismo nombre que se pueden alcanzar desde el mismo camino, como múltiples instancias llamadas Dragon en la misma tabla.
- Instancias totales — Muestra el número total de objetos dentro de esas raíces, como todas las partes, scripts y objetos de sonido que constituyen una instancia Dragon.

Esta vista es útil para identificar instancias conectadas innecesarias, que debe desconectar cuando ya no las necesite.Si ves muchas instancias inesperadas en esta vista, revisa los caminos que las contienen y valora si son necesarias.