Reputation: 560
So I have an OBJ 3D model with its associated MTL file. The MTL file contains all the textures. However, when I convert the file to the USDZ format, the textures are not attributed to the file. This is the code I use.
xcrun usdz_converter /Users/SaiKambampati/Downloads/Models/object.obj /Users/SaiKambampati/Downloads/Models/object.usdz
The USDZ file is created but the attributes and textures are not applied. Is there any way to include the MTL file when converting the OBJ model to USDZ model?
Upvotes: 6
Views: 11509
Reputation: 58043
Xcode's Command Line Converter for USDZ
doesn't understand associated material MTL
files for OBJ
3D models at the moment.
For texturing converted USDZ
models in Xcode, you need to save UV-mapped textures in Autodesk Maya as JPEG
or PNG
files, for OBJ
, ABC
, FBX
, USD
or DAE
models, and then assign these UV textures thru Xcode's UI or programmatically. Also, you can export a USDZ
model with textures right from Maya 2024.
For more details, read about Pixar USD file format here.
Upvotes: 2
Reputation: 31
To convert OBJ to USDZ, I'd recommend using GLB as an intermediate format.
You can convert OBJ to GLB using Blender, by importing the OBJ, and exporting as GLB.
Then Spase has a GLB to USDZ converter available at https://spase.io/converter, that rapidly does the conversion (for free), powered by a Google USDZ library. It's a drag-and-drop tool, and after conversion the USDZ can be downloaded instantly.
Upvotes: 3
Reputation: 36
For what it is worth, I created a model in Blender intended for usdz and used regular Texture and UV mapping to color it. When I output the OBJ I too got a .mtl file but did not need it. When I passed the texture .png to usdz_converter as the color_map param the texture showed up in Quick Look on iOS 12.
Upvotes: 2