15bd8deadSopenharmony_ciName
25bd8deadSopenharmony_ci
35bd8deadSopenharmony_ci    OES_read_format
45bd8deadSopenharmony_ci
55bd8deadSopenharmony_ciName Strings
65bd8deadSopenharmony_ci
75bd8deadSopenharmony_ci    GL_OES_read_format
85bd8deadSopenharmony_ci
95bd8deadSopenharmony_ciContact
105bd8deadSopenharmony_ci
115bd8deadSopenharmony_ci    Aaftab Munshi (amunshi@ati.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    Revision 0.2 ratified by the Khronos BOP, July 23, 2003.
315bd8deadSopenharmony_ci    Revision 0.3 to be ratified
325bd8deadSopenharmony_ci
335bd8deadSopenharmony_ciVersion
345bd8deadSopenharmony_ci
355bd8deadSopenharmony_ci    Last Modifed Date: Jan 4, 2006
365bd8deadSopenharmony_ci    Author Revision: 0.3
375bd8deadSopenharmony_ci
385bd8deadSopenharmony_ciNumber
395bd8deadSopenharmony_ci
405bd8deadSopenharmony_ci    OpenGL ES Extension #17 (formerly OpenGL Extension #295)
415bd8deadSopenharmony_ci
425bd8deadSopenharmony_ciDependencies
435bd8deadSopenharmony_ci
445bd8deadSopenharmony_ci    None
455bd8deadSopenharmony_ci    The extension is written against the OpenGL 1.3 Specification.
465bd8deadSopenharmony_ci
475bd8deadSopenharmony_ciOverview
485bd8deadSopenharmony_ci
495bd8deadSopenharmony_ci    This extension provides the capability to query an OpenGL
505bd8deadSopenharmony_ci    implementation for a preferred type and format combination
515bd8deadSopenharmony_ci    for use with reading the color buffer with the ReadPixels
525bd8deadSopenharmony_ci    command.  The purpose is to enable embedded implementations
535bd8deadSopenharmony_ci    to support a greatly reduced set of type/format combinations
545bd8deadSopenharmony_ci    and provide a mechanism for applications to determine which
555bd8deadSopenharmony_ci    implementation-specific combination is supported.
565bd8deadSopenharmony_ci
575bd8deadSopenharmony_ci    The preferred type and format combination returned may depend
585bd8deadSopenharmony_ci    on the read surface bound to the current GL context.
595bd8deadSopenharmony_ci
605bd8deadSopenharmony_ciIP Status
615bd8deadSopenharmony_ci
625bd8deadSopenharmony_ci    None
635bd8deadSopenharmony_ci
645bd8deadSopenharmony_ciIssues
655bd8deadSopenharmony_ci
665bd8deadSopenharmony_ci*   Should this be generalized for other commands: DrawPixels, TexImage?
675bd8deadSopenharmony_ci
685bd8deadSopenharmony_ci    Resolved: No need to aggrandize.
695bd8deadSopenharmony_ci
705bd8deadSopenharmony_ciNew Procedures and Functions
715bd8deadSopenharmony_ci
725bd8deadSopenharmony_ci    None
735bd8deadSopenharmony_ci
745bd8deadSopenharmony_ci
755bd8deadSopenharmony_ciNew Tokens
765bd8deadSopenharmony_ci
775bd8deadSopenharmony_ci    IMPLEMENTATION_COLOR_READ_TYPE_OES          0x8B9A
785bd8deadSopenharmony_ci    IMPLEMENTATION_COLOR_READ_FORMAT_OES        0x8B9B
795bd8deadSopenharmony_ci
805bd8deadSopenharmony_ciAdditions to Chapter 2 of the OpenGL 1.3 Specification (OpenGL Operation)
815bd8deadSopenharmony_ci
825bd8deadSopenharmony_ci    None
835bd8deadSopenharmony_ci
845bd8deadSopenharmony_ci
855bd8deadSopenharmony_ciAdditions to Chapter 3 of the OpenGL 1.3 Specification (Rasterization)
865bd8deadSopenharmony_ci
875bd8deadSopenharmony_ci    None
885bd8deadSopenharmony_ci
895bd8deadSopenharmony_ci
905bd8deadSopenharmony_ciAdditions to Chapter 4 of the OpenGL 1.3 Specification (Per-Fragment
915bd8deadSopenharmony_ciOperations and the Frame Buffer)
925bd8deadSopenharmony_ci
935bd8deadSopenharmony_ci    Section 4.3 Drawing, Reading, and Copying Pixels
945bd8deadSopenharmony_ci
955bd8deadSopenharmony_ci      Section 4.3.2 Reading Pixels
965bd8deadSopenharmony_ci
975bd8deadSopenharmony_ci      (add paragraph)
985bd8deadSopenharmony_ci      A single format and type combination, designated the
995bd8deadSopenharmony_ci      preferred format, is associated with the state variables
1005bd8deadSopenharmony_ci      IMPLEMENTATION_COLOR_READ_FORMAT_OES and
1015bd8deadSopenharmony_ci      IMPLEMENTATION_COLOR_READ_TYPE_OES.  The preferred format
1025bd8deadSopenharmony_ci      indicates a read format and type combination that provides optimal
1035bd8deadSopenharmony_ci      performance, for the read surface that is bound to the current 
1045bd8deadSopenharmony_ci      GL context, for a particular implementation.  The state values
1055bd8deadSopenharmony_ci      are chosen from the set of regularly accepted format
1065bd8deadSopenharmony_ci      and type parameters as shown in tables 3.6 and 3.5.
1075bd8deadSopenharmony_ci
1085bd8deadSopenharmony_ci
1095bd8deadSopenharmony_ciAdditions to Chapter 5 of the OpenGL 1.3 Specification (Special Functions)
1105bd8deadSopenharmony_ci
1115bd8deadSopenharmony_ci      None
1125bd8deadSopenharmony_ci
1135bd8deadSopenharmony_ciAdditions to Chapter 6 of the OpenGL 1.3 Specification (State and
1145bd8deadSopenharmony_ciState Requests)
1155bd8deadSopenharmony_ci
1165bd8deadSopenharmony_ci      None
1175bd8deadSopenharmony_ci
1185bd8deadSopenharmony_ciAdditions to Appendix A of the OpenGL 1.3 Specification (Invariance)
1195bd8deadSopenharmony_ci
1205bd8deadSopenharmony_ci    None
1215bd8deadSopenharmony_ci
1225bd8deadSopenharmony_ciAdditions to the AGL/GLX/WGL Specifications
1235bd8deadSopenharmony_ci
1245bd8deadSopenharmony_ci    None
1255bd8deadSopenharmony_ci
1265bd8deadSopenharmony_ciAdditions to the WGL Specification
1275bd8deadSopenharmony_ci
1285bd8deadSopenharmony_ci    None
1295bd8deadSopenharmony_ci
1305bd8deadSopenharmony_ciAdditions to the AGL Specification
1315bd8deadSopenharmony_ci
1325bd8deadSopenharmony_ci    None
1335bd8deadSopenharmony_ci
1345bd8deadSopenharmony_ciAdditions to Chapter 2 of the GLX 1.3 Specification (GLX Operation)
1355bd8deadSopenharmony_ci
1365bd8deadSopenharmony_ciAdditions to Chapter 3 of the GLX 1.3 Specification (Functions and Errors)
1375bd8deadSopenharmony_ci
1385bd8deadSopenharmony_ciAdditions to Chapter 4 of the GLX 1.3 Specification (Encoding on the X
1395bd8deadSopenharmony_ciByte Stream)
1405bd8deadSopenharmony_ci
1415bd8deadSopenharmony_ciAdditions to Chapter 5 of the GLX 1.3 Specification (Extending OpenGL)
1425bd8deadSopenharmony_ci
1435bd8deadSopenharmony_ciAdditions to Chapter 6 of the GLX 1.3 Specification (GLX Versions)
1445bd8deadSopenharmony_ci
1455bd8deadSopenharmony_ciGLX Protocol
1465bd8deadSopenharmony_ci
1475bd8deadSopenharmony_ci    TBD
1485bd8deadSopenharmony_ci
1495bd8deadSopenharmony_ciErrors
1505bd8deadSopenharmony_ci
1515bd8deadSopenharmony_ci    None
1525bd8deadSopenharmony_ci
1535bd8deadSopenharmony_ciNew State
1545bd8deadSopenharmony_ci
1555bd8deadSopenharmony_ci    None
1565bd8deadSopenharmony_ci
1575bd8deadSopenharmony_ciNew Implementation Dependent State
1585bd8deadSopenharmony_ci
1595bd8deadSopenharmony_ci(table 6.28)
1605bd8deadSopenharmony_ci
1615bd8deadSopenharmony_ci    Get Value     Type  Get Command  Value  Description  Sec.  Attribute
1625bd8deadSopenharmony_ci    ---------     ----  -----------  -----  -----------  ----- ---------
1635bd8deadSopenharmony_ci    x_FORMAT_OES  Z_11  GetIntegerv    -    read format  4.3.2    -
1645bd8deadSopenharmony_ci    x_TYPE_OES    Z_20  GetIntegerv    -    read type    4.3.2    -
1655bd8deadSopenharmony_ci
1665bd8deadSopenharmony_ci    x_ = IMPLEMENTATION_COLOR_READ_
1675bd8deadSopenharmony_ci
1685bd8deadSopenharmony_ciRevision History
1695bd8deadSopenharmony_ci
1705bd8deadSopenharmony_ci    02/20/2003    0.1
1715bd8deadSopenharmony_ci        - Original draft.
1725bd8deadSopenharmony_ci
1735bd8deadSopenharmony_ci    07/08/2003    0.2
1745bd8deadSopenharmony_ci        - Marked issue regarding extending to other commands to resolved.
1755bd8deadSopenharmony_ci        - Hackery to make state table fit in 80 columns
1765bd8deadSopenharmony_ci        - Removed Dependencies on section
1775bd8deadSopenharmony_ci        - Added extension number and enumerant values
1785bd8deadSopenharmony_ci
1795bd8deadSopenharmony_ci    01/04/2006    0.3
1805bd8deadSopenharmony_ci        - Added clarification that format and type value returned
1815bd8deadSopenharmony_ci          depends on the current read surface attached to the current context
182