mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-07 11:28:05 +02:00
radeon: set texture in state properly.
make sure to turn off when no texture is used in hw
This commit is contained in:
parent
a6a11e1dc0
commit
85957cb512
2 changed files with 5 additions and 3 deletions
|
|
@ -2073,7 +2073,7 @@ static GLboolean r100ValidateBuffers(GLcontext *ctx)
|
|||
if (!ctx->Texture.Unit[i]._ReallyEnabled)
|
||||
continue;
|
||||
|
||||
t = radeon_tex_obj(ctx->Texture.Unit[i]._Current);
|
||||
t = rmesa->state.texture.unit[i].texobj;
|
||||
if (t->image_override && t->bo)
|
||||
radeon_cs_space_add_persistent_bo(rmesa->radeon.cmdbuf.cs, t->bo,
|
||||
RADEON_GEM_DOMAIN_GTT | RADEON_GEM_DOMAIN_VRAM, 0);
|
||||
|
|
|
|||
|
|
@ -1143,12 +1143,14 @@ static GLboolean radeonUpdateTextureUnit( GLcontext *ctx, int unit )
|
|||
r100ContextPtr rmesa = R100_CONTEXT(ctx);
|
||||
|
||||
if (ctx->Texture.Unit[unit]._ReallyEnabled & TEXTURE_3D_BIT) {
|
||||
rmesa->state.texture.unit[unit].texobj = NULL;
|
||||
return GL_FALSE;
|
||||
}
|
||||
|
||||
if (!ctx->Texture.Unit[unit]._ReallyEnabled) {
|
||||
/* disable the unit */
|
||||
disable_tex_obj_state(rmesa, unit);
|
||||
rmesa->state.texture.unit[unit].texobj = NULL;
|
||||
return GL_TRUE;
|
||||
}
|
||||
|
||||
|
|
@ -1156,8 +1158,8 @@ static GLboolean radeonUpdateTextureUnit( GLcontext *ctx, int unit )
|
|||
_mesa_warning(ctx,
|
||||
"failed to validate texture for unit %d.\n",
|
||||
unit);
|
||||
rmesa->state.texture.unit[unit].texobj = NULL;
|
||||
return GL_FALSE;
|
||||
rmesa->state.texture.unit[unit].texobj = NULL;
|
||||
return GL_FALSE;
|
||||
}
|
||||
rmesa->state.texture.unit[unit].texobj = radeon_tex_obj(ctx->Texture.Unit[unit]._Current);
|
||||
return GL_TRUE;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue