A szemkövetés első lépései az MRTK2-ben
Ez az oldal bemutatja, hogyan állíthatja be Unity MRTK-jelenetét úgy, hogy szemkövetést használjon az alkalmazásban. Az alábbi dokumentum feltételezi, hogy egy új jelenettel kezd. Másik lehetőségként megtekintheti a már konfigurált MRTK szemkövető példákat , amelyeken rengeteg nagyszerű példa található, amelyekre közvetlenül építhet.
Szemkövetési követelmények ellenőrzőlistája
Ahhoz, hogy a szemkövetés megfelelően működjön, a következő követelményeknek kell teljesülniük. Ha még csak most ismerkedik a HoloLens 2 szemkövetési funkcióval, és hogy hogyan van beállítva a szemkövetés az MRTK-ban, ne aggódjon! A következő szakaszokban részletesen ismertetjük, hogyan lehet őket részletesebben kezelni.
- A bemeneti rendszerhez hozzá kell adni egy "Szemnézet adatszolgáltatót" . Ez az adatszolgáltató szemkövetési adatokat biztosít a platformról.
- A "GazeInput" képességet engedélyezni kell az alkalmazásjegyzékben. Ez a képesség beállítható a Unity 2019-ben, de a Unity 2018-ban és a korábbi verziókban ez a képesség csak a Visual Studióban és az MRTK buildelési eszközén keresztül érhető el.
- A HoloLens-t szemre kell kalibrálni az aktuális felhasználó számára. Tekintse meg a mintát annak észleléséhez, hogy egy felhasználó szemkalibrált-e vagy sem.
Megjegyzés a GazeInput képességről
Az MRTK által biztosított buildelési eszközkészlet (Mixed Reality Toolkit - Utilities –>> Build Window) automatikusan lehetővé teszi a GazeInput képességet. A lépés elvégzéséhez győződjön meg arról, hogy a "Tekintet beviteli képessége" jelölőnégyzet be van jelölve az "Appx buildbeállítások" lapon:
Ez az eszközkészlet a Unity build befejezése után megkeresi az AppX-jegyzékfájlt, és manuálisan hozzáadja a GazeInput képességet. A Unity 2019 előtt ez az eszköz NEM aktív a Unity beépített buildablakának (Fájl –> Buildbeállítások) használatakor.
A Unity 2019 előtt a Unity buildablakának használatakor a képességet manuálisan kell hozzáadni a Unity buildelése után, az alábbiak szerint:
- Nyissa meg a lefordított Visual Studio-projektet, majd nyissa meg a "Package.appxmanifest" fájlt a megoldásban.
- Jelölje be a "GazeInput" jelölőnégyzetet a Képességek területen. Ha nem látja a "GazeInput" képességet, ellenőrizze, hogy a rendszer megfelel-e az MRTK használatának előfeltételeinek (különösen a Windows SDK-verziónak).
Megjegyzés: Ezt csak akkor kell megtennie, ha új buildmappába épít. Nem kell újra alkalmaznia a módosításokat, ha már létrehozta a Unity-projektet, és korábban beállította az appxmanifestet, és most ismét ugyanazt a mappát célozza meg.
Szemkövetés beállítása lépésről lépésre
A jelenet beállítása
A MixedRealityToolkit beállításához kattintson a menüsáv "Mixed Reality Eszközkészlet –> Konfigurálás... parancsára.
A szemkövetéshez szükséges MRTK-profilok beállítása
Az MRTK-jelenet beállítása után a rendszer megkéri, hogy válasszon profilt az MRTK-hoz. Válassza a DefaultMixedRealityToolkitConfigurationProfile lehetőséget, majd a "Másolás & Testreszabás" lehetőséget.
"Szempillantás adatszolgáltató" létrehozása
- Kattintson az MRTK-profil "Bemenet" fülére.
- Az alapértelmezett (DefaultMixedRealityInputSystemProfile) szerkesztéséhez kattintson a mellette lévő "Klónozás" gombra. Megjelenik a "Profil klónozása" menü. Kattintson a menü alján található "Klónozás" elemre.
- Kattintson duplán az új bemeneti profilra, bontsa ki a "Bemeneti adatszolgáltatók" elemet, majd válassza a "+ Adatszolgáltató hozzáadása" lehetőséget.
- Adja hozzá a megfelelő adatszolgáltatót:
- Örökölt Windows Mixed Reality
- A Típus területen válassza a "Microsoft.MixedReality.Toolkit.WindowsMixedReality.Input" ->'WindowsMixedRealityEyeGazeDataProvider' elemet.
- Windows XR beépülő modulhoz
- A Típus területen válassza a "Microsoft.MixedReality.Toolkit.XRSDK.WindowsMixedReality" ->'WindowsMixedRealityEyeGazeDataProvider' lehetőséget.
- OpenXR esetén
- A Típus területen válassza a "Microsoft.MixedReality.Toolkit.XRSDK.OpenXR" ->'OpenXREyeGazeDataProvider' lehetőséget.
- Örökölt Windows Mixed Reality
"Szemkövetési adatok használata" engedélyezése
- Lépjen az MRTK konfigurációs profiljához –>'Input' ->'Pointers'
- Klónozza a DefaultMixedRealityInputPointerProfile parancsot a módosítások végrehajtásához.
- Keresse meg a "Szemkövető adatok használata" lehetőséget a beállítások között, és engedélyezze azokat.
- Előfordulhat, hogy megjelenik a "GazeInput képesség beállítása" gomb, és meg kell nyomnia az UWP-képesség engedélyezéséhez.
Szemkövetés szimulálása a Unity Szerkesztőben
A Szemkövetés bemenetét szimulálhatja a Unity Szerkesztőben, így meggyőződhet arról, hogy az események megfelelően aktiválódnak, mielőtt üzembe helyezené az alkalmazást a HoloLens 2. A szem tekintet jelét a kamera helyének szem tekintetforrásként való használatával, a kamera előrevektorát pedig szemnézet irányának használatával szimuláljuk. Bár ez nagyszerű a kezdeti teszteléshez, vegye figyelembe, hogy nem jó utánzás gyors szemmozgásokhoz. Ehhez célszerűbb a szemalapú interakciók gyakori tesztelését biztosítani a HoloLens 2.
Szimulált szemkövetés engedélyezése:
- Kattintson az MRTK-konfigurációs profil "Bemenet" fülére.
- Innen lépjen az Input Data Providers -'Input Simulation Service ' (Bemeneti adatszolgáltatók) ->'Input Simulation Service' (Bemeneti szimulációs szolgáltatás) elemre.
- Klónozza a DefaultMixedRealityInputSimulationProfile parancsot a módosítások végrehajtásához.
- Válassza ki a megfelelő "Alapértelmezett szemnéz szimulációs mód" beállítást.
Alapértelmezett fejnézet-kurzor letiltása: Általában azt javasoljuk, hogy kerülje a szemkurzor megjelenítését, vagy ha feltétlenül szükséges, tegye nagyon finomsá. Javasoljuk, hogy alapértelmezés szerint rejtse el az MRTK-tekintet mutatóprofiljához csatolt alapértelmezett tekintetmutatót.
- Lépjen az MRTK konfigurációs profiljához –>'Input' ->'Pointers'
- Klónozza a DefaultMixedRealityInputPointerProfile parancsot a módosítások végrehajtásához.
- A "Mutatóbeállítások" felső részén egy láthatatlan kurzorelőtagot kell hozzárendelnie a "Tekintetkurzor előlapja" elemhez. Ezt az MRTK Foundation "EyeGazeCursor" előlapjának kiválasztásával teheti meg.
Szemalapú tekintet engedélyezése a tekintetszolgáltatóban
A HoloLens v1-ben a fej tekintetét használták elsődleges mutató technikaként. Bár a fej tekintete továbbra is elérhető az MRTK GazeProvider eszközén keresztül, amely a kamerához van csatolva, használhatja a szemnézetet a bemeneti mutatóprofil tekintetbeállításai között az "IsEyeTrackingEnabled" jelölőnégyzet bejelölésével.
Megjegyzés
A fejlesztők a "GazeProvider" "IsEyeTrackingEnabled" tulajdonságának módosításával válthatnak a szemalapú tekintet és a fejalapú tekintet között a kódban.
Fontos
Ha valamelyik szemkövetési követelmény nem teljesül, az alkalmazás automatikusan visszaesik a fej-alapú tekintetbe.
Szempillantás adatainak elérése
Most, hogy beállította a jelenetet a szemkövetés használatára, nézzük meg, hogyan érheti el azt a szkriptekben: Szemkövetési adatok elérése az EyeGazeProvider ésa szem által támogatott célkijelölések használatával.
A Unity-alkalmazás tesztelése egy HoloLens 2
Az alkalmazás szemkövetéssel való létrehozásának hasonlónak kell lennie ahhoz, ahogyan más HoloLens 2 MRTK-alkalmazásokat fordítana le. Győződjön meg arról, hogy engedélyezte a "Tekintet bemenete" funkciót a GazeInput képesség A megjegyzése című szakaszában leírtak szerint.
Győződjön meg arról, hogy a projekt konfigurálva van HoloLens 2
Győződjön meg arról, hogy megfelelően konfigurálta a projektet. Ehhez tekintse át az OpenXR-projekt beállítása AZ MRTK-val című témakör konfigurációs lépéseit.
A legfontosabb szempontok:
- Tekintse át a kulcsbeállításokat a Projektbeállítások ablakban.
- Győződjön meg arról, hogy a beépülő modulok szolgáltatói megfelelően vannak beállítva
- A figyelmeztető háromszögek feloldása.
- Az interakciós profilokat be kell állítani
- Az OpenXR szolgáltatáscsoportokat megfelelően kell kijelölni
Szemkalibrálás
Ne felejtse el átfutni a szem kalibrálását a HoloLens 2. A szemkövető rendszer nem ad vissza bemenetet, ha a felhasználó nincs kalibrálva. A kalibrációhoz a legegyszerűbben úgy juthat el, ha felfelé, majd visszafelé fordítja a visort. Megjelenik egy rendszerértesítés, amely új felhasználóként üdvözli Önt, és megkéri, hogy menjen végig a szem kalibrálásán. A szem kalibrálását a rendszerbeállítások között is megtalálhatja: Beállítások > Rendszerkalibrálás > Szemkalibrálás > futtatása.
Szemkövetési engedély
Amikor első alkalommal indítja el az alkalmazást a HoloLens 2, fel kell jelennie egy üzenetnek, amely engedélyt kér a felhasználótól a szemkövetés használatára. Ha a kérdés nem jelenik meg, az általában azt jelzi, hogy a "GazeInput" képesség nincs beállítva.
Miután az engedélykérés egyszer megjelent, nem jelenik meg automatikusan. Ha "megtagadta a szemkövetési engedélyt", ezt alaphelyzetbe állíthatja a Beállítások –> Adatvédelem –> Alkalmazások területen.
Ezzel megkezdheti a szemkövetés használatát az MRTK Unity alkalmazásban. Ne felejtse el megnézni az MRTK szemkövető oktatóanyagait és mintáit , amelyek bemutatják, hogyan használhatja a szemkövetési bemenetet, és kényelmesen biztosíthatja a projektekben újra felhasználható szkripteket.
Vissza a következőhöz: "Szemkövetés a MixedRealityToolkitban"