Blender腳本開發(fā)
Blender是一款開源的模型編輯工具,能夠支持腳本語言的開發(fā),對于批量的模型處理,借助腳本,能夠減少手工的操作。
Blender的腳本使用python語言進(jìn)行開發(fā),使用python的API,同時能夠調(diào)用Blender的API。
Blender的API地址:
https://docs.blender.org/api/2.80/
在Blender中使用腳本的步驟,先切換到腳本編輯界面:

中間空白區(qū)域,就是python腳本的編寫位置,點(diǎn)擊“模版”,可以查看一些提前預(yù)置的腳本。

以打開文件的模版為例,打開后,直接點(diǎn)擊右側(cè)“運(yùn)行腳本”,可以看到打開了選擇文件的窗口。

使用Blender的API,都需要import bpy,才能對模型文件進(jìn)行操作。
一個簡單的根據(jù)文件夾,選擇其中的.dae格式模型,導(dǎo)出成.glb模型格式代碼:
import? os
import bpy
#定義刪除場景中的模型文件,實(shí)現(xiàn)導(dǎo)入一個刪除一個
def remove_file():
? ? objs = bpy.data.objects
? ? for (k,v) in? objs.items():
? ? ? ? bpy.data.objects.remove(v)
data_path ="輸入路徑"
out_path="輸出路徑"
file_list = os.listdir(data_path)
remove_file()
#遍歷其中的dae模型
dae_list = [item for item in file_list if item.endswith('.dae')]
for item in dae_list:
? ?dae_path =? os.path.join(data_path, item)
???#dae模型導(dǎo)入
? ?bpy.ops.wm.collada_import(filepath=dae_path)
? ?#glb模型導(dǎo)出
? out_dae_path = os.path.join(out_path, item.replace(".dae",'.glb'))
?bpy.ops.export_scene.gltf(export_format='GLB',filepath=out_dae_path)
? ?remove_file()
以上python語言格式顯示不正常,請根據(jù)編輯器進(jìn)行調(diào)整。
對于一些Blender的操作,在使用時,編輯器的左下方會顯示對應(yīng)的命令提示,可以直觀了解一下API的使用。
