21 #include "pandabase.h"
22 #include "config_gles2gsg.h"
24 #define GLP(name) gl##name
26 #ifndef STDFLOAT_DOUBLE
27 #define GLPf(name) gl ## name ## f
28 #define GLPfv(name) gl ## name ## fv
29 #else // STDFLOAT_DOUBLE
30 #define GLPf(name) gl ## name ## d
31 #define GLPfv(name) gl ## name ## dv
32 #endif // STDFLOAT_DOUBLE
34 #define CLP(name) GLES2##name
35 #define GLPREFIX_QUOTED "gl"
36 #define CLASSPREFIX_QUOTED "GLES2"
37 #define GLSYSTEM_NAME "OpenGL ES 2"
38 #define CONFIGOBJ config_gles2gsg
39 #define GLCAT gles2gsg_cat
40 #define EXPCL_GL EXPCL_PANDAGLES2
41 #define EXPTP_GL EXPTP_PANDAGLES2
43 #error OPENGLES_1 should not be defined!
53 #include <OpenGLES/ES2/gl.h>
56 #include <GLES2/gl2.h>
60 #include "panda_esgl2ext.h"
64 #define GL_RENDERBUFFER_EXT GL_RENDERBUFFER
65 #define GL_RENDERBUFFER_RED_SIZE_EXT GL_RENDERBUFFER_RED_SIZE
66 #define GL_RENDERBUFFER_GREEN_SIZE_EXT GL_RENDERBUFFER_GREEN_SIZE
67 #define GL_RENDERBUFFER_BLUE_SIZE_EXT GL_RENDERBUFFER_BLUE_SIZE
68 #define GL_RENDERBUFFER_ALPHA_SIZE_EXT GL_RENDERBUFFER_ALPHA_SIZE
69 #define GL_RENDERBUFFER_DEPTH_SIZE_EXT GL_RENDERBUFFER_DEPTH_SIZE
70 #define GL_RENDERBUFFER_STENCIL_SIZE_EXT GL_RENDERBUFFER_STENCIL_SIZE
71 #define GL_FRAMEBUFFER_EXT GL_FRAMEBUFFER
72 #define GL_DRAW_FRAMEBUFFER_EXT GL_FRAMEBUFFER
73 #define GL_READ_FRAMEBUFFER_EXT GL_FRAMEBUFFER
74 #define GL_FRAMEBUFFER_COMPLETE_EXT GL_FRAMEBUFFER_COMPLETE
75 #define GL_FRAMEBUFFER_UNSUPPORTED_EXT GL_FRAMEBUFFER_UNSUPPORTED
76 #define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT
77 #define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT
78 #define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS
79 #define GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT GL_FRAMEBUFFER_INCOMPLETE_FORMATS
80 #define GL_DEPTH_ATTACHMENT_EXT GL_DEPTH_ATTACHMENT
81 #define GL_COLOR_ATTACHMENT0_EXT GL_COLOR_ATTACHMENT0
82 #define GL_STENCIL_ATTACHMENT_EXT GL_STENCIL_ATTACHMENT
83 #define GL_DEPTH_STENCIL GL_DEPTH_STENCIL_OES
84 #define GL_DEPTH_STENCIL_EXT GL_DEPTH_STENCIL_OES
85 #define GL_UNSIGNED_INT_24_8_EXT GL_UNSIGNED_INT_24_8_OES
86 #define GL_DEPTH24_STENCIL8_EXT GL_DEPTH24_STENCIL8_OES
87 #define GL_DEPTH_COMPONENT24 GL_DEPTH_COMPONENT24_OES
88 #define GL_DEPTH_COMPONENT32 GL_DEPTH_COMPONENT32_OES
89 #define GL_TEXTURE_3D GL_TEXTURE_3D_OES
90 #define GL_MAX_3D_TEXTURE_SIZE GL_MAX_3D_TEXTURE_SIZE_OES
91 #define GL_SAMPLER_3D GL_SAMPLER_3D_OES
92 #define GL_BGRA GL_BGRA_EXT
93 #define GL_RED GL_RED_EXT
94 #define GL_RG GL_RG_EXT
95 #define GL_R16F GL_R16F_EXT
96 #define GL_RG16F GL_RG16F_EXT
97 #define GL_RGB16F GL_RGB16F_EXT
98 #define GL_RGBA16F GL_RGBA16F_EXT
99 #define GL_RGB16F GL_RGB16F_EXT
100 #define GL_RGBA16F GL_RGBA16F_EXT
101 #define GL_RGB32F GL_RGB32F_EXT
102 #define GL_RGBA32F GL_RGBA32F_EXT
103 #define GL_SRGB GL_SRGB_EXT
104 #define GL_SRGB_ALPHA GL_SRGB_ALPHA_EXT
105 #define GL_SRGB8_ALPHA8 GL_SRGB8_ALPHA8_EXT
106 #define GL_RGBA8 GL_RGBA8_OES
107 #define GL_R8 GL_R8_EXT
108 #define GL_RG8 GL_RG8_EXT
109 #define GL_ALPHA8 GL_ALPHA8_OES
110 #define GL_LUMINANCE8 GL_LUMINANCE8_OES
111 #define GL_LUMINANCE8_ALPHA8 GL_LUMINANCE8_ALPHA8_EXT
112 #define GL_DEPTH24_STENCIL8 GL_DEPTH24_STENCIL8_EXT
113 #define GL_R32F GL_R32F_EXT
114 #define GL_RG32F GL_RG32F_EXT
115 #define GL_RGB8 GL_RGB8_OES
116 #define GL_TEXTURE_COMPARE_FUNC_ARB GL_TEXTURE_COMPARE_FUNC_EXT
117 #define GL_TEXTURE_COMPARE_MODE_ARB GL_TEXTURE_COMPARE_MODE_EXT
118 #define GL_COMPARE_R_TO_TEXTURE_ARB GL_COMPARE_REF_TO_TEXTURE_EXT
119 #define GL_SAMPLER_2D_SHADOW GL_SAMPLER_2D_SHADOW_EXT
120 #define GL_MAX_DRAW_BUFFERS GL_MAX_DRAW_BUFFERS_NV
121 #define GL_COMPRESSED_RGBA_S3TC_DXT3_EXT GL_COMPRESSED_RGBA_S3TC_DXT3_ANGLE
122 #define GL_COMPRESSED_RGBA_S3TC_DXT5_EXT GL_COMPRESSED_RGBA_S3TC_DXT5_ANGLE
124 #undef SUPPORT_IMMEDIATE_MODE
128 #include "glstuff_src.h"