public
Last active

OpenGL image formats along with their unsized variants and preferred formats for pixel transfer (Written by hand, needs verification) Pixel store for compressed textures not provided because there are glCompressedTexImage and family for them. EXT_texture_compression_s3tc formats not included.

  • Download Gist
formats.txt
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83
| Image format (sized) | Unsized | Compr | Pixel format | Pixel type |
|---------------------------------------|--------------------|-------|--------------------|-----------------------------------|
| GL_R8 | GL_RED | False | GL_RED | GL_UNSIGNED_BYTE |
| GL_R8_SNORM | GL_RED | False | GL_RED | GL_BYTE |
| GL_R16 | GL_RED | False | GL_RED | GL_UNSIGNED_SHORT |
| GL_R16_SNORM | GL_RED | False | GL_RED | GL_SHORT |
| GL_R32F | GL_RED | False | GL_RED | GL_FLOAT |
| GL_R8I | GL_RED | False | GL_RED_INTEGER | GL_INT |
| GL_R8UI | GL_RED | False | GL_RED_INTEGER | GL_UNSIGNED_INT |
| GL_R16I | GL_RED | False | GL_RED_INTEGER | GL_INT |
| GL_R16UI | GL_RED | False | GL_RED_INTEGER | GL_UNSIGNED_INT |
| GL_R32I | GL_RED | False | GL_RED_INTEGER | GL_INT |
| GL_R32UI | GL_RED | False | GL_RED_INTEGER | GL_UNSIGNED_INT |
| GL_R16F | GL_RED | False | GL_RED | GL_HALF_FLOAT |
| GL_RG8 | GL_RG | False | GL_RG | GL_UNSIGNED_BYTE |
| GL_RG8_SNORM | GL_RG | False | GL_RG | GL_BYTE |
| GL_RG16 | GL_RG | False | GL_RG | GL_UNSIGNED_SHORT |
| GL_RG16_SNORM | GL_RG | False | GL_RG | GL_SHORT |
| GL_RG16F | GL_RG | False | GL_RG | GL_HALF_FLOAT |
| GL_RG32F | GL_RG | False | GL_RG | GL_FLOAT |
| GL_RG8I | GL_RG | False | GL_RG_INTEGER | GL_INT |
| GL_RG8UI | GL_RG | False | GL_RG_INTEGER | GL_UNSIGNED_INT |
| GL_RG16I | GL_RG | False | GL_RG_INTEGER | GL_INT |
| GL_RG16UI | GL_RG | False | GL_RG_INTEGER | GL_UNSIGNED_INT |
| GL_RG32I | GL_RG | False | GL_RG_INTEGER | GL_INT |
| GL_RG32UI | GL_RG | False | GL_RG_INTEGER | GL_UNSIGNED_INT |
| GL_R3_G3_B2 | GL_RGB | False | GL_RGB | GL_UNSIGNED_BYTE_3_3_2 |
| GL_RGB4 | GL_RGB | False | GL_RGB | GL_UNSIGNED_BYTE |
| GL_RGB5 | GL_RGB | False | GL_RGB | GL_UNSIGNED_BYTE |
| GL_RGB8 | GL_RGB | False | GL_RGB | GL_UNSIGNED_BYTE |
| GL_RGB8_SNORM | GL_RGB | False | GL_RGB | GL_BYTE |
| GL_RGB10 | GL_RGB | False | GL_RGB | GL_UNSIGNED_SHORT |
| GL_RGB12 | GL_RGB | False | GL_RGB | GL_UNSIGNED_SHORT |
| GL_RGB16_SNORM | GL_RGB | False | GL_RGB | GL_SHORT |
| GL_RGBA2 | GL_RGBA | False | GL_RGBA | GL_UNSIGNED_SHORT_4_4_4_4 |
| GL_RGBA4 | GL_RGBA | False | GL_RGBA | GL_UNSIGNED_SHORT_4_4_4_4 |
| GL_SRGB8 | GL_RGB | False | GL_RGB | GL_UNSIGNED_BYTE |
| GL_RGB16F | GL_RGB | False | GL_RGB | GL_HALF_FLOAT |
| GL_RGB32F | GL_RGB | False | GL_RGB | GL_FLOAT |
| GL_R11F_G11F_B10F | GL_RGB | False | GL_RGB | GL_UNSIGNED_INT_10F_11F_11F_REV |
| GL_RGB9_E5 | GL_RGB | False | GL_RGB | GL_UNSIGNED_INT_5_9_9_9_REV |
| GL_RGB8I | GL_RGB | False | GL_RGB_INTEGER | GL_INT |
| GL_RGB8UI | GL_RGB | False | GL_RGB_INTEGER | GL_UNSIGNED_INT |
| GL_RGB16I | GL_RGB | False | GL_RGB_INTEGER | GL_INT |
| GL_RGB16UI | GL_RGB | False | GL_RGB_INTEGER | GL_UNSIGNED_INT |
| GL_RGB32I | GL_RGB | False | GL_RGB_INTEGER | GL_INT |
| GL_RGB32UI | GL_RGB | False | GL_RGB_INTEGER | GL_UNSIGNED_INT |
| GL_RGB5_A1 | GL_RGBA | False | GL_RGBA | GL_UNSIGNED_SHORT_5_5_5_1 |
| GL_RGBA8 | GL_RGBA | False | GL_RGBA | GL_UNSIGNED_BYTE |
| GL_RGBA8_SNORM | GL_RGBA | False | GL_RGBA | GL_BYTE |
| GL_RGB10_A2 | GL_RGBA | False | GL_RGBA | GL_UNSIGNED_INT_10_10_10_2 |
| GL_RGB10_A2UI | GL_RGBA | False | GL_RGBA_INTEGER | GL_UNSIGNED_INT_10_10_10_2 |
| GL_RGBA12 | GL_RGBA | False | GL_RGBA | GL_UNSIGNED_SHORT |
| GL_RGBA16 | GL_RGBA | False | GL_RGBA | GL_UNSIGNED_SHORT |
| GL_SRGB8_ALPHA8 | GL_RGBA | False | GL_RGBA | GL_UNSIGNED_BYTE |
| GL_RGBA16F | GL_RGBA | False | GL_RGBA | GL_HALF_FLOAT |
| GL_RGBA32F | GL_RGBA | False | GL_RGBA | GL_FLOAT |
| GL_RGBA8I | GL_RGBA | False | GL_RGBA_INTEGER | GL_INT |
| GL_RGBA8UI | GL_RGBA | False | GL_RGBA_INTEGER | GL_UNSIGNED_INT |
| GL_RGBA16I | GL_RGBA | False | GL_RGBA_INTEGER | GL_INT |
| GL_RGBA16UI | GL_RGBA | False | GL_RGBA_INTEGER | GL_UNSIGNED_INT |
| GL_RGBA32I | GL_RGBA | False | GL_RGBA_INTEGER | GL_INT |
| GL_RGBA32UI | GL_RGBA | False | GL_RGBA_INTEGER | GL_UNSIGNED_INT |
| GL_DEPTH_COMPONENT16 | GL_DEPTH_COMPONENT | False | GL_DEPTH_COMPONENT | GL_UNSIGNED_SHORT |
| GL_DEPTH_COMPONENT24 | GL_DEPTH_COMPONENT | False | GL_DEPTH_COMPONENT | GL_UNSIGNED_INT |
| GL_DEPTH_COMPONENT32 | GL_DEPTH_COMPONENT | False | GL_DEPTH_COMPONENT | GL_UNSIGNED_INT |
| GL_DEPTH_COMPONENT32F | GL_DEPTH_COMPONENT | False | GL_DEPTH_COMPONENT | GL_FLOAT |
| GL_DEPTH24_STENCIL8 | GL_DEPTH_STENCIL | False | GL_DEPTH_STENCIL | GL_UNSIGNED_INT_24_8 |
| GL_DEPTH32F_STENCIL8 | GL_DEPTH_STENCIL | False | GL_DEPTH_STENCIL | GL_FLOAT_32_UNSIGNED_INT_24_8_REV |
| GL_COMPRESSED_RED | GL_RED | True | - | - |
| GL_COMPRESSED_RED_RGTC1 | GL_RED | True | - | - |
| GL_COMPRESSED_SIGNED_RED_RGTC1 | GL_RED | True | - | - |
| GL_COMPRESSED_RG | GL_RG | True | - | - |
| GL_COMPRESSED_RG_RGTC2 | GL_RG | True | - | - |
| GL_COMPRESSED_SIGNED_RG_RGTC2 | GL_RG | True | - | - |
| GL_COMPRESSED_RGB | GL_RGB | True | - | - |
| GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT | GL_RGB | True | - | - |
| GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT | GL_RGB | True | - | - |
| GL_COMPRESSED_SRGB | GL_RGB | True | - | - |
| GL_COMPRESSED_RGBA | GL_RGBA | True | - | - |
| GL_COMPRESSED_RGBA_BPTC_UNORM | GL_RGBA | True | - | - |
| GL_COMPRESSED_SRGB_ALPHA | GL_RGBA | True | - | - |
| GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM | GL_RGBA | True | - | - |

Please sign in to comment on this gist.

Something went wrong with that request. Please try again.