1Name 2 3 OES_query_matrix 4 5Name Strings 6 7 GL_OES_query_matrix 8 9Contact 10 11 Kari Pulli, Nokia (kari.pulli 'at' nokia.com) 12 13Notice 14 15 Copyright (c) 2003-2013 The Khronos Group Inc. Copyright terms at 16 http://www.khronos.org/registry/speccopyright.html 17 18Specification Update Policy 19 20 Khronos-approved extension specifications are updated in response to 21 issues and bugs prioritized by the Khronos OpenGL ES Working Group. For 22 extensions which have been promoted to a core Specification, fixes will 23 first appear in the latest version of that core Specification, and will 24 eventually be backported to the extension document. This policy is 25 described in more detail at 26 https://www.khronos.org/registry/OpenGL/docs/update_policy.php 27 28Status 29 30 Ratified by the Khronos BOP, July 23, 2003. 31 32Version 33 34 $Date: 2003/07/23 04:23:25 $ $Revision: 1.2 $ 35 36Number 37 38 OpenGL ES Extension #16 (formerly OpenGL Extension #296) 39 40Dependencies 41 42 OpenGL 1.3 is required. 43 OES_fixed_point is required. 44 45Overview 46 47 Many applications may need to query the contents and status of the 48 current matrix at least for debugging purposes, especially as the 49 implementations are allowed to implement matrix machinery either in 50 any (possibly proprietary) floating point format, or in a fixed point 51 format that has the range and accuracy of at least 16.16 (signed 16 bit 52 integer part, unsigned 16 bit fractional part). 53 54 This extension is intended to allow application to query the components 55 of the matrix and also their status, regardless whether the internal 56 representation is in fixed point or floating point. 57 58IP Status 59 60 There is no intellectual property associated with this extension. 61 62Issues 63 64 None known. 65 66New Procedures and Functions 67 68 GLbitfield glQueryMatrixxOES( GLfixed mantissa[16], 69 GLint exponent[16] ) 70 71 mantissa[16] contains the contents of the current matrix in GLfixed 72 format. exponent[16] contains the unbiased exponents applied to the 73 matrix components, so that the internal representation of component i 74 is close to mantissa[i] * 2^exponent[i]. The function returns a status 75 word which is zero if all the components are valid. If 76 status & (1<<i) != 0, the component i is invalid (e.g., NaN, Inf). 77 The implementations are not required to keep track of overflows. In 78 that case, the invalid bits are never set. 79 80New Tokens 81 82 None 83 84Additions to Chapter 2 of the OpenGL 1.3 Specification (OpenGL Operation) 85 86 None 87 88Additions to Chapter 3 of the OpenGL 1.3 Specification (Rasterization) 89 90 None 91 92Additions to Chapter 4 of the OpenGL 1.3 Specification (Per-Fragment 93Operations and the Frame Buffer) 94 95 None 96 97Additions to Chapter 5 of the OpenGL 1.3 Specification (Special Functions) 98 99 None 100 101Additions to Chapter 6 of the OpenGL 1.3 Specification (State and 102State Requests) 103 104 Insert Overview and New Procedures and Functions to become Section 6.1.13. 105 106Additions to Appendix A of the OpenGL 1.3 Specification (Invariance) 107 108 None 109 110Additions to the AGL/GLX/WGL Specifications 111 112GLX Protocol 113 114 QueryMatrixxOES() is mapped to the equivalent protocol for 115 floating-point state queries. Two queries are required; one to 116 retrieve the current matrix mode and another to retrieve the 117 matrix values. 118 119Dependencies on OES_fixed_point 120 121 OES_fixed_point is required for the GLfixed definition. 122 123Errors 124 125 None 126 127New State 128 129 None 130 131New Implementation Dependent State 132 133 None 134 135Revision History 136 137Apr 15, 2003 Kari Pulli Created the document 138Jul 08, 2003 David Blythe Clarified the Dependencies section, 139 Added extension number 140Jul 12, 2003 David Blythe Add GLX protocol note 141 142