Cara menggunakan kemampuan easyar di apple vision pro
Panduan ini akan memandu Anda melalui konfigurasi proyek Unity dan Xcode untuk membuka kunci semua kemampuan inti easyar, termasuk pelokalan cloud mega, untuk aplikasi apple vision pro.
Sebelum memulai
- Pelajari cara menggunakan sampel headset
- Pastikan lingkungan pengembangan memenuhi persyaratan berikut:
- visionOS 2.0 dan di atasnya
- Xcode 16.0 dan di atasnya yang sesuai dengan versi visionOS dan menginstal simulator visionOS
- Versi unity yang direkomendasikan 6000.0.23 di atas versi lts
Mengajukan lisensi api tingkat-enterprise ke apple inc.
Karena mendapatkan gambar dan parameter kamera di apple vision pro adalah API tingkat-enterprise yang memerlukan entitlement, Anda perlu mengajukan file lisensi yang berisi entitlement tersebut ke apple inc. Cara mengajukan dan menggunakan lisensi ini silakan merujuk ke building spatial experiences for business apps with enterprise apis for visionos.
Penting
Bundle id dalam entitlement yang diperoleh dari apple inc. Harus sama persis dengan yang diisi saat membuat easyar sense license key.
Bagaimana memilih mode aplikasi visionos
Aplikasi yang berjalan di visionos hanya dapat memperoleh data arkit di bawah immersive space. Sedangkan aplikasi yang dikemas oleh editor unity di bawah immersive space berdasarkan alur rendering dan api yang berbeda perlu memilih mode realitykit with polyspatial atau metal rendering with compositor services.
Untuk definisi immersive space, silakan merujuk ke dokumentasi resmi apple.
Untuk detail lengkap tentang mode aplikasi unity, silakan merujuk ke visionos platform overview dalam dokumentasi unity polyspatial.
Kiat
Saran pemilihan mode aplikasi
Rekomendasi utama: realitykit with polyspatial
Jika Anda baru mengenal visionos, disarankan untuk memprioritaskan mode ini. Keunggulannya adalah dapat mengintegrasikan secara mendalam karakteristik rendering tingkat-sistem visionos, stabilitas tinggi, dan efek rendering yang baik. Mode ini tidak mendukung shader kode kustom (hlsl/shaderlab), harus menggunakan shader graph, dan hanya mendukung fitur yang telah diperiksa kompatibilitas polyspatial (akan dikonversi ke materialx).
Shader
standard (built-in)danlit (urp)bawaan unity telah diadaptasi sebelumnya oleh pihak resmi dan dapat digunakan langsung.Lanjutan/kebutuhan khusus: metal rendering with compositor services
Cocok untuk proyek kompleks dengan kebutuhan migrasi aset 3d yang besar atau harus menggunakan shader kustom. Karena dalam mode ini unity bertanggung jawab atas semua logika rendering, melewati pipeline realitykit sistem, efek rendering umumnya tidak sebaik realitykit dan mungkin mengalami masalah rendering yang tidak terduga.
Saran integrasi easyar:
Saat mencoba mengintegrasikan easyar, pastikan untuk menggunakan mode realitykit with polyspatial terlebih dahulu untuk menjalankan alur dasar. Ini dapat secara efektif mengisolasi variabel, menghindari masalah adaptasi lapisan metal yang tumpang tindih dengan masalah terkait ar, sehingga menyebabkan sulitnya mengidentifikasi penyebab kegagalan.
Konfigurasi dalam proyek unity
Proyek unity perlu melakukan konfigurasi berikut:
Mengimpor paket yang diperlukan untuk proyek unity
Unity 6 (direkomendasikan):
com.unity.xr.visionos(2.0.4+)com.unity.polyspatial(2.0.4+)com.unity.polyspatial.visionos(2.0.4+)
Penting
Semua nomor versi paket harus tetap sama persis.
Disarankan untuk menggunakan unity 6 terlebih dahulu, beberapa versi unity 2023.x awal belum mendukung visionos.
Unity 2022.3:
com.unity.xr.visionos(1.2.3)com.unity.polyspatial(1.2.3)com.unity.polyspatial.visionos(1.2.3)
Penting
Semua nomor versi paket harus tetap sama persis.
Tidak mendukung versi 1.3.x, pastikan untuk mengunci pada 1.2.3.
Memilih platform build
Klik file > build profiles di bilah menu untuk mengalihkan platform ke visionos.

Mengonfigurasi sistem input
Pastikan menggunakan input system package versi baru:
Klik edit > project settings > player di bilah menu, atur slot active input handling ke input system package(new).
Setelah itu unity mungkin meminta untuk memulai ulang proyek, klik apply untuk membuat perubahan berlaku.

Mengonfigurasi xr plug-in management
Klik edit > project settings > xr plug-in management di bilah menu, di tab visionos di plug-in providers centang apple visionos.

Mengonfigurasi plugin apple visionos
Klik edit > project settings > xr plug-in management > apple visionos di bilah menu.
Pilih app mode yang sesuai berdasarkan pengenalan sebelumnya.

Catatan
Mode windowed karena tidak berjalan di immersive space, tidak dapat menggunakan kemampuan ar.
Mode hybrid berarti pengembang perlu beralih secara manual antara mode metal dan realitykit, karena cara penggunaannya yang cukup kompleks, tidak direkomendasikan, untuk detailnya silakan merujuk ke penjelasan resmi unity tentang mode ini.
Selanjutnya lakukan modifikasi berikut di halaman yang sama:
Di slot world sensing usage description tambahkan deskripsi.
Atur metal immersion style ke mixed.
Atur reality kit immersion style ke mixed.
Centang il2cpp large exe workaround.

[Hanya mode realitykit yang memerlukan] mengimpor textmesh pro essentials
Klik edit > project settings > textmesh pro > di bilah menu klik import tmp essentials

Catatan
Saat ini mode realitykit with polyspatial hanya mendukung teks textmesh pro, jika tidak diimpor maka tidak dapat merender teks.
[Hanya mode realitykit yang memerlukan] pengaturan terkait polyspatial
Klik edit > project settings > polyspatial di bilah menu, di halaman ini lakukan modifikasi berikut:
Atur default volume camera window config ke
default unbounded configuration.Centang auto-create volume camera

Jika perlu menentukan default volume camera window config tambahan, pastikan mode-nya adalah unbounded.

Jika ada volume camera di adegan, hapus.

Peringatan
- Tidak mendukung
volume cameradengan nilaiworld transformbukanidentity. - Jika karena alasan khusus perlu menambahkan
volume camerakustom unik di adegan, harap:- Atur
world transform-nya keidentity. - Pastikan
modedarivolume camera window configuration-nya diatur keunbounded. - Gunakan hanya setelah sepenuhnya memahami makna dan penggunaannya dalam dokumentasi resmi unity.
- Atur
[Saat menggunakan mega] menambahkan location usage description
Hati-Hati
Jika izin location diaktifkan dalam konfigurasi easyar (saat menggunakan fungsi mega), deskripsi penggunaan izin harus ditambahkan, jika tidak build akan gagal.
Karena saat ini bidang location usage description tidak ditampilkan di tab visionos > player > project settings unity, silakan konfigurasikan dengan langkah-langkah berikut:
- Mengalihkan label platform: alihkan tab sementara ke ios.
- Mengisi deskripsi: isi penjelasan penggunaan izin yang diperlukan di slot location usage description.
- Kembali ke visionos: alihkan tab kembali ke visionos, konfigurasi yang diisi sebelumnya akan otomatis dipertahankan dan berlaku.

Konfigurasi dalam proyek xcode
Proyek xcode yang diperoleh melalui pengemasan unity perlu melakukan konfigurasi berikut:
Mengonfigurasi entitlement data kamera
Salin file
enterprise.licenseyang diperoleh dari aplikasi ke direktori file proyek xcode.
Seret
enterprise.licensedari direktori file proyek xcode ke proyek xcode.
Memodifikasi info.plist agar aplikasi dapat menyimpan dan mengirim file
Jika perlu merekam eif dalam aplikasi dan mengirimkannya ke komputer atau perangkat lain melalui aplikasi file visionos, tambahkan dan modifikasi bidang berikut di info.plist:
Tambahkan
lssupportsopeningdocumentsinplacedan atur nilainya ketrue.Tambahkan
uifilesharingenableddan atur nilainya ketrue.

Kiat
Setelah menambahkan bidang, key yang ditampilkan di antarmuka xcode berbeda dengan string yang ditambahkan secara manual (misalnya memasukkan lssupportsopeningdocumentsinplace tetapi menampilkan supports opening documents in place, ini normal).