如何将Unity3d预制文件批量导出为FBX格式?

问题描述

我有Unity3d项目,在assests文件夹中有1000个预制文件。我想将它们转换为fbix格式或meshobj格式。有没有可以将预制件批量转换为fbix的程序?

解决方法

我发现的解决方案有点冗长。我需要将预制文件转换为fbx格式,然后使用Blender将fbx文件转换为wavefrontObj。 要将预制文件转换为fbx文件格式,我使用了一个名为FBX Exporter的Unity软件包。我遵循的安装指南来自here

将文件转换为fbx格式后,我使用了Blender将文件转换为obj格式。我只需要网格文件,因此不包括材料。要将fbx文件批量转换为wavefrontObj文件,我编写了以下脚本。

import bpy
import glob

fbx_file_folder = "input_folder/*.fbx"

mylist = [f for f in glob.glob(fbx_file_folder)]

for input_file in mylist:
    output_file = input_file.split(".")[0]
    output_file  = output_file + ".obj"
    print(output_file)
    bpy.ops.wm.read_factory_settings(use_empty=True)
    bpy.ops.import_scene.fbx(filepath=input_file)
    bpy.ops.export_scene.obj(filepath=output_file,use_materials=False,check_existing=True)

要运行脚本,请将文件另存为convertFBXtoOBJ.py,并在安装Blender后在终端中运行以下命令。

blender --python convertFBXtoOBJ.py

要获取有关我已用于脚本的API的信息,Blender PyDocs将有很大帮助。