Hareketler — MRTK2
Hareketler, insan ellerine dayalı giriş olaylarıdır. MRTK'da hareket girişi olaylarını tetikleyen iki tür cihaz vardır:
HoloLens gibi Windows Karma Gerçeklik cihazları. Bu, sıkıştırma hareketlerini ("Air Tap") ve dokunma ve tutma hareketlerini açıklar.
HoloLens hareketleri hakkında daha fazla bilgi için Windows Karma Gerçeklik Hareketleri belgelerine bakın.
WindowsMixedRealityDeviceManager
Unity XR'yi sarmalar. WSA. HoloLens cihazlarından Unity'nin hareket olaylarını kullanmak için Input.GestureRecognizer .Dokunmatik ekran cihazları.
UnityTouchController
fiziksel dokunmatik ekranları destekleyen Unity Touch sınıfını sarmalar.
Bu giriş kaynaklarının her ikisi de Unity'nin Dokunma ve Hareket olaylarını sırasıyla MRTK'nın Giriş Eylemlerine çevirmek için Gesture Ayarlar profilini kullanır. Bu profil Giriş Sistemi Ayarlar profili altında bulunabilir.
Hareket olayları
Hareket olayları, hareket işleyicisi arabirimlerinden biri uygulanarak alınır: IMixedRealityGestureHandler
veya IMixedRealityGestureHandler<TYPE>
(bkz. olay işleyicileri tablosu).
Bir hareket olay işleyicisinin örnek uygulaması için örnek Sahne bölümüne bakın.
Genel sürümü uygularken, OnGestureCompleted ve OnGestureUpdated olayları aşağıdaki türlerde türlenmiş verileri alabilir:
Vector2
- 2B konum hareketi. Dokunmatik ekranlar tarafından kendilerindendeltaPosition
haberdar olmak için üretilir.Vector3
- 3B konum hareketi. HoloLens tarafından aşağıdakiler hakkında bilgi vermek için üretildi:cumulativeDelta
işleme olayınınnormalizedOffset
gezinti olayının
Quaternion
- 3B döndürme hareketi. Özel giriş kaynakları tarafından kullanılabilir ancak şu anda mevcut giriş kaynaklarından herhangi biri tarafından üretilmemiştir.MixedRealityPose
- Birleşik 3B konum/döndürme hareketi. Özel giriş kaynakları tarafından kullanılabilir ancak şu anda mevcut giriş kaynaklarından herhangi biri tarafından üretilmemiştir.
Olay sırası
Kullanıcı girişlerine bağlı olarak iki ana olay zinciri vardır:
"Basılı tut":
- Basılı tutun:
- düzenlemeyi başlatma
- HoldStartDuration'ın ötesinde basılı tutun:
- Beklemeyi başlat
- Sürüme dokunma:
- tam Ayrı Tutma
- tam Düzenleme
- Basılı tutun:
"Taşı":
- Basılı tutun:
- düzenlemeyi başlatma
- HoldStartDuration'ın ötesinde basılı tutun:
- Beklemeyi başlat
- Eli NavigationStartThreshold'un ötesine taşıma:
- Beklemeyi iptal et
- Gezintiyi başlat
- Sürüme dokunma:
- tam Düzenleme
- tamamlama Gezintisi
- Basılı tutun:
Örnek sahne
HandInteractionGestureEventsExample (Assets/MRTK/Examples/Demos/HandTracking/Scenes) sahnesi, bir nesneyi isabet konumunda ortaya çıkarırken işaretçi Sonucunun nasıl kullanılacağını gösterir.
GestureTester
(Assets/MRTK/Examples/Demos/HandTracking/Script) betiği, GameObjects aracılığıyla hareket olaylarını görselleştirmek için örnek bir uygulamadır. İşleyici işlevleri, gösterge nesnelerinin rengini değiştirir ve sahnedeki metin nesnelerinde son kaydedilen olayı görüntüler.