即时创建 USDZ 文件?



>有人知道如何从 obj 即时创建 usdz 吗?我们的应用程序使用第三方库创建一个obj文件,为了使用QLPreview控制器,我们需要将其转换为usdz格式。有一些方法可以使用终端来做到这一点,但想知道是否有任何方法可以通过编程方式做到这一点?

我团队的一位工程师上周就想通了! 现在创建USDZ文件很有趣 - 目前我们可以通过保存USDC文件来伪造它......重命名扩展!

首先,您需要将 filePath 中的 .obj 文件作为 MDLA 集合加载

NSURL *url = [NSURL fileURLWithPath:filePath];
MDLAsset *asset = [[MDLAsset alloc]initWithURL:url];

确保MDLAsset可以写入所需的扩展 支持 USDC(美元二进制格式(

if([MDLAsset canExportFileExtension:@"usdc"]){
NSLog(@"able to export as usdc");
// save the usdc file
[asset exportAssetToURL:usdcUrl];
}

将 USDC 重命名为 USDZ,因为这就是全部所需

NSError *renameErr;
NSFileManager *fm = [[NSFileManager alloc] init];
BOOL mvResult = [fm moveItemAtPath:usdcPath toPath:usdzPath error:& renameErr];
if(! mvResult){
NSLog(@"Error renaming usdz file: %@", [renameErr localizedDescription]);
}

希望这有所帮助,直到Apple可以给我们更彻底的操作方法。 如果您想阅读此内容的更长形式的细分 - https://www.scandy.co/blog/how-to-export-simple-3d-objects-as-usdz-on-ios

相关内容

  • 没有找到相关文章

最新更新