[Mesa-dev] [PATCH] mesa: Use GL_RED for DEPTH_TEXTURE_MODE for everything but legacy GL.
Ian Romanick
idr at freedesktop.org
Wed Dec 19 20:25:24 PST 2012
On 12/19/2012 05:59 PM, Paul Berry wrote:
> On 19 November 2012 11:06, Kenneth Graunke <kenneth at whitecape.org
> <mailto:kenneth at whitecape.org>> wrote:
>
> On 11/18/2012 05:43 PM, Ian Romanick wrote:
>
> On Nov 17, 2012, at 11:26 PM, Kenneth Graunke
> <kenneth at whitecape.org <mailto:kenneth at whitecape.org>> wrote:
>
> According to page 163 of the ES 3.0 spec:
>
> "Texture lookups involving textures with depth component
> data generate
> a texture base color C_b either using depth data directly or by
> performing a comparison with the D_ref value used to perform the
> lookup, as described in section 3.8.15. The resulting value
> R_t is
> then expanded to a color C_b = (R_t,0,0,1), ..."
>
> In other words, depth textures are supposed to be treated as
> GL_RED.
>
> A discussion about this text can be found in Khronos bugzilla:
> https://cvs.khronos.org/__bugzilla/show_bug.cgi?id=7962
> <https://cvs.khronos.org/bugzilla/show_bug.cgi?id=7962>
>
> It's unclear what the behavior of desktop GL should be. The
> GL 3.x
> specifications indicate that it should be (r, r, r, 1), which is
> GL_LUMINANCE (the old default). However, page 112 of the
> 4.2 core
> specification contains the text quoted above, explicitly
> declaring it
> to be (R_t, 0, 0, 1), which is GL_RED.
>
> So it hinges on whether the 4.2 text is a change or a
> clarification.
> Personally I think that using GL_RED in core contexts and
> GL_INTENSITY
> in legacy contexts seems reasonable.
>
>
> I believe it was an intentional change somewhere in 4.x. We may
> want to select behavior based on API / version.
>
>
> Ugh. On further investigation, it turns out that OES_depth_texture
> (which is ES2 only) does not provide DEPTH_TEXTURE_MODE, but
> explicitly states that it should act as GL_LUMINANCE. There's also
> a conformance test for that.
>
> So, for ES 2, it *must* be GL_LUMINANCE. For ES 3, it *must* be RED.
>
> Time to file spec bugs...
>
> Does anyone know if this ever got addressed? I'm still seeing these
> GLES3 conformance failures.
There was some discussion, but I don't feel like there was any
resolution. I'll rattle the cage again...
More information about the mesa-dev
mailing list