15bd8deadSopenharmony_ciName
25bd8deadSopenharmony_ci
35bd8deadSopenharmony_ci    OES_texture_half_float_linear
45bd8deadSopenharmony_ci    OES_texture_float_linear
55bd8deadSopenharmony_ci
65bd8deadSopenharmony_ciName Strings
75bd8deadSopenharmony_ci
85bd8deadSopenharmony_ci    GL_OES_texture_half_float_linear, GL_OES_texture_float_linear
95bd8deadSopenharmony_ci
105bd8deadSopenharmony_ciContact
115bd8deadSopenharmony_ci
125bd8deadSopenharmony_ci
135bd8deadSopenharmony_ciNotice
145bd8deadSopenharmony_ci
155bd8deadSopenharmony_ci    Copyright (c) 2005-2014 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_ciIP Status
295bd8deadSopenharmony_ci
305bd8deadSopenharmony_ci    Please refer to the ARB_texture_float extension.
315bd8deadSopenharmony_ci
325bd8deadSopenharmony_ciStatus
335bd8deadSopenharmony_ci
345bd8deadSopenharmony_ci    Ratified by the Khronos BOP, July 22, 2005.
355bd8deadSopenharmony_ci
365bd8deadSopenharmony_ciVersion
375bd8deadSopenharmony_ci
385bd8deadSopenharmony_ci    Revision 3, September 21, 2018
395bd8deadSopenharmony_ci
405bd8deadSopenharmony_ciNumber
415bd8deadSopenharmony_ci
425bd8deadSopenharmony_ci    OpenGL ES Extension #35
435bd8deadSopenharmony_ci
445bd8deadSopenharmony_ciDependencies
455bd8deadSopenharmony_ci
465bd8deadSopenharmony_ci    This extension is written against the OpenGL ES 2.0 Specification.
475bd8deadSopenharmony_ci
485bd8deadSopenharmony_ci    This extension is derived from the ARB_texture_float extension.
495bd8deadSopenharmony_ci
505bd8deadSopenharmony_ci    Either
515bd8deadSopenharmony_ci     - OES_texture_half_float and OES_texture_float are required.
525bd8deadSopenharmony_ci    or
535bd8deadSopenharmony_ci     - OpenGL ES 3.0 is required.
545bd8deadSopenharmony_ci
555bd8deadSopenharmony_ciOverview
565bd8deadSopenharmony_ci
575bd8deadSopenharmony_ci    These extensions expand upon the OES_texture_half_float and
585bd8deadSopenharmony_ci    OES_texture_float extensions by allowing support for LINEAR
595bd8deadSopenharmony_ci    magnification filter and LINEAR, NEAREST_MIPMAP_LINEAR,
605bd8deadSopenharmony_ci    LINEAR_MIPMAP_NEAREST and LINEAR_MIPMAP_NEAREST minification
615bd8deadSopenharmony_ci    filters.
625bd8deadSopenharmony_ci
635bd8deadSopenharmony_ci    When implemented against OpenGL ES 3.0 or later versions, the
645bd8deadSopenharmony_ci    existing sized 32-bit floating-point formats become texture-filterable,
655bd8deadSopenharmony_ci    but no new formats are added.
665bd8deadSopenharmony_ci
675bd8deadSopenharmony_ci
685bd8deadSopenharmony_ci(  Only when implemented against OpenGL ES 3.0  )
695bd8deadSopenharmony_ci
705bd8deadSopenharmony_ciAdditions to Chapter 3.8.3 of the OpenGL ES 3.0 Specification
715bd8deadSopenharmony_ci(Texture Image Specification)
725bd8deadSopenharmony_ci
735bd8deadSopenharmony_ci    Modify Table 3.13, Correspondence of sized internal color formats to base internal format:
745bd8deadSopenharmony_ci
755bd8deadSopenharmony_ci    Check the ``Texture-filterable'' column for the R32F, RG32F, RGB32F, and RGBA32F formats.
765bd8deadSopenharmony_ci
775bd8deadSopenharmony_ci
785bd8deadSopenharmony_ciIssues
795bd8deadSopenharmony_ci
805bd8deadSopenharmony_ci   (1) Can you explain the interactions with OpenGL ES 3.x in more detail?
815bd8deadSopenharmony_ci
825bd8deadSopenharmony_ci      OES_texture_float was written against OpenGL ES 2.0 and adds a set of
835bd8deadSopenharmony_ci      new unsized formats, including floating-point versions of LUMINANCE and
845bd8deadSopenharmony_ci      LUMINANCE_ALPHA formats.
855bd8deadSopenharmony_ci
865bd8deadSopenharmony_ci      OES_texture_float_linear and OES_texture_half_float_linear makes these
875bd8deadSopenharmony_ci      formats filterable for FLOAT and HALF_FLOAT_OES types, respectively.
885bd8deadSopenharmony_ci
895bd8deadSopenharmony_ci      OpenGL ES 3.0 added sized internal formats. The unsized formats and
905bd8deadSopenharmony_ci      the LUMINANCE formats are considered legacy formats. Floating point
915bd8deadSopenharmony_ci      versions of these formats were therefore not added in OpenGL ES 3.0.
925bd8deadSopenharmony_ci
935bd8deadSopenharmony_ci      Further, OpenGL ES 3.0 requires that the required floating-point
945bd8deadSopenharmony_ci      formats with 16-bits per component ('half-float') are filterable, but
955bd8deadSopenharmony_ci      does not support filtering for floating-point formats with 32-bits per
965bd8deadSopenharmony_ci      component.
975bd8deadSopenharmony_ci
985bd8deadSopenharmony_ci      Some OpenGL ES 3.0 implementations want a way to indicate that the
995bd8deadSopenharmony_ci      required floating-point formats with 32-bit per component are also
1005bd8deadSopenharmony_ci      filterable _without_ adding the additional unsized formats from
1015bd8deadSopenharmony_ci      OES_texture_float. This is achieved by exposing this extension without
1025bd8deadSopenharmony_ci      exposing OES_texture_float.
1035bd8deadSopenharmony_ci
1045bd8deadSopenharmony_ci      For an OpenGL ES 3.0 implementation, the following holds for the
1055bd8deadSopenharmony_ci      combination of the OES_texture_float, OES_texture_float_linear,
1065bd8deadSopenharmony_ci      and OES_texture_half_float_linear extensions:
1075bd8deadSopenharmony_ci
1085bd8deadSopenharmony_ci        - If none of these extensions are supported:
1095bd8deadSopenharmony_ci           - floating-point formats with 32-bit per component are not filterable
1105bd8deadSopenharmony_ci           - floating-point formats with 16-bit per component are filterable
1115bd8deadSopenharmony_ci
1125bd8deadSopenharmony_ci        - If OES_texture_float_linear is supported:
1135bd8deadSopenharmony_ci           - all floating-point formats in Table 3.13 are filterable
1145bd8deadSopenharmony_ci
1155bd8deadSopenharmony_ci        - If OES_texture_float and OES_texture_float_linear are supported:
1165bd8deadSopenharmony_ci           - all floating-point formats in Table 3.13 are filterable
1175bd8deadSopenharmony_ci           - all formats of type FLOAT added by OES_texture_float are filterable
1185bd8deadSopenharmony_ci
1195bd8deadSopenharmony_ci        - If OES_texture_half_float and OES_texture_half_float_linear are
1205bd8deadSopenharmony_ci           supported:
1215bd8deadSopenharmony_ci           - all floating-point formats in Table 3.13 are filterable
1225bd8deadSopenharmony_ci           - all formats of type HALF_FLOAT_OES added by OES_texture_half_float
1235bd8deadSopenharmony_ci             are filterable
1245bd8deadSopenharmony_ci
1255bd8deadSopenharmony_ciNew Procedures and Functions
1265bd8deadSopenharmony_ci
1275bd8deadSopenharmony_ci   None
1285bd8deadSopenharmony_ci
1295bd8deadSopenharmony_ciNew Tokens
1305bd8deadSopenharmony_ci
1315bd8deadSopenharmony_ci   None
1325bd8deadSopenharmony_ci
1335bd8deadSopenharmony_ciRevision History
1345bd8deadSopenharmony_ci
1355bd8deadSopenharmony_ci    07/06/2005  0.1   Original draft
1365bd8deadSopenharmony_ci
1375bd8deadSopenharmony_ci    10/29/2014  2     Add interactions with ES 3.0/3.1.
1385bd8deadSopenharmony_ci
1395bd8deadSopenharmony_ci    09/21/2018  3     Clarified interactions with ES 3.x.
140