使用 MDLAsset(url:) 初始化程序将 OBJ 加载到 MDLAsset(最终将模型放入 SceneKit)时,iOS14 上的操作经常失败且不一致。此操作适用于以前 iOS 版本上的这些相同文件。我也在 iPadOS 上观察到了这个错误,虽然可能不那么频繁。不确定它是否相关,但这些 OBJ 是从服务器中提取并存储在本地的。但是这个错误是在文件已经下载之后发生的。有时同一个文件会在随机工作之前失败多次,反之亦然。
控制台输出似乎表明与 ModelIO XPC 服务通信失败。我尝试重新启动我的设备,但错误继续发生。控制台输出:
connection to com.apple.ModelIO.AssetLoader was interrupted
AssetLoader.loadURL errorHandler: Error Domain=NSCocoaErrorDomain Code=4097 "connection to service on pid 0 named com.apple.ModelIO.AssetLoader" UserInfo={NSDebugDescription=connection to service on pid 0 named com.apple.ModelIO.AssetLoader}
Couldn’t communicate with a helper application.
connection to com.apple.ModelIO.AssetLoader was interrupted
有没有其他人在 iOS14 上遇到过这个问题?或者,在此期间有人尝试过任何解决方法吗?据我所知,只能通过 ModelIO 将 OBJ(从服务器下载)加载到 SceneKit 中,而无需自己编写 OBJ 解析器。