Getting the following error when exporting USDZ from USD Composer.
2023-07-12 23:14:04 [Error] [asyncio] Task exception was never retrieved
2023-07-12 23:14:04 [Error] [asyncio] future: <Task finished name=‘Task-14756’ coro=<usdz_export() done, defined at d:/nvidia/ov/data/kit/usd.composer/2023.1/exts/3/omni.kit.usdz_export-1.0.1+ed961c5c/omni/kit/usdz_export/layers_menu.py:29> exception=ErrorException(Error in ‘pxrInternal_v0_22__pxrReserved__::UsdZipFileWriter::AddFile’ at line 932 in file W:\ac88d7d902b57417\USD\pxr\usd\usd\zipFile.cpp : ‘Failed to map ‘https://omniverse-content-production.s3.us-west-2.amazonaws.com/Assets/Scenes/Templates/Default/SubUSDs/textures/CarLight_512x256.hdr’: Invalid argument’, Error in ‘pxrInternal_v0_22__pxrReserved__::UsdZipFileWriter::AddFile’ at line 932 in file W:\ac88d7d902b57417\USD\pxr\usd\usd\zipFile.cpp : ‘Failed to map ‘https://omniverse-content-production.s3.us-west-2.amazonaws.com/Assets/Scenes/Templates/Default/SubUSDs/textures/ov_uv_grids_basecolor_1024.png’: Invalid argument’)>
2023-07-12 23:14:04 [Error] [asyncio] Traceback (most recent call last):
2023-07-12 23:14:04 [Error] [asyncio] File “d:/nvidia/ov/data/kit/usd.composer/2023.1/exts/3/omni.kit.usdz_export-1.0.1+ed961c5c/omni/kit/usdz_export/layers_menu.py”, line 85, in usdz_export
2023-07-12 23:14:04 [Error] [asyncio] success = UsdUtils.CreateNewUsdzPackage(Sdf.AssetPath(target_in), local_out_path.str())
2023-07-12 23:14:04 [Error] [asyncio] pxr.Tf.ErrorException:
2023-07-12 23:14:04 [Error] [asyncio] Error in ‘pxrInternal_v0_22__pxrReserved__::UsdZipFileWriter::AddFile’ at line 932 in file W:\ac88d7d902b57417\USD\pxr\usd\usd\zipFile.cpp : ‘Failed to map ‘https://omniverse-content-production.s3.us-west-2.amazonaws.com/Assets/Scenes/Templates/Default/SubUSDs/textures/CarLight_512x256.hdr’: Invalid argument’
2023-07-12 23:14:04 [Error] [asyncio] Error in ‘pxrInternal_v0_22__pxrReserved__::UsdZipFileWriter::AddFile’ at line 932 in file W:\ac88d7d902b57417\USD\pxr\usd\usd\zipFile.cpp : ‘Failed to map ‘https://omniverse-content-production.s3.us-west-2.amazonaws.com/Assets/Scenes/Templates/Default/SubUSDs/textures/ov_uv_grids_basecolor_1024.png’: Invalid argument’
I tried exporting the “AlarmClock_Retro”. It was in a new scene with just the clock, no lights, ground … The validator said no errors. I exported the root lay as usdz. The file size was 27 Mbytes. I unzipped it and the clock and texture maps were there. I viewed the usdz on my iPad Pro and it worked in AR, but it was grey.
I opened the clock in OV USDViewer it was grey. The materials are there but not shown.
I loaded the clock usdz file in composer and it was also grey.
@bjcarve do you know whether the texture paths were mapped properly? were they relative or absolute?
I can check that, but when I did he test, I used whatever the defaults were.
I did some research on OpenUSD and USDZ. The first file in the USDZ directory structure is the main usd file. This USD file specifies the paths to all of the needed files. Seems like the defaults using one computer to export and the same computer same copy of OV, should work.
@bjcarve iPad and usdview will want UsdPreviewSurface materials. The MDLs won’t work there. As of Kit 105, you can now distill MDL materials to UsdPreviewSurface for better portability.
1 Like
thanks for clearing that up, @mati-nvidia . what about Composer? sounded like it wasnt displaying textures there for @bjcarve either, or would you say UsdPreviewSurface material is, in general, more flexible for translation?
I will give that a try and let you know how it goes.
If you add a “USD Preview Surface” or “USD Preview Surface Texture” the USDZ will display with the material on an iPad. Confusing the Create/Material “Usd Materials” has 4 menu items that include the Preview Surfaces, “Add MDL File” and “Create MDL Graph”. I will look into how to “distill” MDL materials to UsdPreviewSurfaces.
i think Mati is referring to the extension “MDL Distill and Bake”, which you can read more about in the doc.
p.s. make sure to read about its known limitations so you don’t’ get caught off-guard with unexpected results.

There are so many extensions and “stuff” in OV to try to learn. Thanks for the link. I have started experimenting with OV and Substance Painter to export USDZ files that are compatible with the iPad. May be one path to getting individual objects from OV to USDZ.
i hear you 🙂 and just fyi, Composer should support SBSAR files directly (but sounds like UsdPreviewSurfaces is what you are after in the end).