OpenUSD
OpenUSD copied to clipboard
Creating large usdz files produces invalid files without error
Description of Issue
Trying to create a usdz file from a large usd folder with UsdUtilsCreateNewUsdzPackage
creates an invalid file.
Opening it gives this error, both in omniverse and usdview.
The file is not a valid zip file anymore either. We suspect that the issue is that the file size is over the 32 bit limit and the ZIP64 extension is not supported, which is fine, but it would be nice if we then received an error code. Actually being able to create those large archives would be even better, of course.
I can provide some concrete reproduction files, but given the file size we're talking about and the suspected cause, I figured it's probably not worth it. I can also give a concrete code snippet to reproduce if needed.
Steps to Reproduce
- Create a large, valid folder that can be turned into an usdz archive
- Call
UsdUtilsCreateNewUsdzPackage(path, outPath)
on the folder, which will returntrue
- Ensure the created usdz is over 4 GB. If not, go back to step 1
- Try to open the created usdz file with
usdview
orunzip
, both of which fail
System Information (OS, Hardware)
Replicated both on debian-bookworm in docker and on NixOS 24.05.20240515.33d1e75
.
Package Versions
23.05, 23.11
Build Flags
"-DPXR_BUILD_ALEMBIC_PLUGIN=ON"
"-DPXR_BUILD_DRACO_PLUGIN=ON"
"-DPXR_BUILD_EMBREE_PLUGIN=ON"
"-DPXR_BUILD_EXAMPLES=OFF"
"-DPXR_BUILD_IMAGING=ON"
"-DPXR_BUILD_MONOLITHIC=ON"
"-DPXR_BUILD_TESTS=OFF"
"-DPXR_BUILD_TUTORIALS=OFF"
"-DPXR_BUILD_USD_IMAGING=ON"
"-DPXR_BUILD_DOCUMENTATION=OFF"
"-DPXR_BUILD_PYTHON_DOCUMENTATION=OFF"
"-DPXR_BUILD_USDVIEW=OFF"
"-DPXR_BUILD_USD_TOOLS=OFF"
"-DPXR_ENABLE_MATERIALX_SUPPORT=OFF"
"-DPXR_ENABLE_OSL_SUPPORT=OFF"