Sceneform 1.15无法在ARCore-Android中播放fbx动画
我不熟悉Sceneform(1.15.0)和相关的3D文件格式,如fbx和glTF。我看到了关于如何运行动画的示例动画项目和文档 我在尝试什么? 运行场景窗体fbx资源中存在的动画。我有两项资产——a和a 这两个fbx资源都有一些动画。当我尝试将这些资产导入Android Studio时,它当前抛出了一个问题,我通过将sceneform资产添加到我的Sceneform 1.15无法在ARCore-Android中播放fbx动画,android,arcore,gltf,fbx,sceneform,Android,Arcore,Gltf,Fbx,Sceneform,我不熟悉Sceneform(1.15.0)和相关的3D文件格式,如fbx和glTF。我看到了关于如何运行动画的示例动画项目和文档 我在尝试什么? 运行场景窗体fbx资源中存在的动画。我有两项资产——a和a 这两个fbx资源都有一些动画。当我尝试将这些资产导入Android Studio时,它当前抛出了一个问题,我通过将sceneform资产添加到我的sampledata目录并将信息添加到app/gradle文件中,克服了这个问题。.sfa和.sfb文件已正确生成 sceneform.asset(
sampledata
目录并将信息添加到app/gradle
文件中,克服了这个问题。.sfa和.sfb文件已正确生成
sceneform.asset('sampledata/models/ka27.FBX',
'default',
'sampledata/models/ka27.sfa',
'src/main/res/raw/ka27')
但是现在如果我尝试运行动画,我可以在场景中看到直升机,但没有动画-
arFragment.getArSceneView().getScene().addChild(helicopterNode);
AnimationData animationData = helicopterRenderable.getAnimationData("ka27");
ModelAnimator helicopterAnimator = new ModelAnimator(animationData, helicopterRenderable);
helicopterAnimator.start();
我的问题-
getAnimationData
中,需要传递的参数是什么?我可以通过打开此资产找到此信息吗?
(我尝试将这些资产,包括sceneform的示例andy_dance
导入到Blender
和Unity
中,虽然我可以看到动画播放,但我确实无法在任何地方看到动画数据
名称属性。).fbx
到.glTF
转换的资产是否保留其动画李>
.glTF
动画.fbx
动画不起作用的应用程序示例说明-
如果打开
.sfa
,如果.fbx
文件包含任何动画,则会找到一个键动画。应该是这样的:
{
animations: [
{
clips: [
{
name: 'Animation 001',
runtime_name: 'animation_1',
},
],
path: 'sampledata/models/ka27.fbx',
},
],
...
}
getAnimationData
需要runtime\u name
的值,因此需要修改以下行:
AnimationData AnimationData=helicopterRenderable.getAnimationData(“ka27”);
使用我的.sfa
文件,此行将变为:
AnimationData AnimationData=helicopterRenderable.getAnimationData(“animation_1”);
您可以注意到getAnimationData
还可以将.sfa
文件的数组animations
中的动画索引作为参数。所以你可以写:
AnimationData AnimationData=helicopterRenderable.getAnimationData(0);
ModelRenderable
的文档可用