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 200M+ giocatori di Xbox e PlayStation, le console presentano una grande opportunità per attirare più utenti.Rispetto ai dispositivi regolari, progettare per controller e l'esperienza utente da 10 piedi delle console ha alcune linee guida speciali che devi seguire per aiutare la tua esperienza a avere successo sulle console.

Progettazione per controller

Le esperienze della console ricevono comandi dagli utenti attraverso i controller di input, che richiedono design speciali per interazioni lisce.

Semplifica l'UI

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

  • Controllo di navigazione accessibile : navigazione di base, incluse le quattro direzioni, seleziona e Indietro, controlla il modo in cui gli utenti si muovono e interagiscono con i tuoi contenuti su console.Assicurati che gli utenti possano raggiungere tutti gli elementi dell'interfaccia utente 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 familiari con il processo, è necessario supportare la navigazione del controller della tua interfaccia utente come opzione predefinita invece di richiedere agli utenti di attivare il cursore virtuale.

  • Complessità minima dell'input del controller : A differenza dei metodi di input tattili o cliccabili, gli utenti della console navigano premendo un pulsante alla volta, quindi un'azione che richiede un movimento su altri dispositivi potrebbe richiedere ulteriori movimenti con un controller.Assicurati che le azioni chiave nella tua esperienza richiedano solo pochi movimenti per Accesso.

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

Aggiungi controllo supplementare

A differenza di mobili e desktop, la navigazione è sempre sequenziale su console, quindi gli utenti non possono saltare tra elementi lontani così rapidamente come su altri dispositivi.Per migliorare la velocità di navigazione, considera l'aggiunta di pulsanti e scorciatoie aggiuntivi per le azioni essenziali nell'esperienza.

Accomodare le icone dei pulsanti dinamici

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

  • UserInputService:GetStringForKeyCode() può convertire i codici chiave della query statunitense in layout della tastiera della console.È utile per mostrare le tue risorse personalizzate come icone di pulsante per abbinare l'aspetto e la sensazione della tua esperienza.L'esempio seguente mostra come puoi mappare risorse personalizzate per Enum.KeyCode.ButtonA :

    Mappare 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 l'risorsaButtonA desiderato
    ButtonCross = "rbxasset://BUTTON_CROSS_ASSET" -- Sostituisci con l'risorsaButtonCross desiderato
    }
    local mappedKey = UserInputService:GetStringForKeyCode(key)
    local image = mappings[mappedKey]
    imageLabel.Image = image
  • UserInputService:GetImageForKeyCode() restituisce le icone predefinite di Roblox per il codice chiave richiesto come sostituzioni facili da inserire, come l'esempio seguente per la mappatura Enum.KeyCode.ButtonA mostra:

    Mappare le icone predefinite

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

Fornire Riscontro/Replicatattile

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

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

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

Costruisci per l'esperienza di 10ft

Quando sulle console, gli utenti sono tipicamente seduti a 10 piedi di distanza dallo schermo.Un fattore di scala di 1.5x garantisce che l'interfaccia utente sia confortevole, facile da Barra di navigazionee con caratteri leggibili.

Considera l'area sicura della TV

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

Poiché non tutti i televisori mostrano pienamente i contenuti ai bordi dello schermo a causa di limitazioni storiche e tecniche, metti gli elementi dell'interfaccia utente negli spazi TV-safe per garantire che gli elementi importanti dell'esperienza siano visibili su diversi televisori.

Implementa l'interfaccia utente di dimensioni dinamiche

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

  • Sviluppare per risoluzioni più basse prima.
  • Utilizzando le posizioni relative e UISizeConstraint per ridimensionare l'interfaccia utente.
  • Scaling basato sulle caratteristiche di output con GuiService:IsTenFootInterface() .
  • Implementare ScrollingFrame per ridurre l'affollamento sullo schermo mentre l'interfaccia utente si ingrandisce.

Adatta la divulgazione progressiva

La divulgazione progressiva delega le funzionalità avanzate o raramente utilizzate a uno schermo secondario.È uno dei modi migliori per liberare la tua UI e renderla facile da usare.Per l'UX della console, è comune e più veloce avere l'utente che entra e esce dagli schermi piuttosto che adattare tutto su uno schermo come progettare per desktop.

Fornire Riscontro/Replicasonoro

A differenza degli interfacci desktop o mobili, su cui le interazioni sono tipicamente silenziose o si basano su un Riscontro/Replicatattile sottile, 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 la navigazione del menu dei segnali, che può elevare l'esperienza complessiva.