Name

    OES_query_matrix

Name Strings

    GL_OES_query_matrix

Contact

    Kari Pulli, Nokia (kari.pulli 'at' nokia.com)

Status

    Ratified by the Khronos BOP, July 23, 2003.

Version

    $Date: 2005/06/02 18:12:30 $ $Revision: 1.1 $

Number

    296

Dependencies

    OpenGL 1.3 is required.
    OES_fixed_point is required.

Overview

    Many applications may need to query the contents and status of the
    current matrix at least for debugging purposes, especially as the
    implementations are allowed to implement matrix machinery either in
    any (possibly proprietary) floating point format, or in a fixed point
    format that has the range and accuracy of at least 16.16 (signed 16 bit
    integer part, unsigned 16 bit fractional part).
    
    This extension is intended to allow application to query the components
    of the matrix and also their status, regardless whether the internal
    representation is in fixed point or floating point.
     
IP Status

    There is no intellectual property associated with this extension.

Issues

    None known.

New Procedures and Functions

    GLbitfield glQueryMatrixxOES( GLfixed mantissa[16],
                                  GLint   exponent[16] )

    mantissa[16] contains the contents of the current matrix in GLfixed
    format.  exponent[16] contains the unbiased exponents applied to the
    matrix components, so that the internal representation of component i
    is close to mantissa[i] * 2^exponent[i].  The function returns a status
    word which is zero if all the components are valid. If
    status & (1<<i) != 0, the component i is invalid (e.g., NaN, Inf).
    The implementations are not required to keep track of overflows.  In
    that case, the invalid bits are never set.

New Tokens

    None

Additions to Chapter 2 of the OpenGL 1.3 Specification (OpenGL Operation)

    None

Additions to Chapter 3 of the OpenGL 1.3 Specification (Rasterization)

    None

Additions to Chapter 4 of the OpenGL 1.3 Specification (Per-Fragment
Operations and the Frame Buffer)

    None

Additions to Chapter 5 of the OpenGL 1.3 Specification (Special Functions)

    None

Additions to Chapter 6 of the OpenGL 1.3 Specification (State and
State Requests)

    Insert Overview and New Procedures and Functions to become Section 6.1.13.

Additions to Appendix A of the OpenGL 1.3 Specification (Invariance)

    None

Additions to the AGL/GLX/WGL Specifications

GLX Protocol

    QueryMatrixxOES() is mapped to the equivalent protocol for
    floating-point state queries.  Two queries are required; one to
    retrieve the current matrix mode and another to retrieve the
    matrix values.

Dependencies on OES_fixed_point

    OES_fixed_point is required for the GLfixed definition.

Errors

    None

New State

    None

New Implementation Dependent State

    None

Revision History

Apr 15, 2003    Kari Pulli      Created the document
Jul 08, 2003    David Blythe    Clarified the Dependencies section,
                                Added extension number
Jul 12, 2003    David Blythe    Add GLX protocol note

