使用Blender批量匯出 轉換模型

2021-09-07 11:28:34 字數 1862 閱讀 6607

2.4版本號的blender api和2.5以上版本號的api有非常大的不同,這裡僅僅是提供了思路和2.4版本號的匯出方案。

先提供乙個指令碼,這個是由blender呼叫的。用於轉換ogre的mes**件的指令碼

import blender

import bpy

import sys

import os,glob

import importtl,export_fbx

def importmesh(file):

print file;

scn = bpy.data.scenes.active

#scene.unlink(scn);

importtl.importogre(file);

output = file.replace(".mesh", ".fbx");

output = output.replace(".mesh", ".fbx");

export_fbx.fbx_default_setting();

export_fbx.fbx_write(output);

return true;

importmesh(sys.ar**[5].replace("--", ""))

第二個指令碼是我們在windows命令列下呼叫的,用於啟動blender來進行轉換的

import glob,sys,os

dummy_blend = r"e:\myproj\unity3d\arpg36\arpg\tool\auto_convert_mesh\dummy.blend"

convert_script = r"e:\myproj\unity3d\arpg36\arpg\tool\auto_convert_mesh\convert_mesh.py"

def convert_path(path):

for root, dirs, files in os.walk(path):

for dir in dirs:

strdir = os.path.join(root, dir);

#print(strdir);

for file in files:

file = file.lower();

strfile = os.path.join(root, file);

#print(strfile);

if strfile.find(".mesh") != -1:

os.system("blender -b -p --".format(dummy_blend, convert_script, strfile));

for root, dirs, files in os.walk(path):

for file in files:

file = file.lower();

if file.find(".mesh") != -1 or file.find(".skeleton") != -1 or file.find(".xml") != -1 or file.find(".material") != -1 or file.find(".animation") != -1 or file.find(".adm") != -1:

strfile = os.path.join(root, file);

os.remove(strfile);

convert_path(r"e:\myproj\unity3d\arpg36\arpg\assets\model\media\level");

此指令碼遍歷目錄下的全部.mes**件。然後進行轉換。

最核心的內容就一樣** "blender -b 專案檔案 -p 指令碼檔案 --引數"

blender 批量單獨匯出模型

import bpy import re import os 匯出路徑 只選中模型 bpy.ops.object select by type extend false type mesh 獲取選中的模型 ls bpy.context.selected objects for i in ls pri...

批量匯出Excel

控制層 獲取 資料 list orglist statisticalmanageservice.findjxmons params 新建 物件 excelobject s new excelobject 設定檔案路徑 s.setefilepath path 設定檔名稱 string fname 專案...

使用mysqldump批量匯出建表語句

備份mysql資料很方便,用mysql administrator這種視覺化工具做就可以了.但是這樣會帶有具體的資料,找了一下,沒發現不帶資料的option.用mysql querybrowser可以得到具體一張表的建表語句,但是表多了就得一張一張弄.很麻煩.如果想偷懶一點,就只能命令列用mysql...