NAME
F3D - fast and minimalist 3D viewer
DESCRIPTION
F3D - A fast and minimalist 3D viewer Usage:
-
f3d [OPTIONS...] file1 file2 ...
-
Applicative options:
- --input <files>
-
Input files
- -D, --define libf3d.option=value
-
Define libf3d options
- -R, --reset libf3d.option
-
Reset libf3d options
- --output <png file>
-
Render to file
- --output-video <h264 file>
-
Render to video
- --no-background [=<bool>(=1)]
-
No background when render to file (default: false)
- --no-cache [=<bool>(=1)]
-
No cache is used (both reading and writing) (default: false)
- -h, --help
-
Print help
- --version
-
Print version details
- --list-readers
-
Print the list of readers
- --force-reader <reader>
-
Force a specific reader to be used, disregarding the file extension
- --skip-content-check [=<bool>(=1)]
-
Select reader to read file without checking its header content, but only based on the file extension. (default: false)
- --list-bindings [=<bool>(=1)]
-
Print the list of interaction bindings and exits, ignored with `--no-render`, only considers the first file group. (default: false)
- --config <filePath/filename/fileStem>
-
Specify the configuration file to use. absolute/relative path or filename/filestem to search in configuration file locations
- --no-config [=<bool>(=1)]
-
Do not read the configuration file (default: false)
- --no-render [=<bool>(=1)]
-
Do not render anything and quit right after loading the first file, use with --verbose to recover information about a file. (default: false)
- --load-statefile <file path>
-
Restore the application state from a statefile, applied above config files but below command line options. Use `-` for the standard input
- --save-statefile <file path>
-
Save the application state to a statefile right after loading then continue, supports the same template variables as --output. Use `-` for the standard output
- --statefile-filename <file path>
-
Default filename used by the statefile save and load interactions when no file is provided, supports the same template variables as --output. Use `-` for the standard output (save) or standard input (load)
- --rendering-backend <string>
-
Backend to use when rendering (auto|glx|wgl|egl|osmesa) (default: auto)
- --list-rendering-backends
-
Print the list of rendering backends available on this system
- --list-video-encoders
-
Print the list of video encoders available on this system
- --video-encoder <name>
-
Select the video encoder to use for output
- --video-bitrate <bitrate>
-
Select the video bitrate in Mbps to use for output (default: 5)
- --video-low-latency [=<bool>(=1)]
-
Enable low latency mode for video encoding (default: false)
- --max-size <size in Mib>
-
Maximum size in Mib of a file to load, leave empty for unlimited
- --dpi-aware [=<bool>(=1)]
-
Scale font and window resolution according to system scale (default: false)
- --watch [=<bool>(=1)]
-
Watch current file and automatically reload it whenever it is modified on disk (default: false)
- --frame-rate <fps>
-
Frame rate used to refresh animation and other repeated tasks (watch, UI). Does not impact rendering frame rate. (default: 30.0)
- --load-plugins <paths or names>
-
List of plugins to load separated with a comma
- --plugins-path <path>
-
Path specifying where to load plugins from
- --scan-plugins
-
Scan standard directories for plugins and display available plugins (result can be incomplete)
- --screenshot-filename <filename>
-
Screenshot filename (default: {app}/{model}_{n}.png)
-
General options:
- --verbose [={debug, info, warning, error, quiet}(=debug)]
-
Set verbose level, providing more information about the loaded data in the console output (default: info)
- --loading-progress [=<bool>(=1)]
-
Show loading progress bar (default: false)
- --animation-progress [=<string>(=default)]
-
Animation progress bar mode ("none", "default" or "advanced") (default: none)
- --multi-file-mode <single|all|dir>
-
Choose the behavior when opening multiple files. "single" will show one file at a time, "all" will show all files in a single scene, "dir" will show files from the same directory in the same scene. (default: single)
- --multi-file-regex <regex>
-
Regular expression pattern to group files. Captured groups are replaced with "*" so that, for example, the pattern "part(\d+)" would group files "foo-part1.xyz" and "foo-part2.xyz" together as "foo-part*.xyz"
- --recursive-dir-add [=<bool>(=1)]
-
Add directories recursively (default: false)
- --remove-empty-file-groups [=<bool>(=1)]
-
Remove file groups that results into an empty scene (default: false)
- --up <direction>
-
Up direction (default: +Y)
- -x, --axis [=<bool>(=1)]
-
Show axes (default: false)
- -g, --grid [=<bool>(=1)]
-
Show grid (default: false)
- --x-color <color>
-
Color of the X axis (default: #f94306)
- --y-color <color>
-
Color of the Y axis (default: #7aff7a)
- --z-color <color>
-
Color of the Z axis (default: #788bff)
- --grid-absolute [=<bool>(=1)]
-
Position grid at the absolute origin instead of below the model (default: false)
- --grid-unit <value>
-
Size of grid unit square, automatically computed by default
- --grid-subdivisions <value>
-
Number of grid subdivisions (default: 10)
- --grid-color <color>
-
Color of main grid lines (default: #000000)
- --grid-opacity <value>
-
Opacity of the grid lines (default: 1)
- --grid-reflection <value>
-
Reflection strength of the grid (default: 0)
- --axes-grid [=<bool>(=1)]
-
Enable grid axis (default: false)
- -e, --edges [=<bool>(=1)]
-
Show cell edges
- --armature [=<bool>(=1)]
-
Enable armature visualization (default: false)
- --camera-index <index>
-
Select the camera to use
- -k, --interaction-style [=<style>(=2d)]
-
Interaction style (default: default)
- --invert-zoom [=<bool>(=1)]
-
Invert zoom direction with right mouse click (default: false)
- --animation-autoplay [=<bool>(=1)]
-
Automatically start animation (default: false)
- --animation-indices <index,index,index>
-
Select animations to show (default: 0)
- --animation-speed-factor <ratio>
-
Set animation speed factor (default: 1)
- --animation-time <time>
-
Set animation time to load
- --font-file <file_path>
-
Path to a FreeType compatible font file
- --font-scale <ratio>
-
Scale fonts (default: 1)
- --font-color <color>
-
Set font color (default: #f4f4f4)
- --backdrop-opacity <value>
-
UI backdrop opacity (default: 0.9)
- --backdrop-color <color>
-
UI backdrop color (default: #141414)
- --command-script <file_path>
-
Path to a script file containing commands to execute
- --normal-glyphs [=<bool>(=1)]
-
Enable normal glyphs (default: false)
- --normal-glyphs-scale <ratio>
-
Scale normal glyphs (default: 1)
-
Material options:
- -o, --point-sprites [=<string>(=sphere)]
-
Select point sprites type ("none", "sphere", "gaussian", "circle", "stddev", "bound") (default: none)
- --point-sprites-size <size>
-
Point sprites sphere size (default: 10)
- --point-sprites-absolute-size [=<bool>(=1)]
-
Do not scale point sprites size by scene size (default: false)
- --point-size <size>
-
Point size when showing vertices, model specified by default
- --line-width <width>
-
Line width when showing edges, model specified by default
- --backface-type <visible|hidden>
-
Backface type, can be visible or hidden, model specified by default
- --color <color>
-
Solid color
- --opacity <opacity>
-
Opacity
- --roughness <roughness>
-
Roughness coefficient (0.0-1.0)
- --metallic <metallic>
-
Metallic coefficient (0.0-1.0)
- --base-ior <base-ior>
-
Index Of Refraction of the base layer (1.0-2.5)
- --hdri-file <file path>
-
Path to an image file that can be used as a light source and skybox
- -f, --hdri-ambient [=<bool>(=1)]
-
Enable HDRI ambient lighting (default: false)
- -j, --hdri-skybox [=<string>(=enabled)]
-
Enable HDRI skybox background (default: disabled)
- --texture-matcap <file path>
-
Path to a texture file containing a material capture
- --texture-base-color <file path>
-
Path to a texture file that sets the color of the object
- --texture-material <file path>
-
Path to a texture file that sets the Occlusion, Roughness and Metallic values of the object
- --texture-emissive <file path>
-
Path to a texture file that sets the emitted light of the object
- --textures-transform <transform2d>
-
3x3 matrix to transform textures
- --emissive-factor <color>
-
Emissive factor. This value is multiplied with the emissive color when an emissive texture is present
- --texture-normal <file path>
-
Path to a texture file that sets the normal map of the object
- --checkerboard [=<bool>(=1)]
-
Apply checkerboard texture to objects (default: false)
- --normal-scale <normalScale>
-
Normal scale affects the strength of the normal deviation from the normal texture
- --unlit [=<bool>(=1)]
-
Ignore shading and make the material unlit
-
Window options:
- --background-color <color>
-
Background color (default: #333333)
- --resolution <width,height>
-
Window resolution (default: 1000, 600)
- --position <x,y>
-
Window position
- -z, --fps [=<bool>(=1)]
-
Display rendering frame per second (default: false)
- -n, --filename [=<bool>(=1)]
-
Display filename (default: false)
- -m, --metadata [=<bool>(=1)]
-
Display file metadata (default: false)
- --scene-hierarchy [=<bool>(=1)]
-
Display the scene hierarchy widget (default: false)
- --notifications [=<bool>(=1)]
-
Display notifications (default: false)
- --hdri-filename [=<bool>(=1)]
-
Display hdri filename (default: false)
- --blur-coc <value>
-
Blur circle of confusion radius (default: 20)
- --light-intensity <value>
-
Light intensity (default: 1)
-
Scientific visualization options:
- -s, --coloring-mode [=<material|scivis|direct>(=scivis)]
-
Change the color mode (default: material)
- --coloring-array <array_name>
-
Name of the array to color with
- -y, --coloring-component [=<comp_index>(=0)]
-
Component from the array to color with. Use magnitude if not specified
- --coloring-field [=<string>(=cells)]
-
Use the specified field for coloring (e.g., "cells" or "points") (default: any)
- --coloring-range <min,max>
-
Custom range for the coloring by array, automatically computed by default
- -b, --coloring-scalar-bar [=<bool>(=1)]
-
Show scalar bar (default: false)
- --colormap-file <filePath/filename/fileStem>
-
Specify a colormap image
- --colormap-discretization <int>
-
Specify number of colors in colormap
- --colormap <color_list>
-
Specify a custom colormap (ignored if "colormap-file" is specified) (default: 0,#000000,0.4,0.9,0,0,0.8,0.9,0.9,0,1,#fffff f)
- --volume-opacity-map <opacity_list>
-
Specify a custom opacity map for volume rendering (default: 0,0,1,1)
- --volume-opacity-file <filePath/filename/fileStem>
-
Specify a custom opacity map image for volume rendering
- -v, --volume [=<bool>(=1)]
-
Show volume if the file is compatible (default: false)
- -i, --volume-inverse [=<bool>(=1)]
-
Inverse opacity function for volume rendering (default: false)
-
Camera options:
- --camera-position <X,Y,Z>
-
Camera position (overrides camera direction and camera zoom factor if any)
- --camera-focal-point <X,Y,Z>
-
Camera focal point
- --camera-view-up <direction>
-
Camera view up
- --camera-view-angle <angle>
-
Camera view angle (non-zero, in degrees) (default: 0.0)
- --camera-direction <direction>
-
Camera direction
- --camera-zoom-factor <factor>
-
Camera zoom factor (non-zero) (default: 0.0)
- --camera-azimuth-angle <angle>
-
Camera azimuth angle (in degrees), performed after other camera options (default: 0.0)
- --camera-elevation-angle <angle>
-
Camera elevation angle (in degrees), performed after other camera options (default: 0.0)
- --camera-orthographic [=<bool>(=1)]
-
Use an orthographic camera
-
Raytracing options:
- -r, --raytracing [=<bool>(=1)]
-
Enable raytracing (default: false)
- --raytracing-samples <samples>
-
Number of samples per pixel (default: 5)
- -d, --raytracing-denoise [=<bool>(=1)]
-
Denoise the image (default: false)
-
PostFX (OpenGL) options:
- -p, --blending [=<string>(=ddp)]
-
Select translucency blending mode ("none", "ddp", "sort", "sort_cpu" or "stochastic") (default: none)
- -q, --ambient-occlusion [=<bool>(=1)]
-
Enable ambient occlusion providing approximate shadows for better depth perception, implemented using SSAO (default: false)
- -a, --anti-aliasing [=<string>(=fxaa)]
-
Select anti-aliasing method ("none", "fxaa", "ssaa" or "taa") (default: none)
- -t, --tone-mapping [=<bool>(=1)]
-
Enable Tone Mapping, providing balanced coloring (default: false)
- --final-shader <GLSL code>
-
Execute the final shader at the end of the rendering pipeline
- --display-depth [=<bool>(=1)]
-
Display depth buffer as grayscale image or with a colormap if "--scalar-coloring" is specified (default: false)
-
Testing options:
- --reference <png file>
-
Reference
- --reference-threshold <threshold>
-
Testing threshold (default: 0.04)
- --interaction-test-record <file_path>
-
Path to an interaction log file to record interactions events to
- --interaction-test-play <file_path>
-
Path to an interaction log file to play interaction events from when loading a file
EXAMPLES
- f3d file.vtu -xtgans
-
View a unstructured mesh in a typical nice looking sciviz style
- f3d file.glb -tuqap --hdri-file=file.hdr --hdri-ambient --hdri-skybox
-
View a gltf file in a realistic environment
- f3d file.ply -o --point-size=0 --coloring-mode=direct
-
View a point cloud file with direct scalars rendering
- f3d folder
-
View all files in folder
REPORTING BUGS
Report bugs to https://github.com/f3d-app/f3d/issues
F3D - A fast and minimalist 3D viewer
Version: 4.0.1.
Build date: 2026-10-31 14:33:59.
Build system: Linux 64-bits.
Compiler: GNU 16.2.1.
Module FFmpeg: OFF.
Module ImGui: ON.
Module OpenEXR: ON.
Module Raytracing: ON.
Module WebP: OFF.
VTK version: 9.7.1.
Copyright © 2019-2021 Kitware SAS.
Copyright © 2021-2025 Michael Migliore, Mathieu Westphal.
Copyright © 2025-2026 F3D-APP Foundation.
License BSD-3-Clause.