Directrices de desarrollo de consola

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

Con 200M+ jugadores de Xbox y PlayStation, las consolas presentan una gran oportunidad para que atraigas a más usuarios.En comparación con los dispositivos regulares, diseñar para controladores y la experiencia de usuario de 10 pies de las consolas tiene algunas directrices especiales que debe seguir para ayudar a que su experiencia tenga éxito en las consolas.

Diseño para controladores

Las experiencias de consola reciben comandos de los usuarios a través de controladores de entrada, que requieren diseños especiales para interacciones suaves.

Simplifica la interfaz de usuario

Aplica lo siguiente para simplificar el diseño de la interfaz de usuario para consolas:

  • Control de navegación accesible : Navegación de línea base, que incluye las cuatro direcciones, elegiry volver, controla cómo los usuarios se mueven y interactúan con su contenido en las consolas.Asegúrate de que los usuarios puedan acceder a todos los elementos de la interfaz de usuario usando estos controles de navegación básicos, para que puedan acceder fácilmente a cada parte interactiva de tu experiencia.

  • Navegación predeterminada del controlador : Aunque los usuarios pueden acceder a los menús de la interfaz de usuario activando el cursor virtual, dado que no todos los usuarios están familiarizados con el proceso, debe admitir la navegación del controlador de su interfaz como la opción predeterminada en lugar de requerir que los usuarios activen el cursor virtual.

  • Complejidad mínima de la entrada del controlador : A diferencia de los métodos de entrada táctiles o haciendo clic, los usuarios de la consola navegan presionando un botón a la vez, por lo que una acción que tome un movimiento en otros dispositivos puede tomar movimientos adicionales con un Control (ES_MX).Asegúrese de que las acciones clave en su experiencia solo tomen unos pocos movimientos para acceso.

  • Sin ventana de chat : Independientemente de si usa el sistema de chat de texto predeterminado en la experiencia o fork el sistema de chat legado como su sistema de chat personalizado, desactive la ventana de chat para las experiencias de consola.

Añadir control complementario

A diferencia de móviles y escritorios, la navegación siempre es secuencial en las consolas, por lo que los usuarios no pueden saltar entre elementos distantes tan rápidamente como en otros dispositivos.Para mejorar la velocidad de navegación, considera agregar botones adicionales y atajos para acciones esenciales en la experiencia.

Acomodar iconos de botón dinámico

A medida que tu experiencia se expande a más plataformas, asegúrate de mostrar los iconos de botón que coincidan con diferentes dispositivos.UserInputService tiene dos métodos disponibles que pueden lograr esto:

  • UserInputService:GetStringForKeyCode() puede convertir los códigos de clave de consulta de EE.UU. en diseños de teclado de consola.Es útil para mostrar tus recursos personalizados como iconos de botón para que coincidan con el aspecto y la sensación de tu experiencia.El siguiente ejemplo muestra cómo puedes mapear recursos personalizados para Enum.KeyCode.ButtonA :

    Mapear recursos personalizados

    local UserInputService = game:GetService("UserInputService")
    local imageLabel = script.Parent
    local key = Enum.KeyCode.ButtonA
    local mappings = {
    ButtonA = "rbxasset://BUTTON_A_ASSET", -- Reemplazar con el recurso ButtonA deseado
    ButtonCross = "rbxasset://BUTTON_CROSS_ASSET" -- Reemplazar con el recurso ButtonCross deseado
    }
    local mappedKey = UserInputService:GetStringForKeyCode(key)
    local image = mappings[mappedKey]
    imageLabel.Image = image
  • UserInputService:GetImageForKeyCode() devuelve los iconos predeterminados de Roblox para el código de clave solicitado como reemplazos fáciles de insertar, como el siguiente ejemplo para mostrar el mapeo Enum.KeyCode.ButtonA :

    Mapear iconos predeterminados

    local UserInputService = game:GetService("UserInputService")
    local imageLabel = script.Parent
    local key = Enum.KeyCode.ButtonA
    local mappedIcon = UserInputService:GetImageForKeyCode(key)
    imageLabel.Image = mappedIcon

Proporcionar comentarios opinión

Una ventaja única de los controladores es la capacidad de proporcionar retroalimentación háptica al vibrar físicamente el controlador para involucrar el sentido del tacto de los usuarios.Puedes usar HapticService para mejorar la inmersión del usuario y proporcionar opiniónútiles.Ejemplos que pueden ser más inmersivos con retroalimentación háptica incluyen:

  • Acontecimientos físicamente dramáticos, como explosiones o colisiones.
  • Eventos que requieren la atención del usuario, como un timbre de puerta o un nuevo cliente que entra a la comprar.
  • Notificaciones de acciones de la interfaz de usuario, como desplazarse al final de una lista o hacer clic en un botón deshabilitado.

HapticService también te permite controlar los motores individuales en un controlador para establecer la intensidad y la duración de las vibraciones de forma individual, para que puedas establecer diferentes vibraciones para diferentes propósitos y mantener la consistencia con la cual las acciones activan la opinión.Diseña hápticos con cuidado y evita el uso excesivo, ya que los usuarios pueden encontrar vibraciones constantes desagradables y molestas.

Construir para la experiencia de 10 pies

Cuando están en las consolas, los usuarios están típicamente sentados a 10 pies de la pantalla.Un factor de escala de 1.5x garantiza que la interfaz de usuario sea cómoda, fácil de barra de navegacióny con fuentes legibles.

Considerar área segura de TV

An example illustration showing the dimensions of the TV-safe and unsafe zone.
La zona azul representa la zona no segura de la TV.

Dado que no todas las televisiones muestran el contenido completamente a los bordes de la pantalla debido a limitaciones históricas y técnicas, coloca elementos de interfaz de usuario en áreas seguras para la televisión para asegurarte de que los elementos importantes de la experiencia sean visibles en varias televisiones.

Implementar la interfaz de usuario de tamaño dinámico

Implementa tu interfaz de usuario usando tamaños relativos y posiciones relativas para medir todo como porcentajes de un marco.Incorporar un factor de escala a todas las dimensiones de la interfaz de usuario por:

  • Desarrollar para resoluciones más bajas primero.
  • Usando posiciones relativas y UISizeConstraint para escalar la interfaz de usuario.
  • Escalado basado en las características de salida con GuiService:IsTenFootInterface() .
  • Implementar ScrollingFrame para reducir el desorden en la pantalla a medida que aumenta la interfaz de usuario.

Adaptar la divulgación progresiva

La divulgación progresiva delega funciones avanzadas o poco utilizadas a una pantalla secundaria.Es una de las mejores maneras de despejar tu interfaz de usuario y hacerla fácil de usar.Para la experiencia de usuario de la Experiencia de usuario, es común y más rápido tener al usuario ir y salir de las pantallas en lugar de encajar todo en una pantalla como diseñar para escritorios.

Proporcionar comentarios de opinión

A diferencia de las interfaces de escritorio o móvil, en las que las interacciones suelen ser silenciosas o dependen de un sutil opiniónháptico, puedes agregar efectos de sonido para mejorar las interacciones de la consola.Cuando los usuarios navegan por la interfaz de usuario usando un Control (ES_MX), considere incorporar efectos de sonido para confirmar las selecciones o la navegación por el menú de señales, lo que puede elevar la experiencia general.