forked from enlightenment/efl
evas/gl - fix to render grayscale with transparency format in gl backened.
In case of png, grayscale with transparency format (transparency doesn't mean the png has alpha channel) gl doesn't prepare that format render. In this case, set it argb8888 to convert the data in the png loader. @fix
This commit is contained in:
parent
c23ed65a3c
commit
d69e4fbe20
|
@ -221,6 +221,13 @@ _evas_gl_common_image(Evas_Engine_GL_Context *gc, RGBA_Image *im_im, Evas_Image_
|
||||||
// ETC2 is backwards compatible with ETC1 but we prefer ETC2
|
// ETC2 is backwards compatible with ETC1 but we prefer ETC2
|
||||||
if (cspace == EVAS_COLORSPACE_ETC1 && gc->shared->info.etc2)
|
if (cspace == EVAS_COLORSPACE_ETC1 && gc->shared->info.etc2)
|
||||||
cspace = EVAS_COLORSPACE_RGB8_ETC2;
|
cspace = EVAS_COLORSPACE_RGB8_ETC2;
|
||||||
|
|
||||||
|
/* Current GL doesn't support grayscale with transparency
|
||||||
|
let it convert to argb8888 in loader */
|
||||||
|
if ((cspace == EVAS_COLORSPACE_GRY8) &&
|
||||||
|
im_im->cache_entry.flags.alpha)
|
||||||
|
cspace = EVAS_COLORSPACE_ARGB8888;
|
||||||
|
|
||||||
im_im->cache_entry.space = cspace;
|
im_im->cache_entry.space = cspace;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue