15bd8deadSopenharmony_ciName 25bd8deadSopenharmony_ci 35bd8deadSopenharmony_ci OES_query_matrix 45bd8deadSopenharmony_ci 55bd8deadSopenharmony_ciName Strings 65bd8deadSopenharmony_ci 75bd8deadSopenharmony_ci GL_OES_query_matrix 85bd8deadSopenharmony_ci 95bd8deadSopenharmony_ciContact 105bd8deadSopenharmony_ci 115bd8deadSopenharmony_ci Kari Pulli, Nokia (kari.pulli 'at' nokia.com) 125bd8deadSopenharmony_ci 135bd8deadSopenharmony_ciNotice 145bd8deadSopenharmony_ci 155bd8deadSopenharmony_ci Copyright (c) 2003-2013 The Khronos Group Inc. Copyright terms at 165bd8deadSopenharmony_ci http://www.khronos.org/registry/speccopyright.html 175bd8deadSopenharmony_ci 185bd8deadSopenharmony_ciSpecification Update Policy 195bd8deadSopenharmony_ci 205bd8deadSopenharmony_ci Khronos-approved extension specifications are updated in response to 215bd8deadSopenharmony_ci issues and bugs prioritized by the Khronos OpenGL ES Working Group. For 225bd8deadSopenharmony_ci extensions which have been promoted to a core Specification, fixes will 235bd8deadSopenharmony_ci first appear in the latest version of that core Specification, and will 245bd8deadSopenharmony_ci eventually be backported to the extension document. This policy is 255bd8deadSopenharmony_ci described in more detail at 265bd8deadSopenharmony_ci https://www.khronos.org/registry/OpenGL/docs/update_policy.php 275bd8deadSopenharmony_ci 285bd8deadSopenharmony_ciStatus 295bd8deadSopenharmony_ci 305bd8deadSopenharmony_ci Ratified by the Khronos BOP, July 23, 2003. 315bd8deadSopenharmony_ci 325bd8deadSopenharmony_ciVersion 335bd8deadSopenharmony_ci 345bd8deadSopenharmony_ci $Date: 2003/07/23 04:23:25 $ $Revision: 1.2 $ 355bd8deadSopenharmony_ci 365bd8deadSopenharmony_ciNumber 375bd8deadSopenharmony_ci 385bd8deadSopenharmony_ci OpenGL ES Extension #16 (formerly OpenGL Extension #296) 395bd8deadSopenharmony_ci 405bd8deadSopenharmony_ciDependencies 415bd8deadSopenharmony_ci 425bd8deadSopenharmony_ci OpenGL 1.3 is required. 435bd8deadSopenharmony_ci OES_fixed_point is required. 445bd8deadSopenharmony_ci 455bd8deadSopenharmony_ciOverview 465bd8deadSopenharmony_ci 475bd8deadSopenharmony_ci Many applications may need to query the contents and status of the 485bd8deadSopenharmony_ci current matrix at least for debugging purposes, especially as the 495bd8deadSopenharmony_ci implementations are allowed to implement matrix machinery either in 505bd8deadSopenharmony_ci any (possibly proprietary) floating point format, or in a fixed point 515bd8deadSopenharmony_ci format that has the range and accuracy of at least 16.16 (signed 16 bit 525bd8deadSopenharmony_ci integer part, unsigned 16 bit fractional part). 535bd8deadSopenharmony_ci 545bd8deadSopenharmony_ci This extension is intended to allow application to query the components 555bd8deadSopenharmony_ci of the matrix and also their status, regardless whether the internal 565bd8deadSopenharmony_ci representation is in fixed point or floating point. 575bd8deadSopenharmony_ci 585bd8deadSopenharmony_ciIP Status 595bd8deadSopenharmony_ci 605bd8deadSopenharmony_ci There is no intellectual property associated with this extension. 615bd8deadSopenharmony_ci 625bd8deadSopenharmony_ciIssues 635bd8deadSopenharmony_ci 645bd8deadSopenharmony_ci None known. 655bd8deadSopenharmony_ci 665bd8deadSopenharmony_ciNew Procedures and Functions 675bd8deadSopenharmony_ci 685bd8deadSopenharmony_ci GLbitfield glQueryMatrixxOES( GLfixed mantissa[16], 695bd8deadSopenharmony_ci GLint exponent[16] ) 705bd8deadSopenharmony_ci 715bd8deadSopenharmony_ci mantissa[16] contains the contents of the current matrix in GLfixed 725bd8deadSopenharmony_ci format. exponent[16] contains the unbiased exponents applied to the 735bd8deadSopenharmony_ci matrix components, so that the internal representation of component i 745bd8deadSopenharmony_ci is close to mantissa[i] * 2^exponent[i]. The function returns a status 755bd8deadSopenharmony_ci word which is zero if all the components are valid. If 765bd8deadSopenharmony_ci status & (1<<i) != 0, the component i is invalid (e.g., NaN, Inf). 775bd8deadSopenharmony_ci The implementations are not required to keep track of overflows. In 785bd8deadSopenharmony_ci that case, the invalid bits are never set. 795bd8deadSopenharmony_ci 805bd8deadSopenharmony_ciNew Tokens 815bd8deadSopenharmony_ci 825bd8deadSopenharmony_ci None 835bd8deadSopenharmony_ci 845bd8deadSopenharmony_ciAdditions to Chapter 2 of the OpenGL 1.3 Specification (OpenGL Operation) 855bd8deadSopenharmony_ci 865bd8deadSopenharmony_ci None 875bd8deadSopenharmony_ci 885bd8deadSopenharmony_ciAdditions to Chapter 3 of the OpenGL 1.3 Specification (Rasterization) 895bd8deadSopenharmony_ci 905bd8deadSopenharmony_ci None 915bd8deadSopenharmony_ci 925bd8deadSopenharmony_ciAdditions to Chapter 4 of the OpenGL 1.3 Specification (Per-Fragment 935bd8deadSopenharmony_ciOperations and the Frame Buffer) 945bd8deadSopenharmony_ci 955bd8deadSopenharmony_ci None 965bd8deadSopenharmony_ci 975bd8deadSopenharmony_ciAdditions to Chapter 5 of the OpenGL 1.3 Specification (Special Functions) 985bd8deadSopenharmony_ci 995bd8deadSopenharmony_ci None 1005bd8deadSopenharmony_ci 1015bd8deadSopenharmony_ciAdditions to Chapter 6 of the OpenGL 1.3 Specification (State and 1025bd8deadSopenharmony_ciState Requests) 1035bd8deadSopenharmony_ci 1045bd8deadSopenharmony_ci Insert Overview and New Procedures and Functions to become Section 6.1.13. 1055bd8deadSopenharmony_ci 1065bd8deadSopenharmony_ciAdditions to Appendix A of the OpenGL 1.3 Specification (Invariance) 1075bd8deadSopenharmony_ci 1085bd8deadSopenharmony_ci None 1095bd8deadSopenharmony_ci 1105bd8deadSopenharmony_ciAdditions to the AGL/GLX/WGL Specifications 1115bd8deadSopenharmony_ci 1125bd8deadSopenharmony_ciGLX Protocol 1135bd8deadSopenharmony_ci 1145bd8deadSopenharmony_ci QueryMatrixxOES() is mapped to the equivalent protocol for 1155bd8deadSopenharmony_ci floating-point state queries. Two queries are required; one to 1165bd8deadSopenharmony_ci retrieve the current matrix mode and another to retrieve the 1175bd8deadSopenharmony_ci matrix values. 1185bd8deadSopenharmony_ci 1195bd8deadSopenharmony_ciDependencies on OES_fixed_point 1205bd8deadSopenharmony_ci 1215bd8deadSopenharmony_ci OES_fixed_point is required for the GLfixed definition. 1225bd8deadSopenharmony_ci 1235bd8deadSopenharmony_ciErrors 1245bd8deadSopenharmony_ci 1255bd8deadSopenharmony_ci None 1265bd8deadSopenharmony_ci 1275bd8deadSopenharmony_ciNew State 1285bd8deadSopenharmony_ci 1295bd8deadSopenharmony_ci None 1305bd8deadSopenharmony_ci 1315bd8deadSopenharmony_ciNew Implementation Dependent State 1325bd8deadSopenharmony_ci 1335bd8deadSopenharmony_ci None 1345bd8deadSopenharmony_ci 1355bd8deadSopenharmony_ciRevision History 1365bd8deadSopenharmony_ci 1375bd8deadSopenharmony_ciApr 15, 2003 Kari Pulli Created the document 1385bd8deadSopenharmony_ciJul 08, 2003 David Blythe Clarified the Dependencies section, 1395bd8deadSopenharmony_ci Added extension number 1405bd8deadSopenharmony_ciJul 12, 2003 David Blythe Add GLX protocol note 1415bd8deadSopenharmony_ci 142