[Mesa-dev] [PATCH] mesa: Add ARB_texture_view to Mesa core
Courtney Goeltzenleuchter
courtney at lunarg.com
Tue Nov 5 11:36:44 PST 2013
On Tue, Nov 5, 2013 at 12:22 PM, Ian Romanick <idr at freedesktop.org> wrote:
> On 11/05/2013 09:44 AM, Chris Forbes wrote:
> >> So, you can create a GL_LUMINANCE view of a GL_LUMINANCE texture.
> Hmm...
> >
> > My understanding is you can't actually, since views can only be
> > created from immutable-format textures, and GL_LUMINANCE is not a
> > sized internalformat, so it can't be used with TexStorage?
>
> I was just using GL_LUMINANCE as shorthand for GL_LUMINANCE4,
> GL_LUMINANCE8, GL_LUMINANCE12, and GL_LUMINANCE16. As far as I can tell,
>
> glGenTextures(1, &tex);
> glBindTexture(GL_TEXTURE_2D, tex);
> glTexStorage2D(GL_TEXTURE_2D,
> 8,
> GL_LUMINANCE8,
> 1024, 1024);
>
> is perfectly valid. Sayeth GL_ARB_texture_storage:
>
> Accepted by the <internalformat> parameter of TexStorage* when
> implemented on OpenGL ES:
>
> ALPHA8_EXT 0x803C
> LUMINANCE8_EXT 0x8040
> LUMINANCE8_ALPHA8_EXT 0x8045
>
> I guess that means GL_LUMINANCE4, GL_LUMINANCE12, and GL_LUMINANCE16 are
> out. As are all GL_INTENSITY formats. There are still these three
> legacy formats to handle.
>
> So, if we support GL_ARB_texture_view in a compatibility profile,
>
> glGenTextures(1, &view);
> glTextureView(view,
> GL_TEXTURE_2D,
> tex,
> GL_LUMINANCE8,
> 1, 1, 1, 1);
>
> is also valid.
>
> Right?
>
The spec is pickier than that. For 8bit texels the allowed internal
formats are: R8UI, R8I, R8, R8_SNORM
I use the table specified in the ARB_texture_view to translate the target
internalFormat passed to glTextureView into a VIEW_CLASS. GL_LUMINANCE8
does not have a valid VIEW_CLASS and could not match the internal format of
the source texture.
That makes me wonder, should I be trying to map the target internalformat
into a driver internal format?
Courtney
--
Courtney Goeltzenleuchter
LunarG
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20131105/f2739432/attachment.html>
More information about the mesa-dev
mailing list