clip masks/simulating transparency

Amy C mathematical.coffee at gmail.com
Mon May 30 22:28:07 PDT 2011


Hi all,

I've sort-of worked it out (I think??) but would still like suggestions on
this.
The penguins -are- being drawn using the clip mask correctly onto the window
of my choice.

The problem was that each penguin comprises a little animation (penguin is
moving), and the expose event was only being sent once per animation, not
after every single frame of the animation. Since the penguins move only a
few pixels per animations (say 20 or so) it looked like the clip mask just
wasn't working.

I've modified the code to send an expose event after each frame of the
animation is drawn (so truly after each penguin is drawn), but now (as
expected) it looks very very flickery -- every cycle we get a XClearArea
where the old penguin was, an XExposeEvent where the old penguin was, and a
XCopyArea of the next frame of the animation.

Can anyone think of an alternative way to do this (have the penguins walk
over a screen of my choosing and restore said window after they've passed
through, without too much flickering?) -- perhaps I can copy the relevant
bit of background as the background of the penguin pixmap itself, although I
think I'd need to send an XExposeEvent before I can grab the background?

[So close! Soon I shall have penguins taking over my windows! SOON! bahaha]
cheers
Amy
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.x.org/archives/xorg/attachments/20110531/2a5eeda4/attachment.html>


More information about the xorg mailing list