Ios 使用`named:`
我使用下面的代码在scenekit中渲染场景,当dae文件从Ios 使用`named:`,ios,swift,xcode,scenekit,Ios,Swift,Xcode,Scenekit,我使用下面的代码在scenekit中渲染场景,当dae文件从art.scnassets文件夹加载时,它可以完美地工作 let scene = SCNScene(named: "art.scnassets/idle.dae") 然而,我想下载资产并应用它,我得到了一个错误 let documentsURL = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first! let scene = SCNS
art.scnassets
文件夹加载时,它可以完美地工作
let scene = SCNScene(named: "art.scnassets/idle.dae")
然而,我想下载资产并应用它,我得到了一个错误
let documentsURL = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first!
let scene = SCNScene(named: documentsURL.absoluteString+"idle.dae")
文件夹中存在名为idle.dae
的文件
我得到错误:致命错误:在展开可选值时意外发现nil
如何加载下载的资产并动态应用?我做错了什么?有什么建议吗?我是iOS编程的新手 除非iOS 11发生了更改,否则您将无法在iOS上的运行时下载并实例化DAE文件。它们在构建时使用名为
scntool
的实用程序进行压缩/编译
您可以改用模型I/O支持的一种文件格式吗?请参阅原始列表(Alembic.abc、Polygon.ply Triangles.stl、WaveFront.obj),并快速讨论Pixar的USD(通用场景描述)
如果您一直使用DAE文件,Frederik Jacques有一篇文章概述了他对DAE处理管道进行反向工程的经验。他的技术允许下载已从服务器上的DAE文件处理的SCN文件。
另请参见(带有权威来源的评论)和。我可以转到scn。我可以实时下载并应用scn资产吗?如果您遵循Frederik Jacques的管道,您可以实时下载并使用.scn文件。您需要在Mac上运行
scntool
,才能将每个.DAE文件转换为.SCN格式。使用支持I/O模式的格式或Pixar USD会更简单。如果您在这方面有任何swift资源,请将它们放在此处:)谢谢有人添加和删除了答案。。如果您能留下答案,我将不胜感激。您留下了处理和维护资产的最佳实践代码。