Bagikan melalui


Pecahkan masalah

Halaman ini mencantumkan masalah umum yang mengganggu Azure Remote Rendering, dan cara untuk mengatasinya.

Klien tidak dapat tersambung ke server

Pastikan firewall Anda (pada perangkat, perute dalam, dll.) tidak memblokir port yang disebutkan dalam Persyaratan sistem.

Gagal memuat model

Saat memuat model (misalnya, melalui sampel Unity) gagal meskipun konfigurasi blob sudah benar, kemungkinan penyimpanan blob tidak ditautkan dengan benar. Penautan yang tepat dijelaskan dalam penautan bab akun penyimpanan. Setelah penautan yang benar, diperlukan waktu hingga 30 menit hingga perubahan berlaku.

Terkadang selama penautan akun penyimpanan, akun Remote Rendering tidak tercantum. Untuk memperbaiki masalah ini, buka akun ARR di portal Microsoft Azure dan pilih Identitas di bawah grup Pengaturan di sebelah kiri. Pastikan Status disetel ke Aktif. Debugger bingkai kesatuan

Tidak dapat memuat model melalui token SAS

Jika aplikasi klien gagal memuat model dari penyimpanan melalui token SAS yang valid, itu mungkin disebabkan oleh tingkat akses jaringan publik yang dikonfigurasi pada penyimpanan blob. Memuat model ARR dari token SAS hanya berfungsi jika telah dikonfigurasi dengan opsi "Diaktifkan dari semua jaringan": Cuplikan layar pengaturan portal Azure untuk tingkat akses jaringan publik pada penyimpanan blob.

Jika membatasi titik akhir privat adalah persyaratan, akun penyimpanan harus ditautkan dan model harus dimuat melalui jalur kode non-SAS seperti yang dijelaskan di sini.

Kesalahan 'Disconnected: VideoFormatNotAvailable'

Periksa apakah GPU Anda mendukung pendekodean video perangkat keras. Lihat PC Pengembangan.

Jika Anda mengerjakan laptop dengan dua GPU, ada kemungkinan bahwa GPU yang Anda jalankan secara default, tidak menyediakan fungsionalitas decoding video perangkat keras. Jika demikian, coba paksa aplikasi Anda untuk menggunakan GPU lain. Mengubah GPU yang digunakan sering dimungkinkan dalam pengaturan driver GPU.

Ambil sesi/status konversi gagal

Mengirim perintah REST API terlalu sering menyebabkan server dibatasi dan mengembalikan kegagalan pada akhirnya. Kode status HTTP dalam kasus pembatasan adalah 429 ("terlalu banyak permintaan"). Sebagai aturan praktis, harus ada penundaan 5-10 detik antara panggilan berikutnya.

Perhatikan bahwa batas ini tidak hanya memengaruhi panggilan REST API saat dipanggil secara langsung, tetapi juga rekan C#/C++-nya, seperti Session.GetPropertiesAsync, Session.RenewAsync, atau Frontend.GetAssetConversionStatusAsync. Beberapa fungsi juga mengembalikan informasi saat disimpan untuk mencoba kembali. Misalnya, RenderingSessionPropertiesResult.MinimumRetryDelay menentukan berapa detik untuk menunggu sebelum mencoba pemeriksaan lain. Jika tersedia, menggunakan nilai yang ditampilkan seperti itu adalah yang terbaik, karena memungkinkan Anda melakukan pemeriksaan sesering mungkin, tanpa terhambat.

Jika Anda mengalami pembatasan sisi server, ubah kode untuk melakukan panggilan dengan frekuensi yang lebih rendah. Server akan mengatur ulang status pembatasan setiap menit, sehingga aman untuk menjalankan ulang kode setelah satu menit.

Kodek H265 tidak tersedia

Ada dua alasan mengapa server mungkin menolak untuk tersambung dengan kesalahan codec not available.

Kodek H265 tidak terpasang:

Pertama-tama, pastikan untuk memasang Ekstensi Video HEVC seperti yang disebutkan di bagian Perangkat Lunak pada persyaratan sistem.

Jika Anda masih mengalami masalah, pastikan kartu grafis Anda mendukung H265, dan Anda memiliki driver grafis terbaru yang terinstal. Lihat bagian PC Pengembangan pada persyaratan sistem untuk informasi khusus vendor.

Kodek terpasang, tetapi tidak dapat digunakan:

Alasan untuk masalah ini adalah pengaturan keamanan yang salah pada DLL. Masalah ini tidak muncul saat mencoba menonton video yang dienkodekan dengan H265. Memasang ulang kodek juga tidak memperbaiki masalahnya. Sebagai gantinya, lakukan langkah-langkah berikut:

  1. Bukalah PowerShell dengan hak admin dan jalankan

    Get-AppxPackage -Name Microsoft.HEVCVideoExtension*
    

    (Perhatikan '*' karena untuk beberapa versi penginstalan paket, nama tersebut HEVCVideoExtensions berlawanan HEVCVideoExtensiondengan ). Perintah itu akan menampilkan InstallLocation dari kodek, seperti:

    InstallLocation   : C:\Program Files\WindowsApps\Microsoft.HEVCVideoExtension_1.0.23254.0_x64__5wasdgertewe
    
  2. Buka folder itu di Windows Explorer

  3. Akan tampil subfolder x86 dan x64. Klik kanan pada salah satu folder dan pilih Properti

    1. Pilih tab Keamanan dan pilih tombol Pengaturan tingkat lanjut
    2. Pilih Ubah untuk Pemilik
    3. Ketik Administrator ke dalam bidang teks
    4. Pilih Periksa Nama dan OK
  4. Ulangi langkah di atas untuk folder lainnya

  5. Ulangi juga langkah-langkah di atas pada setiap file DLL di dalam kedua folder. Secara keseluruhan harus ada empat DLL.

Untuk memverifikasi bahwa pengaturan sekarang sudah benar, lakukan langkah-langkah berikut untuk masing-masing dari empat DLL:

  1. Pilih Edit Keamanan > Properti >
  2. Buka daftar semua Grup/Pengguna dan pastikan masing-masing memiliki setelan Baca & Jalankan yang benar (tanda centang di kolom izinkan harus dicentang)

Kualitas video rendah

Kualitas video dapat dikompromikan baik oleh kualitas jaringan atau kodek video H265 yang hilang.

Video yang direkam dengan MRC tidak mencerminkan kualitas pengalaman langsung

Video dapat direkam di HoloLens melalui Mixed Reality Capture (MRC). Namun video yang dihasilkan memiliki kualitas yang lebih buruk daripada pengalaman langsung karena dua alasan:

  • Framerate video dibatasi pada 30 Hz alih-alih 60 Hz.
  • Gambar video tidak melalui langkah pemrosesan proyeksi ulang tahap akhir, sehingga video tampak lebih helikopter.

Keduanya merupakan keterbatasan yang melekat pada teknik perekaman.

Layar hitam setelah pemuatan model berhasil

Jika Anda terhubung ke runtime penyajian dan berhasil memuat model, tetapi hanya melihat layar hitam setelahnya, hal ini dapat memiliki beberapa penyebab yang berbeda.

Sebaiknya uji hal-hal berikut sebelum melakukan analisis yang lebih mendalam:

  • Apakah kodek H265 dipasang? Meskipun harus ada fallback ke codec H264, kami telah melihat kasus di mana fallback ini tidak berfungsi dengan baik. Lihat persyaratan sistem untuk memasang driver grafik terbaru.
  • Saat menggunakan proyek Unity, tutup Unity, hapus folder perpustakaan dan objsementara di direktori proyek dan muat/bangun proyeknya kembali. Dalam beberapa kasus, data cache menyebabkan sampel tidak berfungsi dengan baik tanpa alasan yang jelas.

Jika kedua langkah ini tidak membantu, diperlukan untuk mengetahui apakah bingkai video diterima oleh klien atau tidak. Ini dapat diajukan sebagai kueri secara terprogram seperti yang dijelaskan dalam bab kueri performa sisi server. FrameStatistics struct memiliki anggota yang menunjukkan berapa banyak bingkai video telah diterima. Jika jumlah ini lebih besar dari 0 dan meningkat dari waktu ke waktu, klien menerima bingkai video aktual dari server. Jadi, itu harus menjadi masalah di sisi klien.

Nilai penskalan dalam pengaturan konversi tidak diterapkan ke model

Jika model muncul di Showcase atau Quickstart dengan penskalaan yang tidak berubah meskipun penskalaan diterapkan sebagai bagian dari parameter geometri pengaturan konversi, maka ini mungkin karena fitur penskalaan otomatis bawaan sampel. Artinya, sampel menskalakan model agar paling sesuai dengan frustum tampilan, terlepas dari penskalaan inputnya.

Dalam kasus Showcase, penskalaan otomatis dapat dinonaktifkan dengan menentukan MaxSize nol di bagian model Transform di dalam file models.xml. Pendekatan berbasis data ini mengharuskan model dimuat melalui XML di tempat pertama, karena dalam semua kasus MaxSize lain default menjadi 1 meter. Ada juga MinSize properti yang defaultnya 0,5 meter, menyebabkan semua model yang lebih kecil ditingkatkan skalanya. Untuk informasi selengkapnya tentang cara memuat model di Showcase, lihat bab Menambahkan Aset Model 3D ke ARR Showcase dari dokumentasi Showcase.

Masalah umum di sisi klien

Model melebihi batas VM yang dipilih, khususnya jumlah maksimum primitif:

Lihat batas ukuran server tertentu.

Model tidak berada di dalam frustum kamera:

Dalam banyak kasus, model ditampilkan dengan benar tetapi terletak di luar frustum kamera. Alasan umumnya adalah bahwa model telah diekspor dengan pivot yang jauh di luar pusat sehingga terpotong oleh bidang kliping jauh kamera. Ini membantu mengajukan kueri pada kotak pembatas model secara terprogram dan memvisualisasikan kotak dengan Unity sebagai kotak garis atau mencetak nilainya ke log debug.

Selanjutnya proses konversi menghasilkan file json output bersama dengan model yang dikonversi. Untuk men-debug masalah pemosisian model, ada baiknya melihat boundingBox entri di bagian outputStatistics:

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

Kotak pembatas digambarkan sebagai posisi min dan max dalam ruang 3D, dalam satuan meter. Jadi koordinat 1000,0 berarti jaraknya 1 kilometer dari asal.

Ada dua masalah dengan kotak pembatas ini yang mengarah ke geometri tak terlihat:

  • Kotak dapat berada jauh dari tengah, sehingga objek terpotong seluruhnya karena terpotongnya bidang yang jauh. Nilai boundingBox dalam hal ini akan terlihat seperti ini:min = [-2000, -5,-5], max = [-1990, 5,5], dengan menggunakan offset besar pada sumbu x sebagai contoh di sini. Untuk mengatasi jenis masalah ini, aktifkan opsi recenterToOrigin di konfigurasi konversi model.
  • Kotak dapat berada di tengah tetapi derajat magnitudonya terlalu besar. Artinya, meskipun kamera dimulai di tengah model, geometrinya terpotong ke segala arah. Nilai umum boundingBox dalam kasus ini akan terlihat seperti ini:min = [-1000,-1000,-1000], max = [1000,1000,1000]. Alasan untuk jenis masalah ini biasanya adalah ketidakcocokan skala unit. Untuk mengimbanginya, tentukan nilai penskalaan selama konversi atau tandai model sumber dengan unit yang benar. Penskalaan juga dapat diterapkan ke simpul akar saat memuat model pada runtime.

Alur render Unity tidak menyertakan kait render:

Azure Remote Rendering terhubung ke pipa render Unity untuk melakukan komposisi bingkai dengan video, dan untuk melakukan proyeksi ulang. Untuk memverifikasi bahwa pengait ini ada, buka menu Window > Analysis > Frame debugger. Aktifkan dan pastikan ada dua entri untuk HolographicRemotingCallbackPass dalam alur:

Alur render unity

Untuk memperbaikinya, pastikan aset HybridRenderingPipeline yang disediakan digunakan:Cuplikan layar browser aset Unity dan dialog Pengaturan Proyek. Aset HybridRenderingPipeline disorot di browser aset. Panah menunjuk dari aset ke bidang UniversalRenderPipelineAsset di pengaturan proyek.

.. seperti yang dijelaskan secara lebih rinci dalam Alur Render Unity.

Pola kotak-kotak dirender setelah pemuatan model

Jika gambar yang dirender terlihat seperti ini: Cuplikan layar menunjukkan kisi kotak hitam dan putih dengan menu Alat.

kemudian perender mencapai batas poligon untuk ukuran konfigurasi standar. Untuk memitigasi, beralihlah ke ukuran konfigurasi premium atau kurangi jumlah poligon yang terlihat.

Gambar yang dirender di Unity terbalik

Pastikan untuk mengikuti Tutorial Unity: Lihat model jarak jauh dengan tepat. Gambar terbalik menunjukkan bahwa Unity diperlukan untuk membuat target render di luar layar. Perilaku ini saat ini tidak didukung dan menciptakan dampak performa yang besar pada HoloLens 2.

Alasan untuk masalah ini mungkin karena MSAA, HDR, atau pengaktifan pasca-pemrosesan. Pastikan profil berkualitas rendah dipilih dan ditetapkan sebagai default di Unity. Untuk melakukannya, buka Edit > Pengaturan Proyek... > Kualitas.

Saat menggunakan plugin OpenXR di Unity 2020, ada versi URP (Universal Render Pipeline) yang membuat target render ekstra di luar layar ini terlepas dari pemrosesan pos yang diaktifkan. Dengan demikian penting untuk meningkatkan versi URP secara manual ke setidaknya 10.5.1 (atau lebih tinggi). Proses peningkatan ini dijelaskan dalam persyaratan sistem.

Kode unity yang menggunakan API Remote Rendering tidak dapat dikompilasi

Gunakan Debug saat mengkompilasi untuk Unity Editor

Alihkan jenis bangunan dari solusi Unity ke Debug. Saat menguji ARR di editor Unity, definisi UNITY_EDITORhanya tersedia di build 'Debug'. Pengaturan ini tidak terkait dengan jenis build yang digunakan untuk aplikasi yang disebarkan, di mana Anda harus lebih memilih build 'Rilis'.

Kompilasi kegagalan saat mengkompilasi sampel Unity untuk HoloLens 2

Kami telah melihat kegagalan yang memuaskan ketika mencoba mengkompilasi sampel Unity (mulai cepat, ShowCaseApp, ... ) untuk HoloLens 2. Visual Studio mengeluh tentang tidak dapat menyalin beberapa file meskipun file tersebut ada di sana. Jika Anda mengalami masalah ini:

  • Hapus semua file Unity sementara dari proyek dan coba lagi. Yaitu, tutup Unity, hapus folder perpustakaandan obj sementara di direktori proyek dan muat/bangun proyek lagi.
  • Pastikan proyek berada di direktori pada disk dengan jalur yang cukup pendek, karena langkah penyalinan terkadang tampaknya terkendala oleh nama file yang panjang.
  • Jika itu tidak membantu, bisa jadi MS Sense mengganggu langkah penyalinan. Untuk menyiapkan pengecualian, jalankan perintah registri ini dari baris perintah (memerlukan hak admin):
    reg.exe ADD "HKLM\SOFTWARE\Policies\Microsoft\Windows Advanced Threat Protection" /v groupIds /t REG_SZ /d "Unity"
    

Build Arm64 untuk proyek Unity gagal karena AudioPluginMsHRTF.dll tidak ditemukan

AudioPluginMsHRTF.dll untuk Arm64 ditambahkan ke paket Windows Mixed Reality(com.unity.xr.windowsmr.metro)dalam versi 3.0.1. Pastikan Anda telah memasang versi 3.0.1 atau yang lebih baru melalui Unity Package Manager. Dari bilah menu Unity, navigasikan ke Window Package Manager dan cari paket Windows Mixed Reality>.

Plugin Unity Cinemachine tidak berfungsi dalam mode Pose jarak jauh

Dalam mode Pose jarak jauh, kode pengikatan ARR Unity secara implisit membuat kamera proksi yang melakukan penyajian aktual. Dalam hal ini, masker culling kamera utama diatur ke 0 ("tidak ada") untuk secara efektif mematikan penyajian untuk itu. Namun, beberapa plugin pihak ketiga (seperti Cinemachine) yang mendorong kamera, mungkin mengandalkan setidaknya beberapa bit lapisan yang diatur.

Untuk tujuan ini, Kode pengikatan memungkinkan Anda mengubah bitmask lapisan secara terprogram untuk kamera utama. Secara khusus, langkah-langkah berikut diperlukan:

  1. Buat lapisan baru di Unity yang tidak digunakan untuk merender geometri adegan lokal apa pun. Dalam contoh ini, asumsikan lapisan diberi nama "Cam".
  2. Teruskan bitmask ini ke ARR sehingga ARR mengaturnya pada kamera utama:
    RemoteManagerUnity.CameraCullingMask = LayerMask.GetMask("Cam");
    
  3. Konfigurasikan Cinemachine properti untuk menggunakan lapisan baru ini: Cuplikan layar yang memperlihatkan panel pemeriksa Unity untuk pengaturan kamera di Cinemachine.

Mode pose lokal tidak terpengaruh oleh masalah ini, karena dalam hal ini pengikatan ARR tidak mengalihkan penyajian ke kamera proksi internal.

Aplikasi berbasis C++ asli tidak dikompilasi

Kesalahan 'Pustaka tidak ditemukan' untuk aplikasi UWP atau DLL

Di dalam paket C++ NuGet, ada file file microsoft.azure.remoterendering.Cpp.targets yang menentukan rasa biner mana yang akan digunakan. Untuk mengidentifikasi UWP, kondisi dalam file memeriksa ApplicationType == 'Windows Store'. Jadi perlu dipastikan bahwa jenis ini diatur dalam proyek. Itu seharusnya terjadi ketika membuat aplikasi UWP atau Dll melalui wizard proyek Visual Studio.

Hologram Tidak Stabil

Jika objek yang dirender tampak bergerak bersama dengan gerakan kepala, Anda mungkin mengalami masalah dengan Late Stage Reprojection (LSR). Lihat bagian tentang Late Stage Reprojection untuk mengetahui panduan tentang cara memahami situasi tersebut.

Alasan lain untuk hologram yang tidak stabil (hologram yang bergoyang-goyang, melengkung, bergetar, atau melompat) mungkin disebabkan oleh konektivitas jaringan yang buruk, khususnya bandwidth jaringan yang tidak mencukupi, atau latensi yang terlalu tinggi. Sebuah indikator yang baik untuk kualitas koneksi jaringan Anda adalah nilai statistik performaServiceStatistics.VideoFramesReused. Bingkai yang digunakan kembali menunjukkan situasi ketika bingkai video lama perlu digunakan kembali di sisi klien karena tidak ada bingkai video baru yang tersedia – misalnya karena kehilangan paket atau karena variasi latensi jaringan. Jika ServiceStatistics.VideoFramesReused sering lebih besar dari nol, itu menunjukkan masalah jaringan.

Nilai lain untuk dilihat adalah ServiceStatistics.LatencyPoseToReceiveAvg. Nilai ini harus terus di bawah 100 ms. Melihat nilai yang lebih tinggi dapat menunjukkan bahwa Anda tersambung ke pusat data yang terlalu jauh.

Untuk mengetahui daftar potensi mitigasi, lihat pedoman untuk konektivitas jaringan.

Konten lokal (UI, ...) pada HoloLens 2 merender dengan artefak distorsi yang jauh lebih banyak daripada tanpa ARR

Artefak ini disebabkan oleh pengaturan default yang memperdagangkan kualitas proyeksi konten lokal untuk performa runtime. Lihat bab tentang mode pose reproyeksi untuk melihat bagaimana mode proyeksi dapat diubah sehingga konten lokal dirender pada tingkat kualitas reproyeksi yang sama seperti tanpa ARR.

Z-fighting

Sementara ARR menawarkan fungsi mitigasi z-fighting, z-fighting masih dapat muncul di tempat kejadian. Panduan ini bertujuan untuk memecahkan masalah yang tersisa ini.

Gunakan alur kerja berikut untuk memitigasi z-fighting:

  1. Uji adegan dengan pengaturan default ARR (mitigasi z-fighting aktif)

  2. Nonaktifkan mitigasi z-fighting melalui API-nya

  3. Ubah bidang dekat dan jauh kamera ke rentang yang lebih dekat

  4. Memecahkan masalah adegan melalui bagian berikutnya

Menyelidiki z-fighting yang tersisa

Jika langkah-langkah di atas telah dilakukan dan z-fighting yang tersisa tidak dapat diterima, penyebab mendasar dari z-fighting perlu diselidiki. Sebagaimana dinyatakan dalam halaman fitur mitigasi z-fighting, ada dua alasan utama untuk z-fighting: kehilangan presisi kedalaman di ujung jauh rentang kedalaman, dan permukaan yang berpotongan saat dalam kondisi koplanar. Kehilangan presisi kedalaman adalah kemungkinan matematis dan hanya dapat dimitigasi dengan mengikuti langkah 3 di atas. Permukaan koplanar menunjukkan cacat aset sumber dan lebih baik diperbaiki dalam data sumber.

ARR memiliki fitur untuk menentukan apakah permukaan bisa melakukan z-fight: Penyorotan kotak-kotak. Secara visual, Anda juga dapat menentukan apa yang menyebabkan z-fighting. Animasi pertama berikut menunjukkan contoh kehilangan presisi kedalaman di kejauhan, dan animasi kedua menunjukkan contoh permukaan mendekati koplanar:

Animasi menunjukkan contoh kehilangan presisi kedalaman di kejauhan. Animasi menunjukkan contoh permukaan yang hampir koplanar.

Bandingkan contoh-contoh ini dengan z-fighting Anda untuk menentukan akar penyebab atau secara opsional ikuti alur kerja langkah demi langkah ini:

  1. Posisikan kamera di atas permukaan z-fighting untuk melihat langsung ke permukaan.
  2. Perlahan gerakkan kamera ke belakang, menjauh dari permukaan.
  3. Jika z-fighting terlihat sepanjang waktu, permukaannya benar-benar koplanar.
  4. Jika z-fighting terlihat hampir sepanjang waktu, permukaannya mendekati koplanar.
  5. Jika z-fighting hanya terlihat dari jauh, penyebabnya adalah kurangnya presisi kedalaman.

Permukaan koplanar dapat memiliki banyak penyebab yang berbeda:

  • Objek diduplikasi oleh aplikasi pengekspor karena pendekatan alur kerja yang salah atau berbeda.

    Periksa masalah ini dengan aplikasi masing-masing dan dukungan aplikasi.

  • Permukaan diduplikasi dan dibalik agar memperlihatkan dua sisi dalam penyaji yang menggunakan seleksi muka depan atau belakang.

    Impor melalui konversi model menentukan keberpihakan utama model tersebut. Dua sisi diasumsikan sebagai default. Permukaan dirender sebagai dinding tipis dengan pencahayaan yang benar secara fisik dari kedua sisi. Keberpihakan tunggal dapat diimplikasikan oleh bendera di aset sumber, atau dipaksakan secara eksplisit selama konversi model. Selain itu, tetapi secara opsional, mode satu sisidapat disetel ke "normal".

  • Objek berpotongan di aset sumber.

    Objek yang diubah sedemikian rupa sehingga beberapa permukaannya tumpang tindih juga menciptakan z-fighting. Mengubah bagian dari pohon adegan dalam adegan yang diimpor di ARR juga dapat menimbulkan masalah ini.

  • Permukaan sengaja dibuat untuk disentuh, seperti stiker atau teks di dinding.

Artefak grafis menggunakan penyajian stereo multi-pass di aplikasi C++ mandiri

Dalam beberapa kasus, aplikasi C++ mandiri kustom yang menggunakan mode penyajian stereo multi-pass untuk konten lokal (penyajian ke mata kiri dan kanan dalam lintasan terpisah) setelah memanggil BlitRemoteFrame dapat memicu bug pengemudi. Bug menghasilkan gangguan rasterisasi non-deterministik, dan menyebabkan segitiga individu atau bagian segitiga dari konten lokal menghilang secara acak. Untuk alasan performa, disarankan untuk merender konten lokal dengan teknik penyajian stereo single-pass yang lebih modern, misalnya menggunakan SV_RenderTargetArrayIndex.

Kesalahan Unduhan File Konversi

Layanan Konversi mungkin mengalami kesalahan saat mengunduh file dari penyimpanan blob karena keterbatasan sistem file. Kasus kegagalan tertentu tercantum di bawah ini. Informasi komprehensif tentang batasan sistem file Windows dapat ditemukan dalam dokumentasi Naming Files, Paths, dan Namespaces .

Jalur bertabrakan dan nama file

Dalam penyimpanan blob, Anda dapat membuat file dan folder dengan nama yang sama persis dengan entri saudara. Sistem file Windows tidak memperbolehkan ini. Oleh karena itu, layanan memancarkan kesalahan pengunduhan dalam hal ini.

Panjang jalur

Ada batas panjang jalur yang diberlakukan oleh Windows dan layanan. Jalur file dan nama file dalam penyimpanan blob Anda tidak boleh melebihi 178 karakter. Misalnya diberikan blobPrefix dari models/Assets, yaitu 13 karakter:

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

Layanan Konversi mengunduh semua file yang ditentukan di bawah blobPrefix, bukan hanya file yang digunakan dalam konversi. File/folder yang menyebabkan masalah mungkin kurang jelas dalam kasus ini, jadi penting untuk memeriksa semua yang ada di akun penyimpanan di bawah blobPrefix. Lihat contoh input di bawah untuk mengetahui apa yang diunduh.

{
  "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 'Ambil Gambar' (MRC) tidak menampilkan konten lokal atau jarak jauh

Masalah ini biasanya terjadi jika proyek diperbarui dari WMR ke OpenXR dan proyek mengakses pengaturan HolographicViewConfiguration Class (Windows.Graphics.Holographic). API ini tidak didukung di OpenXR dan tidak boleh diakses.

Langkah berikutnya