Kézmozdulatok – MRTK2

A kézmozdulatok emberi kézen alapuló bemeneti események. Az MRTK-ban kétféle eszköz emeli ki a kézmozdulat-beviteli eseményeket:

Mindkét bemeneti forrás a Kézmozdulatbeállítások profillal fordítja le a Unity Érintéses és Kézmozdulatos eseményeit az MRTK bemeneti műveleteibe. Ez a profil az Input System Settings (Beviteli rendszer beállításai ) profil alatt található.

Kézmozdulatprofil

Kézmozdulatesemények

A kézmozdulat-eseményeket az egyik kézmozdulatkezelő felület implementálásával fogadjuk: IMixedRealityGestureHandler vagy IMixedRealityGestureHandler<TYPE> (lásd az eseménykezelők táblázatát).

A példajelenet egy kézmozdulat-eseménykezelő implementációját szemlélteti.

Az általános verzió implementálásakor az OnGestureCompleted és az OnGestureUpdated események a következő típusú beírt adatokat fogadhatják:

  • Vector2 - 2D pozíció kézmozdulat. Érintőképernyők készítik, hogy tájékoztassák őket deltaPosition.
  • Vector3 - 3D pozíció kézmozdulat. Készítette: HoloLens:
  • Quaternion - Térbeli forgatási kézmozdulat. Egyéni bemeneti forrásokhoz érhető el, de jelenleg nem a meglévők állítják elő.
  • MixedRealityPose - Kombinált 3D pozíció/forgatás kézmozdulat. Egyéni bemeneti forrásokhoz érhető el, de jelenleg nem a meglévők állítják elő.

Események sorrendje

A felhasználói bemenettől függően két fő eseménylánc van:

  • "Hold":

    1. Tartsa lenyomva az ujját:
      • manipuláció indítása
    2. Tartsa lenyomva a koppintást a HoldStartDuration elemen kívül:
      • indítási visszatartás
    3. Kiadási koppintás:
      • teljes visszatartás
      • teljes manipuláció
  • "Áthelyezés":

    1. Tartsa lenyomva az ujját:
      • manipuláció indítása
    2. Tartsa lenyomva a koppintást a HoldStartDuration elemen kívül:
      • indítási visszatartás
    3. Vigye a kezét a NavigationStartThreshold fölé:
      • visszatartás megszakítása
      • navigálás indítása
    4. Kiadási koppintás:
      • teljes manipuláció
      • teljes navigáció

Példajelenet

A HandInteractionGestureEventsExample (Assets/MRTK/Examples/Demos/HandTracking/Scenes) jelenet bemutatja, hogyan lehet az Eredmény mutatóval objektumot létrehozni a találat helyén.

A GestureTester (Assets/MRTK/Examples/Demos/HandTracking/Script) szkript példaként használható a kézmozdulat-események GameObjects használatával történő megjelenítésére. A kezelőfüggvények megváltoztatják a mutatóobjektumok színét, és megjelenítik az utolsó rögzített eseményt a jelenet szövegobjektumaiban.