Re: [patch] gl: do not force flush everytime uploading a glyph image to glyph cache
Eric Anholt <[email protected]>
| Newsgroups | gmane.comp.lib.cairo |
|---|---|
| Message-ID | <[email protected]> |
"Henry (Yu) Song - SISA" <[email protected]> writes: > Hi, Eric > > Thanks for review and comment. I will reformat the message. > > Each glyph uploading causes a flush of previous glDrawXXX(). A single > glyph uploading is done by _cairo_gl_surface_draw_image(), in which > _cairo_gl_composite_flush() is called. > > If I understand correctly, the question is how to ensure all glyph > drawings are flushed before we start draw something else. correct me > if I am wrong. > > _cairo_gl_composite_flush () is called in multiple points, for example > when mask surface has changed. In glyph rendering, we uses two > particular mask surface - one is the glyph cache that stores > alpha-only glyphs, the second one is the rgba-glyph cache that stores > lcd/subpixel images. It is ensured all glyphs will be glDraw() before > we switch to draw something else in _cairo_gl_operand_needs_setup(), > where it checks the new mask vs the ctx->mask. From what I can see, add_glyph is inside of the loop rendering glyphs to the temp mask. I want to know how the rendering of former glyphs to the into the temp mask gets flushed when a new glyph is being put into the glyph cache that may overwrite a previous glyph. -- cairo mailing list [email protected] http://lists.cairographics.org/mailman/listinfo/cairo
signature.asc
(application/pgp-signature, 197 B)
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.12 (GNU/Linux) iEYEARECAAYFAlEIipsACgkQHUdvYGzw6vfvFACcDRry7jeoVARIFOBCgGGraS+R E9UAniRbzlLbKPmP4szhX1emsA/zYxH5 =wcmq -----END PGP SIGNATURE-----