首页
/ Unity FBX Exporter 使用指南

Unity FBX Exporter 使用指南

2026-02-06 04:04:59作者:胡易黎Nicole

项目介绍

Unity FBX Exporter 是一个开源工具,用于从 Unity 中导出网格、动画、骨骼蒙皮和混合形状数据到 FBX 或 OBJ 格式。该项目支持与主流 3D 建模软件的协同工作,特别适合将在 Unity 中编辑的模型数据导回到 DCC 工具中进行进一步处理。

快速开始

安装步骤

  1. 克隆项目仓库

    git clone https://gitcode.com/gh_mirrors/fb/FbxExporter.git
    
  2. 导入 Unity 项目

    • 打开 Unity 编辑器,创建新项目或打开现有项目
    • 将克隆的 FbxExporter 文件夹拖入 Unity 项目的 Assets 目录中
  3. 生成 Unity 包

    • 在 Unity 编辑器中,选择 Assets → Make FbxExporter.unitypackage
    • 这将生成一个完整的 unitypackage 文件,便于分发和使用

使用方式

  1. 打开导出窗口

    • 在 Unity 编辑器中,选择 Window → Fbx Exporter
    • 这将打开 FBX 导出工具窗口
  2. 配置导出选项

    • Format: 选择导出格式(FBX Binary 或 OBJ)
    • Scope: 选择导出范围(Selected 仅选中的对象,Entire Scene 整个场景)
    • Include Transform: 是否包含变换信息
    • Flip Handedness: 翻转坐标系手性
    • Quadify: 启用四边形化功能
    • Scale Factor: 缩放因子调整
  3. 执行导出

    • 选择要导出的游戏对象
    • 点击 Export 按钮,选择保存路径
    • 系统将开始异步导出过程

核心功能特性

支持的组件类型

  • MeshRenderer: 标准网格渲染器
  • SkinnedMeshRenderer: 骨骼蒙皮网格渲染器
  • Terrain: 地形组件
  • BlendShapes: 混合形状动画
  • Bone Weights: 骨骼权重数据

高级选项

  • 四边形化: 将三角面转换为四边形面片
  • 坐标系转换: 支持左右手坐标系转换
  • 异步导出: 非阻塞式导出,支持大场景
  • 多格式支持: 同时支持 FBX 和 OBJ 格式

代码示例

// 在脚本中直接使用 FBX Exporter
using UTJ.FbxExporter;

public class CustomExporter : MonoBehaviour
{
    public void ExportSelectedObject(GameObject target, string outputPath)
    {
        var options = FbxExporter.ExportOptions.defaultValue;
        options.transform = true;
        options.quadify = true;
        
        var exporter = new FbxExporter(options);
        exporter.CreateScene(target.name);
        exporter.AddNode(target);
        exporter.WriteAsync(outputPath, FbxExporter.Format.FbxBinary);
    }
}

最佳实践

性能优化建议

  • 在导出前确保网格设置为可读写(Read/Write Enabled)
  • 对于大型场景,建议分批次导出
  • 使用异步导出避免编辑器卡顿

兼容性说明

  • 支持 Unity 2017.1 及以上版本
  • Windows 和 Linux 平台支持
  • 需要从源码构建 Linux 版本

应用场景

游戏开发流水线

  • 将在 Unity 中调整的角色模型导回 Maya 或 3ds Max
  • 共享编辑好的动画数据到不同的 DCC 工具
  • 批量处理场景中的多个模型资源

建筑可视化

  • 导出在 Unity 中布置的建筑场景
  • 与 BIM 工作流程集成
  • 多软件协同渲染制作

通过 FBX Exporter,开发者可以轻松地在 Unity 和传统 3D 建模软件之间建立高效的数据交换通道,提升工作流程的灵活性。

登录后查看全文
热门项目推荐
相关项目推荐