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
00028
00029
00030
00031
00037 #ifndef vlnamespace_INCLUDE_ONCE
00038 #define vlnamespace_INCLUDE_ONCE
00039
00040 #include <vlCore/OpenGLDefs.hpp>
00041 #include <vlCore/config.hpp>
00042
00043 namespace vl
00044 {
00045 typedef enum
00046 {
00047 TF_UNKNOWN = 0,
00048
00049 TF_ALPHA = GL_ALPHA,
00050 TF_ALPHA4 = GL_ALPHA4,
00051 TF_ALPHA8 = GL_ALPHA8,
00052 TF_ALPHA12 = GL_ALPHA12,
00053 TF_ALPHA16 = GL_ALPHA16,
00054
00055 TF_INTENSITY = GL_INTENSITY,
00056 TF_INTENSITY4 = GL_INTENSITY4,
00057 TF_INTENSITY8 = GL_INTENSITY8,
00058 TF_INTENSITY12 = GL_INTENSITY12,
00059 TF_INTENSITY16 = GL_INTENSITY16,
00060 TF_LUMINANCE = GL_LUMINANCE,
00061 TF_LUMINANCE4 = GL_LUMINANCE4,
00062 TF_LUMINANCE8 = GL_LUMINANCE8,
00063 TF_LUMINANCE12 = GL_LUMINANCE12,
00064 TF_LUMINANCE16 = GL_LUMINANCE16,
00065 TF_LUMINANCE_ALPHA = GL_LUMINANCE_ALPHA,
00066 TF_LUMINANCE4_ALPHA4 = GL_LUMINANCE4_ALPHA4,
00067 TF_LUMINANCE6_ALPHA2 = GL_LUMINANCE6_ALPHA2,
00068 TF_LUMINANCE8_ALPHA8 = GL_LUMINANCE8_ALPHA8,
00069 TF_LUMINANCE12_ALPHA4 = GL_LUMINANCE12_ALPHA4,
00070 TF_LUMINANCE12_ALPHA12 = GL_LUMINANCE12_ALPHA12,
00071 TF_LUMINANCE16_ALPHA16 = GL_LUMINANCE16_ALPHA16,
00072 TF_R3_G3_B2 = GL_R3_G3_B2,
00073 TF_RGB = GL_RGB,
00074 TF_RGB4 = GL_RGB4,
00075 TF_RGB5 = GL_RGB5,
00076 TF_RGB8 = GL_RGB8,
00077 TF_RGB10 = GL_RGB10,
00078 TF_RGB12 = GL_RGB12,
00079 TF_RGB16 = GL_RGB16,
00080 TF_RGBA = GL_RGBA,
00081 TF_RGBA2 = GL_RGBA2,
00082 TF_RGBA4 = GL_RGBA4,
00083 TF_RGB5_A1 = GL_RGB5_A1,
00084 TF_RGBA8 = GL_RGBA8,
00085 TF_RGB10_A2 = GL_RGB10_A2,
00086 TF_RGBA12 = GL_RGBA12,
00087 TF_RGBA16 = GL_RGBA16,
00088
00089
00090 TF_RGBA32F = GL_RGBA32F,
00091 TF_RGB32F = GL_RGB32F,
00092 TF_ALPHA32F = GL_ALPHA32F_ARB,
00093 TF_INTENSITY32F = GL_INTENSITY32F_ARB,
00094 TF_LUMINANCE32F = GL_LUMINANCE32F_ARB,
00095 TF_LUMINANCE_ALPHA32F = GL_LUMINANCE_ALPHA32F_ARB,
00096 TF_RGBA16F = GL_RGBA16F,
00097 TF_RGB16F = GL_RGB16F,
00098 TF_ALPHA16F = GL_ALPHA16F_ARB,
00099 TF_INTENSITY16F = GL_INTENSITY16F_ARB,
00100 TF_LUMINANCE16F = GL_LUMINANCE16F_ARB,
00101 TF_LUMINANCE_ALPHA16F = GL_LUMINANCE_ALPHA16F_ARB,
00102
00103
00104 TF_RGBA_FLOAT32_ATI = GL_RGBA_FLOAT32_ATI,
00105 TF_RGB_FLOAT32_ATI = GL_RGB_FLOAT32_ATI,
00106 TF_ALPHA_FLOAT32_ATI = GL_ALPHA_FLOAT32_ATI,
00107 TF_INTENSITY_FLOAT32_ATI = GL_INTENSITY_FLOAT32_ATI,
00108 TF_LUMINANCE_FLOAT32_ATI = GL_LUMINANCE_FLOAT32_ATI,
00109 TF_LUMINANCE_ALPHA_FLOAT32_ATI = GL_LUMINANCE_ALPHA_FLOAT32_ATI,
00110 TF_RGBA_FLOAT16_ATI = GL_RGBA_FLOAT16_ATI,
00111 TF_RGB_FLOAT16_ATI = GL_RGB_FLOAT16_ATI,
00112 TF_ALPHA_FLOAT16_ATI = GL_ALPHA_FLOAT16_ATI,
00113 TF_INTENSITY_FLOAT16_ATI = GL_INTENSITY_FLOAT16_ATI,
00114 TF_LUMINANCE_FLOAT16_ATI = GL_LUMINANCE_FLOAT16_ATI,
00115 TF_LUMINANCE_ALPHA_FLOAT16_ATI = GL_LUMINANCE_ALPHA_FLOAT16_ATI,
00116
00117
00118 TF_RGB9_E5_EXT = GL_RGB9_E5_EXT,
00119
00120
00121 TF_11F_G11F_B10F_EXT = GL_R11F_G11F_B10F_EXT,
00122
00123
00124 TF_DEPTH_STENCIL = GL_DEPTH_STENCIL,
00125 TF_DEPTH24_STENCIL8 = GL_DEPTH24_STENCIL8,
00126
00127
00128 TF_DEPTH_COMPONENT32F = GL_DEPTH_COMPONENT32F,
00129 TF_DEPTH32F_STENCIL8 = GL_DEPTH32F_STENCIL8,
00130
00131
00132 TF_DEPTH_COMPONENT = GL_DEPTH_COMPONENT,
00133 TF_DEPTH_COMPONENT16 = GL_DEPTH_COMPONENT16,
00134 TF_DEPTH_COMPONENT24 = GL_DEPTH_COMPONENT24,
00135 TF_DEPTH_COMPONENT32 = GL_DEPTH_COMPONENT32,
00136
00137
00138 TF_COMPRESSED_ALPHA = GL_COMPRESSED_ALPHA_ARB,
00139 TF_COMPRESSED_INTENSITY = GL_COMPRESSED_INTENSITY_ARB,
00140 TF_COMPRESSED_LUMINANCE = GL_COMPRESSED_LUMINANCE_ARB,
00141 TF_COMPRESSED_LUMINANCE_ALPHA = GL_COMPRESSED_LUMINANCE_ALPHA_ARB,
00142 TF_COMPRESSED_RGB = GL_COMPRESSED_RGB_ARB,
00143 TF_COMPRESSED_RGBA = GL_COMPRESSED_RGBA_ARB,
00144
00145
00146 TF_COMPRESSED_RGB_FXT1_3DFX = GL_COMPRESSED_RGB_FXT1_3DFX,
00147 TF_COMPRESSED_RGBA_FXT1_3DFX = GL_COMPRESSED_RGBA_FXT1_3DFX,
00148
00149
00150 TF_COMPRESSED_RGB_S3TC_DXT1_EXT = GL_COMPRESSED_RGB_S3TC_DXT1_EXT,
00151 TF_COMPRESSED_RGBA_S3TC_DXT1_EXT = GL_COMPRESSED_RGBA_S3TC_DXT1_EXT,
00152 TF_COMPRESSED_RGBA_S3TC_DXT3_EXT = GL_COMPRESSED_RGBA_S3TC_DXT3_EXT,
00153 TF_COMPRESSED_RGBA_S3TC_DXT5_EXT = GL_COMPRESSED_RGBA_S3TC_DXT5_EXT,
00154
00155
00156 TF_COMPRESSED_LUMINANCE_LATC1_EXT = GL_COMPRESSED_LUMINANCE_LATC1_EXT,
00157 TF_COMPRESSED_SIGNED_LUMINANCE_LATC1_EXT = GL_COMPRESSED_SIGNED_LUMINANCE_LATC1_EXT,
00158 TF_COMPRESSED_LUMINANCE_ALPHA_LATC2_EXT = GL_COMPRESSED_LUMINANCE_ALPHA_LATC2_EXT,
00159 TF_COMPRESSED_SIGNED_LUMINANCE_ALPHA_LATC2_EXT = GL_COMPRESSED_SIGNED_LUMINANCE_ALPHA_LATC2_EXT,
00160
00161
00162 TF_COMPRESSED_RED_RGTC1_EXT = GL_COMPRESSED_RED_RGTC1_EXT,
00163 TF_COMPRESSED_SIGNED_RED_RGTC1_EXT = GL_COMPRESSED_SIGNED_RED_RGTC1_EXT,
00164 TF_COMPRESSED_RED_GREEN_RGTC2_EXT = GL_COMPRESSED_RED_GREEN_RGTC2_EXT,
00165 TF_COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT = GL_COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT,
00166
00167
00168 TF_RGBA32UI_EXT = GL_RGBA32UI_EXT,
00169 TF_RGB32UI_EXT = GL_RGB32UI_EXT,
00170 TF_ALPHA32UI_EXT = GL_ALPHA32UI_EXT,
00171 TF_INTENSITY32UI_EXT = GL_INTENSITY32UI_EXT,
00172 TF_LUMINANCE32UI_EXT = GL_LUMINANCE32UI_EXT,
00173 TF_LUMINANCE_ALPHA32UI_EXT = GL_LUMINANCE_ALPHA32UI_EXT,
00174
00175 TF_RGBA16UI_EXT = GL_RGBA16UI_EXT,
00176 TF_RGB16UI_EXT = GL_RGB16UI_EXT,
00177 TF_ALPHA16UI_EXT = GL_ALPHA16UI_EXT,
00178 TF_INTENSITY16UI_EXT = GL_INTENSITY16UI_EXT,
00179 TF_LUMINANCE16UI_EXT = GL_LUMINANCE16UI_EXT,
00180 TF_LUMINANCE_ALPHA16UI_EXT = GL_LUMINANCE_ALPHA16UI_EXT,
00181
00182 TF_RGBA8UI_EXT = GL_RGBA8UI_EXT,
00183 TF_RGB8UI_EXT = GL_RGB8UI_EXT,
00184 TF_ALPHA8UI_EXT = GL_ALPHA8UI_EXT,
00185 TF_INTENSITY8UI_EXT = GL_INTENSITY8UI_EXT,
00186 TF_LUMINANCE8UI_EXT = GL_LUMINANCE8UI_EXT,
00187 TF_LUMINANCE_ALPHA8UI_EXT = GL_LUMINANCE_ALPHA8UI_EXT,
00188
00189 TF_RGBA32I_EXT = GL_RGBA32I_EXT,
00190 TF_RGB32I_EXT = GL_RGB32I_EXT,
00191 TF_ALPHA32I_EXT = GL_ALPHA32I_EXT,
00192 TF_INTENSITY32I_EXT = GL_INTENSITY32I_EXT,
00193 TF_LUMINANCE32I_EXT = GL_LUMINANCE32I_EXT,
00194 TF_LUMINANCE_ALPHA32I_EXT = GL_LUMINANCE_ALPHA32I_EXT,
00195
00196 TF_RGBA16I_EXT = GL_RGBA16I_EXT,
00197 TF_RGB16I_EXT = GL_RGB16I_EXT,
00198 TF_ALPHA16I_EXT = GL_ALPHA16I_EXT,
00199 TF_INTENSITY16I_EXT = GL_INTENSITY16I_EXT,
00200 TF_LUMINANCE16I_EXT = GL_LUMINANCE16I_EXT,
00201 TF_LUMINANCE_ALPHA16I_EXT = GL_LUMINANCE_ALPHA16I_EXT,
00202
00203 TF_RGBA8I_EXT = GL_RGBA8I_EXT,
00204 TF_RGB8I_EXT = GL_RGB8I_EXT,
00205 TF_ALPHA8I_EXT = GL_ALPHA8I_EXT,
00206 TF_INTENSITY8I_EXT = GL_INTENSITY8I_EXT,
00207 TF_LUMINANCE8I_EXT = GL_LUMINANCE8I_EXT,
00208 TF_LUMINANCE_ALPHA8I_EXT = GL_LUMINANCE_ALPHA8I_EXT,
00209
00210
00211 TF_RED = GL_RED,
00212 TF_COMPRESSED_RED = GL_COMPRESSED_RED,
00213 TF_COMPRESSED_RG = GL_COMPRESSED_RG,
00214 TF_RG = GL_RG,
00215 TF_R8 = GL_R8,
00216 TF_R16 = GL_R16,
00217 TF_RG8 = GL_RG8,
00218 TF_RG16 = GL_RG16,
00219 TF_R16F = GL_R16F,
00220 TF_R32F = GL_R32F,
00221 TF_RG16F = GL_RG16F,
00222 TF_RG32F = GL_RG32F,
00223 TF_R8I = GL_R8I,
00224 TF_R8UI = GL_R8UI,
00225 TF_R16I = GL_R16I,
00226 TF_R16UI = GL_R16UI,
00227 TF_R32I = GL_R32I,
00228 TF_R32UI = GL_R32UI,
00229 TF_RG8I = GL_RG8I,
00230 TF_RG8UI = GL_RG8UI,
00231 TF_RG16I = GL_RG16I,
00232 TF_RG16UI = GL_RG16UI,
00233 TF_RG32I = GL_RG32I,
00234 TF_RG32UI = GL_RG32UI,
00235
00236
00237 TF_SLUMINANCE_ALPHA = GL_SLUMINANCE_ALPHA,
00238 TF_SLUMINANCE8_ALPHA8 = GL_SLUMINANCE8_ALPHA8,
00239 TF_SLUMINANCE = GL_SLUMINANCE,
00240 TF_SLUMINANCE8 = GL_SLUMINANCE8,
00241 TF_COMPRESSED_SLUMINANCE = GL_COMPRESSED_SLUMINANCE,
00242 TF_COMPRESSED_SLUMINANCE_ALPHA = GL_COMPRESSED_SLUMINANCE_ALPHA,
00243
00244
00245 TF_SRGB = GL_SRGB,
00246 TF_SRGB8 = GL_SRGB8,
00247 TF_SRGB_ALPHA = GL_SRGB_ALPHA,
00248 TF_SRGB8_ALPHA8 = GL_SRGB8_ALPHA8,
00249 TF_COMPRESSED_SRGB = GL_COMPRESSED_SRGB,
00250 TF_COMPRESSED_SRGB_ALPHA = GL_COMPRESSED_SRGB_ALPHA,
00251
00252
00253 TF_COMPRESSED_SRGB_S3TC_DXT1_EXT = GL_COMPRESSED_SRGB_S3TC_DXT1_EXT,
00254 TF_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT = GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT,
00255 TF_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT = GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT,
00256 TF_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT = GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT,
00257
00258
00259 TF_R8_SNORM = GL_R8_SNORM,
00260 TF_R16_SNORM = GL_R16_SNORM,
00261 TF_RG8_SNORM = GL_RG8_SNORM,
00262 TF_RG16_SNORM = GL_RG16_SNORM,
00263 TF_RGB8_SNORM = GL_RGB8_SNORM,
00264 TF_RGBA8_SNORM = GL_RGBA8_SNORM,
00265 TF_RGB10_A2UI = GL_RGB10_A2UI,
00266 TF_RGBA16_SNORM = GL_RGBA16_SNORM,
00267 TF_R11F_G11F_B10F = GL_R11F_G11F_B10F,
00268 TF_RGB9_E5 = GL_RGB9_E5,
00269 TF_RGB8I = GL_RGB8I,
00270 TF_RGB8UI = GL_RGB8UI,
00271 TF_RGB16I = GL_RGB16I,
00272 TF_RGB16UI = GL_RGB16UI,
00273 TF_RGB32I = GL_RGB32I,
00274 TF_RGB32UI = GL_RGB32UI,
00275 TF_RGBA8I = GL_RGBA8I,
00276 TF_RGBA8UI = GL_RGBA8UI,
00277 TF_RGBA16I = GL_RGBA16I,
00278 TF_RGBA16UI = GL_RGBA16UI,
00279 TF_RGBA32I = GL_RGBA32I,
00280 TF_RGBA32UI = GL_RGBA32UI
00281
00282 } ETextureFormat;
00283
00284 typedef enum
00285 {
00286 IF_RGB = GL_RGB,
00287 IF_RGBA = GL_RGBA,
00288 IF_BGR = GL_BGR,
00289 IF_BGRA = GL_BGRA,
00290 IF_RG = GL_RG,
00291 IF_RG_INTEGER = GL_RG_INTEGER,
00292 IF_RED = GL_RED,
00293 IF_GREEN = GL_GREEN,
00294 IF_BLUE = GL_BLUE,
00295 IF_ALPHA = GL_ALPHA,
00296 IF_LUMINANCE = GL_LUMINANCE,
00297 IF_LUMINANCE_ALPHA = GL_LUMINANCE_ALPHA,
00298 IF_DEPTH_COMPONENT = GL_DEPTH_COMPONENT,
00299 IF_STENCIL_INDEX = GL_STENCIL_INDEX,
00300
00301
00302 IF_DEPTH_STENCIL = GL_DEPTH_STENCIL,
00303
00304
00305
00306
00307 IF_COMPRESSED_RGB_S3TC_DXT1 = GL_COMPRESSED_RGB_S3TC_DXT1_EXT,
00308 IF_COMPRESSED_RGBA_S3TC_DXT1 = GL_COMPRESSED_RGBA_S3TC_DXT1_EXT,
00309 IF_COMPRESSED_RGBA_S3TC_DXT3 = GL_COMPRESSED_RGBA_S3TC_DXT3_EXT,
00310 IF_COMPRESSED_RGBA_S3TC_DXT5 = GL_COMPRESSED_RGBA_S3TC_DXT5_EXT,
00311
00312
00313 IF_RED_INTEGER = GL_RED_INTEGER,
00314 IF_GREEN_INTEGER = GL_GREEN_INTEGER,
00315 IF_BLUE_INTEGER = GL_BLUE_INTEGER,
00316 IF_ALPHA_INTEGER = GL_ALPHA_INTEGER,
00317 IF_RGB_INTEGER = GL_RGB_INTEGER,
00318 IF_RGBA_INTEGER = GL_RGBA_INTEGER,
00319 IF_BGR_INTEGER = GL_BGR_INTEGER,
00320 IF_BGRA_INTEGER = GL_BGRA_INTEGER,
00321
00322
00323 IF_LUMINANCE_INTEGER = GL_LUMINANCE_INTEGER_EXT,
00324 IF_LUMINANCE_ALPHA_INTEGER = GL_LUMINANCE_ALPHA_INTEGER_EXT,
00325
00326 } EImageFormat;
00327
00328 typedef enum
00329 {
00330 T2DT_TEXTURE_2D = GL_TEXTURE_2D,
00331 T2DT_TEXTURE_CUBE_MAP_POSITIVE_X = GL_TEXTURE_CUBE_MAP_POSITIVE_X,
00332 T2DT_TEXTURE_CUBE_MAP_NEGATIVE_X = GL_TEXTURE_CUBE_MAP_NEGATIVE_X,
00333 T2DT_TEXTURE_CUBE_MAP_POSITIVE_Y = GL_TEXTURE_CUBE_MAP_POSITIVE_Y,
00334 T2DT_TEXTURE_CUBE_MAP_NEGATIVE_Y = GL_TEXTURE_CUBE_MAP_NEGATIVE_Y,
00335 T2DT_TEXTURE_CUBE_MAP_POSITIVE_Z = GL_TEXTURE_CUBE_MAP_POSITIVE_Z,
00336 T2DT_TEXTURE_CUBE_MAP_NEGATIVE_Z = GL_TEXTURE_CUBE_MAP_NEGATIVE_Z,
00337 T2DT_TEXTURE_RECTANGLE = GL_TEXTURE_RECTANGLE_ARB,
00338 T2DT_TEXTURE_1D_ARRAY = GL_TEXTURE_1D_ARRAY,
00339 T2DT_TEXTURE_2D_MULTISAMPLE = GL_TEXTURE_2D_MULTISAMPLE,
00340 } ETex2DTarget;
00341
00342 typedef enum
00343 {
00344 AP_NO_ATTACHMENT = 0,
00345
00346 AP_COLOR_ATTACHMENT0 = GL_COLOR_ATTACHMENT0,
00347 AP_COLOR_ATTACHMENT1 = GL_COLOR_ATTACHMENT1,
00348 AP_COLOR_ATTACHMENT2 = GL_COLOR_ATTACHMENT2,
00349 AP_COLOR_ATTACHMENT3 = GL_COLOR_ATTACHMENT3,
00350 AP_COLOR_ATTACHMENT4 = GL_COLOR_ATTACHMENT4,
00351 AP_COLOR_ATTACHMENT5 = GL_COLOR_ATTACHMENT5,
00352 AP_COLOR_ATTACHMENT6 = GL_COLOR_ATTACHMENT6,
00353 AP_COLOR_ATTACHMENT7 = GL_COLOR_ATTACHMENT7,
00354 AP_COLOR_ATTACHMENT8 = GL_COLOR_ATTACHMENT8,
00355 AP_COLOR_ATTACHMENT9 = GL_COLOR_ATTACHMENT9,
00356 AP_COLOR_ATTACHMENT10 = GL_COLOR_ATTACHMENT10,
00357 AP_COLOR_ATTACHMENT11 = GL_COLOR_ATTACHMENT11,
00358 AP_COLOR_ATTACHMENT12 = GL_COLOR_ATTACHMENT12,
00359 AP_COLOR_ATTACHMENT13 = GL_COLOR_ATTACHMENT13,
00360 AP_COLOR_ATTACHMENT14 = GL_COLOR_ATTACHMENT14,
00361 AP_COLOR_ATTACHMENT15 = GL_COLOR_ATTACHMENT15,
00362
00363 AP_DEPTH_ATTACHMENT = GL_DEPTH_ATTACHMENT,
00364
00365 AP_STENCIL_ATTACHMENT = GL_STENCIL_ATTACHMENT,
00366
00367 AP_DEPTH_STENCIL_ATTACHMENT = GL_DEPTH_STENCIL_ATTACHMENT,
00368 } EAttachmentPoint;
00369
00371 typedef enum
00372 {
00373 CBF_RED = GL_RED,
00374 CBF_RG = GL_RG,
00375 CBF_RGB = GL_RGB,
00376 CBF_RGBA = GL_RGBA,
00377
00378
00379 CBF_R8 = GL_R8,
00380
00381 CBF_R16 = GL_R16,
00382
00383 CBF_RG8 = GL_RG8,
00384
00385 CBF_RG16 = GL_RG16,
00386
00387
00388
00389
00390
00391
00392
00393
00394
00395
00396
00397
00398
00399 CBF_RGBA8 = GL_RGBA8,
00400
00401 CBF_RGB10_A2 = GL_RGB10_A2,
00402 CBF_RGB10_A2UI = GL_RGB10_A2UI,
00403
00404 CBF_RGBA16 = GL_RGBA16,
00405
00406
00407 CBF_SRGB8_ALPHA8 = GL_SRGB8_ALPHA8,
00408 CBF_R16F = GL_R16F,
00409 CBF_RG16F = GL_RG16F,
00410
00411 CBF_RGBA16F = GL_RGBA16F,
00412 CBF_R32F = GL_R32F,
00413 CBF_RG32F = GL_RG32F,
00414
00415 CBF_RGBA32F = GL_RGBA32F,
00416 CBF_R11F_G11F_B10F = GL_R11F_G11F_B10F,
00417
00418 CBF_R8I = GL_R8I,
00419 CBF_R8UI = GL_R8UI,
00420 CBF_R16I = GL_R16I,
00421 CBF_R16UI = GL_R16UI,
00422 CBF_R32I = GL_R32I,
00423 CBF_R32UI = GL_R32UI,
00424 CBF_RG8I = GL_RG8I,
00425 CBF_RG8UI = GL_RG8UI,
00426 CBF_RG16I = GL_RG16I,
00427 CBF_RG16UI = GL_RG16UI,
00428 CBF_RG32I = GL_RG32I,
00429 CBF_RG32UI = GL_RG32UI,
00430
00431
00432
00433
00434
00435
00436 CBF_RGBA8I = GL_RGBA8I,
00437 CBF_RGBA8UI = GL_RGBA8UI,
00438 CBF_RGBA16I = GL_RGBA16I,
00439 CBF_RGBA16UI = GL_RGBA16UI,
00440 CBF_RGBA32I = GL_RGBA32I,
00441 CBF_RGBA32UI = GL_RGBA32UI
00442
00443 } EColorBufferFormat;
00444
00445 typedef enum
00446 {
00447 DBF_DEPTH_COMPONENT = GL_DEPTH_COMPONENT,
00448 DBF_DEPTH_COMPONENT16 = GL_DEPTH_COMPONENT16,
00449 DBF_DEPTH_COMPONENT24 = GL_DEPTH_COMPONENT24,
00450 DBF_DEPTH_COMPONENT32 = GL_DEPTH_COMPONENT32,
00451 DBF_DEPTH_COMPONENT32F = GL_DEPTH_COMPONENT32F,
00452 } EDepthBufferFormat;
00453
00454 typedef enum
00455 {
00456 SBF_STENCIL_INDEX1 = GL_STENCIL_INDEX1_EXT,
00457 SBF_STENCIL_INDEX4 = GL_STENCIL_INDEX4_EXT,
00458 SBF_STENCIL_INDEX8 = GL_STENCIL_INDEX8_EXT,
00459 SBF_STENCIL_INDEX16 = GL_STENCIL_INDEX16_EXT
00460 } EStencilBufferFormat;
00461
00462 typedef enum
00463 {
00464 DSBT_DEPTH_STENCIL = GL_DEPTH_STENCIL,
00465 DSBT_DEPTH24_STENCIL8 = GL_DEPTH24_STENCIL8,
00466 DSBT_DEPTH32F_STENCIL8 = GL_DEPTH32F_STENCIL8,
00467 } EDepthStencilBufferFormat;
00468
00469 typedef enum
00470 {
00471 CF_DO_NOT_CLEAR = 0,
00472 CF_CLEAR_COLOR = GL_COLOR_BUFFER_BIT,
00473 CF_CLEAR_DEPTH = GL_DEPTH_BUFFER_BIT,
00474 CF_CLEAR_STENCIL = GL_STENCIL_BUFFER_BIT,
00475 CF_CLEAR_COLOR_DEPTH = CF_CLEAR_COLOR + CF_CLEAR_DEPTH,
00476 CF_CLEAR_COLOR_STENCIL = CF_CLEAR_COLOR + CF_CLEAR_STENCIL,
00477 CF_CLEAR_DEPTH_STENCIL = CF_CLEAR_DEPTH + CF_CLEAR_STENCIL,
00478 CF_CLEAR_COLOR_DEPTH_STENCIL = CF_CLEAR_COLOR + CF_CLEAR_DEPTH + CF_CLEAR_STENCIL,
00479 } EClearFlags;
00480
00481 typedef enum
00482 {
00483 CCM_Float,
00484 CCM_Int,
00485 CCM_UInt
00486 } EClearColorMode;
00487
00488 typedef enum
00489 {
00490 BF_ZERO=GL_ZERO,
00491 BF_ONE=GL_ONE,
00492 BF_SRC_COLOR=GL_SRC_COLOR,
00493 BF_ONE_MINUS_SRC_COLOR=GL_ONE_MINUS_SRC_COLOR,
00494 BF_DST_COLOR=GL_DST_COLOR,
00495 BF_ONE_MINUS_DST_COLOR=GL_ONE_MINUS_DST_COLOR,
00496 BF_SRC_ALPHA=GL_SRC_ALPHA,
00497 BF_ONE_MINUS_SRC_ALPHA=GL_ONE_MINUS_SRC_ALPHA,
00498 BF_DST_ALPHA=GL_DST_ALPHA,
00499 BF_ONE_MINUS_DST_ALPHA=GL_ONE_MINUS_DST_ALPHA,
00500 BF_CONSTANT_COLOR=GL_CONSTANT_COLOR,
00501 BF_ONE_MINUS_CONSTANT_COLOR=GL_ONE_MINUS_CONSTANT_COLOR,
00502 BF_CONSTANT_ALPHA=GL_CONSTANT_ALPHA,
00503 BF_ONE_MINUS_CONSTANT_ALPHA=GL_ONE_MINUS_CONSTANT_ALPHA,
00504 BF_SRC_ALPHA_SATURATE=GL_SRC_ALPHA_SATURATE
00505 } EBlendFactor;
00506
00507 typedef enum
00508 {
00509 TD_TEXTURE_UNKNOWN = 0,
00510 TD_TEXTURE_1D = GL_TEXTURE_1D,
00511 TD_TEXTURE_2D = GL_TEXTURE_2D,
00512 TD_TEXTURE_3D = GL_TEXTURE_3D,
00513 TD_TEXTURE_CUBE_MAP = GL_TEXTURE_CUBE_MAP,
00514 TD_TEXTURE_RECTANGLE = GL_TEXTURE_RECTANGLE,
00515 TD_TEXTURE_1D_ARRAY = GL_TEXTURE_1D_ARRAY,
00516 TD_TEXTURE_2D_ARRAY = GL_TEXTURE_2D_ARRAY,
00517 TD_TEXTURE_BUFFER = GL_TEXTURE_BUFFER,
00518 TD_TEXTURE_2D_MULTISAMPLE = GL_TEXTURE_2D_MULTISAMPLE,
00519 TD_TEXTURE_2D_MULTISAMPLE_ARRAY = GL_TEXTURE_2D_MULTISAMPLE_ARRAY
00520 } ETextureDimension;
00521
00522 typedef enum
00523 {
00524 TCM_NONE = GL_NONE,
00525 TCM_COMPARE_R_TO_TEXTURE = GL_COMPARE_R_TO_TEXTURE,
00526 TCM_COMPARE_REF_DEPTH_TO_TEXTURE = GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT
00527 } ETexCompareMode;
00528
00529 typedef enum
00530 {
00531 TCF_LEQUAL = GL_LEQUAL,
00532 TCF_GEQUAL = GL_GEQUAL,
00533 TCF_LESS = GL_LESS,
00534 TCF_GREATER = GL_GREATER,
00535 TCF_EQUAL = GL_EQUAL,
00536 TCF_NOTEQUAL = GL_NOTEQUAL,
00537 TCF_ALWAYS = GL_ALWAYS,
00538 TCF_NEVER = GL_NEVER
00539 } ETexCompareFunc;
00540
00541 typedef enum
00542 {
00543 DTM_LUMINANCE = GL_LUMINANCE,
00544 DTM_INTENSITY = GL_INTENSITY,
00545 DTM_ALPHA = GL_ALPHA,
00546 DTM_RED = GL_RED
00547 } EDepthTextureMode;
00548
00549 typedef enum
00550 {
00551 RDB_NONE = GL_NONE,
00552 RDB_FRONT_LEFT = GL_FRONT_LEFT,
00553 RDB_FRONT_RIGHT = GL_FRONT_RIGHT,
00554 RDB_BACK_LEFT = GL_BACK_LEFT,
00555 RDB_BACK_RIGHT = GL_BACK_RIGHT,
00556 RDB_AUX0 = GL_AUX0,
00557 RDB_AUX1 = GL_AUX1,
00558 RDB_AUX2 = GL_AUX2,
00559 RDB_AUX3 = GL_AUX3,
00560 RDB_COLOR_ATTACHMENT0 = GL_COLOR_ATTACHMENT0_EXT,
00561 RDB_COLOR_ATTACHMENT1 = GL_COLOR_ATTACHMENT1_EXT,
00562 RDB_COLOR_ATTACHMENT2 = GL_COLOR_ATTACHMENT2_EXT,
00563 RDB_COLOR_ATTACHMENT3 = GL_COLOR_ATTACHMENT3_EXT,
00564 RDB_COLOR_ATTACHMENT4 = GL_COLOR_ATTACHMENT4_EXT,
00565 RDB_COLOR_ATTACHMENT5 = GL_COLOR_ATTACHMENT5_EXT,
00566 RDB_COLOR_ATTACHMENT6 = GL_COLOR_ATTACHMENT6_EXT,
00567 RDB_COLOR_ATTACHMENT7 = GL_COLOR_ATTACHMENT7_EXT,
00568 RDB_COLOR_ATTACHMENT8 = GL_COLOR_ATTACHMENT8_EXT,
00569 RDB_COLOR_ATTACHMENT9 = GL_COLOR_ATTACHMENT9_EXT,
00570 RDB_COLOR_ATTACHMENT10 = GL_COLOR_ATTACHMENT10_EXT,
00571 RDB_COLOR_ATTACHMENT11 = GL_COLOR_ATTACHMENT11_EXT,
00572 RDB_COLOR_ATTACHMENT12 = GL_COLOR_ATTACHMENT12_EXT,
00573 RDB_COLOR_ATTACHMENT13 = GL_COLOR_ATTACHMENT13_EXT,
00574 RDB_COLOR_ATTACHMENT14 = GL_COLOR_ATTACHMENT14_EXT,
00575 RDB_COLOR_ATTACHMENT15 = GL_COLOR_ATTACHMENT15_EXT
00576 } EReadDrawBuffer;
00577
00578 typedef enum
00579 {
00580 FBB_FRAMEBUFFER = GL_FRAMEBUFFER,
00581 FBB_DRAW_FRAMEBUFFER = GL_DRAW_FRAMEBUFFER,
00582 FBB_READ_FRAMEBUFFER = GL_READ_FRAMEBUFFER,
00583 } EFramebufferBind;
00584
00585 typedef enum
00586 {
00587 IT_IMPLICIT_TYPE = 0,
00588
00589 IT_UNSIGNED_BYTE = GL_UNSIGNED_BYTE,
00590 IT_BYTE = GL_BYTE,
00591 IT_UNSIGNED_SHORT = GL_UNSIGNED_SHORT,
00592 IT_SHORT = GL_SHORT,
00593 IT_UNSIGNED_INT = GL_UNSIGNED_INT,
00594 IT_INT = GL_INT,
00595 IT_FLOAT = GL_FLOAT,
00596 IT_UNSIGNED_BYTE_3_3_2 = GL_UNSIGNED_BYTE_3_3_2,
00597 IT_UNSIGNED_BYTE_2_3_3_REV = GL_UNSIGNED_BYTE_2_3_3_REV,
00598 IT_UNSIGNED_SHORT_5_6_5 = GL_UNSIGNED_SHORT_5_6_5,
00599 IT_UNSIGNED_SHORT_5_6_5_REV = GL_UNSIGNED_SHORT_5_6_5_REV,
00600 IT_UNSIGNED_SHORT_4_4_4_4 = GL_UNSIGNED_SHORT_4_4_4_4,
00601 IT_UNSIGNED_SHORT_4_4_4_4_REV = GL_UNSIGNED_SHORT_4_4_4_4_REV,
00602 IT_UNSIGNED_SHORT_5_5_5_1 = GL_UNSIGNED_SHORT_5_5_5_1,
00603 IT_UNSIGNED_SHORT_1_5_5_5_REV = GL_UNSIGNED_SHORT_1_5_5_5_REV,
00604 IT_UNSIGNED_INT_8_8_8_8 = GL_UNSIGNED_INT_8_8_8_8,
00605 IT_UNSIGNED_INT_8_8_8_8_REV = GL_UNSIGNED_INT_8_8_8_8_REV,
00606 IT_UNSIGNED_INT_10_10_10_2 = GL_UNSIGNED_INT_10_10_10_2,
00607 IT_UNSIGNED_INT_2_10_10_10_REV = GL_UNSIGNED_INT_2_10_10_10_REV,
00608
00609 IT_UNSIGNED_INT_5_9_9_9_REV = GL_UNSIGNED_INT_5_9_9_9_REV_EXT,
00610 IT_UNSIGNED_INT_10F_11F_11F_REV = GL_UNSIGNED_INT_10F_11F_11F_REV_EXT,
00611 IT_UNSIGNED_INT_24_8 = GL_UNSIGNED_INT_24_8,
00612 IT_FLOAT_32_UNSIGNED_INT_24_8_REV = GL_FLOAT_32_UNSIGNED_INT_24_8_REV
00613
00614 } EImageType;
00615
00616 typedef enum
00617 {
00618 PT_POINTS = GL_POINTS,
00619 PT_LINES = GL_LINES,
00620 PT_LINE_LOOP = GL_LINE_LOOP,
00621
00622 PT_LINE_STRIP = GL_LINE_STRIP,
00623 PT_TRIANGLES = GL_TRIANGLES,
00624 PT_TRIANGLE_STRIP = GL_TRIANGLE_STRIP,
00625 PT_TRIANGLE_FAN = GL_TRIANGLE_FAN,
00626 PT_QUADS = GL_QUADS,
00627 PT_QUAD_STRIP = GL_QUAD_STRIP,
00628 PT_POLYGON = GL_POLYGON,
00629
00630
00631 PT_LINES_ADJACENCY = GL_LINES_ADJACENCY_EXT,
00632 PT_LINE_STRIP_ADJACENCY = GL_LINE_STRIP_ADJACENCY_EXT,
00633 PT_TRIANGLES_ADJACENCY = GL_TRIANGLES_ADJACENCY_EXT,
00634 PT_TRIANGLE_STRIP_ADJACENCY = GL_TRIANGLE_STRIP_ADJACENCY_EXT,
00635
00636
00637 PT_PATCHES = GL_PATCHES,
00638
00639 PT_UNKNOWN,
00640
00641 } EPrimitiveType;
00642
00643 typedef enum
00644 {
00645 PF_FRONT=GL_FRONT,
00646 PF_BACK=GL_BACK,
00647 PF_FRONT_AND_BACK=GL_FRONT_AND_BACK
00648 } EPolygonFace;
00649
00650 typedef enum
00651 {
00652 HM_FASTEST=GL_FASTEST,
00653 HM_NICEST=GL_NICEST,
00654 HM_DONT_CARE=GL_DONT_CARE
00655 } EHintMode;
00656
00657 typedef enum
00658 {
00659 FF_CW=GL_CW,
00660 FF_CCW=GL_CCW
00661 } EFrontFace;
00662
00663 typedef enum
00664 {
00665 FU_NEVER=GL_NEVER,
00666 FU_LESS=GL_LESS,
00667 FU_EQUAL=GL_EQUAL,
00668 FU_LEQUAL=GL_LEQUAL,
00669 FU_GREATER=GL_GREATER,
00670 FU_NOTEQUAL=GL_NOTEQUAL,
00671 FU_GEQUAL=GL_GEQUAL,
00672 FU_ALWAYS=GL_ALWAYS
00673 } EFunction;
00674
00675 typedef enum
00676 {
00677 PM_FILL=GL_FILL,
00678 PM_LINE=GL_LINE,
00679 PM_POINT=GL_POINT
00680 } EPolygonMode;
00681
00682 typedef enum
00683 {
00684 SM_FLAT=GL_FLAT,
00685 SM_SMOOTH=GL_SMOOTH
00686 } EShadeModel;
00687
00688 typedef enum
00689 {
00690 BE_FUNC_ADD=GL_FUNC_ADD,
00691 BE_FUNC_SUBTRACT=GL_FUNC_SUBTRACT,
00692 BE_FUNC_REVERSE_SUBTRACT=GL_FUNC_REVERSE_SUBTRACT,
00693 BE_MIN=GL_MIN,
00694 BE_MAX=GL_MAX
00695 } EBlendEquation;
00696
00697 typedef enum
00698 {
00699 CM_EMISSION=GL_EMISSION,
00700 CM_AMBIENT=GL_AMBIENT,
00701 CM_DIFFUSE=GL_DIFFUSE,
00702 CM_SPECULAR=GL_SPECULAR,
00703 CM_AMBIENT_AND_DIFFUSE=GL_AMBIENT_AND_DIFFUSE
00704 } EColorMaterial;
00705
00706 typedef enum
00707 {
00708 CC_SEPARATE_SPECULAR_COLOR=GL_SEPARATE_SPECULAR_COLOR,
00709 CC_SINGLE_COLOR=GL_SINGLE_COLOR
00710 } EColorControl;
00711
00712 typedef enum
00713 {
00714 FM_LINEAR=GL_LINEAR,
00715 FM_EXP=GL_EXP,
00716 FM_EXP2=GL_EXP2
00717 } EFogMode;
00718
00719 typedef enum
00720 {
00721 LO_CLEAR=GL_CLEAR,
00722 LO_SET=GL_SET,
00723 LO_COPY=GL_COPY,
00724 LO_COPY_INVERTED=GL_COPY_INVERTED,
00725 LO_NOOP=GL_NOOP,
00726 LO_INVERT=GL_INVERT,
00727 LO_AND=GL_AND,
00728 LO_NAND=GL_NAND,
00729 LO_OR=GL_OR,
00730 LO_NOR=GL_NOR,
00731 LO_XOR=GL_XOR,
00732 LO_EQUIV=GL_EQUIV,
00733 LO_AND_REVERSE=GL_AND_REVERSE,
00734 LO_AND_INVERTED=GL_AND_INVERTED,
00735 LO_OR_REVERSE=GL_OR_REVERSE,
00736 LO_OR_INVERTED=GL_OR_INVERTED
00737 } ELogicOp;
00738
00739 typedef enum
00740 {
00741 SO_KEEP=GL_KEEP,
00742 SO_ZERO=GL_ZERO,
00743 SO_REPLACE=GL_REPLACE,
00744 SO_INCR=GL_INCR,
00745 SO_INCR_WRAP=GL_INCR_WRAP,
00746 SO_DECR=GL_DECR,
00747 SO_DECR_WRAP=GL_DECR_WRAP,
00748 SO_INVERT=GL_INVERT
00749 } EStencilOp;
00750
00751 typedef enum
00752 {
00753 TPF_NEAREST=GL_NEAREST,
00754 TPF_LINEAR=GL_LINEAR,
00755 TPF_NEAREST_MIPMAP_NEAREST=GL_NEAREST_MIPMAP_NEAREST,
00756 TPF_LINEAR_MIPMAP_NEAREST=GL_LINEAR_MIPMAP_NEAREST,
00757 TPF_NEAREST_MIPMAP_LINEAR=GL_NEAREST_MIPMAP_LINEAR,
00758 TPF_LINEAR_MIPMAP_LINEAR=GL_LINEAR_MIPMAP_LINEAR
00759 } ETexParamFilter;
00760
00761 typedef enum
00762 {
00763 TPW_CLAMP = GL_CLAMP,
00764 TPW_CLAMP_TO_BORDER = GL_CLAMP_TO_BORDER,
00765 TPW_CLAMP_TO_EDGE = GL_CLAMP_TO_EDGE,
00766 TPW_MIRRORED_REPEAT = GL_MIRRORED_REPEAT,
00767 TPW_REPEAT = GL_REPEAT
00768 } ETexParamWrap;
00769
00770 typedef enum
00771 {
00772 TEM_DECAL=GL_DECAL,
00773 TEM_MODULATE=GL_MODULATE,
00774 TEM_ADD=GL_ADD,
00775 TEM_BLEND=GL_BLEND,
00776 TEM_REPLACE=GL_REPLACE,
00777 TEM_COMBINE=GL_COMBINE,
00778 TEM_ADD_SIGN=GL_ADD_SIGNED,
00779 TEM_INTERPOLATE=GL_INTERPOLATE,
00780 TEM_SUBTRACT=GL_SUBTRACT,
00781 TEM_DOT3_RGB=GL_DOT3_RGB,
00782 TEM_DOT3_RGBA=GL_DOT3_RGBA
00783 } ETexEnvMode;
00784
00785 typedef enum
00786 {
00787 TES_TEXTURE=GL_TEXTURE,
00788 TES_TEXTURE0=GL_TEXTURE0,
00789 TES_TEXTURE1=GL_TEXTURE1,
00790 TES_TEXTURE2=GL_TEXTURE2,
00791 TES_TEXTURE3=GL_TEXTURE3,
00792 TES_TEXTURE4=GL_TEXTURE4,
00793 TES_TEXTURE5=GL_TEXTURE5,
00794 TES_TEXTURE6=GL_TEXTURE6,
00795 TES_TEXTURE7=GL_TEXTURE7,
00796 TES_CONSTANT=GL_CONSTANT,
00797 TES_PRIMARY_COLOR=GL_PRIMARY_COLOR,
00798 TES_PREVIOUS=GL_PREVIOUS
00799 } ETexEnvSource;
00800
00801 typedef enum
00802 {
00803 TEO_SRC_COLOR=GL_SRC_COLOR,
00804 TEO_ONE_MINUS_SRC_COLOR=GL_ONE_MINUS_SRC_COLOR,
00805 TEO_SRC_ALPHA=GL_SRC_ALPHA,
00806 TEO_ONE_MINUS_SRC_ALPHA=GL_ONE_MINUS_SRC_ALPHA
00807 } ETexEnvOperand;
00808
00810 typedef enum
00811 {
00812 TGM_DISABLED = 0,
00813 TGM_EYE_LINEAR = GL_EYE_LINEAR,
00814 TGM_OBJECT_LINEAR = GL_OBJECT_LINEAR,
00815 TGM_SPHERE_MAP = GL_SPHERE_MAP,
00816 TGM_REFLECTION_MAP = GL_REFLECTION_MAP,
00817 TGM_NORMAL_MAP = GL_NORMAL_MAP
00818 } ETexGenMode;
00819
00821 typedef enum
00822 {
00823
00824 EN_BLEND,
00825 EN_CULL_FACE,
00826 EN_DEPTH_TEST,
00827 EN_STENCIL_TEST,
00828 EN_DITHER,
00829 EN_POLYGON_OFFSET_FILL,
00830 EN_POLYGON_OFFSET_LINE,
00831 EN_POLYGON_OFFSET_POINT,
00832 EN_COLOR_LOGIC_OP,
00833 EN_MULTISAMPLE,
00834
00835
00836 EN_POINT_SMOOTH,
00837 EN_LINE_SMOOTH,
00838 EN_POLYGON_SMOOTH,
00839
00840
00841 EN_LINE_STIPPLE,
00842 EN_POLYGON_STIPPLE,
00843
00844
00845 EN_POINT_SPRITE,
00846 EN_PROGRAM_POINT_SIZE,
00847
00848
00849 EN_ALPHA_TEST,
00850 EN_LIGHTING,
00851 EN_COLOR_SUM,
00852 EN_FOG,
00853 EN_NORMALIZE,
00854 EN_RESCALE_NORMAL,
00855
00856
00857 EN_VERTEX_PROGRAM_TWO_SIDE,
00858
00859
00860 EN_TEXTURE_CUBE_MAP_SEAMLESS,
00861
00862
00863 EN_CLIP_DISTANCE0,
00864 EN_CLIP_DISTANCE1,
00865 EN_CLIP_DISTANCE2,
00866 EN_CLIP_DISTANCE3,
00867 EN_CLIP_DISTANCE4,
00868 EN_CLIP_DISTANCE5,
00869 EN_CLIP_DISTANCE6,
00870 EN_CLIP_DISTANCE7,
00871
00872
00873 EN_SAMPLE_ALPHA_TO_COVERAGE,
00874 EN_SAMPLE_ALPHA_TO_ONE,
00875 EN_SAMPLE_COVERAGE,
00876
00877 EN_EnableCount,
00878
00879 EN_UnknownEnable
00880
00881 } EEnable;
00882
00883 typedef enum
00884 {
00885 BU_STREAM_DRAW = GL_STREAM_DRAW,
00886 BU_STREAM_READ = GL_STREAM_READ,
00887 BU_STREAM_COPY = GL_STREAM_COPY,
00888 BU_STATIC_DRAW = GL_STATIC_DRAW,
00889 BU_STATIC_READ = GL_STATIC_READ,
00890 BU_STATIC_COPY = GL_STATIC_COPY,
00891 BU_DYNAMIC_DRAW = GL_DYNAMIC_DRAW,
00892 BU_DYNAMIC_READ = GL_DYNAMIC_READ,
00893 BU_DYNAMIC_COPY = GL_DYNAMIC_COPY
00894 } EBufferObjectUsage;
00895
00896 typedef enum
00897 {
00898 BA_READ_ONLY = GL_READ_ONLY,
00899 BA_WRITE_ONLY = GL_WRITE_ONLY,
00900 BA_READ_WRITE = GL_READ_WRITE
00901 } EBufferObjectAccess;
00902
00903 typedef enum
00904 {
00905 AlignLeft = 1,
00906 AlignHCenter = 2,
00907 AlignRight = 4,
00908 AlignTop = 8,
00909 AlignVCenter = 16,
00910 AlignBottom = 32
00911 } EAlign;
00912
00913 typedef enum
00914 {
00915 TextAlignLeft,
00916 TextAlignRight,
00917 TextAlignCenter,
00918 TextAlignJustify,
00919 } ETextAlign;
00920
00921 typedef enum
00922 {
00923 Text2D = 1,
00924 Text3D = 2
00925 } ETextMode;
00926
00927 typedef enum
00928 {
00929 LeftToRightText,
00930 RightToLeftText,
00931 TopToBottomText
00932 } ETextLayout;
00933
00934 typedef enum
00935 {
00936 NeverDepthSort,
00937 AlwaysDepthSort,
00938 AlphaDepthSort
00939 } EDepthSortMode;
00940
00941 typedef enum
00942 {
00943 ID_None,
00944 ID_1D,
00945 ID_2D,
00946 ID_3D,
00947 ID_Cubemap,
00948 ID_Error
00949 } EImageDimension;
00950
00951 typedef enum
00952 {
00953 ST_RenderStates = 1,
00954 ST_Enables = 2,
00955 ST_TextureSamplers = 4,
00956 ST_Lights = 8,
00957 ST_ClipPlanes = 16
00958 } EStateType;
00959
00960 typedef enum
00961 {
00962 RS_VertexAttrib,
00963 RS_VertexAttrib0 = RS_VertexAttrib,
00964 RS_VertexAttrib1,
00965 RS_VertexAttrib2,
00966 RS_VertexAttrib3,
00967 RS_VertexAttrib4,
00968 RS_VertexAttrib5,
00969 RS_VertexAttrib6,
00970 RS_VertexAttrib7,
00971
00972 RS_AlphaFunc,
00973 RS_BlendColor,
00974 RS_BlendEquation,
00975 RS_BlendFunc,
00976 RS_Color,
00977 RS_ColorMask,
00978 RS_CullFace,
00979 RS_DepthFunc,
00980 RS_DepthMask,
00981 RS_DepthRange,
00982 RS_Fog,
00983 RS_FrontFace,
00984 RS_PolygonMode,
00985 RS_Hint,
00986 RS_LightModel,
00987 RS_LineStipple,
00988 RS_LineWidth,
00989 RS_LogicOp,
00990 RS_Material,
00991 RS_Normal,
00992 RS_PixelTransfer,
00993 RS_PointParameter,
00994 RS_PointSize,
00995 RS_PolygonOffset,
00996 RS_PolygonStipple,
00997 RS_SampleCoverage,
00998 RS_SecondaryColor,
00999 RS_ShadeModel,
01000 RS_StencilFunc,
01001 RS_StencilMask,
01002 RS_StencilOp,
01003 RS_GLSLProgram,
01004
01005 RS_Light,
01006 RS_Light0 = RS_Light,
01007 RS_Light1,
01008 RS_Light2,
01009 RS_Light3,
01010 RS_Light4,
01011 RS_Light5,
01012 RS_Light6,
01013 RS_Light7,
01014
01015 RS_ClipPlane,
01016 RS_ClipPlane0 = RS_ClipPlane,
01017 RS_ClipPlane1,
01018 RS_ClipPlane2,
01019 RS_ClipPlane3,
01020 RS_ClipPlane4,
01021 RS_ClipPlane5,
01022
01023 RS_TextureSampler,
01024 RS_TextureSampler0 = RS_TextureSampler + 0,
01025 RS_TextureSampler1 = RS_TextureSampler + 1,
01026 RS_TextureSampler2 = RS_TextureSampler + 2,
01027 RS_TextureSampler3 = RS_TextureSampler + 3,
01028 RS_TextureSampler4 = RS_TextureSampler + 4,
01029 RS_TextureSampler5 = RS_TextureSampler + 5,
01030 RS_TextureSampler6 = RS_TextureSampler + 6,
01031 RS_TextureSampler7 = RS_TextureSampler + 7,
01032 RS_TextureSampler8 = RS_TextureSampler + 8,
01033 RS_TextureSampler9 = RS_TextureSampler + 9,
01034 RS_TextureSampler10 = RS_TextureSampler + 10,
01035 RS_TextureSampler11 = RS_TextureSampler + 11,
01036 RS_TextureSampler12 = RS_TextureSampler + 12,
01037 RS_TextureSampler13 = RS_TextureSampler + 13,
01038 RS_TextureSampler14 = RS_TextureSampler + 14,
01039 RS_TextureSampler15 = RS_TextureSampler + 15,
01040
01041
01042 RS_TexGen = RS_TextureSampler + VL_MAX_TEXTURE_UNITS,
01043 RS_TexGen0 = RS_TexGen + 0,
01044 RS_TexGen1 = RS_TexGen + 1,
01045 RS_TexGen2 = RS_TexGen + 2,
01046 RS_TexGen3 = RS_TexGen + 3,
01047 RS_TexGen4 = RS_TexGen + 4,
01048 RS_TexGen5 = RS_TexGen + 5,
01049 RS_TexGen6 = RS_TexGen + 6,
01050 RS_TexGen7 = RS_TexGen + 7,
01051 RS_TexGen8 = RS_TexGen + 8,
01052 RS_TexGen9 = RS_TexGen + 9,
01053 RS_TexGen10 = RS_TexGen + 10,
01054 RS_TexGen11 = RS_TexGen + 11,
01055 RS_TexGen12 = RS_TexGen + 12,
01056 RS_TexGen13 = RS_TexGen + 13,
01057 RS_TexGen14 = RS_TexGen + 14,
01058 RS_TexGen15 = RS_TexGen + 15,
01059
01060
01061 RS_TexEnv = RS_TexGen + VL_MAX_TEXTURE_UNITS,
01062 RS_TexEnv0 = RS_TexEnv + 0,
01063 RS_TexEnv1 = RS_TexEnv + 1,
01064 RS_TexEnv2 = RS_TexEnv + 2,
01065 RS_TexEnv3 = RS_TexEnv + 3,
01066 RS_TexEnv4 = RS_TexEnv + 4,
01067 RS_TexEnv5 = RS_TexEnv + 5,
01068 RS_TexEnv6 = RS_TexEnv + 6,
01069 RS_TexEnv7 = RS_TexEnv + 7,
01070 RS_TexEnv8 = RS_TexEnv + 8,
01071 RS_TexEnv9 = RS_TexEnv + 9,
01072 RS_TexEnv10 = RS_TexEnv + 10,
01073 RS_TexEnv11 = RS_TexEnv + 11,
01074 RS_TexEnv12 = RS_TexEnv + 12,
01075 RS_TexEnv13 = RS_TexEnv + 13,
01076 RS_TexEnv14 = RS_TexEnv + 14,
01077 RS_TexEnv15 = RS_TexEnv + 15,
01078
01079
01080 RS_TextureMatrix = RS_TexEnv + VL_MAX_TEXTURE_UNITS,
01081 RS_TextureMatrix0 = RS_TextureMatrix + 0,
01082 RS_TextureMatrix1 = RS_TextureMatrix + 1,
01083 RS_TextureMatrix2 = RS_TextureMatrix + 2,
01084 RS_TextureMatrix3 = RS_TextureMatrix + 3,
01085 RS_TextureMatrix4 = RS_TextureMatrix + 4,
01086 RS_TextureMatrix5 = RS_TextureMatrix + 5,
01087 RS_TextureMatrix6 = RS_TextureMatrix + 6,
01088 RS_TextureMatrix7 = RS_TextureMatrix + 7,
01089 RS_TextureMatrix8 = RS_TextureMatrix + 8,
01090 RS_TextureMatrix9 = RS_TextureMatrix + 9,
01091 RS_TextureMatrix10 = RS_TextureMatrix + 10,
01092 RS_TextureMatrix11 = RS_TextureMatrix + 11,
01093 RS_TextureMatrix12 = RS_TextureMatrix + 12,
01094 RS_TextureMatrix13 = RS_TextureMatrix + 13,
01095 RS_TextureMatrix14 = RS_TextureMatrix + 14,
01096 RS_TextureMatrix15 = RS_TextureMatrix + 15,
01097
01098
01099 RS_RenderStateCount = RS_TextureMatrix15 + 1,
01100
01101 RS_NONE,
01102
01103 } ERenderState;
01104
01105 typedef enum
01106 {
01107 GIT_POINTS = GL_POINTS,
01108 GIT_LINES = GL_LINES,
01109 GIT_LINES_ADJACENCY = GL_LINES_ADJACENCY_EXT,
01110 GIT_TRIANGLES = GL_TRIANGLES,
01111 GIT_TRIANGLES_ADJACENCY = GL_TRIANGLES_ADJACENCY_EXT
01112 } EGeometryInputType;
01113
01114 typedef enum
01115 {
01116 GOT_POINTS = GL_POINTS,
01117 GOT_LINE_STRIP = GL_LINE_STRIP,
01118 GOT_TRIANGLE_STRIP = GL_TRIANGLE_STRIP,
01119 } EGeometryOutputType;
01120
01121 typedef enum
01122 {
01123 BB_COLOR_BUFFER_BIT = GL_COLOR_BUFFER_BIT,
01124 BB_DEPTH_BUFFER_BIT = GL_DEPTH_BUFFER_BIT,
01125 BB_STENCIL_BUFFER_BIT = GL_STENCIL_BUFFER_BIT
01126 } EBufferBits;
01127
01128 typedef enum
01129 {
01130 BT_AxisAlignedBillboard = 1,
01131 BT_SphericalBillboard = 2
01132 } EBillboardType;
01133
01134 typedef enum
01135 {
01136 SM_SortBackToFront,
01137 SM_SortFrontToBack
01138 } ESortMode;
01139
01140 typedef enum
01141 {
01142 GM_GetOrCreate,
01143 GM_DontCreate
01144 } EGetMode;
01145
01146 typedef enum
01147 {
01148 SE_Unknown,
01149 SE_ASCII,
01150 SE_UTF8,
01151 SE_UTF16_BE,
01152 SE_UTF16_LE,
01153 SE_UTF32_BE,
01154 SE_UTF32_LE,
01155 SE_LATIN1,
01156 } EStringEncoding;
01157
01158 typedef enum
01159 {
01160 OM_ReadOnly,
01161 OM_WriteOnly,
01162 } EOpenMode;
01163
01164 typedef enum
01165 {
01166 Key_None = 0,
01167
01168
01169
01170 Key_0,
01171 Key_1,
01172 Key_2,
01173 Key_3,
01174 Key_4,
01175 Key_5,
01176 Key_6,
01177 Key_7,
01178 Key_8,
01179 Key_9,
01180
01181 Key_A,
01182 Key_B,
01183 Key_C,
01184 Key_D,
01185 Key_E,
01186 Key_F,
01187 Key_G,
01188 Key_H,
01189 Key_I,
01190 Key_J,
01191 Key_K,
01192 Key_L,
01193 Key_M,
01194 Key_N,
01195 Key_O,
01196 Key_P,
01197 Key_Q,
01198 Key_R,
01199 Key_S,
01200 Key_T,
01201 Key_U,
01202 Key_V,
01203 Key_W,
01204 Key_X,
01205 Key_Y,
01206 Key_Z,
01207
01208 Key_Return,
01209 Key_BackSpace,
01210 Key_Tab,
01211 Key_Space,
01212
01213 Key_Clear,
01214 Key_Escape,
01215 Key_Exclam,
01216 Key_QuoteDbl,
01217 Key_Hash,
01218 Key_Dollar,
01219 Key_Ampersand,
01220 Key_Quote,
01221 Key_LeftParen,
01222 Key_RightParen,
01223 Key_Asterisk,
01224 Key_Plus,
01225 Key_Comma,
01226 Key_Minus,
01227 Key_Period,
01228 Key_Slash,
01229 Key_Colon,
01230 Key_Semicolon,
01231 Key_Less,
01232 Key_Equal,
01233 Key_Greater,
01234 Key_Question,
01235 Key_At,
01236 Key_LeftBracket,
01237 Key_BackSlash,
01238 Key_RightBracket,
01239 Key_Caret,
01240 Key_Underscore,
01241 Key_QuoteLeft,
01242
01243
01244
01245 Key_Ctrl,
01246 Key_LeftCtrl,
01247 Key_RightCtrl,
01248 Key_Alt,
01249 Key_LeftAlt,
01250 Key_RightAlt,
01251 Key_Shift,
01252 Key_LeftShift,
01253 Key_RightShift,
01254 Key_Insert,
01255 Key_Delete,
01256 Key_Home,
01257 Key_End,
01258 Key_Print,
01259 Key_Pause,
01260 Key_PageUp,
01261 Key_PageDown,
01262 Key_Left,
01263 Key_Right,
01264 Key_Up,
01265 Key_Down,
01266 Key_F1,
01267 Key_F2,
01268 Key_F3,
01269 Key_F4,
01270 Key_F5,
01271 Key_F6,
01272 Key_F7,
01273 Key_F8,
01274 Key_F9,
01275 Key_F10,
01276 Key_F11,
01277 Key_F12,
01278
01279 Key_Unknown,
01280
01281 Key_NumberOfKeys
01282
01283 } EKey;
01284
01285 typedef enum
01286 {
01287 NoButton = 0,
01288
01289 LeftButton = 1,
01290 RightButton = 2,
01291 MiddleButton = 4,
01292
01293 UnknownButton,
01294 } EMouseButton;
01295
01296 typedef enum
01297 {
01298 IN_Local = 0x00,
01299 IN_Propagate = 0x01,
01300 IN_Sticky = 0x04,
01301 IN_Propagate_Overrides_Sticky = 0x01 | 0x02 | 0x04,
01302 IN_Propagate_Overrides = 0x01 | 0x02,
01303 IN_Propagate_Sticky = 0x01 | 0x04,
01304 } EInheritance;
01305
01306 typedef enum
01307 {
01308 ST_VERTEX_SHADER = GL_VERTEX_SHADER,
01309 ST_TESS_CONTROL_SHADER = GL_TESS_CONTROL_SHADER,
01310 ST_TESS_EVALUATION_SHADER = GL_TESS_EVALUATION_SHADER,
01311 ST_GEOMETRY_SHADER = GL_GEOMETRY_SHADER,
01312 ST_FRAGMENT_SHADER = GL_FRAGMENT_SHADER
01313 } EShaderType;
01314
01315 typedef enum
01316 {
01317 TW_TESS_WINDING_ODD = GLU_TESS_WINDING_ODD,
01318 TW_TESS_WINDING_NONZERO = GLU_TESS_WINDING_NONZERO,
01319 TW_TESS_WINDING_POSITIVE = GLU_TESS_WINDING_POSITIVE,
01320 TW_TESS_WINDING_NEGATIVE = GLU_TESS_WINDING_NEGATIVE,
01321 TW_TESS_WINDING_ABS_GEQ_TWO = GLU_TESS_WINDING_ABS_GEQ_TWO
01322 } ETessellationWinding;
01323
01324 typedef enum {
01325 VEL_VERBOSITY_SILENT,
01326 VEL_VERBOSITY_ERROR,
01327 VEL_VERBOSITY_NORMAL,
01328 VEL_VERBOSITY_DEBUG
01329 } EVerbosityLevel;
01330
01331 typedef enum
01332 {
01333 LL_LogNotify,
01334 LL_LogPrint,
01335 LL_LogBug,
01336 LL_LogError,
01337 LL_LogWarning,
01338 LL_LogDebug,
01339 } ELogLevel;
01340
01341 typedef enum
01342 {
01343 PPCO_LOWER_LEFT = GL_LOWER_LEFT,
01344 PPCO_UPPER_LEFT = GL_UPPER_LEFT
01345 } EPointSpriteCoordOrigin;
01346
01349 typedef enum
01350 {
01351 VAI_NORMAL,
01352
01353
01354 VAI_INTEGER,
01355
01356
01357 VAI_DOUBLE,
01358
01359 } EVertexAttribInterpretation;
01360
01362 typedef enum
01363 {
01364 VA_Position = 0,
01365 VA_Normal = 1,
01366 VA_Color = 2,
01367 VA_TexCoord0 = 3,
01368 } EVertexAttribBinding;
01369
01371 typedef enum
01372 {
01373 UT_NONE = 0x0,
01374
01375 UT_FLOAT = GL_FLOAT,
01376 UT_FLOAT_VEC2 = GL_FLOAT_VEC2,
01377 UT_FLOAT_VEC3 = GL_FLOAT_VEC3,
01378 UT_FLOAT_VEC4 = GL_FLOAT_VEC4,
01379 UT_DOUBLE = GL_DOUBLE,
01380 UT_DOUBLE_VEC2 = GL_DOUBLE_VEC2,
01381 UT_DOUBLE_VEC3 = GL_DOUBLE_VEC3,
01382 UT_DOUBLE_VEC4 = GL_DOUBLE_VEC4,
01383 UT_INT = GL_INT,
01384 UT_INT_VEC2 = GL_INT_VEC2,
01385 UT_INT_VEC3 = GL_INT_VEC3,
01386 UT_INT_VEC4 = GL_INT_VEC4,
01387 UT_UNSIGNED_INT = GL_UNSIGNED_INT,
01388 UT_UNSIGNED_INT_VEC2 = GL_UNSIGNED_INT_VEC2,
01389 UT_UNSIGNED_INT_VEC3 = GL_UNSIGNED_INT_VEC3,
01390 UT_UNSIGNED_INT_VEC4 = GL_UNSIGNED_INT_VEC4,
01391 UT_BOOL = GL_BOOL,
01392 UT_BOOL_VEC2 = GL_BOOL_VEC2,
01393 UT_BOOL_VEC3 = GL_BOOL_VEC3,
01394 UT_BOOL_VEC4 = GL_BOOL_VEC4,
01395 UT_FLOAT_MAT2 = GL_FLOAT_MAT2,
01396 UT_FLOAT_MAT3 = GL_FLOAT_MAT3,
01397 UT_FLOAT_MAT4 = GL_FLOAT_MAT4,
01398 UT_FLOAT_MAT2x3 = GL_FLOAT_MAT2x3,
01399 UT_FLOAT_MAT2x4 = GL_FLOAT_MAT2x4,
01400 UT_FLOAT_MAT3x2 = GL_FLOAT_MAT3x2,
01401 UT_FLOAT_MAT3x4 = GL_FLOAT_MAT3x4 ,
01402 UT_FLOAT_MAT4x2 = GL_FLOAT_MAT4x2 ,
01403 UT_FLOAT_MAT4x3 = GL_FLOAT_MAT4x3 ,
01404 UT_DOUBLE_MAT2 = GL_DOUBLE_MAT2 ,
01405 UT_DOUBLE_MAT3 = GL_DOUBLE_MAT3 ,
01406 UT_DOUBLE_MAT4 = GL_DOUBLE_MAT4 ,
01407 UT_DOUBLE_MAT2x3 = GL_DOUBLE_MAT2x3 ,
01408 UT_DOUBLE_MAT2x4 = GL_DOUBLE_MAT2x4 ,
01409 UT_DOUBLE_MAT3x2 = GL_DOUBLE_MAT3x2 ,
01410 UT_DOUBLE_MAT3x4 = GL_DOUBLE_MAT3x4 ,
01411 UT_DOUBLE_MAT4x2 = GL_DOUBLE_MAT4x2 ,
01412 UT_DOUBLE_MAT4x3 = GL_DOUBLE_MAT4x3 ,
01413
01414 UT_SAMPLER_1D = GL_SAMPLER_1D ,
01415 UT_SAMPLER_2D = GL_SAMPLER_2D ,
01416 UT_SAMPLER_3D = GL_SAMPLER_3D ,
01417 UT_SAMPLER_CUBE = GL_SAMPLER_CUBE ,
01418 UT_SAMPLER_1D_SHADOW = GL_SAMPLER_1D_SHADOW ,
01419 UT_SAMPLER_2D_SHADOW = GL_SAMPLER_2D_SHADOW ,
01420 UT_SAMPLER_1D_ARRAY = GL_SAMPLER_1D_ARRAY ,
01421 UT_SAMPLER_2D_ARRAY = GL_SAMPLER_2D_ARRAY ,
01422 UT_SAMPLER_1D_ARRAY_SHADOW = GL_SAMPLER_1D_ARRAY_SHADOW ,
01423 UT_SAMPLER_2D_ARRAY_SHADOW = GL_SAMPLER_2D_ARRAY_SHADOW ,
01424 UT_SAMPLER_2D_MULTISAMPLE = GL_SAMPLER_2D_MULTISAMPLE ,
01425 UT_SAMPLER_2D_MULTISAMPLE_ARRAY = GL_SAMPLER_2D_MULTISAMPLE_ARRAY ,
01426 UT_SAMPLER_CUBE_SHADOW = GL_SAMPLER_CUBE_SHADOW ,
01427 UT_SAMPLER_BUFFER = GL_SAMPLER_BUFFER ,
01428 UT_SAMPLER_2D_RECT = GL_SAMPLER_2D_RECT ,
01429 UT_SAMPLER_2D_RECT_SHADOW = GL_SAMPLER_2D_RECT_SHADOW ,
01430 UT_INT_SAMPLER_1D = GL_INT_SAMPLER_1D ,
01431 UT_INT_SAMPLER_2D = GL_INT_SAMPLER_2D ,
01432 UT_INT_SAMPLER_3D = GL_INT_SAMPLER_3D ,
01433 UT_INT_SAMPLER_CUBE = GL_INT_SAMPLER_CUBE ,
01434 UT_INT_SAMPLER_1D_ARRAY = GL_INT_SAMPLER_1D_ARRAY ,
01435 UT_INT_SAMPLER_2D_ARRAY = GL_INT_SAMPLER_2D_ARRAY ,
01436 UT_INT_SAMPLER_2D_MULTISAMPLE = GL_INT_SAMPLER_2D_MULTISAMPLE ,
01437 UT_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY ,
01438 UT_INT_SAMPLER_BUFFER = GL_INT_SAMPLER_BUFFER ,
01439 UT_INT_SAMPLER_2D_RECT = GL_INT_SAMPLER_2D_RECT ,
01440 UT_UNSIGNED_INT_SAMPLER_1D = GL_UNSIGNED_INT_SAMPLER_1D ,
01441 UT_UNSIGNED_INT_SAMPLER_2D = GL_UNSIGNED_INT_SAMPLER_2D ,
01442 UT_UNSIGNED_INT_SAMPLER_3D = GL_UNSIGNED_INT_SAMPLER_3D ,
01443 UT_UNSIGNED_INT_SAMPLER_CUBE = GL_UNSIGNED_INT_SAMPLER_CUBE ,
01444 UT_UNSIGNED_INT_SAMPLER_1D_ARRAY = GL_UNSIGNED_INT_SAMPLER_1D_ARRAY ,
01445 UT_UNSIGNED_INT_SAMPLER_2D_ARRAY = GL_UNSIGNED_INT_SAMPLER_2D_ARRAY ,
01446 UT_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE = GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE ,
01447 UT_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY ,
01448 UT_UNSIGNED_INT_SAMPLER_BUFFER = GL_UNSIGNED_INT_SAMPLER_BUFFER ,
01449 UT_UNSIGNED_INT_SAMPLER_2D_RECT = GL_UNSIGNED_INT_SAMPLER_2D_RECT ,
01450
01451 UT_UniformTypeCount
01452
01453 } EUniformType;
01454
01456 typedef enum
01457 {
01458 AT_FLOAT = GL_FLOAT,
01459 AT_FLOAT_VEC2 = GL_FLOAT_VEC2,
01460 AT_FLOAT_VEC3 = GL_FLOAT_VEC3,
01461 AT_FLOAT_VEC4 = GL_FLOAT_VEC4,
01462 AT_FLOAT_MAT2 = GL_FLOAT_MAT2,
01463 AT_FLOAT_MAT3 = GL_FLOAT_MAT3,
01464 AT_FLOAT_MAT4 = GL_FLOAT_MAT4,
01465 AT_FLOAT_MAT2x3 = GL_FLOAT_MAT2x3,
01466 AT_FLOAT_MAT2x4 = GL_FLOAT_MAT2x4,
01467 AT_FLOAT_MAT3x2 = GL_FLOAT_MAT3x2,
01468 AT_FLOAT_MAT3x4 = GL_FLOAT_MAT3x4,
01469 AT_FLOAT_MAT4x2 = GL_FLOAT_MAT4x2,
01470 AT_FLOAT_MAT4x3 = GL_FLOAT_MAT4x3,
01471 AT_INT = GL_INT,
01472 AT_INT_VEC2 = GL_INT_VEC2,
01473 AT_INT_VEC3 = GL_INT_VEC3,
01474 AT_INT_VEC4 = GL_INT_VEC4,
01475 AT_UNSIGNED_INT = GL_UNSIGNED_INT,
01476 AT_UNSIGNED_INT_VEC2 = GL_UNSIGNED_INT_VEC2,
01477 AT_UNSIGNED_INT_VEC3 = GL_UNSIGNED_INT_VEC3,
01478 AT_UNSIGNED_INT_VEC4 = GL_UNSIGNED_INT_VEC4,
01479 AT_DOUBLE = GL_DOUBLE,
01480 AT_DOUBLE_VEC2 = GL_DOUBLE_VEC2,
01481 AT_DOUBLE_VEC3 = GL_DOUBLE_VEC3,
01482 AT_DOUBLE_VEC4 = GL_DOUBLE_VEC4,
01483 AT_DOUBLE_MAT2 = GL_DOUBLE_MAT2,
01484 AT_DOUBLE_MAT3 = GL_DOUBLE_MAT3,
01485 AT_DOUBLE_MAT4 = GL_DOUBLE_MAT4,
01486 AT_DOUBLE_MAT2x3 = GL_DOUBLE_MAT2x3,
01487 AT_DOUBLE_MAT2x4 = GL_DOUBLE_MAT2x4,
01488 AT_DOUBLE_MAT3x2 = GL_DOUBLE_MAT3x2,
01489 AT_DOUBLE_MAT3x4 = GL_DOUBLE_MAT3x4,
01490 AT_DOUBLE_MAT4x2 = GL_DOUBLE_MAT4x2,
01491 AT_DOUBLE_MAT4x3 = GL_DOUBLE_MAT4x3,
01492
01493 } EAttributeType;
01494
01495 typedef enum
01496 {
01497 PMT_UserProjection,
01498 PMT_OrthographicProjection,
01499 PMT_PerspectiveProjection,
01500 PMT_PerspectiveProjectionFrustum
01501 } EProjectionMatrixType;
01502
01503 typedef enum
01504 {
01505 BUF_ForceUpdate = 0x1,
01506 BUF_DiscardRamBuffer = 0x2,
01507 } EBufferObjectUpdateFlags;
01508
01509 typedef enum
01510 {
01512 BUM_KeepRamBuffer = 0x0,
01513
01515 BUM_KeepRamBufferAndForceUpdate = BUF_ForceUpdate,
01516
01518 BUM_DiscardRamBuffer = BUF_DiscardRamBuffer,
01519
01521 BUM_DiscardRamBufferAndForceUpdate = BUF_DiscardRamBuffer | BUF_ForceUpdate
01522 } EBufferObjectUpdateMode;
01523
01524 typedef enum
01525 {
01526 SCM_OwnShaders,
01527 SCM_ShareShaders
01528 } EShaderCopyMode;
01529
01530 typedef enum
01531 {
01532 RCS_RenderingStarted,
01533 RCS_RenderingFinished
01534 } EResetContextStates;
01535 }
01536
01537
01538 #endif