This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU General Public License for more details.
extern qboolean isG200;
extern qboolean isRagePro;
-extern qboolean gl_mtexable;
-extern qboolean gl_supportslockarrays;
-extern void GL_BeginRendering (int *x, int *y, int *width, int *height);
-extern void GL_EndRendering (void);
-
-extern float gldepthmin, gldepthmax;
-
-typedef struct
-{
- float x, y, z;
- float s, t;
- float r, g, b;
-} glvert_t;
-
-extern glvert_t glv;
-
-extern int glx, gly, glwidth, glheight;
-
-// r_local.h -- private refresh defs
-
-#define ALIAS_BASE_SIZE_RATIO (1.0 / 11.0)
- // normalizing factor so player model works out to about
- // 1 pixel per triangle
-#define MAX_LBM_HEIGHT 480
-
-#define BACKFACE_EPSILON 0.01
-
-
-extern void R_TimeRefresh_f (void);
+extern float gldepthmin, gldepthmax;
//====================================================
-
-extern qboolean r_cache_thrash; // compatability
-extern vec3_t modelorg, r_entorigin;
-extern entity_t *currententity;
-extern int r_framecount;
-extern mplane_t frustum[4];
-extern int c_brush_polys, c_alias_polys, c_light_polys, c_faces, c_nodes, c_leafs, c_models, c_bmodels, c_sprites, c_particles, c_dlights;
-
-
-//
-// view origin
-//
-extern vec3_t vup;
-extern vec3_t vpn;
-extern vec3_t vright;
-extern vec3_t r_origin;
-
-//
-// screen size info
-//
-extern refdef_t r_refdef;
-extern mleaf_t *r_viewleaf, *r_oldviewleaf;
-extern unsigned short d_lightstylevalue[256]; // 8.8 fraction of base light value
-
-extern qboolean envmap;
-
-extern cvar_t r_drawentities;
-extern cvar_t r_drawviewmodel;
-extern cvar_t r_speeds;
-extern cvar_t r_fullbright;
-extern cvar_t r_wateralpha;
-extern cvar_t r_dynamic;
-extern cvar_t r_waterripple;
-
-extern float r_world_matrix[16];
-
-extern const char *gl_vendor;
-extern const char *gl_renderer;
-extern const char *gl_version;
-extern const char *gl_extensions;
-
-// Multitexture
-#define TEXTURE0_SGIS 0x835E
-#define TEXTURE1_SGIS 0x835F
+extern const char *gl_vendor;
+extern const char *gl_renderer;
+extern const char *gl_version;
+extern const char *gl_extensions;
#ifndef _WIN32
#define APIENTRY /* */
#endif
-// LordHavoc: ARB multitexure support
-extern int gl_mtex_enum;
-
// for platforms (wgl) that do not use GLAPIENTRY
#ifndef GLAPIENTRY
#define GLAPIENTRY APIENTRY
#endif
-// multitexture
-extern void (GLAPIENTRY *qglMTexCoord2f) (GLenum, GLfloat, GLfloat);
-extern void (GLAPIENTRY *qglSelectTexture) (GLenum);
-extern void (GLAPIENTRY *qglLockArraysEXT) (GLint first, GLint count);
-extern void (GLAPIENTRY *qglUnlockArraysEXT) (void);
-
-
-#ifndef GL_ACTIVE_TEXTURE_ARB
// GL_ARB_multitexture
+extern int gl_textureunits;
+extern void (GLAPIENTRY *qglMultiTexCoord2f) (GLenum, GLfloat, GLfloat);
+extern void (GLAPIENTRY *qglActiveTexture) (GLenum);
+extern void (GLAPIENTRY *qglClientActiveTexture) (GLenum);
+#ifndef GL_ACTIVE_TEXTURE_ARB
#define GL_ACTIVE_TEXTURE_ARB 0x84E0
#define GL_CLIENT_ACTIVE_TEXTURE_ARB 0x84E1
-#define GL_MAX_TEXTURES_UNITS_ARB 0x84E2
+#define GL_MAX_TEXTURE_UNITS_ARB 0x84E2
#define GL_TEXTURE0_ARB 0x84C0
#define GL_TEXTURE1_ARB 0x84C1
#define GL_TEXTURE2_ARB 0x84C2
#define GL_TEXTURE31_ARB 0x84DF
#endif
-#ifndef GL_COMBINE_ARB
+// GL_EXT_compiled_vertex_array
+extern int gl_supportslockarrays;
+extern void (GLAPIENTRY *qglLockArraysEXT) (GLint first, GLint count);
+extern void (GLAPIENTRY *qglUnlockArraysEXT) (void);
+
// GL_ARB_texture_env_combine
+extern int gl_combine_extension;
+#ifndef GL_COMBINE_ARB
#define GL_COMBINE_ARB 0x8570
#define GL_COMBINE_RGB_ARB 0x8571
#define GL_COMBINE_ALPHA_ARB 0x8572
#define GL_PREVIOUS_ARB 0x8578
#endif
-extern qboolean gl_combine_extension;
extern cvar_t gl_combine;
#ifdef WIN32
//#endif
#endif
+
+#define DEBUGGL
+
+#ifdef DEBUGGL
+#define CHECKGLERROR if ((errornumber = glGetError())) GL_PrintError(errornumber, __FILE__, __LINE__);
+extern int errornumber;
+void GL_PrintError(int errornumber, char *filename, int linenumber);
+#else
+#define CHECKGLERROR
+#endif