Re: Cairo + GTK animation - high Xorg load
Stefan Salewski <[email protected]>
| Newsgroups | gmane.comp.lib.cairo |
|---|---|
| Message-ID | <[email protected]> |
On Thu, 2016-10-27 at 14:40 -0400, David J. Herzfeld wrote: > I've updated the example again, to use exactly this model > <http://pastebin.com/apaFiGyd>. Here, the Xorg load is decreased > somewhat (at the expense of increased load for the actual > application), > but Xorg load is still ~15% and scales with the size of the window. Interesting. Currently I have only one remark: You create an image surface for your drawing, which then is copied to the X display. But that image may be not good compatible with the X display. Generally it is recommended to use cairo_surface_create_similar() to get a mostly compatibe surface. I think that is what I tried for my graphics editor. That is not really straight forward, one has to extract the surface used by XOrg first to be able to create the new surface. I can not remember how I did it, I have not used cairo in the last two years. Maybe even better: https://www.cairographics.org/manual/cairo-cairo-t.html#cairo-push-group With this you can draw to an intermediate surface with no X involved, and copy the result back with the pop operation. Unfortunately most existings cairo examples are outdated. There is one example called threaded animation, I once considered using that to create a Nim example, but I was told that that example contains bad code, so I have never investigated that any further. -- cairo mailing list [email protected] https://lists.cairographics.org/mailman/listinfo/cairo