Make RGB16F/RGB32F not color-renderable in ES 3.2
authorAlexander Galazin <alexander.galazin@arm.com>
Thu, 19 Jan 2017 20:00:10 +0000 (21:00 +0100)
committerAlexander Galazin <Alexander.Galazin@arm.com>
Thu, 19 Jan 2017 20:03:29 +0000 (15:03 -0500)
GL_RGB16F is color-renderable only if
GL_EXT_color_buffer_half_float is supported.

GL_RGB32F is color-renderable only if
GL_EXT_color_buffer_float is supported.

Affects: dEQP-GLES31.functional.fbo.color.texcubearray.rgb16f

VK-GL-CTS issue: 40

Components: AOSP

Change-Id: I2cf3eb7e8d5c361ac23a64128b0d27958dc48438

modules/gles31/functional/es31fFboTestCase.cpp

index ec4ebed..fcb488a 100644 (file)
@@ -205,12 +205,10 @@ static bool isRequiredFormat (deUint32 format, glu::RenderContext& renderContext
 
                // Float format
                case GL_RGBA32F:
-               case GL_RGB32F:
                case GL_R11F_G11F_B10F:
                case GL_RG32F:
                case GL_R32F:
                case GL_RGBA16F:
-               case GL_RGB16F:
                case GL_RG16F:
                case GL_R16F:
                        return supportsES32;
@@ -229,8 +227,15 @@ static std::vector<std::string> getEnablingExtensions (deUint32 format, glu::Ren
 
        switch (format)
        {
-               case GL_RGBA16F:
                case GL_RGB16F:
+                       out.push_back("GL_EXT_color_buffer_half_float");
+                       break;
+
+               case GL_RGB32F:
+                       out.push_back("GL_EXT_color_buffer_float");
+                       break;
+
+               case GL_RGBA16F:
                case GL_RG16F:
                case GL_R16F:
                        if (!supportsES32)
@@ -238,7 +243,6 @@ static std::vector<std::string> getEnablingExtensions (deUint32 format, glu::Ren
                        break;
 
                case GL_RGBA32F:
-               case GL_RGB32F:
                case GL_R11F_G11F_B10F:
                case GL_RG32F:
                case GL_R32F: