Commit 032431a1 by Alexis Hétu Committed by Commit Bot

Revert "Allow rendering to half float in ES2 contexts when possible"

This reverts commit 1dc0d394. Reason for revert: Causes a failure on the bots. See: http://anglebug.com/5206 Original change's description: > Allow rendering to half float in ES2 contexts when possible > > According to the EXT_color_buffer_half_float spec: > > "Dependencies on OES_texture_half_float > > If OES_texture_half_float is not supported, then all references to > RGBA16F_EXT, RGB16F_EXT, RG16F_EXT, R16F_EXT, HALF_FLOAT_OES and > half should be ignored. > > If OES_texture_half_float is supported, textures created with: > > <internalformat> = RGBA > <format> = RGBA > <type> = HALF_FLOAT_OES > > are renderable." > > This fixes 4 viz_unittests when running with SwANGLE: > All/GLI420ConverterPixelTest.ScaleAndConvert/0 > All/GLI420ConverterPixelTest.ScaleAndConvert/1 > GLScalerPixelTest.Example_ScaleAndExportForScreenVideoCapture > GLScalerPixelTest.ScalesWithColorManagement > > Bug: angleproject:5174 > Change-Id: If8623b1edbc8f0bac83513ea202ef49ad388101c > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2489726 > Commit-Queue: Alexis Hétu <sugoi@chromium.org> > Reviewed-by: Geoff Lang <geofflang@chromium.org> TBR=sugoi@chromium.org,geofflang@chromium.org,sugoi@google.com Change-Id: Iab2df8ac563661fcf270425408b17e7bbe48a255 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: angleproject:5174 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2490820Reviewed-by: 's avatarAlexis Hétu <sugoi@chromium.org> Commit-Queue: Alexis Hétu <sugoi@chromium.org>
parent 25bbf5d7
...@@ -138,6 +138,15 @@ static bool RequireExtOrExtOrExt(const Version &, const Extensions &extensions) ...@@ -138,6 +138,15 @@ static bool RequireExtOrExtOrExt(const Version &, const Extensions &extensions)
return extensions.*bool1 || extensions.*bool2 || extensions.*bool3; return extensions.*bool1 || extensions.*bool2 || extensions.*bool3;
} }
static bool UnsizedHalfFloatOESRGBATextureAttachmentSupport(const Version &clientVersion,
const Extensions &extensions)
{
// dEQP requires ES3 + EXT_color_buffer_half_float for rendering to RGB[A] + HALF_FLOAT_OES
// textures but WebGL allows it with just ES 2.0
return (clientVersion.major >= 3 || extensions.webglCompatibility) &&
extensions.colorBufferHalfFloat;
}
// R8, RG8 // R8, RG8
static bool SizedRGSupport(const Version &clientVersion, const Extensions &extensions) static bool SizedRGSupport(const Version &clientVersion, const Extensions &extensions)
{ {
...@@ -1071,8 +1080,8 @@ static InternalFormatInfoMap BuildInternalFormatInfoMap() ...@@ -1071,8 +1080,8 @@ static InternalFormatInfoMap BuildInternalFormatInfoMap()
AddRGBAFormat(&map, GL_RGBA, false, 16, 16, 16, 16, 0, GL_RGBA, GL_HALF_FLOAT, GL_FLOAT, false, NeverSupported, NeverSupported, NeverSupported, NeverSupported, NeverSupported); AddRGBAFormat(&map, GL_RGBA, false, 16, 16, 16, 16, 0, GL_RGBA, GL_HALF_FLOAT, GL_FLOAT, false, NeverSupported, NeverSupported, NeverSupported, NeverSupported, NeverSupported);
AddRGBAFormat(&map, GL_RED, false, 16, 0, 0, 0, 0, GL_RED, GL_HALF_FLOAT_OES, GL_FLOAT, false, RequireExtAndExt<&Extensions::textureHalfFloat, &Extensions::textureRG>, RequireExt<&Extensions::textureHalfFloatLinear>, AlwaysSupported, NeverSupported, NeverSupported); AddRGBAFormat(&map, GL_RED, false, 16, 0, 0, 0, 0, GL_RED, GL_HALF_FLOAT_OES, GL_FLOAT, false, RequireExtAndExt<&Extensions::textureHalfFloat, &Extensions::textureRG>, RequireExt<&Extensions::textureHalfFloatLinear>, AlwaysSupported, NeverSupported, NeverSupported);
AddRGBAFormat(&map, GL_RG, false, 16, 16, 0, 0, 0, GL_RG, GL_HALF_FLOAT_OES, GL_FLOAT, false, RequireExtAndExt<&Extensions::textureHalfFloat, &Extensions::textureRG>, RequireExt<&Extensions::textureHalfFloatLinear>, AlwaysSupported, NeverSupported, NeverSupported); AddRGBAFormat(&map, GL_RG, false, 16, 16, 0, 0, 0, GL_RG, GL_HALF_FLOAT_OES, GL_FLOAT, false, RequireExtAndExt<&Extensions::textureHalfFloat, &Extensions::textureRG>, RequireExt<&Extensions::textureHalfFloatLinear>, AlwaysSupported, NeverSupported, NeverSupported);
AddRGBAFormat(&map, GL_RGB, false, 16, 16, 16, 0, 0, GL_RGB, GL_HALF_FLOAT_OES, GL_FLOAT, false, RequireExt<&Extensions::textureHalfFloat>, RequireExt<&Extensions::textureHalfFloatLinear>, RequireExt<&Extensions::colorBufferHalfFloat>, NeverSupported, NeverSupported); AddRGBAFormat(&map, GL_RGB, false, 16, 16, 16, 0, 0, GL_RGB, GL_HALF_FLOAT_OES, GL_FLOAT, false, RequireExt<&Extensions::textureHalfFloat>, RequireExt<&Extensions::textureHalfFloatLinear>, UnsizedHalfFloatOESRGBATextureAttachmentSupport, NeverSupported, NeverSupported);
AddRGBAFormat(&map, GL_RGBA, false, 16, 16, 16, 16, 0, GL_RGBA, GL_HALF_FLOAT_OES, GL_FLOAT, false, RequireExt<&Extensions::textureHalfFloat>, RequireExt<&Extensions::textureHalfFloatLinear>, RequireExt<&Extensions::colorBufferHalfFloat>, NeverSupported, NeverSupported); AddRGBAFormat(&map, GL_RGBA, false, 16, 16, 16, 16, 0, GL_RGBA, GL_HALF_FLOAT_OES, GL_FLOAT, false, RequireExt<&Extensions::textureHalfFloat>, RequireExt<&Extensions::textureHalfFloatLinear>, UnsizedHalfFloatOESRGBATextureAttachmentSupport, NeverSupported, NeverSupported);
AddRGBAFormat(&map, GL_RED, false, 32, 0, 0, 0, 0, GL_RED, GL_FLOAT, GL_FLOAT, false, RequireExtAndExt<&Extensions::textureFloatOES, &Extensions::textureRG>, RequireExt<&Extensions::textureFloatLinearOES>, AlwaysSupported, NeverSupported, NeverSupported); AddRGBAFormat(&map, GL_RED, false, 32, 0, 0, 0, 0, GL_RED, GL_FLOAT, GL_FLOAT, false, RequireExtAndExt<&Extensions::textureFloatOES, &Extensions::textureRG>, RequireExt<&Extensions::textureFloatLinearOES>, AlwaysSupported, NeverSupported, NeverSupported);
AddRGBAFormat(&map, GL_RG, false, 32, 32, 0, 0, 0, GL_RG, GL_FLOAT, GL_FLOAT, false, RequireExtAndExt<&Extensions::textureFloatOES, &Extensions::textureRG>, RequireExt<&Extensions::textureFloatLinearOES>, AlwaysSupported, NeverSupported, NeverSupported); AddRGBAFormat(&map, GL_RG, false, 32, 32, 0, 0, 0, GL_RG, GL_FLOAT, GL_FLOAT, false, RequireExtAndExt<&Extensions::textureFloatOES, &Extensions::textureRG>, RequireExt<&Extensions::textureFloatLinearOES>, AlwaysSupported, NeverSupported, NeverSupported);
AddRGBAFormat(&map, GL_RGB, false, 32, 32, 32, 0, 0, GL_RGB, GL_FLOAT, GL_FLOAT, false, RequireExt<&Extensions::textureFloatOES>, RequireExt<&Extensions::textureFloatLinearOES>, NeverSupported, NeverSupported, NeverSupported); AddRGBAFormat(&map, GL_RGB, false, 32, 32, 32, 0, 0, GL_RGB, GL_FLOAT, GL_FLOAT, false, RequireExt<&Extensions::textureFloatOES>, RequireExt<&Extensions::textureFloatLinearOES>, NeverSupported, NeverSupported, NeverSupported);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment