From: Kristian Høgsberg Date: Thu, 22 Apr 2010 15:07:45 +0000 (-0400) Subject: mesa: Move API specific context intialization into context.c X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=218ceb3e1874a5a28f36a8df3ca0e881cdf213d5;p=mesa.git mesa: Move API specific context intialization into context.c --- diff --git a/src/mesa/es/main/specials_es1.c b/src/mesa/es/main/specials_es1.c index 92e24a03fe5..88f77177c80 100644 --- a/src/mesa/es/main/specials_es1.c +++ b/src/mesa/es/main/specials_es1.c @@ -195,24 +195,3 @@ _es_GetString(GLenum name) return _mesa_GetString(name); } } - - -void -_mesa_initialize_context_extra(GLcontext *ctx) -{ - GLuint i; - - /** - * 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; - } -} diff --git a/src/mesa/es/main/specials_es2.c b/src/mesa/es/main/specials_es2.c index 046cda6fc18..75ceaff2c29 100644 --- a/src/mesa/es/main/specials_es2.c +++ b/src/mesa/es/main/specials_es2.c @@ -167,13 +167,3 @@ _es_GetString(GLenum name) return _mesa_GetString(name); } } - - -void -_mesa_initialize_context_extra(GLcontext *ctx) -{ - ctx->FragmentProgram._MaintainTexEnvProgram = GL_TRUE; - ctx->VertexProgram._MaintainTnlProgram = GL_TRUE; - - ctx->Point.PointSprite = GL_TRUE; /* always on for ES 2.x */ -} 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 );