Bagikan melalui


Gerakan — MRTK2

Gerakan adalah peristiwa input berdasarkan tangan manusia. Ada dua jenis perangkat yang meningkatkan peristiwa input gerakan di MRTK:

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.

Profil Gerakan

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 menginformasikan deltaPosition.
  • Vector3 - Gerakan posisi 3D. Diproduksi oleh HoloLens untuk menginformasikan:
  • 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":

    1. Tahan ketuk:
      • mulai Manipulasi
    2. Tahan ketuk di luar HoldStartDuration:
      • mulai Penangguhkan
    3. Ketuk rilis:
      • Penahanan selesai
      • Manipulasi lengkap
  • "Pindahkan":

    1. Tahan ketuk:
      • mulai Manipulasi
    2. Tahan ketuk di luar HoldStartDuration:
      • mulai Penangguhkan
    3. Pindahkan tangan di luar NavigationStartThreshold:
      • batalkan Penangguhkan
      • mulai Navigasi
    4. Ketuk rilis:
      • Manipulasi lengkap
      • Navigasi lengkap

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.