15bd8deadSopenharmony_ciName 25bd8deadSopenharmony_ci 35bd8deadSopenharmony_ci EXT_texture_norm16 45bd8deadSopenharmony_ci 55bd8deadSopenharmony_ciName Strings 65bd8deadSopenharmony_ci 75bd8deadSopenharmony_ci GL_EXT_texture_norm16 85bd8deadSopenharmony_ci 95bd8deadSopenharmony_ciContributors 105bd8deadSopenharmony_ci 115bd8deadSopenharmony_ci Contributors to EXT_texture_snorm 125bd8deadSopenharmony_ci Daniel Koch, NVIDIA 135bd8deadSopenharmony_ci Jan-Harald Fredriksen, ARM 145bd8deadSopenharmony_ci 155bd8deadSopenharmony_ciContact 165bd8deadSopenharmony_ci 175bd8deadSopenharmony_ci Mathias Heyer, NVIDIA (mheyer [at] nvidia.com) 185bd8deadSopenharmony_ci 195bd8deadSopenharmony_ciStatus 205bd8deadSopenharmony_ci 215bd8deadSopenharmony_ci Complete 225bd8deadSopenharmony_ci 235bd8deadSopenharmony_ciVersion 245bd8deadSopenharmony_ci 255bd8deadSopenharmony_ci Last Modified Date: 2014-10-24 265bd8deadSopenharmony_ci Revision: 5 275bd8deadSopenharmony_ci 285bd8deadSopenharmony_ciNumber 295bd8deadSopenharmony_ci 305bd8deadSopenharmony_ci OpenGL ES Extension #207 315bd8deadSopenharmony_ci 325bd8deadSopenharmony_ciDependencies 335bd8deadSopenharmony_ci 345bd8deadSopenharmony_ci OpenGL ES 3.1 is required. 355bd8deadSopenharmony_ci 365bd8deadSopenharmony_ci This extension is written against the OpenGL ES 3.1 (June 4, 2014) 375bd8deadSopenharmony_ci specification. 385bd8deadSopenharmony_ci 395bd8deadSopenharmony_ci This extension interacts with EXT_texture_buffer. 405bd8deadSopenharmony_ci 415bd8deadSopenharmony_ci This extension interacts with EXT_texture_view. 425bd8deadSopenharmony_ci 435bd8deadSopenharmony_ci This extension interacts with OES_texture_storage_multisample_2d_array. 445bd8deadSopenharmony_ci 455bd8deadSopenharmony_ci This extension interacts with EXT_copy_image. 465bd8deadSopenharmony_ci 475bd8deadSopenharmony_ci This extension interacts with EXT_texture_compression_s3tc. 485bd8deadSopenharmony_ci 495bd8deadSopenharmony_ci This extension interacts with EXT_texture_compression_rgtc. 505bd8deadSopenharmony_ci 515bd8deadSopenharmony_ci This extension interacts with NV_texture_compression_s3tc. 525bd8deadSopenharmony_ci 535bd8deadSopenharmony_ci This extension interacts with NV_sRGB_formats. 545bd8deadSopenharmony_ci 555bd8deadSopenharmony_ciOverview 565bd8deadSopenharmony_ci 575bd8deadSopenharmony_ci OpenGL ES 3.1 supports 8-bit (signed) normalized textures. 585bd8deadSopenharmony_ci 595bd8deadSopenharmony_ci This extension provides a set of new 16 bit signed normalized and 605bd8deadSopenharmony_ci unsigned normalized fixed point texture, renderbuffer and 615bd8deadSopenharmony_ci texture buffer formats. 625bd8deadSopenharmony_ci 635bd8deadSopenharmony_ci 645bd8deadSopenharmony_ciNew Procedures and Functions 655bd8deadSopenharmony_ci 665bd8deadSopenharmony_ci None 675bd8deadSopenharmony_ci 685bd8deadSopenharmony_ciNew Tokens 695bd8deadSopenharmony_ci 705bd8deadSopenharmony_ci 715bd8deadSopenharmony_ci Accepted by the <internalFormat> parameter of TexImage2D,TexImage3D, 725bd8deadSopenharmony_ci TexStorage2D, TexStorage3D and TexStorage2DMultisample, 735bd8deadSopenharmony_ci TexStorage3DMultisampleOES, TexBufferEXT, TexBufferRangeEXT, 745bd8deadSopenharmony_ci TextureViewEXT, RenderbufferStorage and RenderbufferStorageMultisample: 755bd8deadSopenharmony_ci 765bd8deadSopenharmony_ci R16_EXT 0x822A 775bd8deadSopenharmony_ci RG16_EXT 0x822C 785bd8deadSopenharmony_ci RGBA16_EXT 0x805B 795bd8deadSopenharmony_ci 805bd8deadSopenharmony_ci Accepted by the <internalFormat> parameter of TexImage2D,TexImage3D, 815bd8deadSopenharmony_ci TexStorage2D, TexStorage3D, TexStorage2DMultisample, 825bd8deadSopenharmony_ci TexStorage3DMultisampleOES and TextureViewEXT: 835bd8deadSopenharmony_ci 845bd8deadSopenharmony_ci RGB16_EXT 0x8054 855bd8deadSopenharmony_ci 865bd8deadSopenharmony_ci R16_SNORM_EXT 0x8F98 875bd8deadSopenharmony_ci RG16_SNORM_EXT 0x8F99 885bd8deadSopenharmony_ci RGB16_SNORM_EXT 0x8F9A 895bd8deadSopenharmony_ci RGBA16_SNORM_EXT 0x8F9B 905bd8deadSopenharmony_ci 915bd8deadSopenharmony_ci 925bd8deadSopenharmony_ciAdditions to Chapter 8 of the OpenGL ES 3.1 Specification 935bd8deadSopenharmony_ci(Textures and Samplers) 945bd8deadSopenharmony_ci 955bd8deadSopenharmony_ci Add to Table 4.X.1 (introduced by EXT_copy_image) "Compatible internal 965bd8deadSopenharmony_ci Formats for copying between compressed and uncompressed...." 975bd8deadSopenharmony_ci 985bd8deadSopenharmony_ci ------------------------------------------------------------------------------ 995bd8deadSopenharmony_ci | 64-bit | RGBA16_EXT, | COMPRESSED_RGB_S3TC_DXT1_EXT, | 1005bd8deadSopenharmony_ci | | RGBA16_SNORM_EXT | COMPRESSED_SRGB_S3TC_DXT1_NV, | 1015bd8deadSopenharmony_ci | | | COMPRESSED_RGBA_S3TC_DXT1_EXT, | 1025bd8deadSopenharmony_ci | | | COMPRESSED_SRGB_ALPHA_S3TC_DXT1_NV, | 1035bd8deadSopenharmony_ci | | | COMPRESSED_RED_RGTC1_EXT, | 1045bd8deadSopenharmony_ci | | | COMPRESSED_SIGNED_RED_RGTC1_EXT, | 1055bd8deadSopenharmony_ci | | | COMPRESSED_RGB8_ETC2, | 1065bd8deadSopenharmony_ci | | | COMPRESSED_SRGB8_ETC2, | 1075bd8deadSopenharmony_ci | | | COMPRESSED_R11_EAC, | 1085bd8deadSopenharmony_ci | | | COMPRESSED_SIGNED_R11_EAC, | 1095bd8deadSopenharmony_ci | | | COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2, | 1105bd8deadSopenharmony_ci | | | COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 | 1115bd8deadSopenharmony_ci ------------------------------------------------------------------------------ 1125bd8deadSopenharmony_ci 1135bd8deadSopenharmony_ci Add a row to Table 8.2 "Valid combinations of format, type and sized 1145bd8deadSopenharmony_ci internal formats": 1155bd8deadSopenharmony_ci 1165bd8deadSopenharmony_ci Format Type External Bytes Internal Format 1175bd8deadSopenharmony_ci per Pixel 1185bd8deadSopenharmony_ci --------------- --------------- --------------- --------------- 1195bd8deadSopenharmony_ci RED UNSIGNED_SHORT 2 R16_EXT 1205bd8deadSopenharmony_ci RG UNSIGNED_SHORT 4 RG16_EXT 1215bd8deadSopenharmony_ci RGB UNSIGNED_SHORT 6 RGB16_EXT 1225bd8deadSopenharmony_ci RGBA UNSIGNED_SHORT 8 RGBA16_EXT 1235bd8deadSopenharmony_ci 1245bd8deadSopenharmony_ci RED SHORT 2 R16_SNORM_EXT 1255bd8deadSopenharmony_ci RG SHORT 4 RG16_SNORM_EXT 1265bd8deadSopenharmony_ci RGB SHORT 6 RGB16_SNORM_EXT 1275bd8deadSopenharmony_ci RGBA SHORT 8 RGBA16_SNORM_EXT 1285bd8deadSopenharmony_ci 1295bd8deadSopenharmony_ci 1305bd8deadSopenharmony_ci Add to Table 8.13 "Correspondence of sized internal formats to base 1315bd8deadSopenharmony_ci internal formats,...": 1325bd8deadSopenharmony_ci 1335bd8deadSopenharmony_ci Sized Base Bits/component CR TF Req. Req. 1345bd8deadSopenharmony_ci Internal Internal S are shared bits rend. tex. 1355bd8deadSopenharmony_ci Format Format R G B A S 1365bd8deadSopenharmony_ci ------------ ----------- ---- ---- ---- --- ---- --- --- ---- --- 1375bd8deadSopenharmony_ci R16_EXT RED 16 X X X X 1385bd8deadSopenharmony_ci RG16_EXT RG 16 16 X X X X 1395bd8deadSopenharmony_ci RGB16_EXT RGB 16 16 16 - X - X 1405bd8deadSopenharmony_ci RGBA16_EXT RGBA 16 16 16 16 X X X X 1415bd8deadSopenharmony_ci 1425bd8deadSopenharmony_ci R16_SNORM_EXT RED s16 - X - X 1435bd8deadSopenharmony_ci RG16_SNORM_EXT RG s16 s16 - X - X 1445bd8deadSopenharmony_ci RGB16_SNORM_EXT RGB s16 s16 s16 - X - X 1455bd8deadSopenharmony_ci RGBA16_SNORM_EXT RGBA s16 s16 s16 s16 - X - X 1465bd8deadSopenharmony_ci 1475bd8deadSopenharmony_ci Add to Table 8.15: "ReadPixels format and type used during CopyTex*." 1485bd8deadSopenharmony_ci 1495bd8deadSopenharmony_ci Read Buffer Format format type 1505bd8deadSopenharmony_ci ------------------------------------- ------ -------------- 1515bd8deadSopenharmony_ci 16bit Unsigned Normalized Fixed-point RGBA UNSIGNED_SHORT 1525bd8deadSopenharmony_ci 1535bd8deadSopenharmony_ci 1545bd8deadSopenharmony_ci Add to Table 8.X.2 "Compatible internal formats for TextureViewEXT. ..." 1555bd8deadSopenharmony_ci 1565bd8deadSopenharmony_ci -------------------------------------------------------------------------- 1575bd8deadSopenharmony_ci | Class | Internal formats | 1585bd8deadSopenharmony_ci -------------------------------------------------------------------------- 1595bd8deadSopenharmony_ci | VIEW_CLASS_64_BITS | RGBA16_EXT, RGBA16_SNORM_EXT | 1605bd8deadSopenharmony_ci -------------------------------------------------------------------------- 1615bd8deadSopenharmony_ci | VIEW_CLASS_48_BITS | RGB16_EXT, RGB16_SNORM_EXT | 1625bd8deadSopenharmony_ci -------------------------------------------------------------------------- 1635bd8deadSopenharmony_ci | VIEW_CLASS_32_BITS | RG16_EXT, RG16_SNORM_EXT | 1645bd8deadSopenharmony_ci -------------------------------------------------------------------------- 1655bd8deadSopenharmony_ci | VIEW_CLASS_16_BITS | R16_EXT, R16_SNORM_EXT | 1665bd8deadSopenharmony_ci -------------------------------------------------------------------------- 1675bd8deadSopenharmony_ci 1685bd8deadSopenharmony_ci (If EXT_texture_view is not supported, this additions will apply to 1695bd8deadSopenharmony_ci Table 4.X.2 "Compatible internal formats for CopyImageSubDataEXT" as 1705bd8deadSopenharmony_ci introduced by EXT_copy_image) 1715bd8deadSopenharmony_ci 1725bd8deadSopenharmony_ci 1735bd8deadSopenharmony_ci Add to Table texbo1, "Internal Formats for Buffer Textures. ..." 1745bd8deadSopenharmony_ci 1755bd8deadSopenharmony_ci Component 1765bd8deadSopenharmony_ci Sized Internal Format Base Type Components Norm 0 1 2 3 1775bd8deadSopenharmony_ci --------------------- --------- ---------- ---- --------- 1785bd8deadSopenharmony_ci R16_EXT ushort 1 Yes R 0 0 1 1795bd8deadSopenharmony_ci RG16_EXT ushort 2 Yes R G 0 1 1805bd8deadSopenharmony_ci RGBA16_EXT ushort 4 Yes R G B A 1815bd8deadSopenharmony_ci 1825bd8deadSopenharmony_ci 1835bd8deadSopenharmony_ciAdditions to Chapter 15 of the OpenGL ES 3.1 Specification 1845bd8deadSopenharmony_ci(Writing Fragments and Samples to the Framebuffer) 1855bd8deadSopenharmony_ci 1865bd8deadSopenharmony_ci Add to the second paragraph of Section 16.1.2 "ReadPixels": 1875bd8deadSopenharmony_ci 1885bd8deadSopenharmony_ci "For 16bit unsigned normalized fixed-point rendering surfaces, 1895bd8deadSopenharmony_ci the combination format RGBA and type UNSIGNED_SHORT is accepted." 1905bd8deadSopenharmony_ci 1915bd8deadSopenharmony_ciErrors 1925bd8deadSopenharmony_ci 1935bd8deadSopenharmony_ci No new errors. 1945bd8deadSopenharmony_ci 1955bd8deadSopenharmony_ciInteractions with EXT_texture_buffer 1965bd8deadSopenharmony_ci 1975bd8deadSopenharmony_ci If EXT_texture_buffer is not supported, remove references to TexBufferEXT 1985bd8deadSopenharmony_ci and TexBufferRangeEXT. Also remove additions to Table textbo1. 1995bd8deadSopenharmony_ci 2005bd8deadSopenharmony_ci 2015bd8deadSopenharmony_ciInteractions with EXT_texture_view 2025bd8deadSopenharmony_ci 2035bd8deadSopenharmony_ci If EXT_texture_view is not supported, remove references to TextureViewEXT. 2045bd8deadSopenharmony_ci Also remove additions to Table 8.X.2. 2055bd8deadSopenharmony_ci 2065bd8deadSopenharmony_ciInteractions with OES_texture_storage_multisample_2d_array 2075bd8deadSopenharmony_ci 2085bd8deadSopenharmony_ci If OES_texture_storage_multisample_2d_array is not supported, remove 2095bd8deadSopenharmony_ci references to TexStorage3DMultisampleOES 2105bd8deadSopenharmony_ci 2115bd8deadSopenharmony_ciInteractions with EXT_copy_image 2125bd8deadSopenharmony_ci 2135bd8deadSopenharmony_ci If EXT_copy_image is not supported, remove additions to Table 8.X.2. 2145bd8deadSopenharmony_ci (If EXT_texture_view is not supported remove references to Table 4.X.2) 2155bd8deadSopenharmony_ci 2165bd8deadSopenharmony_ciInteractions with EXT_texture_compression_s3tc (or equivalent): 2175bd8deadSopenharmony_ci 2185bd8deadSopenharmony_ci If EXT_texture_compression_s3tc or similar functionality (i.e. 2195bd8deadSopenharmony_ci NV_texture_compression_s3tc etc) is not supported, ignore references 2205bd8deadSopenharmony_ci to the following texture formats: COMPRESSED_RGB_S3TC_DXT1_EXT and 2215bd8deadSopenharmony_ci COMPRESSED_RGBA_S3TC_DXT1_EXT. 2225bd8deadSopenharmony_ci 2235bd8deadSopenharmony_ciInteractions with NV_sRGB_formats (or equivalent): 2245bd8deadSopenharmony_ci 2255bd8deadSopenharmony_ci If NV_sRGB_formats or similar functionality is not 2265bd8deadSopenharmony_ci supported, ignore references to the following texture formats: 2275bd8deadSopenharmony_ci COMPRESSED_SRGB_S3TC_DXT1_NV and COMPRESSED_SRGB_ALPHA_S3TC_DXT1_NV. 2285bd8deadSopenharmony_ci 2295bd8deadSopenharmony_ciInteractions with EXT_texture_compression_rgtc (or equivalent): 2305bd8deadSopenharmony_ci 2315bd8deadSopenharmony_ci If EXT_texture_compression_rgtc or equivalent functionality is not 2325bd8deadSopenharmony_ci supported, ignore references to the following texture formats: 2335bd8deadSopenharmony_ci COMPRESSED_RED_RGTC1_EXT, COMPRESSED_SIGNED_RED_RGTC1_EXT. 2345bd8deadSopenharmony_ci 2355bd8deadSopenharmony_ciIssues 2365bd8deadSopenharmony_ci 2375bd8deadSopenharmony_ci None yet. 2385bd8deadSopenharmony_ci 2395bd8deadSopenharmony_ciRevision History: 2405bd8deadSopenharmony_ci 2415bd8deadSopenharmony_ci Revision 1 2014-07-03 (mheyer) 2425bd8deadSopenharmony_ci initial revision 2435bd8deadSopenharmony_ci Revision 2 2014-07-18 (mheyer) 2445bd8deadSopenharmony_ci add EXT_texture_buffer, EXT_texture_view, EXT_copy_image and 2455bd8deadSopenharmony_ci OES_texture_storage_multisample_2d_array interactions 2465bd8deadSopenharmony_ci Revision 3 2014-07-18 (mheyer) 2475bd8deadSopenharmony_ci rename to NV_texture_norm16, mark SNORM formats as non color-renderable 2485bd8deadSopenharmony_ci Revision 4 2014-08-05 (mheyer) 2495bd8deadSopenharmony_ci rename to EXT_texture_norm16, added interactions with compressed 2505bd8deadSopenharmony_ci texture format extensions 2515bd8deadSopenharmony_ci Revision: 5 2014-10-24 (dkoch) 2525bd8deadSopenharmony_ci mark complete, publishing cleanup 253