Spatial anchors

Jangkar spasial mewakili titik penting di dunia yang dilacak sistem dari waktu ke waktu. Setiap jangkar memiliki sistem koordinat yang dapat disesuaikan, berdasarkan jangkar atau bingkai referensi lainnya, untuk memastikan hologram berlabuh tetap tepat di tempatnya. Merender hologram dalam sistem koordinat jangkar memberi Anda posisi yang paling tepat untuk hologram tersebut pada waktu tertentu. Ini datang dengan biaya penyesuaian kecil dari waktu ke waktu ke posisi hologram karena sistem terus memindahkannya kembali ke tempat berdasarkan dunia nyata.

Anda juga dapat bertahan dan berbagi jangkar spasial di seluruh sesi aplikasi dan di seluruh perangkat:

  • Dengan menyimpan jangkar spasial lokal ke disk dan memuatnya kembali nanti, aplikasi Anda dapat menghitung lokasi yang sama di dunia nyata di beberapa sesi aplikasi pada satu HoloLens.
  • Dengan menggunakan Azure Spatial Anchors untuk membuat jangkar cloud, aplikasi Anda dapat berbagi jangkar spasial di beberapa perangkat HoloLens, iOS, dan Android. Dengan membuat setiap perangkat merender hologram menggunakan jangkar spasial yang sama, pengguna akan melihat hologram muncul di tempat yang sama di dunia nyata. Ini memungkinkan pengalaman bersama real time.
  • Anda juga dapat menggunakan Azure Spatial Anchors untuk persistensi hologram asinkron di seluruh perangkat HoloLens, iOS, dan Android. Dengan berbagi jangkar spasial cloud yang tahan lama, beberapa perangkat dapat mengamati hologram yang bertahan sama dari waktu ke waktu, bahkan jika perangkat tersebut tidak hadir bersama pada saat yang sama.

Untuk pengalaman skala berdiri atau skala ruangan untuk headset desktop yang ditambatkan yang akan tetap berada dalam diameter 5 meter, Anda biasanya dapat menggunakan bingkai referensi tahap alih-alih jangkar spasial, yang memberi Anda sistem koordinat tunggal untuk merender semua konten. Namun, jika aplikasi Anda memungkinkan pengguna berjalan lebih dari 5 meter di HoloLens, mungkin beroperasi di seluruh lantai gedung, Anda memerlukan jangkar spasial untuk menjaga konten tetap stabil.

Meskipun jangkar spasial sangat bagus untuk hologram yang harus tetap diperbaiki di dunia, setelah jangkar ditempatkan, itu tidak dapat dipindahkan. Ada alternatif untuk jangkar yang lebih sesuai untuk hologram dinamis yang menandai bersama dengan pengguna. Yang terbaik adalah memposisikan hologram dinamis menggunakan bingkai referensi stasioner (fondasi untuk koordinat dunia Unity) atau bingkai referensi yang terlampir.

Praktik terbaik

Panduan jangkar spasial ini akan membantu Anda merender hologram stabil yang secara akurat melacak dunia nyata.

Membuat jangkar spasial tempat pengguna menempatkannya

Biasanya, pengguna adalah pengguna yang secara eksplisit menempatkan jangkar spasial.

Misalnya, pada HoloLens, aplikasi dapat berpotongan sinar tatapan pengguna dengan jala pemetaan spasial untuk memungkinkan pengguna memutuskan di mana menempatkan hologram. Saat pengguna mengetuk untuk menempatkan hologram tersebut, buat jangkar spasial di titik persimpangan, lalu letakkan hologram di asal sistem koordinat jangkar tersebut.

Jangkar spasial lokal mudah dan berkinerja untuk dibuat. Sistem menggabungkan data internal jika beberapa jangkar dapat berbagi data sensor yang mendasar. Sebaiknya buat jangkar spasial lokal baru untuk setiap hologram yang ditempatkan pengguna secara eksplisit, kecuali dalam kasus yang diuraikan di bawah ini, seperti kelompok hologram yang kaku.

Selalu merender hologram berlabuh dalam jarak 3 meter dari jangkarnya

Jangkar spasial menstabilkan sistem koordinat mereka di dekat asal jangkar. Jika Anda merender hologram lebih dari 3 meter dari asalnya, hologram mungkin mengalami kesalahan posisional yang nyata sebanding dengan jaraknya dari asal tersebut karena efek lengan tuas. Ini berfungsi jika pengguna berdiri di dekat jangkar, karena hologram juga jauh dari pengguna. Dengan kata lain, kesalahan sudut hologram yang jauh akan kecil. Namun, jika pengguna berjalan ke hologram jauh itu, itu akan besar dalam pandangan mereka, membuat efek lengan tuas dari jangkar jauh asal jelas.

Hologram grup yang harus membentuk kluster kaku

Beberapa hologram dapat berbagi jangkar spasial yang sama jika aplikasi mengharapkan hologram tersebut untuk mempertahankan hubungan tetap satu sama lain.

Misalnya, jika Anda meniru tata surya holografik di sebuah ruangan, lebih baik mengikat semua objek tata surya ke jangkar tunggal di tengah. Dengan begitu, mereka akan bergerak lancar berdasarkan satu sama lain. Dalam hal ini, itu adalah tata surya secara keseluruhan yang berlabuh, meskipun bagian komponennya bergerak secara dinamis di sekitar jangkar.

Peringatan kunci untuk menjaga stabilitas hologram adalah mengikuti aturan 3 meter di atas.

Merender hologram yang sangat dinamis menggunakan bingkai referensi stasioner alih-alih jangkar spasial lokal

Jika Anda memiliki hologram yang sangat dinamis, seperti karakter yang berjalan di sekitar ruangan atau antarmuka pengguna mengambang yang mengikuti di sepanjang dinding di dekat pengguna, yang terbaik adalah melompati jangkar spasial lokal, dan merender hologram tersebut langsung dalam sistem koordinat yang disediakan oleh bingkai referensi stasioner. Di Unity, Anda mencapai ini dengan menempatkan hologram langsung di koordinat dunia tanpa WorldAnchor. Hologram dalam bingkai referensi stasioner mungkin mengalami penyimpangan ketika pengguna jauh dari hologram. Tetapi ini cenderung tidak terlihat untuk hologram dinamis: baik hologram terus bergerak atau gerakannya terus-menerus membuatnya dekat dengan pengguna di mana penyimpangan akan diminimalkan.

Salah satu kasus hologram dinamis yang menarik adalah objek yang menganimasikan dari satu sistem koordinat berlabuh ke sistem koordinat lainnya. Misalnya, Anda mungkin memiliki dua kastil terpisah 10 meter, masing-masing pada jangkar spasial mereka sendiri dengan satu kastil menembakkan bola meriam di kastil lainnya. Ketika meriam ditembakkan, Anda dapat merendernya di lokasi yang sesuai dalam bingkai referensi stasioner untuk bertepatan dengan meriam dalam sistem koordinat berlabuh kastil pertama. Kemudian dapat mengikuti lintasannya dalam bingkai referensi stasioner saat terbang 10 meter melalui udara. Ketika bola meriam mencapai kastil lain, Anda dapat memindahkannya ke sistem koordinat benteng kedua yang berlabuh untuk memungkinkan perhitungan fisika dengan tubuh kaku kastil itu.

Jika Anda berbagi hologram yang sangat dinamis di seluruh perangkat, pilih beberapa jangkar spasial cloud untuk bertindak sebagai induknya karena bingkai referensi stasioner tidak dapat dibagikan di seluruh perangkat. Namun, Anda harus memastikan hologram dinamis atau perangkat yang melihatnya tetap berada dalam radius 3 meter jangkar sehingga hologram tampak stabil di semua perangkat.

Hindari membuat kisi jangkar spasial

Anda mungkin tergoda untuk membuat aplikasi Anda menghilangkan kisi jangkar spasial reguler saat pengguna berjalan-jalan, transisi objek dinamis dari jangkar ke jangkar saat mereka bergerak. Namun, ini melibatkan lebih banyak manajemen untuk aplikasi Anda, tanpa manfaat dari data sensor mendalam yang dipertahankan sistem itu sendiri secara internal. Untuk kasus ini, Anda akan mencapai hasil yang lebih baik dengan menempatkan hologram Anda dalam bingkai referensi stasioner seperti yang dijelaskan di bagian di atas. Saat Anda melakukan pra-posisi satu set jangkar spasial cloud di sekitar ruang statis, pertimbangkan untuk menempatkan jangkar spasial di lokasi hologram kunci yang ditemukan pengguna sesuai prinsip di atas daripada membuat kisi jangkar arbitrer. Ini memastikan bahwa Anda akan mendapatkan stabilitas maksimum untuk hologram kunci tersebut.

Merilis jangkar spasial lokal yang tidak lagi Anda butuhkan

Saat jangkar spasial lokal aktif, sistem memprioritaskan menjaga data sensor yang berada di dekat jangkar tersebut. Jika Anda tidak lagi menggunakan jangkar spasial, berhenti mengakses sistem koordinatnya. Ini memungkinkan data sensor yang mendasarnya dihapus seperlunya.

Ini sangat penting untuk jangkar lokal yang telah Anda pertahankan ke penyimpanan jangkar spasial. Data sensor di balik jangkar ini akan disimpan secara permanen untuk memungkinkan aplikasi Anda menemukan jangkar tersebut di sesi mendatang, yang mengurangi ruang yang tersedia untuk melacak jangkar lain. Hanya mempertahankan jangkar lokal yang perlu Anda temukan lagi di sesi mendatang. Sebaiknya hapus dari toko saat mereka tidak lagi bermakna bagi pengguna.

Untuk jangkar spasial cloud, penyimpanan Anda dapat diskalakan sesuai kebutuhan skenario Anda. Anda dapat menyimpan jangkar cloud sebanyak yang Anda butuhkan, melepaskannya ketika Anda tahu bahwa pengguna Anda tidak akan memerlukan jangkar lagi.

Lihat juga