Panda3D
|
00001 // Filename: gles2gsg.h 00002 // Created by: pro-rsoft (14Jun09) 00003 // 00004 //////////////////////////////////////////////////////////////////// 00005 // 00006 // PANDA 3D SOFTWARE 00007 // Copyright (c) Carnegie Mellon University. All rights reserved. 00008 // 00009 // All use of this software is subject to the terms of the revised BSD 00010 // license. You should have received a copy of this license along 00011 // with this source code in a file named "LICENSE." 00012 // 00013 //////////////////////////////////////////////////////////////////// 00014 00015 #ifndef GLES2GSG_H 00016 #define GLES2GSG_H 00017 00018 // This header file compiles a GSG for the limited subset of OpenGL 00019 // that is OpenGL ES 2. 00020 00021 #include "pandabase.h" 00022 #include "config_gles2gsg.h" 00023 00024 #define GLP(name) gl##name 00025 #define CLP(name) GLES2##name 00026 #define GLPREFIX_QUOTED "gl" 00027 #define CLASSPREFIX_QUOTED "GLES2" 00028 #define GLSYSTEM_NAME "OpenGL ES 2" 00029 #define CONFIGOBJ config_gles2gsg 00030 #define GLCAT gles2gsg_cat 00031 #define EXPCL_GL EXPCL_PANDAGLES2 00032 #define EXPTP_GL EXPTP_PANDAGLES2 00033 #ifdef OPENGLES_1 00034 #error OPENGLES_1 should not be defined! 00035 #endif 00036 #ifndef OPENGLES 00037 #define OPENGLES 00038 #endif 00039 #ifndef OPENGLES_2 00040 #define OPENGLES_2 00041 #endif 00042 00043 #ifdef IS_OSX 00044 #include <OpenGLES/ES2/gl.h> 00045 #include <OpenGLES/ES2/glext.h> 00046 #else 00047 #include <GLES2/gl2.h> 00048 #include <GLES2/gl2ext.h> 00049 #endif 00050 00051 #include "panda_esgl2ext.h" 00052 00053 // This helps to keep the source clean of hundreds of #ifdefs. 00054 typedef char GLchar; 00055 #define GL_RENDERBUFFER_EXT GL_RENDERBUFFER 00056 #define GL_FRAMEBUFFER_EXT GL_FRAMEBUFFER 00057 #define GL_DRAW_FRAMEBUFFER_EXT GL_FRAMEBUFFER 00058 #define GL_READ_FRAMEBUFFER_EXT GL_FRAMEBUFFER 00059 #define GL_FRAMEBUFFER_COMPLETE_EXT GL_FRAMEBUFFER_COMPLETE 00060 #define GL_FRAMEBUFFER_UNSUPPORTED_EXT GL_FRAMEBUFFER_UNSUPPORTED 00061 #define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT 00062 #define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT 00063 #define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS 00064 #define GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT GL_FRAMEBUFFER_INCOMPLETE_FORMATS 00065 #define GL_DEPTH_ATTACHMENT_EXT GL_DEPTH_ATTACHMENT 00066 #define GL_COLOR_ATTACHMENT0_EXT GL_COLOR_ATTACHMENT0 00067 #define GL_STENCIL_ATTACHMENT_EXT GL_STENCIL_ATTACHMENT 00068 #define GL_DEPTH_COMPONENT24 GL_DEPTH_COMPONENT24_OES 00069 #define GL_DEPTH_COMPONENT32 GL_DEPTH_COMPONENT32_OES 00070 #define GL_TEXTURE_3D GL_TEXTURE_3D_OES 00071 #define GL_MAX_3D_TEXTURE_SIZE GL_MAX_3D_TEXTURE_SIZE_OES 00072 #define GL_SAMPLER_3D GL_SAMPLER_3D_OES 00073 00074 #undef SUPPORT_IMMEDIATE_MODE 00075 #define APIENTRY 00076 #define APIENTRYP * 00077 00078 #include "glstuff_src.h" 00079 00080 #endif // GLES2GSG_H