From: | Bart King |
Date: | 31 Aug 2000 at 10:58:58 |
Subject: | Re: CGX and Bitmaps |
At 30-Aug-00 19:20:32, Tim Hanson <msinister@connectfree.co.uk> wrote:
> It also means you don`t have to synch with the vertical blank if I nderstand
> what I`ve been told.
Triple-buffering is this:
- Two buffers for standard double-buffering techniques. Swap the
display when the "back" buffer has been updated.
- One buffer for working on. This buffer is updated all the time, and
copied to the "back" buffer after all rendering is complete.
Triple-buffering is used by programs that do all their work with chunky
data - it is not required for Amiga planar rendering because you can
just use the "back" buffer of double-buffering and it saves Chip memory.
A third buffer can be used for mixing, blending and other effects as
well without destroying the original screen data.
Pros and cons with triple-buffered displays:
+ Slick and smooth display updates.
+ Makes good use of the graphics cards own hardware.
+ Faster than using computer's memory.
- Uses a lot of memory on both the graphics card and the computer.
- If the display synchronization is out, a "flashing" effect occurs.
- A bitch to implement, especially if you need to support AGA as well.
As a guide, my video sub-system (which uses triple-buffering) complete
with rendering functions and AGA support weighs in at a heavy 300 K of
code - and that's without nice effects.