如何从 Blender 导出多个带约束的动画? (glTF 2.0)

问题描述 投票:0回答:1

问题: 当导出到 glTF 以在 Godot 中使用时,仅正确导出 NLA 编辑器中的顶部动画轨道。所有其他动画均已损坏且未对齐。

misaligned animation

我的项目中有三个骨架:枪、左臂、右臂。手臂上有“约束之子”骨骼约束,将它们连接到枪上。

我已将所有动画推送到 NLA 轨道上。

NLA Project

我尝试过的事情:

  • 单独导出每个动画并稍后在 Godot 中组合它们。干净的动画在粘贴到不同的 AnimationPlayer 节点时会中断。

  • 烘焙动画。不完全确定正确的方法是什么,但我尝试过以多种方式进行烘焙,从对象和姿势模式,通过删除和维护约束,通过覆盖动作或不覆盖动作,它要么没有什么区别,要么延伸网格面目全非。

  • 更改导出设置。它们似乎都没有什么区别。 “使用当前帧”必须打开。

  • 应用变换。嗯,对网格应用变换不会造成任何损害,但不会发生任何变化。对骨骼应用变换会让它们飞到 3D 视图的每个角落。

  • 单击约束子修改器上的应用。当我这样做时,对象会失去所有动画。

  • 每帧手动设置关键帧。什么都不做。

  • 不使用 NLA 导出。

我怀疑子约束与所有东西的错位有关,特别是考虑到早期的项目没有使用这样的修改器,并且导出了大约 10 个独特的动画。我真正不明白的是为什么只有一个动画能够完美导出。

我感谢任何和所有的帮助! 项目链接(谷歌驱动器)

animation export blender godot gltf
1个回答
0
投票

我为迟到了三个月表示歉意,但是无论任何可能通过谷歌路过并看到此内容的人,我都会发布我的解决方案。

我的动画设置如下:

  • 左臂和右臂是由单个电枢控制的单独对象,武器(m1911手枪)是由单个电枢控制的单个对象。
  • 右手被赋予了手枪根骨的“Child Of”约束,而左手被约束到手枪的弹匣骨。
  • 我有一组枪电枢的动画,还有另一组武器电枢的动画。
  • 所有骨架和相应对象的比例均在动画制作之前应用。

我成功地将所有动画正确导出到 Unity,如下所示:

  • 在对象模式下选择手臂骨架,切换到姿势模式,选择所有骨骼,然后单击顶部的“姿势”。
  • 在“动画”下,单击“烘焙动作”。
  • 烘焙动作时,确保选中“仅选定的骨骼”和“视觉键控”,并且未选中“清除约束”/“清除父项”。其他两个复选框以及起始帧、结束帧和帧步长设置由您决定。烘焙数据设置为“姿势”。
  • 应用烘焙动作后,您会立即注意到动画不同步。单击具有“Child Of”约束的骨骼,然后通过将滑块一直拖动到左侧或单击旁边的 X 将其影响设置为零。这应该可以解决问题。

完成此操作后,尝试测试动画是否可以在没有父骨骼(其他骨骼曾经被“Child Of”约束)的情况下正常工作。

如果您有多个动作,则更改为要烘焙的下一组动作,将所有“Child of”约束的影响力设置回 1,然后重复上述烘焙动作的过程。

为了导出,我将每个骨架的每个动作作为单独的 NLA 条带(也就是说,在枪支装备上有一个射击动作条、一个重新加载动作条等,而在手臂装备上也有一个射击动作条)动作条、重新加载动作条等。)

然后我将 NLA 片段导出到 .FBX 中。当导入到 Unity 中时,这就像一个魅力。我有一些来自左/右臂对象的重复动画,但当我注意到它们统一时,我刚刚删除了它们。

希望这对某人有帮助。而且,如果您正在阅读本文,您很可能已经在 YouTube 上找到了此播放列表,但无论如何我都会发布它,因为它包含有用的导出建议以及一般 FPS 动画提示和技巧。 https://youtube.com/playlist?list=PLn8ROcXT8fZgjdv4w6FczF8ziXkavUxdu

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.