При загрузке OBJ в MDLAsset с помощью инициализатора MDLAsset(url:) (чтобы в конечном итоге получить модель в 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? В качестве альтернативы, есть ли какие-либо обходные пути, которые кто-нибудь пробовал? Насколько мне известно, загрузка OBJ (загруженного с сервера) в SceneKit может быть выполнена только через ModelIO, без написания парсера OBJ самостоятельно.
[URL: SCNGeometry]
при его загрузке и 2) повторить попытку до 5 раз, чтобы загрузить ресурс в случае сбоя. - person johnboiles   schedule 29.09.2020MDLAsset
для загрузки мешей. - person johnboiles   schedule 18.12.2020