gpt4 book ai didi

java - LibGDX - 未知的动画错误

转载 作者:行者123 更新时间:2023-11-30 04:00:53 25 4
gpt4 key购买 nike

我正在 libgdx 上开发一个应用程序,并尝试播放我在 Blender 上创建的动画,但我仍然收到未知的动画错误。我的 create 方法中有以下代码:

model = modelLoader.loadModel(Gdx.files.getFileHandle("i1.g3db", FileType.Internal));
modelInstance = new ModelInstance(model);
modelInstance.transform.rotate(1, 0, 0, -90);
modelInstance.transform.translate(0, 0, -2);
controller = new AnimationController(modelInstance);
controller.setAnimation("moveHand",1);

这在我的渲染方法中:

camera.update();
camController.update();
controller.update(Gdx.graphics.getDeltaTime());
modelBatch.begin(camera);
modelBatch.render(modelInstance, environment);
modelBatch.end();

我试图删掉与问题无关的部分。这是 Blender 中的摄影表的图片,它显示我已经正确命名了我的动画:

enter image description here任何人都知道可能是什么问题,因为我已经被困在这个问题上很长一段时间了,谢谢!如果有人想打开它们,我将动画文件(.g3db、.blender)上传到这里:

https://www.dropbox.com/s/xyx74tx5mbyj9i3/i1.zip

最佳答案

一般注意事项:避免在动画名称中使用大写字母(和空格等)。另请检查https://github.com/libgdx/libgdx/wiki/3D-animations-and-skinning有关动画的更多信息和 https://github.com/libgdx/libgdx/wiki/Importing-Blender-models-in-LibGDX有关在 LibGDX 中使用 Blender 模型的信息。

使用fbx-conv-o G3DJ命令行选项将文件转换为.g3dj,例如fbx-conv -f -o G3DJ i1.fbx (其中 -f 用于翻转纹理坐标)。确保更新您的代码以使用此 G3DJ 文件而不是以前的 G3DB 文件。接下来使用文本编辑器(例如记事本或 ide/eclipse 的文本编辑器)打开生成的 .g3dj 文件。该文件应该易于阅读(有关如何阅读的更多信息,请参阅 http://blog.xoppa.com/behind-the-3d-scenes-part1/)并包含名为 animations 的部分(json 键)。

如果文件中没有动画,则其内容应类似于文件底部的 "animations": [] 。在这种情况下,请确保选中在 blender 中导出动画。另请参阅:https://github.com/libgdx/libgdx/wiki/Importing-Blender-models-in-LibGDX .

如果文件中有动画,它们会包含在数组内(在 "animations": [] 之间)。请注意,动画可能会占用大量空间,因此实际的行 "animations": [ 可能位于文件中间的某个位置。在这种情况下,请确保动画的名称 (id) 与用于指定动画的字符串完全匹配。

如果动画包含在文件中并且字符串匹配,则枚举模型/模型实例内的所有动画以确保它们正确加载:

for (Animation anim : modelInstance.animations)
Gdx.app.log("Animation", anim.id);

如果动画未包含在 ModelInstance 中,请将此代码段中的 modelInstance 替换为 model,以确保它包含在模型中。如果它也不包含在模型中,请确保刷新/清理您的工作区。

关于java - LibGDX - 未知的动画错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21993572/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com