Handmenu
Het handmenu is een van de meest unieke UX-patronen in HoloLens 2. Hiermee kunt u snel een met de hand gekoppelde gebruikersinterface openen. Omdat het op elk gewenst moment toegankelijk is en gemakkelijk kan worden weergegeven en verborgen, is het ideaal voor snelle acties.
In de onderstaande lijst vindt u onze aanbevolen aanbevolen procedures voor het werken met handmenu's. U kunt ook een voorbeeldscène vinden waarin het handmenu in MRTK wordt gedemonstreerd.
Aanbevolen procedures
Houd het aantal knoppen klein
Vanwege de korte afstand tussen een met de hand vergrendeld menu en de ogen, en de neiging voor gebruikers om zich op elk gewenst moment te concentreren op een relatief klein gezichtsgebied (de aandachtskegel van het gezichtsvermogen is ongeveer 10 graden), raden we aan het aantal knoppen klein te houden. Op basis van onze verkenning werkt één kolom met drie knoppen goed door alle inhoud binnen het weergaveveld (FOV) te houden, zelfs wanneer een gebruiker zijn handen naar het midden van de FOV verplaatst.
Handmenu gebruiken voor snelle actie
Het optillen van een arm en het in stand houden van de positie kan gemakkelijk leiden tot armmoeheid. Gebruik een met de hand vergrendelde methode voor het menu waarvoor een korte interactie is vereist. Als uw menu complex is en uitgebreide interactietijden vereist, kunt u overwegen om in plaats daarvan world-locked of body-locked te gebruiken.
Hoek van knop/paneel
Menu's moeten naar de tegenoverliggende schouder en het midden van het hoofd bewegen: Dit maakt een natuurlijke handbeweging mogelijk om te communiceren met het menu met de andere hand en vermijdt onhandige of ongemakkelijke handposities bij het aanraken van knoppen.
Overweeg om gebruik met één hand of handsfree te ondersteunen
Ga er niet vanuit dat beide handen van de gebruiker altijd beschikbaar zijn. Overweeg een breed scala aan contexten wanneer een of beide handen niet beschikbaar zijn en zorg ervoor dat uw ontwerp rekening houdt met deze situaties. Als u een handmenu met één hand wilt ondersteunen, kunt u proberen de menuplaatsing over te zetten van met de hand vergrendeld naar wereldvergrendeling wanneer de hand spiegelt (gaat palm omlaag). Voor handsfreescenario's kunt u een spraakopdracht gebruiken om het handmenu aan te roepen.
Vermijd het toevoegen van knoppen bij de pols (startknop van het systeem)
Als de knoppen van het handmenu te dicht bij de startknop worden geplaatst, kan deze per ongeluk worden geactiveerd tijdens interactie met het handmenu.
Menu Hand met grote en complexe ui-besturingselementen
Het wordt aanbevolen om het aantal knoppen of UI-besturingselementen in gekoppelde menu's te beperken. Dit komt omdat uitgebreide interactie met een groot aantal UI-elementen armmoeheid kan veroorzaken. Als uw ervaring een groot menu vereist, biedt u een eenvoudige manier voor de gebruiker om het menu te vergrendelen. Een techniek die we aanbevelen, is om het menu world-lock en vervolgens te vergrendelen wanneer de hand valt of wegklapt van de gebruiker. Een tweede techniek is om de gebruiker in staat te stellen het menu rechtstreeks met de andere hand te pakken. Wanneer de gebruiker het menu vrijgeeft, moet het menu worden vergrendeld. Op deze manier kan een gebruiker gedurende een langere periode comfortabel en vol vertrouwen communiceren met verschillende elementen van de gebruikersinterface.Wanneer het menu is vergrendeld, moet u een manier opgeven om het menu te verplaatsen en het menu sluiten wanneer het niet meer nodig is. Maak het menu beweegbaar door grepen aan de zijkanten of bovenkant van het menu aan te brengen. Voeg een knop Sluiten toe om het menu te sluiten. Toestaan dat het menu opnieuw aan de hand wordt gekoppeld wanneer de hand van de gebruiker naar de gebruiker kijkt. We raden u ook aan te vereisen dat de gebruikers naar hun hand staren om valse activeringen te voorkomen (zie hieronder).
Groot menu met een bruikbaarheidsprobleem
Wereld-vergrendeld menu op handdruppel
Handmatige greep & pull om het menu te vergrendelen
Valse activering voorkomen
Als u alleen palm-up als een gebeurtenis gebruikt om het handmenu te activeren, kan het per ongeluk verschijnen wanneer u het niet nodig hebt (fout-positief), omdat mensen hun handen opzettelijk (voor communicatie en objectmanipulatie) en onbedoeld bewegen. Om valse activeringen te verminderen, voegt u naast de palm-up-gebeurtenis een extra stap toe om het handmenu aan te roepen (zoals volledig geopende vingers of de gebruiker die opzettelijk naar zijn hand staart).
Platte palm vereisen
Door een platte open hand te vereisen, kunt u valse activering voorkomen die kan optreden wanneer de gebruiker objecten of bewegingen manipuleert tijdens de communicatie binnen een omgeving.
Staren vereisen
Door de gebruiker te verplichten naar zijn hand te staren (hetzij met oog- of hoofd staren), voorkomt het valse activeringen omdat de gebruiker zijn aandacht op de hand moet richten als een secundaire activeringsstap (met een drempel voor afstelbare afstand die wordt gebruikt om het comfort van de gebruiker mogelijk te maken).
Aanbevolen procedures voor plaatsing van handmenu's
In de menselijke anatomie is de ulnarzenuw een zenuw die in de buurt van het ulnabeen loopt. De ulna is een lang bot in de onderarm dat zich uitstrekt van de elleboog tot de kleinste vinger.
Hieronder staan twee aanbevolen plaatsingen op basis van onze verkenningen:
A. Ulnar binnen palm
Deze positie is betrouwbaar omdat de handen elkaar niet overlappen. Dit is essentieel voor nauwkeurige handdetectie en tracering.
B. Ulnar boven hand
Deze locatie is comfortabel voor gebruikers omdat ze hun arm niet te veel hoeven op te heffen om te communiceren met het handmenu. Wij raden u aan menu's 13 cm boven de palm te plaatsen en de knoppen in de ulnarpalm uit te lijnen.
Meer informatie over de optimale knopgrootte
Om technische redenen raden we deze locatie aan met één vereiste implementatie: de ontwikkelaar moet het menu blokkeren zodra de andere hand van de gebruiker er bijna mee kan werken. Hierdoor voorkomt u dat uw handen elkaar overlappen en kunt u de knoppen sneller richten.
HoloLens 2 camera's identificeren handen nauwkeurig wanneer ze van elkaar gescheiden zijn. Overlappende handen kunnen ertoe leiden dat handmenu's van de ankerlocatie worden verwijderd.
Menuposities die niet worden aanbevolen
We hebben gebruikersonderzoek gedaan met verschillende menu-indelingen en locaties, de volgende menulocaties worden NIET aanbevolen, vind de nadelen van elk onderzoek hieronder:
Boven de arm
1 - Moeilijk om goede handtracering te onderhouden
2 - Veroorzaakt vermoeidheid van de gebruiker vanwege onnatuurlijke positie
Boven vingers
1 - Handvermoeidheid vanwege het lang vasthouden van de hand
2 - Problemen met handtracering op index- en middelvingers
Boven-middelste palm
1 - Problemen met handtracering vanwege overlappende handen
2 - Handvermoeidheid vanwege het lange tijd vasthouden van handen om te communiceren met menu's
met vingertop
1 - Problemen met handtracering
2 - Handvermoeidheid van het vasthouden van de hand boven normale houding
3 - Problemen met het per ongeluk indrukken van knoppen met andere vingers vanwege beperkte ruimte tussen vingers
Achterkant van de arm
1 - Kan de startknop per ongeluk activeren
2 - Geen natuurlijke of comfortabele positie
Menu Hand in MRTK (Mixed Reality Toolkit) voor Unity
MRTK biedt scripts en voorbeeldscènes voor het handmenu. Met het oplosserscript HandConstraintPalmUp kunt u objecten aan de handen koppelen met verschillende configureerbare opties. Voorbeelden van het handmenu van MRTK zijn handige opties zoals platte palm en staren vereiste om valse activering te voorkomen.
U kunt handmenuvoorbeelden proberen in HoloLens 2 met de APP MRTK Examples Hub.