From 218ceb3e1874a5a28f36a8df3ca0e881cdf213d5 Mon Sep 17 00:00:00 2001 From: Kristian Høgsberg Date: Thu, 22 Apr 2010 11:07:45 -0400 Subject: mesa: Move API specific context intialization into context.c --- src/mesa/main/context.c | 28 +++++++++++++++++++++++++--- src/mesa/main/context.h | 3 --- 2 files changed, 25 insertions(+), 6 deletions(-) (limited to 'src/mesa/main') 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 @@ -127,9 +127,6 @@ _mesa_initialize_context_for_api(GLcontext *ctx, const struct dd_function_table *driverFunctions, void *driverContext); -extern void -_mesa_initialize_context_extra(GLcontext *ctx); - extern void _mesa_free_context_data( GLcontext *ctx ); -- cgit v1.2.3