From: Brian Paul Date: Fri, 19 Oct 2012 00:00:50 +0000 (-0600) Subject: st/mesa: improve the guess_and_alloc_texture() heuristic X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=6551c4ea3cc21169696920c5f3d3fb0bb8d6e939;p=mesa.git st/mesa: improve the guess_and_alloc_texture() heuristic If GL_BASE_LEVEL==0 and GL_MAX_LEVEL==0 that's a pretty good hint that there'll be a single mipmap level in the texture. Google Earth sets the texture's state this way before the first glTexImage call. This saves a bit of texture memory. --- diff --git a/src/mesa/state_tracker/st_cb_texture.c b/src/mesa/state_tracker/st_cb_texture.c index 5bf3dc699b7..218c8d1e375 100644 --- a/src/mesa/state_tracker/st_cb_texture.c +++ b/src/mesa/state_tracker/st_cb_texture.c @@ -375,6 +375,8 @@ guess_and_alloc_texture(struct st_context *st, */ if ((stObj->base.Sampler.MinFilter == GL_NEAREST || stObj->base.Sampler.MinFilter == GL_LINEAR || + (stObj->base.BaseLevel == 0 && + stObj->base.MaxLevel == 0) || stImage->base._BaseFormat == GL_DEPTH_COMPONENT || stImage->base._BaseFormat == GL_DEPTH_STENCIL_EXT) && !stObj->base.GenerateMipmap &&