display lists in draw callback

New Message Reply Date view Thread view Subject view Author view

Madhu Sethi (madhu++at++cae.ca)
Mon, 24 Jun 1996 12:30:09 -0400


Hi,

We have a mulit-channel application, where different channels update at
different rates. Since we set the frame update rate to that of the fastest
channel, we would like to have the slower channels render the same scene for
several frames.

We were hoping to make use of display lists to capture the draw commands of 1
frame, and then draw this display list in the following frames. I've tried
(unsucessfully) to implement it as follows: (I've just added this callback to
simple.C)

myDrawCallbackFunc(pfChannel *chan, void *) {
        static int c = 1;
        static pfDispList dl(PFDL_FLAT, 0);

        if (c) {
                dl.open();
                pfDraw();
                dl.close();
                c = 0;
        }

        chan->clear();
        dl.draw();
}

The scene is still upated every frame, so I guess this display list is updated.
Can someone tell me what exactly would be in this display list - are there
pointers to something that is updated by pfCull? And is there a way to make
this work? Basically, we need a very low cost way of rendering the same scene
on 1 channel for several frames.

Thanks!

-- 
Madhu Sethi			CAE Electronics Ltd., 8585 Cote De Liesse
Software Developer		Saint-Laurent, Quebec, Canada, H4L-4X4
3-D Graphics Applications	tel: +1 514 341 2000 extension 2275
madhu++at++cae.ca			fax: +1 514 340 5496
=======================================================================
List Archives, FAQ, FTP:  http://www.sgi.com/Technology/Performer.html
            Submissions:  info-performer++at++sgi.com
        Admin. requests:  info-performer-request++at++sgi.com

New Message Reply Date view Thread view Subject view Author view

This archive was generated by hypermail 2.0b2 on Mon Aug 10 1998 - 17:53:03 PDT

This message has been cleansed for anti-spam protection. Replace '++at++' in any mail addresses with the '@' symbol.