如何将带有MTL文件的OBJ转换为USDZ格式

6

我有一个包含MTL文件的OBJ 3D模型,MTL文件包含所有纹理。但是,当我将该文件转换为USDZ格式时,纹理未被正确应用。下面是我使用的代码:

xcrun usdz_converter /Users/SaiKambampati/Downloads/Models/object.obj /Users/SaiKambampati/Downloads/Models/object.usdz

已创建USDZ文件,但属性和纹理未应用。在将OBJ模型转换为USDZ模型时,是否有办法包含MTL文件?


3
最终,你是否成功使用usdz_converter将纹理应用到.usdz文件中? - Sergio
3个回答

3
将OBJ转换为USDZ,建议使用GLB作为中间格式。
您可以使用Blender将OBJ转换为GLB,方法是导入OBJ,然后导出为GLB。
然后,Spase提供了一个GLB到USDZ的转换器,网址为https://spase.io/converter,它由Google USDZ库提供支持,可以快速免费进行转换。这是一个拖放工具,在转换后,USDZ可以立即下载。

2

就我所知,我在Blender中创建了一个模型,旨在用于usdz,并使用常规的纹理和UV映射来着色。当我输出OBJ时,也得到了.mtl文件,但不需要它。当我将纹理.png作为color_map参数传递给usdz_converter时,在iOS 12上的Quick Look中显示了纹理。


2
Xcode的命令行转换器对于目前的OBJ 3D模型,无法理解关联材质MTL文件。
在Xcode中为转换后的USDZ模型进行纹理处理时,您需要在Autodesk Maya中将UV映射纹理保存为JPEG或PNG文件,适用于OBJ、ABC、FBX、USD或DAE模型,然后通过Xcode的用户界面或编程方式分配这些UV纹理。此外,您还可以直接从Maya 2024导出带有纹理的USDZ模型。
要了解更多详细信息,请阅读关于Pixar USD文件格式的这里

当你说Xcode 10不理解.mtl时,你是指usdz_converter工具,对吗?因为我尝试在Xcode 10中为ARKit项目渲染(.obj + .mtl)并没有问题。但是确实不能使用usdz_converter工具而不带选项,并期望从(.obj + .mtl)获得带纹理的.usdz文件。 - Sergio
1
是的,我指的是usdz_converter工具。 - Andy Jazz
我在使用.usdz纹理和ARKit时遇到了问题:https://dev59.com/76_la4cB1Zd3GeqPy9R6 - Sergio

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接