Megosztás a következőn keresztül:


Kamerabeállítás a Unityben

Ha vegyes valóságú headsetet visel, az a holografikus világ középpontjává válik. A Unity Kamera összetevő automatikusan kezeli a sztereoszkopikus renderelést, és követi a fej mozgását és forgását. A vizuális minőség és a hologram stabilitásának teljes optimalizálásához azonban meg kell adnia az alábbiakban ismertetett kamerabeállításokat.

HoloLens vs VR modern headsetek

A Unity Kamera összetevő alapértelmezett beállításai hagyományos 3D-alkalmazásokhoz tartoznak, amelyeknek skybox-szerű háttérre van szükségük, mivel nincs valós világuk.

  • Modern headseten való futtatáskor mindent renderel, amit a felhasználó lát, ezért valószínűleg meg szeretné tartani a skyboxot.
  • Ha azonban holografikus headseten fut, mint a HoloLens, a valós világnak minden mögött meg kell jelennie, amit a kamera renderel. Állítsa a kamera hátterét transzparensre (HoloLensben a fekete renderelés átlátszóként) a Skybox-textúra helyett:
    1. Válassza ki a fő kamerát a Hierarchia panelen
    2. A Felügyelő panelen keresse meg a Kamera összetevőt, és módosítsa a Jelzők törlése legördülő menüt a Skyboxról egyszínűre
    3. Válassza ki a Háttérszínválasztót, és módosítsa az RGBA-értékeket (0, 0, 0, 0)
      1. Ha ezt kódból állítja be, használhatja a Unity Color.clear

Az MRTK automatikusan kezeli a kamerabeállításokat a kamerarendszer-profil konfigurációja alapján.

Névtér: Microsoft.MixedReality.Toolkit.CameraSystem
Típus: MixedRealityCameraSystem

A kamera átlátszatlanságának ellenőrzéséhez a MixedRealityCamera rendszernek van egy IsOpaque tulajdonsága.

CoreServices.CameraSystem.IsOpaque;

Kamera beállítása

Bármilyen felületet is fejleszt, a fő kamera mindig az eszköz fejre csatlakoztatott kijelzőjéhez csatlakoztatott elsődleges sztereó renderelő összetevő. Egyszerűbb lesz az alkalmazás elrendezése, ha a felhasználó kezdő pozícióját (X: 0, Y: 0, Z: 0) képzeli el. Mivel a fő kamera a felhasználó fejének mozgását követi, a felhasználó kezdőpozícióját a fő kamera kezdőpozíciójának beállításával állíthatja be.

A központi választás az, hogy HoloLens vagy VR modern headsetekhez fejleszt. Miután megkapta ezt, ugorjon arra a szakaszra, amelyre a beállítási szakasz vonatkozik.

HoloLens kamera beállítása

A HoloLens-alkalmazásokhoz horgonyokat kell használnia a jelenetkörnyezetbe zárolni kívánt objektumokhoz. Javasoljuk, hogy határtalan helyet használjon a stabilitás maximalizálása érdekében, és hozzon létre horgonyokat több helyiségben.

Ezt a lépésenkénti oktatóanyagot követve hozzáadhatja és automatikusan konfigurálhatja a Mixed Reality-eszközkészletet a Unity-projektben. A Unityhez készült MRTK MixedRealityPlayspace osztályával közvetlenül is dolgozhat, és a célskálát a világra állíthatja:

MRTK-beállítások ablak

Az MRTK-nak automatikusan kezelnie kell a játéktér és a kamera helyzetét, de érdemes duplán ellenőrizni:

MRTK playspace

  1. A Hierarchia panelen bontsa ki a MixedRealityPlayspace GameObject elemet, és keresse meg a fő kamera gyermekobjektumát
  2. Az Inspector panelen keresse meg az Átalakítás összetevőt, és módosítsa a pozíciót (X: 0, Y: 0, Z: 0)

VR-kamera beállítása

A Windows Mixed Reality számos felhasználói felületi skálán támogatja az alkalmazásokat, a csak tájolásos és az üléses alkalmazásoktól kezdve a helyiségméretű alkalmazásokig. A HoloLensen továbbmehet, és olyan világszintű alkalmazásokat készíthet, amelyek segítségével a felhasználók 5 métert meghaladó sétát tehetnek, és felfedezhetik az épület teljes emeletét és azon túl is.

A vegyes valósági élmény Unityben való létrehozásának első lépése annak meghatározása, hogy az alkalmazás milyen skálázást céloz meg:

Helyiségméretű vagy álló élmények

Feljegyzés

Ha HL2-re készül, javasoljuk, hogy hozzon létre egy szemszintű felületet, vagy fontolja meg a Jelenetfelismerés használatát a jelenet padlójának okára.

Használja az MRTK For Unity MixedRealityPlayspace osztályát, és állítsa a célskálát helyiségre vagy állóra:

MRTK-beállítások ablak

Az MRTK-nak automatikusan kezelnie kell a játéktér és a kamera helyzetét, de érdemes duplán ellenőrizni:

MRTK playspace

  1. A Hierarchia panelen bontsa ki a MixedRealityPlayspace GameObject elemet, és keresse meg a fő kamera gyermekobjektumát
  2. Az Inspector panelen keresse meg az Átalakítás összetevőt, és módosítsa a pozíciót (X: 0, Y: 0, Z: 0)

Ülő élmények

Használja az MRTK For Unity MixedRealityPlayspace osztályát, és állítsa a célskálát ülésre:

MRTK-beállítások ablak

Az MRTK-nak automatikusan kezelnie kell a játéktér és a kamera helyzetét, de érdemes duplán ellenőrizni:

MRTK playspace

  1. A Hierarchia panelen bontsa ki a MixedRealityPlayspace GameObject elemet, és keresse meg a fő kamera gyermekobjektumát
  2. Az Inspector panelen keresse meg az Átalakítás összetevőt, és módosítsa a pozíciót (X: 0, Y: 0, Z: 0)

A kamera hátterének beállítása

HA MRTK-t használ, a kamera háttere automatikusan konfigurálva és felügyelve lesz. XR SDK- vagy örökölt WSA-projektek esetén azt javasoljuk, hogy a kamera hátterét fekete színre állítsa a HoloLensre, és tartsa meg a VR-hez készült skyboxot.

Több kamera használata

Ha a jelenetben több kameraösszetevő is található, a Unity tudja, hogy melyik kamerát használja a sztereoszkopikus rendereléshez, amely alapján a GameObject tartalmazza a MainCamera címkét. Az örökölt XR-ben ezzel a címkével szinkronizálja a fejkövetést. Az XR SDK-ban a fejkövetést egy, a kamerához csatlakoztatott TrackedPoseDriver-szkript vezérli.

Megosztási mélységpufferek

Ha az alkalmazás mélységi pufferét windowsosra osztja, az alkalmazás a következőhöz renderelt headset típusától függően két fokozza a hologram stabilitását:

  • A VR modern headsetjei a mélységi puffer használatakor gondoskodhatnak a pozíció-visszapréselésről, így a hologramok pozícióban és tájolásban is módosíthatók.
  • A HoloLens headsetek többféle módszert is használnak. A HoloLens 1 automatikusan kijelöl egy fókuszpontot a mélységi puffer megadásakor, és optimalizálja a hologram stabilitását a legtöbb tartalmat metsző sík mentén. A HoloLens 2 a mélységi LSR használatával stabilizálja a tartalmat (lásd megjegyzések).

Az MRTK konfigurációs párbeszédpanelje megkísérli beállítani a mélységi pufferbeállításokat az XR SDK-hoz és az örökölt WSA-hoz is, de érdemes ellenőrizni ezeket a lapokat, és ellenőrizni a beállításokat a Unityben.

Vágósíkok használata

A felhasználóhoz túl közel álló tartalmak megjelenítése kényelmetlen lehet a vegyes valóságban. A Kamera összetevőn beállíthatja a közeli és távoli vágósíkokat .

  1. Válassza ki a fő kamerát a Hierarchia panelen
  2. Az Inspector panelen keresse meg a Kamera összetevő vágósíkjait, és módosítsa a Közeli szövegmezőt 0,3-ról 0,85-re. A még közelebb renderelt tartalom felhasználói kényelmetlenséget okozhat, és a renderelési távolságra vonatkozó irányelveknek megfelelően kerülni kell.

A kamera legutóbbi beállítása

Ha ülő szintű élményt hoz létre, az XR meghívásával a Unity világát a felhasználó aktuális vezető pozíciójában teheti meg. InputTracking.Recenter metódus az örökölt XR-ben vagy az XRInputSubsystem.TryRecenter metódusban az XR SDK-ban.

Teleportáció

Ez a funkció általában VR-élményekhez van fenntartva:

Az MRTK egy beépített teleportrendszert biztosít, amely automatikusan működik a csuklós kezek és vezérlők között.

Újraprojectioni módok

Mind a HoloLens, mind a modern headsetek újraprojálják az alkalmazás által renderelt összes keretet, hogy a fotonok kibocsátásakor a felhasználó tényleges fejpozíciójának bármilyen téves kiszámíthatatlansága módosuljon.

Alapértelmezés szerint:

  • A VR modern headsetjei gondoskodnak a pozíció-újraprojecióról, ha az alkalmazás mélységi puffert biztosít egy adott kerethez. A modern headsetek a hologramokat is módosítják a pozíció és a tájolás helytelensége érdekében. Ha nincs megadva mélységi puffer, a rendszer csak a tájolásban lévő téves kiszámíthatatlanságokat javítja ki.
  • Az olyan holografikus headsetek , mint a HoloLens 2, gondoskodnak a pozíció-visszavételről, függetlenül attól, hogy az alkalmazás biztosítja-e a mélységi puffert. A holoLens-en mélységi pufferek nélkül is lehetséges a pozíció-újraprojeció, mivel a renderelés gyakran ritka a valós világ által biztosított stabil háttérrel.

Az MRTK jelenleg nem rendelkezik segítőkkel a reprojection módhoz. További információért tekintse meg a többi lap egyikét.

Következő fejlesztési ellenőrzőpont

Ha a Unity fejlesztési útját követi, akkor az MRTK alapvető építőelemeinek felfedezése közben jár. Innen továbbléphet a következő építőelemre:

Vagy ugorjon a Mixed Reality platform képességeire és API-ira:

Bármikor visszatérhet a Unity fejlesztési ellenőrzőpontjaihoz .

Lásd még