{ "Format combinations from ES 3.0.1 spec, table 3.2": [ [ "GL_RGBA8", "GL_RGBA", "GL_UNSIGNED_BYTE" ], [ "GL_RGB5_A1", "GL_RGBA", "GL_UNSIGNED_BYTE" ], [ "GL_RGBA4", "GL_RGBA", "GL_UNSIGNED_BYTE" ], [ "GL_SRGB8_ALPHA8", "GL_RGBA", "GL_UNSIGNED_BYTE" ], [ "GL_RGBA8_SNORM", "GL_RGBA", "GL_BYTE" ], [ "GL_RGBA4", "GL_RGBA", "GL_UNSIGNED_SHORT_4_4_4_4" ], [ "GL_RGB10_A2", "GL_RGBA", "GL_UNSIGNED_INT_2_10_10_10_REV" ], [ "GL_RGB5_A1", "GL_RGBA", "GL_UNSIGNED_INT_2_10_10_10_REV" ], [ "GL_RGB5_A1", "GL_RGBA", "GL_UNSIGNED_SHORT_5_5_5_1" ], [ "GL_RGBA16F", "GL_RGBA", "GL_HALF_FLOAT" ], [ "GL_RGBA16F", "GL_RGBA", "GL_HALF_FLOAT_OES" ], [ "GL_RGBA32F", "GL_RGBA", "GL_FLOAT" ], [ "GL_RGBA16F", "GL_RGBA", "GL_FLOAT" ], [ "GL_RGBA8UI", "GL_RGBA_INTEGER", "GL_UNSIGNED_BYTE" ], [ "GL_RGBA8I", "GL_RGBA_INTEGER", "GL_BYTE" ], [ "GL_RGBA16UI", "GL_RGBA_INTEGER", "GL_UNSIGNED_SHORT" ], [ "GL_RGBA16I", "GL_RGBA_INTEGER", "GL_SHORT" ], [ "GL_RGBA32UI", "GL_RGBA_INTEGER", "GL_UNSIGNED_INT" ], [ "GL_RGBA32I", "GL_RGBA_INTEGER", "GL_INT" ], [ "GL_RGB10_A2UI", "GL_RGBA_INTEGER", "GL_UNSIGNED_INT_2_10_10_10_REV" ], [ "GL_RGB8", "GL_RGB", "GL_UNSIGNED_BYTE" ], [ "GL_RGB565", "GL_RGB", "GL_UNSIGNED_BYTE" ], [ "GL_SRGB8", "GL_RGB", "GL_UNSIGNED_BYTE" ], [ "GL_RGB8_SNORM", "GL_RGB", "GL_BYTE" ], [ "GL_RGB565", "GL_RGB", "GL_UNSIGNED_SHORT_5_6_5" ], [ "GL_R11F_G11F_B10F", "GL_RGB", "GL_UNSIGNED_INT_10F_11F_11F_REV" ], [ "GL_RGB9_E5", "GL_RGB", "GL_UNSIGNED_INT_5_9_9_9_REV" ], [ "GL_RGB16F", "GL_RGB", "GL_HALF_FLOAT" ], [ "GL_RGB16F", "GL_RGB", "GL_HALF_FLOAT_OES" ], [ "GL_R11F_G11F_B10F", "GL_RGB", "GL_HALF_FLOAT" ], [ "GL_R11F_G11F_B10F", "GL_RGB", "GL_HALF_FLOAT_OES" ], [ "GL_RGB9_E5", "GL_RGB", "GL_HALF_FLOAT" ], [ "GL_RGB9_E5", "GL_RGB", "GL_HALF_FLOAT_OES" ], [ "GL_RGB32F", "GL_RGB", "GL_FLOAT" ], [ "GL_RGB16F", "GL_RGB", "GL_FLOAT" ], [ "GL_R11F_G11F_B10F", "GL_RGB", "GL_FLOAT" ], [ "GL_RGB9_E5", "GL_RGB", "GL_FLOAT" ], [ "GL_RGB8UI", "GL_RGB_INTEGER", "GL_UNSIGNED_BYTE" ], [ "GL_RGB8I", "GL_RGB_INTEGER", "GL_BYTE" ], [ "GL_RGB16UI", "GL_RGB_INTEGER", "GL_UNSIGNED_SHORT" ], [ "GL_RGB16I", "GL_RGB_INTEGER", "GL_SHORT" ], [ "GL_RGB32UI", "GL_RGB_INTEGER", "GL_UNSIGNED_INT" ], [ "GL_RGB32I", "GL_RGB_INTEGER", "GL_INT" ], [ "GL_RG8", "GL_RG", "GL_UNSIGNED_BYTE" ], [ "GL_RG8_SNORM", "GL_RG", "GL_BYTE" ], [ "GL_RG16F", "GL_RG", "GL_HALF_FLOAT" ], [ "GL_RG16F", "GL_RG", "GL_HALF_FLOAT_OES" ], [ "GL_RG32F", "GL_RG", "GL_FLOAT" ], [ "GL_RG16F", "GL_RG", "GL_FLOAT" ], [ "GL_RG8UI", "GL_RG_INTEGER", "GL_UNSIGNED_BYTE" ], [ "GL_RG8I", "GL_RG_INTEGER", "GL_BYTE" ], [ "GL_RG16UI", "GL_RG_INTEGER", "GL_UNSIGNED_SHORT" ], [ "GL_RG16I", "GL_RG_INTEGER", "GL_SHORT" ], [ "GL_RG32UI", "GL_RG_INTEGER", "GL_UNSIGNED_INT" ], [ "GL_RG32I", "GL_RG_INTEGER", "GL_INT" ], [ "GL_R8", "GL_RED", "GL_UNSIGNED_BYTE" ], [ "GL_R8_SNORM", "GL_RED", "GL_BYTE" ], [ "GL_R16F", "GL_RED", "GL_HALF_FLOAT" ], [ "GL_R16F", "GL_RED", "GL_HALF_FLOAT_OES" ], [ "GL_R32F", "GL_RED", "GL_FLOAT" ], [ "GL_R16F", "GL_RED", "GL_FLOAT" ], [ "GL_R8UI", "GL_RED_INTEGER", "GL_UNSIGNED_BYTE" ], [ "GL_R8I", "GL_RED_INTEGER", "GL_BYTE" ], [ "GL_R16UI", "GL_RED_INTEGER", "GL_UNSIGNED_SHORT" ], [ "GL_R16I", "GL_RED_INTEGER", "GL_SHORT" ], [ "GL_R32UI", "GL_RED_INTEGER", "GL_UNSIGNED_INT" ], [ "GL_R32I", "GL_RED_INTEGER", "GL_INT" ] ], "Unsized formats": [ [ "GL_RGBA", "GL_RGBA", "GL_UNSIGNED_BYTE" ], [ "GL_RGBA", "GL_RGBA", "GL_UNSIGNED_SHORT_4_4_4_4" ], [ "GL_RGBA", "GL_RGBA", "GL_UNSIGNED_SHORT_5_5_5_1" ], [ "GL_RGB", "GL_RGB", "GL_UNSIGNED_BYTE" ], [ "GL_RGB", "GL_RGB", "GL_UNSIGNED_SHORT_5_6_5" ], [ "GL_LUMINANCE_ALPHA", "GL_LUMINANCE_ALPHA", "GL_UNSIGNED_BYTE" ], [ "GL_LUMINANCE", "GL_LUMINANCE", "GL_UNSIGNED_BYTE" ], [ "GL_ALPHA", "GL_ALPHA", "GL_UNSIGNED_BYTE" ], [ "GL_SRGB_ALPHA_EXT", "GL_SRGB_ALPHA_EXT", "GL_UNSIGNED_BYTE" ], [ "GL_SRGB_EXT", "GL_SRGB_EXT", "GL_UNSIGNED_BYTE" ], [ "GL_RG", "GL_RG", "GL_UNSIGNED_BYTE" ], [ "GL_RG", "GL_RG", "GL_FLOAT" ], [ "GL_RG", "GL_RG", "GL_HALF_FLOAT" ], [ "GL_RG", "GL_RG", "GL_HALF_FLOAT_OES" ], [ "GL_RED", "GL_RED", "GL_UNSIGNED_BYTE" ], [ "GL_RED", "GL_RED", "GL_FLOAT" ], [ "GL_RED", "GL_RED", "GL_HALF_FLOAT" ], [ "GL_RED", "GL_RED", "GL_HALF_FLOAT_OES" ], [ "GL_DEPTH_STENCIL", "GL_DEPTH_STENCIL", "GL_UNSIGNED_INT_24_8" ] ], "Depth stencil formats": [ [ "GL_DEPTH_COMPONENT16", "GL_DEPTH_COMPONENT", "GL_UNSIGNED_SHORT" ], [ "GL_DEPTH_COMPONENT24", "GL_DEPTH_COMPONENT", "GL_UNSIGNED_INT" ], [ "GL_DEPTH_COMPONENT16", "GL_DEPTH_COMPONENT", "GL_UNSIGNED_INT" ], [ "GL_DEPTH_COMPONENT32F", "GL_DEPTH_COMPONENT", "GL_FLOAT" ], [ "GL_DEPTH24_STENCIL8", "GL_DEPTH_STENCIL", "GL_UNSIGNED_INT_24_8" ], [ "GL_DEPTH32F_STENCIL8", "GL_DEPTH_STENCIL", "GL_FLOAT_32_UNSIGNED_INT_24_8_REV" ] ], "From GL_EXT_sRGB": [ [ "GL_SRGB8_ALPHA8_EXT", "GL_SRGB_ALPHA_EXT", "GL_UNSIGNED_BYTE" ], [ "GL_SRGB8", "GL_SRGB_EXT", "GL_UNSIGNED_BYTE" ] ], "From GL_OES_texture_float": [ [ "GL_RGBA", "GL_RGBA", "GL_FLOAT" ], [ "GL_RGB", "GL_RGB", "GL_FLOAT" ], [ "GL_LUMINANCE_ALPHA", "GL_LUMINANCE_ALPHA", "GL_FLOAT" ], [ "GL_LUMINANCE", "GL_LUMINANCE", "GL_FLOAT" ], [ "GL_ALPHA", "GL_ALPHA", "GL_FLOAT" ] ], "From GL_OES_texture_half_float": [ [ "GL_RGBA", "GL_RGBA", "GL_HALF_FLOAT_OES" ], [ "GL_RGB", "GL_RGB", "GL_HALF_FLOAT_OES" ], [ "GL_LUMINANCE_ALPHA", "GL_LUMINANCE_ALPHA", "GL_HALF_FLOAT" ], [ "GL_LUMINANCE_ALPHA", "GL_LUMINANCE_ALPHA", "GL_HALF_FLOAT_OES" ], [ "GL_LUMINANCE", "GL_LUMINANCE", "GL_HALF_FLOAT" ], [ "GL_LUMINANCE", "GL_LUMINANCE", "GL_HALF_FLOAT_OES" ], [ "GL_ALPHA", "GL_ALPHA", "GL_HALF_FLOAT" ], [ "GL_ALPHA", "GL_ALPHA", "GL_HALF_FLOAT_OES" ] ], "From GL_EXT_texture_format_BGRA8888": [ [ "GL_BGRA_EXT", "GL_BGRA_EXT", "GL_UNSIGNED_BYTE" ] ], "From GL_EXT_texture_storage": [ [ "GL_ALPHA8_EXT", "GL_ALPHA", "GL_UNSIGNED_BYTE" ], [ "GL_LUMINANCE8_EXT", "GL_LUMINANCE", "GL_UNSIGNED_BYTE" ], [ "GL_LUMINANCE8_ALPHA8_EXT", "GL_LUMINANCE_ALPHA", "GL_UNSIGNED_BYTE" ], [ "GL_ALPHA32F_EXT", "GL_ALPHA", "GL_FLOAT" ], [ "GL_LUMINANCE32F_EXT", "GL_LUMINANCE", "GL_FLOAT" ], [ "GL_LUMINANCE_ALPHA32F_EXT", "GL_LUMINANCE_ALPHA", "GL_FLOAT" ], [ "GL_ALPHA16F_EXT", "GL_ALPHA", "GL_HALF_FLOAT" ], [ "GL_ALPHA16F_EXT", "GL_ALPHA", "GL_HALF_FLOAT_OES" ], [ "GL_LUMINANCE16F_EXT", "GL_LUMINANCE", "GL_HALF_FLOAT" ], [ "GL_LUMINANCE16F_EXT", "GL_LUMINANCE", "GL_HALF_FLOAT_OES" ], [ "GL_LUMINANCE_ALPHA16F_EXT", "GL_LUMINANCE_ALPHA", "GL_HALF_FLOAT" ], [ "GL_LUMINANCE_ALPHA16F_EXT", "GL_LUMINANCE_ALPHA", "GL_HALF_FLOAT_OES" ] ], "From GL_EXT_texture_storage and GL_EXT_texture_format_BGRA8888": [ [ "GL_BGRA8_EXT", "GL_BGRA_EXT", "GL_UNSIGNED_BYTE" ], [ "GL_BGRA4_ANGLEX", "GL_BGRA_EXT", "GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT" ], [ "GL_BGRA4_ANGLEX", "GL_BGRA_EXT", "GL_UNSIGNED_BYTE" ], [ "GL_BGR5_A1_ANGLEX", "GL_BGRA_EXT", "GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT" ], [ "GL_BGR5_A1_ANGLEX", "GL_BGRA_EXT", "GL_UNSIGNED_BYTE" ] ], "From GL_ANGLE_depth_texture and OES_depth_texture": [ [ "GL_DEPTH_COMPONENT32_OES", "GL_DEPTH_COMPONENT", "GL_UNSIGNED_INT_24_8" ], [ "GL_DEPTH_COMPONENT", "GL_DEPTH_COMPONENT", "GL_UNSIGNED_SHORT" ], [ "GL_DEPTH_COMPONENT", "GL_DEPTH_COMPONENT", "GL_UNSIGNED_INT" ] ], "From GL_EXT_texture_norm16": [ [ "GL_R16_EXT", "GL_RED", "GL_UNSIGNED_SHORT" ], [ "GL_RG16_EXT", "GL_RG", "GL_UNSIGNED_SHORT" ], [ "GL_RGB16_EXT", "GL_RGB", "GL_UNSIGNED_SHORT" ], [ "GL_RGBA16_EXT", "GL_RGBA", "GL_UNSIGNED_SHORT" ], [ "GL_R16_SNORM_EXT", "GL_RED", "GL_SHORT" ], [ "GL_RG16_SNORM_EXT", "GL_RG", "GL_SHORT" ], [ "GL_RGB16_SNORM_EXT", "GL_RGB", "GL_SHORT" ], [ "GL_RGBA16_SNORM_EXT", "GL_RGBA", "GL_SHORT" ] ] }