• Tidak ada hasil yang ditemukan

Tutorial Perintah Voice

BAGIAN II MEMBANGUN PENGALAMAN HOLOGRAPHIC

BAB 5 BERINTERAKSI DENGAN HOLOGRAM

5.4 Tutorial Perintah Voice

Gesture/gaze code elements: Ini adalah elemen yang dapat disertakan dalam kode Anda untuk merespons peristiwa isyarat dan Gaze. Beberapa contohnya adalah OnInputClicked() untuk merespons air-taps atau memilih gesture, OnFocusEnter() untuk menatap objek, dan OnFocusExit() untuk menatap objek.

Scene InputManagerTest yang telah kita jelajahi di bagian ini adalah scene template yang sangat baik untuk digunakan saat memulai new project. Ini berisi prefab penting yang baru saja terdaftar dan beberapa contoh unik yang dapat Anda modifikasi atau kembangkan untuk proyek Anda. Saat Anda mendapatkan pengalaman, Anda juga dapat mempertimbangkan untuk membuat scene template Anda sendiri yang berisi komponen yang biasa Anda gunakan.

Jika Anda ingin memulai dengan salah satu Test Scene yang disediakan dengan HoloToolkit, memodifikasinya, dan menyimpannya sebagai scene template Anda sendiri, Anda dapat melakukannya dengan memilih scene di Hierarchy Anda dan di bilah menu mengklik File Save Scene As.

Gambar 5-12. Buka Test Scene FocusedObjectKeyword untuk menjelajahi cara menggunakan perintah voice di aplikasi Anda

Langkah 2: Cobalah!

Seperti sebelumnya, lanjutkan dan coba Test Scene ini dengan mengeklik tombol play di Editor, melakukan remote ke perangkat Anda, atau menerapkan ke perangkat Anda.

Penting Pastikan untuk menambahkan kemampuan mikrofon di aplikasi Anda saat menggunakan perintah voice. Di Unity, Anda dapat memeriksa opsi mikrofon di edit project settings player settings for windows store publishing settings Capabilities.

Saat memulai scene pengujian, Anda akan melihat beberapa objek permainan, seperti kubus dan bola. Saat Anda menatap suatu objek, objek tersebut akan disorot dengan warna merah, seperti yang ditunjukkan pada Gambar 5-13. Saat pandangan Anda terfokus pada suatu objek, coba ucapkan dengan lantang, "Buat lebih besar," atau, "Buat lebih kecil," dan perhatikan objek yang dipilih berubah ukuran. Jika Anda menguji melalui Unity Editor, perintah voice akan berfungsi jika Anda memiliki mikrofon yang terpasang ke PC Anda (atau jika Anda memiliki mikrofon atau mikrofon internal yang terintegrasi ke dalam webcam Anda).

Gambar 5-13. Saat memainkan Test Scene, Anda akan melihat beberapa objek. Tatap objek untuk menyorotnya dan coba ucapkan dengan lantang, "Buat lebih besar," atau, "Buat lebih

kecil"

Gambar 5-14. Perintah voice dimungkinkan oleh FocusedObjectKeywordManager prefarb

Langkah 3: Pahami Scenenya

Sekarang setelah Anda bersenang-senang mencoba perintah voice, mari kita lihat lebih dalam apa yang memungkinkan pengalaman ini. Seperti yang ditunjukkan pada Gambar 5-14, beberapa item disertakan dalam Hierarchy of the FocusedObjectKeywords test scene.

Sekarang, Anda seharusnya sudah sangat familiar dengan beberapa objek yang ditampilkan, seperti prefab InputManager dan prefab Cursor. Anda juga akan melihat FocusedGridGenerator di Hierarchy, yang merupakan prefab yang menghasilkan grid kubus dan bola. Meskipun generator itu bukan fokus dari bagian ini, saya mendorong Anda untuk menjelajahi Script dan metode yang memungkinkan objek pemijahan.

Prefab utama dalam scene ini adalah prefab FocusedObjectKeywordManager. Seperti yang dapat Anda lihat pada Gambar 5-14, prefab berisi dua Script: KeywordManager.cs dan FocusedObjectMessageSender.cs. Berikut adalah ikhtisar dasar tentang cara kerja cetakan ini:

1. Pertama, Script KeywordManager.cs memulai pengenalan kata kunci, sehingga mikrofon Anda terus-menerus mendengarkan perintah voice yang Anda berikan di Inspector. Dalam hal ini, perintah voice yang dimuat sebelumnya adalah Jadikan Lebih Kecil dan Jadikan Lebih Besar.

2. Saat Anda mengucapkan perintah atau frasa voice, Pengelola Kata Kunci. cs akan memeriksa untuk melihat apakah itu cocok dengan kata atau frasa yang disediakan.

Jika ada kecocokan, Script akan memicu pesan. Misalnya, pesan yang terkait dengan perintah voice Jadikan Lebih Besar adalah OnMakeBigger.

3. Script FocusedObjectMessageSender.cs bertanggung jawab untuk mengirim pesan yang dipicu di #2 ke objek yang sedang dilihat.

4. Setelah pesan dikirim ke objek, objek harus memiliki Script untuk merespons pesan.

Dalam kasus kita, setiap objek yang muncul memiliki metode OnMakeSmaller() dan OnMakeBigger() dalam Script ScaleObjectMessageReceiver.cs-nya.

Langkah 4: Tambahkan Perintah Voice Anda Sendiri

Cara terbaik untuk mempelajari cara kerja sesuatu adalah dengan mencobanya sendiri.

Mari tambahkan perintah voice lain ke set yang ada. Objek saat ini tumbuh saat Anda mengatakan, "Buat lebih besar," dan mereka menyusut saat Anda mengatakan, "Buat lebih kecil." Mari tambahkan perintah voice untuk Move Up agar objek bergerak ke atas.

Di prefab FocusedObjectKeywordManager, cari Script KeywordManager.cs dan edit bidang Ukuran di Inspector dari 2 hingga 3, seperti yang ditunjukkan pada Gambar 5-15. Ini berarti kita mengubah jumlah perintah voice dari dua menjadi tiga.

Setelah Anda meningkatkan Ukuran menjadi 3, Anda akan melihat bahwa entri kata kunci baru muncul di Inspector. Anda mungkin perlu memperluas entri baru untuk mengeditnya. Silakan dan ubah bidang Kata Kunci menjadi Pindah ke Atas. Kata kuncinya adalah perintah voice. Berhati-hatilah untuk tidak memberi spasi sebelum kata kunci, karena itu akan mencegah kode mengenali perintah voice Anda.

Di bawah bagian Respons, tambahkan pesan OnMoveUp, seperti yang ditunjukkan pada Gambar 5-15. Perhatikan bahwa penggunaan Move Up dan OnMoveUp saya sepenuhnya arbitrer—Anda juga dapat menulis kata kunci dan pesan khusus Anda sendiri Tip Jika Anda ingin beberapa perintah voice memicu tindakan yang sama, Anda dapat terus menambahkan kata kunci sambil menyimpan pesan yang sama. Misalnya, Anda dapat menambahkan gesture Ke Atas, Ke Atas, dan Ke Atas, dan untuk setiap kata kunci gunakan pesan onmoveUp yang sama

Gambar 5-15. Tambahkan perintah voice Anda sendiri dengan meningkatkan bidang Ukuran dan menyesuaikan kata kunci di Script KeywordManager.cs

Sekarang setiap kali Anda mengatakan, "Move Up," pesan OnMoveUp akan dikirim ke objek yang Anda lihat. Namun, objek dalam scene tidak akan tahu apa yang harus dilakukan ketika mereka menerima pesan OnMoveUp. Kita perlu menambahkan metode yang disebut OnMoveUp() ke Script pada objek game. Mari kita lihat Script yang dilampirkan pada objek game.

Anda dapat menemukan Script dengan mencari panel Proyek Anda untuk ScaleObjectMessageReceiver.cs atau Anda dapat menemukannya di Inspector dengan masuk ke prefab FocusedGridGenerator di Hierarchy Anda dan kemudian mengklik dua kali baik FocusedObjectCube atau FocusedObjectSphere di panel Inspector. Anda akan melihat ScaleObjectMessageReceiver.cs dilampirkan ke objek.

Saat Anda membuka Script ini, Anda akan melihat metode OnMakeBigger() dan OnMakeSmaller(). Lanjutkan dan buat metode OnMoveUp() dengan mengetikkan kode berikut:

public void OnMoveUp() {

transform.Translate(0.0f, 0.2f, 0.0f);

}

Penambahan kecil ini hanya memindahkan objek ke atas (dalam arah Y) sebesar 0,2 unit.

Silakan dan coba perintah voice Anda yang baru. Tatap setiap objek dan katakan, "Naik," dan Anda akan melihat objek bergerak ke atas.

Langkah 5: Gunakan Perintah Voice di Proyek Anda Sendiri

Selamat! Anda telah berhasil menemukan cara kerja perintah voice dengan Windows Mixed Reality dan cara menambahkan perintah voice Anda sendiri ke scene pengujian yang

ada. Menambahkan perintah voice ke scene baru atau scene yang berbeda adalah proses yang sederhana. Mari kita tinjau apa yang perlu Anda lakukan untuk mengaktifkan perintah voice di proyek Anda sendiri:

 Tambahkan prefab FocusedObjectKeywordManager dari HoloToolkit ke scene Anda.

 Dalam cetakan ini, ubah variabel Ukuran menjadi jumlah kata kunci atau perintah voice yang ingin Anda miliki. Kata kunci dapat berupa kata atau frase.

 Setelah Anda menentukan jumlah kata kunci, tentukan apa yang akan menjadi setiap kata kunci (perintah voice yang akan diucapkan User dengan lantang).

 Untuk setiap kata kunci, pastikan untuk menentukan setidaknya satu pesan. Pesan akan dikirim ke objek yang Anda lihat. Anda juga dapat menekan tombol + di dekat sudut kanan bawah respons Script pengelola kata kunci di panel Inspector (Lihat Gambar 5-15) untuk menambahkan objek dan pesan tambahan—misalnya, jika Anda ingin menerapkan perintah voice universal, terlepas dari dari Gaze.

Menerapkan perintah voice di Windows Mixed Reality relatif sederhana namun sangat meningkatkan pengalaman User aplikasi Anda. Selanjutnya saya membahas beberapa praktik terbaik untuk menggunakan voice di aplikasi Anda.