Linee guida per lo sviluppo della console

*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.

Con oltre 200 milioni di giocatori Xbox e PlayStation, le console presentano un'opportunità importante per te di attirare più utenti. Rispetto ai dispositivi regolari, il progettazione per i controller e l'esperienza UI da 10 piedi hanno alcune linee guida che devi seguire per aiutare la tua esperienza a ottenere successo sulle console.

Progettazione per i controller

Le esperienze della console ricevono comandi dagli utenti tramite controllori di input, che richiedono progetti speciali per interazioni fluide.

Semplificare l'interfaccia utente

Applica quanto segue per semplificare il design dell'interfaccia utente per le console:

  • Controllo della navigazione accessibile : La navigazione di base, tra cui le quattro direzioni, la Selezionaree il Indietro, controlla come gli utenti si muovono e interagiscono con il tuo contenuto su le console. Assicurati che gli utenti possano accedere facilmente a tutti gli elementi UI utilizzando questi Controllidi navigazione di base, in modo da poter accedere facilmente a ogni parte interattiva della tua esperienza.

  • Navigazione del controller predefinita : Anche se gli utenti possono accedere ai menu dell'interfaccia utente attivando il cursore virtuale, poiché non tutti gli utenti sono a conoscenza del processo, è necessario supportare la navigazione del controller della tua interfaccia utente come opzione predefinita invece di richiedere agli utenti di attivare il cursore virtuale.

  • Minimal controller input complexity : a differenza dei metodi di input tattile o cliccabile, gli utenti della console navigano facendo clic su un pulsante alla volta, quindi un'azione che richiede un solo movimento su altri dispositivi potrebbe richiedere movimenti extra con un controller. Assicurati che le azioni chiave nella tua esperienza richiedono solo pochi movimenti per l'Accesso.

  • Nessuna finestra di chat : Indipendentemente dal fatto che tu abbia usato il sistema di chat in-experience predefinito o abbia foraggiato il sistema di chat legacy come tuo sistema di chat personalizzato, disabilita la finestra di chat per le esperienze di console.

Aggiungere controlli supplementari

A differenza dei dispositivi mobili e dei desktop, la navigazione è sempre sequenziale sui server, soユーザー不能跳过远离元素快速。 要提升速度的速度, considerare di aggiungere pulsanti e scorciatoie di navigazione per azioni essenziali in-experience。

Accomodamento dei pulsanti dinamici

Mentre la tua esperienza si espande su più piattaforme, assicurati di mostrare le icone dei pulsanti che corrispondono a dispositivi diversi. UserInputService ha due metodi disponibili che possono raggiungerlo:

  • Class.UserInputService::`Stampa di Class.UserInputService:`, `Stampa di Class.UserInputService:`, `Stampa di Class.UserInputService:`, `Stampa di Class.UserInputService:`, `Stampa di Class.UserInputService:`, `Stampa di Class.UserInputService:`, `Stampa di Class.UserInputService:`, `Stampa di Class.UserInputService:`, `Stampa di Class.UserInputService:`, `Stampa di Class.UserInputService:`, `Stampa di Class.UserInputService:`, `Stampa di
Mappa delle risorse personalizzate

local UserInputService = game:GetService("UserInputService")
local imageLabel = script.Parent
local key = Enum.KeyCode.ButtonA
local mappings = {
ButtonA = "rbxasset://BUTTON_A_ASSET", -- Sostituisci con la risorsa desiderata ButtonA
ButtonCross = "rbxasset://BUTTON_CROSS_ASSET" -- Rimpiazzare con la risorsa ButtonCross desiderata
}
local mappedKey = UserInputService:GetStringForKeyCode(key)
local image = mappings[mappedKey]
imageLabel.Image = image
  • UserInputService:GetImageForKeyCode() restituisce gli iconi predefiniti Roblox per il richiesto codice chiave come facili sostituzioni a caduta, come il seguente esempio per la mappatura Enum.KeyCode.ButtonA mostra:

    Mappa degli icone predefiniti

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

Fornire feedback tattile

Un unico vantaggio dei controller è la capacità di fornire feedback tattile facendo vibrare fisicamente il controller per coinvolgere il senso del tocco degli utenti. Puoi usare HapticService per migliorare l'immersione dell'utente e fornire Riscontro/Replicautili. Esempi che possono essere più coinvolgenti con il feedback tattile includono:

  • Eventi fisicamente drammatici, come esplosioni o collisioni.
  • Eventi che richiedono l'attenzione dell'utente, come un campanello di porta o un nuovo cliente che entra nel Negozio.
  • Notifiche dell'interfaccia utente, come lo scorrimento alla fine di una lista o il clic su un pulsante disabilitato.

HapticService ti consente inoltre di controllare i singoli motori in un controller per impostare l'intensità e la durata delle vibrazioni individualmente, in modo da poter impostare diverse vibrazioni per scopi diversi e mantenere la coerenza con cui le azioni attivano le Riscontro/Replica. Progetta haptics con attenzione e evita l'uso eccessivo, poiché gli utenti potrebbero trovare vibrazioni costanti e fastidiosi.

Costruzione per l'esperienza 10ft

Quando si trova su console, gli utenti di solito stanno seduti a 10 piedi di distanza dallo schermo. Un fattore di scala di 1,5x garantisce che l'interfaccia utente sia comoda, facile da Barra di navigazionee con caratteri leggibili.

Considerando l'area TV Safe-Area

An example illustration showing the dimensions of the TV-safe and unsafe zone.
La zona blu rappresenta la zona non sicura TV.

Poiché non tutti i TV mostrano il contenuto completamente agli bordi dello schermo a causa di limitazioni tecniche e storiche, metti gli elementi UI nelle aree TV-sicure per garantire che gli elementi importanti siano visibili su diversi TV.

Realizzazione UI a dimensione dinamica

Realizza la tua interfaccia utente utilizzando le dimensioni e le posizioni relative per misurare tutto come percentuali di un frame. Incorpora un fattore di scala a tutte le dimensioni dell'interfaccia utente per:

  • Sviluppo per le risoluzioni più basse prima.
  • Usando posizioni relative e UISizeConstraint per scalare l'interfaccia utente.
  • Scaling based on output characteristics with GuiService:IsTenFootInterface() .
  • Realizzazione di ScrollingFrame per ridurre lo spazio di fronte allo schermo mentre l'interfaccia utente si ingrandisce.

Adattamento della progressiva rivelazione

La progressiva rivelazione rimuove le funzionalità avanzate o raramente utilizzate su un'area secondaria dello schermo. È uno dei migliori modi per declutterizzare la tua UI e renderla facile da utilizzare. Per l'interfaccia utente UXconsole, è comune e più veloce avere l'utente andare in and out of schermo piuttosto che fare clic su tutto in uno schermo come progettare per i desktop.

Fornire feedback audio

A differenza delle interfacce desktop o mobile, in cui le interazioni sono tipicamente silenziose o basate su Riscontro/Replicatattile sottili, puoi aggiungere effetti sonori per migliorare le interazioni della console. Quando gli utenti navigano attraverso l'interfaccia utente utilizzando un controller, considera di incorporare effetti sonori per confermare le selezioni o il passaggio del menu segnale, che può elevare l'esperienza complessiva.