| @@ -1,4 +1,4 @@ | |||
| /* $Id: gl.h,v 1.20 1999/11/11 17:48:32 brianp Exp $ */ | |||
| /* $Id: gl.h,v 1.21 1999/11/12 02:08:59 brianp Exp $ */ | |||
| /* | |||
| * Mesa 3-D graphics library | |||
| @@ -2308,6 +2308,17 @@ GLAPI void GLAPIENTRY glResizeBuffersMESA( void ); | |||
| /* | |||
| * GL_EXT_texture_env_add | |||
| */ | |||
| #ifndef GL_EXT_texture_env_add | |||
| #define GL_EXT_texture_env_add 1 | |||
| /* No new tokens or functions */ | |||
| #endif /* GL_EXT_texture_env_add */ | |||
| #if defined(__BEOS__) || defined(__QUICKDRAW__) | |||
| @@ -1,4 +1,4 @@ | |||
| /* $Id: extensions.c,v 1.12 1999/11/12 02:05:46 brianp Exp $ */ | |||
| /* $Id: extensions.c,v 1.13 1999/11/12 02:07:56 brianp Exp $ */ | |||
| /* | |||
| * Mesa 3-D graphics library | |||
| @@ -74,6 +74,7 @@ static struct { int enabled; const char *name; } default_extensions[] = { | |||
| { DEFAULT_ON, "GL_EXT_compiled_vertex_array" }, | |||
| { DEFAULT_OFF, "GL_EXT_vertex_array_set" }, | |||
| { DEFAULT_ON, "GL_EXT_clip_volume_hint" }, | |||
| { DEFAULT_ON, "GL_EXT_texture_env_add" }, | |||
| }; | |||
| @@ -1,4 +1,4 @@ | |||
| /* $Id: texstate.c,v 1.5 1999/11/11 01:22:28 brianp Exp $ */ | |||
| /* $Id: texstate.c,v 1.6 1999/11/12 02:07:56 brianp Exp $ */ | |||
| /* | |||
| * Mesa 3-D graphics library | |||
| @@ -31,6 +31,7 @@ | |||
| #include "glheader.h" | |||
| #include "context.h" | |||
| #include "enums.h" | |||
| #include "extensions.h" | |||
| #include "macros.h" | |||
| #include "matrix.h" | |||
| #include "texobj.h" | |||
| @@ -84,10 +85,16 @@ _mesa_TexEnvfv( GLenum target, GLenum pname, const GLfloat *param ) | |||
| if (pname==GL_TEXTURE_ENV_MODE) { | |||
| GLenum mode = (GLenum) (GLint) *param; | |||
| switch (mode) { | |||
| case GL_MODULATE: | |||
| case GL_BLEND: | |||
| case GL_DECAL: | |||
| case GL_REPLACE: | |||
| case GL_ADD: | |||
| if (!gl_extension_is_enabled(ctx, "GL_EXT_texture_env_add")) { | |||
| gl_error(ctx, GL_INVALID_ENUM, "glTexEnv(param)"); | |||
| return; | |||
| } | |||
| /* FALL-THROUGH */ | |||
| case GL_MODULATE: | |||
| case GL_BLEND: | |||
| case GL_DECAL: | |||
| case GL_REPLACE: | |||
| /* A small optimization for drivers */ | |||
| if (texUnit->EnvMode == mode) | |||
| return; | |||