mirror of
https://github.com/yquake2/yquake2remaster.git
synced 2025-02-16 17:11:03 +00:00
Remove support for old SGI Opengl extensions
Those extensions have become part of ARB about 15 years ago and most if not all video cards still in use should support the ARB versions. I believe that at least parts of this code were disfunctional.
This commit is contained in:
parent
ad52c5c888
commit
88bd357231
6 changed files with 39 additions and 80 deletions
|
@ -122,11 +122,8 @@ extern void ( APIENTRY *qglColorTableEXT ) ( GLenum, GLenum, GLsizei, GLenum,
|
|||
GLenum, const GLvoid * );
|
||||
extern void ( APIENTRY *qglLockArraysEXT ) ( int, int );
|
||||
extern void ( APIENTRY *qglUnlockArraysEXT ) ( void );
|
||||
extern void ( APIENTRY *qglMTexCoord2fSGIS ) ( GLenum, GLfloat, GLfloat );
|
||||
extern void ( APIENTRY *qglSelectTextureSGIS ) ( GLenum );
|
||||
extern void ( APIENTRY *qglMultiTexCoord2fARB) ( GLenum, GLfloat, GLfloat );
|
||||
extern void ( APIENTRY *qglActiveTextureARB ) ( GLenum );
|
||||
extern void ( APIENTRY *qglClientActiveTextureARB ) ( GLenum );
|
||||
|
||||
extern int QGL_TEXTURE0, QGL_TEXTURE1;
|
||||
|
||||
#endif
|
||||
|
|
|
@ -46,8 +46,7 @@ void (APIENTRY *qglColorTableEXT)(GLenum, GLenum, GLsizei, GLenum, GLenum,
|
|||
const GLvoid *);
|
||||
|
||||
void ( APIENTRY *qgl3DfxSetPaletteEXT ) ( GLuint * );
|
||||
void ( APIENTRY *qglSelectTextureSGIS ) ( GLenum );
|
||||
void ( APIENTRY *qglMTexCoord2fSGIS ) ( GLenum, GLfloat, GLfloat );
|
||||
void ( APIENTRY *qglMultiTexCoord2fARB ) ( GLenum, GLfloat, GLfloat );
|
||||
void ( APIENTRY *qglActiveTextureARB ) ( GLenum );
|
||||
void ( APIENTRY *qglClientActiveTextureARB ) ( GLenum );
|
||||
|
||||
|
@ -62,8 +61,7 @@ QGL_Shutdown ( void )
|
|||
qglPointParameterfvEXT = NULL;
|
||||
qglColorTableEXT = NULL;
|
||||
qgl3DfxSetPaletteEXT = NULL;
|
||||
qglSelectTextureSGIS = NULL;
|
||||
qglMTexCoord2fSGIS = NULL;
|
||||
qglMultiTexCoord2fARB = NULL;
|
||||
qglActiveTextureARB = NULL;
|
||||
qglClientActiveTextureARB = NULL;
|
||||
}
|
||||
|
@ -87,8 +85,7 @@ QGL_Init (void)
|
|||
qglPointParameterfvEXT = NULL;
|
||||
qglColorTableEXT = NULL;
|
||||
qgl3DfxSetPaletteEXT = NULL;
|
||||
qglSelectTextureSGIS = NULL;
|
||||
qglMTexCoord2fSGIS = NULL;
|
||||
qglMultiTexCoord2fARB = NULL;
|
||||
qglActiveTextureARB = NULL;
|
||||
qglClientActiveTextureARB = NULL;
|
||||
return true;
|
||||
|
|
|
@ -151,25 +151,25 @@ R_SetTexturePalette(unsigned palette[256])
|
|||
void
|
||||
R_EnableMultitexture(qboolean enable)
|
||||
{
|
||||
if (!qglSelectTextureSGIS && !qglActiveTextureARB)
|
||||
if (!qglActiveTextureARB)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (enable)
|
||||
{
|
||||
R_SelectTexture(QGL_TEXTURE1);
|
||||
R_SelectTexture(GL_TEXTURE1_ARB);
|
||||
glEnable(GL_TEXTURE_2D);
|
||||
R_TexEnv(GL_REPLACE);
|
||||
}
|
||||
else
|
||||
{
|
||||
R_SelectTexture(QGL_TEXTURE1);
|
||||
R_SelectTexture(GL_TEXTURE1_ARB);
|
||||
glDisable(GL_TEXTURE_2D);
|
||||
R_TexEnv(GL_REPLACE);
|
||||
}
|
||||
|
||||
R_SelectTexture(QGL_TEXTURE0);
|
||||
R_SelectTexture(GL_TEXTURE0_ARB);
|
||||
R_TexEnv(GL_REPLACE);
|
||||
}
|
||||
|
||||
|
@ -178,12 +178,12 @@ R_SelectTexture(GLenum texture)
|
|||
{
|
||||
int tmu;
|
||||
|
||||
if (!qglSelectTextureSGIS && !qglActiveTextureARB)
|
||||
if (!qglActiveTextureARB)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (texture == QGL_TEXTURE0)
|
||||
if (texture == GL_TEXTURE0_ARB)
|
||||
{
|
||||
tmu = 0;
|
||||
}
|
||||
|
@ -199,11 +199,7 @@ R_SelectTexture(GLenum texture)
|
|||
|
||||
gl_state.currenttmu = tmu;
|
||||
|
||||
if (qglSelectTextureSGIS)
|
||||
{
|
||||
qglSelectTextureSGIS(texture);
|
||||
}
|
||||
else if (qglActiveTextureARB)
|
||||
if (qglActiveTextureARB)
|
||||
{
|
||||
qglActiveTextureARB(texture);
|
||||
qglClientActiveTextureARB(texture);
|
||||
|
@ -246,7 +242,7 @@ R_MBind(GLenum target, int texnum)
|
|||
{
|
||||
R_SelectTexture(target);
|
||||
|
||||
if (target == QGL_TEXTURE0)
|
||||
if (target == GL_TEXTURE0_ARB)
|
||||
{
|
||||
if (gl_state.currenttextures[0] == texnum)
|
||||
{
|
||||
|
|
|
@ -252,7 +252,7 @@ LM_BeginBuildingLightmaps(model_t *m)
|
|||
r_framecount = 1; /* no dlightcache */
|
||||
|
||||
R_EnableMultitexture(true);
|
||||
R_SelectTexture(QGL_TEXTURE1);
|
||||
R_SelectTexture(GL_TEXTURE1_ARB);
|
||||
|
||||
/* setup the base lightstyles so the lightmaps
|
||||
won't have to be regenerated the first time
|
||||
|
|
|
@ -29,9 +29,6 @@
|
|||
#define NUM_BEAM_SEGS 6
|
||||
|
||||
viddef_t vid;
|
||||
|
||||
int QGL_TEXTURE0, QGL_TEXTURE1;
|
||||
|
||||
model_t *r_worldmodel;
|
||||
|
||||
float gldepthmin, gldepthmax;
|
||||
|
@ -1169,8 +1166,7 @@ R_Init(void *hinstance, void *hWnd)
|
|||
VID_Printf(PRINT_ALL, "\n\nProbing for OpenGL extensions:\n");
|
||||
|
||||
/* grab extensions */
|
||||
if (strstr(gl_config.extensions_string, "GL_EXT_compiled_vertex_array") ||
|
||||
strstr(gl_config.extensions_string, "GL_SGI_compiled_vertex_array"))
|
||||
if (strstr(gl_config.extensions_string, "GL_EXT_compiled_vertex_array"))
|
||||
{
|
||||
VID_Printf(PRINT_ALL, "...using GL_EXT_compiled_vertex_array\n");
|
||||
qglLockArraysEXT = ( void * ) QGL_GetProcAddress ( "glLockArraysEXT" );
|
||||
|
@ -1210,8 +1206,7 @@ R_Init(void *hinstance, void *hWnd)
|
|||
VID_Printf(PRINT_ALL, "...using GL_EXT_shared_texture_palette\n");
|
||||
qglColorTableEXT =
|
||||
(void (APIENTRY *)(GLenum, GLenum, GLsizei, GLenum, GLenum,
|
||||
const GLvoid * ) ) QGL_GetProcAddress (
|
||||
"glColorTableEXT");
|
||||
const GLvoid * ) ) QGL_GetProcAddress ("glColorTableEXT");
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -1228,11 +1223,9 @@ R_Init(void *hinstance, void *hWnd)
|
|||
if (gl_ext_multitexture->value)
|
||||
{
|
||||
VID_Printf(PRINT_ALL, "...using GL_ARB_multitexture\n");
|
||||
qglMTexCoord2fSGIS = ( void * ) QGL_GetProcAddress ( "glMultiTexCoord2fARB" );
|
||||
qglMultiTexCoord2fARB = ( void * ) QGL_GetProcAddress ( "glMultiTexCoord2fARB" );
|
||||
qglActiveTextureARB = ( void * ) QGL_GetProcAddress ( "glActiveTextureARB" );
|
||||
qglClientActiveTextureARB = ( void * ) QGL_GetProcAddress ( "glClientActiveTextureARB" );
|
||||
QGL_TEXTURE0 = GL_TEXTURE0_ARB;
|
||||
QGL_TEXTURE1 = GL_TEXTURE1_ARB;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -1244,30 +1237,6 @@ R_Init(void *hinstance, void *hWnd)
|
|||
VID_Printf(PRINT_ALL, "...GL_ARB_multitexture not found\n");
|
||||
}
|
||||
|
||||
if (strstr(gl_config.extensions_string, "GL_SGIS_multitexture"))
|
||||
{
|
||||
if (qglActiveTextureARB)
|
||||
{
|
||||
VID_Printf(PRINT_ALL, "...GL_SGIS_multitexture deprecated in favor of ARB_multitexture\n");
|
||||
}
|
||||
else if (gl_ext_multitexture->value)
|
||||
{
|
||||
VID_Printf(PRINT_ALL, "...using GL_SGIS_multitexture\n");
|
||||
qglMTexCoord2fSGIS = ( void * ) QGL_GetProcAddress ( "glMTexCoord2fSGIS" );
|
||||
qglSelectTextureSGIS = ( void * ) QGL_GetProcAddress ( "glSelectTextureSGIS" );
|
||||
QGL_TEXTURE0 = GL_TEXTURE0_SGIS;
|
||||
QGL_TEXTURE1 = GL_TEXTURE1_SGIS;
|
||||
}
|
||||
else
|
||||
{
|
||||
VID_Printf(PRINT_ALL, "...ignoring GL_SGIS_multitexture\n");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
VID_Printf(PRINT_ALL, "...GL_SGIS_multitexture not found\n");
|
||||
}
|
||||
|
||||
gl_config.anisotropic = false;
|
||||
|
||||
if (strstr(gl_config.extensions_string, "GL_EXT_texture_filter_anisotropic"))
|
||||
|
|
|
@ -542,7 +542,7 @@ R_DrawTextureChains(void)
|
|||
|
||||
c_visible_textures = 0;
|
||||
|
||||
if (!qglSelectTextureSGIS && !qglActiveTextureARB)
|
||||
if (!qglActiveTextureARB)
|
||||
{
|
||||
for (i = 0, image = gltextures; i < numgltextures; i++, image++)
|
||||
{
|
||||
|
@ -673,7 +673,7 @@ R_RenderLightmappedPoly(msurface_t *surf)
|
|||
R_BuildLightMap(surf, (void *)temp, smax * 4);
|
||||
R_SetCacheState(surf);
|
||||
|
||||
R_MBind(QGL_TEXTURE1, gl_state.lightmap_textures + surf->lightmaptexturenum);
|
||||
R_MBind(GL_TEXTURE1_ARB, gl_state.lightmap_textures + surf->lightmaptexturenum);
|
||||
|
||||
lmtex = surf->lightmaptexturenum;
|
||||
|
||||
|
@ -687,7 +687,7 @@ R_RenderLightmappedPoly(msurface_t *surf)
|
|||
|
||||
R_BuildLightMap(surf, (void *)temp, smax * 4);
|
||||
|
||||
R_MBind(QGL_TEXTURE1, gl_state.lightmap_textures + 0);
|
||||
R_MBind(GL_TEXTURE1_ARB, gl_state.lightmap_textures + 0);
|
||||
|
||||
lmtex = 0;
|
||||
|
||||
|
@ -697,8 +697,8 @@ R_RenderLightmappedPoly(msurface_t *surf)
|
|||
|
||||
c_brush_polys++;
|
||||
|
||||
R_MBind(QGL_TEXTURE0, image->texnum);
|
||||
R_MBind(QGL_TEXTURE1, gl_state.lightmap_textures + lmtex);
|
||||
R_MBind(GL_TEXTURE0_ARB, image->texnum);
|
||||
R_MBind(GL_TEXTURE1_ARB, gl_state.lightmap_textures + lmtex);
|
||||
|
||||
if (surf->texinfo->flags & SURF_FLOWING)
|
||||
{
|
||||
|
@ -719,8 +719,8 @@ R_RenderLightmappedPoly(msurface_t *surf)
|
|||
|
||||
for (i = 0; i < nv; i++, v += VERTEXSIZE)
|
||||
{
|
||||
qglMTexCoord2fSGIS(QGL_TEXTURE0, (v[3] + scroll), v[4]);
|
||||
qglMTexCoord2fSGIS(QGL_TEXTURE1, v[5], v[6]);
|
||||
qglMultiTexCoord2fARB(GL_TEXTURE0_ARB, (v[3] + scroll), v[4]);
|
||||
qglMultiTexCoord2fARB(GL_TEXTURE1_ARB, v[5], v[6]);
|
||||
glVertex3fv(v);
|
||||
}
|
||||
|
||||
|
@ -736,8 +736,8 @@ R_RenderLightmappedPoly(msurface_t *surf)
|
|||
|
||||
for (i = 0; i < nv; i++, v += VERTEXSIZE)
|
||||
{
|
||||
qglMTexCoord2fSGIS(QGL_TEXTURE0, v[3], v[4]);
|
||||
qglMTexCoord2fSGIS(QGL_TEXTURE1, v[5], v[6]);
|
||||
qglMultiTexCoord2fARB(GL_TEXTURE0_ARB, v[3], v[4]);
|
||||
qglMultiTexCoord2fARB(GL_TEXTURE1_ARB, v[5], v[6]);
|
||||
glVertex3fv(v);
|
||||
}
|
||||
|
||||
|
@ -749,8 +749,8 @@ R_RenderLightmappedPoly(msurface_t *surf)
|
|||
{
|
||||
c_brush_polys++;
|
||||
|
||||
R_MBind(QGL_TEXTURE0, image->texnum);
|
||||
R_MBind(QGL_TEXTURE1, gl_state.lightmap_textures + lmtex);
|
||||
R_MBind(GL_TEXTURE0_ARB, image->texnum);
|
||||
R_MBind(GL_TEXTURE1_ARB, gl_state.lightmap_textures + lmtex);
|
||||
|
||||
if (surf->texinfo->flags & SURF_FLOWING)
|
||||
{
|
||||
|
@ -770,8 +770,8 @@ R_RenderLightmappedPoly(msurface_t *surf)
|
|||
|
||||
for (i = 0; i < nv; i++, v += VERTEXSIZE)
|
||||
{
|
||||
qglMTexCoord2fSGIS(QGL_TEXTURE0, (v[3] + scroll), v[4]);
|
||||
qglMTexCoord2fSGIS(QGL_TEXTURE1, v[5], v[6]);
|
||||
qglMultiTexCoord2fARB(GL_TEXTURE0_ARB, (v[3] + scroll), v[4]);
|
||||
qglMultiTexCoord2fARB(GL_TEXTURE1_ARB, v[5], v[6]);
|
||||
glVertex3fv(v);
|
||||
}
|
||||
|
||||
|
@ -787,8 +787,8 @@ R_RenderLightmappedPoly(msurface_t *surf)
|
|||
|
||||
for (i = 0; i < nv; i++, v += VERTEXSIZE)
|
||||
{
|
||||
qglMTexCoord2fSGIS(QGL_TEXTURE0, v[3], v[4]);
|
||||
qglMTexCoord2fSGIS(QGL_TEXTURE1, v[5], v[6]);
|
||||
qglMultiTexCoord2fARB(GL_TEXTURE0_ARB, v[3], v[4]);
|
||||
qglMultiTexCoord2fARB(GL_TEXTURE1_ARB, v[5], v[6]);
|
||||
glVertex3fv(v);
|
||||
}
|
||||
|
||||
|
@ -846,7 +846,7 @@ R_DrawInlineBModel(void)
|
|||
psurf->texturechain = r_alpha_surfaces;
|
||||
r_alpha_surfaces = psurf;
|
||||
}
|
||||
else if (qglMTexCoord2fSGIS && !(psurf->flags & SURF_DRAWTURB))
|
||||
else if (qglMultiTexCoord2fARB && !(psurf->flags & SURF_DRAWTURB))
|
||||
{
|
||||
R_RenderLightmappedPoly(psurf);
|
||||
}
|
||||
|
@ -861,7 +861,7 @@ R_DrawInlineBModel(void)
|
|||
|
||||
if (!(currententity->flags & RF_TRANSLUCENT))
|
||||
{
|
||||
if (!qglMTexCoord2fSGIS)
|
||||
if (!qglMultiTexCoord2fARB)
|
||||
{
|
||||
R_BlendLightmaps();
|
||||
}
|
||||
|
@ -941,9 +941,9 @@ R_DrawBrushModel(entity_t *e)
|
|||
e->angles[2] = -e->angles[2];
|
||||
|
||||
R_EnableMultitexture(true);
|
||||
R_SelectTexture(QGL_TEXTURE0);
|
||||
R_SelectTexture(GL_TEXTURE0_ARB);
|
||||
R_TexEnv(GL_REPLACE);
|
||||
R_SelectTexture(QGL_TEXTURE1);
|
||||
R_SelectTexture(GL_TEXTURE1_ARB);
|
||||
|
||||
if (!gl_config.mtexcombine)
|
||||
{
|
||||
|
@ -1121,7 +1121,7 @@ R_RecursiveWorldNode(mnode_t *node)
|
|||
}
|
||||
else
|
||||
{
|
||||
if (qglMTexCoord2fSGIS && !(surf->flags & SURF_DRAWTURB))
|
||||
if (qglMultiTexCoord2fARB && !(surf->flags & SURF_DRAWTURB))
|
||||
{
|
||||
R_RenderLightmappedPoly(surf);
|
||||
}
|
||||
|
@ -1169,13 +1169,13 @@ R_DrawWorld(void)
|
|||
memset(gl_lms.lightmap_surfaces, 0, sizeof(gl_lms.lightmap_surfaces));
|
||||
R_ClearSkyBox();
|
||||
|
||||
if (qglMTexCoord2fSGIS)
|
||||
if (qglMultiTexCoord2fARB)
|
||||
{
|
||||
R_EnableMultitexture(true);
|
||||
|
||||
R_SelectTexture(QGL_TEXTURE0);
|
||||
R_SelectTexture(GL_TEXTURE0_ARB);
|
||||
R_TexEnv(GL_REPLACE);
|
||||
R_SelectTexture(QGL_TEXTURE1);
|
||||
R_SelectTexture(GL_TEXTURE1_ARB);
|
||||
|
||||
if (!gl_config.mtexcombine)
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue