SoPreferences Class Reference
[General]

VSG extension Manages Open Inventor configuration parameters. More...

#include <Inventor/SoPreferences.h>

List of all members.

Static Public Member Functions

static SoNONUNICODE const char * getValue (const char *name)
static const SbStringgetStringValue (const SbString &name)
static SoNONUNICODE SbBool getBool (const char *name, SbBool defaultValue)
static SbBool getBool (const SbString &name, SbBool defaultValue)
static SoNONUNICODE int getInt (const char *name, int defaultValue)
static int getInt (const SbString &name, int defaultValue)
static SoNONUNICODE long getLong (const char *name, long defaultValue)
static long getLong (const SbString &name, long defaultValue)
static SoNONUNICODE float getFloat (const char *name, float defaultValue)
static float getFloat (const SbString &name, float defaultValue)
static SoNONUNICODE double getDouble (const char *name, double defaultValue)
static double getDouble (const SbString &name, double defaultValue)
static SoNONUNICODE const
SbString
getString (const char *name, const SbString &defaultValue)
static const SbStringgetString (const SbString &name, const SbString &defaultValue)
static SoNONUNICODE const SbVec3fgetVec3f (const char *name, const SbVec3f &defaultValue)
static const SbVec3fgetVec3f (const SbString &name, const SbVec3f &defaultValue)
static SoNONUNICODE const SbVec2sgetVec2s (const char *name, const SbVec2s &defaultValue)
static const SbVec2sgetVec2s (const SbString &name, const SbVec2s &defaultValue)
static SoNONUNICODE const SbColorgetColor (const char *name, const SbColor &defaultValue)
static const SbColorgetColor (const SbString &name, const SbColor &defaultValue)
static SoNONUNICODE void setValue (const char *name, const char *value=NULL)
static void setValue (const SbString &name, const SbString *value=NULL)
static SoNONUNICODE void setBool (const char *name, SbBool value)
static void setBool (const SbString &name, SbBool value)
static SoNONUNICODE void setInt (const char *name, int value)
static void setInt (const SbString &name, int value)
static SoNONUNICODE void setLong (const char *name, long value)
static void setLong (const SbString &name, long value)
static SoNONUNICODE void setFloat (const char *name, float value)
static void setFloat (const SbString &name, float value)
static SoNONUNICODE void setDouble (const char *name, double value)
static void setDouble (const SbString &name, double value)
static SoNONUNICODE void setString (const char *name, const SbString &value)
static void setString (const SbString &name, const SbString &value)
static SoNONUNICODE void setVec3f (const char *name, const SbVec3f &value)
static void setVec3f (const SbString &name, const SbVec3f &value)
static SoNONUNICODE void setVec2s (const char *name, const SbVec2s &value)
static void setVec2s (const SbString &name, const SbVec2s &value)
static SoNONUNICODE void setColor (const char *name, const SbColor &value)
static void setColor (const SbString &name, const SbColor &value)
static SoNONUNICODE void readFile (const char *filename)
static void readFile (const SbString &filename)

Friends

class SoPreferencesImpl

Detailed Description

VSG extension Manages Open Inventor configuration parameters.

Open Inventor maintains a configuration database that stores information about the Open Inventor "environment". The Open Inventor environment contains configuration parameters and their values.

Setting configuration parameters
There are several ways that configuration parameter values are set into the Inventor configuration database:

Configuration files: When Open Inventor is initialized, two configuration files are automatically read (if available):

The configuration parameters specified in the configuration files are set into Open Inventor's configuration database.

You can request that additional configuration files be read using SoPreferences::readFile.

The configuration file format is simple. You specify environment name-value pairs, one per line. The file format is shown below.

Using SoPreferences methods: SoPreferences::setValue sets a configuration parameter in the Open Inventor configuration database. As this value is set in memory, it is local to the application process and can only be retrieved using SoPreferences::getValue. There are convenience methods available for setting specific values of a specific data type, e.g., setFloat.

Using system environment variables: If a particular configuration parameter has not already been set via a config file or setValue, then Open Inventor will check the system environment. System environment variables are set using platform-dependent commands (e.g., set, setenv).

Querying configuration parameters
To query a specific configuration parameter, use the method SoPreferences::getValue which returns the value of the specified configuration parameter in the Open Inventor configuration database.

SoPreferences also provides convenience methods for querying specific data types and providing a default value, e.g.,

        int numFiles = SoPreferences::getInt( "NUM_FILES", 1 );

requests the value of an integer-valued configuration parameter and returns the default value 1 if this parameter has not been specified. Corresponding "set" methods are also provided.

Other
The SoPreferences configuration mechanism is not restricted to Open Inventor parameters. Applications are welcome to use it for their own parameters if appropriate.

To request configuration debugging information, use environment variable OIV_DEBUG_CONFIG.

CONFIGURATION FILE FORMAT

White space (blank, tab) is ignored, except that there must be at least one space or tab separating the name from its value.

System environment variables may be used in a configuration file. Environment variable names begin with a $ and end at the next nonalphanumeric character. They are replaced by their corresponding value.

      # comment

      # NAME1, NAME2, and NAME3 are defined and associated
      # with value1, value2, and value3 respectively.
      NAME1     value1
      NAME2     value2    # comment
      +NAME3    value3

      # NAME4 and NAME5 are defined and no values are associated
      # with these NAMEs.
      NAME4
      +NAME5    # comment

      # If NAME6 is defined in the system environment or in one
      # of the previously loaded config files, it is now undefined.
      -NAME6    # comment
      

ALPHABETICAL LIST OF ENVIRONMENT VARIABLES

In addition to the environment variables in this alphabetic list, there are also special-purpose debug environment variables that may helpful in certain circumstances. They are listed separately below.

DIALOGVIZ_SKIN
DIALOGVIZ_SKINS_DIR
DIRECTVIZ_ACCUMULATION
DIRECTVIZ_ADAPTIVE_OVERSAMPLING
DIRECTVIZ_ADAPTIVE_OVERSAMPLING_VISUAL
DIRECTVIZ_ALWAYS_SUBSAMPLED
DIRECTVIZ_CACHE_DIR
DIRECTVIZ_CLUSTER
DIRECTVIZ_CONTROL_DIALOG
DIRECTVIZ_DIALOG_SHORTCUT
DIRECTVIZ_ENV_LIGHTS_SCALE
DIRECTVIZ_FILE_CACHING
DIRECTVIZ_FUZZY_LIGHTS
DIRECTVIZ_GLOBAL_SHADOW
DIRECTVIZ_GLOSSY_SURFACES
DIRECTVIZ_MAX_ACCUMULATION_VALUE
DIRECTVIZ_NUM_ENV_LIGHTS
DIRECTVIZ_NUM_FUZZY_SAMPLES
DIRECTVIZ_NUM_THREADS_MASTER
DIRECTVIZ_NUM_THREADS_SLAVE
DIRECTVIZ_OPENRTRT_CAMERA_SHADER
DIRECTVIZ_PROGRESSIVE_RENDERING
DIRECTVIZ_RECURSION_LIMIT
DIRECTVIZ_RENDER_STEPS
DIRECTVIZ_RENDERING_OBJECT
DIRECTVIZ_SAMPLES_PER_PIXEL
DIRECTVIZ_SOFT_SHADOWS
DIRECTVIZ_SUB_RECURSION
DIRECTVIZ_SUBSAMPLING
DIRECTVIZ_SUBSAMPLING_FACTOR
FXVIZ_SHADOW_TEXTURE_UNIT0
FXVIZ_SHADOW_TEXTURE_UNIT1
IV_ALLOW_LOCATE_HIGHLIGHT
IV_AUTO_CACHE_MAX_VALUE
IV_AUTO_CACHE_MIN_VALUE
IV_NO_TEXTURE_OBJECT
IV_NO_VERTEX_ARRAY
IV_OCTREE_MAX_DEPTH
IV_SEPARATOR_MAX_CACHES
IV_TIMER_RESOLUTION
IVTUNE_SHOW_INTERNAL_CHILDREN
IVVR_40_COMPAT
IVVR_CHECK_3DTEX_SIZE
IVVR_DEBUG
IVVR_DELAY_RENDER
IVVR_FORCE_RAYCASTING
IVVR_GPU_PICKING
IVVR_IRREGULAR_TRACE_NUM
IVVR_INCONSTANT_TRACE_LENGTH
IVVR_MAX_NUM_LOADERS
IVVR_NUM_LOADERS
IVVR_OGL_CLIPPING
IVVR_SEGY_DUMP
IVVR_SEGY_FLOATISIEEE
IVVR_SEGY_SWAPBYTES
IVVR_TF_TEX_UNIT
IVVR_USE_TEX3D
IVVR_FIRST_RESERVED_TEXTURE_UNIT
IVVR_ALPHA_THRESHOLD_INTERACTIVE
IVVR_ALPHA_THRESHOLD_STILL
LDM_USE_IN_MEM_COMPRESSION
MESHVIZ_OCTREE_CACHE_CELLBBOX
MESHVIZ_OCTREE_MAX_DEPTH
MESHVIZ_OCTREE_MAX_CELL_PER_TILE
MESHVIZ_POLYGON_OFFSET
MESHVIZ_TESSELLATION_MAX_DEPTH
OIV_3DDATA_CREASE_ANGLE
OIV_3DDATA_CROSS_SECTION_METHOD
OIV_3DDATA_USE_TRIANGLE_STRIP_SET
OIV_ALPHA_TEST
OIV_ALUT_NAME
OIV_AMBIENT_COLOR
OIV_AMBIENT_INTENSITY
OIV_ANTIALIASING_DEFAULT_MODE
OIV_AUTO_CLIPPING
OIV_AUTO_CLIP_TOLERANCE
OIV_AUTO_INTERACTIVE_MODE
OIV_BACKGROUND_COLOR
OIV_BUFFER_OBJECT_CACHE_SIZE
OIV_BUFFER_REGION_ENABLE
OIV_CACHE_MODE
OIV_CAMERA_TYPE
OIV_CG_FRAG_PROFILE
OIV_CG_VTX_PROFILE
OIV_CGM_HARDCOPY_BUFSIZE
OIV_CLIP_TEXT2
OIV_COLORWHEEL_DBUF
OIV_COMPAT_24
OIV_COMPAT_30
OIV_COMPAT_40
OIV_COMPAT_CGM_HARDCOPY_400
OIV_COMPAT_HPGL_HARDCOPY_370
OIV_COMPAT_CONTEXT_80
OIV_COMPAT_COLOR_RGBA
OIV_COMPLEXITY
OIV_COMPLEXITY_TYPE
OIV_CONFIG_FILE
OIV_CREASE_ANGLE_FIX
OIV_CSG_BUFFER_REGION
OIV_CURSOR_STYLE
OIV_DATABASE_CHECK
OIV_DEBUG_CONFIG
OIV_DEBUG_PIXEL_FORMAT
OIV_DEFAULT_ACTION_USE_ALTERNATEREP
OIV_DECIMATION_GOAL_FPS
OIV_DECIMATION_GOAL_NUM_OF_TRIANGLES
OIV_DECIMATION_PERCENTAGE
OIV_DECIMATION_STRATEGY
OIV_DISABLE_DRAGGER_CTRL_KEY
OIV_DISABLED_GL_EXTENSION_LIST
OIV_DRAW_OCTREE
OIV_ENABLE_PNG_BACKGROUND
OIV_ENABLE_INMEMORY_TEXT_FILE
OIV_PICKING_DEFAULT_MODE
OIV_ENVIRONMENT_ATTENUATION
OIV_EXTRUSION_EPSILON
OIV_FACE_TYPE
OIV_FILE_SEARCH_PATHS
OIV_FOG_COLOR
OIV_FOG_TYPE
OIV_FOG_VISIBILITY
OIV_FONT_NAME
OIV_FONT_PATH
OIV_FONT_RENDERSTYLE
OIV_FONT_SIZE
OIV_FORCE_DUAL_TEX_SHADOW
OIV_FORCE_GLU_NURBS
OIV_FORCE_PIXEL_FORMAT
OIV_FORCE_TEX_COORD_SENDING
OIV_FORCE_USE_VBO
OIV_FREETYPE_NAME
OIV_FULL_RENDER_WHEN_STILL
OIV_FULL_SCENE_ANTIALIASING
OIV_FULL_SCENE_ANTIALIASING_FILTER
OIV_GL_SMOOTHING
OIV_GLSL_DEBUG
OIV_HC_BLACK_AND_WHITE
OIV_HCGDI_APPCONTROL
OIV_HCGDI_EDGE_WIDTH
OIV_HCGDI_POLYGON_COMPAT
OIVHOME
OIVARCH
OIV_INTERACTIVE_DRAW_STYLE
OIV_INTERSECT_EPSILON
OIV_LD_LIBRARY_PATH
OIV_LIBDXF_NAME
OIV_LIBFLT_NAME
OIV_LIBJPEG_NAME
OIV_LIBPROJ4_NAME
OIV_LIBTIFF_NAME
OIV_LICENSE_DEBUG
OIV_LICENSE_FILE
OIV_LINE_WIDTH
OIV_LOWRESHIGHPERCENT
OIV_LOWRESLOWPERCENT
OIV_LOWRESRENDER
OIV_MATERIALS_PATH
OIV_MAX_ANNO_RENDER2D_SIZE
OIV_MAX_CACHES
OIV_MAX_FONT_CACHES
OIV_MAX_SHADOWMAP_SIZE
OIV_MAX_VARIANCE_SHADOWMAP_SIZE
OIV_MAX_TEXTURED_FONT_RES
OIV_MIN_TEXTURED_FONT_RES
OIV_MIN_VERTEX_VA
OIV_MIN_VERTEX_VBO
OIV_MIN_VERTEX_VAVBO_NOCACHE
OIV_MOUSE_WHEEL_ENABLE
OIV_MP_CONFIG_FILE
OIV_MULTITHREAD
OIV_MULTITEXTURING
OIV_NO_FBO
OIV_NO_FLEXNET
OIV_NURBS_FIX_TRIM_CONNECTIONS
OIV_NURBS_FORCE_GLU_CONVEXISATION
OIV_NURBS_CHECK_RATIONAL_TRIM_OUTSIDE_DOMAIN
OIV_NO_IVTUNE
OIV_IVTUNE_CONFIGURATION_FILE
OIV_IVTUNE_SHORTCUT
OIV_NO_OVERLAYS
OIV_NORMGEN_COMPAT
OIV_NORMGEN_TOLERANCE
OIV_SEPARATE_SPECULAR_SUPPORT
OIV_NO_SHADER_LAYERS_BLEND
OIV_NO_TEX_TRIM_NURBS
OIV_NO_VBO
OIV_NUM_RENDER_PASSES
OIV_NUM_SORTED_LAYERS_PASSES
OIV_OGLLIB_PATH
OIV_OIT_DEFAULT_MODE
OIV_OLD_ERROR_HANDLER
OIV_OPENAL_NAME
OIV_PBUFFER_DEBUG
OIV_PBUFFER_ENABLE
OIV_PERFCOUNTER_ENABLE
OIV_PFD_SUPPORT_COMPOSITION
OIV_PFD_SUPPORT_GDI
OIV_PICK_GENERATE_ALL_PROPERTIES
OIV_PLUGINS_DIRECTORY
OIV_POINT_SET_USE_VERTEX_ORDERING
OIV_POLYGON_OFFSET
OIV_POLYGON_OFFSET_FACTOR
OIV_POLYGON_OFFSET_STYLES
OIV_POLYGON_OFFSET_UNITS
OIV_PRIORITIZE_CHILDREN_CACHING
OIV_PSFONT_PATH
OIV_QT_TIMER_THREAD
OIV_REMOTE_ENABLE
OIV_REMOTE_PORT
OIV_REMOTE_TIMING
OIV_REMOTERENDER
OIV_REMOTERENDER_BUFFER
OIV_REMOTERENDER_DEBUG
OIV_REMOTERENDER_DISPLAY
OIV_REMOTERENDER_RGB_BGR
OIV_REPORT_ZERO_VECTORS
OIV_REQUIRE_STENCIL
OIV_SEEK_TIME
OIV_SEEK_MODIFY_ORTHOGRAPHIC_CAMERA_ORIENTATION
OIV_SHADER_CHECK_INTERVAL
OIV_SHAPE_TYPE
OIV_SHARE_GEOM_MUTEX
OIV_SHARE_LISTS
OIV_STEREO_ACTIVE
OIV_STEREO_BALANCE
OIV_STEREO_BALANCE_NEAR_FRAC
OIV_STEREO_GREENSHIFT
OIV_STEREO_OFFSET
OIV_STEREO_TESTPATTERN
OIV_STEREO_TYPE
OIV_STILL_DRAW_STYLE
OIV_STREAM_BUFFERS_NUMBER
OIV_STREAM_BUFFERS_SIZE
OIV_STROKE_FONT_PATH
OIV_SYNC_QTWIDGET_FIRSTRENDER
OIV_TEXT_ACCUMULATION
OIV_TEXT_ALIASING_FACTOR
OIV_TEXT_ALIGNMENTH
OIV_TEXT_ALIGNMENTV
OIV_TEXT_BACKFRAMELINE_WIDTH
OIV_TEXT_MARGIN
OIV_TEXT_ORIENTATION
OIV_TEXTURE_BORDER_CLAMP_ENABLE
OIV_TEXTURE_QUALITY
OIV_TEXTURED_TEXT_NO_MIPMAP
OIV_TRACKER_DIRECT_MODE
OIV_TRANSPARENCY_TYPE
OIV_TRANSPARENT_PIXEL
OIV_UPDATE_AREA_COMPAT
OIV_USE_GLOBALFIELD_TIME
OIV_USE_HEADLIGHT
OIV_USE_NPOT
OIV_USE_OOB
OIV_USER_LIBS
OIV_VERTEX_ATTRIBS
OIV_VERTEX_ORDERING
OIV_VIEWER_ANIMATION
OIV_VIEWER_DECORATION
OIV_VIEWER_POPUP_MENU
OIV_VIEWER_SIZE
OIV_VIEWER_SHOW_DIRECTVIZ_ENTRY
OIV_VIEWER_SHOW_RECORD_ENTRY
OIV_VIEWER_SHOW_FSAA_ENTRY
OIV_VIEWER_SHOW_STEREO_ENTRY
OIV_VRML_IMAGETEXTURE_MODEL_SUPPORT
OIV_WHEEL_DELTA
OIV_WINDING_TYPE
OIV_ZERO_AREA_CHECK
OIV_ZLIB_NAME
OIV_SET_RAY_PRECISION
SO_DRAGGER_DIR
SCALEVIZ_CLUSTERCOM
SCALEVIZ_CONFIG_FILE
SCALEVIZ_CONNECT_TIMEOUT
SCALEVIZ_DISABLE_GUI
SCALEVIZ_GUI_SHORTCUT
SCALEVIZ_OIRU_DISPLAY
SCALEVIZ_OIRU_PATH
SCALEVIZ_USER_LIBS
SCALEVIZD_RESOURCES_FILE
TGS_LICENSE_DEBUG
TGS_LICENSE_FILE
TVIZ_COMPAT_20
TVIZ_VIEWER_DATA_PATH
VOLUMEVIZ_CENTERED_DICOM
VSG_LICENSE_DEBUG
VSG_LICENSE_FILE

DIALOGVIZ_SKIN
Affects DialogViz. Specifies the skin that will be used for DialogViz 3D component rendering. Default value is "default". The value should be the name of the directory containing the skin components. The skin examples available with Open Inventor are "default", "texture", and "transparent". See also DIALOGVIZ_SKINS_DIR.

DIALOGVIZ_SKINS_DIR
Affects DialogViz. Specifies the path to the directory containing DialogViz skin directories. By default, the skin directory is $OIVHOME/data/DialogViz/Skins/. See also DIALOGVIZ_SKIN.

DIRECTVIZ_ACCUMULATION
Affects DirectViz. If set to 1, enables accumulation oversampling. The value can be set programmatically using the SoDirectVizManager::accumulation field. Default value is 1.

DIRECTVIZ_ADAPTIVE_OVERSAMPLING
Affects DirectViz. If set to 1, enables adaptive oversampling. The value can be set using the SoDirectVizManager::adaptiveOversampling field. Default value is 0.

DIRECTVIZ_ADAPTIVE_OVERSAMPLING_VISUAL
Affects DirectViz. If set to 1 and DIRECTVIZ_ADAPTIVE_OVERSAMPLING is set to 1, enables visualisation of adaptive oversampled pixels (Oversampled pixels are then colored). Default value is 0.

DIRECTVIZ_ALWAYS_SUBSAMPLED
Affects DirectViz. If set to 1, DirectViz rendering is always subsampled Default value is 0.

DIRECTVIZ_CACHE_DIR
Affects DirectViz. Specifies the directory (absolute path) to contain the DirectViz render caches. The value can be set programmatically using SoDirectVizManager::setCacheDirectory().

DIRECTVIZ_CLUSTER
Affects DirectViz. If greater than 0, requests that DirectViz be run in cluster mode, and specifies the desired number of slaves. If set to 0, DirectViz runs in stand-alone mode. Default value is 0.

DIRECTVIZ_CONTROL_DIALOG
Affects DirectViz. If set to 1, enables display of the DirectViz control dialog. The value can be set programmatically using the SoDirectVizManager::controlDialog field, or with showDirectVizDialog() of the corresponding Open Inventor viewer. Default value is 1.

DIRECTVIZ_DIALOG_SHORTCUT
Affects DirectViz. If set, this value overrides the default keyboard key which combined with the shift key launches the Directviz dialog. The value format is hexadecimal, see SoKeyboardEvent.h for possible values. Default value is 0xFFC5 (F8 key)

DIRECTVIZ_ENV_LIGHTS_SCALE
Affects DirectViz. Sets the scale applied to environment lights luminance. The value can be set using the SoDirectVizManager::envLightIntensityScale field. Default value is 1.

DIRECTVIZ_FILE_CACHING
Affects DirectViz. If set to 1, enables file caching. The value can be set programmatically using the SoDirectVizManager::fileCaching field. Default value is 0.

DIRECTVIZ_FUZZY_LIGHTS
Affects DirectViz. If set to 1, enables fuzzy light effects. The value can be set using the SoDirectVizManager::fuzzyLights field. Default value is 0.

DIRECTVIZ_GLOBAL_SHADOW
Affects DirectViz. If set to 1, enables global shadowing. The value can be set programmatically using the SoDirectVizManager::globalShadowing field. Default value is 0.

DIRECTVIZ_GLOSSY_SURFACES
Affects DirectViz. If set to 1, enables glossy surfaces effects. The value can be set using the SoDirectVizManager::glossySurfaces field. Default value is 0.

DIRECTVIZ_MAX_ACCUMULATION_VALUE
Affects DirectViz. The value can be set programmatically using the SoDirectVizManager::maxAccumulationValue field. Default value is 10.

DIRECTVIZ_NUM_ENV_LIGHTS
Affects DirectViz. Set the number of environment lights to use. The value can be set using the SoDirectVizManager::numEnvLights field. Default value is 0.

DIRECTVIZ_NUM_FUZZY_SAMPLES
Affects DirectViz. Specifies the number of samples used to generate glossy effects and soft shadows. Default value is 1.

DIRECTVIZ_NUM_THREADS_MASTER
Affects DirectViz. Specifies the number of threads to be used by a multi-core or multi-processor machine. The number of threads should correspond to the number of processors possibly multiplied by the number of cores of each processor; otherwise there may be some unnecessary overhead. Default value is 4.

DIRECTVIZ_NUM_THREADS_SLAVE
Affects DirectViz. When a multi-processor or multi-core machine is used as a slave in a cluster configuration, specifies the number of threads per slave. The number of threads should correspond to the number of processors possibly multiplied by the number of cores of each processor; otherwise there may be some unnecessary overhead. Default value is 4.

DIRECTVIZ_OPENRTRT_CAMERA_SHADER
Affects DirectViz. If set to 1, uses OpenRTRT camera shader instead of DirectViz's one. Default value is 0.

DIRECTVIZ_PROGRESSIVE_RENDERING
Affects DirectViz. If set to 1, enables progressive rendering. The value can be set programmatically using the SoDirectVizManager::progressiveRendering field. Default value is 0.

DIRECTVIZ_RECURSION_LIMIT
Affects DirectViz. The recursion limit is the maximum number of times that a ray can "bounce" within the scene when rendering a frame. The higher the recursion limit is, the more accurate the scene appears. The value can be set programmatically using the SoDirectVizManager::recursionLimit field. Default value is 20.

DIRECTVIZ_RENDER_STEPS
Affects DirectViz. Specifies the number of steps between a subsampled render and full rendering. Must be greater than 0. The value can be set programmatically using the SoDirectVizManager::numProgressiveRenderingSteps field. Default value is 5.

DIRECTVIZ_RENDERING_OBJECT
Affects DirectViz. Specifies the DirectViz shader package. See the User's Guide for details. Default value is "RTX".

DIRECTVIZ_SUB_RECURSION
Affects DirectViz. Specifies the recursion depth limit (when sub-sampling is active). The value can be set programmatically using the SoDirectVizManager::subRecursion field. Default value is 1.

DIRECTVIZ_SAMPLES_PER_PIXEL
Affects DirectViz. Sets the number of per pixel samples. Default value is 1.

DIRECTVIZ_SHOW_VIEWER_ENTRY
Affects DirectViz. If set to 0, DirectViz viewer menu entry is not shown Default value is 1.

DIRECTVIZ_SOFT_SHADOWS
Affects DirectViz. If set to 1, enables soft shadows. The value can be set using the SoDirectVizManager::softShadows field. Default value is 0.

DIRECTVIZ_SUBSAMPLING
Affects DirectViz. If set to 1, enables subsampling. Sub-sampling the scene consists of rendering a smaller (i.e., lower resolution) image when the viewer is not still. The value can be set programmatically using the SoDirectVizManager::subSampling field. Default value is 1.

DIRECTVIZ_SUBSAMPLING_FACTOR
Affects DirectViz. Specifies the subsampling factor. Values can range from 0.1 to 1.0 (full resolution). The value can be set programmatically using the SoDirectVizManager::subSamplingFactor field. Default value is 0.5.

FXVIZ_SHADOW_TEXTURE_UNIT0
SoShadowGroup reserves texture unit FXVIZ_SHADOW_TEXTURE_UNIT0 and FXVIZ_SHADOW_TEXTURE_UNIT1 for its rendering. If these values are not set, texture units 1 and 2 are used. These values can't be greater than 3.

FXVIZ_SHADOW_TEXTURE_UNIT1
SoShadowGroup reserves texture unit FXVIZ_SHADOW_TEXTURE_UNIT0 and FXVIZ_SHADOW_TEXTURE_UNIT1 for its rendering. If these values are not set, texture units 1 and 2 are used. These values can't be greater than 3.

IV_ALLOW_LOCATE_HIGHLIGHT
Affects SoLocateHighlight and SoTransformerDragger.
Default is false. If false, locate highlighting (mouse-over feedback) is disabled unless the application explicitly sets each SoLocateHighlight node's 'mode' field to AUTO. If true, an SoLocateHighlight node's mode field is automatically set to AUTO. Effectively locate highlighting for the SoTransformerDragger can only be enabled by setting this variable to true.

IV_AUTO_CACHE_MIN_VALUE
IV_AUTO_CACHE_MAX_VALUE
These influence when automatic caching happens. If set, then shapes with a number of vertices smaller than IV_AUTO_CACHE_MIN_VALUE or greater than IV_AUTO_CACHE_MAX_VALUE will request that their parent separator not use render caching. This can be useful, for example, when creating a render cache for a very large geometry would use too much additional memory.

IV_NO_TEXTURE_OBJECT
Tells Open Inventor not to use OpenGL 1.1 texture objects. If some textures are missing or otherwise displayed incorrectly, try setting this variable.

IV_NO_VERTEX_ARRAY
Tells Open Inventor not to use OpenGL vertex arrays or vertex buffer objects. You can use this environment variable to globally prohibit use of vertex arrays and VBOs. The default is false. Note the "double negative" name. False means that vertex arrays and VBOs are allowed. In most cases there is no reason to set this variable except possibly to test performance without vertex arrays or in the unlikely event that there is a serious bug with the VBO implementation in the current driver/GPU.

IV_OCTREE_MAX_DEPTH
Affects SoOctreeOrdering.
Specifies the maximum depth used during octree ordering. Default: 8

IV_SEPARATOR_MAX_CACHES [Deprecated]
Deprecated, please use OIV_MAX_CACHES instead.

IV_TIMER_RESOLUTION [Windows only]
Specifies how often Open Inventor's internal clock ticks. Effectively it sets the minimum time between render traversals when animating (including spin animation and animation performed by engines). Make sure the value is less than the time it takes to render one frame of your scene. Default: 10 ms.

IVTUNE_SHOW_INTERNAL_CHILDREN
IvTune should allow user to expand hidden children, for example in draggers and manipulators. Default: FALSE.

IVVR_40_COMPAT
Forces VolumeViz 4.0 compatible behavior. For example, paging mode is the default, slices are not affected by scene graph lights, etc.

IVVR_CHECK_3DTEX_SIZE
Set this config parameter to enable 3D texture size checking for VolumeViz. If the current volume cannot be loaded on the hardware as a 3D texture, a warning is posted and VolumeViz automatically switches to 2D textures to draw the picture.

IVVR_DEBUG
Set to 1 to enable debug trace output for VolumeViz.

IVVR_DELAY_RENDER
Sets the VolumeViz delayedRendering flag.
When this flag is TRUE (1), VolumeViz drawing nodes (e.g. SoOrthoSlice) are considered "transparent" objects by Open Inventor. They may be delayed (until after all opaque objects) and/or sorted according to the current transparency type (see SoGLRenderAction). This may result in a more correct image if there is opaque geometry intersecting the volume. However delayed/sorted rendering may slightly decrease performance. For compatibility with earlier versions of VolumeViz the default is FALSE. This flag may also be set using SoVolumeRendering::setDelayedRendering().

IVVR_FORCE_RAYCASTING
Affects the SoVolumeRender rendering engine. Default is TRUE (use raycasting). Two different Volume Rendering techniques are available:

IVVR_GPU_PICKING
When this flag is TRUE (1), SoVolumeRender (VolumeViz) will use the GPU to compute the picked voxel color. Default is TRUE.

IVVR_IRREGULAR_TRACE_NUM
Affects SoVRSegyFileReader.
Although in most cases the SEGY reader can automatically detect when the number of traces per line in a SEGY file is not uniform, in some cases it cannot. You can set this environment variable to request the use of a more sophisticated file parsing algorithm. However, be aware that the initialization for file reading will take longer when this environment variable is set.

IVVR_INCONSTANT_TRACE_LENGTH
Affects SoVRSegyFileReader.
Although in most cases the SEGY reader can automatically detect when the length of traces in a SEGY data file is not uniform, in some cases it cannot. You can set this environment variable to request the use of a more sophisticated file parsing algorithm. However, be aware that the initialization for file reading will take significantly longer when this environment variable is set.

IVVR_MAX_NUM_LOADERS
Affects SoVolumeRender.
Specifies the maximum number of loading threads to be used in VolumeViz LDM mode.

IVVR_NUM_LOADERS
Affects SoVolumeRender.
Specifies the initial number of loading threads to be used in VolumeViz LDM mode. Default is 4. This value can be set programmatically using SoVolumeRendering::setNumIO().

IVVR_OGL_CLIPPING
Affects SoVolumeGeometry.
Starting with VolumeViz 6.0, SoVolumeGeometry nodes are clipped using software clipping rather than OpenGL clipping. If you need the version 5.0 behavior, set this environment variable to 1.

IVVR_SEGY_DUMP
Affects SoVRSegyFileReader.
Requests that the file and trace headers be written to a file while processing the SEGY data file. The output file is named ivvrSegyDump.txt in the current working directory. This information may be helpful if the SEGY reader fails to read the file correctly.

IVVR_SEGY_FLOATISIEEE
Affects SoVRSegyFileReader.
If TRUE (1), indicates that floats are written in IEEE floating point format. Normally the SEGY reader is able to detect this, but if necessary you can set this environment variable.

IVVR_SEGY_SWAPBYTES
Affects SoVRSegyFileReader.
Set to 1 to force byte swapping, 0 to force no byte swapping. Normally the SEGY reader is able to detect if byte swapping is needed, but if necessary you can set this environment variable.

IVVR_TF_TEX_UNIT
Affects SoTransferFunction
Allows you to specify the OpenGL texture unit to be used for storing VolumeViz transfer functions. The default is unit 0.

IVVR_USE_TEX3D
Controls when VolumeViz will use OpenGL 3D texturing.
All boards that report OpenGL version 1.2 or higher are required to support 3D texturing and will render the correct image. However on some boards (e.g. GeForce2) this support is not hardware accelerated and may be very slow. By default VolumeViz tries to detect this situation and automatically disable use of 3D textures, but there are cases where it is desirable to use 3D textures even if they are slow. In these cases set IVVR_USE_TEX3D to 1. Valid values are:

On some boards, e.g. ATI, WhenFast is the same as Always because we can't reliably detect how 3D textures are implemented.

LDM_USE_IN_MEM_COMPRESSION
Default is true. This environment variable (see SoPreferences) affects more than its name implies. Please read carefully.

VolumeViz always manages data as "tiles", regardless of the data format. In many cases VolumeViz must uncompress or create the tiles at run time. These cases include compressed LDM format files, in-memory volumes, data formats other than LDM (e.g. DICOM or SEGY) and any custom volume reader that does not implement the readTile() method. In the in-memory and non-LDM cases, VolumeViz must create both the full resolution tiles and the low resolution (sub-sampled) tiles.

If this variable is false (recommended for performance), then VolumeViz stores all tiles in the main tile cache, up to the max main memory limit specified using SoLDMGlobalResourceParameters. For compressed LDM data, each compressed tile is uncompressed and the uncompressed data is stored. In this case using compressed LDM data does not reduce memory usage, but tiles in the main tile cache can be quickly accessed and transferred to the GPU. For in-memory and non-LDM data, both full resolution and low resolution (sub-sampled) tiles are stored in the main tile cache.

If this variable is true (the default value), then for compressed LDM data, VolumeViz stores the compressed tiles "as is" in the main tile cache. This allows more tiles to be cached in the same amount of memory. For an in-memory volume or non-LDM data volume VolumeViz only stores the low resolution (sub-sampled) tiles in the main tile cache. In all cases VolumeViz keeps a small number of uncompressed, full resolution tiles in memory in a special "buffer object cache". This memory is in addition to the memory allowed for the main tile cache. See the SoBufferObject method getBufferObjectCache() for the current default buffer object cache size. If a tile's data is needed and that tile is not in the buffer object cache, then the tile must be uncompressed or recreated. This overhead can be significant.
Note:

IVVR_FIRST_RESERVED_TEXTURE_UNIT
Specifies the range of reserved texture units in VolumeViz for various nodes :

If IVVR_FIRST_RESERVED_TEXTURE_UNIT is not set, its default value is SoFragmentShader::getMaxTextureImageUnit()-SoShaderProgramgetNumReservedTextures(). Note the value returned by SoShaderProgram::getNumReservedTextures() may change between versions and must not be assumed constant. Also note the maximum number of texture units depends on the graphics hardware.

IVVR_ALPHA_THRESHOLD_INTERACTIVE
Used in raycasting mode only (the default). Specifies the cumulative alpha opacity) value at which which the ray stops traversing the volume when INTERACTIVE (for example the user is moving the camera). This value should be >= 0.95 to avoid artifacts and must be < 1. A low value increases rendering speed, especially with very transparent volumes but may create artifacts. See also IVVR_ALPHA_THRESHOLD_STILL. Added in version 9.1. Default is 0.95.

IVVR_ALPHA_THRESHOLD_STILL
Same as IVVR_ALPHA_THRESHOLD_INTERACTIVE but in STILL mode. Default is 0.99.

MESHVIZ_OCTREE_CACHE_CELLBBOX
Affects MeshViz.
Specifies if the cell boundingboxes must be cached when building the octree associated to a mesh. This speeds up the search for cells in the octree when using MoMeshPointProbe, MoMeshGridPlaneSlice and MoMeshStreamline nodes, or pointprobes, gridplaneslice and streamline extractors for all kind of meshes (MiPointProbeUnstructured, MiGridPlaneSliceExtractUnstructured, MiStreamlineExtractUnstructured) except regular and rectilinear that do not use octrees.
The default value is 0 (not cached).

MESHVIZ_OCTREE_MAX_CELL_PER_TILE
Affects MeshViz.
Specifies the maximum number of cells that can be contained in a tile of the octree built when using MoMeshPointProbe, MoMeshGridPlaneSlice and MoMeshStreamline nodes, or pointprobes, gridplaneslice and streamline extractors for all kind of meshes (MiPointProbeUnstructured, MiGridPlaneSliceExtractUnstructured, MiStreamlineExtractUnstructured) except regular and rectilinear that do not use octrees.
The default value is 40.

MESHVIZ_OCTREE_MAX_DEPTH
Affects MeshViz.
Specifies the maximum depth allowed to build the octree associated to a mesh when using MoMeshPointProbe, MoMeshGridPlaneSlice and MoMeshStreamline nodes, or pointprobes, gridplaneslice and streamline extractors for all kind of meshes (MiPointProbeUnstructured, MiGridPlaneSliceExtractUnstructured, MiStreamlineExtractUnstructured) except regular and rectilinear that do not use octrees.
The default value is 6.

MESHVIZ_POLYGON_OFFSET
Affects MoMeshRepresentation.
Specifies if surface representations must be automaticallty offset with a SoPolygonOffset node, to allow line representations on top without artifacts.
However SoPolygonOffset can introduce other artifacts on surfaces when the two-sided lighting mode is active. The default value is TRUE (1).

MESHVIZ_TESSELLATION_MAX_DEPTH
Affects MeshViz.
Specifies the maximum depth allowed while tessellating a non-linear cell using the provided implementations of the MiTessellator interface for extractions from quadratic meshes. This parameter makes the tessellation stop once the specified depth has been reached. This prevents from spending too much time in this process. However, the tolerance given by MiEdgeErrorMetric might be not achieved if the maximum depth is low.
The default value is 10 which leads to a maximum of 2^10 = 1024 resulting edges per tessellated edge.

OIV_3DDATA_CREASE_ANGLE
Default value of the field PoMesh::creaseAngle. Default is 0.0. Set the value to 0.8 for compatibility with MeshViz 5.0 and earlier.

OIV_3DDATA_CROSS_SECTION_METHOD
Affects PoMeshCrossSection.
Specifies the method used for computing a PoMeshCrossSection.

Use PoMeshCrossSection::setCrossSectionMethod to specify the cross section computation method programmatically.

OIV_3DDATA_USE_TRIANGLE_STRIP_SET
Affects PoMeshLevelSurf, PoMeshCrossSection.
Specifies the Open Inventor primitive used to draw an isosurface.

PoMeshCrossSection uses this variable only when the cross section method is ISOSURFACE (see OIV_3DDATA_CROSS_SECTION_METHOD).

OIV_ALPHA_TEST
Affects SoGLRenderAction.
Enables or disables the OpenGL alpha test for rendering. Default is 0 (alpha test is disabled).

OIV_ALUT_NAME
Affects SoDynamicLibManager.
Allows you to use your own ALut dynamic library. Do not add the suffix. Do not add the "lib" prefix on UNIX systems. Do not add the final "D" used in the debug name. Default is "IvDLALut".

OIV_AMBIENT_COLOR
Affects SoEnvironment.
Specifies the default color of ambient lighting. The value is specified as three floats (0.0 to 1.0) representing the RGB values of the color. The value can be set programmatically using the SoEnvironment::ambientColor field.

OIV_AMBIENT_INTENSITY
Affects SoEnvironment.
Specifies the default intensity of ambient lighting. The value can be set programmatically using the SoEnvironment::ambientIntensity field.

OIV_ANTIALIASING_DEFAULT_MODE
Force a different antialiasing method when the default mode (AUTO) is used. Default is SMAA. The preference value can be SMAA, FXAA, FSAA or SUPERSAMPLING.

OIV_AUTO_CLIPPING
Affects SoWinViewer, SoQtViewer, SoXtViewer.
Specifies the default auto clipping flag (0=off, 1=on). The auto clipping flag can be set programmatically using the setAutoClipping method of the viewers classes above.

OIV_AUTO_CLIP_TOLERANCE
Affects SoWinViewer, SoQtViewer, SoXtViewer.
Specifies the default auto clip tolerance (a float). The tolerance can be set programmatically using the setAutoClipTolerance method of the viewers classes above.

OIV_AUTO_INTERACTIVE_MODE
Affects SoSceneManager and therefore the viewer classes, e.g. SoWinViewer, SoQtViewer, SoXtViewer.
Specifies the default autoInteractiveMode flag (0=off, 1=on). Default is false. By default only viewer and dragger interaction will switch the rendered scene in interactive complexity mode. When this option is enabled the sceneManager, based on any notification, will make this decision. It is particularly useful for scenes that have a very long rendering time in STILL mode compared to INTERACTIVE mode (often the case with VolumeViz nodes). An application that automatically triggers animation based on a script (camera path) might prefer to disable this mode in order to keep good rendering quality. This mode can also be set :

OIV_BACKGROUND_COLOR
Affects SoSceneManager, SoWinRenderArea, SoXtRenderArea, SoQtRenderArea, SoMPEGRenderer, SoXtMPRenderArea, SoWinMPRenderArea, SoOffscreenRenderer, SoBigImageRenderer.
Specifies the default background color. The value is specified as three floats (0.0 to 1.0) representing the RGB values of the color. The background color can be set programmatically using the setBackgroundColor method of the classes above.

OIV_BUFFER_OBJECT_CACHE_SIZE
Affects SoCpuBufferObjectCache which manages a cache of SoCpuBufferObject objects. SoBufferObject creates an instance of this class that is primarily used for the LDM tile cache (see SoLDMGlobalResourceParameters for more information). Default size is 50.

OIV_BUFFER_REGION_ENABLE
Affects SoBufferRegion, SoGLRenderAction.
If not specified, the OpenGL extension bufferRegion is enabled and will be used if available on your graphics hardware. Set to zero to disable use of buffer regions.

OIV_CACHE_MODE
If set to 1, Open Inventor 3.0 render caching behavior is used. This may be necessary to produce correct results with some graphics boards.

OIV_CAMERA_TYPE
Affects IvfDocument, IvfRenderArea, SoSceneViewer, SoQtViewer, SoWinViewer, SoXtViewer.
Specifies what kind of camera the viewer should create if none is provided. By default, a Perspective camera is created. To request an Orthographic camera, specify "o", "O", or "0".

OIV_CG_FRAG_PROFILE
Specifies the Cg profile to be used for fragment programs. arbfp1 by default. See SoShaderObject for details.

OIV_CG_VTX_PROFILE
Specifies the Cg profile to be used for vertex programs. arbvp1 by default. See SoShaderObject for details.

OIV_CGM_HARDCOPY_BUFSIZE
Affects SoVectorizeCGMAction.
Specifies the buffer size in bytes for storing CGM calls before writing them to the disk. The default buffer size is 1048576 bytes (1 megabyte). If set to 1, no buffering is done.

OIV_CLIP_TEXT2
When this variable is set, 2D text strings, which are rendered using bitmaps, will be correctly clipped when the string start point is outside the viewport (in previous releases the entire string disappeared).
NOTE: When this variable is set, auto render caching is suppressed by SoText2 in all cases (by default it is not suppressed for single line strings with default LEFT justification). This is really only useful for applications rendering to multiple screens, for example using the MultiPipe extension.

OIV_COLORWHEEL_DBUF [Windows only]
Some displays do not correctly handle the interaction between the hardware cursor and OpenGL drawing in the front buffer. By default the color wheel is single buffered and uses a save/restore scheme when the user drags the "marker". If this produces visual artifacts, try setting this environment variable to force double-buffered rendering.

OIV_COMPAT_24 [Windows only]
If this variable is set to any value, then the Open Inventor 2.4 pixel format selection code is used. Stereo is not possible.

OIV_COMPAT_30
If set to 1, the Open Inventor 3.0 code for handling 2- and 4-component texture images will be used. The 3.0 behavior could reduce performance or produce unexpected results for images that are actually opaque, so it is unlikely you will ever need to set this variable.

OIV_COMPAT_40
If set to 1, the Open Inventor 4.0 code for checking the OpenGL extensions will be used. The 4.0 behavior can detect some extensions even if they are not available on the current graphics hardware.

OIV_COMPAT_CGM_HARDCOPY_400
Affects SoVectorizeCGMAction.
If set to 1, CGM writing onto disk is not buffered (the buffering is only done by stream data writing of the operating system). This value takes precedence over OIV_CGM_HARDCOPY_BUFSIZE.

OIV_COMPAT_HPGL_HARDCOPY_370
Affects SoVectorizeHPGLAction.
If set to 1, reproduces the (incorrect) HardCopy 3.7 line pattern printing behavior. It is unlikely you will ever need to set this variable.

OIV_COMPAT_CONTEXT_80
Affects the state of the compatibility mode for the contexts.

If set to 0 (default) the actual implementation of SoGLContext will be used to manage the OpenGL contexts.

If set to 1 SoGLContext will call the OpenGL makeCurrent function each time the bind() function is called. The unbind() function won't do anything; this mode provides a way to have a valid context outside any traversal. It's useful when third party APIs do direct OpenGL calls.

If set to 2 the getCurrent() function will check the actual OpenGL state instead of using the SoGLContext managment functions. This will prevent issues related to third party code which could call OpenGL makeCurrent() function instead of using SoGLContexts.

OIV_COMPAT_COLOR_RGBA
Starting with Open Inventor 9.0, SbColorRGBA packed color storage is consistent with documentation: previously, alpha value using packed color access method was considered as transparency. Nevertheless, for compatibility reason, user can go back to previous behavior by setting the OIV_COMPAT_COLOR_RGBA to 1.

OIV_COMPLEXITY
Affects SoComplexity.
Specifies the default complexity (0.0 to 1.0). The complexity can be set programmatically using the SoComplexity::value field.

OIV_COMPLEXITY_TYPE
Affects SoComplexity.
Specifies the default complexity type. Valid values are OBJECT_SPACE, SCREEN_SPACE, BOUNDING_BOX. The complexity type can be set programmatically using the SoComplexity::type field.

OIV_CONFIG_FILE
Specifies the full path of the configuration file.

OIV_CREASE_ANGLE_FIX
When set, forces FLAT shaded rendering when creaseAngle = 0. Strictly speaking this is the correct behavior (see SoShapeHints), however it is incompatible with the historical behavior of Open Inventor and may change the appearance of geometry in existing applications. Applied only to SoIndexedTriangleStripSet and SoTriangleStripSet nodes.

OIV_CSG_BUFFER_REGION [Windows only] [SolidViz only]
Allows the SolidViz CSGGroup node rendering algorithm to use the OpenGL Buffer Region extension to speed up save/restore of Z-Buffer task. Classical save and restore of Z-Buffer (glDrawPixels/glReadPixels) is used if this variable is not defined. KTX_BUFFER_REGION: Uses the GL_KTX_buffer_region extension. ARB_BUFFER_REGION: Uses the WGL_ARB_buffer_region extension.

OIV_CURSOR_STYLE [Windows only]
Specifies the cursor style.

The cursor can also be controlled programmatically. See SoWinViewer.

OIV_DATABASE_CHECK
If set, OpenInventor will perform advanced checks on database objects during intialization and running steps. This variable only applies to debug compilation mode (_DEBUG preprocessor option). NOTE: This variable is all the most useful for users that develop their own Openinventor nodes. User must be aware that even if helpful, this variable leads to a larger memory usage.

OIV_DEBUG_CONFIG
If set, requests that configuration debug output be generated. NOTE: This configuration parameter must be set in the system environment, not in a configuration file.

OIV_DEBUG_PIXEL_FORMAT [Windows only]
If this variable is set to 1, Open Inventor programs will write a file (named pixel.txt) that indicates which pixel format was chosen.

OIV_DEFAULT_ACTION_USE_ALTERNATEREP
If this variable is set to 1, then all action will ask for a potential alternal representation to traversed node. Default is FALSE.

OIV_DECIMATION_GOAL_FPS
Affects SoWinViewer, SoXtViewer, SoQtViewer.
Specifies the default goal number of frames per second. The value can be set programmatically using the setGoalFramesPerSecond method of the classes above.

OIV_DECIMATION_GOAL_NUM_OF_TRIANGLES
Affects SoWinViewer, SoXtViewer, SoQtViewer.
Specifies the default goal number of triangles. The value can be set programmatically using the setGoalNumberOfTriangles method of the classes above.

OIV_DECIMATION_PERCENTAGE
Affects SoWinViewer, SoXtViewer, SoQtViewer.
Specifies the default decimation percentage. The value can be set programmatically using the setFixedPercentage method of the classes above.

OIV_DECIMATION_STRATEGY
Affects SoWinViewer, SoXtViewer, SoQtViewer.
Specifies the default decimation strategy. Valid values are: NORMAL, FIXED_NUM_TRIANGLES, FRAMES_PER_SECOND, FIXED_PERCENTAGE. The value can be set programmatically using the setDecimationStrategy method of the classes above.

OIV_DISABLE_DRAGGER_CTRL_KEY
Affects SoDragPointDragger, SoHandleBoxDragger, SoTrackballDragger, SoTransformerDragger, SoHandleBoxManip, SoTrackballManip, SoTransformerManip.
If set to 1, when the CTRL key is pressed over the dragger, nothing happens. Otherwise, the CTRL key has its usual behavior, which varies from dragger to dragger.

OIV_DISABLED_GL_EXTENSION_LIST
This variable contains a comma separated list of OpenGL extension names to disable explicitly in software. This is useful when encountering a GPU driver bug, or to check performance impact with or wihout a specific extension. See SoGLExtension or www.opengl.org for a list of extension names.

OIV_DRAW_OCTREE
Affects SoOctreeOrdering.
If this environment variable is set and your application uses an SoOctreeOrdering node, an outline of the octree quadrants will be drawn. This is a debugging aid to allow you to see how your scene is distributed throughout the octree.

OIV_ENABLE_PNG_BACKGROUND
Affects SoPNGImageRW (and texture nodes that load PNG files).
Enables the merge of the background into the displayed image. The background replaces transparent parts of the image.

OIV_ENABLE_INMEMORY_TEXT_FILE
Affects SoInput::readTextFile. If TRUE (the default) SoInput::readTextFile will first check if the requested file has been cached in memory using the SoInput::addInMemoryTextFilefilename call. If FALSE, the file will be read from disk and must be accessible.

OIV_PICKING_DEFAULT_MODE
Affects SoRayPickAction for geometric shapes like SoIndexedFaceSet. If "GPU", picking will use GPU picking for shapes implementing this technique. If "CPU", ordinary CPU method is used for all shapes. If not defined, best picking method is automatically chosen, but can be locally modified by using an SoPickStyle node. Please refer to SoRayPickAction documentation for more details. This SoPreference only impacts OIV shapes. For VViz shapes, please refer to IVVR_GPU_PICKING .

OIV_ENVIRONMENT_ATTENUATION
Affects SoEnvironment.
Specifies the default squared, linear, and constant light attenuation coefficients (in that order) with respect to distance of light from surface (for Phong lighting). The values are specified as three floats. The background color can be set programmatically using the SoEnvironment::attenuation field.

OIV_EXTRUSION_EPSILON
Affects SoExtrusion and SoVRMLExtrusion.
If your extrusion appears to twist unexpectedly, try setting this value to a slightly smaller number. The default value is .998.

OIV_FACE_TYPE
Affects SoShapeHints.
Specifies the default face type. Valid values are UNKNOWN, CONVEX. The face type can be set programmatically using the SoShapeHints::faceType field.

OIV_FILE_SEARCH_PATHS
Semi-colon separated path list used to initialize the directory list in SoInput. Most Open Inventor classes that take a file name (for textures, shaders, etc) will search the directories in this list to find the file. Exception: SoDataSet, SoVolumeData and derived classes.

OIV_FOG_COLOR
Affects SoEnvironment.
Specifies the default fog color. The value is specified as three floats (0.0 to 1.0) representing the RGB values of the color. The value can be set programmatically using the SoEnvironment::fogColor field.

OIV_FOG_TYPE
Affects SoEnvironment.
Specifies the default fog type. Valid values are: NONE, HAZE, FOG, SMOKE. The value can be set programmatically using the SoEnvironment::fogType field.

OIV_FOG_VISIBILITY
Affects SoEnvironment.
Specifies the default distance at which fog totally obscures objects. The value can be set programmatically using the SoEnvironment::fogVisibility field.

OIV_FONT_NAME
Affects SoFont.
Specifies the default font name. The value can be set programmatically using the SoFont::name field.

OIV_FONT_PATH
Contains a colon-separated or semicolon-separated list of directories to search for font definition files. NOTE: This item cannot be set via SoPreferences or a configuration file. It must be set in the environment (e.g., using setenv). See SoFont for more information.

OIV_FONT_SIZE
Affects SoFont.
Specifies the default font size. The value can be set programmatically using the SoFont::size field.

OIV_FONT_RENDERSTYLE
Affects SoFont.
Specifies the default font render style. Valid values are POLYGON, TEXTURE, POLYGON_AND_OUTLINE. The value can be set programmatically using the SoFont::renderStyle field.

OIV_FORCE_DUAL_TEX_SHADOW
Setting this variable to 1 tells the FXViz shadow algorithm to not use the OpenGL Shadow extension. This is only useful if your graphics board claims to support the extension but draws the shadows incorrectly or very slowly (e.g., some GeForce2-based boards).

OIV_FORCE_GLU_NURBS
Affects SoNurbsSurface, SoIndexedNurbsSurface.
If set to 1, then NURBS are tessellated and rendered using GLU.

OIV_FORCE_PIXEL_FORMAT [Windows only]
If this environment variable is set to a positive integer, Open Inventor will try to use it as the pixel format. You can list the available pixel formats with the "oglinfo" utility that is provided with the Open Inventor for Windows SDK. To request a pixel format programmatically, use the setPixelFormat method of SoWinGLWidget.

The following special values are provided for your convenience:

OIV_FORCE_TEX_COORD_SENDING
Affects shapes derived from SoVertexShape, and only affects user-specified texture coordinates. If set to 1 (TRUE), forces the sending of texture coordinates to the OpenGL pipeline without having a texture bound to the corresponding texture unit. This is useful when working with programmable shaders. Default is 0 (FALSE). The value can be set programmatically using the SoTextureCoordinate2::forceSending field or the SoTextureCoordinate3::forceSending field.

OIV_FORCE_USE_VBO
Affects the SoShapeHints::useVBO default value. Since Open Inventor 8.1 the default value for SoShapeHints::useVBO is TRUE (1), using this variable, you can force back it to FALSE (0). Despite the name, this environment variable just sets the default value for the useVBO field of SoShapeHints nodes created by the application. The default is true. Setting the variable to true or false does not guarantee VBOs will (or will not) be used, because the application might set the useVBO field on some instances of SoShapeHints. Note that vertex arrays will still be used unless specifically prohibited.

OIV_FREETYPE_NAME
Affects SoDynamicLibManager.
Allows you to use your own Freetype dynamic library. Do not add the suffix. Do not add the "lib" prefix on UNIX systems. Do not add the final "D" used in the debug name. Default is "IvDLFreetype".

OIV_FULL_RENDER_WHEN_STILL
Affects SoWinViewer, SoQtViewer, SoXtViewer.
Specifies if the viewer will be default render at full resolution when it sits still for a certain period of time. (0=no, 1=yes). This flag can be set programmatically using the enableFullRenderingWhenStill method of the viewers classes above.

OIV_FULL_SCENE_ANTIALIASING
Affects SoFullSceneAntialiasing.
Specifies whether full scene antialiasing (if already enabled) will be applied to subsequent shapes (0=no, 1=yes). The value can be set programmatically using the SoFullSceneAntialiasing::on field. See SoFullSceneAntialiasing for information on enabling full scene antialiasing.

OIV_FULL_SCENE_ANTIALIASING_FILTER
Affects SoFullSceneAntialiasing.
Specifies which kinds of primitives should be antialiased when full scene antialiasing is enabled. Valid values are ALL or any combination of LINES, POINTS, POLYGONS, and TEXT. The value can be set programmatically using the SoFullSceneAntialiasing::filter field. See SoFullSceneAntialiasing for complete details.

OIV_GL_SMOOTHING
Affects SoGLRenderAction.
Specifies the default smoothing flag (0=no smooth, 1=smooth). The smoothing flag can be set programmatically using SoGLRenderAction::setSmoothing.

OIV_SET_RAY_PRECISION
Affects SoRayPickAction when defining a ray using the setRay method
Specify (in radius) the value of fovy angle defined by the ray. If not set, the default value is set to 0.0003F

OIV_GLSL_DEBUG
Affects SoShaderObject (and derived classes).
Enables display of output generated by the GLSL compiler of the graphics display driver. If not set to TRUE (1), no trace output is generated.

OIV_HC_BLACK_AND_WHITE
Affects subclasses of SoVectorizeAction (HardCopy extension). Force all non-white colors to full black. This is useful because selecting "black & white" in the printer setup dialog normally produces gray scale rendering and some colors may be difficult to see. This option is applied after color translation (e.g. REVERSE_ONLY_BLACK_AND_WHITE).

OIV_HCGDI_APPCONTROL
Affects SoVectorizeGDIAction (HardCopy extension). When this variable is non-zero, the application is responsible for calling StartDoc, StartPage, EndPage and EndDoc to manage the printer. There are two modes, depending on the value of OIV_HCGDI_APPCONTROL:

OIV_HCGDI_EDGE_WIDTH
Affects SoVectorizeGDIAction (HardCopy extension). Default is to draw a minimum width line for polygon edges. In most cases this is enough to prevent small triangles from disappearing. If > 0, this value is a scale factor applied to the "nominalWidth" (effectively same as SoDrawStyle::lineWidth). This value is fetched in the constructor so it must be set before creating an SoVectorizeGDIAction.

OIV_HCGDI_POLYGON_COMPAT
Affects SoVectorizeGDIAction (HardCopy extension). Before Open Inventor 8.5.1.2 the action only used a "brush" (no pen) to render GDI polygons. In this case GDI only draws the "interior" of the polygon, so very small polygons could disappear completely because GDI determined that no part of the interior was visible. Although it's unlikely to be needed, this variable allows returning to the pre-8.5.1.2 behavior.

OIVHOME
Specifies the path of the Open Inventor installation directory. Open Inventor may search for the stroke font files as well as pattern files in subdirectories of OIVHOME.

OIVARCH
Specifies the directory that contains all architecture dependent files.
In a standard installation this directory is under the $OIVHOME directory and has subdirectories such as "bin" and "lib". For example: arch-Windows-x86_64-msvc9-Debug contains files for a 64-bit Windows debug build using Visual Studio 2008 (VC++ 9). Open Inventor uses this environment variable for:

OIV_INTERACTIVE_DRAW_STYLE
Affects SoWinViewer, SoQtViewer, SoXtViewer.
Specifies the default interactive draw style. Valid values are: VIEW_AS_IS, VIEW_HIDDEN_LINE, VIEW_NO_TEXTURE, VIEW_LOW_COMPLEXITY, VIEW_LINE, VIEW_POINT, VIEW_BBOX, VIEW_LOW_RES_LINE, VIEW_LOW_RES_POINT, VIEW_SAME_AS_STILL. The interactive draw style can be set programmatically using the setDrawStyle method of the viewers classes above.

OIV_INTERSECT_EPSILON
Specifies the epsilon value against which the area of a triangle is checked to eliminate triangles with no area when picking. It allows you to pick objects that have very small coordinate values. Set the value to approximately 10 raised to three times the exponent of the object coordinates. Example: For objects with coordinates of approximately 10E-7, a value of 10E-21 would allow the objects to be picked.

OIV_LD_LIBRARY_PATH
Affects SoDynamicLibManager.
Specifies a single path in which to search for a dynamic library to be loaded. Other paths may be searched as well. See SoDynamicLibManager for details.

OIV_LIBDXF_NAME
Affects SoDynamicLibManager.
Allows you to use your own libDxf dynamic library. Do not add the suffix. Do not add the final "D" used in the debug name. Default is "IvDLDxf".

OIV_LIBFLT_NAME
Affects SoDynamicLibManager.
Allows you to use your own libFlt dynamic library. Do not add the suffix. Do not add the "lib" prefix on UNIX systems. Do not add the final "D" used in the debug name. Default is "IvDLFlt".

OIV_LIBJPEG_NAME
Affects SoDynamicLibManager.
Allows you to use your own libJpeg dynamic library. Do not add the suffix. Do not add the "lib" prefix on UNIX systems. Do not add the final "D" used in the debug name. Default is "IvDLJpeg".

OIV_LIBPROJ4_NAME
Affects SoDynamicLibManager.
Allows you to use your own libProj4 dynamic library. Do not add the suffix. Do not add the "lib" prefix on UNIX systems. Do not add the final "D" used in the debug name. Default is "IvDLProj4".

OIV_LIBTIFF_NAME
Affects SoDynamicLibManager.
Allows you to use your own libTiff dynamic library. Do not add the suffix. Do not add the "lib" prefix on UNIX systems. Do not add the final "D" used in the debug name. Default is "IvDLTiff".

OIV_LICENSE_DEBUG
Specifies the name of the file to which license debug information will be written. If not set, license debug info is not generated.

OIV_LICENSE_FILE
Specifies the full path of the file containing the VSG license strings for Open Inventor and its extensions. Open Inventor searches for a valid password in the following locations: internal unlock string (see SoLockManager), the system registry (Windows only, see Ladmin.htm), OIV_LICENSE_FILE, $OIVHOME/license/password.dat, and password.dat in the current directory.

OIV_LINE_WIDTH
If defined, forces Open Inventor to use line width 1. no matter what line width the program requests. (This was used to improve performance on a system that had notoriously slow wide lines.)

OIV_LOWRESHIGHPERCENT
Affects Remote Rendering.
This variable specifies the rendered image size as a percentage of the actual window size in the normal case. The default is 1.0 (full size).

OIV_LOWRESLOWPERCENT
Affects Remote Rendering.
This variable specifies the rendered image size as a percentage of the actual window size when the Open Inventor viewer is in "Move as Low-Res" mode. The default is 0.7 (70 percent).

OIV_LOWRESRENDER
Affects Remote Rendering.
If this variable is defined and the target display (local machine) supports OpenGL, then low resolution rendering is enabled. No change to the application is required.

OIV_MATERIALS_PATH [UNIX only]
Affects SoMaterialEditor.
Specifies the path where the material palette will look for materials.

OIV_MAX_ANNO_RENDER2D_SIZE
Affects SoAnnoText3.
Specifies the maximum font size (in pixels) used in font size computed when SoAnnoText3::renderPrintType field is equal to RENDER2D_PRINT_RASTER. The default maximum value is 1000. If you notice a performance issue when rendering and zooming a scene graph containing many SoAnnoText3 nodes, setting this value to a smaller number, such as 64, may improve performance.

OIV_MAX_CACHES
Specifies the maximum number of render caches for all nodes that create render caches, including display lists (e.g. SoSeparator, SoVRMLShape) and texture objects (e.g. SoTexture2, SoVRMLImageTexture). To disable caching entirely, set it to 0. This can reduce memory requirements at the cost of reduced performance.

For multi-pipe rendering based on MPViewer, set it to the number of pipes that will be used.

For multi-GPU rendering using ScaleViz, OIV_MAX_CACHES is the maximum number of render caches per rendering thread (not the total number of render caches). [Replaces IV_SEPARATOR_MAX_CACHES.]

OIV_MAX_FONT_CACHES
Specifies the maximum number of caches that can be used during text computation. Default value is 20; See SoFont for details.

OIV_MAX_SHADOWMAP_SIZE
Specifies the maximum size of the shadowmap used for shadows in SoShadowGroup. This is used to prevent huge textures allocation on some hardware which can take a couple of minutes. Default value is 4096; See So for details.

OIV_MAX_VARIANCE_SHADOWMAP_SIZE
Specifies the maximum size of the variance shadowmap used for shadows in SoShadowGroup. This allows to use a different texture size when variance shadows are used. Default value is 4096; See So for details.

OIV_MAX_TEXTURED_FONT_RES
Specifies the maximum resolution used when generating textured glyph during text computation. (SoFont::renderStyle field must be set to TEXTURE.) The amount of memory used in textured text depends on this value. Default value is 600.

OIV_MIN_TEXTURED_FONT_RES
Specifies the minimum resolution used when generating textured glyph during text computation. (SoFont::renderStyle field must be set to TEXTURE.) The amount of memory used in textured text depends on this value. Default value is 300.

OIV_MIN_VERTEX_VA
Shapes should use Vertex Array (VA) if they contain at least OIV_MIN_VERTEX_VA vertices. Default value is 0. For small shapes (i.e. a small number of vertices) it may be more efficient to use immediate mode (glBegin) instead of doing all the setup to use vertex arrays and VBOs. This environment variable allows you to specify the minimum number of vertices that a shape must have in order to render using vertex arrays. The default is 0, meaning that all shapes are allowed to use vertex arrays. If vertex arrays are prohibited, then VBOs are also prohibited. See SoVertexShape.
NOTE: This variable must be set before Open Inventor is initialized.

OIV_MIN_VERTEX_VBO
Shapes should use Vertex Buffer Object (VBO) if they contain at least OIV_MIN_VERTEX_VBO vertices. Default value is 0. For small shapes (i.e. a small number of vertices) it might be more efficient to use vertex arrays but not VBOs. This environment variable allows you to specify the minimum number of vertices that a shape must have in order to render using VBOs. The default is 0, meaning that all shapes are allowed to use VBOs. You can also disable VBOs for a specific shape, or group of shapes, using the SoShapeHints useVBO field. See SoVertexShape.
NOTE: This variable must be set before Open Inventor is initialized.

OIV_MIN_VERTEX_VAVBO_NOCACHE
Shapes using VBO or VA will deactivate caching if they contain at least OIV_MIN_VERTEX_VAVBO_NOCACHE vertices. Default value is 10000. In general, render caches (display lists) improve rendering performance for small(ish) shapes because the graphics driver will automatically optimize the geometry. And render caches are valuable because they reduce CPU overhead by avoiding traversal of the cached sub-scene graph. However if a large shape can be rendered using vertex arrays or VBOs, then the render performance probably will not be improved by including the shape in a render cache. (The reduced CPU overhead advantage of the render cache might still be useful in some cases. This environment variable basically allows you to specify the threshold number of vertices that defines a "large shape". If a render cache is already open (being built) when the shape is traversed, and the number of vertices is less than this value, then the shape will not use VA/VBO. Conversely, if no render cache is being built when the shape is traversed, and the number of vertices is greater than or equal to this value, then the shape will be rendered using VA/VBO (if possible) and render caching will not be allowed for the current SoSeparator. The default value is 10000 vertices. The application should be aware that Separators containing large shapes may not build a render cache and arrange the scene graph so that other shapes can be render cached. See SoVertexShape.
NOTE: This variable must be set before Open Inventor is initialized.

OIV_MOUSE_WHEEL_ENABLE
Affects SoWin, SoQt.
Allows you to use the mouse wheel to zoom or dolly the camera when using the Open Inventor viewers (examiner, walk, etc.). The mouse wheel has the same kind of camera movement as the right thumbwheel -- dolly or zoom -- depending on the viewer type and camera type. Default is TRUE (1). The value can be set programmatically using the enableMouseWheelDolly method of SoWinViewer or SoQtViewer.

OIV_MP_CONFIG_FILE
Specifies the pathname of the configuration file for the multi-pipe viewer. Default is "./oivmp.cfg".

OIV_MULTITHREAD
Enables/disables multithread (MT) support.

If OIV_MULTITHREAD is not defined, then MT support is:

OIV_MULTITEXTURING
Enables/disables multitexturing support.

If OIV_MULTITEXTURING is not defined, multitexturing support is enabled (if your graphics board supports it). Setting this variable to 0 is equivalent to maxTextureUnit equal 1. See SoTextureUnit for details.

OIV_NO_FBO
Set to 1 to disallow use of OpenGL Frame Buffer Object. Default is 0.

OIV_NO_FLEXNET
Set to 1 to disallow FLEXnet licensing checking. Default is 0.

OIV_NURBS_FIX_TRIM_CONNECTIONS
In some cases, trimming curves are not properly connected in a trimming loop. This may result in bad tesselations of NURBS surfaces when using the CONSTANT tessellationType of the NurbsProperty node (the default mode). When this mode is activated, the NURBS tesselation algorithm tries to reconnect trimming curves. Set to 0 to disable this mode. Default is 1.

OIV_NURBS_FORCE_GLU_CONVEXISATION
When set to 1, always use the GLU polygon tesselation instead of the internal one. Before version 7.2, the default behavior was to use the internal tesselation. Sometimes, the result produced by this internal tesselation was wrong when using the CONSTANT tessellationType of the NurbsProperty node (the default mode). Set to 0 to revert to the internal tesselation mode. Default is 1.

OIV_NURBS_CHECK_RATIONAL_TRIM_OUTSIDE_DOMAIN
When set to 0, do not try to limit the values of homogeneous trimming curves coordinates to the boundaries of the NURBS domain. Sometimes, trimming curve points can be defined outside the domain but their tesselated counterparts may lie inside the domain for "heavy" weights. Notice that this test is always performed for non rational coordinates since it is invalid to define trimming curves lying outside the domain. Default is 1: the test is performed.

OIV_NO_IVTUNE
Affects IvTune activation.
If set to 1, disallows interactive activation of an IvTune window from an Open Inventor application. You can also allow/disallow IvTune activation programmatically using the SoDB::setIvTuneAllowed() method. Default is 0.

OIV_IVTUNE_CONFIGURATION_FILE
Specifies the path where IvTune will look for the configuration file to load. Default is "$OIVHOME/data/IvTune/IvtConfiguration.xml"

OIV_IVTUNE_SHORTCUT
Controls the keyboard shortcut used for activating IvTune.
The shortcut is composed of [SHIFT] followed by a second key. Use this environment variable to specify the value of the second key, chosen from the SoKeyboardEvent::Key enum. You can also set IvTune activation shortcut programmatically using the SoIvTune::setShortCutValue() method. Default is 0xFFC9 [F12], which corresponds to a shortcut of [SHIFT] + [F12].

OIV_NO_OVERLAYS
Disables Open Inventor's normal attempt to automatically use overlay planes on all platforms. This can be useful to suppress the warning message on UNIX platforms (when overlays are not available) or to avoid a problem with the overlay planes not being correctly transparent.

OIV_NORMGEN_COMPAT
If set, Open Inventor will use the pre-version 3.1 algorithm for computing normals. This algorithm has very bad performance when the geometry bounding box is asymmetrical. It is not likely you will ever need to set this variable.

OIV_NORMGEN_TOLERANCE
Sets the "tolerance factor" used to test for coincident vertices when computing vertex normal vectors for a geometric primitive. A larger value for OIV_NORMGEN_TOLERANCE results in fewer vertices being considered coincident. This can significantly reduce the time required to compute normal vectors for large geometry, for example MeshViz meshes. The default value is 1000000.

OIV_SEPARATE_SPECULAR_SUPPORT
Enables the use of the GL_EXT_separate_specular extension in OpenInventor. The default value is FALSE

OIV_NO_SHADER_LAYERS_BLEND
Disable the use of fragment shaders when using transparency type SoTransparencyType::SORTED_PIXELS_BLEND.

OIV_NO_TEX_TRIM_NURBS
Affects SoNurbsSurface, SoIndexedNurbsSurface.
Deprecated , use OIV_FORCE_GLU_NURBS instead.

OIV_NO_VBO
Affects SoShapeHints.
VBOs may be used to speed up rendering of SoIndexedFaceSets and SoIndexedTriangleStripSets. If the rendering is not correct, try setting this variable.

OIV_NUM_RENDER_PASSES
Affects SoGLRenderAction.
Specifies the default number of render passes. Must be an integer greater than 1. The number of passes can be set programmatically using SoGLRenderAction::numPasses.

OIV_NUM_SORTED_LAYERS_PASSES
Affects SoGLRenderAction.
Specifies the default number of render passes used when SORTED_PIXELS_BLEND transparency is used. Must be an integer greater than 1. The value can be set programmatically using SoGLRenderAction::setSortedLayersNumPasses.

OIV_OGLLIB_PATH [UNIX only]
Specifies the path to the OpenGL library. It may be useful if this dynamic library cannot be found automatically. Open Inventor needs to open the dynamic OpenGL library to evaluate which interesting extensions is supported.

OIV_OIT_DEFAULT_MODE
Select a specific method used to perform Order Independent Transparency The preference value can be AUTO (default), ABUFFER, KBUFFER, DUALPASS_KBUFFER or DEPTH_PEELING.

If your hardware doesn't support the selected method, it will fall back to a less advanced one.

OIV_OLD_ERROR_HANDLER
Due to a Windows programming limitation, the error console (SoConsole) is not useable in multi-threaded applications. This environment variable allows you to use the older (Open Inventor 3.1 and earlier) error message handler instead.

OIV_OPENAL_NAME
Affects SoDynamicLibManager.
Allows you to use your own OpenAL dynamic library. Do not add the suffix. Do not add the "lib" prefix on UNIX systems. Do not add the final "D" used in the debug name. Default is "IvDLOpenAL32".

OIV_PBUFFER_DEBUG
Affects SoOffscreenRenderer, SoPBuffer.
Set to 1 to enable debug trace output for Pbuffers.

See also OIV_PBUFFER_ENABLE.

OIV_PBUFFER_ENABLE
Affects SoOffscreenRenderer, SoPBuffer. Set to zero to disallow use of Pbuffers.

The OpenGL Pbuffer extension allows accelerated rendering to off-screen memory. The SoOffscreenRenderer class will automatically use a Pbuffer (if possible) for rendering. In case of problems using Pbuffers, this environment variable may be used.

Note: If Pbuffers are disallowed, OpenGL does rendering in software. This gives low performance and OpenGL extensions will often not be available. In general the image may not match the on-screen image simply because a different renderer is being used. However, the lack of OpenGL extensions can cause the offscreen image to differ signficantly. Following are some of the features that depend on OpenGL extensions: Open Inventor correct transparency, VolumeViz 3D textures, FXViz shadowing and bump mapping.

OIV_PERFCOUNTER_ENABLE
Enable or not the SoPerfCounterManager performance counters manager. By default it is disabled.

OIV_PFD_SUPPORT_COMPOSITION
Specifies if the composition with Aero (Windows Vista and 7) is on or off (0= force off, 1= force on). By default OpenInventor will try to use composition. Note that if you turn it on, PFD_SUPPORT_GDI is unset which will prevent using GDI on the OpenGL render area. Also if you force the composition to off and the device doesn't provide any pixel format with GDI support, OpenInventor will post an error. Note also that it has no effect on SoQt viewers, see http://bugreports.qt.nokia.com/browse/QTBUG-6988.

OIV_PFD_SUPPORT_GDI
Specifies if the GDI support with Aero (Windows Vista and 7) is on or off (0= force off, 1= force on). By default OpenInventor will try to use composition. (See OIV_PFD_SUPPORT_COMPOSITION) GDI support and composition support are exclusive. OIV_PFD_SUPPORT_GDI is preponderant on OIV_PFD_SUPPORT_COMPOSITION, meaning that if both are defined, GDI support is choosen first.

OIV_PICK_GENERATE_ALL_PROPERTIES
Affects SoRayPickAction. Set this variable to true to enable computation of all properties (normal vector, texture coordinates, etc) during pick traversal. Default is FALSE.

OIV_PLUGINS_DIRECTORY
Specifies an additional directory to search for Open Inventor plugins. See SoDB::addPlugin(). Default additional directory is empty.

OIV_POINT_SET_USE_VERTEX_ORDERING
Affects SoPointSet.
Specifies if point sets use the vertex ordering on the state. Valid values are 0 (FALSE) or 1 (TRUE). Default is FALSE.

OIV_POLYGON_OFFSET
Affects SoPolygonOffset.
Specifies if the polygon offset computation is on by default (0=no, 1=yes) The value can be set programmatically using the SoPolygonOffset::on field.

OIV_POLYGON_OFFSET_FACTOR
Affects SoPolygonOffset.
Specifies the default polygon offset factor. The value can be set programmatically using the SoPolygonOffset::factor field.

OIV_POLYGON_OFFSET_STYLES
Affects SoPolygonOffset.
Specifies the default polygon offset styles. Valid values are FILLED, LINES, POINTS. The value can be set programmatically using the SoPolygonOffset::styles field.

OIV_POLYGON_OFFSET_UNITS
Affects SoPolygonOffset.
Specifies the default polygon offset units. The value can be set programmatically using the SoPolygonOffset::units field.

OIV_PRIORITIZE_CHILDREN_CACHING deprecated
Deprecated. Specifies the default caching policy for children caching. Valid value is 0 (FALSE) or 1 (TRUE). Default is TRUE. The value can be set programmatically using the SoDB::prioritizeChildrenCaching() method.

OIV_PSFONT_PATH deprecated
Starting with Open Inventor 6.0, this environment variable is a synonym for OIV_FONT_PATH. Please see OIV_FONT_PATH for details.

OIV_QT_TIMER_THREAD
Affects SoQt viewers.
If set to 1, specifies that a separate thread should be used to signal the delay sensor timeout.

When mouse events are continuously caught by the event callback , the Qt viewers may not update the scene as often as necessary. Because of the way that Qt's QTimer class works, the timeout for processing the delay queue does not always occur, and the scene is not updated. If the OIV_QT_TIMER_THREAD is set to 1, a separate thread is used to signal the delay sensor timeout. To avoid possible compatibility problems, the default is to use the existing QTimer mechanism for processing the delay queue timeout.

OIV_REMOTE_ENABLE
Applies to ScaleViz.

OIV_REMOTE_PORT
Applies to ScaleViz.
Specify the TCP port the application will use to listen for remote client connection. This port must be free (not used by any other daemon or services). Default is 0, meaning the value is dynamically allocated and printed to the console or remote dialog GUI.

OIV_REMOTE_TIMING
Applies to ScaleViz.
A value of 1 enables printing in the console of performance timing feedback about each step of the remote frame compression mechanism for ScaleViz remote rendering. Default is 0.

OIV_REMOTERENDER

See also OIV_REMOTERENDER_BUFFER, OIV_REMOTERENDER_DISPLAY, OIV_LOWRESRENDER, OIV_LOWRESHIGHPERCENT.

OIV_REMOTERENDER_BUFFER

OIV_REMOTERENDER_DEBUG
Debug info is enabled when set to "1".

OIV_REMOTERENDER_DISPLAY
Set this to the local X display string. The default is ":0.0". Set to ":0.1" to use the second pipe and so on (if any).

OIV_REMOTERENDER_RGB_BGR
This variable allows to get the right colors with TightVNC.

OIV_REPORT_ZERO_VECTORS
Applies only to the Open Inventor debug libraries.
If set to 0, disables reporting of zero length vectors, specifically direction vectors computed by certain interactive features, e.g., draggers.

OIV_REQUIRE_STENCIL <int>
Provides a strong hint that an OpenGL stencil buffer is required for correct rendering. The integer value is the requested stencil buffer depth (default is 1). On Windows, a pixel format that has a stencil buffer will be chosen even if it is not accelerated.

OIV_SEEK_TIME
Affects SoWinViewer, SoQtViewer, SoXtViewer.
Specifies the default seek time (seconds). The seek time can be set programmatically using the setSeekTime method of the viewers classes above.

OIV_SEEK_MODIFY_ORTHOGRAPHIC_CAMERA_ORIENTATION
Affects SoWinViewer, SoQtViewer, SoXtViewer.
Specifies if the seek modifies the orientation of orthographic cameras.

OIV_SHADER_CHECK_INTERVAL
Affects SoShaderObject.
Specifies how frequently the shader source file is checked for a change (in seconds). This allows you to edit a shader without needing to restart your application after each shader modification.

OIV_SHAPE_TYPE
Affects SoShapeHints.
Specifies the default shape type. Valid values are UNKNOWN, SOLID. The shape type can be set programmatically using the SoShapeHints::shapeType field.

OIV_SHARE_GEOM_MUTEX
By default all the geometry nodes share a single class mutex. This reduces the number of mutexes needed and does not impose any penalty once the geometry is render cached. If geometry cannot be render cached, it may be better to use per-node mutexes by setting this variable to "0" (zero). Notes that in multi-thread mode default value is 0.

OIV_SHARE_LISTS
Specifies what kind of OpenGL display list sharing is allowed.

OIV_SORTED_LAYERS_TEXTURE_UNIT
If set, the SORTED_PIXELS_BLEND transparency type will use this texture unit internally instead of SoFragmentShader::getMaxTextureImageUnit()-1.

OIV_STEREO_ACTIVE
Affects SoQtViewer, SoStereoViewer, SoWinMPRenderArea, SoWinViewer, SoXtMPRenderArea, SoXtViewer.
Specifies the default stereo viewing status. Valid values are 0 or 1 (inactive or active). The value can be set programmatically using the setStereoActive method of the classes above.

OIV_STEREO_BALANCE
Affects SoQtViewer, SoStereoViewer, SoWinMPRenderArea, SoWinViewer, SoXtMPRenderArea, SoXtViewer.
Specifies the default stereo balance (the position of the zero parallax plane). The value is specified as a float. The value can be set programmatically using the setStereoBalance method of the classes above.

OIV_STEREO_BALANCE_NEAR_FRAC
Affects SoQtViewer, SoStereoViewer, SoWinMPRenderArea, SoWinViewer, SoXtMPRenderArea, SoXtViewer.
Specifies whether the default stereo balance (the position of the zero parallax plane) is defined as a fraction of the camera near distance, or not. The value is specified as a boolean. The value can be set programmatically using the setStereoBalance method of the classes above.

OIV_STEREO_GREENSHIFT
Affects SoInterlacedStereo.
Enables the "green shift" operation. This is an image post-processing operation required for stereo on a Sharp 3D LCD display. It is only meaningful when the stereo format is vertical interlaced (fast or best).

OIV_STEREO_OFFSET
Affects SoQtViewer, SoStereoViewer, SoWinMPRenderArea, SoWinViewer, SoXtMPRenderArea, SoXtViewer.
Specifies the default stereo offset. The value is specified as a float. The value can be set programmatically using the setStereoOffset method of the classes above.

OIV_STEREO_TESTPATTERN
Affects SoQtViewer, SoStereoViewer, SoWinMPRenderArea, SoWinViewer, SoXtMPRenderArea, SoXtViewer.
When stereo is enabled, displays a stereo text pattern on top of the scene (it's probably best not to have anything else in the scene). It displays a blue rectangle which should be visible only to the left eye and a red rectangle which should be visible only to the right eye. This allows you to confirm the display is actually doing stereo and that the left/right eye images are displayed in the correct order.

OIV_STEREO_TYPE
Affects SoQtViewer, SoStereoViewer, SoWinMPRenderArea, SoWinViewer, SoXtMPRenderArea, SoXtViewer.
Specifies the default stereo viewer type. Valid values are ANAGLYPH_RED_CYAN, ANAGLYPH_GREEN_MAGENTA, ANAGLYPH_BLUE_YELLOW, HALF_SCREEN_OVERUNDER_FILL, HALF_SCREEN_OVERUNDER, HALF_SCREEN_SIDEBYSIDE_FILL, HALF_SCREEN_SIDEBYSIDE, INTERLACED_HORIZONTAL_BEST, INTERLACED_VERTICAL_BEST, INTERLACED_HORIZONTAL_FAST, INTERLACED_VERTICAL_FAST, RAW. The value can be set programmatically using the setStereoViewType method of the classes above.

OIV_STILL_DRAW_STYLE
Affects SoWinViewer, SoQtViewer, SoXtViewer.
Specifies the default still draw style. Valid values are: VIEW_AS_IS, VIEW_HIDDEN_LINE, VIEW_NO_TEXTURE, VIEW_LOW_COMPLEXITY, VIEW_LINE, VIEW_POINT, VIEW_BBOX, VIEW_LOW_RES_LINE, VIEW_LOW_RES_POINT. The still draw style can be set programmatically using the setDrawStyle method of the viewers classes above.

OIV_STROKE_FONT_PATH
Specifies the path of the directory containing the VSG stroke font data files. See SoFont for information on the stroke font files.

OIV_SYNC_QTWIDGET_FIRSTRENDER
Affects SoQtViewer.
Works only with Qt Legacy Viewers (SoQtGLWidget, SoQtViewer, SoQtRenderArea ...).
In case of multiple Qt viewers, this preference synchronizes the first OpenGL render allowing to display them all at the same time. Default is false.

OIV_TEXT_ACCUMULATION
Enables or disables 'accumulation rendering' mode for SoText3 nodes. Default is false. See SoTextProperty enableTextAccumulation field.

OIV_TEXT_ALIASING_FACTOR
Sets the default aliasing factor for textured text rendering. See SoTextProperty for information on text rendering options.

OIV_TEXT_ALIGNMENTH
Sets the default text horizontal alignment. See SoTextProperty for information on text rendering options.

OIV_TEXT_ALIGNMENTV
Sets the default text vertical alignment. See SoTextProperty for information on text rendering options.

OIV_TEXT_BACKFRAMELINE_WIDTH
Sets the default backFrame line width. See SoTextProperty for information on text rendering options.

OIV_TEXT_MARGIN
Sets the default text margin. See SoTextProperty for information on text rendering options.

OIV_TEXT_ORIENTATION
Sets the default text orientation. See SoTextProperty for information on text rendering options.

OIV_STREAM_BUFFERS_NUMBER
Specifies the number of buffers used for the asynchronous file reading.

OIV_STREAM_BUFFERS_SIZE
Specifies the size of the buffers used for the asynchronous file reading.

OIV_TEXTURE_BORDER_CLAMP_ENABLE
Affects SoShadowGroup.

Some shadowing problems (performance issues or no computation of shadows) have been observed with some OpenGL drivers due to the Texture Border Clamp OpenGL extension. Set this environment variable to to 0 to disable use of this extension if necessary.

OIV_TEXTURE_QUALITY
Affects SoComplexity.
Specifies the default texture quality (0.0 to 1.0). The texture quality can be set programmatically using the SoComplexity::textureQuality field.

OIV_TEXTURED_TEXT_NO_MIPMAP
Affects text nodes when renderStyle is TEXTURED.
Enables/Disables the use of mipmaps for textured text. By default, mipmaps are generated considering the SoComplexity::textureQuality value.

OIV_TRACKER_DIRECT_MODE
Affects SoDragger.
Specifies the tracker direct mode. Valid values are: NONE, MOVE, ROTATE, FREE, DEFAULT. The tracker direct mode can be set programmatically using SoDragger::setTrackerDirectMode.

OIV_TRANSPARENCY_TYPE
Affects SoGLRenderAction.
Specifies the default transparency type. Valid values are: SCREEN_DOOR, ADD, DELAYED_ADD, SORTED_OBJECT_ADD, BLEND, DELAYED_BLEND, SORTED_OBJECT_BLEND, SORTED_TRIANGLES_ADD, SORTED_TRIANGLES_BLEND, SORTED_OBJECT_TRIANGLES_ADD, SORTED_OBJECT_TRIANGLES_BLEND, SORTED_PIXELS_BLEND, NO_TRANSPARENCY. The transparency type can be set programmatically using GLRenderAction::transparencyType.

OIV_TRANSPARENT_PIXEL [UNIX only]
Specifies the color map index of the transparent pixel to be used for clearing the overlay context. It overrides the value built into Open Inventor or obtained from OpenGL.

OIV_UPDATE_AREA_COMPAT
Affects SoGLRenderAction.

If not set (default), the update area is used for render culling and for limiting the rectangular area of the viewport region that will actually be rendered into.

If set, Open Inventor will use the version 3.1.1 (and earlier) behavior of the update area. The specified update area is used for render culling, but not for limiting the rectangular area of the viewport region that will be rendered into.

OIV_USE_GLOBALFIELD_TIME
Affects Open Inventor applications that use CAVELib.
If set to 1, SoDB::getCurrentTime() will return the current time based on the global "realTime" field which the CAVELib application can set to Cave Time before each frame. Default is 0.

OIV_USE_HEADLIGHT
Affects SoWinViewer, SoQtViewer, SoXtViewer.
Specifies if the headlight is on by default (0=no, 1=yes) The headlight state can be set programmatically using the setHeadlight method of the classes above.

OIV_USE_NPOT
Affects SoExtTexture2, SoTexture2, SoTextureCubeMap, SoVRMLTexture (and derived classes)
By default, if your graphics board supports the OpenGL extension ARB_texture_non_power_of_two, Open Inventor will pass non-power-of-two textures directly to OpenGL. To disable this behavior, set this configuration parameter to 0. In this case the image will be scaled up or down to the next power of 2. Default is 1.

OIV_USE_OOB
Affects SoShape (and derived classes)
By default, Open Inventor use Axis Aligned Bounding Box (AABB). set this configuration parameter to 1, Object Oriented Bounding (OOB) will be used whenever possible. Using OOB provides better selection mechanism for culling, picking and collision detection at the cost of higher CPU usage. Default is 0.

OIV_USER_LIBS
Defines a semi-colon separated list of shared libraries (UNIX) or DLLs (Windows) that contain custom nodes to be loaded. Items in list can be full paths, relative paths, library name with or without extension. When using single library name, Open Inventor will search for them in various directories as described in SoDynamicLibManager.

OIV_VERTEX_ATTRIBS
Affects SoVertexShaderParameter and its derived classes. If set to 0, vertex shader attributes are ignored. Default is 1.

OIV_VERTEX_ORDERING
Affects SoShapeHints.
Specifies the default vertex ordering. Valid values are UNKNOWN, CLOCKWISE, COUNTERCLOCKWISE. The vertex ordering can be set programmatically using the SoShapeHints::vertexOrdering field.

OIV_VIEWER_ANIMATION
Affects SoWinExaminerViewer, SoQtExaminerViewer, SoXtExaminerViewer.
Specifies if animation is enabled by default (0=off, 1=on). The animation flag can be set programmatically using the setAnimationEnabled method of the viewers classes above.

OIV_VIEWER_DECORATION
Affects SoWinFullViewer, SoQtFullViewer, SoXtFullViewer.
Specifies if decorations are on or off by default (0=off, 1=on). Decorations can be enabled/disabled programmatically using the setDecoration method of the viewers classes above.

OIV_VIEWER_POPUP_MENU
Affects SoWinFullViewer, SoQtFullViewer, SoWxFullViewer, SoXtFullViewer.
Specifies if the popup menu is enabled by default (0=off, 1=on). The popup menu can be enabled/disabled programmatically using the setPopupMenuEnabled method of the viewers classes above.

OIV_VIEWER_SIZE
Affects all SoXXXFullViewer (and derived) classes, including SoWinFullViewer, SoQtFullViewer, SoXtFullViewer, SoXtMPFullViewer and SoWinMPFullViewer.
Specifies the default size of the viewer window in pixels. Default since Open Inventor 8.1 is 800x600 (previously was 400x400).

OIV_VIEWER_SHOW_DIRECTVIZ_ENTRY
Affects SoWinFullViewer, SoQtFullViewer, SoWxFullViewer, SoXtFullViewer.
Specifies if the "DirectViz" entry is available in the popup menu. This entry is available by default (0=off, 1=on).

OIV_VIEWER_SHOW_RECORD_ENTRY
Affects SoWinFullViewer, SoQtFullViewer, SoWxFullViewer, SoXtFullViewer.
Specifies if the "Record" (MPEG) entry is available in the popup menu. This entry is available by default (0=off, 1=on).

OIV_VIEWER_SHOW_FSAA_ENTRY
Affects SoWinFullViewer, SoQtFullViewer, SoWxFullViewer, SoXtFullViewer.
Specifies if the "Full Scene AntiAliasing" entry is available in the popup menu. This entry is available by default (0=off, 1=on).

OIV_VIEWER_SHOW_STEREO_ENTRY
Affects SoWinFullViewer, SoQtFullViewer, SoWxFullViewer, SoXtFullViewer.
Specifies if the "Stereo" entry is available in the popup menu. This entry is available by default (0=off, 1=on).

OIV_VRML_IMAGETEXTURE_MODEL_SUPPORT
Specifies if SoVRMLImageTexture nodes should use the textureModel hidden field. This field allows additional control over rendering, similar to the standard Open Inventor texture nodes. Off by default (0=off, 1=on).

OIV_WHEEL_DELTA
Affects SoMouseWheelEvent.
A mouse wheel has discrete, evenly spaced notches. When you rotate the wheel, a wheel message is sent as each notch is encountered. Most modern mouse wheels generate an event with a value of 120 per each notch of the wheel. You can use this environment variable to change this value.

OIV_WINDING_TYPE
Affects SoShapeHints.
Specifies the default winding type. Valid values are NONE, ODD, NON_ZERO, POSITIVE, NEGATIVE, ABS_GEQ_TWO. The winding type can be set programmatically using the SoShapeHints::windingType field.

OIV_ZERO_AREA_CHECK
Set this to a small positive float value.
During decimation, a triangle with an area less than the specified value will be discarded. If you notice missing triangles in decimated output, try setting the value to a smaller number. Default: 1E-5.

OIV_ZLIB_NAME
Affects SoDynamicLibManager.
Allows you to use your own zlib dynamic library. Do not add the suffix. Do not add the "lib" prefix on UNIX systems. Do not add the final "D" used in the debug name. Default is "IvDLZlib".

OIV_SET_RAY_PRECISION
Affects SoRayPickAction when defining a ray using the setRay method
Specify (in radius) the value of fovy angle defined by the ray. If not set, the default value is set to 0.0003F

SO_DRAGGER_DIR
Specifies the path to the directory containing dragger geometry files. By default, Open Inventor uses the dragger geometry files from $OIVHOME/data/draggerDefaults. See SoDragger.

SCALEVIZ_CLUSTERCOM
Specifies which communication layer library to used by ScaleViz for Render Unit communication (OIRU). This value is a string that will specify:

libClustercom-<string>.so or ClusterCom-<string>.dll

as the library to use and

launch-<string>.sh or launch-<string>.bat

as the launcher script to use to spawn the process for this type of communication. Default is "base" which is the default supported implementation for a given OS. See ScaleViz text in User's Guide for more information.

SCALEVIZ_CONFIG_FILE
Specifies the path of the ScaleViz configuration file.

SCALEVIZ_CONNECT_TIMEOUT
Specifies the connection timeout in seconds used by application to connect to ScaleViz Daemon/Service. Default is 5 seconds.

SCALEVIZ_DISABLE_GUI
Applies to ScaleViz.
Enables/Disables display of the ScaleViz GUI dialog provided with the ScaleViz package. Default value is 0 (GUI is enabled by default).

SCALEVIZ_GUI_SHORTCUT
Applies to ScaleViz.
Controls the keyboard shortcut used for displaying the ScaleViz GUI dialog. The shortcut is composed of [SHIFT] followed by a second key. Use this environment variable to specify the value of the second key, chosen from the SoKeyboardEvent::Key enum. Default is 0xFFC6 [F9], which corresponds to a shortcut of [SHIFT] + [F9].

SCALEVIZ_OIRU_DISPLAY
Applies to ScaleViz compositing (depth compositing, tile compositing).

SCALEVIZ_OIRU_PATH
Specifies the path to the Open Inventor Render Unit (OIRU). The OIRU is a small executable that runs on the "slave" nodes in a ScaleViz render cluster. By default the OIRU is in OIVHOME/OIVARCH/bin/oiru.exe on Windows, and $OIVHOME/$OIVARCH/bin/oiru on UNIX or Linux.

SCALEVIZ_USER_LIBS
Deprecated, replaced by OIV_USER_LIBS. Is a semi-colon separated list of shared libraries (UNIX) or DLLs (Windows) that contain custom nodes to be loaded. Only the file names should be specified. Open Inventor will search for them in various directories as described in SoDynamicLibManager.

SCALEVIZD_RESOURCES_FILE
Specifies the path to the file describing the resources available in the cluster.

TGS_LICENSE_DEBUG [Deprecated]
Deprecated, please use OIV_LICENSE_DEBUG instead.

TGS_LICENSE_FILE [Deprecated]
Deprecated, please use OIV_LICENSE_FILE instead.

TVIZ_COMPAT_20
Affect SoTVizRender.
If set, TerrainViz will use the version 2.0 algorithm for handling normals.

TVIZ_VIEWER_DATA_PATH
Affects SoTVizViewer.
Specifies the name of the directory where the .iv files for the TerrainViz navigation tools are located.

Debug Environment Variables
We recommend these flags only be used by expert Open Inventor users or at the request of VSG Customer Support.

IV_DEBUG_BUFLEN <num>
Constructs an internal <num> length buffer to print into (See SoDebug.C)

IV_DEBUG_CACHES
Prints interesting (!) stuff

IV_DEBUG_CACHELIST
Ditto

IV_DEBUG_SENSORS
Ditto (lots of!)

IV_DEBUG_TRANSFORM_MANIP_FIELDS
Ditto

IV_DEBUG_KIT_PARTS
Ditto

IV_DEBUG_FROMNAME
Issues a message if the dynamic load of a node class fails.

IV_DEBUG_PICK_CULL
For relevant grouping nodes, prints whether they were culled during picking.

IV_DEBUG_RENDER_CULL
For relevant grouping nodes, prints whether they were culled during rendering.

IV_DEBUG_TEXCACHE
Prints information about texture caching.

IV_DEBUG_WRITE_KIT_CHILDREN
Forces a nodekit to be written out like an SoGroup node.

OIV_DEBUG_SHADOW
Prints debug information about SoShadowGroup.

OIV_MP_DEBUG
Prints debug information about the multi-pipe viewer.

OIV_MUTEX_TIMEOUT [_WIN32 only]
Sets a timeout value in milliseconds for the Open Inventor mutex classes, e.g., SbThreadMutex. If the timeout is exceeded without acquiring the mutex or read/write lock, a message is printed. This can be useful if you suspect the application is deadlocked in an Open Inventor mutex. The default is no timeout in the release build and five seconds in the debug build. NOTE: This item cannot be set via SoPreferences or a configuration file. It must be set in the environment (e.g., using set).

OIV_SYNCHRONIZE [UNIX only]
If this variable is set to "1", then Open Inventor will call XSynchronize on each display connection that it uses. This can be helpful if your application is getting an X error (hint: set a breakpoint in the Xlib function _XError).

VOLUMEVIZ_CENTERED_DICOM
If this variable is set to true, the image position value in the DICOM file is ignored and the DICOM volume extent is centered on the origin. Medical applications normally set this variable to false. Default is true.

VSG_LICENSE_FILE [Deprecated]
Deprecated, please use OIV_LICENSE_FILE instead.

VSG_LICENSE_DEBUG [Deprecated]
Deprecated, please use OIV_LICENSE_DEBUG instead.

SEE ALSO

SoBase, SoDB


Member Function Documentation

static SbBool SoPreferences::getBool ( const SbString name,
SbBool  defaultValue 
) [static]

Returns the value of the specified environment variable in the Open Inventor environment, interpreted as a boolean.

The search process is the same as for getValue.
If the environment variable is not defined in the Open Inventor environment, or if its value cannot be interpreted as a boolean, the specified default value will be returned.

static SoNONUNICODE SbBool SoPreferences::getBool ( const char *  name,
SbBool  defaultValue 
) [static]

Returns the value of the specified environment variable in the Open Inventor environment, interpreted as a boolean.

The search process is the same as for getValue.
The environment variable must have one of the following values ( with any capitalization ) to be valid:

  • T, TRUE or 1 : means TRUE.
  • F, FALSE or 0 : means FALSE.

If the environment variable is not defined in the Open Inventor environment, or if its value cannot be interpreted as a boolean, the specified default value will be returned.

Non Unicode List:
This function should not be used in a Unicode application.
static const SbColor& SoPreferences::getColor ( const SbString name,
const SbColor defaultValue 
) [static]

Returns the value of the specified environment variable in the Open Inventor environment, interpreted as an SbColor.

The search process is the same as for getValue.
If the environment variable is not defined in the Open Inventor environment, or if its value cannot be interpreted as an SbColor, the specified default value will be returned.
To be correctly interpreted, the environment value must be a series of 3 floats between 0.0 and 1.0, separated by spaces.

static SoNONUNICODE const SbColor& SoPreferences::getColor ( const char *  name,
const SbColor defaultValue 
) [static]

Returns the value of the specified environment variable in the Open Inventor environment, interpreted as an SbColor.

The search process is the same as for getValue.
If the environment variable is not defined in the Open Inventor environment, or if its value cannot be interpreted as an SbColor, the specified default value will be returned.
To be correctly interpreted, the environment value must be a series of 3 floats between 0.0 and 1.0, separated by spaces.

Non Unicode List:
This function should not be used in a Unicode application.
static double SoPreferences::getDouble ( const SbString name,
double  defaultValue 
) [static]

Returns the value of the specified environment variable in the Open Inventor environment, interpreted as a double.

The search process is the same as for getValue.
If the environment variable is not defined in the Open Inventor environment, or if its value cannot be interpreted as a double, the specified default value will be returned.

static SoNONUNICODE double SoPreferences::getDouble ( const char *  name,
double  defaultValue 
) [static]

Returns the value of the specified environment variable in the Open Inventor environment, interpreted as a double.

The search process is the same as for getValue.
If the environment variable is not defined in the Open Inventor environment, or if its value cannot be interpreted as a double, the specified default value will be returned.

Non Unicode List:
This function should not be used in a Unicode application.
static float SoPreferences::getFloat ( const SbString name,
float  defaultValue 
) [static]

Returns the value of the specified environment variable in the Open Inventor environment, interpreted as a float.

The search process is the same as for getValue.
If the environment variable is not defined in the Open Inventor environment, or if its value cannot be interpreted as a float, the specified default value will be returned.

static SoNONUNICODE float SoPreferences::getFloat ( const char *  name,
float  defaultValue 
) [static]

Returns the value of the specified environment variable in the Open Inventor environment, interpreted as a float.

The search process is the same as for getValue.
If the environment variable is not defined in the Open Inventor environment, or if its value cannot be interpreted as a float, the specified default value will be returned.

Non Unicode List:
This function should not be used in a Unicode application.
static int SoPreferences::getInt ( const SbString name,
int  defaultValue 
) [static]

Returns the value of the specified environment variable in the Open Inventor environment, interpreted as an int.

The search process is the same as for getValue.
If the environment variable is not defined in the Open Inventor environment, or if its value cannot be interpreted as an int, the specified default value will be returned.

static SoNONUNICODE int SoPreferences::getInt ( const char *  name,
int  defaultValue 
) [static]

Returns the value of the specified environment variable in the Open Inventor environment, interpreted as an int.

The search process is the same as for getValue.
If the environment variable is not defined in the Open Inventor environment, or if its value cannot be interpreted as an int, the specified default value will be returned.

Non Unicode List:
This function should not be used in a Unicode application.
static long SoPreferences::getLong ( const SbString name,
long  defaultValue 
) [static]

Returns the value of the specified environment variable in the Open Inventor environment, interpreted as a long.

The search process is the same as for getValue.
If the environment variable is not defined in the Open Inventor environment, or if its value cannot be interpreted as a long, the specified default value will be returned.

static SoNONUNICODE long SoPreferences::getLong ( const char *  name,
long  defaultValue 
) [static]

Returns the value of the specified environment variable in the Open Inventor environment, interpreted as a long.

The search process is the same as for getValue.
If the environment variable is not defined in the Open Inventor environment, or if its value cannot be interpreted as a long, the specified default value will be returned.

Non Unicode List:
This function should not be used in a Unicode application.
static const SbString& SoPreferences::getString ( const SbString name,
const SbString defaultValue 
) [static]

Returns the value of the specified environment variable in the Open Inventor environment.

The search process is the same as for getValue.
If the environment variable is not defined in the Open Inventor environment, or if it is defined with no values or as an empty string, the specified default value will be returned.

static SoNONUNICODE const SbString& SoPreferences::getString ( const char *  name,
const SbString defaultValue 
) [static]

Returns the value of the specified environment variable in the Open Inventor environment.

The search process is the same as for getValue.
If the environment variable is not defined in the Open Inventor environment, or if it is defined with no values or as an empty string, the specified default value will be returned.

Non Unicode List:
This function should not be used in a Unicode application.
static const SbString* SoPreferences::getStringValue ( const SbString name  )  [static]

Returns the value of the specified environment variable in the Open Inventor environment.



When the getStringValue method is called:

  • It searches for the environment variable in memory and returns the associated value if found,
  • If not found, it searches for the environment variable in the system environment.
  • If found in the system environment, the environment variable and its value are stored in memory for faster access the next time it is queried.

The return value is the address of a character string containing the associated value. This string may be empty if the name is defined but does not have an associated value.

The return value is NULL if the name was not found in the Open Inventor environment or the system environment.

static SoNONUNICODE const char* SoPreferences::getValue ( const char *  name  )  [static]

Returns the value of the specified environment variable in the Open Inventor environment.



When the getValue method is called:

  • It searches for the environment variable in memory and returns the associated value if found,
  • If not found, it searches for the environment variable in the system environment.
  • If found in the system environment, the environment variable and its value are stored in memory for faster access the next time it is queried.

The return value is the address of a character string containing the associated value. This string may be empty if the name is defined but does not have an associated value.

The return value is NULL if the name was not found in the Open Inventor environment or the system environment.

Non Unicode List:
This function should not be used in a Unicode application.
static const SbVec2s& SoPreferences::getVec2s ( const SbString name,
const SbVec2s defaultValue 
) [static]

Returns the value of the specified environment variable in the Open Inventor environment, interpreted as an SbVec2s.

The search process is the same as for getValue.
If the environment variable is not defined in the Open Inventor environment, or if its value cannot be interpreted as an SbVec2s, the specified default value will be returned.
To be correctly interpreted, the environment value must be a series of 2 shorts separated by spaces.

static SoNONUNICODE const SbVec2s& SoPreferences::getVec2s ( const char *  name,
const SbVec2s defaultValue 
) [static]

Returns the value of the specified environment variable in the Open Inventor environment, interpreted as an SbVec2s.

The search process is the same as for getValue.
If the environment variable is not defined in the Open Inventor environment, or if its value cannot be interpreted as an SbVec2s, the specified default value will be returned.
To be correctly interpreted, the environment value must be a series of 2 shorts separated by spaces.

Non Unicode List:
This function should not be used in a Unicode application.
static const SbVec3f& SoPreferences::getVec3f ( const SbString name,
const SbVec3f defaultValue 
) [static]

Returns the value of the specified environment variable in the Open Inventor environment, interpreted as an SbVec3f.

The search process is the same as for getValue.
If the environment variable is not defined in the Open Inventor environment, or if its value cannot be interpreted as an SbVec3f, the specified default value will be returned.
To be correctly interpreted, the environment value must be a series of 3 floats separated by spaces.

static SoNONUNICODE const SbVec3f& SoPreferences::getVec3f ( const char *  name,
const SbVec3f defaultValue 
) [static]

Returns the value of the specified environment variable in the Open Inventor environment, interpreted as an SbVec3f.

The search process is the same as for getValue.
If the environment variable is not defined in the Open Inventor environment, or if its value cannot be interpreted as an SbVec3f, the specified default value will be returned.
To be correctly interpreted, the environment value must be a series of 3 floats separated by spaces.

Non Unicode List:
This function should not be used in a Unicode application.
static void SoPreferences::readFile ( const SbString filename  )  [static]

Reads environment name-value pairs from the specified configuration file and adds them to the current Open Inventor environment.

See the Configuration File Format section for details.

static SoNONUNICODE void SoPreferences::readFile ( const char *  filename  )  [static]

Reads environment name-value pairs from the specified configuration file and adds them to the current Open Inventor environment.

See the Configuration File Format section for details.

Non Unicode List:
This function should not be used in a Unicode application.
static void SoPreferences::setBool ( const SbString name,
SbBool  value 
) [static]

Sets a variable that has a boolean value in the Open Inventor environment.

See setValue for details.

static SoNONUNICODE void SoPreferences::setBool ( const char *  name,
SbBool  value 
) [static]

Sets a variable that has a boolean value in the Open Inventor environment.

See setValue for details.

Non Unicode List:
This function should not be used in a Unicode application.
static void SoPreferences::setColor ( const SbString name,
const SbColor value 
) [static]

Sets a variable that has an SbColor value in the Open Inventor environment.

See setValue for details.

static SoNONUNICODE void SoPreferences::setColor ( const char *  name,
const SbColor value 
) [static]

Sets a variable that has an SbColor value in the Open Inventor environment.

See setValue for details.

Non Unicode List:
This function should not be used in a Unicode application.
static void SoPreferences::setDouble ( const SbString name,
double  value 
) [static]

Sets a variable that has a double value in the Open Inventor environment.

See setValue for details.

static SoNONUNICODE void SoPreferences::setDouble ( const char *  name,
double  value 
) [static]

Sets a variable that has a double value in the Open Inventor environment.

See setValue for details.

Non Unicode List:
This function should not be used in a Unicode application.
static void SoPreferences::setFloat ( const SbString name,
float  value 
) [static]

Sets a variable that has a float value in the Open Inventor environment.

See setValue for details.

static SoNONUNICODE void SoPreferences::setFloat ( const char *  name,
float  value 
) [static]

Sets a variable that has a float value in the Open Inventor environment.

See setValue for details.

Non Unicode List:
This function should not be used in a Unicode application.
static void SoPreferences::setInt ( const SbString name,
int  value 
) [static]

Sets a variable that has an int value in the Open Inventor environment.

See setValue for details.

static SoNONUNICODE void SoPreferences::setInt ( const char *  name,
int  value 
) [static]

Sets a variable that has an int value in the Open Inventor environment.

See setValue for details.

Non Unicode List:
This function should not be used in a Unicode application.
static void SoPreferences::setLong ( const SbString name,
long  value 
) [static]

Sets a variable that has a long value in the Open Inventor environment.

See setValue for details.

static SoNONUNICODE void SoPreferences::setLong ( const char *  name,
long  value 
) [static]

Sets a variable that has a long value in the Open Inventor environment.

See setValue for details.

Non Unicode List:
This function should not be used in a Unicode application.
static void SoPreferences::setString ( const SbString name,
const SbString value 
) [static]

Sets a variable that has an SbString value in the Open Inventor environment.

See setValue for details.

static SoNONUNICODE void SoPreferences::setString ( const char *  name,
const SbString value 
) [static]

Sets a variable that has an SbString value in the Open Inventor environment.

See setValue for details.

Non Unicode List:
This function should not be used in a Unicode application.
static void SoPreferences::setValue ( const SbString name,
const SbString value = NULL 
) [static]

Sets a variable in the Open Inventor environment.

As this variable is set in memory, it is local to the application process and can only be retrieved using SoPreferences methods.

If the value parameter is set to NULL (default), then the variable is set with no value associated with it.

If the first character of the string name is a '-', then the variable is unset in the Open Inventor environment.

static SoNONUNICODE void SoPreferences::setValue ( const char *  name,
const char *  value = NULL 
) [static]

Sets a variable in the Open Inventor environment.

As this variable is set in memory, it is local to the application process and can only be retrieved using SoPreferences methods.

If the value parameter is set to NULL (default), then the variable is set with no value associated with it.

If the first character of the string name is a '-', then the variable is unset in the Open Inventor environment.

Non Unicode List:
This function should not be used in a Unicode application.
static void SoPreferences::setVec2s ( const SbString name,
const SbVec2s value 
) [static]

Sets a variable that has an SbVec2s value in the Open Inventor environment.

See setValue for details.

static SoNONUNICODE void SoPreferences::setVec2s ( const char *  name,
const SbVec2s value 
) [static]

Sets a variable that has an SbVec2s value in the Open Inventor environment.

See setValue for details.

Non Unicode List:
This function should not be used in a Unicode application.
static void SoPreferences::setVec3f ( const SbString name,
const SbVec3f value 
) [static]

Sets a variable that has an SbVec3f value in the Open Inventor environment.

See setValue for details.

static SoNONUNICODE void SoPreferences::setVec3f ( const char *  name,
const SbVec3f value 
) [static]

Sets a variable that has an SbVec3f value in the Open Inventor environment.

See setValue for details.

Non Unicode List:
This function should not be used in a Unicode application.

Friends And Related Function Documentation

friend class SoPreferencesImpl [friend]

The documentation for this class was generated from the following file:

Open Inventor Toolkit reference manual, generated on 12 Feb 2024
Copyright © Thermo Fisher Scientific All rights reserved.
http://www.openinventor.com/