命令行渲染
某些情况下我们想要提高渲染速度、远程访问Blender进行渲染或通过命令行编写脚本。
使用命令行的一个好处就是我们并不需要图形界面进行显示(比如不需要Linux的X server),因此可以通过远程shell进行渲染(典型的比如SSH)。
blender --help
Note
参数会按照给出的顺序依次执行!
以下命令不会生效,因为输出和拓展参数被设定于Blender已经被指派进行渲染之后:
blender -b file.blend -a -x 1 -o //render
以下命令将按预期执行:
blender -b file.blend -x 1 -o //render -a
始终 将 -f
或 -a
放在最后一个参数的位置上。
单张图像
blender -b file.blend -f 10
-b
后台渲染(没有用户界面)。
file.blend
用于渲染的blend文件路径。
-f 10
只渲染第10帧。
blender -b file.blend -o /project/renders/frame_##### -F OPEN_EXR -f -2
-o /project/renders/frame_#####
保存渲染图像的路径,使用五个0补位用于帧计数。
-F OPEN_EXR
覆盖blend文件中指明的图像保存格式,并保存为一张OpenEXR图像。
-f -2
仅渲染倒数第二帧。
Warning
参数对大小写敏感! -F
和 -f
是不同的。
动画
blender -b file.blend -a
-a
使用blend文件中保存的设置渲染整个动画。
blender -b file.blend -E CYCLES -s 10 -e 500 -t 2 -a
-E CYCLES
使用 "Cycles Render"渲染引擎。执行
blender -E help
查看可用渲染引擎列表。-s 10 -e 500
将起始帧设为
10
结束帧设为500
。-t 2
仅使用两个线程。
Cycles
除了适用于所有渲染引擎的上述选项之外, Cycles还有其他选项来进一步控制其行为。
blender -b file.blend -f 20 -- --cycles-device CPU
Note
与通用选项不同,特定于循环的选项必须在命令行的末尾传递,然后是双短划线。
--cycles-device CPU
Override the device that is used to render frames. Currently supported options are
CPU
,CUDA
,OPTIX
,HIP
,ONEAPI
, andMETAL
. Additionally, you can append+CPU
to any GPU type for hybrid rendering.--cycles-print-stats
在控制台上显示有关周期渲染的内存和时间使用情况的详细统计信息。