Perkembangan realitas campuran: apakah Anda menempatkan speaker di ruang tamu virtual?

Kami melanjutkan serangkaian artikel di Windows Mixed Reality dan mengembangkan dari awal aplikasi realitas campuran Unity dalam format praktikum. Anda sendiri dapat, secara paralel dengan publikasi artikel, membuat aplikasi semacam itu. Pada bagian ini, kami mempertimbangkan dukungan pengontrol gerakan dan menambahkan cetakan prefab ke ruang tamu virtual.



Seluruh panduan akan terdiri dari 5 bagian. Itu akan diisi ulang setiap minggu. Di bawah ini Anda dapat pergi ke bagian yang Anda butuhkan.

Bagian 1: Ekspor aplikasi UWP untuk Windows Mixed Reality from Unity ;
Bagian 2: Mengatur lingkungan (VR) ;
Bagian 3: Pengendali ;
Bagian 4: Suara Spasial ;
Bagian 5: HoloLens dan Grafik .

Pengontrol


Pada tahap pelajaran praktis ini, kami akan membuat prefab speaker dan menambahkannya ke ruang tamu virtual. Kemudian kami menambahkan dukungan pengontrol gerak ke adegan kami sehingga pengguna dapat memindahkan dan memutar speaker.

Menambahkan speaker ke sebuah ruangan


  1. Buka folder Models di panel Project dan seret model Speaker3 ke panel Hierarchy sehingga model ini menjadi objek root, dan bukan anak dari salah satu objek scene.
  2. Ganti nama speaker dengan mengklik kanan padanya dan pilih Ubah nama. Sebut namanya Speaker.
  3. Pilih objek Speaker di tempat kejadian, kemudian di panel Inspektur mengubah properti transformasi berikut:

  • atur parameter Scale ke (0,02; 0,02; 0,02);
  • atur parameter Posisi ke (2.68; 0.14; 2).



Menambahkan dukungan pengontrol


Sebelumnya, ketika kami menerapkan parameter Realitas Campuran ke adegan kami, kami menambahkan dukungan untuk pengontrol gerakan.

Mari kita ingat bagaimana parameter ini memengaruhi operasi pengontrol gerak dalam adegan kita.

  • Elemen MixedRealityCameraParent yang kami tambahkan memiliki objek turunan bernama MotionControllers, dan memiliki skrip MotionControllerVisualizer di dalamnya. Skrip ini memantau dan memvisualisasikan model pengontrol (mengubah posisinya, memutarnya, dan juga memproses input event).
  • Objek InputManager yang kami tambahkan mengharapkan kejadian input dari berbagai sumber. Di antara objek anaknya adalah objek untuk mouse (Mouse), input sentuh (Sentuh), gerakan (GesturesInput) dan Xbox. Objek GestureInput memiliki elemen InteractionInputSource yang menunggu peristiwa pengontrol gerakan dari InteractionManager. Ini adalah acara pengendali gerak yang akan digunakan untuk mengontrol pembicara kami.



Kontrol speaker


Agar pengguna dapat memindahkan dan memutar speaker, properti fisik harus ditambahkan ke dalamnya - maka kita dapat menentukan bahwa pandangan diarahkan pada speaker.

  1. Pilih objek Speaker di panel Hierarki untuk mengubah sifat dan perilakunya di panel Inspektur.
  2. Di panel Inspektur, klik Tambah Komponen, lalu temukan dan pilih komponen Box Collider.
  3. Dalam komponen Box Collider yang ditambahkan, setel properti Size ke (21, 20, 53) sehingga benar-benar mengelilingi speaker.

Selanjutnya, tambahkan perilaku Bounding Box dari toolkit Realitas Campuran:

1. Pada panel Proyek, navigasikan ke Holotoolkit → UX → Scripts → BoundingBoxes folder (Holotoolkit → UX → Scripts → Bounding Boxes), pilih skrip BoundingBoxRig.cs dan seret skrip ini ke panel Inspektur untuk menambahkannya ke komponen Pembicara

2. Karena kita tidak perlu mengubah skala speaker, parameter Scale Scale dapat diatur ke 0.

Komponen BoundingBoxRig menambahkan elemen alat ke objek game (dalam hal ini, pembicara). Menggunakan alat, pengguna dapat memutar, memindahkan dan skala objek menggunakan pengontrol gerakan atau gerakan HoloLens (sentuhan dan manipulasi).

3. Dengan objek Speaker dipilih, klik Tambah Komponen dan di kotak pencarian, masukkan Two Hand Manipulatable, lalu klik skrip yang disorot dalam hasil pencarian.

4. Atur Mode Manipulasi komponen ini ke Putar untuk mencegah speaker memperbesar.

Skenario ini memungkinkan Anda untuk mengontrol objek dengan dua tangan - menggunakan pengontrol gerakan atau menggunakan gerakan menekan dan menahan HoloLens.

5. Pada panel Proyek, temukan prefab BoundingBoxBasic di Aset → HoloToolkit → UX → Rak Prefab → folder BoundingBoxes (Sumber Daya → HoloToolkit → UX → Rak pabrikan → Bounding Boxes) dan seret ke properti Bounding Box Prefab dari skrip B Rig di objek Speaker.

6. Juga seret prefab BoundingBoxBasic ke properti Bounding Box Prefab dari komponen Two Hand Manipulateable.

BoundingBoxBasic cetakan mengandung elemen visual yang diberikan selama manipulasi, jadi kami menambahkannya ke setiap komponen.



7. Pada panel Project, cari prefab AppBarCustom di folder Asset -> Prefabs dan seret ke properti App Bar Prefab dari komponen Bounding Box Rig di speaker.

Kami membuat banyak perubahan. Pastikan panel Inspektur objek game Speaker terlihat seperti ini:



Meluncurkan aplikasi dan memindahkan speaker


Simpan adegan dan jalankan untuk memeriksa perubahan Anda.

Coba yang berikut ini:

  • pilih pengeras suara dan pindahkan (sinyal dari pengontrol Anda harus dimonitor);
  • Klik panel aplikasi pengeras suara untuk mengakses buncis yang memungkinkan Anda memutar pengeras suara.
  • ubah ukuran / skala speaker (jika sebelumnya Anda belum menonaktifkan fitur ini).

Asli

Penulis: Eric Ahlstrom, cbarkerms, Madison Hight

Source: https://habr.com/ru/post/id418661/


All Articles