我们正在与ARKit 2+SceneKit,iOS 12合作一个项目。
我们能够用CAAnimation
文件检索.dae
实例并在运行时控制它们。
现在,我们正在尝试.usdz
,但是usdz无法从SCNSceneSource
中提取任何类:
let source = SCNSceneSource(url: url, options: options)
let animationIdentifiers = source?.identifiersOfEntries(withClass: CAAnimation.self)
animationIdentifiers
始终为空。此函数的文档中列出的所有类也一样https://developer.apple.com/documentation/scenekit/scnscenesource/1523656-identifiersofentries我们已经测试了我们自己的usdz产品以及来自https://fusionar.app的一些usdz产品。
很难,在iOS或Xcode中查看文件时,动画播放得很好,在这里我们可以访问动画和场景图设置:
但绝对不是从运行时的代码,所以我们无法控制动画。
你有过这个问题吗?
对此有什么见解吗?
最佳答案
从SCNSceneSource
检索条目仅适用于Collada文件。使用USDZ文件时,必须遍历节点层次结构,并使用-animationPlayerForKey:
从保存该文件的节点检索动画。
关于ios - 具有usdz文件的SCNSceneSource标识符为空,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53400057/