[Mesa-dev] [PATCH] meta: Generate and compile shaders everytime in setup_glsl_generate_mipmap()

Brian Paul brianp at vmware.com
Wed Sep 19 11:28:25 PDT 2012


On 09/19/2012 12:00 PM, Anuj Phogat wrote:
> On Wed, Sep 19, 2012 at 2:13 AM, Eric Anholt<eric at anholt.net>  wrote:
>>
>> Anuj Phogat<anuj.phogat at gmail.com>  writes:
>>
>>> Fixes float-texture(mipmap.manual):
>>> See Comment 6: https://bugs.freedesktop.org/show_bug.cgi?id=54296
>>
>> Can you explain why this is necessary?
>
> _mesa_meta_GenerateMipmap()->setup_glsl_generate_mipmap()
>   generates fragment shader programs based on the texture target
>   used in glGenerateMipmap(target). target can be GL_TEXTURE_{1, 2, 3}D,
>   GL_TEXTURE_{1, 2}D_ARRAY, or GL_TEXTURE_CUBE_MAP. An
> application is free to call glGenerateMipmap() multiple times with different
> texture targets. This makes it necessary to generate and compile shader
> programs on every call to glGenerateMipmap().

Wouldn't it be better to compile per-target shaders on demand and save 
them for the next call?  Some apps might auto-generate quite a few 
mipmapped textures.

-Brian


More information about the mesa-dev mailing list