00001 00002 #ifndef __RC_SETTINGS_H__ 00003 #define __RC_SETTINGS_H__ 00004 00005 /* Get rid of dirty Mirco$oft warnings */ 00006 #ifdef WIN32 00007 #pragma warning( disable : 4996 ) 00008 #pragma warning( disable : 4201 ) 00009 #pragma warning( disable : 4100 ) 00010 #endif 00011 00012 /*================================================[ Target architecture ]====*/ 00013 00014 /* 00015 * Target platform 00016 * 00017 * Only uncomment one of the possible platforms listed below. 00018 * RC_WIN32 - 32-bit Windows build flag 00019 * RC_MACOSX - 32-bit MacOS X build flag 00020 * RC_IPHONE - iPhone build flag 00021 */ 00022 #define RC_WIN32 00023 /* #define RC_MACOSX */ 00024 /* #define RC_IPHONE */ 00025 00026 /* 00027 * This determines the OpenGL version target. RC can only be built for one 00028 * OpenGL target at a time, so only uncomment one of the defines listed below. 00029 * 00030 */ 00031 #define RC_OPENGL_ES20 00032 /* #define RC_OPENGL_20 */ 00033 00034 00035 #define RC_SSE_VERSION 0 00036 00037 /*============================================[ Debugging and profiling ]====*/ 00038 00039 /* Memory debug 00040 * 00041 * Enable definition to debug memory. 00042 * This will enable tracking and validation of all memory allocated on the 00043 * heap (at enormous expense of performance). Not fool proof, but pretty good. 00044 */ 00045 /* #define MEMORY_DEBUG */ 00046 00047 /* Assert 00048 * 00049 * Enable definition to run ASSERT-statements. 00050 * Disable this for final release for a small boost in performance. Your code 00051 * must be correct if this is disabled, or errors and warnings will produce 00052 * much nastier crashes if they are not caught. 00053 */ 00054 #define RC_ENABLE_ASSERT 00055 00056 /* Log to file 00057 * 00058 * If this definition is enabled warnings, errors and memory debug info will 00059 * be written to log.txt and mem.txt respectively. If this is disabled only 00060 * standard output will be used to log this information. 00061 */ 00062 #define RC_LOG_TO_FILE 00063 00064 00065 00066 /*=========================================================[ Tweakables ]====*/ 00067 00068 #define RC_MAX_ATTRIBS 16 00069 00070 /*==============================================================[ Paths ]====*/ 00071 00072 #define RC_TEXTURE_PATH "../res/textures/" 00073 #define RC_MODEL_PATH "../res/models/" 00074 #define RC_INFO_PATH "../res/info/" 00075 00076 /*=========================================================[ Tweakables ]====*/ 00077 00078 /*====================================================[ DO NOT TOUCH!!! ]====*/ 00079 00080 /* 00081 * The following code sets up additional defines and makes sure that the 00082 * selected combination of settings is valid. DO NOT MODIFY THIS CODE (unless 00083 * you're absolutely sure what you're doing...) 00084 * 00085 */ 00086 00087 /* TODO: Complete */ 00088 00089 #ifdef RC_OPENGL_ES20 00090 #define RC_OPENGL 00091 00092 #ifdef RC_WIN32 00093 #include <EGL/egl.h> 00094 #include <GLES2/gl2.h> 00095 #endif /* RC_WIN32 */ 00096 #elif defined RC_OPENGL_20 00097 #define RC_OPENGL 00098 00099 #endif 00100 00101 #if defined RC_MAC || defined RC_IPHONE 00102 #define RC_APPLE 00103 #endif 00104 00105 #if defined RC_IPHONE && defined RC_LOG_TO_FILE 00106 #error iPhone build doesn't allow logging to file. Either disable \ 00107 RC_LOG_TO_FILE or build for another architecture. 00108 #endif 00109 00110 00111 /*============================================================[ Include ]====*/ 00112 00113 #include <vector> 00114 #include <memory> 00115 #include <cstdio> 00116 #include <cstdlib> 00117 #include <string> 00118 00119 #include "Types.h" 00120 00121 #include "Memory.h" 00122 00123 #include "VectorMath.h" 00124 #include "Quaternions.h" 00125 #include "Result.h" 00126 #include "Misc.h" 00127 00128 #include "SceneGraph.h" 00129 00130 /*===========================================================================*/ 00131 00132 #endif /* __RC_SETTINGS_H__ */ 00133 00134 /*===========================================================================*/ 00135