El contenedor ScreenGui contiene GuiObjects para mostrar en la pantalla de un jugador, incluidos marcos , etiquetas , botones y más.Todos los objetos y código de interfaz de usuario en la pantalla se almacenan y cambian en el cliente.

Para mostrar un ScreenGui y su hijo GuiObjects a cada jugador que se una a la experiencia, colócalo dentro del contenedor StarterGui.Cuando un jugador se une a una experiencia y su personaje aparece por primera vez, el ScreenGui y su contenido se clonan en el contenedor PlayerGui para ese jugador, ubicado dentro del contenedor Players.

A medida que una experiencia crece en alcance, es posible que necesite múltiples interfaces de pantalla, como una pantalla de título, un menú de configuración, una interfaz de tienda y más.En tales casos, puedes colocar múltiples contenedores únicos ScreenGui dentro de StarterGui y alternar la propiedad de cada contenedor Enabled dependiendo de si debe ser visible y activo (mientras false , los contenidos no se Renderizar, se procesará la entrada del usuario o se actualizarán en respuesta a cambios).

La propiedad puede alternarse inicialmente a través de la ventana Propiedades y/o puedes establecerla durante el tiempo de juego desde un script del lado del cliente accediendo al jugador's y configurándolo a o para el contenedor deseado(s).
Propiedades del contenedor
Las siguientes propiedades te permiten personalizar los insertos de pantalla en múltiples dispositivos, el orden de visualización al usar múltiples contenedores de pantalla, y más.
Inserciones de pantalla
Los teléfonos modernos aprovechan toda la pantalla, pero generalmente incluyen ranuras, recortes y otros elementos que ocupan espacio en la pantalla.Cada experiencia de Roblox también incluye los controles de barra superior para acceso rápido al menú principal , chat, tabla de clasificación y más.

Para garantizar que los jugadores puedan ver y acceder fácilmente a toda la interfaz de usuario sin obstrucción, Roblox proporciona la propiedad que controla las inserciones de la zona segura para el contenido de un .
El predeterminado de CoreUISafeInsets mantiene todo el descendencia GuiObjects dentro de la zona segura de la interfaz de usuario principal, libre de los botones de la barra superior y de otros recortes de pantalla.Esta configuración se recomienda si el ScreenGui contiene elementos de interfaz de usuario interactivos.

Orden de visualización
Al usar múltiples interfaces ScreenGui, puedes superponerlas por índice Z a través de su propiedad DisplayOrder.Por ejemplo, para mostrar un menú de configuración modal en uno ScreenGui delante de la interfaz de usuario principal de la experiencia en otro ScreenGui , asigne un mayor DisplayOrder al modal que la interfaz subyacente.
Reiniciar al generar
La propiedad booleana ResetOnSpawn determina si los ScreenGui reinicios (se elimina a sí misma y se reclona en el personaje del jugador PlayerGui) cada vez que el personaje del jugador reaparece.
Condición | Reinicios |
---|---|
ResetOnSpawn es true (por defecto). | yes |
El ScreenGui es un descendiente indirecto de indirecto de StarterGui ; por ejemplo, se coloca dentro de un Folder ubicado dentro de StarterGui . | yes |
es y el es un descendiente directo de . | no |
Acceder a la interfaz de usuario del jugador
Como se señaló, padrar a un ScreenGui a StarterGui clones a él y a su hijo GuiObjects en un contenedor de jugador de PlayerGui cuando se unan a la experiencia y su personaje aparezca por primera vez.
Si necesita controlar el contenedor de la interfaz de usuario de un jugador durante el tiempo de juego, por ejemplo, para mostrar/ocultar un específico ScreenGui o cualquiera de sus hijos, acceda a él como sigue desde un LocalScript :
LocalScript - Accediendo a un jugador's UI
local Players = game:GetService("Players")local player = Players.LocalPlayerlocal playerGui = player.PlayerGuilocal titleScreen = playerGui:WaitForChild("TitleScreen")local settingsMenu = playerGui:WaitForChild("SettingsMenu")titleScreen.Enabled = false -- Ocultar pantalla de títulosettingsMenu.Enabled = true -- Show settings menu
Desactivar la interfaz de usuario predeterminada
Todas las experiencias de Roblox incluyen varios elementos de interfaz de usuario que se activan por defecto.Si no necesitas ninguno de estos elementos o quieres reemplazarlos con tus propias creaciones, puedes usar el método SetCoreGuiEnabled() en un script del lado del cliente con la opción Enum.CoreGuiType asociada.
Interfaz predeterminada | Enum asociado |
---|---|
Lista actualizada dinámicamente Players lista, comúnmente utilizada como una tabla de clasificación. | Enum.CoreGuiType.PlayerList |
La barra de caracteres del personaje. No aparece si la barra de salud del personaje está en plena salud. | Enum.CoreGuiType.Health |
El personaje Backpack que contiene herramientas en la experiencia . No aparece si no hay Tools en la mochila. | Enum.CoreGuiType.Backpack |
La ventana de chat de texto . | Enum.CoreGuiType.Chat |
Menú emergente de emotes de personaje emoticonos. | Enum.CoreGuiType.EmotesMenu |
Una ventana que muestra la perspectiva o vista de un jugador de su propio personaje.No aparece a menos que el jugador haya activado Vista previa de sí mismo desde el menú de Roblox. | Enum.CoreGuiType.SelfView |
Un botón de captura de pantalla en el lado derecho de la pantalla.No aparece a menos que el jugador haya habilitado Capturas desde el menú de Roblox. | Enum.CoreGuiType.Captures |

Script del cliente - Desactivar elementos de interfaz predeterminados
local StarterGui = game:GetService("StarterGui")-- Desactivar la barra de salud predeterminada y la mochilaStarterGui:SetCoreGuiEnabled(Enum.CoreGuiType.Health, false)StarterGui:SetCoreGuiEnabled(Enum.CoreGuiType.Backpack, false)
Además, los dispositivos con capacidades táctiles incluyen un joystick virtual y un botón de salto por defecto.Si lo desea, puede ocultar estos elementos al establecer GuiService.TouchControlsEnabled en false en un script del lado del cliente.

Script del cliente - Desactivar controles táctiles
local GuiService = game:GetService("GuiService")GuiService.TouchControlsEnabled = false