Re: [patch] gl: create BGRA texture and avoid conversion
Martin Robinson <[email protected]>
| Newsgroups | gmane.comp.lib.cairo |
|---|---|
| Message-ID | <[email protected]> |
On 01/30/2013 12:48 PM, Henry (Yu) Song - SISA wrote: > ctx->supports_bgra is more meaningful, it means it supports both > creating BGRA texture and can read that back into BGRA format. > The GL_EXT_texture_format_BGRA888 is requirement of cairo, as > checked at line 223 in cairo-gl-device.c . There is no need > to check it again. Maybe I'm misunderstanding this: Cairo requires GL_EXT_texture_format_BGRA888, which means that all drivers that support Cairo support uploading BGRA data to textures. Thus the only distinction necessary in the context is whether or not the hardware and driver support reading BGRA data. That you can upload BGRA is implicit. > ctx-supports_bgra == FALSE on desktop is to prevent create BGRA > texture on GL drivers, OpenGL does not allow to create texture > of internal format of BGRA. It seems better to simply check at the time you create the texture or to add a helper method like _cairo_gl_can_create_bgra_textures. Desktop always supports BGRA. > The last point is something to do with stride difference of PIXMAN_a8b8g8r8 > vs. PIXMAN_x8b8g8r8. At least I know some gles driver does not upload > PIXMAN_x8b8g8r8 format correctly. Driver bugs? Perhaps people who know pixman better have an idea. Seems odd to punish all devices. --Martin -- cairo mailing list [email protected] http://lists.cairographics.org/mailman/listinfo/cairo