1Name 2 3 OES_byte_coordinates 4 5Name Strings 6 7 GL_OES_byte_coordinates 8 9Contact 10 11 Kari Pulli, Nokia (kari.pulli 'at' nokia.com) 12 13Notice 14 15 Copyright (c) 2002-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.5 $ 35 36Number 37 38 OpenGL ES Extension #4 (formerly OpenGL Extension #291) 39 40Dependencies 41 42 OpenGL 1.1 is required. 43 44Overview 45 46 This extension allows specifying, additionally to all existing 47 values, byte-valued vertex and texture coordinates to be used. 48 49 The main reason for introducing the byte-argument is to allow 50 storing data more compactly on memory-restricted environments. 51 52IP Status 53 54 There is no intellectual property associated with this extension. 55 56Issues 57 58 None known. 59 60New Procedures and Functions 61 62 None 63 64New Tokens 65 66 Accepted by the <type> parameter of VertexPointer and TexCoordPointer 67 68 BYTE 0x1400 69 70Additions to Chapter 2 of the OpenGL 1.3 Specification (OpenGL Operation) 71 72 Add signed byte entry points to first paragraph of 73 section 2.7 (Vertex Specification): 74 75 void Vertex{234}bOES( T coords ); 76 void Vertex{234}bvOES( T coords ); 77 78 and to the second paragraph: 79 80 void TexCoord{1234}bOES( T coords ); 81 void TexCoord{1234}bvOES( T coords ); 82 83 and to the third paragraph: 84 85 void MultiTexCoord{1234}bOES( enum texture, T coords ); 86 void MultiTexCoord{1234}bvOES( enum texture, T coords ); 87 88 Add byte to supported types in Table 2.4 (Vertex Array Sizes): 89 90 Command Sizes Types 91 VertexPointer 2,3,4 byte,short,int,float,double 92 TexCoordPointer 1,2,3,4 byte,short,int,float,double 93 94Additions to Chapter 3 of the OpenGL 1.3 Specification (Rasterization) 95 96 None 97 98Additions to Chapter 4 of the OpenGL 1.3 Specification (Per-Fragment 99Operations and the Frame Buffer) 100 101 None 102 103Additions to Chapter 5 of the OpenGL 1.3 Specification (Special Functions) 104 105 None 106 107Additions to Chapter 6 of the OpenGL 1.3 Specification (State and 108State Requests) 109 110 None 111 112Additions to Appendix A of the OpenGL 1.3 Specification (Invariance) 113 114 None 115 116Additions to the AGL/GLX/WGL Specifications 117 118GLX Protocol 119 120 Byte type commands are mapped on the client-side to the 121 appropriate short or int command protocol. 122 123Errors 124 125 No new errors, giving byte as <type> argument to VertexPointer or 126 TexCoordPointer is not an error any more. 127 128New State 129 130(table 6.6, pp. 214-215) 131 132 Get Value Type Get Command Value Description Sec. Attribute 133 --------- ---- ----------- ----- ----------- ---- --------- 134 VERTEX_x Z_5 GetIntegerv FLOAT Type of 2.8 vertex-array 135 vertex 136 coordinates 137 TEXTURE_COORD_x 2 * x Z_5 GetIntegerv FLOAT Type of 2.8 vertex-array 138 texture 139 coordinates 140 _x = _ARRAY_TYPE 141 142New Implementation Dependent State 143 144 None 145 146Revision History 147 148Sep 23, 2002 Kari Pulli Created the document 149Sep 26, 2002 Kari Pulli Incorporated comments by Jon Leech 150Feb 26, 2003 David Blythe Changed prefix to OES 151Jul 08, 2003 David Blythe Deleted Dependencies on section, added 152 extension number, narrow state table 153Jul 11, 2003 David Blythe Changed to use OES suffixes 154Jul 12, 2003 David Blythe Added note about GLX protocol 155