Latihan - Menambahkan skrip interaksi tangan ke objek

Selesai

Skrip ObjectManipulator mendukung modalitas "manipulasi langsung" dari model input "pengontrol tangan dan gerakan". Saat skrip dilampirkan ke objek, pengguna dapat memindahkan, menskalakan, atau memutar objek dengan tangan mereka. Dalam latihan ini, Anda akan membuat dua kubus, melampirkan skrip yang diperlukan padanya, kemudian memindahkan kubus tersebut.

Menambahkan dan menyesuaikan kubus pertama

  1. Di bilah menu, pilih GameObject>Objek 3D>Kubus.

    Screenshot of menu commands for adding the cube.

    Ukuran default kubus adalah satu meter persegi - ini terlalu besar untuk tujuan kita. Kita akan memperkecil ukurannya menjadi 20x20x20 cm.

  2. Pilih kubus, lalu di Pemeriksa, ubah nilai Transformasi/Skala kubus menjadi yang berikut ini:

    X = 0,2, Y = 0,2, Z = 0,2

    Kubus ditempatkan di scene pada posisi default (0,0,0). Ini berarti kubus berada pada posisi yang sama dengan headset pengguna, dan pengguna tidak akan dapat melihat kubus sampai mereka bergerak mundur. Kita akan mengubah nilai posisi kubus agar kubus berada di lokasi yang lebih baik untuk dilihat.

  3. Di Inspektur, ubah nilai Transformasi/Posisi kubus menjadi yang berikut ini:

    X = -0,2, Y = 1,6, Z = 0,5

    Screenshot of the cube's transform component after updates.

    Kita ingin bisa melihat tiga sisi kubus, jadi kita juga akan mengubah rotasi kubus.

    Catatan

    Tinggi kubus diatur ke 1,6 untuk mencocokkan ketinggian Kamera Offset pada MRTK XR Rig, menempatkannya kira-kira pada tingkat mata.

  4. Di Pemeriksa, ubah nilai Transformasi/Rotasi kubus menjadi berikut:

    X = 9, Y = 14, Z = 0

    Tip

    Untuk memperbesar tampilan kubus, pilih kubus, pastikan kursor diarahkan ke jendela Scene, lalu tekan tombol F. Anda dapat memperbesar tampilan objek apa pun dengan cara ini.

Menambahkan skrip ke kubus

Agar suatu objek "dapat dipegang" dengan tangan yang dilacak, tiga komponen berikut harus dilampirkan pada objek tersebut:

  • Komponen Collider (Anda tidak perlu melakukan apa pun di sini--Kubus Unity sudah memiliki Box Collider yang terlampir secara default)
  • Komponen Manipulator Objek (Skrip)
  1. Dengan kubus masih dipilih, di jendela Pemeriksa , pilih tombol Tambahkan Komponen , lalu cari dan pilih skrip Manipulator Objek.

    Screenshot of adding the Object Manipulator script.

    Skrip ObjectManipulator menjadikan objek bergerak, dapat diskalakan, dan dapat diputar menggunakan satu atau dua tangan. Saat Anda menambahkan skrip Manipulator Objek, skrip Manajer Batasan juga otomatis ditambahkan karena skrip Manipulator Objek bergantung padanya.

    Screenshot of the Constraint Manager script added to the cube.

Memperbarui materi kubus

Untuk tujuan performa, disarankan untuk menggunakan bahan MRTK alih-alih bahan Unity default.

  1. Dengan kubus masih dipilih, temukan bagian "Bahan" pada komponen Mesh Renderer.
  2. Ganti bahan default dengan bahan MRTK_Standard_White, yang terletak di bawah Bahan Aset>Standar MRTK.

Menambahkan kubus kedua

  1. Di Hierarki, klik kanan kubus, lalu pilih Duplikat. Kubus yang digandakan akan muncul dengan nama "Kubus (1)."

  2. Klik kanan kubus asli, pilih Ganti nama, lalu beri nama kubus "Kubus yang Dekat".

  3. Klik kanan kubus yang digandakan, pilih Ganti nama, lalu beri kubus tersebut nama "Kubus yang Jauh".

    Saat ini, sepertinya hanya ada satu kubus dalam tampilan Scene. Itu karena Kubus yang Dekat dan Kubus yang Jauh berada di tempat yang sama persis. Mari kita ubah posisi dan rotasi Kubus yang Jauh.

  4. Dengan Kubus yang Jauh masih dipilih, ubah nilainya di komponen Transformasi menjadi berikut:

    Posisi: X = 0,6, Y = 1,6, Z = 1,1

    Rotasi: X = 27, Y = 0, Z = 0

    Sekarang kamera akan melihat Kubus yang dekat di sebelah kiri dan Kubus yang Jauh sedikit lebih jauh di sebelah kanan. Untuk mengonfirmasi hal ini, di Hierarki, pilih Kamera Utama (di bawah MRTK XR Rig> Kamera Offset) lalu lihat jendela Kamera Utama di jendela Adegan.

    Screenshot of the Main Camera view in the Scene window.

    Tip

    Jika Anda ingin agar tampilan di jendela Scene lebih mirip dengan tampilan di kamera, gulir ke sekeliling di jendela Scene. Anda mungkin harus mengatur Hapus Bendera kamera ke Skybox jika bukan secara default.

Memegang dan memindahkan kubus dalam mode Putar

  1. Pilih tombol Putar. Saat proyek mulai diputar, tampilan beralih ke jendela Game.

    Screenshot of the Game window after entering Play mode.

    Catatan

    Sebelum Memutar, konfirmasikan bahwa ada Profil yang valid yang ditetapkan di bawah Project Pengaturan> MRTK3.

  2. Pilih tombol tiga titik di atas sudut kanan atas jendela Game lalu pilih Maksimalkan.

    Screenshot of Maximize command for the Game window.

  3. Tekan bilah spasi agar simulasi tangan kanan muncul di tampilan.

  4. Gerakkan simulasi tangan agar mendekat ke Kubus yang Dekat sampai tangan menyentuh kubus di samping atau bawah.

    Screenshot of the simulated right hand touching the Near Cube.

  5. Pilih tombol mouse kiri (ini membuat tangan "ambil" kubus) lalu seret kubus di sekitar adegan.

    Screenshot of Move the cube.

    Untuk memegang dan memindahkan Kubus yang Jauh, kita akan menggunakan far pointer yang dilampirkan pada simulasi tangan.

  6. Jika perlu, tekan bilah spasi lagi agar simulasi tangan kanan muncul. Perhatikan far pointer yang membentang dari ujung jari telunjuk tangan.

    Screenshot of simulated hand's far pointer.

  7. Gerakkan tangan agar mendekat ke Kubus yang Jauh sampai Anda dapat melihat ujung pointer pada kubus. Anda mungkin harus menggerakkan tangan dengan gerakan melingkar beberapa kali agar ujung pointer muncul di kubus.

    Screenshot of the far pointer touching the cube.

  8. Pilih tombol mouse kiri (ini membuat tangan tertutup, mengambil apa yang kita sebut "gerakan jepit") dan kemudian seret kubus di sekitar adegan.

Simulasi input in-editor Unity

Anda dapat menguji perilaku objek holografik dengan fitur simulasi input dalam editor Unity.

Mengubah tampilan di adegan

  • Untuk menggerakkan kamera ke depan/kiri/belakang/kanan, tekan tombol W/A/S/D.
  • Untuk menggerakkan kamera secara vertikal, tekan tombol Q dan E.
  • Untuk memutar kamera, tekan tombol kanan mouse lalu seret.

Mensimulasikan input tangan

  • Untuk mengaktifkan simulasi tangan kanan, tekan dan tahan bilah spasi. Untuk menghapus simulasi tangan, lepaskan bilah spasi.
  • Untuk mengaktifkan simulasi tangan kiri, tekan dan tahan tombol shift kiri. Untuk menghapus simulasi tangan, lepaskan tombolnya.
  • Untuk menggerakkan salah satu tangan di sekitar scene, gerakkan mouse.
  • Untuk menggerakkan tangan ke depan atau ke belakang, putar roda gulir mouse.
  • Untuk mensimulasikan gerakan jepit, pilih tombol mouse kiri.
  • Untuk memutar tangan, tekan dan tahan tombol spasi + tombol CTRL (tangan kanan) atau tombol shift kiri + tombol CTRL (tangan kiri) lalu gerakkan mouse.

Tangan persisten

  • Untuk mengaktifkan tangan dan mempertahankannya di layar tanpa harus terus menekan dan menahan tombol, tekan T (tangan kiri) atau Y (tangan kanan). Untuk menghapus tangan, tekan lagi tombol-tombol tersebut.

Membangun aplikasi di Unity

  1. Di bilah menu, pilih File>Pengaturan Build....

  2. Di jendela Build Pengaturan, pilih tombol Tambahkan Adegan Terbuka untuk menambahkan adegan Anda saat ini ke daftar Scenes In Build.

  3. Pilih tombol Build .

  4. Di jendela Build Platform Windows Universal, navigasikan ke folder tempat Anda ingin menyimpan build, atau buat folder baru dan navigasikan ke folder tersebut, lalu pilih tombol Pilih Folder untuk memulai proses build.

    Screenshot of the location to save your build.

    Bilah progres akan muncul untuk memberi tahu Anda bagaimana proses pembangunan berlangsung.

(Opsional) Membangun dan menyebarkan aplikasi

Catatan

Membangun dan menguji di HoloLens 2 tidak wajib. Sebagai alternatif, Anda dapat menguji di Emulator HoloLens 2 jika tidak memiliki perangkat. Perangkat dapat dibeli di HoloLens.com.

  1. Ketika proses pembangunan telah selesai, Windows File Explorer akan terbuka dan menampilkan folder build. Navigasikan ke dalam folder kemudian klik ganda file solusi untuk membukanya di Visual Studio:

    Screenshot of File Explorer with the builds folder displayed.

  2. Konfigurasikan Visual Studio untuk HoloLens dengan memilih konfigurasi Master atau Rilis dan arsitektur ARM64:

    Screenshot of Visual Studio window with the build options for the project.

    Tip

    Jika Anda menyebarkan ke HoloLens (generasi ke-1), pilih arsitektur x86.

    Catatan

    Jika Anda tidak melihat "Perangkat" sebagai pilihan target di Visual Studio, Anda mungkin perlu mengubah proyek startup untuk solusi dari proyek IL2CPP ke proyek UWP. Untuk melakukannya, di Penjelajah Solusi, klik kanan [nama proyek Anda](Universal Windows) lalu pilih Tetapkan sebagai Proyek StartUp.

    Penting

    Sebelum membangun ke perangkat Anda, perangkat harus dalam Mode Pengembang dan dipasangkan dengan komputer pengembangan Anda. Lihat bagian bernama "Mengaktifkan Mode Pengembang" di halaman ini.

  3. Pilih drop-down target penyebaran lalu lakukan salah satu hal berikut ini:

    • Jika Anda membangun dan menyebarkan melalui Wi-Fi, pilih Komputer Jarak Jauh.

    Screenshot of Visual Studio window with Remote Machine as the target.

    • Jika Anda membangun dan menyebarkan melalui USB, pilih Perangkat.

    Screenshot of Visual Studio window with Device as the target.

  4. Atur sambungan jarak jauh Anda: pada bilah menu, pilih Proyek > Properti.

  5. Di jendela Halaman Properti proyek, pilih Properti Konfigurasi > Penelusuran Kesalahan.

  6. Pilih menu drop-down Debugger untuk diluncurkan lalu pilih Komputer Jarak Jauh jika belum dipilih.

    Penting

    Sebaiknya masukkan alamat IP Anda secara manual daripada bergantung pada fitur "Terdeteksi Otomatis". Untuk menemukan alamat IP Anda, di HoloLens Anda, buka Pengaturan > Pembaruan & Keamanan > Untuk pengembang. Alamat IP tercantum di bagian bawah jendela di bawah Ethernet.

  7. Di bidang Nama Komputer, masukkan alamat IP perangkat Anda.

    Remote connection dialog in Visual Studio

  8. Setel Mode Autentikasi ke Universal (Protokol tidak terenkripsi).

  9. Sambungkan HoloLens ke komputer Anda, lalu di Visual Studio, lakukan salah satu tindakan berikut ini:

    • Untuk menyebarkan ke HoloLens Anda dan secara otomatis memulai aplikasi tanpa debugger Visual Studio yang terlampir, pilih Debug>Mulai Tanpa Penelusuran Kesalahan.
    • Untuk menyebarkan ke HoloLens Anda tanpa memulai aplikasi secara otomatis, pilih Build>Sebarkan Solusi.

    Screenshot of Visual Studio with the Start Without Debugging menu item displayed.

Memasangkan perangkat

Saat pertama kali menyebarkan aplikasi ke HoloLens dari PC, Anda akan dimintai PIN. Untuk membuat PIN:

  1. Di HoloLens Anda, buka Pengaturan > Pembaruan & Keamanan > Untuk pengembang.
  2. Pilih Pasangkan. Ini akan menampilkan PIN di HoloLens.
  3. Masukkan PIN dalam dialog di Visual Studio.
  4. Setelah pemasangan selesai, di HoloLens, pilih Selesai.

PC Anda sekarang dipasangkan dengan HoloLens dan Anda dapat menyebarkan aplikasi secara otomatis. Ulangi langkah-langkah ini pada setiap PC yang digunakan untuk menyebarkan aplikasi ke HoloLens Anda.

Menjalankan aplikasi di HoloLens

  1. Setelah aplikasi Anda selesai dibangun, di menu Mulai HoloLens, temukan petak aplikasi untuk aplikasi Anda, lalu pilih aplikasi tersebut.

  2. Setelah aplikasi dimulai, jangkau Kubus yang Dekat, lalu pegang dan seret Kubus tersebut.

  3. Gunakan far pointer untuk memegang Kubus yang Jauh, lalu seret Kubus tersebut.

    Tip

    HoloLens memberi fleksibilitas yang lebih besar daripada saat menguji aplikasi di Unity. Anda dapat secara fisik bergerak dan menggunakan far pointer di Kubus yang Dekat atau menjangkau dan memegang Kubus yang Jauh dengan tangan Anda!

Tips

  • Anda juga dapat menyebarkan ke Emulator HoloLens atau membuat Paket Aplikasi untuk pemuatan sisi.

  • Anda mungkin melihat profiler Diagnostik di aplikasi. Anda dapat mengaktifkan atau menonaktifkannya menggunakan perintah ucapan "Aktifkan/Nonaktifkan Diagnostik". Kami menyarankan agar Anda menjaga profiler tetap terlihat sebagian besar waktu selama pengembangan sehingga Anda dapat memahami bagaimana perubahan pada aplikasi dapat memengaruhi performa. Misalnya, Anda dapat memantau aplikasi untuk memastikan bahwa kecepatan bingkai setidaknya 60 FPS.