Blender的FBX模型导出到Unity的规范
有机紫菜
编辑于 2024年12月04日 23:12

导出Fbx到Unity时候你会遇到如下问题.

Unity 中的对象面向后方。 对象的变换有奇怪的旋转值,例如 X 轴上的 -90,Y 轴或 Z 轴上的 180 或 -180。 对象要么太大,要么太小,变换缩放值不统一(100, 100, 100)。

如何轻松地将模型(包括静态和绑定骨骼的)以正确的方式导出到 Unity,它们将面向正确的向前方向(或者你在 Blender 中指定的任何方向),所有变换值都完美,并且在通过代码操作它们的变换值时不会有任何意外行为。

  • 如何导出正确的FBX最简单.使用插件Better FBX Importer & Exporter

  • 一劳永逸,自己修改导出配置并保存预设.操作多一些,但是支持批量导出.

关于轴向

✅Blender 和 Unity 在它们的 FORWARD 和 UP 方向上使用不同的轴。

✅Unity 使用:+Z 作为 FORWARD 轴 +Y 作为 UP 轴 

✅Blender 使用:+/-Y 作为 FORWARD 轴 +Z 作为 UP 轴

静态物体导出设置.

✅可以添加一个导出预设.方便快捷

✅注意.轴向设置为.前进轴为:-Y向前.向上轴为:Z向上.

✅修复缩放:把应用缩放设置为FBX全部(FbxALL)就好了.导出都是(1,1,1)

✅注意应用变换使用空间变换要取消掉

注意.导出时候先应用掉物体的全部变化,旋转,位置,缩放

应用变换:如果网格是绑定骨骼的或动画的,这个选项将会破坏它们,并且不明显.可能会得到错误的结果,比如物体的移动和旋转不符合预期。

使用空间变换:取消勾选,如果勾选会导致你的物体导入到Unity中后,带有一个旋转值.这不是我们想要的结果.

最后在Unity的导入设置中.勾选BakeAxis Conversion,会让一切都正确.


带骨骼的物体导出设置---和静态物体一样.勾选骨架就好了.

✅并且在Unity内,选中BakeAxis Conversion

题外话.

我这边一般使用Better FBX Importer & Exporter直接导出到Unity.

Unity中也无需再设置其他,一切正确.

当需要使用批量导出时候.直接使用该文章所设置的预设也可以.

批量导出插件在Github上面:Blender-Super-Batch-Export