blender1
A full-featured 3d application
Usage
blender [args ...]
[file]
[args ...]
Overview
blender is a full-featured 3D application. It supports the entirety of the 3D pipeline - modeling, rigging, animation, simulation, rendering, compositing, motion tracking, and video editing.
Use Blender to create 3D images and animations, films and commercials, content for games, architectural and industrial visualizations, and scientific visualizations.
https://www.blender.org
Options
Usage: blender [args ...] [file] [args ...]
Render Options:
-
-b or --background -
Run in background (often used for UI-less rendering).
-
The audio device is disabled in background-mode by default
and can be re-enabled by passing in '-setaudio Default' afterwards.
-
-a or --render-anim -
Render frames from start to end (inclusive).
-
-S or --scene <name> -
Set the active scene <name> for rendering.
-
-f or --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 or --frame-start <frame> -
Set start to frame <frame>, supports +/- for relative frames too.
-
-e or --frame-end <frame> -
Set end to frame <frame>, supports +/- for relative frames too.
-
-j or --frame-jump <frames> -
Set number of frames to step forward after each rendered frame.
-
-o or --render-output <path> -
Set the render path and file name.
Use '//' at the start of the path to render relative to the blend-file.
-
You can use path templating features such as '{blend_name}' in the path.
See Blender's documentation on path templates for more details.
-
The '#' characters are replaced by the frame number, and used to define zero padding.
-
* 'animation_##_test.png' becomes 'animation_01_test.png'
* 'test-######.png' becomes 'test-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 or --engine <engine> -
Specify the render engine.
Use '-E help' to list available engines.
-
-t or --threads <threads> -
Use amount of <threads> for rendering and other operations
[1-1024], 0 to use the system's 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: |
-
--cycles-print-stats -
Log statistics about render memory and time usage.
Format Options:
-
-F or --render-format <format> -
Set the render format.
Valid options are:
'TGA' 'RAWTGA' 'JPEG' 'IRIS' '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 or --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 or --window-border -
Force opening with borders, in a normal (non maximized) state.
-
-M or --window-maximized -
Force opening maximized.
-
-W or --window-fullscreen -
Force opening full-screen.
- -p or --window-geometry <sx> <sy> <w> <h>
-
Open with lower left corner at <sx>, <sy> and width and height as <w>, <h>.
-
-con or --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-frame -
Disable all window decorations (Linux only).
-
--no-window-focus -
Open behind other windows and without taking focus.
Python Options:
-
-y or --enable-autoexec -
Enable automatic Python script execution.
-
-Y or --disable-autoexec -
Disable automatic Python script execution (Python-drivers & startup scripts), (default).
-
-P or --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.
-
The expression may be a complete multi-line script;
you are limited only by the platform's maximum argument length.
-
--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'.
This also enables user environment, see: '--python-use-user-env'.
-
--python-use-user-env -
Allow Python to use user's site-packages directory.
This disables full isolation for the Python environment.
-
--addons <addon(s)> -
Comma separated list (no spaces) of add-ons to enable in addition to any default add-ons.
Network Options:
-
--online-mode -
Allow internet access, overriding the preference.
-
--offline-mode -
Disallow internet access, overriding the preference.
Logging Options:
-
--log <match> -
Enable logging categories, taking a single comma separated argument.
-
--log "*": log everything
--log "event": logs every category starting with 'event'.
--log "render,cycles": log both render and cycles messages.
--log "*mesh*": log every category containing 'mesh' sub-string.
--log "*,^operator": log everything except operators, with '^prefix' to exclude.
-
--log-level <level> -
Set the logging verbosity level.
-
fatal: Fatal errors only
error: Errors only
warning: Warnings
info: Information about devices, files, configuration, operations
debug: Verbose messages for developers
trace: Very verbose code execution tracing
-
--log-show-memory -
Show memory usage for each log message.
-
--log-show-source -
Show source file and function name in output.
-
--log-show-backtrace -
Show a back trace for each log message (debug builds only).
-
--log-file <filepath> -
Set a file to output the log to.
-
--log-list-categories -
List all available logging categories for '--log', and exit.
Debug Options:
-
-d or --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-handlers -
Enable debug messages for event handling.
-
--debug-libmv -
Enable debug messages from libmv library.
-
--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 validity 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-shader-debug-info -
Enable shader debug info generation (Vulkan only).
-
--debug-gpu-scope-capture -
Capture the GPU commands issued inside the given scope name.
-
--debug-gpu-shader-source -
Save the compiled GPU shader source code for the given shader name.
The given name can contain leading or trailing wildcard "*" to match multiple shaders.
Files are saved in the current working directory inside a directory named "Shaders".
-
--debug-gpu-shader-no-preprocessor -
Skip preprocessor pass and rely on driver or shader compiler preprocessor instead.
Also disable dead code elimination.
-
--debug-gpu-shader-no-dce -
Skip dead code elimination pass.
-
--debug-gpu-no-texture-pool -
Disable memory aliasing optimizations in the GPU texture pool.
-
--debug-gpu-vulkan-local-read -
Force Vulkan dynamic rendering local read when supported by device.
-
--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.
-
--debug-fpe -
Enable floating-point exceptions.
-
--debug-exit-on-error -
Immediately exit when internal errors are detected.
-
--debug-freestyle -
Enable debug messages for Freestyle.
-
--console-crash-handler -
Use the console to report crashes.
-
--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.
-
-q or --quiet -
Suppress status printing (warnings & errors are still printed).
GPU Options:
-
--gpu-backend -
Force to use a specific GPU backend. Valid options: 'opengl' or 'vulkan'.
-
--gpu-device <device> -
Select a specific GPU device, overriding the GPU device from user preferences for this
run only. Accepted forms:
-
* '<vendor-hex>/<device-hex>/<index-hex>' (matches the identifier used in user
preferences, with vendor PCI ID, device PCI ID and enumeration index all hex-encoded).
* '<index>' (no slashes) picks the Nth supported device by enumeration order, decimal.
* 'help' prints supported Vulkan devices and exits.
-
Only used with the Vulkan backend. Other backends print a warning and ignore this option.
If the requested Vulkan device is unavailable, Blender falls back to the saved GPU
preference unless '--gpu-device-no-fallback' is also set.
-
--gpu-device-no-fallback -
Fail instead of falling back when '--gpu-device' does not match a usable Vulkan device.
-
--gpu-vsync -
Set the VSync.
Valid options are: 'on', 'off' & 'auto' for adaptive sync.
-
* The default settings depend on the GPU driver.
* Disabling VSync can be useful for testing performance.
* 'auto' is only supported by the OpenGL backend.
-
--gpu-compilation-subprocesses -
Override the Max Compilation Subprocesses setting (OpenGL only).
-
--profile-gpu -
Enable CPU & GPU performance profiling for GPU debug groups
(Outputs a profile.json file in the Trace Event Format to the current directory)
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.
-
-X or --factory-startup -
Skip reading the 'startup.blend' in the user's 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-extensions -
Set the BLENDER_SYSTEM_EXTENSIONS 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' 'Default' 'SDL' 'OpenAL' 'CoreAudio' 'JACK' 'PulseAudio' 'WASAPI'.
-
-c or --command <command> -
Run a command which consumes all remaining arguments.
Use '-c help' to list all other commands.
Pass '--help' after the command to see its help text.
-
This implies '--background' mode.
-
-h or --help -
Print this help text and exit.
/?-
Print this help text and exit (Windows only).
-
-r or --register -
Register blend-file extension for current user, then exit (Windows & Linux only).
-
--register-allusers -
Register blend-file extension for all users, then exit (Windows & Linux only).
-
--unregister -
Unregister blend-file extension for current user, then exit (Windows & Linux only).
-
--unregister-allusers -
Unregister blend-file extension for all users, then exit (Windows & Linux only).
-
--qos <level> -
Set the Quality of Service (QoS) mode for hybrid CPU architectures (Windows only).
-
default: Uses the default behavior of the OS.
high: Always makes use of performance cores.
eco: Schedules Blender threads exclusively to efficiency cores.
-
-v or --version -
Print Blender version and exit.
-
-- -
End option processing, following arguments passed unchanged. Access via Python's 'sys.argv'.
Other Options:
-
--disable-depsgraph-on-file-load -
Background mode: Do not systematically build and evaluate ViewLayers' dependency graphs
when loading a blend-file in background mode ('-b' or '-c' options).
-
Scripts requiring evaluated data then need to explicitly ensure that
an evaluated depsgraph is available
(e.g. by calling 'depsgraph = context.evaluated_depsgraph_get()').
-
NOTE: this is a temporary option, in the future depsgraph will never be
automatically generated on file load in background mode.
-
--disable-liboverride-auto-resync -
Do not perform library override automatic resync when loading a new blend-file.
-
NOTE: this is an alternative way to get the same effect as when setting the
'No Override Auto Resync' User Preferences Debug option.
-
--debug-ffmpeg -
Enable debug messages from FFmpeg video input and output.
-
--debug-cycles -
Enable debug messages from Cycles.
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
$BLENDER_USER_RESOURCES Replace default directory of all 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_EXTENSIONS Directory for user extensions.
$BLENDER_USER_DATAFILES Directory for user data files (icons, translations, ..).
$BLENDER_SYSTEM_RESOURCES Replace default directory of all bundled resource files.
$BLENDER_SYSTEM_SCRIPTS Directories to add extra scripts.
$BLENDER_SYSTEM_EXTENSIONS Directory for system extensions repository.
$BLENDER_SYSTEM_DATAFILES Directory to replace bundled datafiles.
$BLENDER_SYSTEM_PYTHON Directory to replace bundled Python libraries.
$BLENDER_CUSTOM_SPLASH Full path to an image that replaces the splash screen.
$BLENDER_CUSTOM_SPLASH_BANNER Full path to an image to overlay on the splash screen.
$BLENDER_OCIO Path to override the OpenColorIO configuration file.
If not set, the 'OCIO' environment variable is used.
$SPNAV_SOCKET The socket path to connect to the 3D-mouse daemon (Unix only).
$TMPDIR Store temporary files here (UNIX Systems).
The path must reference an existing directory or it will be ignored.
Releases
12 releases since Debian 3.1 (Sarge); the text changed 9 times.
-- since Debian 7 (Wheezy);
--addons since Debian 7 (Wheezy);
--app-template since Debian 11 (Bullseye);
--background since Debian 7 (Wheezy);
--command since Debian 13 (Trixie);
--console-crash-handler since Arch Linux 2026-11-01;
--cycles-device since Debian 13 (Trixie);
--cycles-print-stats since Debian 13 (Trixie);
--debug since Debian 7 (Wheezy);
--debug-all since Debian 7 (Wheezy);
--debug-cycles since Debian 9 (Stretch);
--debug-depsgraph since Debian 8 (Jessie);
--debug-depsgraph-build since Debian 11 (Bullseye);
--debug-depsgraph-eval since Debian 11 (Bullseye);
--debug-depsgraph-no-threads since Debian 9 (Stretch);
--debug-depsgraph-pretty since Debian 11 (Bullseye);
--debug-depsgraph-tag since Debian 11 (Bullseye);
--debug-depsgraph-time since Debian 11 (Bullseye);
--debug-depsgraph-uid since Debian 13 (Trixie);
--debug-events since Debian 7 (Wheezy);
--debug-exit-on-error since Debian 12 (Bookworm);
--debug-ffmpeg since Debian 7 (Wheezy);
--debug-fpe since Debian 7 (Wheezy);
--debug-freestyle since Debian 8 (Jessie);
--debug-ghost since Debian 11 (Bullseye);
--debug-gpu since Debian 9 (Stretch);
--debug-gpu-compile-shaders since Debian 13 (Trixie);
--debug-gpu-force-workarounds since Debian 11 (Bullseye);
--debug-gpu-no-texture-pool since Arch Linux 2026-11-01;
--debug-gpu-scope-capture since Arch Linux 2026-11-01;
--debug-gpu-shader-debug-info since Arch Linux 2026-11-01;
--debug-gpu-shader-no-dce since Arch Linux 2026-11-01;
--debug-gpu-shader-no-preprocessor since Arch Linux 2026-11-01;
--debug-gpu-shader-source since Arch Linux 2026-11-01;
--debug-gpu-vulkan-local-read since Arch Linux 2026-11-01;
--debug-handlers since Debian 8 (Jessie);
--debug-io since Debian 9 (Stretch);
--debug-jobs since Debian 8 (Jessie);
--debug-libmv since Debian 7 (Wheezy);
--debug-memory since Debian 8 (Jessie);
--debug-python since Debian 7 (Wheezy);
--debug-value since Debian 8 (Jessie);
--debug-wintab since Debian 12 (Bookworm);
--debug-wm since Debian 7 (Wheezy);
--debug-xr since Debian 13 (Trixie);
--debug-xr-time since Debian 13 (Trixie);
--disable-abort-handler since Debian 9 (Stretch);
--disable-autoexec since Debian 7 (Wheezy);
--disable-crash-handler since Debian 8 (Jessie);
--disable-depsgraph-on-file-load since Arch Linux 2026-11-01;
--disable-liboverride-auto-resync since Arch Linux 2026-11-01;
--enable-autoexec since Debian 7 (Wheezy);
--enable-event-simulate since Debian 11 (Bullseye);
--engine since Debian 7 (Wheezy);
--env-system-datafiles since Debian 7 (Wheezy);
--env-system-extensions since Debian 13 (Trixie);
--env-system-python since Debian 7 (Wheezy);
--env-system-scripts since Debian 7 (Wheezy);
--factory-startup since Debian 7 (Wheezy);
--frame-end since Debian 7 (Wheezy);
--frame-jump since Debian 7 (Wheezy);
--frame-start since Debian 7 (Wheezy);
--gpu-backend since Debian 12 (Bookworm);
--gpu-compilation-subprocesses since Debian 13 (Trixie);
--gpu-device since Arch Linux 2026-11-01;
--gpu-device-no-fallback since Arch Linux 2026-11-01;
--gpu-vsync since Arch Linux 2026-11-01;
--help since Debian 4.0 (Etch);
--log since Debian 11 (Bullseye);
--log-file since Debian 11 (Bullseye);
--log-level since Debian 11 (Bullseye);
--log-list-categories since Arch Linux 2026-11-01;
--log-show-backtrace since Debian 11 (Bullseye);
--log-show-memory since Arch Linux 2026-11-01;
--log-show-source since Arch Linux 2026-11-01;
--no-native-pixels since Debian 8 (Jessie);
--no-window-focus since Debian 11 (Bullseye);
--no-window-frame since Arch Linux 2026-11-01;
--offline-mode since Debian 13 (Trixie);
--online-mode since Debian 13 (Trixie);
--open-last since Debian 12 (Bookworm);
--profile-gpu since Arch Linux 2026-11-01;
--python since Debian 7 (Wheezy);
--python-console since Debian 7 (Wheezy);
--python-exit-code since Debian 9 (Stretch);
--python-expr since Debian 9 (Stretch);
--python-text since Debian 8 (Jessie);
--python-use-system-env since Debian 11 (Bullseye);
--python-use-user-env since Arch Linux 2026-11-01;
--qos since Arch Linux 2026-11-01;
--quiet since Debian 13 (Trixie);
--register since Debian 13 (Trixie);
--register-allusers since Debian 13 (Trixie);
--render-anim since Debian 7 (Wheezy);
--render-format since Debian 7 (Wheezy);
--render-frame since Debian 7 (Wheezy);
--render-output since Debian 7 (Wheezy);
--scene since Debian 7 (Wheezy);
--start-console since Debian 7 (Wheezy);
--threads since Debian 7 (Wheezy);
--unregister since Debian 13 (Trixie);
--unregister-allusers since Debian 13 (Trixie);
--use-extension since Debian 7 (Wheezy);
--verbose since Debian 8 (Jessie);
--version since Debian 7 (Wheezy);
--window-border since Debian 7 (Wheezy);
--window-fullscreen since Debian 11 (Bullseye);
--window-maximized since Debian 11 (Bullseye);
-E since Debian 7 (Wheezy);
-F since Debian 7 (Wheezy);
-M since Debian 11 (Bullseye);
-P since Debian 7 (Wheezy);
-W since Debian 7 (Wheezy);
-X since Arch Linux 2026-11-01;
-Y since Debian 7 (Wheezy);
-b since Debian 4.0 (Etch);
-c since Debian 13 (Trixie);
-con since Debian 7 (Wheezy);
-h since Debian 4.0 (Etch);
-j since Debian 7 (Wheezy);
-noaudio since Debian 4.0 (Etch);
-o since Debian 4.0 (Etch);
-q since Debian 13 (Trixie);
-r since Debian 7 (Wheezy);
-setaudio since Debian 7 (Wheezy);
-t since Debian 7 (Wheezy);
-v since Debian 7 (Wheezy);
-x since Debian 4.0 (Etch).
--debug-depsgraph-uuid until Debian 12 (Bookworm);
--debug-gpu-disable-ssbo until Debian 12 (Bookworm);
--debug-gpu-shaders until Debian 11 (Bullseye);
--debug-gpumem until Debian 11 (Bullseye);
--disable-library-override until Debian 11 (Bullseye);
--enable-new-basic-shader-glsl until Debian 10 (Buster);
--enable-new-depsgraph until Debian 10 (Buster);
--env-system-plugins until Debian 7 (Wheezy);
--log-show-basename until Debian 13 (Trixie);
--log-show-timestamp until Debian 13 (Trixie);
--window-borderless until Debian 10 (Buster);
-H until Debian 6.0 (Squeeze);
-R until Debian 12 (Bookworm);
-g until Debian 6.0 (Squeeze);
-m until Debian 6.0 (Squeeze);
-noglsl until Debian 10 (Buster);
-nojoystick until Debian 10 (Buster).