Added support for renderbuffer formats used by the CTS.
TRAC #22890
Signed-off-by: Geoff Lang
Signed-off-by: Shannon Woods
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/branches/es3proto@2158 736b8ea6-26fd-11df-bfd4-992fa37f6226
diff --git a/src/libGLESv2/renderer/Renderer11.cpp b/src/libGLESv2/renderer/Renderer11.cpp
index b06b7e4..d9c66bd 100644
--- a/src/libGLESv2/renderer/Renderer11.cpp
+++ b/src/libGLESv2/renderer/Renderer11.cpp
@@ -3136,6 +3136,7 @@
switch (format)
{
case DXGI_FORMAT_R8G8B8A8_UNORM:
+ case DXGI_FORMAT_R8G8B8A8_UNORM_SRGB:
{
unsigned int rgba = *reinterpret_cast<const unsigned int*>(data + 4 * x + y * inputPitch);
outColor->red = (rgba & 0x000000FF) * (1.0f / 0x000000FF);
@@ -3229,6 +3230,16 @@
}
break;
+ case DXGI_FORMAT_R10G10B10A2_UNORM:
+ {
+ unsigned int rgba = *reinterpret_cast<const unsigned int*>(data + 4 * x + y * inputPitch);
+ outColor->red = (rgba & 0x000003FF) * (1.0f / 0x000003FF);
+ outColor->green = (rgba & 0x000FFC00) * (1.0f / 0x000FFC00);
+ outColor->blue = (rgba & 0x3FF00000) * (1.0f / 0x3FF00000);
+ outColor->alpha = (rgba & 0xC0000000) * (1.0f / 0xC0000000);
+ }
+ break;
+
default:
ERR("ReadPixelColor not implemented for DXGI format %u.", format);
UNIMPLEMENTED();