我想通過python腳本在攪拌機中渲染和保存多個圖像。我知道如何通過Blender GUI渲染和保存圖像,但我想通過我的腳本完成,因爲我正在使用一組嵌套循環並需要保存多個圖像。我能夠渲染圖像,我猜想保存輸出成功的圖像。但我不知道它保存在哪裏,當我嘗試編輯文件路徑時,它會給我上下文錯誤的錯誤。通過Blender渲染和保存圖像python
18
A
回答
7
是這樣的:
import bpy
bpy.context.scene.render.filepath = 'pathToOutputImage'
bpy.context.scene.render.resolution_x = w #perhaps set resolution in code
bpy.context.scene.render.resolution_y = h
bpy.ops.render.render()
20
這裏就是我在Blender 2.63
所做的:
bpy.data.scenes['Scene'].render.filepath = '/home/user/Documents/image.jpg'
bpy.ops.render.render(write_still=True)
我在做什麼是創建一個VR全景(一系列它周圍的物體拍攝)。和我一起算法結束:
- 創建或加載你要採取的
- 規模它的鏡頭,並執行一些不錯的照明對象;檢查燈光與渲染場景(使用F12鍵)
- 創建
Empty
節點並設置它的位置和旋轉,以身份(位置:0, 0, 0
,旋轉:0, 0, 0
) - 設置相機欣賞到起始位置(再次檢查它與渲染)
- 運行腳本!
您將在/home/user/VR
目錄內以您的物體周圍的step_count
拍攝結束。
cam = bpy.data.objects['Camera']
origin = bpy.data.objects['Empty']
step_count = 32
for step in range(0, step_count):
origin.rotation_euler[2] = radians(step * (360.0/step_count))
bpy.data.scenes["Scene"].render.filepath = '/home/user/VR/vr_shot_%d.jpg' % step
bpy.ops.render.render(write_still=True)
+0
想知道爲什麼'write_still = True'非常重要,以至於沒有保存圖像就沒有保存。 – 2016-11-17 05:26:34
+1
@SibbsGambling我認爲這是因爲Blender還有一個選項來呈現預覽圖像(很像當你按下F12時)。所以實際上將渲染保存爲靜止圖像是有些可選的。 – 2016-11-18 03:45:37
沒有'write_still = True'作爲'render()'函數的參數blender在我的情況下沒有創建圖像。 – tobltobs 2015-11-18 21:06:07