Options exhaustive list

An option is a string used as a key associated with a value, which are stored in an options instance. The possible option are listed below and are organized by categories and subcategories, here is a non-exhaustive explanation of the categories.

  • scene options are related to how the scene is being displayed
  • render options are related to the way the render is done
  • render.effect options are related to specific techniques used that modify the render
  • ui options are related to the screenspace UI element displayed
  • model options are related to modifications on the model, they are only meaningful when using the default scene
  • interactor options requires an interactor to be present to have any effect.

Please note certain options are taken into account when rendering, others when loading a file. See the exhaustive list below, but note that this may change in the future.

Scene Options

Option Type
Default
Trigger
Description F3D option
scene.animation.index int
0
load
Select the animation to load.
Any negative value means all animations.
The default scene always has at most one animation.
--animation-index
scene.camera.index int
-1
load
Select the scene camera to use when available in the file.
Any negative value means automatic camera.
The default scene always uses automatic camera.
--camera-index
scene.up-direction string
+Y
load
Define the Up direction --up

Interactor Options

Option Type
Default
Trigger
Description F3D option
interactor.axis bool
false
render
Show axes as a trihedron in the scene. --axis
interactor.trackball bool
false
render
Enable trackball interaction. --trackball

Model Options

Option Type
Default
Trigger
Description F3D option
model.color.opacity double
1.0
render
Set opacity on the geometry. Usually used with Depth Peeling option. Multiplied with the model.color.texture when present. --opacity
model.color.rgb vector<double>
1.0,1.0,1.0
render
Set a color on the geometry. Multiplied with the model.color.texture when present. --color
model.color.texture string
-
render
Path to a texture file that sets the color of the object. Will be multiplied with rgb and opacity. --texture-base-color
model.emissive.factor vector<double>
1.0,1.0,1.0
render
Multiply the emissive color when an emissive texture is present. --emissive-factor
model.emissive.texture string
-
render
Path to a texture file that sets the emitted light of the object. Multiplied with the model.emissive.factor. --texture-emissive
model.material.metallic double
0.0
render
Set the metallic coefficient on the geometry (0.0-1.0). Multiplied with the model.material.texture when present. --metallic
model.material.roughness double
0.3
render
Set the roughness coefficient on the geometry (0.0-1.0). Multiplied with the model.material.texture when present. --roughness
model.material.texture string
-
render
Path to a texture file that sets the Occlusion, Roughness and Metallic values of the object. Multiplied with the model.material.roughness and model.material.metallic, set both of them to 1.0 to get a true result. --texture-material
model.normal.scale double
1.0
render
Normal scale affects the strength of the normal deviation from the normal texture. --normal-scale
model.normal.texture string
-
render
Path to a texture file that sets the normal map of the object. --texrture-normal
model.scivis.cells bool
false
render
Color the data with value found on the cells instead of points --cells
model.scivis.colormap vector<double>
<inferno>
render
Set a custom colormap for the coloring.
This is a list of colors in the format val1,red1,green1,blue1,...,valN,redN,greenN,blueN
where all values are in the range (0,1).
--colormap
model.scivis.component int
-1
render
Specify the component to color with. -1 means magnitude. -2 means direct values. --comp
model.scivis.array-name string
<reserved>
render
Color by a specific data array present in on the data. Set to to let libf3d find the first available array. --scalars
model.scivis.range vector<double>
-
render
Set a custom range for the coloring. --range
model.point-sprites.enable bool
false
render
Show sphere points sprites instead of the geometry. --point-sprites
model.volume.enable bool
false
render
Enable volume rendering. It is only available for 3D image data (vti, dcm, nrrd, mhd files) and will display nothing with other default scene formats. --volume
model.volume.inverse bool
false
render
Inverse the linear opacity function. --inverse

Render Options

Option Type
Default
Trigger
Description F3D option
render.effect.translucency-support bool
false
render
Enable translucency support. This is a technique used to correctly render translucent objects, implemented using depth peeling --translucency-support
render.effect.anti-aliasing bool
false
render
Enable anti-aliasing. This technique is used to reduce aliasing, implemented using FXAA. --anti-aliasing
render.effect.ambient-occlusion bool
false
render
Enable ambient occlusion. This is a technique providing approximate shadows, used to improve the depth perception of the object. Implemented using SSAO --ambient-occlusion
render.effect.tone-mapping bool
false
render
Enable generic filmic Tone Mapping Pass. This technique is used to map colors properly to the monitor colors. --tone-mapping
render.line-width double
1.0
render
Set the width of lines when showing edges. --line-width
render.show-edges bool
false
render
Show the cell edges --edges
render.point-size double
10.0
render
Set the size of points when showing vertices and point sprites. --point-size
render.grid.enable bool
false
render
Show a grid aligned with the horizontal (orthogonal to the Up direction) plane. --grid
render.grid.absolute bool
false
render
Position the grid at the absolute origin of the model’s coordinate system instead of below the model. --grid
render.grid.unit double
0
render
Set the size of the unit square for the grid. If set to non-positive (the default) a suitable value will be automatically computed. --grid-unit
render.grid.subdivisions int
10
render
Set the number of subdivisions for the grid. --grid-subdivisions
render.raytracing.enable bool
false
render
Enable raytracing. Requires the raytracing module to be enabled. --raytracing
render.raytracing.samples int
5
render
The number of samples per pixel. --samples
render.raytracing.denoise bool
false
render
Denoise the raytracing rendering. --denoise
render.background.color vector<double>
0.2,0.2,0.2
render
Set the window background color.
Ignored if hdri is set.
--bg-color
render.background.hdri string
-
render
Set the HDRI image used to create the environment.
The environment act as a light source and is reflected on the material.
Valid file format are hdr, png, jpg, pnm, tiff, bmp. Override the color.
--hdri
render.background.blur bool
false
render
Blur background when using a HDRI. --blur-background
render.background.blur.coc double
20.0
render
Blur background circle of confusion radius. --blur-background-coc

UI Options

Option Type
Default
Trigger
Description F3D option
ui.bar bool
false
render
Show scalar bar of the coloring by data array. --bar
ui.cheatsheet bool
false
render
Show a interactor cheatsheet  
ui.filename bool
false
render
Display the filename info content on top of the window. --filename
ui.filename-info string
-
render
Content of filename info to display.  
ui.font-file string
-
render
Use the provided FreeType compatible font file to display text.
Can be useful to display non-ASCII filenames.
--font-file
ui.fps bool
false
render
Display a frame per second counter. --fps
ui.loader-progress bool
false
load
Show a progress bar when loading the file. --progress
ui.metadata bool
false
render
Display the metadata. --metadata
ui.dropzone bool
false
render
Show a drop zone.  
ui.dropzone-info string
-
render
Content of the drop zone text to display.