version 1.31 | | version 1.32 |
---|
| | |
| | |
const char *gl_vendor,*gl_renderer,*gl_version,*gl_extensions; | | const char *gl_vendor,*gl_renderer,*gl_version,*gl_extensions; |
void ogl_get_verinfo(void){ | | void ogl_get_verinfo(void){ |
int t; | | int t, arb_max_textures=-1, sgi_max_textures=-1; |
gl_vendor=glGetString(GL_VENDOR); | | gl_vendor=glGetString(GL_VENDOR); |
gl_renderer=glGetString(GL_RENDERER); | | gl_renderer=glGetString(GL_RENDERER); |
gl_version=glGetString(GL_VERSION); | | gl_version=glGetString(GL_VERSION); |
| | |
dglSelectTextureSGIS = (glSelectTextureSGIS_fp)wglGetProcAddress("glSelectTextureSGIS"); | | dglSelectTextureSGIS = (glSelectTextureSGIS_fp)wglGetProcAddress("glSelectTextureSGIS"); |
#endif | | #endif |
| | |
//multitexturing doesn't work yet. | | |
#ifdef GL_ARB_multitexture | | #ifdef GL_ARB_multitexture |
ogl_arb_multitexture_ok=0;//(strstr(gl_extensions,"GL_ARB_multitexture")!=0 && glActiveTextureARB!=0 && 0); | | ogl_arb_multitexture_ok=(strstr(gl_extensions,"GL_ARB_multitexture")!=0 && glActiveTextureARB!=0); |
mprintf((0,"c:%p d:%p e:%p\n",strstr(gl_extensions,"GL_ARB_multitexture"),glActiveTextureARB,glBegin)); | | mprintf((0,"c:%p d:%p e:%p\n",strstr(gl_extensions,"GL_ARB_multitexture"),glActiveTextureARB,glBegin)); |
#endif | | #endif |
#ifdef GL_SGIS_multitexture | | #ifdef GL_SGIS_multitexture |
ogl_sgis_multitexture_ok=0;//(strstr(gl_extensions,"GL_SGIS_multitexture")!=0 && glSelectTextureSGIS!=0 && 0); | | ogl_sgis_multitexture_ok=(strstr(gl_extensions,"GL_SGIS_multitexture")!=0 && glSelectTextureSGIS!=0); |
mprintf((0,"a:%p b:%p\n",strstr(gl_extensions,"GL_SGIS_multitexture"),glSelectTextureSGIS)); | | mprintf((0,"a:%p b:%p\n",strstr(gl_extensions,"GL_SGIS_multitexture"),glSelectTextureSGIS)); |
#endif | | #endif |
| | ogl_nv_texture_env_combine4_ok=(strstr(gl_extensions,"GL_NV_texture_env_combine4")!=0); |
| | |
//add driver specific hacks here. whee. | | //add driver specific hacks here. whee. |
if ((stricmp(gl_renderer,"Mesa NVIDIA RIVA 1.0\n")==0 || stricmp(gl_renderer,"Mesa NVIDIA RIVA 1.2\n")==0) && stricmp(gl_version,"1.2 Mesa 3.0")==0){ | | if ((stricmp(gl_renderer,"Mesa NVIDIA RIVA 1.0\n")==0 || stricmp(gl_renderer,"Mesa NVIDIA RIVA 1.2\n")==0) && stricmp(gl_version,"1.2 Mesa 3.0")==0){ |
| | |
if ((t=FindArg("-gl_arb_multitexture_ok"))){ | | if ((t=FindArg("-gl_arb_multitexture_ok"))){ |
ogl_arb_multitexture_ok=atoi(Args[t+1]); | | ogl_arb_multitexture_ok=atoi(Args[t+1]); |
} | | } |
| | if (ogl_arb_multitexture_ok) |
| | glGetIntegerv(GL_MAX_TEXTURE_UNITS_ARB, &arb_max_textures); |
#endif | | #endif |
#ifdef GL_SGIS_multitexture | | #ifdef GL_SGIS_multitexture |
if ((t=FindArg("-gl_sgis_multitexture_ok"))){ | | if ((t=FindArg("-gl_sgis_multitexture_ok"))){ |
ogl_sgis_multitexture_ok=atoi(Args[t+1]); | | ogl_sgis_multitexture_ok=atoi(Args[t+1]); |
} | | } |
| | if (ogl_sgis_multitexture_ok) |
| | glGetIntegerv(GL_MAX_TEXTURES_SGIS, &sgi_max_textures); |
#endif | | #endif |
if ((t=FindArg("-gl_intensity4_ok"))){ | | if ((t=FindArg("-gl_intensity4_ok"))){ |
ogl_intensity4_ok=atoi(Args[t+1]); | | ogl_intensity4_ok=atoi(Args[t+1]); |
| | |
ogl_setgammaramp_ok=atoi(Args[t+1]); | | ogl_setgammaramp_ok=atoi(Args[t+1]); |
} | | } |
| | |
printf("gl_arb_multitexture:%i gl_sgis_multitexture:%i\n",ogl_arb_multitexture_ok,ogl_sgis_multitexture_ok); | | printf("gl_arb_multitexture:%i(%i units) gl_sgis_multitexture:%i(%i units) gl_nv_texture_env_combine4:%i\n",ogl_arb_multitexture_ok,arb_max_textures,ogl_sgis_multitexture_ok,sgi_max_textures,ogl_nv_texture_env_combine4_ok); |
printf("gl_intensity4:%i gl_luminance4_alpha4:%i gl_rgba2:%i gl_readpixels:%i gl_gettexlevelparam:%i gl_setgammaramp_ok:%i\n",ogl_intensity4_ok,ogl_luminance4_alpha4_ok,ogl_rgba2_ok,ogl_readpixels_ok,ogl_gettexlevelparam_ok,ogl_setgammaramp_ok); | | printf("gl_intensity4:%i gl_luminance4_alpha4:%i gl_rgba2:%i gl_readpixels:%i gl_gettexlevelparam:%i gl_setgammaramp_ok:%i\n",ogl_intensity4_ok,ogl_luminance4_alpha4_ok,ogl_rgba2_ok,ogl_readpixels_ok,ogl_gettexlevelparam_ok,ogl_setgammaramp_ok); |
} | | } |
| | |