Visualization Library v1.0.3A lightweight C++ OpenGL middleware for 2D/3D graphics |
[Download] [Tutorials] [All Classes] [Grouped Classes] |
00001 /**************************************************************************************/ 00002 /* */ 00003 /* Visualization Library */ 00004 /* http://visualizationlibrary.org */ 00005 /* */ 00006 /* Copyright (c) 2005-2010, Michele Bosi */ 00007 /* All rights reserved. */ 00008 /* */ 00009 /* Redistribution and use in source and binary forms, with or without modification, */ 00010 /* are permitted provided that the following conditions are met: */ 00011 /* */ 00012 /* - Redistributions of source code must retain the above copyright notice, this */ 00013 /* list of conditions and the following disclaimer. */ 00014 /* */ 00015 /* - Redistributions in binary form must reproduce the above copyright notice, this */ 00016 /* list of conditions and the following disclaimer in the documentation and/or */ 00017 /* other materials provided with the distribution. */ 00018 /* */ 00019 /* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND */ 00020 /* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED */ 00021 /* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE */ 00022 /* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR */ 00023 /* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES */ 00024 /* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; */ 00025 /* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON */ 00026 /* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT */ 00027 /* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS */ 00028 /* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ 00029 /* */ 00030 /**************************************************************************************/ 00031 00033 // Visualization Library Configuration File 00035 00041 #ifndef VISUALIZATION_LIBRARY_CONFIG_INCLUDE_ONCE 00042 #define VISUALIZATION_LIBRARY_CONFIG_INCLUDE_ONCE 00043 00044 #include <vlCore/platform.hpp> 00045 00054 #define VL_DEBUG_LIVING_OBJECTS 0 00055 00056 00063 #define VL_FORCE_CHECKS 0 00064 00065 00071 #define VL_MESSAGEBOX_CHECK 0 00072 00073 00088 #define VL_PIPELINE_PRECISION 1 00089 00090 00106 #define VL_FAST_SQUARE_ROOTS 0 00107 00108 00115 #define VL_OBJECT_USER_DATA 0 00116 00117 00124 #define VL_ACTOR_USER_DATA 0 00125 00126 00133 #define VL_TRANSFORM_USER_DATA 0 00134 00135 00142 #define VL_SHADER_USER_DATA 0 00143 00144 00152 #define VL_MAX_ACTOR_LOD 4 00153 00154 00162 #define VL_MAX_EFFECT_LOD 4 00163 00164 00173 #define VL_MAX_TEXTURE_UNITS 8 00174 00175 00184 #define VL_MAX_GENERIC_VERTEX_ATTRIB 8 00185 00186 00190 #define VL_MAX_TIMERS 16 00191 00192 00199 #define VL_STRING_COPY_ON_WRITE 1 00200 00201 00205 #define VL_DEFAULT_BUFFER_BYTE_ALIGNMENT 16 00206 00207 00208 // -------------------- Do Not Touch The Following Section -------------------- 00209 00211 00212 #ifndef NDEBUG 00213 #define VL_DEBUG_SET_OBJECT_NAME() this->mObjectName = className(); 00214 #else 00215 #define VL_DEBUG_SET_OBJECT_NAME() 00216 #endif 00217 00219 00220 // Pipeline precision settings 00221 #if VL_PIPELINE_PRECISION == 2 00222 namespace vl { typedef double real; } 00224 #define VL_glLoadMatrix glLoadMatrixd 00225 00226 #define VL_glMultMatrix glMultMatrixd 00227 #else 00228 namespace vl { typedef float real; } 00229 namespace vl { typedef float real; } 00231 #define VL_glLoadMatrix glLoadMatrixf 00232 00233 #define VL_glMultMatrix glMultMatrixf 00234 #endif 00235 00237 00238 // Visual Studio special settings 00239 #ifdef _MSC_VER 00240 #pragma warning( once : 4996 ) // function or variable may be unsafe 00241 #pragma warning( once : 4800 ) // forcing value to bool (performance warning) 00242 #pragma warning( once : 4127 ) // conditional expression is constant 00243 #pragma warning( once : 4100 ) // unreferenced formal parameter 00244 #pragma warning( disable : 4251 ) // non-dll type exposed by a dll type 00245 #endif 00246 00248 00249 #endif // VISUALIZATION_LIBRARY_CONFIG_INCLUDE_ONCE