Nastavení kamery v Unity

Když náhlavní soupravu hybridní reality nosíte, stane se středem holografického světa. Komponenta Unity Camera automaticky vykresluje stereocopic a sleduje pohyb a rotaci hlavy. Pokud ale chcete plně optimalizovat vizuální kvalitu a stabilitu hologramu,měli byste nastavit níže popsaná nastavení fotoaparátu.

HoloLens vs. imerzivní náhlavní soupravy VR

Výchozí nastavení komponenty Unity Camera jsou pro tradiční 3D aplikace, které potřebují pozadí jako Skybox, protože nemají skutečný svět.

  • Při spuštění na imerzivní náhlavnísoupravě vykreslujte všechno, co uživatel vidí, a proto si skybox pravděpodobně budete chtít ponechat.
  • Při spuštění na holografické náhlavní soupravě, jako je HoloLens,by se ale skutečný svět měl objevit za vším, co se vykreslí fotoaparátem. Nastavte pozadí fotoaparátu tak, aby bylo průhledné (HoloLens se černá vykreslí jako transparentní) místo textury Skyboxu:
    1. Výběr hlavní kamery na panelu Hierarchie
    2. Na panelu inspektoru vyhledejte komponentu Fotoaparát a změňte rozevírací seznam Vymazat příznaky ze Skyboxu na Plnou barvu.
    3. Vyberte výběr barvy pozadí a změňte hodnoty RGBA na (0, 0, 0, 0).
      1. Pokud tuto možnost nastavíte z kódu, můžete použít Unity Color.clear

MRTK automaticky zřídí konkrétní nastavení fotoaparátu na základě konfigurace v profilu systému fotoaparátu.

Obor názvů:Microsoft.MixedReality.Toolkit. CameraSystem
Typ:MixedRealityCameraSystem

Systém MixedRealityCamera má pro kontrolu neprůhlednosti fotoaparátu vlastnost.

CoreServices.CameraSystem.IsOpaque;

Nastavení kamery

Bez ohledu na to, jaký druh prostředí vyvíjíte, je hlavní kamera vždy primární komponentou stereo vykreslování připojenou k displeji připojenému k vašemu zařízení. Pokud si představíte počáteční pozici uživatele jako (X: 0, Y: 0, Z: 0), bude rozložení aplikace jednodušší. Vzhledem k tomu, že hlavní kamera sleduje pohyb hlavy uživatele, můžete počáteční pozici uživatele nastavit nastavením počáteční pozice hlavní kamery.

Hlavní volbou, kterou musíte udělat, je, jestli vyvíjíte pro HoloLens nebo imerzivní náhlavní soupravy VR. Až to budete mít, přeskočte k části nastavení, která se na vás vztahuje.

HoloLens nastavení fotoaparátu

Pro HoloLens aplikací musíte použít ukotvení pro všechny objekty, které chcete uzamknout do prostředí scény. Doporučujeme použít nevázaný prostor k maximalizaci stability a vytvoření ukotvení ve více místnostech.

Postupujte podle tohoto podrobného kurzu a přidejte a automaticky nakonfigurujte Mixed Reality Toolkit projektu Unity. Je také možné pracovat přímo s třídou MixedRealityPlayspace z MRTK pro Unity a nastavit cílové měřítko na World:

Okno nastavení MRTK

MRTK by měl pozici playspace a kamery zpracovávat automaticky, ale je dobré to zkontrolovat dvakrát:

Playspace MRTK

  1. Na panelu Hierarchie rozbalte objekt MixedRealityPlayspace GameObject a vyhledejte podřízený objekt Hlavní kamera.
  2. Na panelu inspektoru vyhledejte komponentu Transform (Transformace) a změňte umístěnína (X: 0, Y: 0, Z: 0).

Nastavení kamery VR

Windows Mixed Reality podporuje aplikace napříč širokou škálou prostředí ,od aplikací jen pro orientaci až po aplikace v sesázeném měřítku prostřednictvím aplikací na úrovni místnosti. Na HoloLens můžete jít dál a vytvářet světové aplikace, které uživatelům umožňují procházet se více než 5 metrů a zkoumat celé podlaží budovy i dál.

Prvním krokem při vytváření prostředí hybridní reality v Unity je určit, na jaké prostředí bude vaše aplikace cílit:

Prostředí v měřítku místnosti nebo na stavu

Poznámka

Pokud vytváříte pro HL2, doporučujeme vytvořit prostředí na úrovni oka nebo zvážit použití funkce Scene Understanding k odůvodnění podlaží scény.

Použijte třídu MixedRealityPlayspace z MRTK pro Unity a nastavte cílové měřítko na Room nebo Standing:

Okno nastavení MRTK

MRTK by měl pozici playspace a kamery zpracovávat automaticky, ale je dobré to zkontrolovat dvakrát:

Playspace MRTK

  1. Na panelu Hierarchie rozbalte objekt MixedRealityPlayspace GameObject a vyhledejte podřízený objekt Hlavní kamera.
  2. Na panelu inspektoru vyhledejte komponentu Transform (Transformace) a změňte umístěnína (X: 0, Y: 0, Z: 0).

Sédé prostředí

Použijte třídu MixedRealityPlayspace z MRTK pro Unity a nastavte cílové měřítko naSeated:

Okno nastavení MRTK

MRTK by měl pozici playspace a kamery zpracovávat automaticky, ale je dobré to zkontrolovat dvakrát:

Playspace MRTK

  1. Na panelu Hierarchie rozbalte objekt MixedRealityPlayspace GameObject a vyhledejte podřízený objekt Hlavní kamera.
  2. Na panelu inspektoru vyhledejte komponentu Transform (Transformace) a změňte umístěnína (X: 0, Y: 0, Z: 0).

Nastavení pozadí fotoaparátu

Pokud používáte MRTK, pozadí fotoaparátu se automaticky konfiguruje a spravuje. Pro projekty XR SDK nebo starší verze WSA doporučujeme nastavit pozadí fotoaparátu na plnou černou na HoloLens a zachovat skybox pro VR.

Použití více fotoaparátů

Pokud je ve scéně více komponent fotoaparátu, Unity ví, který fotoaparát se má použít pro stereo vykreslování na základě toho, který Objekt GameObject má značku MainCamera. Ve starší verzi XR používá tato značka také k synchronizaci sledování hlavní části. V sadě XR SDK se sledování hlavy řídí skriptem TrackedPoseDriver připojeným k fotoaparátu.

Sdílení vyrovnávacích pamětí hloubky

Sdílení vyrovnávací paměti hloubky aplikace Windows každý snímek poskytne vaší aplikaci jednu ze dvou vylepšení stability hologramu v závislosti na typu náhlavní soupravy, kterou vykreslujete:

  • Imerzivní náhlavní soupravy VR se starají o poziční přeprojektování, když je k dispozici vyrovnávací paměť hloubky, a přizpůsobí hologramy tak, aby byly v umístění i orientaci špatně.
  • HoloLens náhlavní soupravy mají několik různých metod. HoloLens 1 automaticky vybere fokus, když je k dispozici vyrovnávací paměť hloubky, a optimalizuje stabilitu hologramu podél roviny, která protíná nejvíce obsahu. HoloLens 2 stabilizuje obsah pomocí hloubkového lsr (viz poznámky).

Konfigurační dialogové okno MRTK se pokusí nastavit hloubkovou vyrovnávací paměť pro sadu XR SDK i starší WSA, ale je vhodné tyto karty zkontrolovat a ověřit nastavení v Unity.

Použití rovin oříznutí

Vykreslování obsahu příliš blízko uživateli může být ve smíšené realitě nepříjemné. V komponentě Fotoaparát můžete upravit roviny klipů blízko a daleko.

  1. Výběr hlavní kamery napanelu Hierarchie
  2. Na panelu inspektoru vyhledejte komponentu Fotoaparát – roviny oříznutí a změňte textové pole Near (Blízko) z 0,3 na 0,85. Obsah, který se vykreslí ještě blíž, může vést k tomu, že uživatel bude choulí a měli byste se mu vyhnout podle pokynů k vykreslované vzdálenosti.

Nedávný pohled na fotoaparát

Pokud chcete vytvořit prostředí v sesázeném měřítku, můžete díky volání XR získat aktuální hlavní místo uživatele v Unity. Metoda InputTracking.Recenter ve starší verzi XR nebo metoda XRInputSubsystem.TryRecenter v sadě XR SDK

Teleportace

Tato funkce je obvykle vyhrazená pro prostředí VR:

MRTK poskytuje dodejný teleportový systém, který automaticky funguje napříč ručidlami a kontrolery.

Režimy přeprojektu

Obě HoloLens imerzivní náhlavní soupravy přeprojektují každý snímek, který vaše aplikace vykreslí, aby se při vysílání fotonů upravila jakákoli přecházení skutečné pozice uživatele.

Ve výchozím nastavení:

  • Imerzivní náhlavní soupravy VR se postarají o poziční přeprojekt, pokud aplikace poskytuje vyrovnávací paměť hloubky pro daný rámec. Imerzivní náhlavní soupravy také upraví hologramy tak, aby při umístění i orientaci byly špatně zachycující. Pokud není k dispozici vyrovnávací paměť hloubky, systém opraví pouze chyby v orientaci.
  • Holografické náhlavní soupravy jako HoloLens 2 se postarají o poziční přeprojekt bez ohledu na to, jestli aplikace poskytuje vyrovnávací paměť hloubky nebo ne. Poziční přeprojekt je možné bez vyrovnávacích pamětí hloubky HoloLens protože vykreslování je často zhuštěné se stabilním pozadím poskytovaným skutečným světem.

MRTK v současné době nemá pomocníky pro režim přeprojektu. Další informace najdete na jedné z ostatních karet.

Další vývojový kontrolní bod

Pokud postupujete podle cesty vývoje Unity, kterou jsme si nachysnuli, jste v prostředcích k prozkoumání základních stavebních bloků MRTK. Odtud můžete pokračovat k dalšímu stavebnímu bloku:

Nebo můžete přejít Mixed Reality platformy a rozhraní API:

Kdykoli se můžete vrátit k vývojových kontrolních bodům Unity.

Viz také