OpenXR
Az OpenXR a Khronos nyílt jogdíjmentes API-szabványa, amely natív hozzáférést biztosít a különböző eszközökhöz a vegyes valóság spektrumában.
Az OpenXR használatával fejleszthet egy HoloLens 2 vagy Windows Mixed Reality modern VR-headseten az asztalon. Ha nincs hozzáférése a headsethez, használhatja helyette a HoloLens 2 Emulatort vagy a Windows Mixed Reality Szimulátort.
Miért az OpenXR?
Az OpenXR segítségével olyan motorokat hozhat létre, amelyek holografikus eszközöket, például HoloLens 2 és modern VR-eszközöket céloznak meg, például Windows Mixed Reality asztali számítógépekhez készült headseteket. Az OpenXR lehetővé teszi a kód írását, ha az a hardverplatformok széles körében hordozható.
Az OpenXR API egy betöltővel csatlakoztatja az alkalmazást közvetlenül a headset natív platformtámogatásához. A végfelhasználók maximális teljesítményt és minimális késést kapnak, akár Windows Mixed Reality, akár más fejhallgatót használnak.
Mi az az OpenXR?
Az OpenXR API biztosítja az alapvető póz-előrejelzést, a keretidőzítést és a térbeli beviteli funkciókat, amelyekre szüksége lesz egy olyan motor létrehozásához, amely holografikus és modern eszközöket is megcélz.
Az OpenXR API-val kapcsolatos információkért tekintse meg az OpenXR 1.0 specifikációját, az API-referenciát és a rövid útmutatót. További információt a Khronos OpenXR oldalán talál.
A HoloLens 2 teljes funkciókészletének megcélzásához szállítók közötti és szállítóspecifikus OpenXR-bővítményeket is használhat, amelyek az OpenXR 1.0 magon kívül további funkciókat is lehetővé tesznek, például a csuklós kézkövetést, a szemkövetést, a térbeli leképezést és a térbeli horgonyokat. További információért tekintse meg az ütemterv szakaszt az év későbbi részében megjelenő bővítményekről.
Az OpenXR önmagában nem vegyes valósági motor. Ehelyett az OpenXR lehetővé teszi az olyan motorok számára, mint a Unity és az Unreal, hogy egyszer hordozható kódot írjanak, amely aztán hozzáférhet a felhasználó holografikus vagy modern eszközének natív platformfunkcióihoz, bármilyen gyártó is építette ezt a platformot.
Ütemterv
Az OpenXR specifikáció egy olyan bővítménymechanizmust határoz meg, amely lehetővé teszi, hogy a futtatókörnyezet implementálói az Alap OpenXR 1.0 specifikációban meghatározott alapvető funkciókon túl további funkciókat tegyenek közzé.
Háromféle OpenXR-bővítmény létezik:
- Szállítói bővítmények (például
XR_MSFT_...
): Lehetővé teszi a gyártónkénti innovációt a hardver- vagy szoftverfunkciókban. Bármely futtatókörnyezeti szállító bármikor bevezethet és elküldhet egy szállítói bővítményt.- Kísérleti szállítói bővítmények (például
XR_MSFTX_...
): A kísérleti szállítói bővítmények előzetes verzióban jelennek meg, hogy visszajelzést gyűjtsenek.XR_MSFTX_...
a bővítmények csak a fejlesztői eszközökhöz használhatók, és a valódi bővítmények telepítésekor törlődnek. Ha kísérletezni szeretne velük, engedélyezheti az előzetes verziójú bővítményeket a fejlesztői eszközön.
- Kísérleti szállítói bővítmények (például
- Szállítók
EXT
közötti bővítmények: Több vállalat által definiált és implementálható, szállítók közötti bővítmények. Az érdekelt vállalatok csoportjai bármikor bevezethetnek EXT-bővítményeket. - Hivatalos
KHR
bővítmények: Hivatalos Khronos-bővítmények ratifikálva egy alapvető specifikáció kiadásának részeként. A KHR-bővítményekre ugyanaz a licenc vonatkozik, mint maga az alapvető specifikáció.
A Windows Mixed Reality OpenXR-futtatókörnyezet támogatja a és EXT
bővítmények készletétMSFT
, amelyek az OpenXR-alkalmazások HoloLens 2 funkcióinak teljes készletét biztosítják:
Bár a bővítmények némelyike gyártóspecifikus MSFT
bővítményként indulhat, a Microsoft és más OpenXR futtatókörnyezeti szállítók együttműködve terveznek szállítók EXT
közötti vagy KHR
bővítményeket számos ilyen funkcióterületen. A szállítók közötti bővítmények az alapvető specifikációhoz hasonlóan hordozhatóvá teszik az adott funkciókhoz írt kódot a futtatókörnyezeti szállítók között.
Hol használhatja az OpenXR-t?
A Minecraft új RenderDragon motorja az OpenXR használatával építette ki asztali VR-támogatását!
A Microsoft együttműködik a Unity és az Epic Gamesszel annak érdekében, hogy a vegyes valóság jövője nyitva legyen, nemcsak HoloLens 2, hanem a PC VR teljes területén, beleértve a HP új Reverb G2 headsetjét is. Az OpenXR a szállítók közötti VR-támogatást nyújtja a mai fő címek szállításához, például a Minecrafthoz és a Microsoft Flight Simulatorhoz! A HoloLens (1. generációs) fejlesztéséről további információt a kibocsátási megjegyzésekben talál.
Ha tudni szeretné, hogyan kezdheti el az OpenXR-t a Unityben, az Unreal Engine-ben vagy a saját motorjában, olvassa el a következőt:
OpenXR a Unityben
A Microsoft jelenleg ajánlott Unity-konfigurációja HoloLens 2 és Windows Mixed Reality fejlesztéshez a Unity 2020.3 LTS az Mixed Reality OpenXR beépülő modullal. Ez a beépülő modul támogatja az OpenXR bővítményeket, amelyek a HoloLens 2 és Windows Mixed Reality headsetek teljes képességeit kivilágosítják, beleértve a kéz- és szemkövetést, a térbeli horgonyokat és a HP Reverb G2 vezérlőket. MRTK-Unity támogatja az OpenXR-t az MRTK 2.7-ről. A Unity 2020 és az OpenXR használatának első lépéseiről további információt a Unity-verzió és az XR beépülő modul kiválasztása című témakörben talál.
Ha a HoloLenshez (1. generációs) fejleszt, továbbra is a Unity 2019.4 LTS-t kell használnia az örökölt WinRT API-háttérrendszerrel. Ha egy Unity 2019-alkalmazásban az új HP Reverb G2 vezérlőt célozza meg, tekintse meg a HP Reverb G2 bemeneti dokumentációját.
A Unity 2021.3 LTS-től kezdve az OpenXR lesz az egyetlen támogatott Unity-háttérrendszer a HoloLens 2 és Windows Mixed Reality headsetek megcélzására.
OpenXR az Unreal Engine-ben
Az Unreal Engine 4.23 volt az első nagy játékmotor kiadás, amely az OpenXR 1.0 előzetes verzióját támogatja! Az Unreal Engine 4.26-ban az Unreal Engine beépített OpenXR-támogatásával mostantól HoloLens 2, Windows Mixed Reality és más asztali VR-headsetek is elérhetők. Az Unreal Engine 4.26 emellett támogatja a Microsoft OpenXR bővítmény beépülő modulját is, amely lehetővé teszi a kézműveletet és a HP Reverb G2 vezérlő támogatását, így a HoloLens 2 és a Windows Mixed Reality fejhallgatók teljes funkciókészletét kivilágítják. Az Unreal Engine 4.26 ma elérhető az Epic Games Launcherben, MRTK-Unreal 0.12-es támogatással rendelkező OpenXR-projekteket.
OpenXR natív fejlesztéshez
Az OpenXR használatával fejleszthet egy HoloLens 2 vagy Windows Mixed Reality modern VR-headseten az asztalon. Ha nincs hozzáférése a headsethez, használhatja helyette a HoloLens 2 Emulatort vagy a Windows Mixed Reality Szimulátort.
Az OpenXR-alkalmazások HoloLens 2 vagy Windows Mixed Reality VR-headsetekhez való fejlesztésének megkezdéséhez tekintse meg az OpenXR-fejlesztés első lépéseit.
Az OpenXR API összes fő összetevőjét, valamint az OpenXR-t használó valós alkalmazásokra vonatkozó példákat bemutató 60 perces bemutató videóból megtudhatja: