Highlighting pfGeoSets compiled into display lists

New Message Reply Date view Thread view Subject view Author view

From: Simon C Mills (simon++at++wgs.estec.esa.nl)
Date: 03/06/2001 08:06:39


Hi performers,

How do I force re-compilation of display lists when I update a pfGeoSet
highlight? I want to highlight some geometry using the PFHL_FILL mode.
It works fine on an Octane. On an Onyx2 iR I've set up my application to
compile pfGeoSets into display lists for performance reasons. Setting
the highlight doesn't work in this case since the display lists are
still being rendered. The man page for pfGeoSet says:

          Coherency
               If any attribute of the pfGeoSet changes then the burden
is on
               the user to regenerate the GL display list through
               pfGeoSet::setDrawMode.

So I do:

static void
setGSetHlight(pfGeoSet *gset, pfHighlight *hl)
{
    gset->setHlight(hl);
    if (gset->getDrawMode(PFGS_COMPILE_GL))
            gset->setDrawMode(PFGS_COMPILE_GL, PF_ON);
}

but this doesn't work. Do I need to somehow invalidate the display list
first? The man pages are terse on this subject and the examples don't
help.

An alternative is to disable the display lists during highlighting (only
for a short period) but once I've done that there is no way to know
which pfGeoSets where compiled in the first place. It would require
redoing some of my initialization code - not elegant.

Using pf2.2 or Onyx2 iR, IRIX 6.5.8m.

Simon
_______________________________________________________________________

Simon Mills
Silicon Worlds S.A.
c/o Modelling & Simulation Section (TOS-EMM) Tel: +31 (0)71 565 3725
European Space Agency (ESA/ESTEC) Fax: +31 (0)71 565 5419
Postbus 299, 2200AG Noordwijk e-mail: simon++at++wgs.estec.esa.nl
The Netherlands http://www.estec.esa.nl/wmwww/EMM
_______________________________________________________________________


New Message Reply Date view Thread view Subject view Author view

This archive was generated by hypermail 2b29 : Tue Mar 06 2001 - 08:04:14 PST

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