Bemeneti műveletek – MRTK2
Az Input Actions olyan absztrakciók a nyers bemenetekkel szemben, amelyek segítenek elkülöníteni az alkalmazáslogikát a bemenetet előállító konkrét bemeneti forrásoktól. Hasznos lehet például a Select művelet definiálása és leképezése a bal egérgombhoz, egy játékpadon lévő gombhoz és egy 6 DOF-vezérlőben lévő eseményindítóhoz. Ezután az alkalmazáslogika figyelheti a Bemeneti műveletek kiválasztása eseményeket ahelyett, hogy tisztában kellene lennie az összes olyan bemenettel, amely képes arra.
Bemeneti művelet létrehozása
A bemeneti műveletek a Bemeneti műveletek profilban vannak konfigurálva, a Mixed Reality Eszközkészlet összetevő bemeneti rendszerprofiljában, megadva a művelet nevét és a bemenetek típusát (tengelykényszer), amelyre leképezhető:
Ezek a leggyakrabban használt értékek a tengelykényszerhez:
Tengely kényszere | Description |
---|---|
Digitális | Be- és kikapcsolt bevitel, például bináris gomb egy játékpadon vagy egéren. |
Egytengelyes | Egytengelyes analóg bemenet, mint egy analóg trigger egy játékpadon. |
Kettős tengely | Kéttengelyes analóg bemenet, mint egy hüvelykujj. |
Hat dof | A 3D-s pózol a fordítással és a forgatással, mint a 6 DOF-vezérlő által gyártott. |
A teljes listát a következő helyen AxisType
találja: .
Bemenet hozzárendelése műveletekhez
A bemenetek és műveletek leképezésének módja a bemeneti forrás típusától függ:
Vezérlő bemenete
Nyissa meg a vezérlő bemeneti leképezési profilját a bemeneti rendszerprofil alatt. Itt megtalálja az összes támogatott vezérlő listáját:
Jelölje ki a konfigurálni kívántat, és megjelenik egy párbeszédpanel az összes vezérlőbemenettel, így mindegyikhez beállíthat egy műveletet:
Beszédbevitel
A Speech Command Profile (Beszédparancsprofil) bemeneti rendszerprofil területén található a jelenleg definiált beszédparancsok listája. Ha valamelyiket egy művelethez szeretné hozzárendelni, egyszerűen jelölje ki a Művelet legördülő listában.
Kézmozdulat bemenete
A Kézmozdulatok profil a beviteli rendszerprofil alatt az összes definiált kézmozdulatot tartalmazza. Mindegyiket hozzárendelheti egy művelethez, ha kiválasztja azt a Művelet legördülő listában.
Bemeneti műveletek kezelése
Figyelmeztetés
Jelenleg csak digitális típusú bemeneti műveletek kezelhetők az ebben a szakaszban ismertetett módszerekkel. Más művelettípusok esetén a megfelelő bemenetek eseményeit közvetlenül kell kezelnie. Ha például egy vezérlő bemenetére leképezett 6 DOF-műveletet szeretne kezelni, t = értékkel MixedRealityPose
kell használniaIMixedRealityGestureHandler<T>
.
A bemeneti műveletek kezelésének InputActionHandler
legegyszerűbb módja a szkript használata. Ez lehetővé teszi, hogy meghatározza a meghallgatni kívánt műveletet, és reagáljon az elindított és befejezett eseményekre a Unity Events használatával.
Ha több vezérlést szeretne, közvetlenül a szkriptben implementálhatja a IMixedRealityInputActionHandler
felületet. A kezelőfelületeken keresztüli eseménykezeléssel kapcsolatos további részletekért tekintse meg az Input Events (Bemeneti események ) szakaszt.
Példák
Tekintse meg MRTK/Examples/Demos/Input/Scenes/InputActions
a példajelenetet, amely bemutatja, hogyan hozhat létre egy műveletet, hogyan képezheti le vezérlőre, beszéd- és kézmozdulat-bemenetekre, és hogyan forgathat el egy objektumot a parancson.