coin_envvars(3)

NAME
coin_envvars - Miscellaneous Environment Variables

 - Various aspects of the Coin runtime behaviour can be controlled through setting different environment variables to some value.

SYNOPSIS

  Variables
typedef EnvironmentVariable
EnvironmentVariable COIN_PROFILER
EnvironmentVariable COIN_PROFILER_OVERLAY
EnvironmentVariable COIN_DEBUG_GLU_INFO
EnvironmentVariable COIN_DEBUG_GLU_VERSION
EnvironmentVariable COIN_DEBUG_FONTSUPPORT
EnvironmentVariable COIN_DEBUG_3DS
EnvironmentVariable COIN_DEBUG_AUDIO
EnvironmentVariable COIN_DEBUG_BREAK
EnvironmentVariable COIN_DEBUG_CACHING
EnvironmentVariable COIN_DEBUG_DL
EnvironmentVariable COIN_DEBUG_IMPORT
EnvironmentVariable COIN_DEBUG_LISTMODULES
EnvironmentVariable COIN_DEBUG_SOINPUT_FINDFILE
EnvironmentVariable COIN_DEBUG_SOOFFSCREENRENDERER
EnvironmentVariable COIN_DEBUG_WRITEREFS
EnvironmentVariable COIN_RANDOMIZE_RENDER_CACHING
EnvironmentVariable COIN_FREETYPE2_LIBNAME
EnvironmentVariable COIN_FORCE_FONTCONFIG_OFF
EnvironmentVariable COIN_FORCE_FREETYPE_OFF
EnvironmentVariable COIN_FORCE_WIN32FONTS_OFF
EnvironmentVariable COIN_FONT_PATH
EnvironmentVariable COIN_DISABLE_UTF8
EnvironmentVariable COIN_GLBBOX
EnvironmentVariable COIN_GLU_LIBNAME
EnvironmentVariable COIN_AGLGLUE_NO_PBUFFERS
EnvironmentVariable COIN_CGLGLUE_NO_PBUFFERS
EnvironmentVariable COIN_GLXGLUE_NO_GLX13_PBUFFERS
EnvironmentVariable COIN_GLXGLUE_NO_PBUFFERS
EnvironmentVariable COIN_GLX_PIXMAP_DIRECT_RENDERING
EnvironmentVariable COIN_WGLGLUE_NO_PBUFFERS
EnvironmentVariable COIN_SIMAGE_LIBNAME
EnvironmentVariable COIN_ZLIB_LIBNAME
EnvironmentVariable COIN_BZIP2_LIBNAME
EnvironmentVariable COIN_DONT_MANGLE_OUTPUT_NAMES
EnvironmentVariable COIN_EXTSELECTION_SAVE_OFFSCREENBUFFER
EnvironmentVariable COIN_FORCE_TILED_OFFSCREENRENDERING
EnvironmentVariable COIN_GLERROR_DEBUGGING
EnvironmentVariable COIN_OFFSCREENRENDERER_MAX_TILESIZE
EnvironmentVariable COIN_OFFSCREENRENDERER_TILEHEIGHT
EnvironmentVariable COIN_OFFSCREENRENDERER_TILEWIDTH
EnvironmentVariable COIN_OLDSTYLE_FORMATTING
EnvironmentVariable COIN_SEPARATE_DIFFUSE_TRANSPARENCY_OVERRIDE
EnvironmentVariable COIN_SOINPUT_SEARCH_GLOBAL_DICT
EnvironmentVariable COIN_SORTED_LAYERS_USE_NVIDIA_RC
EnvironmentVariable COIN_SOUND_BUFFER_LENGTH
EnvironmentVariable COIN_SOUND_DISABLE
EnvironmentVariable COIN_SOUND_DRIVER_NAME
EnvironmentVariable COIN_SOUND_ENABLE
EnvironmentVariable COIN_SOUND_INTRO_PAUSE
EnvironmentVariable COIN_SOUND_NUM_BUFFERS
EnvironmentVariable COIN_SOUND_THREAD_SLEEP_TIME
EnvironmentVariable COIN_OPENAL_LIBNAME
EnvironmentVariable COIN_TEX2_LINEAR_LIMIT
EnvironmentVariable COIN_TEX2_LINEAR_MIPMAP_LIMIT
EnvironmentVariable COIN_TEX2_MIPMAP_LIMIT
EnvironmentVariable COIN_TEX2_SCALEUP_LIMIT
EnvironmentVariable COIN_TEX2_USE_GLTEXSUBIMAGE
EnvironmentVariable COIN_TEX2_ANISOTROPIC_LIMIT
EnvironmentVariable COIN_TEX2_USE_SGIS_GENERATE_MIPMAP
EnvironmentVariable COIN_MAXIMUM_TEXTURE2_SIZE
EnvironmentVariable COIN_MAXIMUM_TEXTURE3_SIZE
EnvironmentVariable COIN_NORMALIZATION_CUBEMAP_SIZE
EnvironmentVariable OIV_NUM_SORTED_LAYERS_PASSES
EnvironmentVariable COIN_NUM_SORTED_LAYERS_PASSES
EnvironmentVariable COIN_QUADMESH_PRECISE_LIGHTING
EnvironmentVariable COIN_ENABLE_CONFORMANT_GL_CLAMP
EnvironmentVariable IV_SEPARATOR_MAX_CACHES
EnvironmentVariable COIN_AUTOCACHE_LOCAL_MAX
EnvironmentVariable COIN_AUTOCACHE_LOCAL_MIN
EnvironmentVariable COIN_AUTOCACHE_REMOTE_MAX
EnvironmentVariable COIN_AUTOCACHE_REMOTE_MIN
EnvironmentVariable COIN_AUTOCACHE_VBO_LIMIT
EnvironmentVariable COIN_AUTO_CACHING
EnvironmentVariable COIN_ENABLE_VBO
EnvironmentVariable COIN_VBO
EnvironmentVariable COIN_VBO_MAX_LIMIT
EnvironmentVariable COIN_VBO_MIN_LIMIT
EnvironmentVariable COIN_SOOFFSCREENRENDERER_ALLOW_RESOURCEHOG
EnvironmentVariable SO_DRAGGER_DIR
EnvironmentVariable SO_SHADER_DIR
EnvironmentVariable COINDIR
EnvironmentVariable COIN_ALLOW_SPIDERMONKEY
EnvironmentVariable COIN_CALCULATE_NURBS_NORMALS
EnvironmentVariable COIN_CG_LIBNAME
EnvironmentVariable COIN_DEBUG_ASSERT_SOBASE_SETNAME
EnvironmentVariable COIN_DEBUG_BINARY_INPUT
EnvironmentVariable COIN_DEBUG_CLEANUP
EnvironmentVariable COIN_DEBUG_EXTRA
EnvironmentVariable COIN_DEBUG_FLATTEN_NODEKITS_ON_WRITE
EnvironmentVariable COIN_DEBUG_GLGLUE
EnvironmentVariable COIN_DEBUG_GLRENDER_TRAVERSAL
EnvironmentVariable COIN_DEBUG_GLUNURBSSURFACE
EnvironmentVariable COIN_DEBUG_INTERSECTIONDETECTIONACTION
EnvironmentVariable COIN_DEBUG_MUTEXLOCK_MAXTIME
EnvironmentVariable COIN_DEBUG_MUTEXLOCK_TIMING
const char * COIN_DEBUG_MUTEX_COUNT = 'COIN_DEBUG_MUTEX_COUNT'
EnvironmentVariable COIN_DEBUG_NORMALIZE
EnvironmentVariable COIN_DEBUG_NPRINTF
EnvironmentVariable COIN_DEBUG_NURBS_COMPLEXITY
EnvironmentVariable COIN_DEBUG_ROOT_NOTIFICATIONS
EnvironmentVariable COIN_DEBUG_SIMAGE
EnvironmentVariable COIN_DEBUG_SOEXTSELECTION
EnvironmentVariable COIN_DEBUG_SOFILE_READ
EnvironmentVariable COIN_DEBUG_SOOFFSCREENRENDERER_TILEPREFIX
EnvironmentVariable COIN_DEBUG_SPIDERMONKEY_BINDING
EnvironmentVariable COIN_DEBUG_STRING_GROW
EnvironmentVariable COIN_DEBUG_TRACK_SOBASE_INSTANCES
EnvironmentVariable COIN_DEBUG_VBO
EnvironmentVariable COIN_DEBUG_VRMLSCRIPT
EnvironmentVariable COIN_FONTCONFIG_LIBNAME
EnvironmentVariable COIN_DONT_INFORM_INDIRECT_RENDERING
EnvironmentVariable COIN_DONT_USE_FBO
EnvironmentVariable COIN_FORCE_AGL
EnvironmentVariable COIN_FORCE_GL1_0_ONLY
EnvironmentVariable COIN_FULL_INDIRECT_RENDERING
EnvironmentVariable COIN_GLGLUE_DISABLE_NON_POWER_OF_TWO_TEXTURES
EnvironmentVariable COIN_GLGLUE_DISABLE_PALETTED_TEXTURE
EnvironmentVariable COIN_GLGLUE_DISABLE_VBO_IN_DISPLAYLIST
EnvironmentVariable COIN_GLGLUE_NO_ELSA_WARNING
EnvironmentVariable COIN_GLGLUE_NO_G400_WARNING
EnvironmentVariable COIN_GLGLUE_NO_RADEON_WARNING
EnvironmentVariable COIN_GLGLUE_NO_SUN_EXPERT3D_WARNING
EnvironmentVariable COIN_GLGLUE_NO_TRIDENT_WARNING
EnvironmentVariable COIN_GLGLUE_SILENCE_DRIVER_WARNINGS
EnvironmentVariable COIN_GLU_SILENCE_TESS_COMBINE_WARNING
EnvironmentVariable COIN_GL_DISABLE_VBO
EnvironmentVariable COIN_GL_NO_CURRENT_CONTEXT_CHECK
EnvironmentVariable COIN_HANDLE_STACK_OVERFLOW
EnvironmentVariable COIN_NESTED_CACHING
EnvironmentVariable COIN_NOT_STRICT_VRML97
EnvironmentVariable COIN_NO_NVIDIA_COLOR_PER_FACE_BUG_WORKAROUND
EnvironmentVariable COIN_NO_SOTYPE_DYNLOAD
EnvironmentVariable COIN_OFFSCREEN_STENCIL_BITS
EnvironmentVariable COIN_OLD_NURBS_COMPLEXITY
EnvironmentVariable COIN_PREFER_GLPOLYGONOFFSET_EXT
EnvironmentVariable COIN_PREFER_GLU_TESSELLATOR
EnvironmentVariable COIN_REDUCE_LINEAR_NURBS_STEPS
EnvironmentVariable COIN_SMART_CACHING
EnvironmentVariable COIN_SPIDERMONKEY_LIBNAME
EnvironmentVariable COIN_VERTEX_ARRAYS
EnvironmentVariable COIN_VIEWUP
EnvironmentVariable WINDIR

Detailed Description

Various aspects of the Coin runtime behaviour can be controlled through setting different environment variables to some value. Most of these variables are there for debugging and problem-workaround purposes, but a few are for telling Coin where to locate external resource files.

Here we will set up a list of some of the environment variables Coin will check for and can alter behavior because of. Scene Graph Profiler

The scene graph profiler subsystem uses the following environment variables:

•   COIN_PROFILER

•   COIN_PROFILER_OVERLAY

A lot of other environment variables will also affect the profiling and listing them all would be tedious. Most useful is perhaps the IV_SEPARATOR_MAX_CACHES variable for disabling caching, and those that disable features like vertex arrays and frame buffer objects, but using these will of course cause you to profile special cases that may not be as important as you might think.

Variable Documentation

  typedef EnvironmentVariable
This is a fake type to peg documentation for environment variables that Coin uses on.

Environment variables are variables you set on your system, which are read in by the Coin-based application at runtime. These environment variables are irrelevant at compile time when Coin is built.

  EnvironmentVariable COIN_PROFILER
This variable should be a set of profiler settings keywords, separated by ":" characters.

The keywords are:

•   on

•   off

•   syncgl

The on keyword just enables the profiling element so profiling data is recorded.

The off keyword just disables the profiling subsystem. There is really no need for specifying this as it is off by default, but can for instance be used to override settings already in the environment at launch-time.

The syncgl keyword will make GL rendering flush the GL pipeline between each node, so that the profiling data will better reflect which nodes actually cause work for Open GL. Note however that the GL rendering performance drops like a rock when enabling this. The syncgl keyword implies the on keyword.

Old Usage: When this was first implemented, just setting this environment variable to "1" or any positive integer value turned on the live scene graph profiling feature in Coin. This usage is still supported, but as the number of options grew, it was obvious that we needed a new scheme rather than one variable for each feature. The positive integer approach cannot be combined with using keywords, and setting the value to "1" is the same thing as setting it to "on".

  EnvironmentVariable COIN_PROFILER_OVERLAY
This variable enables some default profiler statistics output techniques. It should be a set of profiler overlay settings keywords, separated by ":" characters.

•   autoredraw=<float>

•   stdout

•   stderr

•   clear

•   header

•   lines=<int>

•   action=<actionclass>

•   category=<nodes|types|names>

The autoredraw=<float> option sets up the GL display to automatically redraw the display after a delay of <float> seconds. Example: redraw=0.2 gives you somewhere below 5 redraws a second, depending on how fast each frame is drawn.

The stdout keyword causes the profiling data to be sent to stdout instead of being overlaid on the GL view.

The stderr keyword causes the profiling data to be sent to stderr instead of being overlaid on the GL view.

The clear keyword works with stdout and stderr, and makes Coin attempt to clear the console between each time it dumps profiling data. It just uses the ANSI console escape sequence for clearing, which may not work on all types of terminals.

The header keyword makes the profiling output be preceded by a header line that explains what each column means. It only works with stdout and stderr.

The lines=<int> option lets you select the number of lines to output. The default is 20. This option only works with stdout and stderr.

The action=<actionclass> option lets you select which action is to be profiled. The default is of course the SoGLRenderAction. This only works with stdout and stderr.

The category=<keyword> option lets you specify which view you should have on the profiling data. A nodes view will give you one entry in the list for each node. A types view will summarize over each type and present one entry per node type. A names view will group nodes that belong under the same named node together and presents that summary as one entry.

Old Usage: Setting this environment variable to "1" (or any positive integer) turns on the live scene graph (primarily) profiling overlay feature in Coin, the way it was in the beginning of implementing this functionality. This still works but just gives you one default view. It cannot be combined with using keywords.

  EnvironmentVariable COIN_DEBUG_GLU_INFO

  EnvironmentVariable COIN_DEBUG_GLU_VERSION

  EnvironmentVariable COIN_DEBUG_FONTSUPPORT
If this environment variable is set to a value > 0, an extensive amount of debug information about loading, initializing and using fonts will be output. Issues like missing fonts and other related problems will then be reported, so we advice you to first try to use this debugging option when something does not work quite as expected.

  EnvironmentVariable COIN_DEBUG_3DS
By default only error messages are generated. COIN_DEBUG_3DS environment variable can be used to specify amount of debug messages: 0 .. only error messages (default) 1 .. warnings that usually concerns data parsed from the 3ds file 2 .. print basic 3ds file structure info 3 .. print everything

  EnvironmentVariable COIN_DEBUG_AUDIO
If this environment variable is set to a value > 0, additional debug information is output when sound support is enabled.

  EnvironmentVariable COIN_DEBUG_BREAK
This environment variable is supported by Coin to set conditional breakpoints. It can be set to any number of functions in the form of a list separated by commas or spaces. The function names must be given as "classname::functionname" (i.e. without return type, parenthesis or argument types or names). If a debug message is posted from one of those functions, your program will be stopped (using assert(0)).

This can be useful if you want to get core-dumps or enter a debugger whenever for instance a warning or an error is posted from some function (e.g. "SbVec3f::normalize"). This feature is only enabled in the debug version of Coin.

  EnvironmentVariable COIN_DEBUG_CACHING
If this environment variable is set to a value > 0, additional debug information is output about caching.

  EnvironmentVariable COIN_DEBUG_DL
If this environment variable is set to a value > 0, additional debug information is output when loading dynamic libraries/shared objects.

  EnvironmentVariable COIN_DEBUG_IMPORT
If this environment variable is set to a value > 0, additional debug information is output when importing files in Inventor format.

  EnvironmentVariable COIN_DEBUG_LISTMODULES
If this environment variable is set to a value > 0, additional debug information is output under Win32 when loading multiple instances of the same library.

  EnvironmentVariable COIN_DEBUG_SOINPUT_FINDFILE
If this environment variable is set to a value > 0, additional debug information is output when scanning through the include directories in order and trying to find a file in any of them (SoInput::findFile).

  EnvironmentVariable COIN_DEBUG_SOOFFSCREENRENDERER
If this environment variable is set to a value > 0, additional debug information is output when doing offscreen rendering.

  EnvironmentVariable COIN_DEBUG_WRITEREFS
If this environment variable is set to a value > 0, additional debug information regarding writerefs is output.

  EnvironmentVariable COIN_RANDOMIZE_RENDER_CACHING
This environment variable is used for local stability / robustness / correctness testing of the render caching. If set to a value > 0, renderCaching will be set to "ON" with a probability of 0.5 for every SoSeparator instantiated.

  EnvironmentVariable COIN_FREETYPE2_LIBNAME
Set the system shared library name for the FreeType library.

  EnvironmentVariable COIN_FORCE_FONTCONFIG_OFF
In case you intend to use your application on systems where the Fontconfig library is expected to be not installed you should not make use of Fontconfig's font pattern syntax.

If this environment variable is set to a value > 0, the usage of Fontconfig can be prevented.

  EnvironmentVariable COIN_FORCE_FREETYPE_OFF
On Windows the Win32 GDI library is used. FreeType and Fontconfig are dynamically loaded on demand by Coin if font support is requested by a node. When font support is loaded on Windows, FreeType will have precedence over Win32 if located. This can be prevented if this environment variable is set to a value > 0.

  EnvironmentVariable COIN_FORCE_WIN32FONTS_OFF
If this environment variable is set to a value > 0, the usage of Win32 fonts is disabled (even on Windows platform).

  EnvironmentVariable COIN_FONT_PATH
It is possible to specify the TrueType font file directly if FreeType is used as font engine. This is done by including ".ttf" in the filename, i.e. "Comic_Sans_MS.ttf". Coin will then search the local path for the running program and then the path specified by the "COIN_FONT_PATH" environment variable. If the program is using FreeType on a Windows platform, the "$WINDIR/Fonts" directory will also be searched.

  EnvironmentVariable COIN_DISABLE_UTF8
Coin from version 4.0 onwards expects all characters related to text rendering to be UTF-8 encoded.

This variable should be a set, if you need to reinstate the old behavior of treating all characters according to the Western Latin-1 encoding.

  EnvironmentVariable COIN_GLBBOX
If this environment variable is set to a value > 0, rendering action traversals will apply a bounding box action before rendering. This will make sure bounding box caches are updated (needed for view frustum culling). The default Quarter/SoQt/SoWin/SoXt viewers will handle this at their end (which is the proper way to do it), so we don't do this by default.

  EnvironmentVariable COIN_GLU_LIBNAME
Set the system shared library name for the GLU library.

  EnvironmentVariable COIN_AGLGLUE_NO_PBUFFERS
If this environment variable is set to a value > 0, software rendering of offscreen contexts is forced for AGL (Mac OS X).

  EnvironmentVariable COIN_CGLGLUE_NO_PBUFFERS
If this environment variable is set to a value > 0, software rendering of offscreen contexts is forced for CGL (Mac OS X).

  EnvironmentVariable COIN_GLXGLUE_NO_GLX13_PBUFFERS
If this environment variable is set to a value > 0, GLX 1.3 pbuffers support will not be used, but it will be attempted to use pbuffers through extensions.

  EnvironmentVariable COIN_GLXGLUE_NO_PBUFFERS
If this environment variable is set to a value > 0, software rendering of offscreen contexts is forced for GLX.

  EnvironmentVariable COIN_GLX_PIXMAP_DIRECT_RENDERING
If this environment variable is used to control direct rendering in GLX for offscreen contexts. If the value is set to a value > 0, direct rendering is forced.

  EnvironmentVariable COIN_WGLGLUE_NO_PBUFFERS
If this environment variable is set to a value > 0, software rendering of offscreen contexts is forced for WGL (Windows).

  EnvironmentVariable COIN_SIMAGE_LIBNAME
Set the system shared library name for the simage library.

  EnvironmentVariable COIN_ZLIB_LIBNAME
Set the system shared library name for the zlib library.

  EnvironmentVariable COIN_BZIP2_LIBNAME
Set the system shared library name for the bzip2 library.

  EnvironmentVariable COIN_DONT_MANGLE_OUTPUT_NAMES
If this environment variable is set to a value > 0, we try to preserve the original node names as far as possible instead of appending a "+<refid>" suffix.

  EnvironmentVariable COIN_EXTSELECTION_SAVE_OFFSCREENBUFFER
If the environment variable is set to a file name, the content of the offscreen buffer is stored to disk for investigation.

  EnvironmentVariable COIN_FORCE_TILED_OFFSCREENRENDERING
If this environment variable is set to a value > 0, offscreen rendering is forced to tiled rendering even when it can be done in a single chunk.

  EnvironmentVariable COIN_GLERROR_DEBUGGING
The GL error test is disabled by default for the optimized paths. If you get a GL error reporting an error in the Separator node, enable the error checking code by setting this environment variable to a value > 0, to see exactly which node caused the error.

  EnvironmentVariable COIN_OFFSCREENRENDERER_MAX_TILESIZE
Can be used to force a maximum size (width and height) of a rendering tile in the offscreen renderer.

See also
    COIN_OFFSCREENRENDERER_TILEHEIGHT, COIN_OFFSCREENRENDERER_TILEWIDTH

  EnvironmentVariable COIN_OFFSCREENRENDERER_TILEHEIGHT
Can be used to override the default height of a rendering tile in the offscreen renderer. Should prove useful for debugging problems on remote sites.

See also
    COIN_OFFSCREENRENDERER_TILEWIDTH, COIN_OFFSCREENRENDERER_MAX_TILESIZE

  EnvironmentVariable COIN_OFFSCREENRENDERER_TILEWIDTH
Can be used to override the default width of a rendering tile in the offscreen renderer. Should prove useful for debugging problems on remote sites.

See also
    COIN_OFFSCREENRENDERER_TILEHEIGHT, COIN_OFFSCREENRENDERER_MAX_TILESIZE

  EnvironmentVariable COIN_OLDSTYLE_FORMATTING
Can be used to enable the output of the old ugly-bugly formatting style, in case someone, for some obscure reason, depends on it.

  EnvironmentVariable COIN_SEPARATE_DIFFUSE_TRANSPARENCY_OVERRIDE
Traditional Open Inventor uses the same override bit for both diffuse color and transparency. To get around this problem if you need to override one without the other, set this environment variable to "1". This is a Coin extension, and will not work on other Open Inventor implementations.

  EnvironmentVariable COIN_SOINPUT_SEARCH_GLOBAL_DICT
When set to "1", the global dictionary is searched after the current file dictionary when resolving USE keywords. This makes it possible to reference nodes in other files.

  EnvironmentVariable COIN_SORTED_LAYERS_USE_NVIDIA_RC
Can be used to enable the usage of extensions for rendering SORTED_LAYERS_BLEND transparency which are only available on NVIDIA chipsets (GeForce3 and above, except GeForce4 MX). These extensions are GL_NV_texture_shader, GL_NV_texture_rectangle or GL_EXT_texture_rectangle, GL_NV_register_combiners, GL_ARB_shadow and GL_ARB_depth_texture. If this environment variable is set to "1" these extensions are used, otherwise the GL_ARB_fragment_program extension is used that is currently supported by the GeForceFX family and the Radeon 9500 and above.

  EnvironmentVariable COIN_SOUND_BUFFER_LENGTH

  EnvironmentVariable COIN_SOUND_DISABLE
Sound support is considered experimental, and is therefore not enabled by default, as sound support through OpenAL caused crashes under Linux. Setting the environment variable COIN_SOUND_ENABLE support in SoAudioDevice.

See also
    COIN_SOUND_ENABLE

  EnvironmentVariable COIN_SOUND_DRIVER_NAME
The user can control which device name OpenAL uses by setting the COIN_SOUND_DRIVER_NAME environment variable. On Microsoft Windows, the default driver name is "DirectSound3D", which should normally be what the user wants.

  EnvironmentVariable COIN_SOUND_ENABLE
Sound support is considered experimental, and is therefore not enabled by default, as sound support through OpenAL caused crashes under Linux. Setting the environment variable COIN_SOUND_ENABLE to a value > 0 enables sound support in SoAudioDevice. If set to 0 sound support is disabled.

See also
    COIN_SOUND_DISABLE

  EnvironmentVariable COIN_SOUND_INTRO_PAUSE

  EnvironmentVariable COIN_SOUND_NUM_BUFFERS

  EnvironmentVariable COIN_SOUND_THREAD_SLEEP_TIME

  EnvironmentVariable COIN_OPENAL_LIBNAME
Set the system shared library name for the OpenAL library.

  EnvironmentVariable COIN_TEX2_LINEAR_LIMIT
Linear filtering is enabled if Complexity::textureQuality is greater or equal to this value.

Default value is 0.2

  EnvironmentVariable COIN_TEX2_LINEAR_MIPMAP_LIMIT
Linear filtering between mipmap levels is enabled if textureQuality is greater or equal to this value.

Default value is 0.8

  EnvironmentVariable COIN_TEX2_MIPMAP_LIMIT
Mipmaps are created if textureQuality is greater or equal to this value.

Default value is 0.5

  EnvironmentVariable COIN_TEX2_SCALEUP_LIMIT
Textures with width or height not equal to a power of two will always be scaled up if textureQuality is greater or equal to this value.

Default value is 0.7

If textureQuality is lower than this value, and the width or height is larger than 256 pixels, the texture is only scaled up if its size is relatively close to the next power of two. This could save a lot of texture memory.

  EnvironmentVariable COIN_TEX2_USE_GLTEXSUBIMAGE
When set, and when the new texture data have the same attributes as the old data, glTexSubImage() will be used to copy new data into the texture instead of recreating the texture. This is not enabled by default, since it seems to trigger a bug in the Linux nVidia drivers. It just happens in some unreproduceable cases. It could be a bug in our glTexSubImage() code, of course. :)

  EnvironmentVariable COIN_TEX2_ANISOTROPIC_LIMIT
Anisotropic filtering is enabled for textures when the texture quality is higher than this value.

Default value is 0.85

  EnvironmentVariable COIN_TEX2_USE_SGIS_GENERATE_MIPMAP
When set, use the GL_SGIS_generate_mipmap extension (if available) to generate mipmaps, otherwise use a fast internal routine to generate them. Use of GL_SGIS_generate_mipmap is not enabled by default since we suspect some ATi drivers have problems with this extension.

  EnvironmentVariable COIN_MAXIMUM_TEXTURE2_SIZE
Can be used to limit the maximum supported size (width and height) of a 2D texture in the renderer.

See also
    COIN_MAXIMUM_TEXTURE3_SIZE

  EnvironmentVariable COIN_MAXIMUM_TEXTURE3_SIZE
Can be used to limit the maximum supported size (width, height and depth) of a 3D texture in the renderer.

See also
    COIN_MAXIMUM_TEXTURE2_SIZE

  EnvironmentVariable COIN_NORMALIZATION_CUBEMAP_SIZE

  EnvironmentVariable OIV_NUM_SORTED_LAYERS_PASSES
To be able to render correct transparency independent of object order, one have to render in multiple passes. This technique is based on depth-peeling which strips away depth layers with each successive pass. The number of passes is therefore an indication of how deep into the scene transparent surfaces will be rendered with transparency. A higher number will lead to a lower frame rate but higher quality for scenes with a lot of transparent surfaces. The default number of passes is '4' and can be specified by either using SoGLRenderAction::setSortedLayersNumPasses() or by letting the environment variable COIN_NUM_SORTED_LAYERS_PASSES respectively OIV_NUM_SORTED_LAYERS_PASSES specify the number of passes.

See also
    COIN_NUM_SORTED_LAYERS_PASSES

  EnvironmentVariable COIN_NUM_SORTED_LAYERS_PASSES
To be able to render correct transparency independent of object order, one have to render in multiple passes. This technique is based on depth-peeling which strips away depth layers with each successive pass. The number of passes is therefore an indication of how deep into the scene transparent surfaces will be rendered with transparency. A higher number will lead to a lower frame rate but higher quality for scenes with a lot of transparent surfaces. The default number of passes is '4' and can be specified by either using SoGLRenderAction::setSortedLayersNumPasses() or by letting the environment variable COIN_NUM_SORTED_LAYERS_PASSES respectively OIV_NUM_SORTED_LAYERS_PASSES specify the number of passes.

See also
    OIV_NUM_SORTED_LAYERS_PASSES

  EnvironmentVariable COIN_QUADMESH_PRECISE_LIGHTING
When shading SoQuadMesh instances the quads in the mesh are just passed on to OpenGL's GL_QUAD primitive rendering. Under certain circumstances, this can lead to artifacts in how your meshes are shaded. This is an inherent problem with drawing quads in meshes.

By setting the this environment variable to "1", the quads will be broken up into triangles before rendered, and shading will likely look much better. Be aware that this technique causes rendering of the SoQuadMesh to slow down by an approximate factor of 6.

The "precise lighting" technique is currently limited to work only when SoQuadMesh rendering is parameterized with 3D coordinates, a material binding that is not per vertex, and if texture mapping is done is must be without using any of the SoTextureCoordinateFunction subclass nodes.

  EnvironmentVariable COIN_ENABLE_CONFORMANT_GL_CLAMP
When this environment variable is set, GL_CLAMP will be used if SoGLImage::CLAMP is specified as the texture wrap mode. By default GL_CLAMP_TO_EDGE is used, since this is usually what people want.

  EnvironmentVariable IV_SEPARATOR_MAX_CACHES
Can be used to tune the number of display list caches stored in each SoSeparator. The default value is 2.

Setting this value to 0 will disable display list caching, and this is often useful if you experience weird rendering bugs which are hard to track down.

  EnvironmentVariable COIN_AUTOCACHE_LOCAL_MAX
Can be used to change the disable-caching limit.

See also
    COIN_AUTOCACHE_LOCAL_MIN, COIN_AUTOCACHE_REMOTE_MAX

  EnvironmentVariable COIN_AUTOCACHE_LOCAL_MIN
Can be used to change the enable-caching limit.

See also
    COIN_AUTOCACHE_LOCAL_MAX, COIN_AUTOCACHE_REMOTE_MIN

  EnvironmentVariable COIN_AUTOCACHE_REMOTE_MAX
Can be used to change the disable-caching limit for remote rendering.

See also
    COIN_AUTOCACHE_REMOTE_MIN, COIN_AUTOCACHE_LOCAL_MAX

  EnvironmentVariable COIN_AUTOCACHE_REMOTE_MIN
Can be used to change the enable-caching limit for remote rendering.

See also
    COIN_AUTOCACHE_REMOTE_MAX, COIN_AUTOCACHE_LOCAL_MIN

  EnvironmentVariable COIN_AUTOCACHE_VBO_LIMIT
Can be used to avoid creating caches when rendering large VBOs.

  EnvironmentVariable COIN_AUTO_CACHING
If this environment variable is set to a value of 0, auto caching will be disabled. It is enabled by default.

  EnvironmentVariable COIN_ENABLE_VBO

  EnvironmentVariable COIN_VBO
If this environment variable is set to a value of 0, VBO rendering in Coin will be disabled. This is useful if you suspect bugs in either Coin's VBO code or in the OpenGL driver VBO handling.

  EnvironmentVariable COIN_VBO_MAX_LIMIT
Can be used to set the maximum number of items (coordinates, normals, texcoords or colors) allowed when creating a vertex buffer object. On most drivers it's actually slower to render large arrays with VBOs than with normal vertex array rendering.

The default value is 256000, and when the number of items exceeds this Coin will fall back to normal vertex array or immediate mode rendering.

See also
    COIN_VBO_MIN_LIMIT

  EnvironmentVariable COIN_VBO_MIN_LIMIT
Can be used to set the minimum number of items (coordinates, normals, texcoords or colors) allowed when creating a vertex buffer object. It's a bit of overhead setting up the VBOs and the VBO rendering, so we avoid doing this for very small arrays. The default value is 20.

See also
    COIN_VBO_MAX_LIMIT

  EnvironmentVariable COIN_SOOFFSCREENRENDERER_ALLOW_RESOURCEHOG
Since the operation of context destruction and reconstruction has the potential to be such a costly operation (because GL caches are smashed, among other things), we try hard to avoid it by checking that if we already have a working GL context with size equal or larger to the requested size.

We also check if the current GL canvas is much larger than what is requested, as to then free up potentially large memory resources, even if we already have a large enough canvas.

By setting this environment variable to a value > 0, you can disable this behavior and keep the much larger GL canvas.

  EnvironmentVariable SO_DRAGGER_DIR
The appearance of draggers can be modified by setting this environment variable to point to a directory with external replacement geometry files in Inventor-format which the geometry parts are read from. The names of the new files and the names of the nodes / sub-graphs within the replacement geometries must follow a rigid scheme.

  EnvironmentVariable SO_SHADER_DIR
Set this environment variable to point to a directory that contains the referenced external .arb, .cg, .glsl shader files.

  EnvironmentVariable COINDIR

  EnvironmentVariable COIN_ALLOW_SPIDERMONKEY

  EnvironmentVariable COIN_CALCULATE_NURBS_NORMALS
If this environment variable is set to a value > 0, normals will be calculated for the knots of a NURBS surface. This may greatly improve the rendering quality.

  EnvironmentVariable COIN_CG_LIBNAME
Set the system shared library name for the CG library.

  EnvironmentVariable COIN_DEBUG_ASSERT_SOBASE_SETNAME

  EnvironmentVariable COIN_DEBUG_BINARY_INPUT

  EnvironmentVariable COIN_DEBUG_CLEANUP

  EnvironmentVariable COIN_DEBUG_EXTRA

  EnvironmentVariable COIN_DEBUG_FLATTEN_NODEKITS_ON_WRITE

  EnvironmentVariable COIN_DEBUG_GLGLUE
If this environment variable is set to a value > 0, make the wrapper initialization spit out lots of info about the underlying OpenGL implementation.

  EnvironmentVariable COIN_DEBUG_GLRENDER_TRAVERSAL

  EnvironmentVariable COIN_DEBUG_GLUNURBSSURFACE

  EnvironmentVariable COIN_DEBUG_INTERSECTIONDETECTIONACTION

  EnvironmentVariable COIN_DEBUG_MUTEXLOCK_MAXTIME

  EnvironmentVariable COIN_DEBUG_MUTEXLOCK_TIMING

  const char* COIN_DEBUG_MUTEX_COUNT = 'COIN_DEBUG_MUTEX_COUNT'

  EnvironmentVariable COIN_DEBUG_NORMALIZE

  EnvironmentVariable COIN_DEBUG_NPRINTF

  EnvironmentVariable COIN_DEBUG_NURBS_COMPLEXITY

  EnvironmentVariable COIN_DEBUG_ROOT_NOTIFICATIONS

  EnvironmentVariable COIN_DEBUG_SIMAGE

  EnvironmentVariable COIN_DEBUG_SOEXTSELECTION

  EnvironmentVariable COIN_DEBUG_SOFILE_READ

  EnvironmentVariable COIN_DEBUG_SOOFFSCREENRENDERER_TILEPREFIX

  EnvironmentVariable COIN_DEBUG_SPIDERMONKEY_BINDING

  EnvironmentVariable COIN_DEBUG_STRING_GROW

  EnvironmentVariable COIN_DEBUG_TRACK_SOBASE_INSTANCES

  EnvironmentVariable COIN_DEBUG_VBO

  EnvironmentVariable COIN_DEBUG_VRMLSCRIPT

  EnvironmentVariable COIN_FONTCONFIG_LIBNAME
Set the system shared library name for the Fontconfig library.

  EnvironmentVariable COIN_DONT_INFORM_INDIRECT_RENDERING

  EnvironmentVariable COIN_DONT_USE_FBO

  EnvironmentVariable COIN_FORCE_AGL
If this environment variable is set to a value > 0, prefer using the old AGL bindings over CGL. Note that AGL is not available on 64-bit systems. The AGL code is not compiled into Coin by default, but must be enabled at configure-time using --enable-agl in addition to using this environment variable.

  EnvironmentVariable COIN_FORCE_GL1_0_ONLY
If this environment variable is set to a value > 0, disallow use of OpenGL1.1+ and extensions under all circumstances.

  EnvironmentVariable COIN_FULL_INDIRECT_RENDERING
If this environment variable is set to a value > 0, let Coin take advantage of OpenGL1.1+ and extensions even when doing remote/indirect rendering.

  EnvironmentVariable COIN_GLGLUE_DISABLE_NON_POWER_OF_TWO_TEXTURES
of non power of two textures. ATi and Intel both have had problems with this feature, especially on old drivers. Newer drivers are known to work.

  EnvironmentVariable COIN_GLGLUE_DISABLE_PALETTED_TEXTURE

  EnvironmentVariable COIN_GLGLUE_DISABLE_VBO_IN_DISPLAYLIST
If this environment variable is set to a value > 0, disable the use of VBOs in display lists. Older ATI Windows/Linux drivers had a nasty bug which caused a crash in OpenGL whenever a VBO render call was added to a display list. Newer drivers are known to work.

  EnvironmentVariable COIN_GLGLUE_NO_ELSA_WARNING
If this environment variable is set to a value > 0, do not warn about incompatible ELSA TNT2 Vanta/PCI/SSE graphics driver.

  EnvironmentVariable COIN_GLGLUE_NO_G400_WARNING
If this environment variable is set to a value > 0, do not warn about incompatible Matrox G400 graphics driver.

  EnvironmentVariable COIN_GLGLUE_NO_RADEON_WARNING
If this environment variable is set to a value > 0, do not warn about incompatible Radeon 7500 DDR x86/SSE2 graphics driver.

  EnvironmentVariable COIN_GLGLUE_NO_SUN_EXPERT3D_WARNING
If this environment variable is set to a value > 0, do not warn about incompatible Sun Expert3D, VIS graphics driver.

  EnvironmentVariable COIN_GLGLUE_NO_TRIDENT_WARNING
If this environment variable is set to a value > 0, do not warn about incompatible Trident Blade XP/AGP graphics driver.

  EnvironmentVariable COIN_GLGLUE_SILENCE_DRIVER_WARNINGS
If this environment variable is set to a value > 0, all known driver bugs will just be silently accepted and attempted to work around.

  EnvironmentVariable COIN_GLU_SILENCE_TESS_COMBINE_WARNING
If this environment variable is set to a value > 0, polygons with intersecting edges (a "bow-tie" polygon, for instance) will not be warned about (according to the GLU docs, the tessellator will be ok, it just ignores those polygons and generates no output).

  EnvironmentVariable COIN_GL_DISABLE_VBO

  EnvironmentVariable COIN_GL_NO_CURRENT_CONTEXT_CHECK

  EnvironmentVariable COIN_HANDLE_STACK_OVERFLOW

  EnvironmentVariable COIN_NESTED_CACHING

  EnvironmentVariable COIN_NOT_STRICT_VRML97

  EnvironmentVariable COIN_NO_NVIDIA_COLOR_PER_FACE_BUG_WORKAROUND

  EnvironmentVariable COIN_NO_SOTYPE_DYNLOAD

  EnvironmentVariable COIN_OFFSCREEN_STENCIL_BITS

  EnvironmentVariable COIN_OLD_NURBS_COMPLEXITY
If this environment variable is set to a value > 0, the parametric tolerance for the sampling method of a NURBS surface or curve is set dependent on the size of their bounding box for both OBJECT_SPACE and SCREEN_SPACE sampling. If this environment variable is set to a value of 0, the parametric tolerance for the sampling method of a NURBS surface or curve is set dependent on their complexity value for both OBJECT_SPACE and SCREEN_SPACE sampling. If this environment variable is not set, the parametric tolerance for the sampling method of a NURBS surface or curve is set dependent on the size of their bounding box in SCREEN_SPACE and dependent on their complexity value in OBJECT_SPACE.

  EnvironmentVariable COIN_PREFER_GLPOLYGONOFFSET_EXT
If this environment variable is set to a value > 0 and both glPolygonOffset() and glPolygonOffsetEXT() are available, the latter will be used. This can be useful to work around a problematic glPolygonOffset() implementation for certain SGI platforms.

  EnvironmentVariable COIN_PREFER_GLU_TESSELLATOR
If this environment variable is set to a value > 0, the GLU tessellator is used instead of Coin's own tessellator implementation. Try this if you are facing bugs with respect to triangulation of complex facesets.

  EnvironmentVariable COIN_REDUCE_LINEAR_NURBS_STEPS

  EnvironmentVariable COIN_SMART_CACHING
If this environment variable is set to a value > 0, smart caching is enabled. That means the caches are updated less frequently dependent on the number of shapes.

  EnvironmentVariable COIN_SPIDERMONKEY_LIBNAME
Set the system shared library name for the SpiderMonkey library.

  EnvironmentVariable COIN_VERTEX_ARRAYS
If this environment variable is set to a value of 0, vertex array rendering is disabled.

  EnvironmentVariable COIN_VIEWUP

  EnvironmentVariable WINDIR
%WINDIR%/Fonts is always searched for fonts on Windows.

Author

Generated automatically by Doxygen for Coin from the source code.