Interaksi Inti di Lab WebVR

Lab VR

Lihat Lab

Desainer situs terbiasa dengan ide desain responsif, yaitu membuat situs agar berfungsi di berbagai perangkat, seperti ponsel, tablet, dan komputer, serta berbagai resolusi layar dan rasio piksel. WebVR memperkenalkan tantangan baru pada ide desain responsif.

Kita dapat mengategorikan pengalaman WebVR berdasarkan dua metrik - tingkat keseruan dan tingkat input. Level ini dibedakan berdasarkan "derajat kebebasan" (DOF). 6 DOF mengacu pada pelacakan posisi dan orientasi, 3 DOF hanya melacak orientasi dan 0 DOF tidak melacak posisi maupun orientasi.

Tingkat Keseruan

  • Tanpa VR - Layar monitor atau seluler.
  • Stationary VR - Perangkat dengan pelacakan 3 DOF.
  • VR Tempat Duduk - Pelacakan 6 DOF, tetapi dalam area dan rentang sudut terbatas.
  • VR Skala Ruang - 6 pelacakan DOF dengan lingkungan seukuran ruangan.

Tingkat Input

  • 0 DOF - Input yang tersedia hanya klik atau ketuk. Metode {i>input<i} ini terikat dengan arah hadap pengguna. Terkadang kita menyebutnya sebagai pengontrol pandangan.
  • 3 DOF - Pengontrol yang melacak orientasinya dapat digunakan seperti pointer laser untuk menentukan arah atau lokasi. Posisi pengontrol diperkirakan berdasarkan sudut pandang pengguna. Ini termasuk Pengontrol Daydream.
  • 6 DOF - Pengontrol yang melacak posisi dan orientasinya. Ini dapat digunakan untuk menyimulasikan tangan secara dekat di VR.

Jadi, Anda dapat melihat bahwa satu aplikasi dapat mendukung apa pun, dari layar seluler non-VR hanya dengan sekali klik untuk memasukkan hingga pengalaman skala ruang penuh dengan dua pengontrol tangan yang sepenuhnya dilacak.

Lab WebVR

Di PlayCanvas WebVR Lab, kami telah mengimplementasikan beberapa interaksi inti yang mungkin Anda perlukan dalam aplikasi dan menskalakannya ke berbagai tingkat pengalaman.

Cara Kerja Interaksi

Mekanisme dasar cara kerja interaksi di Lab WebVR adalah perpotongan sinar. Lantai, ruangan, dan objek apa pun yang dapat berinteraksi ditentukan dalam salah satu dari tiga primitif bentuk:

  • Kotak pembatas yang disejajarkan dengan sumbu (atau AABB) - Kotak yang tidak diputar.
  • Kotak pembatas berorientasi - Kotak yang dapat diputar.
  • Sphere - Radius di sekitar titik dalam ruang.

Untuk melihat apakah suatu tindakan mungkin dilakukan, kami menembakkan sebuah sinar ke dunia dan menguji apakah sinar tersebut berpotongan dengan bentuk objek di dunia. Berbagai jenis interaksi dapat terjadi, bergantung pada asal sinarnya (kamera atau pengontrol) dan panjang sinar tersebut (manipulasi dari jarak dekat atau menunjuk dari jarak jauh).

Tindakan Sederhana

Pertama, kami menentukan beberapa tindakan sederhana dan cara penggunaannya dengan berbagai pengontrol.

Tandai

Menyoroti lokasi atau objek dilakukan dengan melihatnya (menggunakan pengontrol pandangan) atau dengan mengarahkannya (menggunakan pengontrol tangan). Hal ini dapat terjadi saat tombol tidak ditekan atau hanya saat tombol ditekan.

Klik

Mengklik lokasi atau objek dilakukan dengan menyorot terlebih dahulu, lalu menekan atau melepaskan tombol. Dengan pengontrol tatapan, Anda akan mengklik dengan melihat suatu objek, lalu menekan tombol atau layar. Dengan pengontrol tangan, metode ini mengarahkan kursor ke objek, lalu mengklik tombol.

Interaksi Inti

Dengan menggunakan sorotan dan klik, kami telah menerapkan beberapa interaksi inti di WebVR Lab.

Teleport

Teleport

Saat membangun lingkungan virtual untuk dijelajahi pengguna, kemungkinan besar lingkungan tersebut akan lebih luas daripada area kecil yang dapat dilihat pengguna tanpa berpindah. Lab WebVR, misalnya, memiliki tiga bagian. Ruang utama, lantai mezzanine, dan ruang samping untuk pemutar musik {i>hi-fi<i}.

Menggerakkan area pandang pengguna di seluruh dunia sering kali akan menimbulkan ketidaknyamanan. Di Lab WebVR, kami memungkinkan pengguna menandai lokasi dan mengklik untuk melakukan teleportasi secara instan. Sudut pandang pengguna tidak pernah bergerak. Jadi, meskipun ada sensasi yang tidak wajar ketika bergerak secara instan, pengguna dapat bergerak di sekitar ruang yang besar dengan nyaman.

Dalam kasus pengontrol tangan, kita mengharuskan pengguna menekan dan menahan tombol untuk mengaktifkan target teleportasi. Hal ini membuat penglihatan pengguna tetap rapi saat mereka melihat sekeliling.

Memindahkan sudut pandang pengguna

Terkadang Anda perlu memindahkan sudut pandang. Misalnya, saat menggunakan VR Stasioner atau Seated, Anda mungkin harus menghadap dinding tanpa bisa berputar di dunia fisik. Jadi kita mengizinkan pengguna untuk memutar kamera menggunakan {i>controller<i}. Di Lab WebVR, menggunakan tombol kiri atau kanan pada Pengontrol Daydream akan memutar kamera.

Untuk mencegah ketidaknyamanan saat menggerakkan kamera dengan cara ini, kami mengurangi jumlah penglihatan periferal dengan menerapkan pandangan terbatas pada kamera. Hal ini didasarkan pada pekerjaan oleh Ubisoft dan kami mendapati bahwa memfokuskan tampilan hanya ke bagian tengah layar akan mengurangi ketidaknyamanan.

Aktifkan

Aktifkan

Mengaktifkan setara dengan mengeklik tombol di laman web. Di Lab WebVR, kami telah memahaminya secara harfiah dan menyediakan tombol sederhana yang dapat diaktifkan.

Untuk pengontrol 0 DOF dan 3 DOF, mengaktifkan adalah sorotan dan klik. Untuk pengontrol 6 DOF, kami dapat mengupgrade pengalaman agar Anda dapat "mendorong" tombol dengan langsung memeriksa untuk melihat apakah pengontrol tangan berada di dalam tombol.

Grab

Grab

Lab WebVR berisi sejumlah item yang "dapat diambil". Dengan perilaku ini, saat diaktifkan, objek dapat diambil dan dipindahkan. Ada dua perilaku yang jelas dan berbeda tergantung pada tingkat input yang ingin Anda dukung.

Untuk 6 pengontrol DOF, menahan tombol input akan melampirkan item yang dapat diambil ke pengontrol. Objek tersebut kemudian dapat dipindahkan dan diposisikan dengan kontrol halus. Melepaskan tombol akan mengaktifkan tindakan gabungkan atau lepas dengan item.

Untuk pengontrol yang tidak terlalu dapat bermanuver, klik akan mengambil item dan melampirkannya ke area pandang pengguna. Biasanya menjaga bagian item tetap terlihat di "sepertiga bawah" layar. Klik kedua akan melepaskan atau menggabungkan item.

Gabungkan

Gabungkan

Gabungkan adalah tindakan yang terjadi saat Anda "menggunakan" item dengan item lain. Hal ini mencakup berbagai macam kasus penggunaan. Di Lab WebVR, kita menggunakannya untuk memutar {i>record<i} di Hi-fi. Saat sebuah item diambil, item yang diambil dapat digabungkan dengan item lain. Dengan semua jenis pengontrol menandai item target sambil mengambil item lain, lalu melepaskan pengambilan akan menggabungkan kedua item tersebut.

Menghapus / Memulihkan

Melepaskan item terjadi jika Anda mengklik saat menahan item yang diambil tanpa item lain yang ditandai.

Di WebVR Lab, kami telah menjaga persyaratan performa agar tetap rendah dengan tidak menggunakan simulasi fisik pada item apa pun. Artinya, alih-alih menjatuhkan item ke tanah, kita hanya membiarkannya mengambang di posisi ketika dijatuhkan. Setelah dihapus, jika tidak diaktifkan dalam jangka waktu tertentu, item akan "memulihkan" ke lokasi aslinya. Fungsi pemulihan ini memungkinkan pengguna dengan input tingkat rendah (0 DOF atau 3 DOF) untuk beroperasi pada banyak item dan mempertahankan area kerja yang dapat digunakan. Item yang lebih lama akan secara otomatis menghapus dirinya sendiri.

Dengan input 6 DOF, Anda dapat memindahkan item dengan lebih mudah. Ada penundaan pada operasi pemulihan memungkinkan pengguna 6 DOF membenamkan diri dalam memindahkan item, tetapi masih memfasilitasi pembersihan mandiri area tersebut.

Ringkasan

WebVR Lab adalah proyek hidup dari tim PlayCanvas. Artinya, platform ini terus dikembangkan dan pengalaman ditambahkan serta diperbarui seiring kami melakukan lebih banyak riset dalam membangun aplikasi WebVR.

Platform ini diskalakan dari pengalaman seluler bergaya "jendela ajaib" menjadi taman bermain interaktif desktop. Kami telah mulai menentukan serangkaian interaksi inti yang dapat digunakan pengguna untuk project mereka sendiri. Kami harap WebVR Lab bisa menjadi pengalaman belajar yang baik bagi siapa saja yang ingin membangun dunia 3D dengan WebVR.

Jika memiliki akun PlayCanvas, Anda dapat langsung ke Project Lab Web untuk mempelajari lebih lanjut.