不夸张地说,这个问题的出错率,在我接触过的所有DCC到引擎工作流里能排前三。Blender里怎么看怎么对的模型,导出FBX拖进UE5,不是躺平就是扭转,尺寸要么缩成蚂蚁要么变成巨物。我最早从Blender 2.8时代开始折腾FBX导入UE5,前前后后踩过的坑能写满一页笔记,后来花了一个下午做了一堆带颜色标记的测试立方体,把两边的坐标行为彻底摸了一遍,才算真正搞明白这套匹配逻辑。这篇就围绕“Blender模型正常导入UE5 FBX轴向匹配”这件事,把从模型整理、导出参数、导入设置到排查问题的一整套流程完整拆开讲。适合所有用Blender做资产、再进UE5做项目的人,不管你是做静态网格、建筑块还是角色,这套思路都通用。
1. 为什么模型一到UE5就躺倒:坐标系统差异
1.1 Blender和UE5各自默认的坐标“性格”
先别急着记参数,理解两套软件的坐标系差异,后面所有设置都能顺理成章地对上号。
Blender默认是右手坐标系,Z轴朝上,X轴朝右,Y轴朝屏幕里。你在Blender里按小键盘1切到前视图(Front),看到的是模型的-Y面,这也是为什么很多人建模习惯把模型正面朝-Y方向放。
UE5不一样,它虽然也是Z轴朝上,但用的是左手坐标系,默认的前进方向是+X轴,Y轴朝右。也就是说,在UE5的世界里,你想让一个角色“面朝前方”,它的正脸应该对着+X。
FBX作为一个中间交换格式,内部默认以Y轴朝上为基准。这就产生了一个问题:Blender是Z-up,FBX内部是Y-up,UE5虽然是Z-up但前进方向是+X。如果不做任何处理,软件之间对怎么“翻译”轴向会有各自的默认理解,结果就是你看到的模型横躺、翻转或者朝向错乱。
1.2 FBX格式本身的“翻译规则”
FBX内部在描述坐标时,其实不是简单地存一个物体旋转,而是会附带一个坐标转换信息。Blender导出FBX时,如果你不勾选某些转换选项,FBX文件里只会写入Blender原始坐标数据。UE5导入时按自己的规则去解释这些数据,两边对不上,就出问题了。
我举个生活化的例子:你在纸上画了一个箭头朝上的图标,然后把纸寄给朋友,对方收到后默认把纸横过来看,箭头就变成朝右了。除非你在纸上明确标注“请把纸竖着看”,对方才会按正确方向理解。FBX里的轴向设置就是那个“竖着看”的标注。
所以问题的核心不是“Blender和UE5谁对谁错”,而是你导出的FBX有没有把“Blender的坐标约定”完整、明确地传达给UE5。只要这一步信息对齐了,后续就稳了。
1.3 我们最终要达成的目标状态
在做任何操作之前,先把目标定清楚。一个“正常导入”的模型,在UE5里应该满足这些条件:
- Z轴朝上,模型没有躺倒,没有翻转。
- 模型的“正面”朝向UE5的+X方向(也就是玩家默认前进方向)。
- 尺寸和Blender里一致,1米就是1米,不要突然变成100米。
- 模型的旋转值保持规整,不要进来带一个奇怪的 -90 或 180 旋转。
为了达成这个目标,社区里经过大量实践验证出一套通用参数组合:Blender里模型正面朝-Y,导出时Forward设为 -Y、Up设为 Z,勾选Apply Transform。这样导入UE5后,模型的-Y面(也就是你建模时正对前视图看到的面)会映射到UE5的+X方向,Z轴保持朝上,不需要在引擎里做任何额外旋转。
如果你在Blender里建模型时习惯从顶视图或者后视图开工,导致正面朝向不是-Y,那我的建议是先在Blender里把模型转过来,而不是去改导出参数。因为改参数容易让不同物体之间的朝向不统一,后面拼装场景时反而更混乱。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 导出前的模型整理:这一步偷懒,后面全是坑
2.1 为什么必须应用旋转和缩放
很多人的FBX导入问题,根源不在导出设置,而在Blender里的模型本身带有未应用的旋转或缩放值。
你在Blender里对模型做了缩放、旋转后,如果右下角属性面板里还显示着旋转90度、缩放2.5之类的数值,而没有按Ctrl+A把这些变换“烘焙”到模型本身数据里,导出FBX时,这些变换值就会一并写入FBX。UE5导入后可能单独把物体的旋转值算进去,或者在单位转换时把缩放也放
