OSDN Git Service

gles2: Add GL_EXT_texture_format_BGRA8888 support
authorKristian Høgsberg <krh@bitplanet.net>
Thu, 7 Oct 2010 21:03:53 +0000 (17:03 -0400)
committerKristian Høgsberg <krh@bitplanet.net>
Thu, 7 Oct 2010 21:08:50 +0000 (17:08 -0400)
src/mesa/drivers/dri/intel/intel_extensions_es2.c
src/mesa/main/APIspec.xml
src/mesa/main/extensions.c
src/mesa/main/mtypes.h

index 24f6404..ed5db20 100644 (file)
@@ -69,6 +69,7 @@ static const char *es2_extensions[] = {
    "GL_ARB_depth_texture",
    "GL_EXT_packed_depth_stencil",
    "GL_EXT_framebuffer_object",
+   "GL_EXT_texture_format_BGRA8888",
 
 #if FEATURE_OES_EGL_image
    "GL_OES_EGL_image",
index 4c5fd59..4dc0b0d 100644 (file)
                <value name="GL_ALPHA"/>
                <value name="GL_RGB"/>
                <value name="GL_RGBA"/>
+               <value name="GL_BGRA_EXT"/>
                <value name="GL_LUMINANCE"/>
                <value name="GL_LUMINANCE_ALPHA"/>
                <value name="GL_DEPTH_COMPONENT" category="OES_depth_texture"/>
 
        <desc name="format" category="OES_packed_depth_stencil">
                <value name="GL_DEPTH_STENCIL_OES"/>
-
                <desc name="type" error="GL_INVALID_OPERATION">
                        <value name="GL_UNSIGNED_INT_24_8_OES"/>
                </desc>
        </desc>
+
+       <desc name="format" category="EXT_texture_format_BGRA8888">
+               <value name="GL_BGRA_EXT"/>
+
+               <desc name="type" error="GL_INVALID_OPERATION">
+                       <value name="GL_UNSIGNED_BYTE"/>
+               </desc>
+       </desc>
 </template>
 
 <template name="TexEnv">
        <category name="OES_depth_texture"/>
        <category name="OES_packed_depth_stencil"/>
        <category name="OES_standard_derivatives"/>
+       <category name="EXT_texture_format_BGRA8888"/>
 
        <category name="EXT_texture_compression_dxt1"/>
        <category name="EXT_blend_minmax"/>
index d845ece..e8f9466 100644 (file)
@@ -211,6 +211,7 @@ static const struct {
    { ON,  "GL_SGIS_texture_lod",               F(SGIS_texture_lod) },
    { ON,  "GL_SUN_multi_draw_arrays",          F(EXT_multi_draw_arrays) },
    { OFF, "GL_S3_s3tc",                        F(S3_s3tc) },
+   { OFF, "GL_EXT_texture_format_BGRA8888",    F(EXT_texture_format_BGRA8888) },
 #if FEATURE_OES_EGL_image
    { OFF, "GL_OES_EGL_image",                  F(OES_EGL_image) },
 #endif
@@ -894,6 +895,9 @@ make_extension_string_es2(const GLcontext *ctx, GLubyte *str)
       len += append_extension(&str, "GL_OES_EGL_image");
 #endif
 
+   if (ctx->Extensions.EXT_texture_format_BGRA8888)
+      len += append_extension(&str, "GL_EXT_texture_format_BGRA8888");
+
    return len;
 }
 
index 269968d..aa96766 100644 (file)
@@ -2710,6 +2710,7 @@ struct gl_extensions
    GLboolean S3_s3tc;
    GLboolean OES_EGL_image;
    GLboolean OES_draw_texture;
+   GLboolean EXT_texture_format_BGRA8888;
    /** The extension string */
    const GLubyte *String;
    /** Number of supported extensions */