5. Azure Spatial Anchors paylaşılan deneyimle tümleştirme

Bu öğreticide, Azure Spatial Anchors (ASA) ile paylaşılan deneyimle nasıl tümleştirin, öğrenirsiniz. ASA, kullanıcıların birbirlerini gerçek fiziksel konumlarında görmeleri ve paylaşılan deneyimi aynı yerde görmeleri için fiziksel dünyaya ortak bir başvuruya sahip olmak için birden çok cihaza izin verir.

Hedefler

  • Çok cihazlı hizalama için ASA'yı paylaşılan bir deneyimle tümleştirin
  • ASA'nın yerel paylaşılan deneyim bağlamında nasıl çalıştığının temellerini öğrenin

Sahneyi hazırlama

Hiyerarşi penceresinde SharedPlayground nesnesini genişletin ve ardından TableAnchor nesnesini genişletarak alt nesnelerini görüntüleyin:

SharedPlayground ve TableAnchor nesneleri genişletilmiş Unity

Bu Project Varlıklar MRTK'sı'ne gidin. Tutorials.MultiUserCapabilitiesPrefabs klasörü ve Buttons prefab'ıTableAnchor alt nesnesine sürükleyerek TableAnchor nesnesinin bir alt adı olarak sahnenize ekleyin:

Yeni eklenen Düğmeler önceden seçilmiş Unity

Sahneyi çalıştırmak için düğmeleri yapılandırma

Bu bölümde, paylaşılan bir deneyimde uzamsal hizalama elde etmek için Azure Spatial Anchors'nin nasıl kullanılayrı temellerini gösteren bir dizi düğme olay yapılandıracaksınız.

Hiyerarşi penceresinde Düğme nesnesini genişletin veStartAzureSessionadlı ilk alt düğme nesnesini seçin:

BaşlatAzureSession düğme nesnesi seçili unity

Denetçi penceresinde Etkileşime değiştirilebilir (Betik) bileşenini bulun ve OnClick () olayını aşağıdaki gibi yapılandırın:

  • Hiçbiri (Nesne) alanınaTableAnchor nesnesini attayabilirsiniz
  • İşlev Yok açılan listesinde AnchorModuleScriptStartAzureSession () işlevini seçin

StartAzureSession düğmesi OnClick olayı yapılandırılmış Unity

Hiyerarşi penceresinde OluşturAzureAnchoradlı ikinci alt düğme nesnesini seçin, ardından Denetçi penceresinde Etkileşime değiştirilebilir (Betik) bileşenini bulun ve OnClick () olayı aşağıdaki gibi yapılandırın:

  • Hiçbiri (Nesne) alanınaTableAnchor nesnesini attayabilirsiniz
  • İşlev Yok açılan listesindeAnchorModuleScriptCreateAzureAnchor () işlevini seçin
  • Görüntülenen yeni Hiçbiri (Oyun Nesnesi) alanına TableAnchor nesnesini attayabilirsiniz

CreateAzureAnchor düğmesi OnClick olayı yapılandırılmış Unity

Hiyerarşi penceresinde, ShareAzureAnchoradlı üçüncü alt düğme nesnesini seçin, ardından Denetçi penceresinde Etkileşime değiştirilebilir (Betik) bileşenini bulun ve OnClick () olayı aşağıdaki gibi yapılandırın:

  • Hiçbiri (Nesne) alanınaTableAnchor nesnesini attayabilirsiniz
  • İşlev Yok açılan listesindenSharingModuleScriptPaylaşımıAzureAnchor () işlevini seçin

ShareAzureAnchor düğmesi OnClick olayı yapılandırılmış Unity

Hiyerarşi penceresinde GetAzureAnchoradlı dördüncü alt düğme nesnesini seçin, ardından Denetçi penceresinde Etkileşime değiştirilebilir (Betik) bileşenini bulun ve OnClick () olayını aşağıdaki gibi yapılandırın:

  • Hiçbiri (Nesne) alanınaTableAnchor nesnesini attayabilirsiniz
  • İşlev Yok açılan listesindenSharingModuleScriptGetAzureAnchor () işlevini seçin

GetAzureAnchor düğmesi OnClick olayı yapılandırılmış Unity

Sahneyi Azure kaynağına bağlama

Hiyerarşi penceresinde SharedPlayground nesnesini genişletin ve TableAnchor nesnesini seçin.

Denetçi penceresinde Spatial Anchor Manager (Script) bileşenini bulun ve Kimlik Bilgileri bölümünü bu öğretici serisinin Önkoşulları'nın bir parçası olarak oluşturulan Azure Spatial Anchors hesabından kimlik bilgileriyle yapılandırın:

  • Hesap Spatial Anchors alanına Azure Hesap Kimliği Spatial Anchors yapıştırın
  • Spatial Anchors Hesabı Anahtarı alanına Azure hesap hesabınızdan birincil veya ikincil Erişim Spatial Anchors yapıştırın

Spatial Anchor Manager yapılandırılmış Unity

İpucu

Sahnede Spatial Anchors Hesap Kimliği ve Anahtarı ayarlamak yerine tüm projeniz için bu ayarı kullanabilirsiniz; ASA'yı kullanarak birden çok sahneniz varsa bu avantaja sahip olabilir. Bunu yapmak için Project penceresinde > Varlıklar AzureSpatialAnchors.SDK > Resources >> varlığına gidin ve Denetçi penceresindeki değerleri ayarlayın.

Hiyerarşi penceresinde TableAnchor nesnesini seçin, sonra Denetçi penceresinde Yer Noktası Modülü (Betik) bileşenini bulun ve aşağıdaki gibi yapılandırın:

  • Ortak Paylaşım Pini alanında birkaç basamak değiştir, böylece pin projenize özgü hale gelir

Sabit Noktası Modülü Betiği yapılandırılmış Unity

TableAnchor nesnesi seçili durumdayken Denetçi penceresinde tüm betik bileşenlerinin etkinleştirildiğinden emin olun:

  • Etkinleştirmek için Spatial Anchor Manager (Script) bileşenlerinin yanındaki onay kutusunu işaretleyin
  • Bunu etkinleştirmek için Yer Işareti Modülü Betiği (Betik) bileşenlerinin yanındaki onay kutusunu işaretleyin
  • Etkinleştirmek için Paylaşım Modülü Betiği (Betik) bileşenlerinin yanındaki onay kutusunu işaretleyin

Tüm TableAnchor betik bileşenlerinin etkin olduğu Unity

Uzamsal hizalama deneyimi deniyorum

Not

Azure Spatial Anchors Unity'de çalıştırılanmaz. Sonuç olarak, Azure Spatial Anchors işlevselliğini test etmek için projeyi en az iki cihaza dağıtmanız gerekir.

Şimdi Unity projesini derlemek ve iki cihaza dağıtmak için Azure Anchor ID'yi paylaşarak cihazlar arasında uzamsal hizalama elde edin. Test etmek için şu adımları izleyin:

  1. Cihaz 1'de: Uygulamayı başlatın (Keşif Gezgini örneği ve tabloya yerleştirilir)
  2. Cihaz 2'de: Uygulamayı başlatın (her iki kullanıcı da Keşif Gezgini ile tabloyu görüyor, ancak tablo aynı yerde görünmez ve kullanıcı avatarları kullanıcıların bulunduğu yerde görünmez)
  3. Cihaz 1'de: Azure Oturumunu Başlat düğmesine basın
  4. Cihaz 1'de: Azure Anchor Oluştur düğmesine basın (TableAnchor nesnesinin konumunu sabitler ve yer noktası bilgilerini Azure kaynağında depolar).
  5. Cihaz 1'de: Azure Yer Noktasını Paylaş düğmesine basın (yer noktası kimliğini gerçek zamanlı olarak diğer kullanıcılarla paylaşır)
  6. Cihaz 2'de: Azure Oturumunu Başlat düğmesine basın
  7. Cihaz 2'de: Azure Yer Noktasını Al düğmesine basın (paylaşılan yer noktası kimliğine ilişkin yer noktası bilgilerini almak için Azure kaynağına bağlanır, ardından TableAnchor nesnesini 1 cihazıyla yer noktasının oluşturul bulunduğu konuma taşır)

İpucu

İki farklı cihaza erişiminiz yoksa, projeyi HoloLens cihazlar için Azure Spatial Anchors oluşturma yönergelerini takip edebilirsiniz.

Tebrikler

Bu öğreticide, cihazları paylaşılan bir deneyimde hizalamak için Azure'Spatial Anchors güçlü cihazlarını nasıl tümleştirebilirsiniz?

Bu öğretici serisi, Photon hesabı ayarlamayı, bir PUN uygulaması oluşturmayı, PUN'ı Unity projesiyle tümleştirin, kullanıcı avatarlarını ve paylaşılan nesneleri yapılandırmayı ve son olarak Azure Spatial Anchors kullanarak birden çok katılımcıyı hizalamayı öğrendiniz.