命令行渲染

某些情况下我们想要提高渲染速度、远程访问 Blender 进行渲染或通过命令行编写脚本。

使用命令行的一个好处就是我们并不需要图形界面进行显示(比如不需要 Linux 的 X server),因此可以通过远程 shell 进行渲染(典型的比如 SSH)。

  • 详见命令行参数以查阅完整参数列表(例如指定渲染的场景、结束帧等),或直接运行以下命令:

  • 详见命令行启动在 Blender 通过命令行启动时指定参数。

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" 渲染引擎。执行 blender -E help 查看可用渲染引擎列表。

-s 10 -e 500

将起始帧设为 10 结束帧设为 500

-t 2

仅使用两个线程。

Cycles

除了适用于所有渲染引擎的上述选项之外,Cycles 还有其他选项来进一步控制其行为。

blender -b file.blend -f 20 -- --cycles-device CPU

Note

与通用选项不同,Cycles 专用选项必须放在命令行的末尾,在双破折号之后。

--cycles-device CPU

覆盖用于渲染帧的设备。目前支持的选项有 CPUCUDAOPTIXHIPONEAPIMETAL 。此外,您还可以在任何 GPU 类型后添加 +CPU 以进行混合渲染。

--cycles-print-stats

在控制台显示 Cycles 渲染的内存和时间使用情况的详细统计数据。