Name

    CHROMIUM_renderbuffer_format_BGRA8888

Name Strings

    GL_CHROMIUM_renderbuffer_format_BGRA8888

Version

    Last Modifed Date: Oct 16, 2013

Dependencies

    OpenGL ES 2.0 is required.
    GL_EXT_texture_format_BGRA8888 is required.

Overview

    EXT_texture_format_BGRA8888 adds a BGRA8_EXT as a legal internal texture
    format. This extension also allows BGRA8_EXT as a renderbuffer internal
    format. It is particularly useful when ANGLE_framebuffer_multisample or
    a similar extension is also present as it allows creating a multisampled
    BGRA8 renderbuffer that can be downsampled into a BGRA8 texture.

New Tokens

    None

Additions to the OpenGL ES 2.0 Specification

    Modifications to Table 4.5 (Renderbuffer image formats)

        Add the following entry:
        Sized Internal Format  Renderable Type   R bits  G bits  B bits  A bits  D bits  S bits
        =====================  ===============   ======  ======  ======  ======  ======  ======
        BGRA8_EXT              color-renderable  8       8       8       8

Interactions with GL_ANGLE_framebuffer_multisample

    If ANGLE_framebuffer_multisample is also present then BGRA8_EXT is a
    legal parameter to RenderbufferStrorageMultisampleANGLE.

New Procedures and Functions

    None

Errors

    None

New State

    None

Revision History

    10/16/2013 Initial version
