SceneKit:使用 dae 动画更新 SCNGeometry

Posted

技术标签:

【中文标题】SceneKit:使用 dae 动画更新 SCNGeometry【英文标题】:SceneKit : update SCNGeometry with dae animation 【发布时间】:2015-06-15 02:36:39 【问题描述】:

我决定将 SceneKit 用于一个很棒的 ios 项目。 但是我发现了一个大问题。

在我的应用程序中,我加载了一些动画 .dae。 它显示得很好。但是在动画期间,节点的 SCNGeometry 不会更新。 我试图检查presentationNode,但还是一样。 如何获得几何的更新值?像矢量。

【问题讨论】:

你要制作什么动画? 另外,这个问题看起来与your previous question非常相似 不完全是因为现在动画在 dae 文件中。 好的。动画在做什么? (另外,一些关于如何从 .dae 文件中获取动画以及如何应用它的代码可能会有所帮助) 我加载我的场景:SCNScene *scene = [SCNScene sceneNamed:@"attack.dae"];动画在 dae 文件中。 【参考方案1】:

这就是我可以做到的:

SCNNode * mainNode = [[SCNNode alloc]init];
SCNScene * scene = [SCNScene sceneNamed:sceneNamed inDirectory:some/path/where/you/have/it options:nil];

for (SCNNode * node in [scene.rootNode childNodes]) 
    [mainNode addChildNode: node];

如果您的 DAE 文件包含动画,它应该可以在大多数情况下工作。

【讨论】:

以上是关于SceneKit:使用 dae 动画更新 SCNGeometry的主要内容,如果未能解决你的问题,请参考以下文章

SceneKit - 如何获取 .dae 模型的动画?

SceneKit - 具有 DAE 文件格式的动画

使用 SceneKit 从 DAE/COLLADA 中提取动画顶点

从 Collada (.dae) 文件(在 Maya 中创建)导入的 SceneKit 键控混合形状动画未播放

SceneKit DAE 动画未出现在属性中

如何将复杂的 .dae 模型导入到 SceneKit?