Я работаю над проектом на основе SceneKit для iOS 11.3 под Xcode 9.3.У меня есть несколько 3D-моделей в формате .dae.
Всякий раз, когда я собираю проект, одна из моделей не копируется в окончательный комплект iOS.Копаясь в ошибках, я получаю следующую ошибку в фазе сборки Copy Bundle Resources:
Copy SceneKit assets Models.scnassets ...in /Users/andrew/Documents/src/gordon/gordon
scntool: failed to convert file with failure reason: *** -[__NSSingleObjectArrayI objectAtIndex:]: index 1 beyond bounds
scntool: Conversion failed, will simply copy input to output.
scntool: Copy failed file:///Users/andrew/Library/Developer/Xcode/DerivedData/gordon-hewludfnoywxcpegodbqhgocatbu/Build/Products/Debug-iphoneos/gordon.app/Models.scnassets/gordon/gordon-old.dae -> file:///Users/andrew/Library/Developer/Xcode/DerivedData/gordon-hewludfnoywxcpegodbqhgocatbu/Build/Products/Debug-iphoneos/gordon.app/Models.scnassets/gordon/gordon-old.dae error:Error Domain=NSCocoaErrorDomain Code=260 "The file “gordon-old.dae” couldn’t be opened because there is no such file." UserInfo={NSFilePath=/Users/andrew/Library/Developer/Xcode/DerivedData/gordon-hewludfnoywxcpegodbqhgocatbu/Build/Products/Debug-iphoneos/gordon.app/Models.scnassets/gordon/gordon-old.dae, NSUnderlyingError=0x7fd013e5c080 {Error Domain=NSPOSIXErrorDomain Code=2 "No such file or directory"}}
По сути, это действует так, как будто что-то не так с файлом gordon-old.dae .Когда я нажимаю на файл в XCode, он отображает предварительный просмотр модели, как и ожидалось.
Если я вручную конвертирую файл в scn с помощью " xcrun scntool --convert gordon-old.dae --format scn --output gordon-old.scn", Xcode снова правильно просматривает модель.В этом случае, однако, модель также правильно отображается в приложении, но в файле .scn присутствует только первая / основная геометрия.
Если я запускаю обычное преобразование dae, которое запускает Xcode, когдаон спрашивает вас, хотите ли вы сохранить исходный файл или нет, с помощью " xcrun scntool --convert gordon-old.dae --format dae --output gordon-new.dae ", сборка приложения иустановка снова работает нормально.При нажатии на gordon-new.dae в Xcode снова отображается хороший предварительный просмотр, и модель выглядит хорошо в приложении.
Однако в этом случае все геометрии, которые я использую для наложенияфигурам присваиваются имена, например «geometry114» вместо «mouthSmileLeft», которое я назвал.
И вот сумасшедшая вещь в том, что все остальные модели работают нормально, без запуска каких-либо команд из командной строки.
Любая помощь будет отличной!