RealityKit-播放USDZ文件中的多个动画

本教程将介绍RealityKit-播放USDZ文件中的多个动画的处理方法,这篇教程是从别的地方看到的,然后加了一些国外程序员的疑问与解答,希望能对你有所帮助,好了,下面开始学习吧。

RealityKit-播放USDZ文件中的多个动画 教程 第1张

问题描述

是否有人找到了一种工作流程,可以为打包在USDZ文件中的骨架网格创建多个动画并使用RealityKit播放这些动画?

我有一个带有两个动画(空闲和运行)的骨架网格。我想将它们打包到单个USDZ文件中(如果有必要,甚至打包成多个USDZ文件),以便在RealityKit中使用。

我已经能够创建一个FBX用于导出我的骨架网格和动画,并将它们发送到Sketchfab以获得RealityKit可以理解的有效USDZ导出。我不知道怎么将第二个动画打包到单个USDZ文件中,然后使用SWIFT根据特定事件播放特定动画。

大约一年前,似乎有很多关于这个话题的帖子,但从那以后,没有真正的答案,也没有什么活动。如有任何提示,我们将不胜感激。

推荐答案

虽然在SceneKit中可以使用.dae模型播放多个动画,但在RealityKit2.0中,您仍然无法播放在任何.usdz模型中找到的多个动画。查看this post和this post。

现在只能使用以下代码访问一个动画:

let robot = try ModelEntity.load(named: "drummer")
let anchor = AnchorEntity()
anchor.children.append(robot)
arView.scene.anchors.append(anchor)

robot.playAnimation(robot.availableAnimations[0].repeat(duration: .infinity), 
 transitionDuration: 0.5, 
 startsPaused: false)

当您选择集合中的第二个或第三个元素(如果确实存在)时,您的应用程序崩溃:

modelWithMultipleAnimations.availableAnimations[1]
modelWithMultipleAnimations.availableAnimations[2]

好了关于RealityKit-播放USDZ文件中的多个动画的教程就到这里就结束了,希望趣模板源码网找到的这篇技术文章能帮助到大家,更多技术教程可以在站内搜索。