Delen via


Problemen oplossen

Deze pagina bevat veelvoorkomende problemen die problemen met Azure Remote Rendering verstoren en manieren om deze op te lossen.

Client kan geen verbinding maken met de server

Zorg ervoor dat uw firewalls (op apparaat, binnen routers, enzovoort) de poorten die worden vermeld in de systeemvereisten niet blokkeren.

Kan model niet laden

Bij het laden van een model (bijvoorbeeld via een Unity-voorbeeld) mislukt hoewel de blobconfiguratie juist is, is de blobopslag waarschijnlijk niet correct gekoppeld. De juiste koppeling wordt uitgelegd in het koppelen van een hoofdstuk over een opslagaccount . Nadat de koppeling is gecorrigeerd, kan het tot 30 minuten duren voordat de wijzigingen zijn doorgevoerd.

Soms wordt tijdens het koppelen van een opslagaccount het Remote Rendering-account niet vermeld. Als u dit probleem wilt oplossen, gaat u naar het ARR-account in Azure Portal en selecteert u Identiteit onder de groep Instellingen aan de linkerkant. Zorg ervoor dat status is ingesteld op Aan. Unity Frame-foutopsporingsprogramma

Kan het model niet laden via een SAS-token

Als de clienttoepassing een model niet kan laden vanuit de opslag via een geldig SAS-token, kan dit worden veroorzaakt door het openbare netwerktoegangsniveau dat is geconfigureerd in de blobopslag. Het laden van een ARR-model van een SAS-token werkt alleen als het is geconfigureerd met de optie Ingeschakeld vanuit alle netwerken: Schermopname van azure Portal-instellingen voor openbaar netwerktoegangsniveau in blobopslag.

Als het beperken tot privé-eindpunten een vereiste is, moet het opslagaccount worden gekoppeld en moet het model worden geladen via het niet-SAS-codepad, zoals hier wordt beschreven.

Fout 'Disconnected: VideoFormatNotAvailable'

Controleer of uw GPU ondersteuning biedt voor hardwarevideocodering. Zie Development PC.

Als u werkt op een laptop met twee GPU's, is het mogelijk dat de GPU waarop u werkt standaard geen hardwarevideocoderingsfunctionaliteit biedt. Als dat het zo is, probeert u af te dwingen dat uw app de andere GPU gebruikt. Het wijzigen van de gebruikte GPU is vaak mogelijk in de GPU-stuurprogramma-instellingen.

Sessie-/conversiestatus ophalen mislukt

Het verzenden van REST API-opdrachten veroorzaakt te vaak dat de server de vertraging oploopt en uiteindelijk een fout retourneert. De HTTP-statuscode in de aanvraag voor bandbreedtebeperking is 429 ('te veel aanvragen'). Als vuistregel moet er een vertraging van 5-10 seconden tussen opeenvolgende aanroepen in acht worden genomen.

Houd er rekening mee dat deze limiet niet alleen van invloed is op de REST API-aanroepen wanneer deze rechtstreeks worden aangeroepen, maar ook hun C#/C++-tegenhangers, zoals Session.GetPropertiesAsync, Session.RenewAsyncof Frontend.GetAssetConversionStatusAsync. Sommige functies retourneren ook gegevens wanneer deze worden opgeslagen om het opnieuw te proberen. Hiermee geeft u bijvoorbeeld RenderingSessionPropertiesResult.MinimumRetryDelay op hoeveel seconden moet worden gewacht voordat u een andere controle probeert uit te voeren. Indien beschikbaar, is het gebruik van een dergelijke geretourneerde waarde het beste, omdat u hiermee zo vaak mogelijk controles kunt uitvoeren zonder dat u wordt beperkt.

Als u last hebt van beperking aan de serverzijde, wijzigt u de code om de aanroepen minder vaak uit te voeren. De server stelt de beperkingsstatus elke minuut opnieuw in, zodat u de code na een minuut opnieuw kunt uitvoeren.

H265-codec niet beschikbaar

Er zijn twee redenen waarom de server kan weigeren verbinding te maken met een codec not available fout.

De H265-codec is niet geïnstalleerd:

Zorg er eerst voor dat u de Uitbreiding voor HEVC-video installeert zoals vermeld in het gedeelte Software van de systeemvereisten.

Als u nog steeds problemen ondervindt, moet u ervoor zorgen dat uw grafische kaart H265 ondersteunt en het nieuwste grafische stuurprogramma is geïnstalleerd. Zie de sectie Development PC van de systeemvereisten voor leverancierspecifieke informatie.

De codec is geïnstalleerd, maar kan niet worden gebruikt:

De reden voor dit probleem is een onjuiste beveiligingsinstelling voor de DLL's. Dit probleem is niet zichtbaar wanneer u video's probeert te bekijken die zijn gecodeerd met H265. Als u de codec opnieuw installeert, wordt het probleem ook niet opgelost. Voer in plaats daarvan de volgende stappen uit:

  1. Een PowerShell openen met beheerdersrechten en uitvoeren

    Get-AppxPackage -Name Microsoft.HEVCVideoExtension*
    

    (Let op: *is omdat voor sommige pakketinstallatieversies de naam in HEVCVideoExtensions plaats HEVCVideoExtensionvan ). Met deze opdracht moet de InstallLocation codec worden uitgevoerd, bijvoorbeeld:

    InstallLocation   : C:\Program Files\WindowsApps\Microsoft.HEVCVideoExtension_1.0.23254.0_x64__5wasdgertewe
    
  2. Die map openen in Windows Verkenner

  3. Er moet een x86- en x64-submap zijn. Klik met de rechtermuisknop op een van de mappen en kies Eigenschappen

    1. Selecteer het tabblad Beveiliging en selecteer de knop Geavanceerde instellingen
    2. Selecteer Wijzigen voor de eigenaar
    3. Typ Beheerders in het tekstveld
    4. Selecteer Namen controleren en OK
  4. Herhaal de bovenstaande stappen voor de andere map

  5. Herhaal ook de bovenstaande stappen voor elk DLL-bestand in beide mappen. Er moeten vier DLL's zijn.

Voer de volgende stappen uit voor elk van de vier DLL's om te controleren of de instellingen nu juist zijn:

  1. > Eigenschappenbeveiliging > bewerken selecteren
  2. Doorloop de lijst met alle groepen/gebruikers en zorg ervoor dat voor elke groep de juiste set Lezen en Uitvoeren is ingesteld (het vinkje in de kolom Toestaan moet worden aangevinkt)

Lage videokwaliteit

De videokwaliteit kan worden aangetast door de netwerkkwaliteit of de ontbrekende H265-videocodec.

Video opgenomen met MRC weerspiegelt niet de kwaliteit van de live-ervaring

Een video kan worden opgenomen op HoloLens via Mixed Reality Capture (MRC). De resulterende video heeft echter om twee redenen een slechtere kwaliteit dan de live-ervaring:

Beide zijn inherente beperkingen van de opnametechniek.

Zwart scherm na het laden van het model

Als u verbinding hebt met de renderingruntime en een model hebt geladen, maar daarna alleen een zwart scherm ziet, kan dit enkele verschillende oorzaken hebben.

We raden u aan de volgende dingen te testen voordat u een uitgebreidere analyse uitvoert:

  • Is de H265-codec geïnstalleerd? Hoewel er een terugval moet zijn naar de H264-codec, hebben we gevallen gezien waarin deze terugval niet goed werkte. Zie de systeemvereisten voor het installeren van het nieuwste grafische stuurprogramma.
  • Wanneer u een Unity-project gebruikt, sluit u Unity, verwijdert u de tijdelijke bibliotheek en obj-mappen in de projectmap en laadt/bouwt u het project opnieuw. In sommige gevallen hebben gegevens in de cache ervoor gezorgd dat het voorbeeld om geen duidelijke reden goed functioneert.

Als deze twee stappen niet hebben geholpen, is het nodig om erachter te komen of videoframes wel of niet door de client worden ontvangen. Dit kan programmatisch worden opgevraagd, zoals wordt uitgelegd in het hoofdstuk prestatiequery's aan de serverzijde. Het FrameStatistics struct heeft een lid dat aangeeft hoeveel videoframes zijn ontvangen. Als dit aantal groter is dan 0 en in de loop van de tijd toeneemt, ontvangt de client werkelijke videoframes van de server. Het moet dus een probleem aan de clientzijde zijn.

Schaalwaarde in de conversie-instellingen wordt niet toegepast op het model

Als een model wordt weergegeven in Showcase of Quickstart met ongewijzigd schalen, hoewel een schaalaanpassing wordt toegepast als onderdeel van de geometrieparameters van de conversie-instellingen, is dit waarschijnlijk vanwege de ingebouwde functie voor automatisch schalen van het voorbeeld. Dat wil gezegd, het voorbeeld schaalt het model zo goed mogelijk in het view frustum, ongeacht de invoerschaal.

In het geval van Showcase kan automatisch schalen worden uitgeschakeld door een MaxSize nul op te geven in de sectie van Transform het model in het models.xml bestand. Deze gegevensgestuurde benadering vereist dat het model in de eerste plaats wordt geladen via de XML, omdat in alle andere gevallen de MaxSize standaardwaarde is ingesteld op 1 meter. Er is ook een MinSize eigenschap die standaard 0,5 meter is, waardoor alle kleinere modellen omhoog worden geschaald. Zie het hoofdstuk 3D-modelassets toevoegen aan ARR Showcase van de documentatie voor Showcase voor meer informatie over manieren om modellen in Showcase te laden.

Veelvoorkomende problemen aan de clientzijde

Het model overschrijdt de limieten van de geselecteerde VIRTUELE machine, met name het maximum aantal primitieven:

Zie specifieke limieten voor de servergrootte.

Het model bevindt zich niet in de camera frustum:

In veel gevallen wordt het model correct weergegeven, maar bevindt zich buiten de camera frustum. Een veelvoorkomende reden is dat het model is geëxporteerd met een ver off-center draaipunt, zodat het wordt geknipt door het verre knipvlak van de camera. Hiermee kunt u programmatisch query's uitvoeren op het begrenzingsvak van het model en het vak visualiseren met Unity als een lijnvak of de waarden ervan afdrukken naar het foutopsporingslogboek.

Bovendien genereert het conversieproces een JSON-uitvoerbestand naast het geconverteerde model. Als u problemen met het positioneren van modellen wilt opsporen, is het de moeite waard om de boundingBox vermelding in de sectie outputStatistics te bekijken:

{
    ...
    "outputStatistics": {
        ...
        "boundingBox": {
            "min": [
                -43.52,
                -61.775,
                -79.6416
            ],
            "max": [
                43.52,
                61.775,
                79.6416
            ]
        }
    }
}

Het begrenzingsvak wordt beschreven als een min en max positie in 3D-ruimte, in meters. Een coördinaat van 1000,0 betekent dus dat het 1 kilometer van de oorsprong is.

Er kunnen twee problemen zijn met dit begrenzingsvak dat leidt tot onzichtbare geometrie:

  • Het vak kan ver buiten het midden staan, dus het object wordt helemaal afgekapt vanwege verre vlakopname. De boundingBox waarden in dit geval zien er als volgt uit: min = [-2000, -5,-5], max = [-1990, 5,5]met behulp van een grote offset op de x-as als voorbeeld hier. Schakel de recenterToOrigin optie in de configuratie van de modelconversie in om dit type probleem op te lossen.
  • Het vak kan worden gecentreerd, maar zijn te groot. Dat betekent dat de camera weliswaar in het midden van het model begint, maar dat de geometrie in alle richtingen wordt geknipt. Typische boundingBox waarden in dit geval zien er als volgt uit: min = [-1000,-1000,-1000], max = [1000,1000,1000]. De reden voor dit type probleem is meestal een niet-overeenkomende eenheidsschaal. Als u wilt compenseren, geeft u een schaalwaarde op tijdens de conversie of markeert u het bronmodel met de juiste eenheden. Schalen kan ook worden toegepast op het hoofdknooppunt bij het laden van het model tijdens runtime.

De Unity-renderpijplijn bevat niet de renderhook:

Azure Remote Rendering koppelt zich aan de Unity-renderpijplijn om de framesamenstelling met de video uit te voeren en de reprojectie uit te voeren. Als u wilt controleren of deze hooks bestaan, opent u het menu Window > Analysis > Frame debugger. Schakel deze in en zorg ervoor dat er twee vermeldingen zijn voor de HolographicRemotingCallbackPass pijplijn:

Unity-renderpijplijn

U kunt dit oplossen door ervoor te zorgen dat de opgegeven HybridRenderingPipeline-asset wordt gebruikt: Schermopname van het dialoogvenster Unity-assetbrowser en projectinstellingen. De HybridRenderingPipeline-asset is gemarkeerd in de assetbrowser. Een pijl wijst van de asset naar het veld UniversalRenderPipelineAsset in projectinstellingen.

.. zoals beschreven in de Unity Render Pipelines.

Het controlebordpatroon wordt weergegeven na het laden van het model

Als de weergegeven afbeelding er als volgt uitziet: Schermopname van een raster met zwart-wit vierkanten met een menu Extra.

vervolgens raakt de renderer de veelhoeklimieten voor de standaardconfiguratiegrootte. Als u dit wilt beperken, schakelt u over naar de premium-configuratiegrootte of vermindert u het aantal zichtbare veelhoeken.

De gerenderde afbeelding in Unity is ondersteboven

Zorg ervoor dat u de Unity-zelfstudie volgt: externe modellen exact weergeven. Een omgekeerde afbeelding geeft aan dat Unity is vereist om een doel buiten het scherm te maken. Dit gedrag wordt momenteel niet ondersteund en creëert een enorme invloed op de prestaties van HoloLens 2.

Redenen voor dit probleem kunnen MSAA, HDR of het inschakelen van naverwerking zijn. Zorg ervoor dat het profiel van lage kwaliteit is geselecteerd en als standaard is ingesteld in Unity. Ga hiervoor naar Projectinstellingen bewerken > ... > Kwaliteit.

Wanneer u de OpenXR-invoegtoepassing in Unity 2020 gebruikt, zijn er versies van de URP (Universal Render Pipeline) die dit extra off-screen render-doel maken, ongeacht of naverwerking is ingeschakeld. Het is dus belangrijk om de URP-versie handmatig te upgraden naar ten minste 10.5.1 (of hoger). Dit upgradeproces wordt beschreven in de systeemvereisten.

Unity-code met behulp van de Remote Rendering-API compileert niet

Foutopsporing gebruiken bij het compileren van Unity Editor

Schakel het buildtype van de Unity-oplossing over naar Foutopsporing. Bij het testen van ARR in de Unity-editor is de definitie UNITY_EDITOR alleen beschikbaar in builds voor foutopsporing. Deze instelling is niet gerelateerd aan het buildtype dat wordt gebruikt voor geïmplementeerde toepassingen, waarbij u de voorkeur moet geven aan 'Release'-builds.

Compileer fouten bij het compileren van Unity-voorbeelden voor HoloLens 2

Er zijn onopvallende fouten opgetreden bij het compileren van Unity-voorbeelden (quickstart, ShowCaseApp, ... ) voor HoloLens 2. Visual Studio klaagt over het niet kunnen kopiëren van sommige bestanden, hoewel ze er zijn. Als u dit probleem ondervindt:

  • Verwijder alle tijdelijke Unity-bestanden uit het project en probeer het opnieuw. Sluit Unity, verwijder de tijdelijke bibliotheek en obj-mappen in de projectmap en laad/bouw het project opnieuw.
  • Zorg ervoor dat de projecten zich in een map op schijf bevinden met redelijk kort pad, omdat de kopieerstap soms problemen ondervindt met lange bestandsnamen.
  • Als dat niet helpt, kan het zijn dat MS Sense de kopieerstap verstoort. Als u een uitzondering wilt instellen, voert u deze registeropdracht uit vanaf de opdrachtregel (hiervoor zijn beheerdersrechten vereist):
    reg.exe ADD "HKLM\SOFTWARE\Policies\Microsoft\Windows Advanced Threat Protection" /v groupIds /t REG_SZ /d "Unity"
    

Arm64-builds voor Unity-projecten mislukken omdat AudioPluginMsHRTF.dll ontbreekt

De AudioPluginMsHRTF.dll for Arm64 is toegevoegd aan het Windows Mixed Reality-pakket (com.unity.xr.windowsmr.metro) in versie 3.0.1. Zorg ervoor dat versie 3.0.1 of hoger is geïnstalleerd via de Unity-Pakketbeheer. Navigeer in de menubalk van Unity naar Window > Pakketbeheer en zoek naar het Windows Mixed Reality-pakket.

De Unity-invoegtoepassing Cinemachine werkt niet in de modus Remote pose

In de remote pose-modus maakt de bindingscode van ARR Unity impliciet een proxycamera die de werkelijke rendering uitvoert. In dit geval is het ruimmasker van de hoofdcamera ingesteld op 0 ('niets') om de rendering ervan effectief uit te schakelen. Sommige invoegtoepassingen van derden (zoals Cinemachine) die de camera aandrijven, kunnen echter afhankelijk zijn van ten minste enkele laag-bits die worden ingesteld.

Voor dit doel kunt u met de bindingscode de laag-bitmasker voor de hoofdcamera programmatisch wijzigen. De volgende stappen zijn met name vereist:

  1. Maak een nieuwe laag in Unity die niet wordt gebruikt voor het weergeven van een lokale scènegeometrie. In dit voorbeeld wordt ervan uitgegaan dat de laag de naam Cam heeft.
  2. Geef deze bitmasker door aan ARR, zodat ARR deze instelt op de hoofdcamera:
    RemoteManagerUnity.CameraCullingMask = LayerMask.GetMask("Cam");
    
  3. Configureer de eigenschappen voor het Cinemachine gebruik van deze nieuwe laag: Schermopname van het inspecteurpaneel van Unity voor camera-instellingen in Cinemachine.

De lokale posemodus wordt niet beïnvloed door dit probleem, omdat in dit geval de ARR-binding rendering niet omleidt naar een interne proxycamera.

Systeemeigen C++ gebaseerde toepassing compileert niet

Fout 'Bibliotheek niet gevonden' voor UWP-toepassing of DLL

In het C++ NuGet-pakket is er een bestand microsoft.azure.remoterendering.Cpp.targets dat definieert welke binaire smaak moet worden gebruikt. Om te identificeren UWP, de voorwaarden in de bestandscontrole op ApplicationType == 'Windows Store'. Er moet dus voor worden gezorgd dat dit type is ingesteld in het project. Dit moet het geval zijn bij het maken van een UWP-toepassing of DLL via de projectwizard van Visual Studio.

Instabiele Hologrammen

Als weergegeven objecten lijken samen met hoofdbewegingen te bewegen, ondervindt u mogelijk problemen met LSR (Late Stage Reprojection). Raadpleeg de sectie late faseherprojectie voor hulp bij het benaderen van een dergelijke situatie.

Een andere reden voor onstabiele hologrammen (wobbling, warping, jittering of springende hologrammen) kunnen slechte netwerkconnectiviteit zijn, met name onvoldoende netwerkbandbreedte of te hoge latentie. Een goede indicator voor de kwaliteit van uw netwerkverbinding is de waarde ServiceStatistics.VideoFramesReusedvoor prestatiestatistieken. Opnieuw gebruikte frames geven situaties aan waarin een oud videoframe opnieuw moet worden gebruikt aan de clientzijde omdat er geen nieuw videoframe beschikbaar was, bijvoorbeeld vanwege pakketverlies of vanwege variaties in netwerklatentie. Als ServiceStatistics.VideoFramesReused deze vaak groter is dan nul, geeft dit een netwerkprobleem aan.

Een andere waarde om naar te kijken is ServiceStatistics.LatencyPoseToReceiveAvg. Het moet consistent lager zijn dan 100 ms. Als u hogere waarden ziet, kunt u aangeven dat u bent verbonden met een datacenter dat te ver weg is.

Zie de richtlijnen voor netwerkconnectiviteit voor een lijst met mogelijke oplossingen.

Lokale inhoud (UIs, ...) op HoloLens 2 wordt weergegeven met aanzienlijk meer vervormingsartefacten dan zonder ARR

Dit artefact is te wijten aan een standaardinstelling waarmee de kwaliteit van lokale inhoudsprojectie wordt verhandeld voor runtimeprestaties. Raadpleeg het hoofdstuk over de posemodi voor opnieuw projecteren om te zien hoe de projectiemodus kan worden gewijzigd, zodat lokale inhoud wordt weergegeven op hetzelfde kwaliteitsniveau voor opnieuw projecteren als zonder ARR.

Z-vechten

Hoewel ARR z-fighting beperkingsfunctionaliteit biedt, kan z-fighting nog steeds worden weergegeven in de scène. Deze handleiding is gericht op het oplossen van deze resterende problemen.

Gebruik de volgende werkstroom om z-gevechten te beperken:

  1. Test de scène met de standaardinstellingen van ARR (z-fighting mitigation on)

  2. De z-vechtbeperking uitschakelen via de API

  3. De camera in de buurt en ver van het vliegtuig wijzigen in een dichter bereik

  4. Problemen met de scène oplossen via de volgende sectie

Resterende z-gevechten onderzoeken

Als de bovenstaande stappen zijn uitgeput en de resterende z-gevechten onaanvaardbaar zijn, moet de onderliggende oorzaak van de z-gevechten worden onderzocht. Zoals vermeld op de pagina met de z-bestrijdingsfunctie, zijn er twee belangrijke redenen voor z-gevechten: diepteprecisieverlies aan het einde van het dieptebereik en oppervlakken die snijden terwijl ze coplanar zijn. Diepteprecisieverlies is een wiskundige uiteindelijk en kan alleen worden verzacht door stap 3 hierboven te volgen. Coplanaroppervlakken duiden op een bronassetfout en worden beter opgelost in de brongegevens.

ARR heeft een functie om te bepalen of oppervlakken z-fight kunnen: Checkerboard markeren. U kunt ook visueel bepalen wat de z-gevechten veroorzaakt. In de volgende eerste animatie ziet u een voorbeeld van diepte-precisieverlies in de afstand en de tweede animatie toont een voorbeeld van bijna coplanaire oppervlakken:

Animatie toont een voorbeeld van diepte-precisieverlies in de afstand. Animatie toont een voorbeeld van bijna coplanaire oppervlakken.

Vergelijk deze voorbeelden met uw z-fighting om de hoofdoorzaak te bepalen of optioneel deze stapsgewijze werkstroom te volgen:

  1. Plaats de camera boven de z-vechtoppervlakken om rechtstreeks naar het oppervlak te kijken.
  2. Beweeg de camera langzaam achteruit, weg van de oppervlakken.
  3. Als de z-gevechten voortdurend zichtbaar zijn, zijn de oppervlakken perfect coplanair.
  4. Als de z-gevechten meestal zichtbaar zijn, zijn de oppervlakken bijna coplanair.
  5. Als de z-gevechten alleen van ver weg zichtbaar zijn, is de oorzaak gebrek aan dieptenauwkeurigheid.

Coplanaire oppervlakken kunnen veel verschillende oorzaken hebben:

  • Een object is gedupliceerd door de exporttoepassing vanwege een fout of verschillende werkstroommethoden.

    Controleer deze problemen met de respectieve toepassings- en toepassingsondersteuning.

  • Oppervlakken worden gedupliceerd en gespiegeld om dubbelzijdig te worden weergegeven in renderers die gebruikmaken van front-face- of back-face-ruiming.

    Importeren via de modelconversie bepaalt de principal sided-ness van het model. Dubbelzijdigheid wordt als de standaardwaarde aangenomen. Het oppervlak wordt weergegeven als een dunne muur met fysiek juiste verlichting van beide zijden. Single-sided-ness kan worden geïmpliceerd door vlaggen in de bronasset of expliciet geforceerd tijdens de modelconversie. Daarnaast kan de modus met één zijde worden ingesteld op 'normaal'.

  • Objecten snijden elkaar in de bronassets.

    Objecten die zijn getransformeerd op een manier die sommige van hun oppervlakken overlappen, creëren ook z-vechten. Het transformeren van delen van de scènestructuur in de geïmporteerde scène in ARR kan dit probleem ook tot gevolg hebben.

  • Oppervlakken zijn doelbewust ontworpen om aan te raken, zoals decals of tekst op muren.

Grafische artefacten met multi-pass stereo rendering in systeemeigen C++-apps

In sommige gevallen kunnen aangepaste systeemeigen C++-apps die gebruikmaken van een multi-pass stereorenderingsmodus voor lokale inhoud (weergeven naar de linker- en rechteroog in afzonderlijke passen) na het aanroepen van BlitRemoteFrame een stuurprogrammafout veroorzaken. De fout resulteert in niet-deterministische rasteriseringsfouten, waardoor afzonderlijke driehoeken of delen van driehoeken van de lokale inhoud willekeurig verdwijnen. Om prestatieredenen is het raadzaam om lokale inhoud weer te geven met een modernere stereorenderingstechniek met één pass, bijvoorbeeld met behulp van SV_RenderTargetArrayIndex.

Downloadfouten conversiebestand

De Conversieservice kan fouten ondervinden bij het downloaden van bestanden uit blobopslag vanwege beperkingen van het bestandssysteem. Hieronder vindt u specifieke foutcases. Uitgebreide informatie over beperkingen van het Windows-bestandssysteem vindt u in de documentatie over naamgevingsbestanden , paden en naamruimten.

Conflicterend pad en bestandsnaam

In blob-opslag is het mogelijk om een bestand en een map met dezelfde naam als items op hetzelfde niveau te maken. Dit is niet toegestaan in het Windows-bestandssysteem. Daarom verzendt de service in dat geval een downloadfout.

Padlengte

Er zijn padlengtelimieten die worden opgelegd door Windows en de service. Bestandspaden en bestandsnamen in uw blobopslag mogen niet langer zijn dan 178 tekens. Bijvoorbeeld een blobPrefix van models/Assets, dat is 13 tekens:

models/Assets/<any file or folder path greater than 164 characters will fail the conversion>

De conversieservice downloadt alle bestanden die zijn opgegeven onder de blobPrefix, niet alleen de bestanden die in de conversie worden gebruikt. De bestanden/map die problemen veroorzaken, kunnen in deze gevallen minder duidelijk zijn, dus het is belangrijk om alles te controleren dat zich in het opslagaccount bevindt.blobPrefix Zie de onderstaande voorbeeldinvoer voor wat er wordt gedownload.

{
  "settings": {
    "inputLocation": {
      "storageContainerUri": "https://contosostorage01.blob.core.windows.net/arrInput",
      "blobPrefix": "models/Assets",
      "relativeInputAssetPath": "myAsset.fbx"
      ...
    }
  }
}
models
├───Assets
│   │   myAsset.fbx                 <- Asset
│   │
│   └───Textures
│   |       myTexture.png           <- Used in conversion
│   |
|   └───MyFiles
|          myOtherFile.txt          <- File also downloaded under blobPrefix      
|           
└───OtherFiles
        myReallyLongFileName.txt    <- Ignores files not under blobPrefix             

HoloLens2 'Een foto maken' (MRC) toont geen lokale of externe inhoud

Dit probleem treedt meestal op als een project wordt bijgewerkt van WMR naar OpenXR en het project de instellingen van HolographicViewConfiguration Class (Windows.Graphics.Holographic) heeft geopend. Deze API wordt niet ondersteund in OpenXR en mag niet worden geopend.

Volgende stappen