Punta e commit con le mani
Il punto e il commit con le mani è un modello di input che consente agli utenti di scegliere come destinazione, selezionare e modificare contenuti 2D e 3D fuori portata. Questa tecnica di interazione "lontana" è unica per la realtà mista perché gli esseri umani non interagiscono naturalmente con il mondo reale in questo modo. Ad esempio, nel film super eroe , X-Men, il personaggio Magneto può manipolare oggetti lontani in lontananza con le sue mani. Questo non è qualcosa che gli esseri umani possono fare nella realtà. Sia in HoloLens (AR) che in Realtà mista (MR), offriamo agli utenti questo potere magico per rompere il vincolo fisico del mondo reale. Non solo è un'esperienza olografica divertente, ma rende anche le interazioni degli utenti più efficaci ed efficienti.
Supporto dei dispositivi
Modello di input | HoloLens (prima generazione) | HoloLens 2 | Visori vr immersive |
Punta e commit con le mani | ❌ Non supportato | ✔️ Raccomandato | ✔️ Raccomandato |
"Punta e commit con le mani" è una delle nuove funzionalità che usano il nuovo sistema di tracciamento delle mani articolato. Questo modello di input è anche il modello di input principale nei visori vr immersive usando controller di movimento.
Raggi della mano
In HoloLens 2, abbiamo creato un raggio della mano che spara dal centro del palmo dell'utente. Questo raggio viene trattato come un'estensione della mano. Un cursore a forma di ciambella viene collegato alla fine del raggio per indicare la posizione in cui il raggio si interseca con un oggetto di destinazione. L'oggetto su cui viene posizionato il cursore può quindi ricevere comandi gestuali dalla mano.
Questo comando gestuale di base viene attivato usando il pollice e il dito indice per eseguire l'azione di tocco dell'aria. Usando il raggio della mano per puntare e il tocco aereo per eseguire il commit, gli utenti possono attivare un pulsante o un collegamento ipertestuale. Con più movimenti compositi, gli utenti possono esplorare il contenuto Web e modificare gli oggetti 3D da una distanza. La progettazione visiva del raggio della mano deve anche reagire a questi stati di commit e punto, come descritto e illustrato di seguito:
Stato di puntamento
Nello stato di puntamento , il raggio è una linea tratteggiata e il cursore è una forma ad anello.
Stato commit
Nello stato commit , il raggio si trasforma in una linea continua e il cursore si riduce a un punto.
Transizione da vicino a lontano
Invece di usare movimenti specifici come "puntare con il dito indice" per indirizzare il raggio, abbiamo progettato il raggio per uscire dal centro del palmo degli utenti. In questo modo, abbiamo rilasciato e riservato le cinque dita per movimenti più manipolativi come pizzicare e afferrare. Con questa progettazione viene creato un solo modello mentale: lo stesso set di movimenti della mano viene usato sia per l'interazione vicina che per quella lontana. È possibile usare lo stesso movimento di afferramento per modificare gli oggetti a distanze diverse. La chiamata dei raggi è automatica e basata sulla prossimità come indicato di seguito:
Manipolazione vicina
Quando un oggetto si trova all'interno della lunghezza del braccio (circa 50 cm), i raggi vengono disattivati automaticamente, incoraggiando l'interazione quasi totale.
Manipolazione lontana
Quando l'oggetto è più lontano di 50 cm, i raggi vengono attivati. La transizione deve essere uniforme e uniforme.
Interazione con slate 2D
Uno slate 2D è un contenitore olografico che ospita il contenuto dell'app 2D, ad esempio un Web browser. Il concetto di progettazione per interagire di gran lunga con uno slate 2D è quello di usare i raggi della mano per puntare e toccare l'aria per selezionare. Dopo aver fatto riferimento a un raggio della mano, gli utenti possono trasmettere il tocco per attivare un collegamento ipertestuale o un pulsante. Possono usare una mano per "toccare e trascinare" per scorrere il contenuto dello slate verso l'alto e verso il basso. Il movimento relativo dell'uso di due mani per il tocco e il trascinamento dell'aria può ridurre e ridurre il contenuto dello slate.
La destinazione del raggio della mano agli angoli e ai bordi rivela l'offerta di manipolazione più vicina. Con gli inviti di manipolazione "afferra e trascina", gli utenti possono eseguire un ridimensionamento uniforme attraverso gli inviti degli angoli e possono ridisposizione dell'ardesia tramite gli inviti dei bordi. Afferrando e trascinando l'olobar nella parte superiore dell'ardesia 2D, gli utenti possono spostare l'intero ardesia.
Fare clic su
Scorrere
Zoom
Per la manipolazione dello slate 2D
- Gli utenti puntano il raggio della mano agli angoli o ai bordi per rivelare l'offerta di manipolazione più vicina.
- Applicando un movimento di manipolazione all'offerta, gli utenti possono eseguire un ridimensionamento uniforme attraverso l'offerta dell'angolo e possono ridisposizione dello slate tramite l'offerta perimetrale.
- Applicando un movimento di manipolazione sull'olobar nella parte superiore dell'ardesia 2D, gli utenti possono spostare l'intero ardesia.
Manipolazione di oggetti 3D
Nella manipolazione diretta, gli utenti possono modificare gli oggetti 3D in due modi: la manipolazione basata sull'offerta e la manipolazione non basata su inviti. Nel modello point and commit gli utenti possono eseguire esattamente le stesse attività tramite i raggi della mano. Non è necessario alcun apprendimento aggiuntivo.
Manipolazione basata su affordance
Gli utenti usano i raggi della mano per puntare e rivelare il riquadro delimitatore e gli inviti di manipolazione. Gli utenti possono applicare il movimento di manipolazione sul rettangolo di selezione per spostare l'intero oggetto, sulle offerte perimetrali da ruotare e sugli inviti dell'angolo per ridimensionare in modo uniforme.
Sposta
Ruotare
Scala
Manipolazione non basata su affordance
Gli utenti puntano con i raggi della mano per rivelare il rettangolo di selezione e quindi applicano direttamente i movimenti di manipolazione su di esso. Con una mano, la traslazione e la rotazione dell'oggetto sono associate al movimento e all'orientamento della mano. Con due mani, gli utenti possono tradurla, ridimensionarla e ruotarla in base ai movimenti relativi di due mani.
Gesti istintivi
Il concetto di gesti istintivi per punto e commit è simile a quello per la manipolazione diretta con le mani. I movimenti eseguiti dagli utenti su un oggetto 3D sono guidati dalla progettazione degli inviti dell'interfaccia utente. Ad esempio, un piccolo punto di controllo potrebbe motivare gli utenti a avvicinare le dita con il pollice e l'indice, mentre un utente potrebbe voler usare tutte le cinque dita per afferrare un oggetto più grande.
Oggetto di piccole dimensioni
Oggetto medio
Oggetto di grandi dimensioni
Progettazione simmetrica tra le mani e 6 controller DoF
Il concetto di punto e commit per l'interazione lontana è stato creato e definito per il portale di Realtà mista. In questo scenario, un utente indossa un visore VR immersivo e interagisce con gli oggetti 3D tramite controller di movimento. I controller di movimento sparano raggi per puntare e manipolare oggetti lontani. Nei controller sono presenti pulsanti per eseguire ulteriormente il commit di azioni diverse. Applichiamo il modello di interazione dei raggi e li applichiamo a entrambe le mani. Con questa progettazione simmetrica, gli utenti che hanno familiarità con MRP non dovranno apprendere un altro modello di interazione per puntare e manipolare lontano quando usano HoloLens 2 e viceversa.
Raggi controller
Raggi della mano
Raggio della mano in MRTK (Realtà mista Toolkit) per Unity
Per impostazione predefinita, MRTK fornisce un prefab a raggi della mano (DefaultControllerPointer.prefab) che ha lo stesso stato visivo del raggio manuale di sistema della shell. Viene assegnato nel profilo di input di MRTK, in Puntatori. In un visore vr immersiva, gli stessi raggi vengono usati per i controller di movimento.