Vegyes valóság rögzítése – áttekintés

Megjegyzés

A HoloLens 2 új MRC-képességével kapcsolatos útmutatásért lásd az alábbi Renderelés a MÉ kameráról című témakört.

Bármikor készíthet vegyes valósági felvételt (MRC) fényképet vagy videót, de az alkalmazás fejlesztésekor figyelembe kell venni néhány dolgot. Ez magában foglalja az MRC-vizualizációk minőségére vonatkozó ajánlott eljárásokat, valamint a rendszerváltozásokra való reagálást az MRC-k rögzítése közben.

A fejlesztők zökkenőmentesen integrálhatják a vegyes valóság rögzítését és beszúrását az alkalmazásaikba.

A HoloLensen (első generációs) futó MRC legfeljebb 720p felbontásban támogatja a videókat és a fényképeket, míg a HoloLens 2-on futó MRC legfeljebb 1080p és 4K felbontású fényképeket támogat.

A minőségi MRC fontossága

Függetlenül attól, hogy a Microsoft Store-oldalon a vegyes valóság képernyőképei vagy a közösségi hálózatokon tartalmat megosztó más felhasználók, Mixed Reality A média rögzítése gyakran az alkalmazás első felhasználója. Az MRC használatával lefokozást végezhet az alkalmazáson, tájékoztathatja a felhasználókat, ösztönözheti a felhasználókat a vegyes világbeli interakciók megosztására, valamint a felhasználók kutatására és a problémamegoldásra.

Hogyan befolyásolja az MRC az alkalmazást?

Az MRC engedélyezése az alkalmazásban

Alapértelmezés szerint az alkalmazásoknak nem kell semmit tenniük ahhoz, hogy lehetővé tegyék a felhasználók számára a vegyes valóság rögzítését.

Az MRC jobb igazításának engedélyezése az alkalmazásban

Alapértelmezés szerint a vegyes valóság rögzítése kombinálja a jobb szem holografikus kimenetét a fénykép-/videó-(PV-) kamerával. Ezt a két forrást a jelenleg futó modern alkalmazás által beállított fókuszpont használatával kombináljuk.

Ez azt jelenti, hogy a fókuszsíkon kívüli hologramok nem igazodnak a PV-kamera és a jobb oldali kijelző közötti fizikai távolság miatt.

A fókuszpont beállítása

A modern alkalmazásoknak (a HoloLensen) meg kell adniuk annak a fókuszpontját , ahol a stabilizációs síkjukat szeretnék. Ez biztosítja a legjobb igazítást a headsetben és a vegyes valóság rögzítésében is.

Ha nincs beállítva fókuszpont, a stabilizálósík alapértelmezés szerint 2 méter.

Renderelés a PV kameráról (opt-in)

HoloLens 2 lehetővé teszi, hogy egy modern alkalmazás rendereljen a PV-kameráról, miközben a vegyes valóság rögzítése fut. Annak érdekében, hogy az alkalmazás megfelelően támogatja a további renderelést, az alkalmazásnak be kell jelentkeznie erre a funkcióra.

A PV kamera renderelése az alábbi fejlesztéseket kínálja az alapértelmezett MRC-felülethez képest:

  • A fizikai környezethez és a kézhez való hologram-igazításnak minden távolságban pontosnak kell lennie. Ne legyen eltolás a fókuszponttól eltérő távolságban, ahogy az az alapértelmezett MRC-ben is látható.
  • A headset jobb szeme nem sérül, mivel nem fogja használni az MRC-kimenet hologramjának renderelésére.

További információ a PV-kameráról (DirectX) történő renderelésről.

Ajánlott eljárások (HoloLens-specifikus)

Az MRC várhatóan további fejlesztési erőfeszítés nélkül működik, de a vegyes valóság legjobb rögzítésének biztosításakor figyelembe kell venni néhány dolgot.

Az MRC a hologram alfa csatornáját használja a kameraképekkel való keveréshez

A legfontosabb lépés annak biztosítása, hogy az alkalmazás átlátszó feketére legyen törölve ahelyett, hogy átlátszatlan feketére törölve marad. A Unityben ez alapértelmezés szerint a MixedRealityToolkit használatával történik. Ha nem Unityben fejleszt, előfordulhat, hogy egysoros módosítást kell végeznie.

Íme néhány olyan összetevő, amely akkor jelenhet meg az MRC-ben, ha az alkalmazás nem átlátszó feketére töröl:

Példahibák: Fekete élek a tartalom körül (nem lehet átlátszó feketére törölni)

Nem sikerült törölni az átlátszó feketét: fekete élösszetevők a hologramok körül Nem sikerült törölni az áttetsző fekete színt: a hologramok körüli fekete élösszetevők

Példahibák: A hologram teljes háttérjelenete fekete színben jelenik meg. Ha egy háttér alfaértékét állítja be, az fekete hátteret eredményez

Ha 1-et ad meg a háttér alfaértékével, az fekete hátteret eredményez

Várt eredmény: A hologramok megfelelően elegyítve jelennek meg a valós világgal (a várt eredmény áttetsző fekete színnel való törlés esetén)

Várt eredmény áttetsző fekete színre való törlés esetén

Megoldás:

  • Módosítsa az átlátszatlan feketeként megjelenő tartalmakat úgy, hogy az alfa értéke 0 legyen.
  • Győződjön meg arról, hogy az alkalmazás átlátszó feketére van törölve.
  • A Unity alapértelmezés szerint automatikusan törli a jelet a MixedRealityToolkit használatával, de ha nem Unity-alkalmazásról van szó, módosítsa az ID3D11DeiceContext::ClearRenderTargetView() azonosítóval használt színt. Átlátszó fekete helyett átlátszó feketét (0,0,0,0) szeretne biztosítani (0,0,0,1).

Mostantól igény szerint finomhangolhatja az adategységek alfaértékeit, de általában nincs rá szükség. A legtöbb esetben az MRC-k jól fognak kinézni a dobozból. Az MRC feltételezi, hogy előre szorzott alfa. Az alfaértékek csak az MRC-rögzítésre lesznek hatással.

Mire számíthat, ha az MRC engedélyezve van a HoloLensen?

A következők a HoloLensre (első generációs) és a HoloLens 2 is vonatkoznak, hacsak másként nem jelezzük:

  • A rendszer 30 Hz-es renderelésre szabályozza az alkalmazást. Ez létrehoz némi mozgásteret az MRC futtatásához, így az alkalmazásnak nem kell állandó költségvetési tartalékot tartania, és megfelel az MRC 30 fps képkockasebességének is
  • Az eszköz jobb szemében lévő hologramtartalom "csillogni" jelenhet meg az MRC rögzítésekor/streamelésekor: a szöveg olvashatósága nehezebbé válhat, és a hologram szélei több jaggyabbnak tűnhetnek (a harmadik kamera renderelésének engedélyezése HoloLens 2 elkerüli ezt a kompromisszumot)
  • Az MRC-fényképek és -videók figyelembe fogják venni az alkalmazás fókuszpontját , ha az alkalmazás engedélyezte azt, ami segít biztosítani a hologramok pontos elhelyezését. Videók esetében a fókuszpont simul, így a hologramok lassan a helyére sodródhatnak, ha a fókuszpont mélysége jelentősen megváltozik. A fókuszponttól eltérő mélységben lévő hologramok a valós világtól eltolva jelenhetnek meg (lásd az alábbi példát, ahol a fókuszpont 2 méternél van beállítva, de a hologram 1 méternél van elhelyezve).

Hologramok 2 méter jelennek meg tökéletesen regisztrált a világ. A közeli vagy távoli hologramok kis mértékben eltolhatók.

MRC-funkciók integrálása az alkalmazásból

A vegyes valóság alkalmazás az alkalmazáson belülről indíthat MRC-fénykép- vagy videorögzítést, a rögzített tartalmak pedig az eszköz "Filmtekercs" tárolása nélkül érhetők el az alkalmazás számára. Létrehozhat egyéni MRC-rögzítőt, vagy kihasználhatja a beépített kamerarögzítési felhasználói felület előnyeit.

MRC beépített kamera felhasználói felülettel

A fejlesztők a Camera Capture UI API-val mindössze néhány sornyi kóddal készíthetnek el egy felhasználó által rögzített vegyes valósági fényképet vagy videót.

Ez az API elindítja a beépített MRC kamera felhasználói felületet, ahol a felhasználók fényképet vagy videót készíthetnek, és visszaadhatják az eredményül kapott felvételt az alkalmazásnak. Létrehozhat egyéni Mixed Reality Capture felvevőt, ha saját kamera felhasználói felületét vagy alacsonyabb szintű hozzáférést kell adnia a streamek rögzítéséhez.

Egyéni MRC-rögzítő létrehozása

Bár a felhasználó mindig aktiválhat fényképet vagy videót a rendszer MRC rögzítési szolgáltatásával, előfordulhat, hogy egy alkalmazás olyan egyéni kameraalkalmazást szeretne létrehozni, amely hologramokat tartalmaz a kamerastreamben, akárcsak az MRC. Ez lehetővé teszi, hogy az alkalmazás elindítsa a felhasználói bevitelből származó rögzítéseket, egyéni rögzítési felhasználói felületet hozzon létre, vagy testre szabja az MRC-beállításokat, hogy néhány példát említsen.

A HoloStudio egyéni MRC-kamerát ad hozzá MRC-effektusokkal

A HoloStudio egyéni MRC-kamerát ad hozzá MRC-effektusokkal

A Unity-alkalmazásoknak látniuk kell Locatable_camera_in_Unity a tulajdonság számára a hologramok engedélyezéséhez.

Ezt más alkalmazások is megtehetik a Windows Media Capture API-k használatával a Kamera vezérléséhez, valamint egy MRC video- és hangeffektus hozzáadásához, amely virtuális hologramokat és alkalmazáshangokat tartalmaz az állóképekben és videókban.

További információ egyéni MRC-rögzítő (DirectX) létrehozásáról.

Egyidejű MRC-korlátozások

Tisztában kell lennie bizonyos korlátozásokkal, amikor egyszerre több alkalmazás is hozzáfér az MRC-hez.

Fénykép-/videokamera-hozzáférés

A HoloLens 1-ben az MRC nem fog fényképet vagy videót rögzíteni, miközben egy folyamat videót rögzít vagy fényképet készít. A fordítottja is igaz: ha az MRC fut, az alkalmazás nem fog hozzáférni a kamerához.

A HoloLens 2 lehetővé teszi a kamera hozzáférésének megosztását. Ha nincs szüksége a felbontás vagy a képkockasebesség közvetlen szabályozására, inicializálhatja a MediaCapture-t a SharedMode tulajdonsággal a SharedReadOnly paranccsal.

Beépített MRC fénykép-/videokamera-hozzáférés

Ismerje meg a beépített MRC fénykép-/videokamera-hozzáférést (DirectX).

MRC-hozzáférés fejlesztőknek

Javasoljuk, hogy MRC használata esetén mindig kérjen kizárólagos vezérlést a kamerához. Ez biztosítja, hogy az alkalmazás teljes mértékben szabályozni tudja a kamera beállításait, feltéve, hogy tisztában van a fent felsorolt korlátozásokkal.

További információ az MRC-hozzáférésről fejlesztőknek (DirectX).

Lásd még