Araçlar ve görselleştiriciler
Microsoft.MixedReality.WorldLocking.Tools ad alanındaki araçlar ve görselleştiriciler geliştirme sırasında yardımcı olmak için tasarlanmıştır. Ayrıca, Dünya Kilitleme Araçları (WLT) sistemiyle gelişmiş doğrudan etkileşim için de bir başlangıç noktası olabilir.
Uygulama içinde olduğu gibi doğrudan kullanım için tasarlanmamış olsa da uygulama geliştiricisi bunu tercih etmek için ücretsizdir.
WorldLocking.Core,herhangi bir uygun uygulama senaryosunda olduğu gibi çalışacak şekilde tasarlanmıştır. Ancak, Araçlar uygulama hakkında varsayımlarda bulunabilir. Bu varsayımlar bazı durumlarda bunları uygunsuz hale getirebilir.
Araçlardan herhangi birini doğrudan gönderim uygulamanıza eklemeden önce, bu aracın kendi gereksinimleriniz ve kaynaklarınız için özelleştirilmiş bir sürümünü oluşturmayı göz önünde bulundurun.
Araçlar
Ayarlayıcılar
Ayarlayıcılar, yeniden sığdırma olaylarını işleyen bileşenlerdir. Özellikle, Ek Noktaları oluştururlar. Yeniden sığdırma işlemi durumunda, AttachmentPoint bir bildirim geri çağırma görevi görür. Ayarlayıcı bu olayı uygun şekilde işler.
Ek Noktaları hakkında daha fazla kavramsal tartışmaya bakın.
Bir yeniden sığdırma olayına tam olarak doğru tepki, farklı nesne türleri için farklılık gösterir ve uygulamaya özgüdür. Örneğin, nesnenin Parçası şu anda etkin değilse nesnenin görüntülenmesi gerekir mi? Bazı uygulamalar için nesnenin doğru yerleşimi belirlenemediğinden gizli olması gerekir. Diğer uygulamalar için nesneyi geçici olarak yanlış bir pozda görüntülemek, kayboluşunun karışıklığını çekmekten daha iyi olabilir. Nesneyi gizlemesi gereken uygulamalar için bile gizleme işlemini gerçekleştirmenin çeşitli yolları vardır (örneğin, devre dışı bırakma ve uzaklara gitme).
AdjusterFixed ve AdjusterMoving bileşenleri iki yaygın senaryoyu en az düzeyde işler.
AdjusterFixed bileşeni, hedefinin genellikle hareketsiz olduğunu varsayar. Dünya Kilitleme Araçları yeniden sığdırma olayı nedeniyle bir ayarlama pozu gönderirse, AdjusterFixed'in nesne sabitini dünyada tutmak için tasarlanmıştır.
Buna karşılık AdjusterMoving bileşeni, Unity koordinat alanı aracılığıyla hedefinin mobil olduğunu varsayar. World Locking Tools sistemini hedefin konumuna göre değer kazandırır, böylece yeniden sığdırma işlemi durumunda sistem, hedefin fiziksel dünyaya göre konumunu o anda sabit tutmak için en doğru düzeltmeyi yapabilir.
Bağdaştırıcı
Bağdaştırıcı bileşenleri yalnızca çizime yöneliktir. Bağdaştırıcılardan birini kullandığınızı fark ederseniz, Dünya Kilitleme Araçları'nı nasıl kullanmaya çalıştığınızı yeniden düşünmeniz gerekir.
Özellikle, MRTK zaten yerleşik bağdaştırıcılara sahiptir, bu nedenle uygulamanın bir parçası olarak başka koordinat sistemi dönüşümü gerekmez.
Özellikle MRTK kullanılmıyorsa, Spongy Space koordinatlarında raporlanacak olan yerel kaynaklardan Donmuş Alan'a dönüştürme zamanları olabilir. Bu gibi durumlarda, uygulama geliştiricisi iyi bir başvuru olarak buraya dahil edilen Bağdaştırıcılardan birini bulabilir.
WorldAnchorAdapter - WorldAnchor, bir nesnenin Spongy uzaydaki pozunu fiziksel alanda sabit kalacak şekilde ayarlar. Bu, Dünya Kilitleme Araçları tarafından sağlanan dünya kilitli alanla yedeklidir ve bu nedenle nesne Donmuş Alan'da sürüklenecektir. Bu bağdaştırıcı, WorldAnchor'un Donmuş Alan'da bir nesnenin pozunu korumasını sağlar. Bu, tanılama dışında gereksizdir. Unity'nin genel koordinat alanında yer alan tüm nesneler, World Locking Tools tarafından dünya çapında kilitlenir.
ToggleWorldAnchor - WorldAnchorAdapter'a benzer, ancak değiştirilebilir. Ayrıca, WorldLockingManager devre dışı bırakıldığında otomatik olarak normal WorldAnchor davranışına dönüştürür. Yalnızca tanılama için kullanışlıdır.
FrozenSpatialMapping - Bağdaştırıcı bir SurfaceObserver'dan sonuçları yönetir ve doğru şekilde işler. MRTK Uzamsal Farkındalık sistemi tüm bu işlevleri ve daha fazlasını sağlar ve Dünya Kilitleme Araçları ile çalışmak için bağdaştırıcı gerektirmez.
FrozenTapToAdd - Unity'nin Giriş sistemiyle doğrudan iletişim için burada gösterildiği gibi gelen koordinat verilerinin dönüştürülmesi gerekir. MRTK'nın giriş sisteminde bu gereksizdir.
Görselleştiriciler
Tutturucu Graf Görselleştirmesi
AnchorGraphVisual ve ilişkili prefab, sağlanan görselleştirmelerin temelini oluşturur. Bileşen parçaları aşağıdaki gibidir:
Eksenler - Spongy Space (yeşil) ve Donmuş Boşluk (mavi) çıkış noktaları için geçerli pozlar standart 3 ok ekseni tanımlayıcısı olarak gösterilir.
Süngerimsi Tutturucular - Bunlar, Donmuş Dünya Altyapısı iyileştirmesini beslemek için oluşturulmuş olan yerel temel tutturuculardır. Her biri bir halkayla ve onu tanımlayan bir metin etiketiyle gösterilir. Ayrıca, renk ve boyuta göre daha fazla bilgi iletilir.
Etkin bir izlenen yer işareti yeşil olacaktır.
İlgisi sıfır olan izlenen bir yer işareti kırmızı olur.
Desteklenmeyen bir yer işareti sarı olur.
Halka ne kadar büyükse, o çapanın ilgisi de o kadar yüksektir.
Dondurulan Tutturucular - Bunlar Donmuş Alan'daki ilgili başvuru noktalarıdır. İzleyici hatası olmadığında, bunlar Spongy Anchors ile tam olarak hizalanır.
Süngerimsi Donmuş Kenarlar - Bunlar, Süngerimsi Çapaları karşılık gelen Donmuş Tutturuculara bağlar. İzleyici hatası olmadığından, bunlar tesadüfi olacaktır, bu kenarları görmemek her şeyin mükemmel çalıştığı anlamına gelir. Her durumda, bu kenarlar birkaç santimetreden uzun olmamalıdır. Donmuş uçta kırmızı. Renk, süngerimsi uçta maviye soluyor.
Tutturucu Kenarlar - Bu ince mavi-gri çizgiler, çapa grafiğindeki Süngerimsi Tutturucular arasındaki bağlantıları gösterir.
Kullanıcı fiziksel ortam hakkında hareket ettikçe World Locking Tools'un oluşturduğu yer işareti grafiğinin görüntülenmesi için yalnızca WorldLockingTools > Prefabs > AnchorGraphVisual prefab'ın sahne içine bırakılması gerekir. Özel olarak WorldLockingContext'e eşdüzey olarak eklenir, ancak hiyerarşideki tam yerleşimi önemli değildir. Ancak kamera hiyerarşisine yerleştirilmemelidir.
WLT'nin dahili olarak oluşturduğu ve kullandığı uzamsal tutturucular kamera konumunda oluşturulur. Göz düzeyinde bir yer işareti görselleştirmeleri alanında gezinmek önerilmez, çünkü sistem varsayılan olarak bunları gerçek konumlarından 1 metre aşağıda görüntüler. Yer işareti görselleştirmelerini gerçek yer işareti konumlarında görmek için Yer Işareti Görseli bileşeninin Dikey Yer Değiştirme parametresini sıfır olarak ayarlayın.
Ek çıkış
Dünya Kilitleme Örnekleri metin tanılamasını içerir. Bunların çoğu, yeteneklerine sahip müşteriler yerine yalnızca Dünya Kilitleme Araçları geliştiricileriyle ilgilidir. Ancak, gerçek zamanlı görüntüleme için StatusToText betiğinde gösterildiği gibi okuma ve kullanılabilir.
Otopsi sonrası analiz için WorldLockingContext'in Tanılama bölümü, Donmuş Dünya Altyapısı hatalarını raporlamada çok yararlı olabilir. Daha fazla bilgi için bkz . Hata bildirme.