[Mesa-dev] [PATCH 04/20] mesa: decrease the array size of ctx->Texture.FixedFuncUnit to 8

Marek Olšák maraeo at gmail.com
Wed Nov 22 22:28:56 UTC 2017


On Wed, Nov 22, 2017 at 10:28 PM, Ian Romanick <idr at freedesktop.org> wrote:
> On 11/21/2017 10:01 AM, Marek Olšák wrote:
>> From: Marek Olšák <marek.olsak at amd.com>
>>
>> This makes piglit/texunits fail, because we can't do glTexEnv and
>> glGetTexEnv with 192 texture units anymore. Not that it ever made sense.
>
> It's just the test_texture_env subtest that fails, right?  Does this
> test pass on any closed-source drivers?  I'm wondering if the test is
> just wrong.  glTexEnv and glGetTexEnv are about fragment processing.
> The GL spec is pretty clear that the limit advertised by
> GL_MAX_TEXTURE_IMAGE_UNITS applies to fragment shader usage.  It seems
> logical that fixed-function fragment processing would have the same unit
> (though I haven't found anything to support this theory yet).
>
> Further, it's quite clear that GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS is
> the count of total users of all texture units.  Section 11.1.3.5
> (Texture Access) of the OpenGL 4.5 compatibility profile spec says:
>
>     All active shaders, and fixed-function fragment processing if no
>     fragment shader is active, combined cannot use more than the value
>     of MAX_COMBINED_TEXTURE_IMAGE_UNITS texture image units. If more
>     than one pipeline stage accesses the same texture image unit, each
>     such access counts separately against the
>     MAX_COMBINED_TEXTURE_IMAGE_UNITS limit.
>
> Does that subtest pass with this change if you
> s/MaxTextureCombinedUnits/MaxTextureImageUnits/ on lines 282 and 291?

It passes if I use MaxTextureCoordUnits.

Marek


More information about the mesa-dev mailing list