Delen via


Bewegingen — MRTK2

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

Beide invoerbronnen gebruiken het profiel Instellingen voor beweging om respectievelijk de touch- en gebarengebeurtenissen van Unity om te zetten in de invoeracties van MRTK. Dit profiel vindt u onder het profiel Invoersysteeminstellingen .

Bewegingsprofiel

Gebaarsgebeurtenissen

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

Zie Voorbeeldscène voor een voorbeeld van een implementatie van een gebeurtenishandler voor bewegingen.

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

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

Volgorde van gebeurtenissen

Er zijn twee hoofdketens van gebeurtenissen, afhankelijk van gebruikersinvoer:

  • "Hold":

    1. Tik ingedrukt:
      • manipulatie starten
    2. Houd tikken voorbij HoldStartDuration:
      • wachtstand starten
    3. Tik op release:
      • volledige bewaring
      • volledige manipulatie
  • "Verplaatsen":

    1. Tik ingedrukt:
      • manipulatie starten
    2. Houd tikken voorbij HoldStartDuration:
      • wachtstand starten
    3. Ga met de hand verder dan NavigationStartThreshold:
      • wachtstand annuleren
      • navigatie starten
    4. Tik op release:
      • volledige manipulatie
      • navigatie voltooien

Voorbeeldscène

De scène HandInteractionGestureEventsExample (Assets/MRTK/Examples/Demos/HandTracking/Scenes) laat zien hoe u het aanwijzerresultaat gebruikt om een object op de locatie van de hit 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.