On 11/22/06, Fons Adriaensen <fons.adriaensen(a)skynet.be> wrote:
On Wed, Nov 22, 2006 at 12:37:16AM +0100, Dominic
Sacré wrote:
> Wow, 1%?! Is that using plain X11? Sounds almost too good to be true.
> I think it goes without saying that I'd be interested in seeing your
> code ;)
The main X11 call used are:
XCopyArea() scroll
XFillRectange() clear the new part
XDrawSegments() plot the new lines
Yes, the key to fast (efficient) scrolling is to use a pixel copying
routine (glCopyPixels is the GL equivalent) then draw only the new
data. The copying routines are hardware accelerated by the display
driver. The downside is that it is difficult to overlay drawing into
this area that you don't want scrolled, which might be why
freewheeling doesn't use the technique (I'm just guessing).
jlc