Mengaktifkan Geospatial API untuk aplikasi Unity (AR Foundation) yang menargetkan iOS

Konfigurasikan setelan aplikasi Anda agar dapat menggunakan Geospatial API.

Prasyarat

Pastikan Anda memahami konsep AR dasar dan cara mengonfigurasi sesi ARCore sebelum melanjutkan.

Lihat Pengantar Geospatial API untuk mengetahui informasi selengkapnya tentang Geospatial API.

Jika Anda baru mengenal pengembangan dengan ARCore, lihat Memulai untuk mengetahui informasi tentang persyaratan software dan hardware, prasyarat, dan informasi lain khusus untuk platform yang Anda gunakan.

Untuk menggunakan ARCore Geospatial API, project Anda harus mendukung AR Foundation dan Ekstensi ARCore untuk AR Foundation.

Mengaktifkan ARCore API

Sebelum menggunakan Sistem Pemosisi Visual (VPS) di aplikasi, Anda harus mengaktifkan ARCore API terlebih dahulu di project Google Cloud yang baru atau yang sudah ada. Layanan ini bertanggung jawab untuk menghosting, menyimpan, dan menyelesaikan anchor Geospasial.

Otorisasi tanpa kunci lebih diutamakan, tetapi otorisasi Kunci API juga didukung.

Menambahkan library yang diperlukan ke aplikasi

Setelah memberi aplikasi otorisasi untuk memanggil ARCore API, Anda harus menambahkan library untuk mengaktifkan fitur Geospatial di aplikasi.

  1. Buka Edit > Project Settings > XR Plug-In Management > ARCore Extensions. Pastikan iOS Support Enabled dipilih.
  2. Di bagian Fitur Opsional, pilih Geospasial.

Mengaktifkan kemampuan Geospasial di konfigurasi sesi

Setelah fungsi Geospasial diaktifkan di aplikasi Anda, aktifkan kemampuan Geospasial dalam konfigurasi sesi AR aplikasi agar dapat berkomunikasi dengan ARCore API:

  1. Pastikan folder Assets berisi objek dengan skrip ARCoreExtensionsConfig. Untuk membuatnya, klik kanan di panel Assets, lalu pilih Create > XR > ARCore Extensions Config.
  2. Pilih objek dengan skrip ARCoreExtensionsConfig di folder Assets dan tetapkan Geospatial Mode ke Enabled.

  3. Konfigurasikan objek game ARCore Extensions untuk menggunakan konfigurasi ARCoreExtensionsConfig. Di panel Hierarchy, cari objek game ARCore Extensions yang Anda buat saat pertama kali menyiapkan ARCore Extensions, dan hubungkan kolom ARCore Extensions Config ke objek dengan skrip ARCoreExtensionsConfig di folder Assets.

Meminta pengguna untuk mengizinkan penggunaan data perangkat

Aplikasi yang menggunakan ARCore Geospatial API harus menampilkan perintah kepada pengguna untuk mengonfirmasi dan mengizinkan penggunaan data dari perangkat mereka. Lihat Persyaratan privasi pengguna untuk informasi selengkapnya.

Periksa kompatibilitas perangkat

Tidak semua perangkat yang mendukung ARCore juga mendukung Geospatial API. Untuk memeriksa kompatibilitas perangkat pengguna, panggil AREarthManager.IsGeospatialModeSupported(). Jika tindakan ini menampilkan FeatureSupported.Unsupported, jangan mencoba mengonfigurasi sesi.

Meminta izin akses lokasi kepada pengguna saat runtime

Untuk mengaktifkan layanan lokasi Unity dalam skrip yang memicu permintaan izin runtime, lakukan hal berikut:

  1. Di Project Settings > iOS > Other Settings > Location Usage Description, masukkan nama aplikasi yang meminta izin.

  2. Aktifkan layanan lokasi Unity untuk memicu permintaan izin runtime, sebagai berikut:

    public void OnEnable()
    {
        Input.location.Start();
    }
    
    public void OnDisable()
    {
        Input.location.Stop();
    }
    

    Lihat dokumentasi LocationService Unity untuk informasi selengkapnya.

Memeriksa ketersediaan Geospasial di lokasi perangkat saat ini

Karena Geospatial API menggunakan kombinasi VPS dan GPS untuk menentukan pose Geospasial, API dapat digunakan selama perangkat dapat menentukan lokasinya. Di area dengan akurasi GPS yang rendah, seperti ruang dalam ruangan dan lingkungan perkotaan yang padat, API akan bergantung pada cakupan VPS untuk menghasilkan pose akurasi tinggi. Dalam kondisi umum, VPS dapat diharapkan untuk memberikan akurasi posisi sekitar 5 meter, dan akurasi rotasi 5 derajat. Gunakan AREarthManager.CheckVpsAvailability() untuk menentukan apakah lokasi tertentu memiliki cakupan VPS.

Geospatial API juga dapat digunakan di area yang tidak memiliki cakupan VPS. Di lingkungan luar ruangan dengan sedikit atau tanpa penghalang di atas kepala, GPS mungkin cukup untuk menghasilkan pose dengan akurasi tinggi.

Langkah selanjutnya