Overzicht van mixed reality-opnamen

Notitie

Zie Renderen vanaf de PV-camera hieronder voor hulp bij een nieuwe MRC-mogelijkheid voor HoloLens 2.

U kunt op elk gewenst moment een foto of video ( Mixed Reality Capture , MRC) maken, maar er zijn maar weinig dingen waarmee u rekening moet houden bij het ontwikkelen van uw toepassing. Dit omvat aanbevolen procedures voor de kwaliteit van de MRC-visual en het reageren op systeemwijzigingen terwijl MRC's worden vastgelegd.

Ontwikkelaars kunnen ook naadloos mixed reality vastleggen en invoegen in hun apps integreren.

MRC op HoloLens (eerste generatie) ondersteunt video's en foto's tot 720p, terwijl MRC op HoloLens 2 video's tot 1080p en foto's met een resolutie van 4K ondersteunt.

Het belang van kwaliteits-MRC

Of het nu gaat om mixed reality-schermopnamen op uw Microsoft Store-pagina of andere gebruikers die inhoud delen op sociale netwerken, Mixed Reality Capture media is vaak een eerste kennismaking met uw app. U kunt MRC gebruiken om uw app te demo's, gebruikers op te leiden, gebruikers aan te moedigen hun gemengde wereldinteracties te delen en voor gebruikersonderzoek en probleemoplossing.

Hoe MRC van invloed is op uw app

MRC inschakelen in uw app

Standaard hoeft een app niets te doen om gebruikers in staat te stellen mixed reality-opnamen te maken.

Verbeterde uitlijning voor MRC in uw app inschakelen

Standaard combineert mixed reality-opname de holografische uitvoer van het rechteroog met de foto-/videocamera (PV). Deze twee bronnen worden gecombineerd met behulp van het focuspunt dat is ingesteld door de momenteel actieve insluitende app.

Dit betekent dat hologrammen buiten het focusvlak niet worden uitgelijnd vanwege de fysieke afstand tussen de PV-camera en het rechterbeeldscherm.

Het focuspunt instellen

Insluitende apps (op HoloLens) moeten het focuspunt instellen waar ze hun stabilisatievlak willen hebben. Dit zorgt voor de beste uitlijning in zowel de headset als in mixed reality-opnamen.

Als er geen scherpstelpunt is ingesteld, wordt het stabilisatievlak standaard ingesteld op 2 meter.

Weergeven vanaf de PV-camera (opt-in)

HoloLens 2 voegt de mogelijkheid toe om een immersive app weer te geven vanaf de PV-camera terwijl mixed reality-opname wordt uitgevoerd. Om ervoor te zorgen dat de app de aanvullende weergave correct ondersteunt, moet de app zich aanmelden voor deze functionaliteit.

Renderen vanaf de PV-camera biedt de volgende verbeteringen ten opzichte van de standaard MRC-ervaring:

  • Hologram-uitlijning met uw fysieke omgeving en handen voor bijna-interacties moet nauwkeurig zijn op alle afstanden. Vermijd een verschuiving op andere afstanden dan het focuspunt, zoals u mogelijk ziet in de standaard-MRC.
  • Het rechteroog in de headset wordt niet aangetast, omdat het niet wordt gebruikt om de hologrammen voor de MRC-uitvoer weer te geven.

Meer informatie over het weergeven van de PV-camera (DirectX).

Aanbevolen procedures (HoloLens-specifiek)

MRC werkt naar verwachting zonder extra ontwikkelinspanning, maar er zijn een paar dingen waarmee u rekening moet houden bij het bieden van de beste mixed reality-opnameervaring.

MRC gebruikt het alfakanaal van het hologram om over te gaan met de camerabeelden

De belangrijkste stap is om ervoor te zorgen dat uw app wordt gewist naar transparant zwart in plaats van ondoorzichtig zwart. In Unity wordt dit standaard gedaan met de MixedRealityToolkit. Als u ontwikkelt in niet-Unity, moet u mogelijk één regel wijzigen.

Hier volgen enkele van de artefacten die u mogelijk in MRC ziet als uw app niet wordt gewist naar transparant zwart:

Voorbeeldfouten: zwarte randen rond de inhoud (kan niet worden gewist naar transparant zwart)

Kan niet wissen tot transparant zwart: zwarte randartefacten rond hologrammen Kan niet wissen tot transparant zwart: zwarte randartefacten rond hologrammen

Voorbeeldfouten: de hele achtergrondscène van het hologram wordt zwart weergegeven. Het instellen van een alfa-achtergrondwaarde van een achtergrond resulteert in een zwarte achtergrond

Het instellen van een alfa-achtergrondwaarde van 1 resulteert in een zwarte achtergrond

Verwacht resultaat: Hologrammen worden op de juiste manier gemengd met de echte wereld (verwacht resultaat als het doorzichtig zwart wordt)

Verwacht resultaat als wissen naar transparant zwart

Oplossing:

  • Wijzig alle inhoud die wordt weergegeven als ondoorzichtig zwart, zodat deze een alfawaarde van 0 heeft.
  • Zorg ervoor dat de app wordt gewist naar transparant zwart.
  • Unity wordt standaard automatisch gewist met de MixedRealityToolkit, maar als het een niet-Unity-app is, moet u de kleur wijzigen die wordt gebruikt met ID3D11DeiceContext::ClearRenderTargetView(). U wilt ervoor zorgen dat u transparant zwart (0,0,0,0) in plaats van ondoorzichtig zwart (0,0,0,1) hebt.

U kunt nu de alfawaarden van uw assets afstemmen als u dat wilt, maar dat is meestal niet nodig. Meestal zien MRC's er standaard goed uit. MRC gaat uit van vooraf vermenigvuldigde alfa. De alfawaarden zijn alleen van invloed op de MRC-opname.

Wat u kunt verwachten wanneer MRC is ingeschakeld op HoloLens

Het volgende is van toepassing op zowel HoloLens (eerste generatie) als HoloLens 2, tenzij anders vermeld:

  • Het systeem beperkt de toepassing tot 30-Hz rendering. Dit creëert ruimte voor MRC om uit te voeren, zodat de app geen constante budgetreserve hoeft aan te houden en komt ook overeen met de MRC-videorecordframerate van 30 fps
  • Holograminhoud in het rechteroog van het apparaat kan 'fonkelen' bij het opnemen/streamen van MRC: tekst kan moeilijker te lezen worden en hologramranden kunnen er meer uit zien (als u zich aanmeldt voor een derde cameraweergave op HoloLens 2 dit compromis wordt voorkomen)
  • MRC-foto's en -video's respecteren het focuspunt van de toepassing als de toepassing dit heeft ingeschakeld, waardoor hologrammen nauwkeurig worden gepositioneerd. Voor video's wordt het focuspunt vloeiend gemaakt, zodat hologrammen langzaam op hun plaats lijken te komen als de diepte van het focuspunt aanzienlijk verandert. Hologrammen die zich op verschillende diepten van het focuspunt bevinden, kunnen verschoven lijken ten opzichte van de echte wereld (zie het voorbeeld hieronder, waarbij focuspunt is ingesteld op 2 meter, maar hologram op 1 meter is gepositioneerd).

Hologrammen op 2 meter verschijnen perfect geregistreerd voor de wereld. Hologrammen op korte of verre afstanden kunnen enigszins worden verschoven.

MRC-functionaliteit integreren vanuit uw app

Uw mixed reality-app kan MRC-foto- of video-opname starten vanuit de app en de vastgelegde inhoud wordt beschikbaar gesteld aan uw app zonder dat deze wordt opgeslagen in het 'Camera-album' van het apparaat. U kunt een aangepaste MRC-recorder maken of gebruikmaken van de ingebouwde gebruikersinterface voor camera-opnamen.

MRC met ingebouwde camera-ui

Ontwikkelaars kunnen de UI-API voor Camera Capture gebruiken om een door de gebruiker vastgelegde mixed reality-foto of -video op te halen met slechts een paar regels code.

Met deze API wordt de ingebouwde MRC-camera-gebruikersinterface gestart, waar gebruikers een foto of video kunnen maken en de resulterende opname naar uw app kunnen retourneren. U kunt een aangepaste Mixed Reality Capture-recorder maken als u uw eigen camera-gebruikersinterface of toegang op een lager niveau wilt toevoegen om streams vast te leggen.

Een aangepaste MRC-recorder maken

Hoewel de gebruiker altijd een foto of video kan activeren met behulp van de MRC-opnameservice van het systeem, wil een toepassing mogelijk een aangepaste camera-app bouwen die hologrammen in de camerastream bevat, net als MRC. Hierdoor kan de toepassing opnamen starten vanuit gebruikersinvoer, een aangepaste opname-ui maken of MRC-instellingen aanpassen om enkele voorbeelden te noemen.

HoloStudio voegt een aangepaste MRC-camera toe met BEHULP van MRC-effecten

HoloStudio voegt een aangepaste MRC-camera toe met BEHULP van MRC-effecten

Unity-toepassingen moeten Locatable_camera_in_Unity zien voor de eigenschap om hologrammen in te schakelen.

Andere toepassingen kunnen dit doen met behulp van de Windows Media Capture-API's om de camera te beheren en een MRC-video- en audio-effect toe te voegen om virtuele hologrammen en toepassingsaudio op te nemen in stills en video's.

Meer informatie over het maken van een aangepaste MRC-recorder (DirectX).

Gelijktijdige MRC-beperkingen

U moet rekening houden met bepaalde beperkingen wanneer meerdere apps tegelijkertijd toegang hebben tot MRC.

Toegang tot foto-/videocamera's

Op HoloLens 1 kan MRC geen foto of video vastleggen tijdens het opnemen van video of het maken van een foto. Het omgekeerde is ook waar: als MRC wordt uitgevoerd, krijgt de toepassing geen toegang tot de camera.

Met HoloLens 2 kunt u de toegang tot de camera delen. Als u geen directe controle over de resolutie of framesnelheid nodig hebt, kunt u MediaCapture initialiseren met behulp van de eigenschap SharedMode met SharedReadOnly.

Ingebouwde TOEGANG tot MRC-foto-/videocamera's

Meer informatie over ingebouwde TOEGANG tot MRC-foto-/videocamera's (DirectX).

MRC-toegang voor ontwikkelaars

We raden u aan altijd exclusieve controle voor de camera aan te vragen wanneer u MRC gebruikt. Dit zorgt ervoor dat uw toepassing volledige controle heeft over de instellingen voor de camera, zolang u op de hoogte bent van de hierboven vermelde beperkingen.

Meer informatie over MRC-toegang voor ontwikkelaars (DirectX).

Zie ook