Blender 导入 FBX 文件时,“Use Pre/Post Rotation”

简单来说,这个选项决定了 Blender 是否应用 FBX 文件中存储的、用于轴向转换的额外旋转信息。

详细解释:

  1. 背景:坐标系差异

    • 不同的 3D 软件使用不同的坐标系。例如,Blender 默认使用 Z 轴向上的坐标系 (Z-up),而像 Maya 或 3ds Max 等软件通常使用 Y 轴向上的坐标系 (Y-up)。
    • 当模型从一个 Y-up 软件导出为 FBX,然后再导入到 Z-up 的 Blender 中时,如果不进行任何处理,模型的朝向就会是错误的(比如躺倒)。
  2. FBX 中的 Pre/Post Rotation

    • 为了解决这个问题,导出 FBX 时,源软件(比如 Maya)可以在文件中记录一个额外的旋转信息,通常是围绕 X 轴旋转 -90 度或 +90 度。这个旋转不是 模型本身动画或姿态的一部分,而是专门用来补偿坐标系差异的。
    • 这个补偿性的旋转可以被记录为"Pre-Rotation"(预旋转)或"Post-Rotation"(后旋转),表示它在对象自身变换(移动、旋转、缩放)之前或之后应用。
  3. Blender 的"Use Pre/Post Rotation"选项

    • 勾选(默认通常是勾选的): 当你勾选这个选项时,Blender 会读取并应用 FBX 文件中存储的这个预/后旋转信息。
      • 效果: 这通常能让从其他软件(尤其是 Y-up 软件)导出的模型在 Blender 中看起来方向正确,因为它自动补偿了坐标系的差异。
      • 注意: 应用了这个旋转后,即使模型看起来处于"默认"姿态,其在 Blender 中的旋转值可能不是 (0, 0, 0),因为它包含了这个补偿性的旋转。
    • 不勾选: 当你不勾选这个选项时,Blender 会忽略 FBX 文件中的预/后旋转信息。
      • 效果: 模型导入后可能方向不正确(例如,来自 Maya 的模型可能会向前倾倒 90 度)。它的旋转值将是 FBX 文件中记录的原始值,没有应用坐标系补偿。
      • 何时使用: 在某些特定工作流程中,或者当预/后旋转导致意外问题(虽然少见)时,你可能需要禁用它,然后手动调整模型的旋转(例如,选中模型,按 R X 90 Enter,然后应用旋转 Ctrl+A -> Rotation)来修正方向。
相关推荐
渲染101专业云渲染5 天前
Blender 云渲染高效流程:渲染 101 集群加速实战
服务器·分布式·blender·maya·houdini
fcm197 天前
blender 导入的fbx模型位置错乱
blender
阿拉丁的梦8 天前
【3D大比拼第一集】--max,maya,c4d,blender的命令搜索功能
blender·maya
BJ_bafangonline10 天前
如何更改Blender插件安装位置呢?
blender
小赖同学啊11 天前
将Blender、Three.js与Cesium集成构建物联网3D可视化系统
javascript·物联网·blender
远离UE413 天前
blender uv小技巧
blender·uv
在下胡三汉20 天前
3dmax一键烘焙很多张贴图合并成一张贴图插件支持fbx/obj/blender多材质模型合并为一张贴图
blender·材质·贴图
九河_23 天前
【blender】使用bpy对一个obj的不同mesh进行不同的材质贴图(涉及对bmesh的操作)
blender·材质·贴图·bpy
渲染101专业云渲染1 个月前
云端算力革命:川翔云电脑如何重新定义创作自由
云计算·电脑·blender·maya·houdini
3D虚拟工厂1 个月前
3D虚拟工厂
3d·vue3·blender·数字孪生·three.js