簡體   English   中英

Blender腳本-導入Collada文件並將其另存為.blend

[英]Blender Scripting - Import Collada file and save it as .blend

現在,我在python中有一個腳本,可將collada(.dae)文件轉換為Blender文件(.blend)。

在命令行中:

C:\Program Files\Blender Foundation\Blender>blender.exe --background --python c:\Users\c.diaz\Desktop\convert_collada_to_blend.py -- c:\Users\c.diaz\Desktop
\Maya.dae -- c:\Users\c.diaz\Desktop\Result.blend

我的劇本:

import bpy
import sys

argv = sys.argv
argv = argv[argv.index("--") + 1:] # get all args after "--"

dae_in = argv[0]
blend_out = argv[1]

bpy.ops.wm.collada_import(filepath=dae_in)
bpy.ops.render.render()
bpy.ops.wm.save_mainfile(filepath=blend_out)

執行完命令后,我得到很多輸出,表明它實際上在做某事。 但是,在過程結束時,我不知道結果文件保存在哪里。

大家的幫助,我們將不勝感激。

輸入命令時,在當前目錄中,在temp目錄中,或者可能與blender.exe相同的目錄中,找到一個名為--的文件。

臨時目錄的位置可能有所不同,請嘗試

import tempfile
print(tempfile.gettempdir())

您可以使用argv = argv[argv.index("--") + 1:]來獲得第一個'-'之后的args,其中第一個'-'在您期望使用的兩條路徑之間包括多余的'-'。 第二個是您要分配給blend_out

我希望您要使用的命令是

C:\Program Files\Blender Foundation\Blender\blender.exe --background
--python c:\Users\c.diaz\Desktop\convert_collada_to_blend.py
-- c:\Users\c.diaz\Desktop\Maya.dae c:\Users\c.diaz\Desktop\Result.blend

還要注意的是您對bpy.ops.render.render() ,這不會保存渲染的圖像(假設您已經設置了攝像頭)。 使用bpy.ops.render.render(write_still=True)將渲染的圖像保存到磁盤。 您可能還需要設置bpy.context.scene.render.filepath來指定保存圖像的位置。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM