15bd8deadSopenharmony_ciName 25bd8deadSopenharmony_ci 35bd8deadSopenharmony_ci ANGLE_depth_texture 45bd8deadSopenharmony_ci 55bd8deadSopenharmony_ciName Strings 65bd8deadSopenharmony_ci 75bd8deadSopenharmony_ci GL_ANGLE_depth_texture 85bd8deadSopenharmony_ci 95bd8deadSopenharmony_ciContributors 105bd8deadSopenharmony_ci 115bd8deadSopenharmony_ci Nicolas Capens, TransGaming / Google 125bd8deadSopenharmony_ci Daniel Koch, TransGaming / NVIDIA 135bd8deadSopenharmony_ci Shannon Woods, TransGaming / Google 145bd8deadSopenharmony_ci Kenneth Russell, Google 155bd8deadSopenharmony_ci Vangelis Kokkevis, Google 165bd8deadSopenharmony_ci Gregg Tavares, Google 175bd8deadSopenharmony_ci Contributors to OES_depth_texture 185bd8deadSopenharmony_ci Contributors to OES_packed_depth_stencil 195bd8deadSopenharmony_ci 205bd8deadSopenharmony_ciContact 215bd8deadSopenharmony_ci 225bd8deadSopenharmony_ci Shannon Woods, Google (shannonwoods 'at' google.com) 235bd8deadSopenharmony_ci 245bd8deadSopenharmony_ciStatus 255bd8deadSopenharmony_ci 265bd8deadSopenharmony_ci Implemented in ANGLE. 275bd8deadSopenharmony_ci 285bd8deadSopenharmony_ciVersion 295bd8deadSopenharmony_ci 305bd8deadSopenharmony_ci Last Modified Date: February 25, 2013 315bd8deadSopenharmony_ci Revision: #4 325bd8deadSopenharmony_ci 335bd8deadSopenharmony_ciNumber 345bd8deadSopenharmony_ci 355bd8deadSopenharmony_ci OpenGL ES Extension #138 365bd8deadSopenharmony_ci 375bd8deadSopenharmony_ciDependencies 385bd8deadSopenharmony_ci 395bd8deadSopenharmony_ci OpenGL ES 2.0 is required. 405bd8deadSopenharmony_ci This extension is written against the OpenGL ES 2.0.25 specification 415bd8deadSopenharmony_ci 425bd8deadSopenharmony_ci OES_packed_depth_stencil affects the definition of this extension. 435bd8deadSopenharmony_ci 445bd8deadSopenharmony_ci EXT_texture_storage affects the definition of this extension. 455bd8deadSopenharmony_ci 465bd8deadSopenharmony_ciOverview 475bd8deadSopenharmony_ci 485bd8deadSopenharmony_ci This extension defines support for 2D depth and depth-stencil 495bd8deadSopenharmony_ci textures in an OpenGL ES implementation. 505bd8deadSopenharmony_ci 515bd8deadSopenharmony_ci This extension incorporates the depth texturing functionality of 525bd8deadSopenharmony_ci OES_depth_texture and OES_packed_depth_stencil, but does not 535bd8deadSopenharmony_ci provide the ability to load existing data via TexImage2D or 545bd8deadSopenharmony_ci TexSubImage2D. This extension also allows implementation 555bd8deadSopenharmony_ci variability in which components from a sampled depth texture 565bd8deadSopenharmony_ci contain the depth data. Depth textures created with this 575bd8deadSopenharmony_ci extension only support 1 level. 585bd8deadSopenharmony_ci 595bd8deadSopenharmony_ciNew Procedures and Functions 605bd8deadSopenharmony_ci 615bd8deadSopenharmony_ci None 625bd8deadSopenharmony_ci 635bd8deadSopenharmony_ciNew Tokens 645bd8deadSopenharmony_ci 655bd8deadSopenharmony_ci Accepted by the <format> parameter of TexImage2D and TexSubImage2D and 665bd8deadSopenharmony_ci <internalformat> parameter of TexImage2D: 675bd8deadSopenharmony_ci 685bd8deadSopenharmony_ci DEPTH_COMPONENT 0x1902 695bd8deadSopenharmony_ci DEPTH_STENCIL_OES 0x84F9 705bd8deadSopenharmony_ci 715bd8deadSopenharmony_ci Accepted by the <type> parameter of TexImage2D, TexSubImage2D: 725bd8deadSopenharmony_ci 735bd8deadSopenharmony_ci UNSIGNED_SHORT 0x1403 745bd8deadSopenharmony_ci UNSIGNED_INT 0x1405 755bd8deadSopenharmony_ci UNSIGNED_INT_24_8_OES 0x84FA 765bd8deadSopenharmony_ci 775bd8deadSopenharmony_ci Accepted by the <internalformat> parameter of TexStorage2DEXT: 785bd8deadSopenharmony_ci 795bd8deadSopenharmony_ci DEPTH_COMPONENT16 0x81A5 805bd8deadSopenharmony_ci DEPTH_COMPONENT32_OES 0x81A7 815bd8deadSopenharmony_ci DEPTH24_STENCIL8_OES 0x88F0 825bd8deadSopenharmony_ci 835bd8deadSopenharmony_ciAdditions to Chapter 2 of the OpenGL ES 2.0 Specification (OpenGL Operation) 845bd8deadSopenharmony_ci 855bd8deadSopenharmony_ci Update Section 2.10.5 "Shader Execution" in the subsection titled 865bd8deadSopenharmony_ci "Texture Access" add a new paragraph before the last paragraph add 875bd8deadSopenharmony_ci this line: 885bd8deadSopenharmony_ci 895bd8deadSopenharmony_ci "The stencil index texture internal component is ignored if the base 905bd8deadSopenharmony_ci internal format is DEPTH_STENCIL_OES. 915bd8deadSopenharmony_ci 925bd8deadSopenharmony_ci If a vertex shader uses..." 935bd8deadSopenharmony_ci 945bd8deadSopenharmony_ciAdditions to Chapter 3 of the OpenGL ES 2.0 specification (Rasterization) 955bd8deadSopenharmony_ci 965bd8deadSopenharmony_ci Add the following rows to Table 3.2 (page 62): 975bd8deadSopenharmony_ci 985bd8deadSopenharmony_ci type Parameter GL Data Type Special 995bd8deadSopenharmony_ci ------------------------------------------------ 1005bd8deadSopenharmony_ci ... ... ... 1015bd8deadSopenharmony_ci UNSIGNED_SHORT ushort No 1025bd8deadSopenharmony_ci UNSIGNED_INT uint No 1035bd8deadSopenharmony_ci UNSIGNED_INT_24_8_OES uint Yes 1045bd8deadSopenharmony_ci 1055bd8deadSopenharmony_ci Add the following rows to Table 3.3 (page 62): 1065bd8deadSopenharmony_ci 1075bd8deadSopenharmony_ci Format Name Element Meaning and Order Target Buffer 1085bd8deadSopenharmony_ci ------------------------------------------------------------------ 1095bd8deadSopenharmony_ci ... ... ... 1105bd8deadSopenharmony_ci DEPTH_COMPONENT Depth Depth 1115bd8deadSopenharmony_ci DEPTH_STENCIL_OES Depth and Stencil Index Depth and Stencil 1125bd8deadSopenharmony_ci ... ... ... 1135bd8deadSopenharmony_ci 1145bd8deadSopenharmony_ci Add a row to Table 3.5 "Packed pixel formats" (page 64): 1155bd8deadSopenharmony_ci 1165bd8deadSopenharmony_ci type Parameter GL Type Components Pixel Formats 1175bd8deadSopenharmony_ci ------------------------------------------------------------------ 1185bd8deadSopenharmony_ci ... ... ... ... 1195bd8deadSopenharmony_ci UNSIGNED_INT_24_8_OES uint 2 DEPTH_STENCIL_OES 1205bd8deadSopenharmony_ci 1215bd8deadSopenharmony_ci Add a new table after Table 3.6 (page 64): 1225bd8deadSopenharmony_ci 1235bd8deadSopenharmony_ci UNSIGNED_INT_24_8_OES 1245bd8deadSopenharmony_ci 1255bd8deadSopenharmony_ci 31 30 29 28 27 26 ... 12 11 10 9 8 7 6 5 4 3 2 1 0 1265bd8deadSopenharmony_ci +----------------------------------+---------------+ 1275bd8deadSopenharmony_ci | 1st Component | 2nd Component | 1285bd8deadSopenharmony_ci +----------------------------------+---------------+ 1295bd8deadSopenharmony_ci 1305bd8deadSopenharmony_ci Table 3.6.B: UNSIGNED_INT formats 1315bd8deadSopenharmony_ci 1325bd8deadSopenharmony_ci Add a row to Table 3.7 "Packed pixel field assignments" (page 65): 1335bd8deadSopenharmony_ci 1345bd8deadSopenharmony_ci Format | 1st 2nd 3rd 4th 1355bd8deadSopenharmony_ci ------------------+------------------------------- 1365bd8deadSopenharmony_ci ... | ... ... ... ... 1375bd8deadSopenharmony_ci DEPTH_STENCIL_OES | depth stencil N/A N/A 1385bd8deadSopenharmony_ci 1395bd8deadSopenharmony_ci Add the following paragraph to the end of the section "Conversion to 1405bd8deadSopenharmony_ci floating-point" (page 65): 1415bd8deadSopenharmony_ci 1425bd8deadSopenharmony_ci "For groups of components that contain both standard components and index 1435bd8deadSopenharmony_ci elements, such as DEPTH_STENCIL_OES, the index elements are not converted." 1445bd8deadSopenharmony_ci 1455bd8deadSopenharmony_ci In section 3.7.1 "Texture Image Specification", update page 67 to 1465bd8deadSopenharmony_ci say: 1475bd8deadSopenharmony_ci 1485bd8deadSopenharmony_ci "The selected groups are processed as described in section 3.6.2, stopping 1495bd8deadSopenharmony_ci just before final conversion. Each R, G, B, A, or depth value so generated 1505bd8deadSopenharmony_ci is clamped to [0, 1], while the stencil index values are masked by 2^n-1, 1515bd8deadSopenharmony_ci where n is the number of stencil bits in the internal format resolution 1525bd8deadSopenharmony_ci (see below). 1535bd8deadSopenharmony_ci 1545bd8deadSopenharmony_ci Components are then selected from the resulting R, G, B, A, depth, or 1555bd8deadSopenharmony_ci stencil index values to obtain a texture with the base internal format 1565bd8deadSopenharmony_ci specified by <internalformat>. Table 3.8 summarizes the mapping of R, G, 1575bd8deadSopenharmony_ci B, A, depth, or stencil values to texture components, as a function of the 1585bd8deadSopenharmony_ci base internal format of the texture image. <internalformat> may be 1595bd8deadSopenharmony_ci specified as one of the internal format symbolic constants listed in 1605bd8deadSopenharmony_ci table 3.8. Specifying a value for <internalformat> that is not one of the 1615bd8deadSopenharmony_ci above values generates the error INVALID_VALUE. If <internalformat> does 1625bd8deadSopenharmony_ci not match <format>, the error INVALID_OPERATION is generated. 1635bd8deadSopenharmony_ci 1645bd8deadSopenharmony_ci Textures with a base internal format of DEPTH_COMPONENT or 1655bd8deadSopenharmony_ci DEPTH_STENCIL_OES are supported by texture image specification commands 1665bd8deadSopenharmony_ci only if <target> is TEXTURE_2D. Using these formats in conjunction with 1675bd8deadSopenharmony_ci any other <target> will result in an INVALID_OPERATION error. 1685bd8deadSopenharmony_ci 1695bd8deadSopenharmony_ci Textures with a base internal format of DEPTH_COMPONENT or 1705bd8deadSopenharmony_ci DEPTH_STENCIL_OES only support one level of image data. Specifying a 1715bd8deadSopenharmony_ci non-zero value for <level> will result in an INVALID_OPERATION error. 1725bd8deadSopenharmony_ci 1735bd8deadSopenharmony_ci Textures with a base internal format of DEPTH_COMPONENT or DEPTH_STENCIL_OES 1745bd8deadSopenharmony_ci require either depth component data or depth/stencil component data. 1755bd8deadSopenharmony_ci Textures with other base internal formats require RGBA component data. The 1765bd8deadSopenharmony_ci error INVALID_OPERATION is generated if the base internal format is 1775bd8deadSopenharmony_ci DEPTH_COMPONENT or DEPTH_STENCIL_OES and <format> is not DEPTH_COMPONENT or 1785bd8deadSopenharmony_ci DEPTH_STENCIL_OES, or if the base internal format is not DEPTH_COMPONENT or 1795bd8deadSopenharmony_ci DEPTH_STENCIL_OES and <format> is DEPTH_COMPONENT or DEPTH_STENCIL_OES. 1805bd8deadSopenharmony_ci 1815bd8deadSopenharmony_ci Textures with a base internal format of DEPTH_COMPONENT or 1825bd8deadSopenharmony_ci DEPTH_STENCIL_OES do not support loading image data via the TexImage 1835bd8deadSopenharmony_ci commands. They can only have their contents specified by rendering 1845bd8deadSopenharmony_ci to them. The INVALID_OPERATION error is generated by the TexImage2D 1855bd8deadSopenharmony_ci command if <data> is not NULL for such textures." 1865bd8deadSopenharmony_ci 1875bd8deadSopenharmony_ci Add a row to table 3.8 (page 68), and update the title of the 1885bd8deadSopenharmony_ci second column: 1895bd8deadSopenharmony_ci 1905bd8deadSopenharmony_ci Base Internal Format RGBA, Depth and Stencil Values Internal Components 1915bd8deadSopenharmony_ci ------------------------------------------------------------------------- 1925bd8deadSopenharmony_ci ... ... ... 1935bd8deadSopenharmony_ci DEPTH_COMPONENT Depth D 1945bd8deadSopenharmony_ci DEPTH_STENCIL_OES Depth,Stencil D,S 1955bd8deadSopenharmony_ci ... ... ... 1965bd8deadSopenharmony_ci 1975bd8deadSopenharmony_ci Update the caption for table 3.8 (page 68) 1985bd8deadSopenharmony_ci 1995bd8deadSopenharmony_ci "Table 3.8: Conversion from RGBA, depth, and stencil pixel components to 2005bd8deadSopenharmony_ci internal texture components. Texture components R, G, B, A, and L are 2015bd8deadSopenharmony_ci converted back to RGBA colors during filtering as shown in table 3.12. 2025bd8deadSopenharmony_ci Texture components D are converted to RGBA colors as described in 2035bd8deadSopenharmony_ci section 3.7.8-1/2." 2045bd8deadSopenharmony_ci 2055bd8deadSopenharmony_ci Add the following to section 3.7.2 "Alternate Texture Image Specification 2065bd8deadSopenharmony_ci Commands": 2075bd8deadSopenharmony_ci 2085bd8deadSopenharmony_ci "CopyTexImage2D and CopyTexSubImage2D generate the INVALID_OPERATION 2095bd8deadSopenharmony_ci error if the base internal format of the destination texture is 2105bd8deadSopenharmony_ci DEPTH_COMPONENT or DEPTH_STENCIL_OES. 2115bd8deadSopenharmony_ci 2125bd8deadSopenharmony_ci TexSubImage2D generates the INVALID_OPERATION error if the base internal 2135bd8deadSopenharmony_ci format of the texture is DEPTH_COMPONENT or DEPTH_STENCIL_OES." 2145bd8deadSopenharmony_ci 2155bd8deadSopenharmony_ci Add a new section between sections 3.7.8 and 3.7.9: 2165bd8deadSopenharmony_ci 2175bd8deadSopenharmony_ci "3.7.8-1/2 Depth/Stencil Textures 2185bd8deadSopenharmony_ci 2195bd8deadSopenharmony_ci If the currently bound texture's base internal format is DEPTH_COMPONENT or 2205bd8deadSopenharmony_ci DEPTH_STENCIL_OES, then the output of the texture unit is as described 2215bd8deadSopenharmony_ci below. Otherwise, the texture unit operates in the normal manner. 2225bd8deadSopenharmony_ci 2235bd8deadSopenharmony_ci Let <D_t> be the depth texture value, provided by the shader's texture lookup 2245bd8deadSopenharmony_ci function. Then the effective texture value is computed as follows: 2255bd8deadSopenharmony_ci <Tau> = <D_t> 2265bd8deadSopenharmony_ci 2275bd8deadSopenharmony_ci If the texture image has a base internal format of DEPTH_STENCIL_OES, then 2285bd8deadSopenharmony_ci the stencil index texture component is ignored. The texture value <Tau> does 2295bd8deadSopenharmony_ci not include a stencil index component, but includes only the depth 2305bd8deadSopenharmony_ci component. 2315bd8deadSopenharmony_ci 2325bd8deadSopenharmony_ci The resulting <Tau> is assigned to <R_t>. In some implementations, <Tau> is 2335bd8deadSopenharmony_ci also assigned to <G_t>, <B_t>, or <A_t>. Thus in table 3.12, textures with 2345bd8deadSopenharmony_ci depth component data behave as if their base internal format is RGBA, with 2355bd8deadSopenharmony_ci values in <G_t>, <B_t>, and <A_t> being implementation dependent." 2365bd8deadSopenharmony_ci 2375bd8deadSopenharmony_ci Add the following to section 3.7.11 "Mipmap Generation": 2385bd8deadSopenharmony_ci 2395bd8deadSopenharmony_ci "If the level zero array contains depth or depth-stencil data, the 2405bd8deadSopenharmony_ci error INVALID_OPERATION is generated." 2415bd8deadSopenharmony_ci 2425bd8deadSopenharmony_ci Insert a new paragraph after the first paragraph of the "Texture Access" 2435bd8deadSopenharmony_ci subsection of section 3.8.2 on page 87, which says: 2445bd8deadSopenharmony_ci 2455bd8deadSopenharmony_ci "Texture lookups involving textures with depth component data generate 2465bd8deadSopenharmony_ci a texture source color by using depth data directly, as described in 2475bd8deadSopenharmony_ci section 3.7.8-1/2. The stencil texture internal component is ignored 2485bd8deadSopenharmony_ci if the base internal format is DEPTH_STENCIL_OES." 2495bd8deadSopenharmony_ci 2505bd8deadSopenharmony_ciAdditions to Chapter 4 of the OpenGL ES 2.0 specification (Per-Fragment 2515bd8deadSopenharmony_ciOperations and the Framebuffer) 2525bd8deadSopenharmony_ci 2535bd8deadSopenharmony_ci In section 4.4.5 "Framebuffer Completeness", replace the the 3rd 2545bd8deadSopenharmony_ci paragraph with the following text: 2555bd8deadSopenharmony_ci 2565bd8deadSopenharmony_ci "* An internal format is color-renderable if it is one of the formats 2575bd8deadSopenharmony_ci from table 4.5 noted as color-renderable or if it is unsized format 2585bd8deadSopenharmony_ci RGBA or RGB. No other formats, including compressed internal formats, 2595bd8deadSopenharmony_ci are color-renderable. 2605bd8deadSopenharmony_ci 2615bd8deadSopenharmony_ci * An internal format is depth-renderable if it is one of the sized 2625bd8deadSopenharmony_ci internal formats from table 4.5 noted as depth-renderable, if it 2635bd8deadSopenharmony_ci is the unsized format DEPTH_COMPONENT or if it is the internal 2645bd8deadSopenharmony_ci format value of DEPTH24_STENCIL8_OES. No other formats are 2655bd8deadSopenharmony_ci depth-renderable. 2665bd8deadSopenharmony_ci 2675bd8deadSopenharmony_ci * An internal format is stencil-renderable if it is one of the sized 2685bd8deadSopenharmony_ci internal formats from table 4.5 noted as stencil-renderable or if it 2695bd8deadSopenharmony_ci is DEPTH24_STENCIL8_OES. No other formats are stencil-renderable." 2705bd8deadSopenharmony_ci 2715bd8deadSopenharmony_ciAdditions to Chapter 5 of the OpenGL ES 2.0 Specification (Special 2725bd8deadSopenharmony_ciFunctions) 2735bd8deadSopenharmony_ci 2745bd8deadSopenharmony_ci None. 2755bd8deadSopenharmony_ci 2765bd8deadSopenharmony_ciAdditions to Chapter 6 of the OpenGL ES 2.0 Specification (State and State 2775bd8deadSopenharmony_ciRequests) 2785bd8deadSopenharmony_ci 2795bd8deadSopenharmony_ci None. 2805bd8deadSopenharmony_ci 2815bd8deadSopenharmony_ciInteractions with OES_packed_depth_stencil 2825bd8deadSopenharmony_ci 2835bd8deadSopenharmony_ci If OES_packed_depth_stencil is not supported, mentions of 2845bd8deadSopenharmony_ci DEPTH_STENCIL_OES and UNSIGNED_INT_24_8_OES as a format/type combinations 2855bd8deadSopenharmony_ci for TexImage2D and TexSubImage2D are omitted. Mentions of 2865bd8deadSopenharmony_ci the internal format DEPTH24_STENCIL8_OES are also omitted. 2875bd8deadSopenharmony_ci 2885bd8deadSopenharmony_ciInteractions with EXT_texture_storage 2895bd8deadSopenharmony_ci 2905bd8deadSopenharmony_ci If EXT_texture_storage is supported the following internalformat 2915bd8deadSopenharmony_ci to format/type mappings are used: 2925bd8deadSopenharmony_ci 2935bd8deadSopenharmony_ci <internalformat> <format> <type> 2945bd8deadSopenharmony_ci ---------------- -------- ------ 2955bd8deadSopenharmony_ci DEPTH_COMPONENT16 DEPTH_COMPONENT UNSIGNED_SHORT 2965bd8deadSopenharmony_ci DEPTH_COMPONENT32_OES DEPTH_COMPONENT UNSIGNED_INT 2975bd8deadSopenharmony_ci DEPTH24_STENCIL8_OES DEPTH_STENCIL_OES UNSIGNED_INT 2985bd8deadSopenharmony_ci 2995bd8deadSopenharmony_ci Textures with the above <internalformats> only support one level of 3005bd8deadSopenharmony_ci image data. Specifying a value other than one for the <levels> parameter 3015bd8deadSopenharmony_ci to TexStorage2DEXT will result in an INVALID_OPERATION error. 3025bd8deadSopenharmony_ci 3035bd8deadSopenharmony_ci If EXT_texture_storage is not supported, ignore any references 3045bd8deadSopenharmony_ci to TexStorage2DEXT. 3055bd8deadSopenharmony_ci 3065bd8deadSopenharmony_ciErrors 3075bd8deadSopenharmony_ci 3085bd8deadSopenharmony_ci The error INVALID_OPERATION is generated by TexImage2D if <format> and 3095bd8deadSopenharmony_ci <internalformat> are DEPTH_COMPONENT and <type> is not UNSIGNED_SHORT, 3105bd8deadSopenharmony_ci or UNSIGNED_INT. 3115bd8deadSopenharmony_ci 3125bd8deadSopenharmony_ci The error INVALID_OPERATION is generated by TexSubImage2D if <format> is 3135bd8deadSopenharmony_ci DEPTH_COMPONENT and <type> is not UNSIGNED_SHORT, or UNSIGNED_INT. 3145bd8deadSopenharmony_ci 3155bd8deadSopenharmony_ci The error INVALID_OPERATION is generated by TexImage2D if <format> and 3165bd8deadSopenharmony_ci <internalformat> are not DEPTH_COMPONENT and <type> is UNSIGNED_SHORT, 3175bd8deadSopenharmony_ci or UNSIGNED_INT. 3185bd8deadSopenharmony_ci 3195bd8deadSopenharmony_ci The error INVALID_OPERATION is generated by TexSubImage2D if <format> is 3205bd8deadSopenharmony_ci not DEPTH_COMPONENT and <type> is UNSIGNED_SHORT, or UNSIGNED_INT. 3215bd8deadSopenharmony_ci 3225bd8deadSopenharmony_ci The error INVALID_OPERATION is generated by TexImage2D if <format> and 3235bd8deadSopenharmony_ci <internalformat> are DEPTH_STENCIL_OES and <type> is not 3245bd8deadSopenharmony_ci UNSIGNED_INT_24_8_OES. 3255bd8deadSopenharmony_ci 3265bd8deadSopenharmony_ci The error INVALID_OPERATION is generated by TexSubImage2D if <format> 3275bd8deadSopenharmony_ci is DEPTH_STENCIL_OES and <type> is not UNSIGNED_INT_24_8_OES. 3285bd8deadSopenharmony_ci 3295bd8deadSopenharmony_ci The error INVALID_OPERATION is generated by TexImage2D if <format> and 3305bd8deadSopenharmony_ci <internalformat> is not DEPTH_STENCIL_OES and <type> is 3315bd8deadSopenharmony_ci UNSIGNED_INT_24_8_OES. 3325bd8deadSopenharmony_ci 3335bd8deadSopenharmony_ci The error INVALID_OPERATION is generated by TexSubImage2D if <format> 3345bd8deadSopenharmony_ci is not DEPTH_STENCIL_OES and <type> is UNSIGNED_INT_24_8_OES. 3355bd8deadSopenharmony_ci 3365bd8deadSopenharmony_ci The error INVALID_OPERATION is generated in the following situations: 3375bd8deadSopenharmony_ci - TexImage2D is called with <format> and <internalformat> of 3385bd8deadSopenharmony_ci DEPTH_COMPONENT or DEPTH_STENCIL_OES and 3395bd8deadSopenharmony_ci - <target> is not TEXTURE_2D, 3405bd8deadSopenharmony_ci - <data> is not NULL, or 3415bd8deadSopenharmony_ci - <level> is not zero. 3425bd8deadSopenharmony_ci - TexSubImage2D is called with <format> of DEPTH_COMPONENT or 3435bd8deadSopenharmony_ci DEPTH_STENCIL_OES. 3445bd8deadSopenharmony_ci - TexStorage2DEXT is called with <internalformat> of DEPTH_COMPONENT16, 3455bd8deadSopenharmony_ci DEPTH_COMPONENT32_OES, or DEPTH24_STENCIL8_OES, and 3465bd8deadSopenharmony_ci - <target> is not TEXTURE_2D, or 3475bd8deadSopenharmony_ci - <levels> is not one. 3485bd8deadSopenharmony_ci - CopyTexImage2D is called with an <internalformat> that has a base 3495bd8deadSopenharmony_ci internal format of DEPTH_COMPONENT or DEPTH_STENCIL_OES. 3505bd8deadSopenharmony_ci - CopyTexSubImage2D is called with a target texture that has a base 3515bd8deadSopenharmony_ci internal format of DEPTH_COMPONENT or DEPTH_STENCIL_OES. 3525bd8deadSopenharmony_ci - GenerateMipmap is called on a texture that has a base internal format 3535bd8deadSopenharmony_ci of DEPTH_COMPONENT or DEPTH_STENCIL_OES. 3545bd8deadSopenharmony_ci 3555bd8deadSopenharmony_ciNew State 3565bd8deadSopenharmony_ci 3575bd8deadSopenharmony_ci None. 3585bd8deadSopenharmony_ci 3595bd8deadSopenharmony_ciIssues 3605bd8deadSopenharmony_ci 3615bd8deadSopenharmony_ci 1) What are the differences between this extension and OES_depth_texture 3625bd8deadSopenharmony_ci and OES_packed_depth_stencil? 3635bd8deadSopenharmony_ci 3645bd8deadSopenharmony_ci RESOLVED: This extension: 3655bd8deadSopenharmony_ci - does not support loading pre-baked depth stencil data via 3665bd8deadSopenharmony_ci TexImage2D or TexSubImage2D. 3675bd8deadSopenharmony_ci - allows variability in the y-, z-, and w-components of the sample 3685bd8deadSopenharmony_ci results from depth textures. 3695bd8deadSopenharmony_ci - only supports one level textures. 3705bd8deadSopenharmony_ci - explicitly lists the errors for unsupported functionality. 3715bd8deadSopenharmony_ci Since these were not clearly specified in the OES_depth_texture 3725bd8deadSopenharmony_ci extension there may be differences in error values between 3735bd8deadSopenharmony_ci implementations of OES_depth_texture and ANGLE_depth_texture. 3745bd8deadSopenharmony_ci This specification was also rebased to apply against the OpenGL ES 2.0 3755bd8deadSopenharmony_ci specification instead of the OpenGL specification, making it more 3765bd8deadSopenharmony_ci obvious what all the functionality changes are. 3775bd8deadSopenharmony_ci 3785bd8deadSopenharmony_ci 2) Why does TexSubImage2D accept the new format/type combinations even 3795bd8deadSopenharmony_ci though it does not actually support loading data? 3805bd8deadSopenharmony_ci 3815bd8deadSopenharmony_ci RESOLVED: This was done to be more consistent with the OES_depth_texture 3825bd8deadSopenharmony_ci extension and to make it easier to add support for loading texture 3835bd8deadSopenharmony_ci data if it is possible to support in the future. 3845bd8deadSopenharmony_ci 3855bd8deadSopenharmony_ci 3) Why are only 1-level depth textures supported? 3865bd8deadSopenharmony_ci 3875bd8deadSopenharmony_ci RESOLVED: The only use for multiple levels of depth textures would 3885bd8deadSopenharmony_ci be for fitlered texturing. However since it is not possible to 3895bd8deadSopenharmony_ci render to non-zero-level texture levels in OpenGL ES 2.0, and since 3905bd8deadSopenharmony_ci this extension forbids loading existing data and GenerateMipmap on 3915bd8deadSopenharmony_ci depth textures, it is impossible to initialize or specify contents 3925bd8deadSopenharmony_ci for non-zero levels of depth textures. 3935bd8deadSopenharmony_ci 3945bd8deadSopenharmony_ciRevision History 3955bd8deadSopenharmony_ci 3965bd8deadSopenharmony_ci 02/25/2013 swoods revise to allow texture lookup to guarantee depth values 3975bd8deadSopenharmony_ci only in red channel of sample result. 3985bd8deadSopenharmony_ci 06/04/2012 dgkoch fix errors, disallow multi-level depth textures. 3995bd8deadSopenharmony_ci 05/30/2012 dgkoch minor updates and add issues. 4005bd8deadSopenharmony_ci 05/23/2012 dgkoch intial revision based on OES_depth_texture and 4015bd8deadSopenharmony_ci OES_packed_depth_stencil and rebased against the ES 2.0 spec 4025bd8deadSopenharmony_ci 403