00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00035 #ifndef __SO3STD_H__
00036 #define __SO3STD_H__
00037
00038
00039 #include "SO3Prerequisites.h"
00040
00041 #include "../SO3Utils/SO3Point.h"
00042
00043
00044 #include "Ogre.h"
00045 #include <OgreTagpoint.h>
00046 #include "OgreFontManager.h"
00047 #include "OgreTextAreaOverlayElement.h"
00048 #include "OgreWireBoundingBox.h"
00049 #include "OgreArchiveFactory.h"
00050 #include "OgreNewt.h"
00051
00052
00053 # include <OgreParticleFXPlugin.h>
00054 # include <OgreCgPlugin.h>
00055 # include <OgreOctreePlugin.h>
00056 # include <StereoPlugin.h>
00057
00058
00059 #ifdef SO3_DEVELOPPER_BUILD
00060 # include "OgreD3D9Plugin.h"
00061
00062 # include "OgreGLPlugin.h"
00063 #endif
00064
00065
00066 using std::string;
00067
00068 #ifndef ASSERT
00069 # define ASSERT assert
00070 #endif
00071
00072 #define DELETEARRAY(x) if(x) {delete []x; x = NULL;}
00073 #define CHECKALLOC(x) if(!x) {return false;}
00074 #define EXPAND(x) x, sizeof(x)/sizeof(TCHAR)
00075 #define AROUNDINT(x) ((((x)-floor(x)) < (ceil(x)-(x))) ? ((int)floor(x)) : ((int)ceil(x)))
00076 #define SCOL_TYPTYPE(x) (int (__cdecl *)(struct Mmachine *))ITOM(x)
00077 #define SO3_MAX_PATH MAX_PATH
00078
00079
00080 #define SO3_INTERNAL_RESOURCE_GROUP "SO3/Internal" //!< SO3 Internal base resource group (Warning : not in Ogre global resources pool)
00081 #define SO3_INTERNAL_DYNAMIC_RESOURCE_GROUP SO3_INTERNAL_RESOURCE_GROUP##"/DynResource" //!< SO3 Internal resource group for dynamic material and textures (Warning : not in Ogre global resources pool)
00082 #define SO3_INTERNAL_DYNAMIC_READABLE_RESOURCE_GROUP SO3_INTERNAL_DYNAMIC_RESOURCE_GROUP##"/GlobalPool" //!< SO3 Internal resource group for dynamic material and textures that can be accessed in other resource group (Warning : is in Ogre global resources pool)
00083 #define SO3_INTERNAL_HYDRAX_RESOURCE_GROUP "Hydrax" //!< Hydrax resources must be in Hydrax group
00084 #define SO3_INTERNAL_SKYX_RESOURCE_GROUP "SkyX" //!< Skyx resources must be in SkyX group
00085
00086
00087 # define SO3_FLASH_FILE 0
00088 # define SO3_FLASH_URL 1
00089
00090
00091 # define SO3_MATRIX_XYZ 0
00092 # define SO3_MATRIX_XZY 1
00093 # define SO3_MATRIX_YXZ 2
00094 # define SO3_MATRIX_YZX 3
00095 # define SO3_MATRIX_ZXY 4
00096 # define SO3_MATRIX_ZYX 5
00097
00098
00099 # define SO3_SM_EXACT 0
00100 # define SO3_SM_ADAPTATIVE 1
00101
00102
00103 # define SO3_FM_EXACT 0
00104 # define SO3_FM_ADAPTATIVE 1
00105
00106
00107 # define SO3_PA_DEFAULT 0
00108 # define SO3_PA_MEDIUM 1
00109 # define SO3_PA_BEST 2
00110
00111
00112 # define SO3_FOG_NONE 0
00113 # define SO3_FOG_EXP 1
00114 # define SO3_FOG_EXP2 2
00115 # define SO3_FOG_LINEAR 3
00116
00117
00118 # define SO3_SHADOWTYPE_NONE 0
00119 # define SO3_SHADOWDETAILTYPE_ADDITIVE 1
00120 # define SO3_SHADOWDETAILTYPE_MODULATIVE 2
00121 # define SO3_SHADOWDETAILTYPE_INTEGRATED 4
00122 # define SO3_SHADOWDETAILTYPE_STENCIL 16
00123 # define SO3_SHADOWDETAILTYPE_TEXTURE 32
00124 # define SO3_SHADOWTYPE_STENCIL_MODULATIVE 18
00125 # define SO3_SHADOWTYPE_STENCIL_ADDITIVE 17
00126 # define SO3_SHADOWTYPE_TEXTURE_MODULATIVE 34
00127 # define SO3_SHADOWTYPE_TEXTURE_ADDITIVE 33
00128 # define SO3_SHADOWTYPE_TEXTURE_ADDITIVE_INTEGRATED 37
00129 # define SO3_SHADOWTYPE_TEXTURE_MODULATIVE_INTEGRATED 38
00130
00131
00132 # define SO3_DEFAULT_SHADOW_CAMERA 0
00133 # define SO3_FOCUSED_SHADOW_CAMERA 1
00134 # define SO3_PLANE_SHADOW_CAMERA 2
00135 # define SO3_LISPSM_SHADOW_CAMERA 3
00136
00137
00138 # define SO3_DEPTH_SHADOWMAP_CASTER_FLOAT (1)
00139
00140
00141 # define SO3_RESOURCE_MESH 0
00142 # define SO3_RESOURCE_MATERIAL 1
00143 # define SO3_RESOURCE_TEXTURE 2
00144 # define SO3_RESOURCE_SKELETON 3
00145 # define SO3_RESOURCE_GPUPROGRAM 4
00146 # define SO3_RESOURCE_HIGHLEVELGPUPROGRAM 5
00147 # define SO3_RESOURCE_COMPOSITOR 6
00148 # define SO3_RESOURCE_PARTICLE_SYSTEM 7
00149
00150
00151 # define SO3_FALSE 0
00152 # define SO3_TRUE 1
00153
00154
00155 # define SO3_PARTICLE_BB_POINT (1)
00156 # define SO3_PARTICLE_BB_SELFORIENTED (1<<2)
00157 # define SO3_PARTICLE_BB_COMMONORIENTED (1<<3)
00158
00159
00160 # define SO3_EMITTER_BOX (1)
00161 # define SO3_EMITTER_CYLINDER (1<<2)
00162 # define SO3_EMITTER_ELLIPSOID (1<<3)
00163 # define SO3_EMITTER_HOLLOWELLIPSOID (1<<4)
00164 # define SO3_EMITTER_POINT (1<<5)
00165 # define SO3_EMITTER_RING (1<<6)
00166
00167
00168 #define SO3_OBJECT_MOUSE_ENABLE (1)
00169 #define SO3_OBJECT_MOUSE_FOREGROUND (1<<2)
00170
00171
00172 #define SO3_POLY_POINTS (1)
00173 #define SO3_POLY_SOLID (1<<2)
00174 #define SO3_POLY_WIREFRAME (1<<3)
00175
00176
00177 #define SO3_PROJECTION_PERSPECTIVE (1)
00178 #define SO3_PROJECTION_ORTHOGRAPHIC (1<<2)
00179
00180
00181 #define SO3_MATERIALPAIR_COLLISION 0
00182 #define SO3_MATERIALPAIR_OVERLAP_STARTED 1
00183 #define SO3_MATERIALPAIR_OVERLAP_ENDED 2
00184 #define SO3_MATERIALPAIR_BUOYANCY_COLLISION 3
00185
00186
00187 #define SO3_BODY_LEAVE_WORLD 0
00188
00189
00190 #define SO3_WIDGET_SCRIPT_EVENT 0
00191 #define SO3_WIDGET_IS_INSIDE_EVENT 1
00192 #define SO3_WIDGET_ENTER_EVENT 2
00193 #define SO3_WIDGET_EXIT_EVENT 3
00194 #define SO3_WIDGET_MOUSE_DOWN_EVENT 4
00195 #define SO3_WIDGET_MOUSE_UP_EVENT 5
00196 #define SO3_WIDGET_MOUSEWHEEL_EVENT 6
00197
00198 #define SO3_ANIM_END 0
00199
00200
00201 #define SO3_SCENE_PRE_RENDER_EVENT 0
00202 #define SO3_SCENE_POST_RENDER_EVENT 1
00203
00204
00205 #define SO3_BUFFER_PRE_RENDER_EVENT 0
00206 #define SO3_BUFFER_POST_RENDER_EVENT 1
00207
00208
00209 #define SO3_LL_LOW 1
00210 #define SO3_LL_NORMAL 2
00211 #define SO3_LL_BOREME 3
00212
00213 #define SO3_LOGS_CB 0
00214
00215
00216 #define WGL_SAMPLE_BUFFERS_ARB 0x2041
00217 #define WGL_SAMPLES_ARB 0x2042
00218
00219
00220
00221
00222
00223
00224 #endif