Gerakan — MRTK2
Gerakan adalah peristiwa input berdasarkan tangan manusia. Ada dua jenis perangkat yang meningkatkan peristiwa input gerakan di MRTK:
Perangkat Windows Mixed Reality seperti HoloLens. Ini menjelaskan gerakan mencubit ("Ketuk Udara") dan gerakan ketuk dan tahan.
Untuk informasi selengkapnya tentang gerakan HoloLens, lihat dokumentasi Windows Mixed Reality Gestures.
WindowsMixedRealityDeviceManager
membungkus Unity XR. WSA. Input.GestureRecognizer untuk mengonsumsi peristiwa gerakan Unity dari perangkat HoloLens.Perangkat layar sentuh.
UnityTouchController
membungkus kelas Unity Touch yang mendukung layar sentuh fisik.
Kedua sumber input ini menggunakan profil Gesture Pengaturan untuk menerjemahkan peristiwa Sentuhan dan Gerakan Unity masing-masing ke dalam Tindakan Input MRTK. Profil ini dapat ditemukan di bawah profil Pengaturan Sistem Input.
Peristiwa gerakan
Peristiwa gerakan diterima dengan mengimplementasikan salah satu antarmuka handler gerakan: IMixedRealityGestureHandler
atau IMixedRealityGestureHandler<TYPE>
(lihat tabel penanganan aktivitas).
Lihat Contoh Adegan untuk contoh implementasi penanganan aktivitas gerakan.
Saat menerapkan versi generik, peristiwa OnGestureCompleted dan OnGestureUpdated dapat menerima data jenis berikut:
Vector2
- Gerakan posisi 2D. Diproduksi oleh layar sentuh untuk menginformasikandeltaPosition
.Vector3
- Gerakan posisi 3D. Diproduksi oleh HoloLens untuk menginformasikan:cumulativeDelta
peristiwa manipulasinormalizedOffset
peristiwa navigasi
Quaternion
- Gerakan rotasi 3D. Tersedia untuk sumber input kustom tetapi saat ini tidak diproduksi oleh salah satu yang ada.MixedRealityPose
- Gabungan gerakan posisi/rotasi 3D. Tersedia untuk sumber input kustom tetapi saat ini tidak diproduksi oleh salah satu yang ada.
Urutan peristiwa
Ada dua rantai utama peristiwa, tergantung pada input pengguna:
"Tahan":
- Tahan ketuk:
- mulai Manipulasi
- Tahan ketuk di luar HoldStartDuration:
- mulai Penangguhkan
- Ketuk rilis:
- Penahanan selesai
- Manipulasi lengkap
- Tahan ketuk:
"Pindahkan":
- Tahan ketuk:
- mulai Manipulasi
- Tahan ketuk di luar HoldStartDuration:
- mulai Penangguhkan
- Pindahkan tangan di luar NavigationStartThreshold:
- batalkan Penangguhkan
- mulai Navigasi
- Ketuk rilis:
- Manipulasi lengkap
- Navigasi lengkap
- Tahan ketuk:
Contoh adegan
Adegan HandInteractionGestureEventsExample (Aset/MRTK/Contoh/Demos/HandTracking/Scenes) menunjukkan cara menggunakan Hasil pointer untuk menelurkan objek di lokasi hit.
GestureTester
Skrip (Aset/MRTK/Contoh/Demo/HandTracking/Script) adalah contoh implementasi untuk memvisualisasikan peristiwa gerakan melalui GameObjects. Fungsi handler mengubah warna objek indikator dan menampilkan peristiwa terakhir yang direkam dalam objek teks di adegan.