Hash :
fbec291e
Author :
Date :
2020-10-21T19:32:38
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
The original attempt at landing this change
(https://chromium-review.googlesource.com/c/angle/angle/+/2489726)
was reverted due to dEQP failures on the Metal backend. After some
investigation, it was decided to simply disable the 2 offending
tests for now.
Bug: angleproject:5174
Change-Id: Id1e382b72d91109e4718c729cc6c5f0a0f413d7d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2491930
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Alexis Hétu <sugoi@chromium.org>