Delen via


Bewegingen — MRTK2

Bewegingen zijn invoergebeurtenissen op basis van menselijke handen. Er zijn twee typen apparaten die beweginginvoergebeurtenissen genereren in MRTK:

Beide invoerbronnen gebruiken het gebaar Instellingen-profiel om respectievelijk de aanraak- en gebarengebeurtenissen van Unity te vertalen in de invoeracties van MRTK. Dit profiel vindt u onder het profiel Input System Instellingen.

Bewegingsprofiel

Gebarengebeurtenissen

Gebarengebeurtenissen worden ontvangen door een van de interfaces voor gebarenhandlers te implementeren: IMixedRealityGestureHandler of IMixedRealityGestureHandler<TYPE> (zie de tabel met gebeurtenis-handlers).

Zie Voorbeeldscène voor een voorbeeld van een implementatie van een gebaargebeurtenishandler.

Bij het implementeren van de algemene versie kunnen de gebeurtenissen OnGestureCompleted en OnGestureUpdated getypte gegevens van de volgende typen ontvangen:

  • Vector2 - 2D positie gebaar. Geproduceerd door aanraakschermen om hun deltaPositionte informeren .
  • Vector3 - 3D-positiebeweging. Geproduceerd door HoloLens om het volgende te melden:
  • Quaternion - 3D-draaibeweging. Beschikbaar voor aangepaste invoerbronnen, maar momenteel niet geproduceerd door een van de bestaande bronnen.
  • MixedRealityPose - Gecombineerde 3D-positie/draaibeweging. Beschikbaar voor aangepaste invoerbronnen, maar momenteel niet geproduceerd door een van de bestaande bronnen.

Volgorde van gebeurtenissen

Er zijn twee hoofdketens van gebeurtenissen, afhankelijk van gebruikersinvoer:

  • "Wachtstand":

    1. Tik ingedrukt:
      • manipulatie starten
    2. Houd tikken buiten HoldStartDuration:
      • wachtstand starten
    3. Tik vrij:
      • volledige bewaring
      • volledige manipulatie
  • "Verplaatsen":

    1. Tik ingedrukt:
      • manipulatie starten
    2. Houd tikken buiten HoldStartDuration:
      • wachtstand starten
    3. Hand verplaatsen buiten NavigationStartThreshold:
      • wachtstand annuleren
      • navigatie starten
    4. Tik vrij:
      • volledige manipulatie
      • volledige navigatie

Voorbeeldscène

De scène HandInteractionGestureEventsExample (Assets/MRTK/Examples/Demos/HandTracking/Scenes) laat zien hoe u het aanwijzerresultaat gebruikt om een object op de hitlocatie te maken.

Het GestureTester script (Assets/MRTK/Examples/Demos/HandTracking/Script) is een voorbeeld van een implementatie om gebarengebeurtenissen te visualiseren via GameObjects. De handlerfuncties wijzigen de kleur van indicatorobjecten en geven de laatst opgenomen gebeurtenis weer in tekstobjecten in de scène.