Sahne 'i anlama gözlemci

sahnenin anlaşılmasına , sahne varlıklarının anlamlı bir gösterimi HoloLens 2 ' de geometrik formlar (HoloLens 1. Gen desteklenmez) döndürülür.

Bu teknolojinin bazı beklenen kullanım durumları şunlardır:

  • Nesneleri belirli bir türden en yakın yüzeyde (örn. duvar ve kat) yerleştir
  • Platform stili oyunları için gezinti kafesi oluşturun
  • Tüm fizik altyapısına, Quads olarak kolay geometri sağlama
  • Benzer algoritmalar yazma ihtiyacını önleyerek geliştirme sürecini hızlandırın

Sahne anlama, MRTK 2,6 ' de deneysel bir özellik olarak sunulmuştur. Adlı bir uzamsal gözlemci olarak mrtk ile tümleşiktir . sahnenin anlaşılmasının yanı sıra eski xr işlem hattı ve xr SDK işlem hattı (hem openxr (mrtk 2,7 ' den başlayarak) ve Windows xr eklentisi) ile birlikte kullanılabilir. Her iki durumda da WindowsSceneUnderstandingObserver kullanılır.

Not

Uzaktan Iletişim için sahnenin anlaşılmasına yönelik destek desteklenmez.

Gözlemciye genel bakış

Sorulduğunda,, WindowsSceneUnderstandingObserver uygulamanın surkiyle anlaşılması için yararlı öznitelikler Içeren WindowsSceneUnderstandingObserver öğesini döndürür. Döndürülen nesne türü (örn. duvar, kat) ve diğer gözlemci davranışları, izleme sıklığı profil aracılığıyla gözlemci yapılandırmasına bağımlıdır. Örneğin, occlusiyon maskesi isteniyorsa, gözlemciye, Quads oluşturmak için yapılandırılması gerekir. Gözlenen sahne, daha sonra, sahneyi düzenleyici oynatma modunda yeniden oluşturmak için daha sonra yüklenebilecek serileştirilmiş dosya olarak kaydedilebilir.

Kurulum

Önemli

sahne anlamak yalnızca HoloLens 2 ve Unity 2019,4 ve üzeri sürümlerde desteklenir.

  1. Platformun derleme ayarları 'nda UWP olarak ayarlandığından emin olun.
  2. Karma gerçeklik Özellik aracıaracılığıyla sahnenin anlaşılmasına neden olan paketi alın.

Sahnenin anlaşılmasına

Sahnenin anlaşılmasına başlamanın en hızlı yolu, örnek sahneye göz atın.

Sahne, örnek sahneyi anlama

Unity 'de, içindeki sahne dosyasını açmak için Project gezginini kullanın Examples/Experimental/SceneUnderstanding/Scenes/SceneUnderstandingExample.unity ve yürüt 'e basın!

Önemli

Yalnızca MRTK 2.6.0 için geçerlidir-karma gerçeklik özelliği Aracı kullanılırken veya UPM aracılığıyla içeri aktarırken, lütfen bir bağımlılık sorunu nedeniyle deneysel bit tanıma örneğini içeri aktarmadan önce gösterileri-Spatıalawarçarpma örneğini içeri aktarın. daha fazla bilgi için lütfen bu GitHub soruna bakın.

Sahne, aşağıdakileri gösterir:

  • Gözlemciyi yapılandırma için uygulama kullanıcı arabiriminde ile gözlemlenen Sahnesnelerin görselleştirilmesi
  • DemoSceneUnderstandingControllerGözlemci ayarlarını değiştirmeyi ve ilgili olayları dinlemeyi gösteren örnek betik
  • Çevrimdışı geliştirme için sahne verilerini cihaza kaydetme
  • Düzenleyici geliştirme iş akışını desteklemek için daha önce kaydedilen sahne verileri (. Bytes dosyaları) yükleniyor

Önemli

Varsayılan olarak, ShouldLoadFromFile gözlemci özelliği false olarak ayarlanır. Seri hale getirilmiş bir örnek odanın görselleştirmesini görmek için lütfen aşağıdaki gözlemci hizmetini yapılandırma bölümüne bakın ve düzenleyicide özelliği true olarak ayarlayın.

Not

Örnek sahne, eski XR ardışık düzenine dayanır. XR SDK işlem hattını kullanıyorsanız profilleri uygun şekilde değiştirmeniz gerekir. Uzamsal tanıma sistem profilini ( DemoSceneUnderstandingSystemProfile ) ve sahneyi anlamak gözlemcisini ( DefaultSceneUnderstandingObserverProfile ve DemoSceneUnderstandingObserverProfile ) her iki işlem hattı için de anlamak için sunulan sahne.

Not

Örnek sahne, There is no active AsyncCoroutineRunner when an action is posted. başlatma/iş parçacığı yürütme sırası nedeniyle belirli bir koşullarda uyarı kaydeder. AsyncCoroutineRunnerBileşenin "demo denetleyicisi" oyunu nesnesine ekli olduğunu ve bileşen/oyunnesnesi sahne içinde etkin/etkin kalır (varsayılan durum), uyarı güvenle yoksayılabilir. Ancak, sahneye göre yeni bir sahne oluştururken lütfen kökte boş bir oyun nesnesi oluşturup betiği buna iliştirdiğinizden emin olun , aksi takdirde sahnenin anlaşılmasına düzgün şekilde çalışmayabilir.

Gözlemci hizmetini yapılandırma

' MixedRealityToolkit ' oyun nesnesini seçin ve Inspector 'ı kontrol edin.

sahnenin hiyerarşide konum anlama

MRTK konum denetçisinde

Bu seçenekler, bir birinin yapılandırmasına izin verir WindowsSceneUnderstandingObserver .

Örnek betik

Örnek betik Demomanzara. cs , sahne tanıma hizmeti ile çalışma konusunda önemli kavramların olduğunu gösterir.

  • Sahneye yönelik olaylara abone olma
  • Sahne anlama olaylarını işleme
  • WindowsSceneUnderstandingObserverÇalışma zamanında yapılandırma

Sahnedeki panelde geçiş yapar, bu örnek betiğin ortak işlevlerini çağırarak sahne 'nin gözlemcisini anlama davranışını değiştirir.

Prefabs örneğiniaçmak, bir üst nesne altında düzgün şekilde toplanmış olan tüm Spatıalawarenessmanzara eobjectöğesine sığması için boyut veren nesneleri oluşturmayı gösterir.

Demo denetleyicisi seçenekleri

Oluşturulan uygulama notları

HoloLens oluşturun ve standart şekilde dağıtın. Çalışmaya başladıktan sonra, özelliklerle birlikte oynatacak birkaç düğme görüntülenmelidir.

Bu durumda, gözlemciye sorgu yapmaya yönelik bazı getiridir. Olay yükünüzü beklenen verileri içermeyen bir getirme isteğinin yanlış yapılandırılması sonucu. Örneğin, bir, bir Quads istemezse, hiç occlusmask dokuları mevcut olmayacaktır. Wise gibi, gözlemci, kafesler istemek üzere yapılandırılmamışsa bir dünya ağı görünmez. DemoSceneUnderstandingControllerBetik bu bağımlılıklardan bazılarını ele alır, ancak tümünü kullanmaz.

Konumundaki cihaz portalından kaydedilen sahne dosyalarına erişilebilir . Bu sahne dosyaları, denetçisinde bulunan gözlemci profilinde belirtilerek, düzenleyicide kullanılabilir.

Bayt dosyasının cihaz portalı konumu

Gözlemci içinde serileştirilmiş sahne baytları

Ayrıca Bkz.