Index: cc/resources/resource_format.cc |
diff --git a/cc/resources/resource_format.cc b/cc/resources/resource_format.cc |
index 2d139ab5c0465e910b289844893c6acb63a3653f..1c4004906c4012b9cd57ec6513dd0cf0c7a01a18 100644 |
--- a/cc/resources/resource_format.cc |
+++ b/cc/resources/resource_format.cc |
@@ -18,6 +18,7 @@ int BitsPerPixel(ResourceFormat format) { |
case RGBA_4444: |
case RGB_565: |
case LUMINANCE_F16: |
+ case RG_88: |
return 16; |
case ALPHA_8: |
case LUMINANCE_8: |
@@ -42,6 +43,7 @@ GLenum GLDataType(ResourceFormat format) { |
GL_UNSIGNED_BYTE, // ETC1 |
GL_UNSIGNED_BYTE, // RED_8 |
GL_HALF_FLOAT_OES, // LUMINANCE_F16 |
+ GL_UNSIGNED_BYTE, // RG_88 |
}; |
static_assert(arraysize(format_gl_data_type) == (RESOURCE_FORMAT_MAX + 1), |
"format_gl_data_type does not handle all cases."); |
@@ -61,6 +63,7 @@ GLenum GLDataFormat(ResourceFormat format) { |
GL_ETC1_RGB8_OES, // ETC1 |
GL_RED_EXT, // RED_8 |
GL_LUMINANCE, // LUMINANCE_F16 |
+ GL_RG_EXT, // RG_88 |
}; |
static_assert(arraysize(format_gl_data_format) == (RESOURCE_FORMAT_MAX + 1), |
"format_gl_data_format does not handle all cases."); |
@@ -91,6 +94,7 @@ GLenum GLCopyTextureInternalFormat(ResourceFormat format) { |
GL_RGB, // ETC1 |
GL_LUMINANCE, // RED_8 |
GL_LUMINANCE, // LUMINANCE_F16 |
+ GL_RG8_EXT, // RG_88 |
}; |
static_assert(arraysize(format_gl_data_format) == (RESOURCE_FORMAT_MAX + 1), |
"format_gl_data_format does not handle all cases."); |
@@ -103,6 +107,8 @@ gfx::BufferFormat BufferFormat(ResourceFormat format) { |
return gfx::BufferFormat::BGRA_8888; |
case RED_8: |
return gfx::BufferFormat::R_8; |
+ case RG_88: |
+ return gfx::BufferFormat::RG_88; |
case RGBA_4444: |
return gfx::BufferFormat::RGBA_4444; |
case RGBA_8888: |
@@ -135,6 +141,7 @@ bool DoesResourceFormatSupportAlpha(ResourceFormat format) { |
case ETC1: |
case RED_8: |
case LUMINANCE_F16: |
+ case RG_88: |
return false; |
} |
NOTREACHED(); |