[comp.sys.sgi] drawing into the background

dwallach@soda.berkeley.edu (Dan Wallach) (04/11/91)

I've written a cute animated program that can draw into a window or the
background.  It uses doublebuffer() and RGBmode().

When the program is in a window, everything works how you'd expect.
Cover it, uncover it, etc.  No problem.  However, when I've called
imakebackground() the fun begins.

Initially, everything works just fine (albeit slow -- it takes forever
to clear the background).  Then, I open/close/or move another window.
As far as I can tell, one of the buffers keeps the shadow of the old
window, and the other doesn't have it at all.  You see the old window's
shadow blinking.

Also, clear() now only works on one of the buffers.  On the other one,
everything that was there continues to be there.  This results in some
ugly streaking effects for my animated backdrop.

How can I solve this problem, i.e., why doesn't clear() work?

FYI:
   Hardware: SGI Personal Iris 4D/25
   Software: Irix 3.3.1

Thanks for your help,

Dan Wallach
dwallach@soda.berkeley.edu