Re: Render order

New Message Reply Date view Thread view Subject view Author view

From: Lawrence Bertoldi (lberto++at++bert.clubfed.sgi.com)
Date: 01/12/2000 13:06:37


Hummm

I guess it really depends on the level of control you want
over when it is drawn! If you always want it drawn first of last
or after the opaque objects but before the transparent
then you could set up your own bin, add geosets to it via
pfGeoSet::setDrawBin and reorder the bins to draw each bin when you
want
or set your new bin order to -1 will cause the geosets (NOT) added to it
to be drawn immediately.

I like don's approch but I don't know if it will accomplish the part
autodraw part draw on demand
cuzz you have to set up the draw order for everything!

 

See Ya,

Lawrence Eugene Bertoldi Technical Consultant
vnet 238-8949 Silicon Graphics
phone 301-572-8949 Silver Spring MD.
email lberto++at++clubfed.sgi.com

~;-}>

On Wed, 12 Jan 2000, Lawrence Bertoldi wrote:

> Did you explicitly turn of sorting?
>
> If you want to take control of the render order you ned to do that
>
> chan->setBinSort(PFSORT_TRANSP_BIN, PFSORT_NO_SORT, NULL);
>
> Now of corse this means that you are responsable for the
> order in which things are rendered. Every thing in the
> scene will render in the order it is placed in the scene graph!!
>
>
>
> See Ya,
>
> Lawrence Eugene Bertoldi Technical Consultant
> vnet 238-8949 Silicon Graphics
> phone 301-572-8949 Silver Spring MD.
> email lberto++at++clubfed.sgi.com
>
> ~;-}>
>
> On Wed, 12 Jan 2000, Stephen Maher wrote:
>
> > Yair,
> >
> > I have a followup problem .. how do you force render order?
> >
> > I want to force children B and C of pfGroup A to be rendered in the
> > order they're defined in the scene graph (i.e., B, then C). B is
> > the result of a pfdLoadFile; C is dynamic geometry. The order of
> > rendering between B and C is dependent, understandibly, on what file
> > is loaded under B and how Performer sorts the resulting state and
> > geosets. But I need B to render before C (because I force
> > translucency in C (which is in front of B) using GL_CONSTANT_ALPHA_EXT
> > in C's pre draw callback).
> >
> > I tried adding DRAW callbacks to B, C, and A to turn off sorting, but that
> > didn't work.
> >
> > So then I tried pfChanTravMode(... (PFCULL_VIEW | PFCULL_GSET) ..) for the
> > channel to turn off sorting for the whole channel, but that didn't work
> > either.
> >
> > Only after I stripped all the geostate's from all the geosets under B did
> > B render before C. Yuck.
> >
> > I guess the next step is a custom bin, but shouldn't the above steps
> > achieve what I want?
> >
> > Thanks,
> > Steve
> >
> >
> > On Tue, Jan 11, 2000 at 05:42:57PM -0800, Yair Kurzion wrote:
> > > >
> > > > Yair Kurzion wrote:
> > > > >
> > > > > Hello Steve !
> > > > >
> > > > > Say you put a DRAW callback on a node A, and node A has children B, C, D, E.
> > > > > Performer will make sure that this callback is called before drawing ANY of the
> > > > > children of this node.
> > > >
> > > > The pre draw is called before all children the post draw is called after
> > > > all children.
> > > >
> > > > >..... If Performer decided to draw some children interleaved
> > > > > with other geometry (e.g. B, C, g1, D, E where g1 is some other geometry), it
> > > > > will call the draw callback multiple times - once for each time its starts
> > > > > drawing some children of A (In the example, the DRAW callback gets called
> > > > > before drawing B and before drawing D).
> > > >
> > > > I'm confused, draw callbacks turn sorting off bellow the node so how
> > > > could the above scenario happen?
> > >
> > > Performer state sorting is local to a pfBin. When different GeoSets and up in
> > > different bins, they will be sorted within their bins. State sorting will
> > > indeed avoid sorting across a DRAW callback inside a pfBin.
> > >
> > > -yair
> > >
> > >
> > > --
> > > \_________ \_____ \__ \__ \_____ Yair Kurzion
> > > \_________ \_____ \__ \__ \_____ yair++at++sgi.com
> > > \__ \__ \____\__ \__ http://reality.sgi.com/yair
> > > \__ \__ \__ Work: (650) 933-6502
> > > \__ \__ \__ Home: (408) 226-9771
> > > \__ \__ \__
> >
> > --
> > stephen.maher++at++gsfc.nasa.gov (301) 286-3368 fax:(301) 286-1776
> > http://holodeck.gsfc.nasa.gov/vr/vr.html
> > http://svs.gsfc.nasa.gov http://www.digitalearth.gov
> > NASA Goddard Space Flight Center
> > -----------------------------------------------------------------------
> > List Archives, FAQ, FTP: http://www.sgi.com/software/performer/
> > Submissions: info-performer++at++sgi.com
> > Admin. requests: info-performer-request++at++sgi.com
> >
>
> -----------------------------------------------------------------------
> List Archives, FAQ, FTP: http://www.sgi.com/software/performer/
> 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 2b29 : Wed Jan 12 2000 - 13:04:50 PST

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