Pozorovatel pro porozumění na scéně

při porozumění scény se vrátí sémantická reprezentace entit scény i jejich geometrické formy na HoloLens 2 (HoloLens 1. generace se nepodporuje).

Mezi očekávané případy použití této technologie patří:

  • Umístit objekty na nejbližší povrch určitého druhu (např. zeď a podlahové)
  • Vytvoření navigace – mřížka pro hry stylu platformy
  • Poskytněte uživatelsky přívětivou geometrii pro modul fyziky jako Quad
  • Zrychlete vývoj tím, že se vyhnete nutnosti psát podobné algoritmy.

Porozumění scény se zavádí jako experimentální funkce v MRTK 2,6. Integruje se do MRTK jako prostorového pozorovatele s názvem . porozumění scény funguje jak se starším kanálem XR, tak s kanálem sady XR SDK (OpenXR (od MRTK 2,7) a Windows modul plug-in XR). V obou případech WindowsSceneUnderstandingObserver se používá.

Poznámka

Použití principu scény ve vzdálené komunikaci není podporováno.

Přehled pozorovatele

Po zobrazení výzvy WindowsSceneUnderstandingObserver vrátí WindowsSceneUnderstandingObserver s atributy, které jsou užitečné pro aplikaci pro pochopení jejího okolí. Frekvence měření, vrácený typ objektu (např. zeď, podlaha) a jiné chování pozorovatele jsou závislé na konfiguraci pozorovatele prostřednictvím profilu. Pokud má například maska překrytí požadovaný pozorovatel, musí být nakonfigurovaný tak, aby generoval Quad. Zaznamenaná scéna může být uložena jako serializovaný soubor, který lze později načíst pro opětovné vytvoření scény v editoru režimu přehrávání.

Nastavení

Důležité

porozumění scény se podporuje jenom u HoloLens 2 a Unity 2019,4 a vyšších.

  1. Zajistěte, aby byla platforma v nastavení sestavení nastavena na UWP.
  2. Získejte porozumění balíčku pomocí funkce Mixed reality.

Použití scény porozumění

Nejrychlejší způsob, jak začít s porozuměním scény, je podívat se na ukázku scény.

Scéna – princip ukázkové scény

v Unity pomocí průzkumníka Project otevřete soubor scény v nástroji Examples/Experimental/SceneUnderstanding/Scenes/SceneUnderstandingExample.unity a stiskněte tlačítko přehrát.

Důležité

Platí jenom pro MRTK 2.6.0 – Pokud používáte nástroj funkce Mixed reality nebo jinak importujete přes UPM, importujte prosím ukázky ukázek – SpatialAwareness před importem ukázky experimentálních SceneUnderstanding z důvodu problému závislosti. další informace najdete v tomto GitHubm problému .

Scény znázorňuje následující:

  • Vizualizace pozorovaných objektů scény v uživatelském rozhraní aplikace pro konfiguraci pozorovatele
  • Ukázkový DemoSceneUnderstandingController skript, který ukazuje, jak změnit nastavení pozorovatele a naslouchat relevantním událostem
  • Ukládání dat scény do zařízení pro vývoj offline
  • Načítání dříve uložených dat scény (soubory. Byte) pro podporu vývojového pracovního postupu v editoru

Důležité

Ve výchozím nastavení ShouldLoadFromFile je vlastnost pozorovatele nastavená na hodnotu false. Chcete-li zobrazit vizualizaci serializované ukázkové místnosti, přečtěte si část Konfigurace služby pozorovatele níže a nastavte vlastnost na hodnotu true v editoru.

Poznámka

Ukázková scéna je založená na starším kanálu XR. Pokud používáte kanál SDK XR, měli byste odpovídajícím způsobem upravit profily. Poskytnutá scéna porozuměla systémovému profilu pro povědomí o prostorech ( DemoSceneUnderstandingSystemProfile ) a scéně, jak profily pozorovatelů ( DefaultSceneUnderstandingObserverProfile a DemoSceneUnderstandingObserverProfile ) fungují pro oba kanály.

Poznámka

Ukázková scéna zaznamená There is no active AsyncCoroutineRunner when an action is posted. upozornění za určitých okolností z důvodu pořadí provádění inicializace nebo vlákna. Pokud si můžete potvrdit, že AsyncCoroutineRunner je komponenta připojená k GameObject "demo Controller" a součást/GameObject zůstane zapnutá/aktivní ve scéně (výchozí případ), upozornění se dá bezpečně ignorovat. Při vytváření nové scény se sestavou scény ale nezapomeňte vytvořit prázdnou GameObject v kořenovém adresáři a připojit k němu skript, jinak porozumění scény nemusí správně fungovat.

Konfigurace služby pozorovatele

Vyberte herní objekt MixedRealityToolkit a ověřte inspektor.

umístění pro porozumění scény v hierarchii

Umístění MRTK v inspektoru

Tyto možnosti umožní, aby jedna nakonfigurovala WindowsSceneUnderstandingObserver .

Ukázkový skript

Ukázkový skript DemoSceneUnderstandingController. cs ukazuje hlavní koncepty pro práci s porozuměním ve scéně.

  • Přihlášení k odběru scény porozumění událostem
  • Zpracování scény, porozumění událostem
  • Konfigurace za WindowsSceneUnderstandingObserver běhu

Přepínací panely v rámci scény mění chování scény porozumění pozorovateli voláním veřejných funkcí tohoto ukázkového skriptu.

Zapnutím instance Prefabsse ukáže, že se vytvoří objekty, které se přizpůsobí velikosti všech SpatialAwarenessSceneObject, které se v rámci nadřazeného objektu zavedou s úhlednými.

možnosti kontroleru ukázek

Předdefinované poznámky k aplikaci

sestavte a nasaďte do HoloLens standardním způsobem. Po spuštění se k přehrávání s funkcemi zobrazí počet tlačítek.

Všimněte si, že při provádění dotazů pozorovatele dojde k několika pitm. Nespředná konfigurace výsledku žádosti o načtení v datové části události, která neobsahuje očekávaná data. Například pokud jedna nepožaduje Quad, nebudou k dispozici žádné textury překrytí masky. V takovém případě se nezobrazí žádná světová síť, Pokud pozorovatel není nakonfigurovaný tak, aby vyžadoval sítě. DemoSceneUnderstandingControllerSkript se postará o některé z těchto závislostí, ale ne všechny.

K uloženým souborům scény se dá dostat prostřednictvím portálu zařízení na adrese . Tyto soubory scény lze v editoru použít tak, že je zadáte v profilu pozorovatele, který najdete v inspektoru.

Umístění souboru bajtů na portálu zařízení

Serializované bajty scény v pozorovateli

Viz také