Mesa (master): mesa: add GL_HALF_FLOAT as supported type to readpixels
Tapani Pälli
tpalli at kemper.freedesktop.org
Tue Mar 27 08:30:58 UTC 2018
Module: Mesa
Branch: master
Commit: 41cf30b8bc55fdf36adac3311002dc32b6715949
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=41cf30b8bc55fdf36adac3311002dc32b6715949
Author: Lin Johnson <johnson.lin at intel.com>
Date: Mon Mar 26 22:13:32 2018 +0800
mesa: add GL_HALF_FLOAT as supported type to readpixels
EXT_color_buffer_float spec states:
"An INVALID_OPERATION error is generated ... if the color buffer is
a floating-point format and type is not FLOAT, HALF FLOAT, or
UNSIGNED_INT_10F_11F_11F_REV."
This means that GL_HALF_FLOAT type should be supported when color
buffer has floating-point format.
Fixes Android CTS test android.view.cts.PixelCopyTest.
v2: remove comments of EXT_color_buffer_half_float as
EXT_color_buffer_float can use type GL_HALF_FLOAT
Signed-off-by: Lin Johnson <johnson.lin at intel.com>
Reviewed-by: Tapani Pälli <tapani.palli at intel.com>
---
src/mesa/main/readpix.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/mesa/main/readpix.c b/src/mesa/main/readpix.c
index 6ce340ddf9..4407f13289 100644
--- a/src/mesa/main/readpix.c
+++ b/src/mesa/main/readpix.c
@@ -920,6 +920,8 @@ read_pixels_es3_error_check(GLenum format, GLenum type,
case GL_RGBA:
if (type == GL_FLOAT && data_type == GL_FLOAT)
return GL_NO_ERROR; /* EXT_color_buffer_float */
+ if (type == GL_HALF_FLOAT && data_type == GL_FLOAT)
+ return GL_NO_ERROR;
if (type == GL_UNSIGNED_BYTE && data_type == GL_UNSIGNED_NORMALIZED)
return GL_NO_ERROR;
if (internalFormat == GL_RGB10_A2 &&
More information about the mesa-commit
mailing list