EnvMode GL_BLEND and tex invalidate changes from Daryll
This commit is contained in:
parent
a14d28c2bd
commit
9f0289dfac
|
@ -966,8 +966,14 @@ static GLboolean fxIsInHardware(GLcontext *ctx)
|
|||
}
|
||||
|
||||
if (ctx->Texture.ReallyEnabled & TEXTURE0_2D) {
|
||||
if (ctx->Texture.Unit[0].EnvMode == GL_BLEND)
|
||||
if (ctx->Texture.Unit[0].EnvMode == GL_BLEND &&
|
||||
(ctx->Texture.ReallyEnabled & TEXTURE1_2D ||
|
||||
ctx->Texture.Unit[0].EnvColor[0] != 0 ||
|
||||
ctx->Texture.Unit[0].EnvColor[1] != 0 ||
|
||||
ctx->Texture.Unit[0].EnvColor[2] != 0 ||
|
||||
ctx->Texture.Unit[0].EnvColor[3] != 1)) {
|
||||
return GL_FALSE;
|
||||
}
|
||||
if (ctx->Texture.Unit[0].Current->Image[0]->Border > 0)
|
||||
return GL_FALSE;
|
||||
}
|
||||
|
|
|
@ -95,9 +95,9 @@ static void fxTexInvalidate(GLcontext *ctx, struct gl_texture_object *tObj)
|
|||
fxMesaContext fxMesa=(fxMesaContext)ctx->DriverCtx;
|
||||
tfxTexInfo *ti;
|
||||
|
||||
fxTMMoveOutTM(fxMesa,tObj); /* TO DO: SLOW but easy to write */
|
||||
|
||||
ti=fxTMGetTexInfo(tObj);
|
||||
if (ti->isInTM) fxTMMoveOutTM(fxMesa,tObj); /* TO DO: SLOW but easy to write */
|
||||
|
||||
ti->validated=GL_FALSE;
|
||||
fxMesa->new_state|=FX_NEW_TEXTURING;
|
||||
ctx->Driver.RenderStart = fxSetupFXUnits;
|
||||
|
|
Loading…
Reference in New Issue