xref: /aosp_15_r20/external/angle/extensions/CHROMIUM_compressed_copy_texture.txt (revision 8975f5c5ed3d1c378011245431ada316dfb6f244)
1Name
2
3    CHROMIUM_copy_compressed_texture
4
5Name Strings
6
7    GL_CHROMIUM_copy_compressed_texture
8
9Version
10
11    Last Modifed Date: August 5, 2015
12
13Dependencies
14
15    OpenGL ES 2.0 is required.
16
17    GL_AMD_compressed_ATC_texture, GL_ATI_texture_compression_atitc,
18    GL_EXT_texture_compression_dxt1, GL_ANGLE_texture_compression_dxt5,
19    GL_EXT_texture_compression_s3tc and GL_OES_compressed_ETC1_RGB8_texture
20    affects the definition of this extension.
21
22Overview
23
24    This extension provides functionality for copying compressed textures. It
25    adds a new function glCompressedCopyTextureCHROMIUM that works similarily
26    to glCopyTextureCHROMIUM, but for compressed textures.
27
28    Which compressed texture formats that this extension supports depends on
29    the supported texture compression formats of the host GPU.
30
31Issues
32
33    glCompressedCopyTextureCHROMIUM will first try to copy into a compressed
34    texture of the same format as the source texture. If unsucessful, the
35    destination texture format will be changed to GL_RGBA and the texture will
36    be stored uncompressed.
37
38New Procedures and Functions
39
40    The command
41
42        void glCompressedCopyTextureCHROMIUM (GLuint source_id, GLuint dest_id)
43
44    Copies the contents of a compressed texture referred to by <source_id> to
45    <dest_id> texture.
46
47    Texture level 0 is copied from the source image to level 0 of the
48    destination texture.
49
50    The internal format of the source texture must be one of the following
51    symbolic constants: GL_ATC_RGB_AMD, GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD,
52    GL_COMPRESSED_RGB_S3TC_DXT1_EXT, GL_COMPRESSED_RGBA_S3TC_DXT5_EXT,
53    GL_ETC1_RGB8_OES
54
55    The destination texture will be created or replaced with the same internal
56    format as the source texture.
57
58    INVALID_OPERATION is generated if internal format of source texture is not
59    one of the valid formats described above.
60
61    INVALID_OPERATION is generated if destination texture is immutable.
62
63    INVALID_VALUE is generated if <source_id> or <dest_id> are not valid texture
64    objects.
65
66    INVALID_VALUE is generated if textures corresponding to <dest_id> have not
67    been bound as GL_TEXTURE_2D object.
68
69    INVALID_VALUE is generated if level 0 of the source texture is not defined.
70
71Errors
72
73    None.
74
75New Tokens
76
77    None.
78
79New State
80
81    None.
82
83Revision History
84
85    15/6/2015    Documented the extension.
86    5/8/2015     Added glCompressedCopySubTextureCHROMIUM.
87    1/6/2016     Remove glCompressedCopySubTextureCHROMIUM.
88    1/8/2016     Remove <target> argument.
89