summaryrefslogtreecommitdiffstats
path: root/src/mesa/main
diff options
context:
space:
mode:
Diffstat (limited to 'src/mesa/main')
-rw-r--r--src/mesa/main/context.c28
-rw-r--r--src/mesa/main/context.h3
2 files changed, 25 insertions, 6 deletions
diff --git a/src/mesa/main/context.c b/src/mesa/main/context.c
index 87e5a88fad2..25288a4e9c1 100644
--- a/src/mesa/main/context.c
+++ b/src/mesa/main/context.c
@@ -808,6 +808,7 @@ _mesa_initialize_context_for_api(GLcontext *ctx,
void *driverContext)
{
struct gl_shared_state *shared;
+ int i;
/*ASSERT(driverContext);*/
assert(driverFunctions->NewTextureObject);
@@ -886,9 +887,30 @@ _mesa_initialize_context_for_api(GLcontext *ctx,
ctx->FragmentProgram._MaintainTexEnvProgram = GL_TRUE;
}
-#if FEATURE_extra_context_init
- _mesa_initialize_context_extra(ctx);
-#endif
+ switch (ctx->API) {
+ case API_OPENGL:
+ break;
+ case API_OPENGLES:
+ /**
+ * GL_OES_texture_cube_map says
+ * "Initially all texture generation modes are set to REFLECTION_MAP_OES"
+ */
+ for (i = 0; i < MAX_TEXTURE_UNITS; i++) {
+ struct gl_texture_unit *texUnit = &ctx->Texture.Unit[i];
+ texUnit->GenS.Mode = GL_REFLECTION_MAP_NV;
+ texUnit->GenT.Mode = GL_REFLECTION_MAP_NV;
+ texUnit->GenR.Mode = GL_REFLECTION_MAP_NV;
+ texUnit->GenS._ModeBit = TEXGEN_REFLECTION_MAP_NV;
+ texUnit->GenT._ModeBit = TEXGEN_REFLECTION_MAP_NV;
+ texUnit->GenR._ModeBit = TEXGEN_REFLECTION_MAP_NV;
+ }
+ break;
+ case API_OPENGLES2:
+ ctx->FragmentProgram._MaintainTexEnvProgram = GL_TRUE;
+ ctx->VertexProgram._MaintainTnlProgram = GL_TRUE;
+ ctx->Point.PointSprite = GL_TRUE; /* always on for ES 2.x */
+ break;
+ }
ctx->FirstTimeCurrent = GL_TRUE;
diff --git a/src/mesa/main/context.h b/src/mesa/main/context.h
index e9405c8bc27..c9f4d433a57 100644
--- a/src/mesa/main/context.h
+++ b/src/mesa/main/context.h
@@ -128,9 +128,6 @@ _mesa_initialize_context_for_api(GLcontext *ctx,
void *driverContext);
extern void
-_mesa_initialize_context_extra(GLcontext *ctx);
-
-extern void
_mesa_free_context_data( GLcontext *ctx );
extern void