Visualization Library

A lightweight C++ OpenGL middleware for 2D/3D graphics
[Home] [Tutorials] [All Classes] [Grouped Classes]

E:/VisualizationLibrary/BuildSystem/VL_DISTRO/Visualization_Library_SDK/src/vl/config.hpp File Reference

Visualization Library configuration file. More...


Namespaces

namespace  vl
 Visualization Library namespace.

Defines

#define VL_MESSAGEBOX_CHECK   1
 Only for Win32 platforms.
#define VL_MAX_ACTOR_LOD   4
 Defines the maximum number of LOD levels available to the Actor class.
#define VL_MAX_EFFECT_LOD   4
 Defines the maximum number of LOD levels available to the Effect class.
#define VL_FORCE_CHECKS   0
 Forces checks to be done also in non debug modes.
#define VL_VERBOSITY_LEVEL   2
 Verbosity level.
#define VL_PIPELINE_PRECISION   1
 This define is used to set Visualization Library's pipeline precision.
#define VL_FAST_SQUARE_ROOTS   0
 Enables fast square root computation when using single precision mode.
#define VL_MAX_TEXTURE_UNIT_COUNT   16
 Maximum number of texture units used.
#define VL_STRING_COPY_ON_WRITE   1
 Enable String copy-on-write mode.
#define VL_DEFAULT_BUFFER_BYTE_ALIGNMENT   16
 Default byte alignment for the vl::Buffer class.
#define VL_MAX_TIMERS   16
 Maximum timer index that can be passed to vl::Time::start(int index), vl::Time::stop(int index) etc.
#define VL_DEBUG_LIVING_OBJECTS   0
 Enable/disable memory leaks debugging.
#define VL_glLoadMatrix   glLoadMatrixd
 Defined as glLoadMatrixd, used internally.
#define VL_glMultMatrix   glMultMatrixd
 Defined as glMultMatrixd, used internally.

Typedefs

typedef double vl::Real
 Defined as 'typedef double Real'.


Detailed Description

Visualization Library configuration file.


Define Documentation

#define VL_MESSAGEBOX_CHECK   1

Only for Win32 platforms.

1 = opens a MessageBox on failed check
0 = opens a MessageBox on failed check

#define VL_MAX_ACTOR_LOD   4

Defines the maximum number of LOD levels available to the Actor class.

#define VL_MAX_EFFECT_LOD   4

Defines the maximum number of LOD levels available to the Effect class.

#define VL_FORCE_CHECKS   0

Forces checks to be done also in non debug modes.

if set to 1 the VL_CHECK() and VL_CHECK_OGL() macros will be active also in release mode builds if set to 0 the VL_CHECK() and VL_CHECK_OGL() macros will be active only in debug mode builds

#define VL_VERBOSITY_LEVEL   2

Verbosity level.

#define VL_PIPELINE_PRECISION   1

This define is used to set Visualization Library's pipeline precision.

  • 1 = use floating point single precision pipeline
  • 2 = use floating point double precision pipeline

In single precision mode the classes vec4, vec3, vec2, mat4, mat3, mat2 will be defined as typedefs to their fvec4, fmat4 etc. counter parts.

In double precision mode the classes vec4, vec3, vec2, mat4, mat3, mat2 will be defined as typedefs to their dvec4, dmat4 etc. counter parts.

In single precision mode vl::Real is defined as float, in double precision mode vl::Real is defined as double.

Other classes are affected as well, in particular vl::Transform, vl::quat, vl::AABB and vl::Sphere.

#define VL_FAST_SQUARE_ROOTS   0

Enables fast square root computation when using single precision mode.

  • 0 = disable fast square roots when in single precision floating point pipeline
  • 1 = enable fast square roots when in single precision floating point pipeline

Potential performance improvements:

  • float sqrt will be up to 1.4x quicker
  • float 1.0/sqrt will be up to 3x quicker
  • vec3 normalization will be up to 2x quicker

Please note that the precision of such operations is seriously affected. Use with care! Under some platforms / compiler configurations this might produce wrong results, like objects disappearing, transforms, matrices and vectors filled with garbage data etc.

#define VL_MAX_TEXTURE_UNIT_COUNT   16

Maximum number of texture units used.

  • minimum = 1
  • maximum = OpenGL implementation dependent

#define VL_STRING_COPY_ON_WRITE   1

Enable String copy-on-write mode.

#define VL_DEFAULT_BUFFER_BYTE_ALIGNMENT   16

Default byte alignment for the vl::Buffer class.

#define VL_MAX_TIMERS   16

Maximum timer index that can be passed to vl::Time::start(int index), vl::Time::stop(int index) etc.

#define VL_DEBUG_LIVING_OBJECTS   0

Enable/disable memory leaks debugging.

  • 0 = disable memory leaks debugging
  • 1 = Objects::mDebug_LivingObjects will contain the set of currently living Object-s.

This is useful when you want to track memory leaks and object construction/destruction.

#define VL_glLoadMatrix   glLoadMatrixd

Defined as glLoadMatrixd, used internally.

#define VL_glMultMatrix   glMultMatrixd

Defined as glMultMatrixd, used internally.


Visualization Library v2009.08 Reference Documentation
Copyright 2005-2009 Michele Bosi. All rights reserved.
Updated on Tue Dec 29 13:56:49 2009.
Permission is granted to use this page to write and publish articles regarding Visualization Library.