Přímá manipulace pomocí rukou

Tlačítko

Přímá manipulace je vstupní model, který zahrnuje dotyk hologramů přímo rukama. Myšlenka tohoto konceptu spočívá v tom, že se objekty chovají stejně jako ve skutečném světě. Tlačítka se dají aktivovat jednoduše jejich stisknutím, objekty se dají zachytit tak, že je uchopíte, a 2D obsah se chová jako virtuální dotykový displej. Přímá manipulace je založená na cenách, což znamená, že je uživatelsky přívětivá. Neexistují žádná symbolická gesta, která by uživatele učila. Všechny interakce jsou založené na vizuálním prvku, kterého se můžete dotknout nebo uchopit. Považuje se za "blízký" vstupní model v tom, že se nejlépe používá pro interakci s obsahem v dosahu ruky.

Podpora zařízení

Vstupní model HoloLens (1. generace) HoloLens 2 Imerzivní náhlavní soupravy
Přímá manipulace pomocí rukou ❌ Nepodporováno ✔️ Doporučené ➕ Podporovány. Pro uživatelské rozhraní doporučujeme místo toho ukázat a potvrdit pomocí rukou .

Přímá manipulace je primárním vstupním modelem pro HoloLens 2, který používá nový kloubový systém sledování rukou. Vstupní model je k dispozici také u imerzivních náhlavních souprav pomocí ovladačů pohybu, ale nedoporučuje se jako primární způsob interakce mimo manipulaci s objekty. Přímá manipulace není k dispozici na HoloLensu (1. generace).



Ukázka základního sledování rukou a instinktivní interakce

Pokud chcete vidět koncepty návrhu sledování hlavy a očí v akci, podívejte se na video s ukázkou návrhu hologramů – sledování hlavy a sledování očí níže. Až budete hotovi, pokračujte, abyste se podrobněji ponořili do konkrétních témat.

Toto video bylo převzato z aplikace "Navrhování hologramů" HoloLens 2. Stáhněte si a užijte si kompletní prostředí zde.

Schůdný prst

Na HoloLens 2 jsou ruce uživatele rozpoznány a interpretovány jako levé a pravé kosterní modely. Pro implementaci myšlenky přímého dotyku hologramů rukou by v ideálním případě mohlo být pět kolidátorů připevněno k pěti prstům každého modelu kostry ruky. Kvůli chybějící hmatové zpětné vazbě však může 10 schůdných prstů způsobit neočekávané a nepředvídatelné kolize s hologramy.

Doporučujeme, abyste na každý ukazováček dali pouze s collider. Schůdné prsty na indexu můžou stále sloužit jako aktivní dotykové body pro různá dotyková gesta zahrnující ostatní prsty. Mezi dotyková gesta patří stisknutí jedním prstem, klepnutí jedním prstem, stisknutí dvěma prsty a stisknutí pěti prsty, jak je znázorněno níže:

schůdný prst
Schůdný prst

Stisknutí jedním prstem
Stisknutí jedním prstem

Klepnutí jedním prstem
Klepnutí jedním prstem

Stisknutí pěti prsty
Stisknutí pěti prsty



Uchytáči koule

Místo použití náhodného obecného obrazce doporučujeme použít u kolider koule. Pak ho můžete vizuálně vykreslit a poskytnout tak lepší pomůcky pro blízké cílení. Průměr koule by se měl shodovat s tloušťkou ukazováčku, aby se zvýšila přesnost dotyku. Proměnnou tloušťky prstů je snazší načíst voláním rozhraní API pro ruku.

Kurzor prstu

Kromě vykreslení skládací koule na prstu indexu jsme vytvořili pokročilý kurzor prstu, abychom dosáhli lepšího prostředí pro blízké cílení. Je to kurzor ve tvaru prstence, který je připojený k prstu rejstříku. Podle blízkosti dynamicky reaguje na cíl z důvodu orientace a velikosti, jak je podrobně popsáno níže:

  • Když se ukazováček přesune k hologramu, je kurzor vždy rovnoběžný s povrchem hologramu a postupně se zmenšuje jeho velikost.
  • Jakmile se prst dotkne povrchu, kurzor se zmenší na tečku a vydá událost dotykového ovládání.

Pomocí interaktivní zpětné vazby můžou uživatelé dosáhnout vysoké přesnosti při cílení na úkoly, jako je například aktivace hypertextového odkazu nebo stisknutí tlačítka, jak je znázorněno níže.

Kurzor prstu daleko
Kurzor prstu daleko

Kurzor prstu poblíž
Kurzor prstu poblíž

Kontakt kurzoru prstu
Kontakt kurzoru prstu


Ohraničující rámeček s shaderem bezkontaktní komunikace

Samotný hologram také vyžaduje schopnost poskytovat vizuální i zvukovou zpětnou vazbu, aby se vykompenzovala chybějící hmatová zpětná vazba. K tomu vygenerujeme koncept ohraničujícího rámečku s blízkým shaderem. Ohraničující rámeček je minimální objemová oblast, která obklopuje 3D objekt. Ohraničující rámeček má interaktivní mechanismus vykreslování, kterému se říká shader bezkontaktní komunikace. Shader blízkosti se chová:

Najetí myší (daleko) s vizuální zpětnou vazbou
Najetí myší (daleko)
Když je ukazováček v rozsahu, na povrch ohraničujícího rámečku se přehodí spotlight prstu.

Najetí myší (blízko) s vizuální zpětnou vazbou
Hover (v okolí)
Když se prst přiblíží k povrchu, spotlight se zmenší.

Kontakt začíná
Kontakt začíná
Jakmile se prstem dotkne povrchu, celé ohraničující rámeček změní barvu nebo vygeneruje vizuální efekty, které odrážejí stav dotykového ovládání.

Konec kontaktu
Konec kontaktu
Můžete také aktivovat zvukový efekt, aby se zlepšila zpětná vazba k dotykovému ovládání.



Tlačítko pro stisknutí

Díky schůdným prstům jsou teď uživatelé připravení k interakci se základní komponentou holografického uživatelského rozhraní, jako je například stisknutelné tlačítko. Stisknutelné tlačítko je holografické tlačítko přizpůsobené pro přímé stisknutí prstem. Opět platí, že kvůli nedostatku hmatové zpětné vazby je možné stisknout tlačítko, které je vybaveno několika mechanismy pro řešení problémů souvisejících s hmatovou zpětnou vazbou.

  • Prvním mechanismem je ohraničující rámeček s blízkým shaderem, který je podrobně popsaný v předchozí části. Dává uživatelům lepší pocit blízkosti, když se přiblíží a najdou kontakt pomocí tlačítka.
  • Druhým mechanismem je deprese. Deprese vytváří pocit stisknutí poté, co prst kontaktuje tlačítko. Mechanismus zajišťuje, že se tlačítko pevně pohybuje prstem podél hloubkové osy. Tlačítko může být aktivováno, když dosáhne zvolené hloubky (při stisknutí) nebo opustí hloubku (při uvolnění) po průchodu.
  • Zvukový efekt by měl být přidán, aby se zlepšila zpětná vazba při aktivaci tlačítka.

stisknutelné tlačítko daleko
Prst je daleko

stisknutí tlačítka poblíž
Přiblížení prstem

začíná stisknutelný kontakt tlačítka
Kontakt začíná

stisknutí tlačítka
Zatlačte dolů



2D interakce s tabulí

2D slate je holografický kontejner, který slouží k hostování obsahu 2D aplikací, jako je webový prohlížeč. Koncept návrhu pro interakci s 2D plochou prostřednictvím přímé manipulace je stejný jako interakce s fyzickou dotykovou obrazovkou.

Interakce s tabulí kontaktu

Dotykové ovládání
Dotykové ovládání
Pomocí ukazováčku můžete stisknout hypertextový odkaz nebo tlačítko.

Posuv
Posuv
Pomocí ukazováčku můžete posouvat obsah v tabulce nahoru a dolů.

Zoom
Zoom
Dva ukazováčky uživatele se používají k přiblížení a oddálení obsahu tabule podle relativního pohybu prstů.

Pro manipulaci se samotnou 2D tabulí

Obrázek znázorňující funkci uchopte a přetáhněte
Přesunout
Posuňte ruce směrem k rohům a okrajům, abyste odhalili nejbližší možnosti manipulace. Uchopte holobar v horní části 2D štítu, který vám umožní přesunout celou tabuli.

Obrázek znázorňující funkci měřítka
Škálování
Uchopte cenové úrovně manipulace a provádějte jednotné měřítko podle cen v rohu.

Přeformátování
Přeformátování
Uchopte cenovou dostupnost manipulace a proveďte přeformátování prostřednictvím cen okrajů.



Manipulace s 3D objekty

HoloLens 2 umožňují uživatelům nasměrovat a manipulovat s 3D holografickými objekty pomocí ohraničujícího rámečku u každého 3D objektu. Ohraničující rámeček poskytuje lepší hloubkové vnímání prostřednictvím svojí blízkosti shaderu. U ohraničujícího rámečku existují dva přístupy k návrhu pro manipulaci s 3D objekty.

Manipulace na základě cenové dostupnosti

Manipulace s cenovou základnou umožňuje manipulovat s 3D objektem prostřednictvím ohraničujícího rámečku spolu s možnostmi manipulace kolem něj.

Obrázek znázorňující ohraničující rámeček objektů a funkci přesunutí
Přesunout
Jakmile je ruka uživatele blízko 3D objektu, zobrazí se ohraničující rámeček a nejbližší cenová dostupnost. Uživatelé můžou uchopit ohraničující rámeček a přesunout celý objekt.

Obrázek znázorňující, jak uživatel uchopí okraj objektu a otočí ho
Otočit
Uživatelé můžou střídat možnosti hran.

Obrázek znázorňující, jak uživatel chytá roh objektů za účelem škálování
Škálování
Uživatelé můžou vzít rohové cenové možnosti, aby se mohli škálovat jednotně.


Manipulace, která není založená na dostupnosti

Manipulace, která není založená na dostupnosti, nepřipojí k ohraničující rámeček cenovou dostupnost. Uživatelé můžou pouze zobrazit ohraničující rámeček a pak s ním přímo pracovat. Pokud je ohraničující rámeček uchopen jednou rukou, je překlad a otočení objektu spojené s pohybem a orientací ruky. Když je objekt uchopen dvěma rukama, mohou ho uživatelé překládat, měnit jeho měřítko a otáčet podle relativních pohybů dvou rukou.

Specifická manipulace vyžaduje přesnost. Doporučujeme používat manipulaci na základě cen, protože poskytuje vysokou úroveň členitosti. Pro flexibilní manipulaci doporučujeme používat manipulaci bez cenové dostupnosti , protože umožňuje okamžité a hravé prostředí.



Instinktivní gesta

S HoloLensem (1. generace) jsme uživatele naučili několik předdefinovaných gest, jako je rozkvetlý květ a klepnutí ve vzduchu. U HoloLens 2 nežádáme uživatele, aby si zapamatovali žádná symbolická gesta. Všechna požadovaná uživatelská gesta, kdy uživatelé potřebují pracovat s hologramy a obsahem, jsou instinktivní. Způsob, jak dosáhnout instinktivních gest, spočívá v tom, že uživatelům pomůžete provádět gesta prostřednictvím návrhu možností uživatelského rozhraní.

Pokud například uživatele doporučíme, aby chytil objekt nebo řídicí bod stažením dvěma prsty, měl by být objekt nebo řídicí bod malý. Pokud chceme, aby uživatel uchopil pět prsty, měl by být objekt nebo řídicí bod relativně velký. Podobně jako u tlačítek by malé tlačítko omezilo uživatele, aby ho stiskli jedním prstem. Velké tlačítko by uživatele povzbudilo, aby ho stiskli dlaněmi.

Obrázek znázorňující, jak uživatel chytá malý objekt k přesunutí
Malý objekt

Obrázek znázorňující, že uživatel uchopuje střední objekt k přesunutí
Střední objekt

Obrázek znázorňující, jak uživatel chytá velký objekt k přesunutí
Velký objekt




Symetrický návrh mezi rukama a 6 řadiči DoF

Možná jste si všimli, že existují paralely interakce, které můžeme kreslit mezi rukama v rozšířené realitě a ovladači pohybu ve VR. Oba vstupy lze použít k aktivaci přímé manipulace v příslušných prostředích. V HoloLens 2 funguje uchopení a tažení rukou v těsné vzdálenosti stejným způsobem jako tlačítko pro uchopení na ovladačích pohybu WMR. To uživatelům poskytuje znalost interakce mezi těmito dvěma platformami, což může být užitečné, pokud se někdy rozhodnete přenést aplikaci mezi platformami.



Optimalizace pomocí sledování očí

Přímá manipulace se může zdát kouzelná, pokud funguje tak, jak má. Ale může být také frustrující, pokud nemůžete nikam pohnout rukou, aniž byste neúmyslně spustili hologram. Sledování očí může pomoct lépe identifikovat záměr uživatele.

  • Kdy: Omezte neúmyslné spuštění reakce na manipulaci. Sledování očí umožňuje lépe pochopit, čím se uživatel aktuálně zabývá. Představte si například, že při procházení pročítáte holografický (instruktážní) text, abyste si vzali skutečný pracovní nástroj.

Tím omylem přesunete ruku po některých interaktivních holografických tlačítkách, které jste si předtím ani nevšimli. Může se například nacházet mimo zorné pole uživatele (FoV).

Pokud se uživatel nějakou dobu nedíval na hologram, ale přesto byla zjištěna událost dotyku nebo uchopení, je interakce pravděpodobně neúmyslná.

  • Která z nich: Kromě adresování falešně pozitivních aktivací je dalším příkladem lepší identifikace hologramů, které se mají pochytit nebo šťouchnout, protože přesný bod průsečíku nemusí být z vašeho pohledu jasný, zejména pokud je několik hologramů umístěných blízko sebe.

    I když má sledování očí na HoloLens 2 omezení v závislosti na tom, jak přesně dokáže určit pohled z očí, může to být stále užitečné pro blízké interakce, protože při interakci se vstupem rukou dochází k hloubkovým nepoměrům. To znamená, že je někdy obtížné určit, jestli je vaše ruka za nebo před hologramem, například kvůli přesnému uchopení pomůcky pro manipulaci.

  • Kde: Použijte informace o tom, na co se uživatel dívá, pomocí rychlých gest. Uchopte hologram a zhruba ho nahoďte směrem k zamýšlenému cíli.

    I když to někdy funguje, rychlé provádění gest rukou může vést k velmi nepřesným cílům. Sledování očí ale může zlepšit přesnost gesta.



Manipulace v MRTK (Mixed Reality Toolkit) pro Unity

Pomocí MRTK můžete snadno dosáhnout běžného chování při manipulaci pomocí skriptu ObjectManipulator. Pomocí ObjectManipulatoru můžete uchopovat a přesouvat objekty přímo rukou nebo pomocí paprsku rukou. Podporuje také manipulaci s oběma rukama pro změnu velikosti a otáčení objektu.


Viz také