f3d1
Fast and minimalist 3d viewer
Overview
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
|
Render to 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
--verboseto 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 |
-
--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 |
Releases
3 releases since Debian 12 (Bookworm); the text changed 2 times.
--ambient-occlusion since Debian 13 (Trixie);
--animation-autoplay since Debian 13 (Trixie);
--animation-indices since Arch Linux 2026-11-01;
--animation-progress since Debian 13 (Trixie);
--animation-speed-factor since Debian 13 (Trixie);
--animation-time since Debian 13 (Trixie);
--anti-aliasing since Debian 13 (Trixie);
--armature since Debian 13 (Trixie);
--axes-grid since Arch Linux 2026-11-01;
--backdrop-color since Arch Linux 2026-11-01;
--backdrop-opacity since Arch Linux 2026-11-01;
--backface-type since Debian 13 (Trixie);
--background-color since Debian 13 (Trixie);
--base-ior since Arch Linux 2026-11-01;
--blending since Arch Linux 2026-11-01;
--blur-coc since Debian 13 (Trixie);
--camera-direction since Debian 13 (Trixie);
--camera-orthographic since Debian 13 (Trixie);
--camera-zoom-factor since Debian 13 (Trixie);
--checkerboard since Arch Linux 2026-11-01;
--coloring-array since Debian 13 (Trixie);
--coloring-component since Debian 13 (Trixie);
--coloring-field since Arch Linux 2026-11-01;
--coloring-mode since Arch Linux 2026-11-01;
--coloring-range since Debian 13 (Trixie);
--coloring-scalar-bar since Debian 13 (Trixie);
--colormap-discretization since Arch Linux 2026-11-01;
--colormap-file since Debian 13 (Trixie);
--command-script since Debian 13 (Trixie);
--config since Debian 13 (Trixie);
--define since Debian 13 (Trixie);
--display-depth since Arch Linux 2026-11-01;
--dpi-aware since Arch Linux 2026-11-01;
--font-color since Arch Linux 2026-11-01;
--font-scale since Debian 13 (Trixie);
--force-reader since Arch Linux 2026-11-01;
--frame-rate since Debian 13 (Trixie);
--grid-absolute since Debian 13 (Trixie);
--grid-color since Debian 13 (Trixie);
--grid-opacity since Arch Linux 2026-11-01;
--grid-reflection since Arch Linux 2026-11-01;
--grid-subdivisions since Debian 13 (Trixie);
--grid-unit since Debian 13 (Trixie);
--hdri-ambient since Debian 13 (Trixie);
--hdri-filename since Arch Linux 2026-11-01;
--hdri-skybox since Debian 13 (Trixie);
--input since Debian 13 (Trixie);
--interaction-style since Arch Linux 2026-11-01;
--invert-zoom since Debian 13 (Trixie);
--light-intensity since Debian 13 (Trixie);
--list-bindings since Debian 13 (Trixie);
--list-readers since Debian 13 (Trixie);
--list-rendering-backends since Debian 13 (Trixie);
--list-video-encoders since Arch Linux 2026-11-01;
--loading-progress since Debian 13 (Trixie);
--multi-file-mode since Debian 13 (Trixie);
--multi-file-regex since Arch Linux 2026-11-01;
--no-cache since Arch Linux 2026-11-01;
--no-config since Debian 13 (Trixie);
--normal-glyphs since Arch Linux 2026-11-01;
--normal-glyphs-scale since Arch Linux 2026-11-01;
--notifications since Arch Linux 2026-11-01;
--plugins-path since Arch Linux 2026-11-01;
--point-sprites-absolute-size since Arch Linux 2026-11-01;
--point-sprites-size since Debian 13 (Trixie);
--position since Debian 13 (Trixie);
--raytracing since Arch Linux 2026-11-01;
--raytracing-denoise since Arch Linux 2026-11-01;
--raytracing-samples since Arch Linux 2026-11-01;
--recursive-dir-add since Arch Linux 2026-11-01;
--reference-threshold since Debian 13 (Trixie);
--remove-empty-file-groups since Arch Linux 2026-11-01;
--rendering-backend since Debian 13 (Trixie);
--reset since Debian 13 (Trixie);
--scan-plugins since Debian 13 (Trixie);
--scene-hierarchy since Arch Linux 2026-11-01;
--screenshot-filename since Debian 13 (Trixie);
--skip-content-check since Arch Linux 2026-11-01;
--textures-transform since Arch Linux 2026-11-01;
--unlit since Arch Linux 2026-11-01;
--video-bitrate since Arch Linux 2026-11-01;
--video-encoder since Arch Linux 2026-11-01;
--video-low-latency since Arch Linux 2026-11-01;
--volume-inverse since Debian 13 (Trixie);
--volume-opacity-file since Arch Linux 2026-11-01;
--volume-opacity-map since Arch Linux 2026-11-01;
--watch since Debian 13 (Trixie);
--x-color since Arch Linux 2026-11-01;
--y-color since Arch Linux 2026-11-01;
--z-color since Arch Linux 2026-11-01;
-D since Debian 13 (Trixie);
-R since Debian 13 (Trixie);
-d since Arch Linux 2026-11-01;
-j since Debian 13 (Trixie);
-r since Arch Linux 2026-11-01.
--animation-index until Debian 13 (Trixie);
--anti-aliasing-mode until Debian 13 (Trixie);
--bar until Debian 12 (Bookworm);
--bg-color until Debian 12 (Bookworm);
--blur-background until Debian 13 (Trixie);
--cells until Debian 12 (Bookworm);
--coloring-by-cells until Debian 13 (Trixie);
--comp until Debian 12 (Bookworm);
--depth-peeling until Debian 12 (Bookworm);
--dry-run until Debian 12 (Bookworm);
--fullscreen until Debian 12 (Bookworm);
--fxaa until Debian 12 (Bookworm);
--geometry-only until Debian 12 (Bookworm);
--interaction-trackball until Debian 13 (Trixie);
--inverse until Debian 12 (Bookworm);
--point-sprites-type until Debian 13 (Trixie);
--progress until Debian 12 (Bookworm);
--quiet until Debian 12 (Bookworm);
--range until Debian 12 (Bookworm);
--readers-list until Debian 12 (Bookworm);
--ref-threshold until Debian 12 (Bookworm);
--scalar-coloring until Debian 13 (Trixie);
--scalars until Debian 12 (Bookworm);
--ssao until Debian 12 (Bookworm);
--trackball until Debian 12 (Bookworm);
--translucency-support until Debian 13 (Trixie);
--verbose until Debian 12 (Bookworm);
-c until Debian 13 (Trixie);
-u until Debian 13 (Trixie).