Khronos Public Bugzilla
Bug 778 - The ES3 glCopyTexImage2D man page is missing some internal formats that are supported in ES3
The ES3 glCopyTexImage2D man page is missing some internal formats that are s...
Status: RESOLVED FIXED
Product: OpenGL-ES
Classification: Unclassified
Component: Man Pages & Other Documentation
3.0
PC Mac OS
: P3 normal
: ---
Assigned To: Ben Bowman
OpenGL ES Work Group email alias
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2013-01-30 12:50 PST by Deron Johnson
Modified: 2013-06-26 16:32 PDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Deron Johnson 2013-01-30 12:50:17 PST
Specifically, the following formats are missing:

    R8, RG8
    R8_SNORM, RG8_SNORM, RGB8_SNORM, RGBA8_SNORM

I sent a question about this to Benj Lipchak, the ES3 spec lead, and he said the following:

"I think you should probably file a bugzilla against that reference page, because it doesn't look right.
It seems to be missing R/RG internalformats as well as unnormalized integer formats (signed and unsigned).

I think the right way to arrive at this list would be to look at the base internal formats in Table 3.15
(R, RG, RGB, RGBA, L, A, L_A) and then including all internalformats from Tables 3.2 & 3.3 that have that
base internal format.  But then since floating-point render targets aren't in core, subtract out the float
internalformats.  And subtract out RGB9_E5, which is not accepted by CopyTex*."

So when we start with these base internal formats: R, RG, RGB, RGBA, L, A, L_A and apply Tables 3.2 and 3.2,
and subtract out the float formats and RGB9_E5 we get this corrected list:


    ALPHA
    LUMINANCE
    LUMINANCE_ALPH

    R8
    R8_SNORM

    RG8
    RG8_SNORM

    RGB
    RGB8
    SRGB8
    RGB565
    RGB8_SNORM

    RGBA
    RGBA8
    RGBA4
    RGB5A1
    SRGB8_ALPHA8
    RGBA8_SNORM
    RGB10_A2
Comment 1 Ben Bowman 2013-01-31 11:17:55 PST
I am not sure about the methodology, and the result of your table looks too small. 
I will have a think about this. Perhaps Benj can comment on the bug directly, but the integer formats seem to be missing entirely.
Comment 2 Ben Bowman 2013-02-27 07:49:17 PST
Thanks,
We're looking into this and will update the man page shortly
Comment 3 Deron Johnson 2013-03-01 12:20:24 PST
Since filing this bug I have had additional conversations with Benj Lipchak and 
we determined that the following formats are also supported by glCopyTexImage2D.
(I forgot to deal with his following comment in the original mail: "It seems to be missing R/RG internalformats as well as unnormalized integer formats (signed and unsigned).").

Note that I have only included those unnormalized integer formats that are renderable.

R8I
R8UI
R16I
R16UI
R32I
R32UI
RG8I
RG8UI
RG16I
RG16UI
RG32I
RG32UI
RGBA8I
RGBA8UI
RGBA16I
RGBA16UI
RGBA32I
RGBA32UI
Comment 4 Deron Johnson 2013-06-26 16:32:57 PDT
As of 6/26/13 I notice that many of the formats I suggested have been added to the OpenGL ES3 Reference Manual, but not the SNORM ones. Why is that?