Přímá manipulace pomocí rukou
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
Stisknutí jedním prstem
Klepnutí jedním prstem
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 poblíž
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)
Když je ukazováček v rozsahu, na povrch ohraničujícího rámečku se přehodí spotlight prstu.
Hover (v okolí)
Když se prst přiblíží k povrchu, spotlight se zmenší.
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
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.
Prst je daleko
Přiblížení prstem
Kontakt začíná
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í
Pomocí ukazováčku můžete stisknout hypertextový odkaz nebo tlačítko.
Posuv
Pomocí ukazováčku můžete posouvat obsah v tabulce nahoru a dolů.
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í
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.
Škálování
Uchopte cenové úrovně manipulace a provádějte jednotné měřítko podle cen v rohu.
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.
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.
Otočit
Uživatelé můžou střídat možnosti hran.
Š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.
Malý objekt
Střední objekt
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.