Command Line Arguments
Blender 4.1
Usage: blender [args ...] [file] [args ...]
Render Options
-b
, --background
Run in background (often used for UI-less rendering).
-a
, --render-anim
Render frames from start to end (inclusive).
-S
, --scene
<name>
Set the active scene <name>
for rendering.
-f
, --render-frame
<frame>
Render frame <frame>
and save it.
+<frame>
start frame relative,-<frame>
end frame relative.A comma separated list of frames can also be used (no spaces).
A range of frames can be expressed using
..
separator between the first and last frames (inclusive).
-s
, --frame-start
<frame>
Set start to frame <frame>
, supports +/- for relative frames too.
-e
, --frame-end
<frame>
Set end to frame <frame>
, supports +/- for relative frames too.
-j
, --frame-jump
<frames>
Set number of frames to step forward after each rendered frame.
-o
, --render-output
<path>
Set the render path and file name. Use //
at the start of the path to render relative to the blend-file.
The #
characters are replaced by the frame number, and used to define zero padding.
animation_##_test.png
becomesanimation_01_test.png
test-######.png
becomestest-000001.png
When the filename does not contain #
, The suffix ####
is added to the filename.
The frame number will be added at the end of the filename, eg:
blender -b animation.blend -o //render_ -F PNG -x 1 -a
//render_
becomes //render_####
, writing frames as //render_0001.png
-E
, --engine
<engine>
Specify the render engine. Use -E help
to list available engines.
-t
, --threads
<threads>
Use amount of <threads>
for rendering and other operations [1-1024], 0 for systems processor count.
Cycles Render Options
Cycles add-on options must be specified following a double dash.
--cycles-device
<device>
Set the device used for rendering. Valid options are: CPU
CUDA
OPTIX
HIP
ONEAPI
METAL
.
Append +CPU to a GPU device to render on both CPU and GPU.
Example:
blender -b file.blend -f 20 -- --cycles-device OPTIX
--cycles-print-stats
Log statistics about render memory and time usage.
Format Options
-F
, --render-format
<format>
Set the render format. Valid options are: TGA
RAWTGA
JPEG
IRIS
AVIRAW
AVIJPEG
PNG
BMP
HDR
TIFF
.
Formats that can be compiled into Blender, not available on all systems: OPEN_EXR
OPEN_EXR_MULTILAYER
FFMPEG
CINEON
DPX
JP2
WEBP
.
-x
, --use-extension
<bool>
Set option to add the file extension to the end of the file.
Animation Playback Options
-a
<options>
<file(s)>
Instead of showing Blender’s user interface, this runs Blender as an animation player, to view movies and image sequences rendered in Blender (ignored if -b
is set).
Playback Arguments:
-p
<sx>
<sy>
Open with lower left corner at
<sx>
,<sy>
.-m
Read from disk (Do not buffer).
-f
<fps>
<fps_base>
Specify FPS to start with.
-j
<frame>
Set frame step to
<frame>
.-s
<frame>
Play from
<frame>
.-e
<frame>
Play until
<frame>
.-c
<cache_memory>
Amount of memory in megabytes to allow for caching images during playback. Zero disables (clamping to a fixed number of frames instead).
Window Options
-w
, --window-border
Force opening with borders.
-W
, --window-fullscreen
Force opening in full-screen mode.
-p
, --window-geometry
<sx>
<sy>
<w>
<h>
Open with lower left corner at <sx>
, <sy>
and width and height as <w>
, <h>
.
-M
, --window-maximized
Force opening maximized.
-con
, --start-console
Start with the console window open (ignored if -b
is set), (Windows only).
--no-native-pixels
Do not use native pixel size, for high resolution displays (MacBook Retina
).
--no-window-focus
Open behind other windows and without taking focus.
Python Options
-y
, --enable-autoexec
Enable automatic Python script execution.
-Y
, --disable-autoexec
Disable automatic Python script execution (Python-drivers & startup scripts), (default).
-P
, --python
<filepath>
Run the given Python script file.
--python-text
<name>
Run the given Python script text block.
--python-expr
<expression>
Run the given expression as a Python script.
--python-console
Run Blender with an interactive console.
--python-exit-code
<code>
Set the exit-code in [0..255] to exit if a Python exception is raised (only for scripts executed from the command line), zero disables.
--python-use-system-env
Allow Python to use system environment variables such as PYTHONPATH
and the user site-packages directory.
--addons
<addon(s)>
Comma separated list (no spaces) of add-ons to enable in addition to any default add-ons.
Logging Options
--log
<match>
Enable logging categories, taking a single comma separated argument. Multiple categories can be matched using a .*
suffix, so --log "wm.*"
logs every kind of window-manager message. Sub-string can be matched using a *
prefix and suffix, so --log "*undo*"
logs every kind of undo-related message. Use “^” prefix to ignore, so --log "*,^wm.operator.*"
logs all except for wm.operators.*
Use “*” to log everything.
--log-level
<level>
Set the logging verbosity level (higher for more details) defaults to 1, use -1 to log all levels.
--log-show-basename
Only show file name in output (not the leading path).
--log-show-backtrace
Show a back trace for each log message (debug builds only).
--log-show-timestamp
Show a timestamp for each log message in seconds since start.
--log-file
<filepath>
Set a file to output the log to.
Debug Options
-d
, --debug
Turn debugging on.
Enables memory error detection
Disables mouse grab (to interact with a debugger in some cases)
Keeps Python’s
sys.stdin
rather than setting it to None
--debug-value
<value>
Set debug value of <value>
on startup.
--debug-events
Enable debug messages for the event system.
--debug-ffmpeg
Enable debug messages from FFmpeg library.
--debug-handlers
Enable debug messages for event handling.
--debug-libmv
Enable debug messages from libmv library.
--debug-cycles
Enable debug messages from Cycles.
--debug-memory
Enable fully guarded memory allocation and debugging.
--debug-jobs
Enable time profiling for background jobs.
--debug-python
Enable debug messages for Python.
--debug-depsgraph
Enable all debug messages from dependency graph.
--debug-depsgraph-eval
Enable debug messages from dependency graph related on evaluation.
--debug-depsgraph-build
Enable debug messages from dependency graph related on graph construction.
--debug-depsgraph-tag
Enable debug messages from dependency graph related on tagging.
--debug-depsgraph-no-threads
Switch dependency graph to a single threaded evaluation.
--debug-depsgraph-time
Enable debug messages from dependency graph related on timing.
--debug-depsgraph-pretty
Enable colors for dependency graph debug messages.
--debug-depsgraph-uid
Verify validness of session-wide identifiers assigned to ID data-blocks.
--debug-ghost
Enable debug messages for Ghost (Linux only).
--debug-wintab
Enable debug messages for Wintab.
--debug-gpu
Enable GPU debug context and information for OpenGL 4.3+.
--debug-gpu-force-workarounds
Enable workarounds for typical GPU issues and disable all GPU extensions.
--debug-gpu-compile-shaders
Compile all statically defined shaders to test platform compatibility.
--debug-gpu-renderdoc
Enable Renderdoc integration for GPU frame grabbing and debugging.
--debug-wm
Enable debug messages for the window manager, shows all operators in search, shows keymap errors.
--debug-xr
Enable debug messages for virtual reality contexts. Enables the OpenXR API validation layer, (OpenXR) debug messages and general information prints.
--debug-xr-time
Enable debug messages for virtual reality frame rendering times.
--debug-all
Enable all debug messages.
--debug-io
Enable debug messages for I/O (Collada, …).
--debug-fpe
Enable floating-point exceptions.
--debug-exit-on-error
Immediately exit when internal errors are detected.
--debug-freestyle
Enable debug messages for Freestyle.
--disable-crash-handler
Disable the crash handler.
--disable-abort-handler
Disable the abort handler.
--verbose
<verbose>
Set the logging verbosity level for debug messages that support it.
GPU Options
--gpu-backend
Force to use a specific GPU backend. Valid options: vulkan
(experimental), metal
, opengl
.
Misc Options
--open-last
Open the most recently opened blend file, instead of the default startup file.
--app-template
<template>
Set the application template (matching the directory name), use default
for none.
--factory-startup
Skip reading the startup.blend
in the users home directory.
--enable-event-simulate
Enable event simulation testing feature bpy.types.Window.event_simulate
.
--env-system-datafiles
Set the BLENDER_SYSTEM_DATAFILES
environment variable.
--env-system-scripts
Set the BLENDER_SYSTEM_SCRIPTS
environment variable.
--env-system-python
Set the BLENDER_SYSTEM_PYTHON
environment variable.
-noaudio
Force sound system to None.
-setaudio
Force sound system to a specific device. None
SDL
OpenAL
CoreAudio
JACK
PulseAudio
WASAPI
.
-h
, --help
Print this help text and exit.
/?
Print this help text and exit (Windows only).
-r
, --register
Register blend-file extension for current user, then exit (Windows only).
--register-allusers
Register blend-file extension for all users, then exit (Windows only).
--unregister
Unregister blend-file extension for current user, then exit (Windows only).
--unregister-allusers
Unregister blend-file extension for all users, then exit (Windows only).
-v
, --version
Print Blender version and exit.
--
End option processing, following arguments passed unchanged. Access via Python’s sys.argv
.
Argument Parsing
Arguments must be separated by white space, eg:
blender -ba test.blend
…will exit since -ba
is an unknown argument.
Argument Order
Arguments are executed in the order they are given. eg:
blender --background test.blend --render-frame 1 --render-output "/tmp"
…will not render to /tmp
because --render-frame 1
renders before the output path is set.
blender --background --render-output /tmp test.blend --render-frame 1
…will not render to /tmp
because loading the blend-file overwrites the render output that was set.
blender --background test.blend --render-output /tmp --render-frame 1
…works as expected.
Environment Variables
BLENDER_USER_RESOURCES:
Top level directory for user files. (other BLENDER_USER_*
variables override when set).
BLENDER_USER_CONFIG:
Directory for user configuration files.
BLENDER_USER_SCRIPTS:
Directory for user scripts.
BLENDER_USER_DATAFILES:
Directory for user data files (icons, translations, ..).
BLENDER_SYSTEM_RESOURCES:
Top level directory for system files. (other BLENDER_SYSTEM_*
variables override when set).
BLENDER_SYSTEM_SCRIPTS:
Directory for system wide scripts.
BLENDER_SYSTEM_DATAFILES:
Directory for system wide data files.
BLENDER_SYSTEM_PYTHON:
Directory for system Python libraries.
OCIO:
Path to override the OpenColorIO configuration file.
TEMP:
Store temporary files here (MS-Windows).
TMPDIR:
Store temporary files here (UNIX Systems). The path must reference an existing directory or it will be ignored.