1Name 2 3 SGIX_depth_texture 4 5Name Strings 6 7 GL_SGIX_depth_texture 8 9Version 10 11 $Date: 1997/02/26 03:36:29 $ $Revision: 1.5 $ 12 13Number 14 15 63 16 17Dependencies 18 19 EXT_texture is required 20 EXT_subtexture affects the definition of this extension 21 EXT_copy_texture affects the definition of this extension 22 23Overview 24 25 This extension defines a new depth texture format. An important 26 application of depth texture images is shadow casting, but separating 27 this from the shadow extension allows for the potential use of depth 28 textures in other applications such as image-based rendering or 29 displacement mapping. This extension does not define new depth-texture 30 environment functions, such as filtering or applying the depth values 31 computed from a texture, but leaves this to other extensions, such as 32 the shadow extension. 33 34New Procedures and Functions 35 36 None 37 38New Tokens 39 40 Accepted by the <components> parameters of TexImage1D and TexImage2D, 41 and by the <internalformat> parameters of TexImage3DEXT, 42 CopyTexImage1DEXT, and CopyTexImage2DEXT: 43 44 DEPTH_COMPONENT16_SGIX 0x81A5 45 DEPTH_COMPONENT24_SGIX 0x81A6 46 DEPTH_COMPONENT32_SGIX 0x81A7 47 48 49Additions to Chapter 2 of the 1.0 Specification (OpenGL Operation) 50 51 None 52 53Additions to Chapter 3 of the 1.0 Specification (Rasterization) 54 55 XXX - lots 56 57 Notes: 58 59 * Defines DEPTH_COMPONENT as a new base internal format for 60 textures. Defines 16, 24, and 32 bit specific internal formats 61 for texture. Just as for the specific color internal formats, 62 an implementation can choose whether to implement them or not. 63 64 * Texture commands that accept images from memory now allow the 65 internal format to be DEPTH_COMPONENT or DEPTH_COMPONENT*_SGIX 66 when the format of the image data is DEPTH_COMPONENT. Depth, not 67 color pixel transfer operations are applied to depth images. 68 69 * Texture commands that accept images from the framebuffer now take 70 their data from the depth buffer when the internal format is 71 DEPTH_COMPONENT or DEPTH_COMPONENT*_SGIX, or when no internal 72 format is specified, and the internal format of the target texture 73 is DEPTH_COMPONENT or DEPTH_COMPONENT*_SGIX. 74 75Additions to Chapter 4 of the 1.0 Specification (Per-Fragment Operations 76and the Frame Buffer) 77 78 None 79 80Additions to Chapter 5 of the 1.0 Specification (Special Functions) 81 82 None 83 84Additions to Chapter 6 of the 1.0 Specification (State and State Requests) 85 86 None 87 88Additions to the GLX Specification 89 90 None 91 92Dependencies on EXT_texture 93 94 EXT_texture is required. 95 96Dependencies on EXT_texture3D 97 98 EXT_texture3D is not required, but if it is not supported, the 99 implementation must compute the R texture coordinate as if it were. 100 If EXT_texture3D is not supported, references to TexImage3DEXT and 101 TexSubImage3DEXT in this document are invalid and should be ignored. 102 103Dependencies on EXT_subtexture 104 105 If EXT_subtexture is not supported, references to TexSubImage1DEXT, 106 TexSubImage2DEXT, and TexSubImage3DEXT in this document are invalid and 107 should be ignored. If EXT_subtexture is supported, the operations of 108 these three commands are affected by this extension. 109 110Dependencies on EXT_copy_texture 111 112 If EXT_copy_texture is not supported, references to CopyTexImage1DEXT 113 and CopyTexImage2DEXT in this document are invalid and should be 114 ignored. If EXT_copy_texture is supported, the operations of these two 115 commands, and of CopyTexSubImage1DEXT, CopyTexSubImage2DEXT, and 116 CopyTexSubImage3DEXT are affected by this extension. 117 118Errors 119 120 INVALID_OPERATION is generated if TexImage1D or TexImage2D parameter 121 <format> is DEPTH_COMPONENT and parameter <components> is not 122 DEPTH_COMPONENT, DEPTH_COMPONENT16_SGI, DEPTH_COMPONENT24_SGI, or 123 DEPTH_COMPONENT32_SGI. 124 125 INVALID_OPERATION is generated if TexImage3DEXT parameter <format> is 126 DEPTH_COMPONENT and parameter <internalformat> is not 127 DEPTH_COMPONENT, DEPTH_COMPONENT16_SGI, DEPTH_COMPONENT24_SGI, or 128 DEPTH_COMPONENT32_SGI. 129 130 INVALID_OPERATION is generated if CopyTexImage1DEXT or CopyTexImage2DEXT 131 parameter <internalformat> is DEPTH_COMPONENT, DEPTH_COMPONENT16_SGI, 132 DEPTH_COMPONENT24_SGI, or DEPTH_COMPONENT32_SGI, and there is no 133 depth buffer. 134 135New State 136 137 None 138 139New Implementation Dependent State 140 141 None 142