Name

    NV_texture_rectangle_compressed

Name Strings

    GL_NV_texture_rectangle_compressed

Contact

    James Helferty, NVIDIA Corporation (jhelferty 'at' nvidia.com)

Contributors

    Pat Brown

Status

    Complete

Version

    Last Modified:      Jun 21, 2017
    Revision:           1

Number

    OpenGL Extension #509

Dependencies

    This extension is written against the OpenGL 4.5 specification (Core
    Profile), dated October 24, 2016

    OpenGL 1.3 or ARB_texture_compression is required.

    OpenGL 3.1, NV_texture_rectangle, EXT_texture_rectangle or
    ARB_texture_rectangle is required.

Overview

    This extension allows applications to use compressed texture formats
    with the TEXTURE_RECTANGLE texture target, removing an old limitation
    that prohibited such usage globally for rectangle textures.

New Procedures and Functions

    None

New Tokens

    None

Modifications to the OpenGL 4.5 Specification (Core Profile)

    Remove the following from Section 8.7 (Compressed Texture Images):

        An INVALID_ENUM error is generated if the target parameter to any of
        the CompressedTexImagenD commands is TEXTURE_RECTANGLE or PROXY_-
        TEXTURE_RECTANGLE.

    Remove "or target is TEXTURE_RECTANGLE" from the following error in Section
    8.7 (Compressed Texture Images):

        An INVALID_OPERATION error is generated by CompressedTexImage2D if
        internalformat is one of the EAC, ETC2, or RGTC formats and either
        border is non-zero, or target is TEXTURE_RECTANGLE.

    Remove the following from Section 8.7 (Compressed Texture Images):

        An INVALID_ENUM error is generated by CompressedTexSubImage*D if target
        is TEXTURE_RECTANGLE or PROXY_TEXTURE_RECTANGLE.

        An INVALID_OPERATION error is generated by CompressedTextureSubImage*D
        if the effective target is TEXTURE_RECTANGLE.

        An INVALID_ENUM error is generated by CompressedTex*SubImage1D if the
        internal format of the texture is one of the specific compressed
        formats.

Issues

    (1) What is the purpose of this extension?

    RESOLVED:  When the original NV_texture_rectangle extension was first
    published, then-current GPUs were incapable of supporting compressed
    textures with the TEXTURE_RECTANGLE_NV target.  The rectangle texture
    support in all current NVIDIA GPUs has no such limitation, and removing
    this limitation allows applications to access compressed textures with
    non-normalized texture coordinates.

Revision History

    Revision 1
    - Initial revision
