Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Interfacce utente, il mapping

Esaminiamo le diverse tipologie di interfacce e di controller, per comprendere quale sia la migliore interazione uomo-macchina e mappare movimenti e azioni.
Esaminiamo le diverse tipologie di interfacce e di controller, per comprendere quale sia la migliore interazione uomo-macchina e mappare movimenti e azioni.
Link copiato negli appunti

Giocatore e giochi hanno una strana relazione. Il giocatore si immerge nel mondo di gioco, ma il mondo di gioco stesso non esiste se non nella sua mente. Il punto di contatto fra il giocatore ed un gioco si chiama interfaccia, ed è l'oggetto di questa lezione.

Cos'è un'interfaccia

Quando parliamo di interfaccia, normalmente pensiamo all'insieme di bottoni, testi, e controlli che compongono un software. L'idea non è sbagliata, ma con la parola interfaccia in realtà si possono indicare diverse parti dell'interazione uomo-macchina, non solo i pannelli di controllo virtuali.

Per essere precisi, dobbiamo dividere l'interfaccia in diverse parti, che si frappongono fra il giocatore ed il gioco: input fisico, output fisico, ed interfaccia virtuale:

Per input fisico, intendiamo qualunque apparato permetta al giocatore, con il proprio corpo, di fornire un input che modifichi lo stato del gioco. Sono input fisico gamepad, joypad, joystick, mouse, tastiere; ma anche microfoni, videocamere, sensori di movimento, accelerometri, giroscopi, touch screen, touch pad, ed altro. è probabile che in futuro in questa categoria ricadranno anche i sensori biometrici e di onde cerebrali.

Per output fisico si intendono schermi (inclusi quelli particolari come la realtà virtuale), altoparlanti, ma anche altre tecnologie come la vibrazione, impiegata ad esempio nei nuovi pad progettati da Valve per le sue Steam Machine, i quali impiegano sensori aptici.

È un “output fisico” anche quello ideato per Blood Sport (campagna su Kickstarter), un controller che prelieva sangue dal giocatore quando perde (!). Il gioco comunica al giocatore il fallimento di una sfida prelevando il suo sangue.

Infine, esiste quella che chiamiamo interfaccia virtuale, presente in minor o maggior quantità a seconda del caso. Capita infatti che ci siano momenti in cui il giocatore interagisce direttamente con il mondo di gioco attraverso input ed output fisici. Un esempio: attraverso una cloche si può guidare un aereo in gioco, il quale urtando degli ostacoli restituisce al giocatore un feedback attraverso la vibrazione.

Altre volte però, l'interazione col mondo di gioco non è diretta, ma passa per un'interfaccia virtuale. Questa a sua volta può essere divisa in input ed output: pulsanti a schermo, slider, menu a tendina, barre di scorrimento, sono elementi di input attraverso cui il giocatore effettua azioni indirette nel mondo di gioco, mentre indicatori di vita, bussole, mappe, punteggi, sono tutti elementi di output con i quali il mondo di gioco comunica al giocatore il suo stato attuale.

A volte questa membrana virtuale è quasi non esistente (si pensi ad esempio a Flower), altre volte è molto densa, piena di bottoni, icone, menu, e così via (si pensi agli MMO come World of Warcraft).

Mapping delle interfacce

Queste parti del tutto non si scambiano solo dati fra loro, ma lo fanno in una maniera particolare che dipende da come ogni controllo è stato abbinato in fase di design alla relativa funzione. Questo processo di abbinare controlli a funzioni (ovvero abbinare causa ad effetto) viene spesso chiamato mapping (mai sentita la frase “il mapping dei controlli è scomodo”?), e lo illustreremo con delle frecce fra le varie parti dell'interfaccia:

Alcuni esempi di queste relazioni e di possibili scenari:

Relazione Scenario
Input fisico > Mondo di gioco Se muovendo uno stick muovo il personaggio, il mapping indica quanto e come si muoverà: se spingo poco lo stick il personaggio si muove più lentamente, o no? Ha una accelerazione progressiva, o segue una velocità fissa? E se lo rilascio, si ferma istantaneamente?
Mondo di gioco > Output fisico Quanto posso vedere del mondo di gioco? Qual è il punto di vista? (prima, terza persona…). Oppure, per che eventi di gioco viene usata la vibrazione? Devo associarla ad un evento negativo, o ad uno positivo? (si pensi a Zelda in cui il controller vibra se si è in presenza di un segreto sepolto)
Input fisico > Interfaccia virtuale In un gioco per computer che accetta il gamepad, posso navigare l'intero gioco (inclusi i menu) con il gamepad, o mi viene richiesto di prendere il mouse in mano per cliccare su dei bottoni? Sembra stupido, ma questo è un errore che fanno molti giochi in Flash che usano la tastiera come controllo principale.
Interfaccia virtuale > Mondo di gioco Se l'utente usa un elemento dell'interfaccia virtuale, questi ha un effetto immediato e visibile sul mondo di gioco? Ad esempio in giochi come Mass Effect, selezionare una battuta in un dialogo modifica il mondo di gioco (avviene un'azione o un personaggio risponde), ma ha anche delle implicazioni invisibili (potrebbero venir modificate le relazioni fra i personaggi, cosa che si ripercuote più avanti nel gioco).
Mondo di gioco > Interfaccia virtuale Come viene riflesso lo stato del mondo di gioco nell'interfaccia? Esiste un'interfaccia per ogni fase di gioco? Ad esempio nei giochi RPG, di solito durante un combattimento appaiono nuovi menu per selezionare armi, attacchi, ecc.
Interfaccia virtuale > Output fisico Come viene rappresentata l'interfaccia virtuale agli occhi ed alle orecchie dell'utente? Colori, font, dimensione dei bottoni, sono tutte scelte estetiche ma che modificano l'interazione. In questo tipo di mapping ricade anche il caso in cui ad esempio un giocatore conferma una scelta in un menu ed un controller vibra.

Insomma, l'interazione fra le parti dell'interfaccia è complessa, ed è facile cadere nella trappola di adagiarsi su un mapping già visto in altri giochi, e replicarlo. La domanda che ogni designer dovrebbe porsi però, è se le metafore adottate per la sua interfaccia uomo-macchina siano giuste per il gioco in questione, o se si possa inventarne di nuove più adatte (o semplicemente innovative).

Controlli di input

Quando si tratta di realizzare il mapping fra input fisico ed il gioco, non tutti gli input si equivalgono. Vale la pena spendere due parole su come questi si differenzino in termini puramente meccanici, e cosa questo implica sull'input prodotto.

Ci sono tre caratteristiche principali che ci permettono di classificare i vari tipi di input:

  • La prima è la distinzione fra digitale e analogico. Un input digitale è un input che ammette solo valori sì/no, 0/1, e nessuna via di mezzo. Analogico, di contro, è un input che ha uno spettro di valori: può andare da 0 ad 1, passando da 0.1, 0.2, ecc. a seconda della precisione del sensore.
  • Secondo, le dimensioni. Esistono input monodimensionali, bidimensionali o tridimensionali, a seconda della quantità di assi che hanno.
  • Terzo, il punto di riferimento. Un input può essere assoluto, ovvero esiste uno stato che vale 0, ed un valore massimo. Oppure può essere relativo, ovvero non esistono valori assoluti ma solo incrementi. In pratica il valore dell'input non ha valori tipo 1, 20, 50, ma +1, -1, -10.

Vediamo alcuni esempi di input ed analizziamone le caratteristiche.

Stick Arcade o D-Pad

Gli stick arcade (come quelli delle sale giochi) o i D-pad (abbreviazione di “directional pad”), sono una delle più vecchie forme di input per effettuare movimenti.

Stick da sala e D-pad producono un input bidimensionale (asse verticale / orizzontale) con valori digitali.

Il D-Pad è un elemento che persiste ancora sui moderni gamepad, ma poiché ormai nel 90% dei giochi c'è necessità di un input analogico per il movimento, il D-Pad il più delle volte viene usato come se fossero quattro bottoni separati, adibiti ad altre funzioni. Lo svantaggio ovviamente è che sono bottoni mutualmente esclusivi, ovvero non si può premere Su e Giù allo stesso tempo.

Joystick, cloche, thumbstick, Circle Pad

Il joystick (e le sue evoluzioni) sono anch'essi usati per input relativo al movimento perché bidimensionale. A differenza dei d-pad però, producono un input analogico (spesso molto preciso, ovvero con tantissimi valori intermedi).

Atari_XE_joystick
PC_0020_Pro_0020_Flight_0020_2_0020_joystick_0020_2

Il thumbstick non è altro che una versione moderna di joystick o cloche da aereo, ed è quello che troviamo su qualunque controller moderno, spesso in coppia. La seconda immagine invece rappresenta il Circle Pad, ovvero un'altra evoluzione del thumbstick apparso con il 3DS di Nintendo, ma di fatto identico per caratteristiche.

Inoltre, joystick e parenti hanno una peculiarità: una volta rilasciati, tornano al centro, ovvero al valore 0. Per questo motivo, sono anche degli input assoluti: a differenza di un mouse, ad esempio, in ogni momento possiamo sapere quanto vale l'input, con valori che spesso vanno da -1 a +1 sui due assi.

Mouse, trackpad, trackball

Metodo di controllo principale dei sistemi operativi, i mouse sono un input che si adatta male ad essere mappato per il movimento di un personaggio, mentre performa meglio (com'è logico) dove l'interfaccia di gioco include un cursore, come negli strategici o negli FPS.

Wired-Optical-Mouse-LD-1141
trackpad

Mouse e trackpad sono input bidimensionali, digitali, e relativi.

Sarà quindi necessario che il giocatore intraprenda un'azione per produrre un effetto (trascinare il mouse), e dove non lo facesse, viene considerato come ‘nessun input', al contrario degli stick dove anche rilasciare lo stick è un'azione.

Il fatto che sia un input relativo però, porta ad una conseguenza interessante: si possono ottenere valori di input illimitati, e non limitati al range da -1 a +1 come per gli stick. Non bisogna lasciarsi confondere dal fatto che in fase di mapping poi spesso il mouse viene abbinato ad un cursore, che dovendo rimanere a schermo ha una posizione limitata e assoluta.

Touch screen

Un mondo a sé, il touch screen assomiglia un po' al mouse come interfaccia ed entrambi sono input digitali, ma è molto diverso in un aspetto: l'input è assoluto, perché limitato dai bordi dello schermo.

ps_vita_multitouch

Inoltre ha due assi, ma per ogni dito: uno schermo multitouch che supporti 5 dita ha di fatto 10 assi di valori da leggere. Se poi consideriamo le gesture, si aggiungono altri assi: ad esempio il gesto “pinch” (il pizzico) è un altro asse di valori in aggiunta alla posizione delle dita.

Un'altra considerazione interessante: quando più giocatori usano lo stesso touch screen, non c'è modo di sapere a quale giocatore appartiene un certo dito! Di conseguenza, spesso nei giochi multiplayer locali con il touch ci si ritrova a dividere lo schermo, o a far giocare i giocatori a turno.

In ultimo, alcuni device leggono anche la pressione di un tocco, oppure la approssimano calcolando l'area premuta da un dito (anche se è un metodo inpreciso, perché chiaramente chi ha le dita più grosse tende a coprire un'area più grossa). Questo è di fatto un terzo asse di valori, per ogni dito.

Sensori di movimento

Integrati ormai in ogni dispositivo mobile, tablet o anche nei pad di Wii, PS4, Wii U, ed altri, i sensori di movimento si dividono principalmente in due tipi.

Gli accelerometri, sono sensori che leggono l'accelerazione gravitazionale. Se il device è a riposo, il sensore leggerà una spinta verso il basso dovuta alla gravità, mentre se viene scosso rapidamente, leggerà un'accelerazione nella direzione opposta al movimento.

Sono input spesso tridimensionali (perché hanno 3 assi, ma non sempre), e forniscono valori assoluti. Sono anche molto imprecisi, e spesso i valori forniti “vibrano” dentro un certo range, cosa che li rende difficili da usare per controlli precisi.

Wii_Remote_Plus_blue_2_web
mobile-android-google-nexus-smart-tablet-phone-icon

I giroscopi sono sensori di movimento che leggono la rotazione del device. Anch'essi sono il più delle volte tridimensionali, ma sono relativi: non è possibile sapere com'è orientato un device in maniera assoluta, ma solo di quanto ha girato dall'ultima volta che è stato letto il valore.

Difatti, l'originale Wii Remote utilizzava la barra sensore in coppia con il sensore sulla punta del controller, per leggere l'orientamento del Wii Remote rispetto alla televisione.

Bottoni

I bottoni che popolano le nostre tastiere o i gamepad da console sono input monodimensionali e digitali.

Come detto in precedenza, un D-Pad si può utilizzare al posto di quattro bottoni, però i bottoni permettono combinazioni fra di loro, ed in generale hanno una risposta più rapida, il che li rende più adatti in caso di giochi rapidi come i giochi di lotta, nei quali le combo sono una parte fondamentale.

Esistono anche bottoni analogici: lanciati dal controller del GameCube, sono stati presenti nell'Xbox 360, nell'Xbox One, e su PS3 e PS4. Come dice il nome, sono bottoni che producono un input monodimensionale analogico. Spesso vengono chiamati “bottoni dorsali”.

In più, i bottoni del GameCube avevano un “click” finale, se premuti fino in fondo, combinando quindi input analogico con un input supplementare digitale. Questa caratteristica, quando usata bene, ha dato risultati molto interessanti: ad esempio nel gioco di Star Wars Rogue Leader, le navicelle acceleravano con il bottone R in maniera analogica, mentre quando veniva premuto a fondo, usavano una sorta di turbo per andare ancora più veloci. Questo è un buon esempio di mapping intuitivo.

Manopole, slider

Anche se in disuso, manopole e slider sono input analogici molto precisi.

Gli slider sono input monodimensionali e assoluti, con un range di valori dettato dalla dimensione dello slider. Sono rari, però appaiono ad esempio nelle plance da DJ come quella di DJ Hero.

-dj_hero_turntable_controller

Le manopole forniscono un valore monodimensionale, e relativo o assoluto a seconda se la manopola abbia o no un “fine corsa”. Anche il piatto del controller di DJ Hero mostrato sopra, ai fini della nostra analisi, può essere considerato una manopola.

Curiosamente se si pensa a Pong, in quel caso le manopole avevano valori infiniti, mentre a schermo la racchetta aveva solo un range finito di movimento. Un cattivo esempio di mapping? Forse, ma vogliamo perdonare il designer perché dopotutto all'epoca l'hardware usato non era stato progettato per Pong, ma adattato da un device esistente in laboratorio.

Ti consigliamo anche