Android XR mendukung aplikasi yang dibuat dengan OpenXR melalui dukungannya untuk spesifikasi OpenXR 1.1 dan ekstensi vendor tertentu. OpenXR adalah standar terbuka yang memungkinkan Anda membuat pengalaman imersif dan interaktif menggunakan kumpulan API umum di berbagai perangkat XR.
Fitur
Android XR mendukung fitur yang memungkinkan Anda membuat aplikasi yang memanfaatkan sepenuhnya kemampuan unik perangkat XR, menggunakan OpenXR. Fitur ini mencakup hal berikut.
- Framework Entity Spasial
- Fondasi terpadu untuk pemahaman adegan dan penalaran spasial. Memungkinkan aplikasi menemukan, membuat kueri, dan melacak entity spasial fisik di lingkungan, membuat anchor spasial yang terlampir ke entity, melakukan raycasting entity spasial, dan mempertahankan entity spasial di seluruh sesi aplikasi.
- Objek yang dapat dilacak
- Mendukung deteksi bidang, yaitu kemampuan untuk mengidentifikasi dan melacak permukaan datar dalam lingkungan, yang memungkinkan penempatan objek virtual dalam kaitannya dengan dunia nyata dan Anchor yang merupakan titik referensi virtual yang dapat dilampirkan ke objek atau lokasi dunia nyata, sehingga konten virtual tetap diposisikan dan diorientasikan secara akurat meskipun pengguna bergerak.
- Raycasting
- Teknik yang digunakan untuk menentukan titik persimpangan antara sinar virtual dan objek dalam adegan, yang memfasilitasi interaksi seperti memilih dan memanipulasi elemen virtual.
- Persistensi anchor
- Kemampuan untuk menyimpan dan memulihkan anchor di beberapa sesi, yang memungkinkan penempatan konten virtual yang persisten dan konsisten dalam lingkungan.
- Pelacakan objek
- Kemampuan untuk melacak mouse, keyboard, dan objek lainnya di dunia nyata.
- Pelacakan Kode QR
- Kemampuan untuk melacak Kode QR di lingkungan fisik dan mendekode datanya.
- Tekstur kedalaman
- Pembuatan peta kedalaman yang memberikan informasi tentang jarak antara kamera dan objek dalam adegan, yang memungkinkan efek oklusi dan interaksi yang lebih realistis.
- Passthrough
- Kemampuan untuk memadukan rekaman kamera dunia nyata dengan konten virtual, yang menciptakan pengalaman realitas campuran yang menggabungkan dunia fisik dan digital secara lancar.
- Meshing adegan
- Kemampuan untuk mendapatkan mesh 3D lingkungan, yang dapat digunakan untuk fisika, oklusi, dan interaksi lain yang sadar akan dunia.
- Passthrough lapisan komposisi
- Memungkinkan passthrough poligon memotong lapisan komposisi, dapat digunakan untuk memasukkan objek dunia nyata ke dalam adegan.
- Pelacakan wajah
- Kemampuan untuk melacak fitur wajah pengguna, yang memungkinkan pembuatan avatar dan karakter virtual yang lebih realistis dan ekspresif.
- Pelacakan gerak mata
- Menyediakan posisi dan orientasi mata pengguna, yang dirancang untuk membuat pose mata avatar lebih realistis.
- Pelacakan gerak tangan
- Kemampuan untuk melacak posisi dan gerakan tangan pengguna.
- Mesh tangan
- Memberikan representasi akurat tangan pengguna sebagai mesh poli rendah. Dioptimalkan untuk pengiriman platform ke aplikasi guna memastikan Anda mendapatkan performa terbaik. Ini adalah alternatif untuk ekstensi lain yang menggunakan pose ikat dan bobot campuran.
- Estimasi cahaya
- Digunakan untuk model pencahayaan agar sesuai dengan kondisi pencahayaan dunia nyata pengguna.
Perangkat input yang didukung
Android XR juga mendukung perangkat input berikut.
- Interaksi Tangan
- Pengenalan gestur tangan tertentu, seperti mencubit, menggeser, dan menunjuk, yang memungkinkan pengguna berinteraksi dengan objek virtual menggunakan gestur dan gerakan tangan.
- Interaksi Gerak Mata
- Kemampuan untuk melacak gerakan mata pengguna, yang memungkinkan mereka memilih dan berinteraksi dengan objek virtual menggunakan tatapan mata.
- Pengontrol Gerakan 6DoF
- Kemampuan untuk melacak posisi dan gerakan pengontrol bersama dengan Dpad dan binding tombol untuk memicu tindakan, atau mengarahkan kursor ke peristiwa dalam aplikasi.
- Interaksi Mouse
- Kemampuan pengguna untuk berinteraksi dengan objek melalui kursor mouse di ruang 3D
Fitur performa yang didukung
Android XR mendukung fitur terkait performa berikut.
- Foveasi yang dilacak mata
- Memungkinkan aplikasi merender konten resolusi yang lebih tinggi hanya pada titik fokus mata.
- Warp ruang
- Menggunakan vektor kecepatan dan informasi tekstur kedalaman untuk menghasilkan frame tween yang secara efektif meningkatkan kecepatan frame yang diperlukan agar pengguna tetap terhubung dengan pengalaman Anda
- Sintesis frame
- Menggunakan vektor gerakan dan data frame yang disediakan aplikasi untuk mensintesis frame perantara, yang meningkatkan kelancaran visual dan kecepatan frame.
- Metrik performa
- Menyediakan metrik performa Android XR saat runtime perangkat XR, compositor, dan aplikasi XR saat ini. Hal ini mencakup waktu frame CPU, waktu frame GPU, penggunaan GPU, frekuensi CPU, frame per detik dan lainnya.
Lihat Ringkasan Fitur OpenXR untuk mengetahui daftar lengkap fitur dan ekstensi yang didukung.
Mesin yang didukung
Mesin berikut didukung untuk pengembangan OpenXR dengan Android XR.
Unity
Dukungan Unity Android XR, yang dibangun di atas OpenXR, memungkinkan developer membuat pengalaman menggunakan Unity 6. Pelajari lebih lanjut cara membuat aplikasi XR dengan Unity dalam ringkasan Unity.
OpenXR™ dan logo OpenXR adalah merek dagang yang dimiliki oleh The Khronos Group Inc. dan terdaftar sebagai merek dagang di China, Uni Eropa, Jepang, dan Inggris Raya.