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