diff --git a/cogl/cogl/cogl-bitmap-conversion.c b/cogl/cogl/cogl-bitmap-conversion.c index 7cae66427..b97f90e7d 100644 --- a/cogl/cogl/cogl-bitmap-conversion.c +++ b/cogl/cogl/cogl-bitmap-conversion.c @@ -355,7 +355,9 @@ _cogl_bitmap_needs_short_temp_buffer (CoglPixelFormat format) case COGL_PIXEL_FORMAT_ABGR_2101010_PRE: case COGL_PIXEL_FORMAT_RGBA_FP_16161616: case COGL_PIXEL_FORMAT_BGRA_FP_16161616: + case COGL_PIXEL_FORMAT_XRGB_FP_16161616: case COGL_PIXEL_FORMAT_ARGB_FP_16161616: + case COGL_PIXEL_FORMAT_XBGR_FP_16161616: case COGL_PIXEL_FORMAT_ABGR_FP_16161616: case COGL_PIXEL_FORMAT_RGBA_FP_16161616_PRE: case COGL_PIXEL_FORMAT_BGRA_FP_16161616_PRE: diff --git a/cogl/cogl/cogl-bitmap-packing.h b/cogl/cogl/cogl-bitmap-packing.h index 713e90d17..9448e57ad 100644 --- a/cogl/cogl/cogl-bitmap-packing.h +++ b/cogl/cogl/cogl-bitmap-packing.h @@ -408,7 +408,9 @@ G_PASTE (_cogl_unpack_, component_size) (CoglPixelFormat format, break; case COGL_PIXEL_FORMAT_RGBA_FP_16161616: case COGL_PIXEL_FORMAT_BGRA_FP_16161616: + case COGL_PIXEL_FORMAT_XRGB_FP_16161616: case COGL_PIXEL_FORMAT_ARGB_FP_16161616: + case COGL_PIXEL_FORMAT_XBGR_FP_16161616: case COGL_PIXEL_FORMAT_ABGR_FP_16161616: case COGL_PIXEL_FORMAT_RGBA_FP_16161616_PRE: case COGL_PIXEL_FORMAT_BGRA_FP_16161616_PRE: @@ -789,7 +791,9 @@ G_PASTE (_cogl_pack_, component_size) (CoglPixelFormat format, break; case COGL_PIXEL_FORMAT_RGBA_FP_16161616: case COGL_PIXEL_FORMAT_BGRA_FP_16161616: + case COGL_PIXEL_FORMAT_XRGB_FP_16161616: case COGL_PIXEL_FORMAT_ARGB_FP_16161616: + case COGL_PIXEL_FORMAT_XBGR_FP_16161616: case COGL_PIXEL_FORMAT_ABGR_FP_16161616: case COGL_PIXEL_FORMAT_RGBA_FP_16161616_PRE: case COGL_PIXEL_FORMAT_BGRA_FP_16161616_PRE: diff --git a/cogl/cogl/cogl-pixel-format.c b/cogl/cogl/cogl-pixel-format.c index 06fe79cad..0210af046 100644 --- a/cogl/cogl/cogl-pixel-format.c +++ b/cogl/cogl/cogl-pixel-format.c @@ -273,6 +273,13 @@ static const CoglPixelFormatInfo format_info_table[] = { .bpp = { 8 }, .aligned = 1 }, + { + .cogl_format = COGL_PIXEL_FORMAT_XRGB_FP_16161616, + .format_str = "ARGB_FP_16161616", + .n_planes = 1, + .bpp = { 8 }, + .aligned = 1 + }, { .cogl_format = COGL_PIXEL_FORMAT_ARGB_FP_16161616, .format_str = "ARGB_FP_16161616", @@ -280,6 +287,13 @@ static const CoglPixelFormatInfo format_info_table[] = { .bpp = { 8 }, .aligned = 1 }, + { + .cogl_format = COGL_PIXEL_FORMAT_XBGR_FP_16161616, + .format_str = "ABGR_FP_16161616", + .n_planes = 1, + .bpp = { 8 }, + .aligned = 1 + }, { .cogl_format = COGL_PIXEL_FORMAT_ABGR_FP_16161616, .format_str = "ABGR_FP_16161616", diff --git a/cogl/cogl/cogl-pixel-format.h b/cogl/cogl/cogl-pixel-format.h index 771e4715c..5c326f6a4 100644 --- a/cogl/cogl/cogl-pixel-format.h +++ b/cogl/cogl/cogl-pixel-format.h @@ -228,7 +228,9 @@ typedef enum /*< prefix=COGL_PIXEL_FORMAT >*/ COGL_PIXEL_FORMAT_RGBA_FP_16161616 = (11 | COGL_A_BIT), COGL_PIXEL_FORMAT_BGRA_FP_16161616 = (11 | COGL_A_BIT | COGL_BGR_BIT), + COGL_PIXEL_FORMAT_XRGB_FP_16161616 = (11 | COGL_AFIRST_BIT), COGL_PIXEL_FORMAT_ARGB_FP_16161616 = (11 | COGL_A_BIT | COGL_AFIRST_BIT), + COGL_PIXEL_FORMAT_XBGR_FP_16161616 = (11 | COGL_BGR_BIT | COGL_AFIRST_BIT), COGL_PIXEL_FORMAT_ABGR_FP_16161616 = (11 | COGL_A_BIT | COGL_BGR_BIT | COGL_AFIRST_BIT), COGL_PIXEL_FORMAT_RGBA_8888_PRE = (3 | COGL_A_BIT | COGL_PREMULT_BIT), diff --git a/cogl/cogl/driver/gl/gl/cogl-driver-gl.c b/cogl/cogl/driver/gl/gl/cogl-driver-gl.c index b3270734c..83939e882 100644 --- a/cogl/cogl/driver/gl/gl/cogl-driver-gl.c +++ b/cogl/cogl/driver/gl/gl/cogl-driver-gl.c @@ -302,12 +302,14 @@ _cogl_driver_pixel_format_to_gl (CoglContext *context, glformat = GL_BGRA; gltype = GL_HALF_FLOAT; break; + case COGL_PIXEL_FORMAT_XRGB_FP_16161616: case COGL_PIXEL_FORMAT_ARGB_FP_16161616: case COGL_PIXEL_FORMAT_ARGB_FP_16161616_PRE: glintformat = GL_RGBA; glformat = GL_BGRA; gltype = GL_HALF_FLOAT; break; + case COGL_PIXEL_FORMAT_XBGR_FP_16161616: case COGL_PIXEL_FORMAT_ABGR_FP_16161616: case COGL_PIXEL_FORMAT_ABGR_FP_16161616_PRE: glintformat = GL_RGBA; diff --git a/cogl/cogl/driver/gl/gl/cogl-texture-driver-gl.c b/cogl/cogl/driver/gl/gl/cogl-texture-driver-gl.c index d411c5832..6c59e2471 100644 --- a/cogl/cogl/driver/gl/gl/cogl-texture-driver-gl.c +++ b/cogl/cogl/driver/gl/gl/cogl-texture-driver-gl.c @@ -432,7 +432,9 @@ _cogl_texture_driver_upload_supported (CoglContext *ctx, case COGL_PIXEL_FORMAT_RGBA_5551_PRE: return TRUE; case COGL_PIXEL_FORMAT_BGRA_FP_16161616: + case COGL_PIXEL_FORMAT_XRGB_FP_16161616: case COGL_PIXEL_FORMAT_ARGB_FP_16161616: + case COGL_PIXEL_FORMAT_XBGR_FP_16161616: case COGL_PIXEL_FORMAT_ABGR_FP_16161616: case COGL_PIXEL_FORMAT_BGRA_FP_16161616_PRE: case COGL_PIXEL_FORMAT_ARGB_FP_16161616_PRE: diff --git a/cogl/cogl/driver/gl/gles/cogl-driver-gles.c b/cogl/cogl/driver/gl/gles/cogl-driver-gles.c index 9ea3b55fd..a9c3e7f32 100644 --- a/cogl/cogl/driver/gl/gles/cogl-driver-gles.c +++ b/cogl/cogl/driver/gl/gles/cogl-driver-gles.c @@ -213,7 +213,9 @@ _cogl_driver_pixel_format_to_gl (CoglContext *context, break; case COGL_PIXEL_FORMAT_BGRA_FP_16161616: + case COGL_PIXEL_FORMAT_XRGB_FP_16161616: case COGL_PIXEL_FORMAT_ARGB_FP_16161616: + case COGL_PIXEL_FORMAT_XBGR_FP_16161616: case COGL_PIXEL_FORMAT_ABGR_FP_16161616: case COGL_PIXEL_FORMAT_BGRA_FP_16161616_PRE: case COGL_PIXEL_FORMAT_ARGB_FP_16161616_PRE: diff --git a/cogl/cogl/driver/gl/gles/cogl-texture-driver-gles.c b/cogl/cogl/driver/gl/gles/cogl-texture-driver-gles.c index b9f396c9b..978ffeb8b 100644 --- a/cogl/cogl/driver/gl/gles/cogl-texture-driver-gles.c +++ b/cogl/cogl/driver/gl/gles/cogl-texture-driver-gles.c @@ -485,7 +485,9 @@ _cogl_texture_driver_upload_supported (CoglContext *ctx, case COGL_PIXEL_FORMAT_RGBA_5551_PRE: return TRUE; case COGL_PIXEL_FORMAT_BGRA_FP_16161616: + case COGL_PIXEL_FORMAT_XRGB_FP_16161616: case COGL_PIXEL_FORMAT_ARGB_FP_16161616: + case COGL_PIXEL_FORMAT_XBGR_FP_16161616: case COGL_PIXEL_FORMAT_ABGR_FP_16161616: case COGL_PIXEL_FORMAT_BGRA_FP_16161616_PRE: case COGL_PIXEL_FORMAT_ARGB_FP_16161616_PRE: