[info-performer] pfdBreakup and transparency

Date view Thread view Subject view Author view

From: John Kelso (kelso++at++nist.gov)
Date: 01/09/2004 14:36:56


Hi all,

I'm trying to write a file loader than displays translucent objects as
"realistically" as possible- i.e., no holes in the objects. At this point
I'm not yet too concerned with performance.

If I create geoSets by hand, each with a single triangle, it looks great.
I'm doing this because I understand that a geoSet is the smallest
granularity for sorting the transparent bin. If there's a way to get it to
sort on something smaller, please let me know. Also, it's one big flat
scenegraph and it doesn't use the pfdBuilder. So, it really is the worst
case scenario.

I modified my loader to use pfdBuilder, and I want the builder to call
pfdBreakup to give me nice single triangles in an octree. I'm using the
pfdbreakup pseudo-loader to test pfdBreakup to see what it does.

If I type something like this
  perfly filename.0,3,5.breakup
                    ^
                    |
                 stripLength parameter

I'd expect that I'd get a bunch of geoSets with at most 3 vertices, or a
single triangle. Instead I seem to get primitives with up to 6 vertices.
I've tried this on a bunch of different files, and always get up to 6.
I've tried dinking around with the other two parameters and it's still 6,
but with differently shaped trees. 6 is no good, because I still get
small triangular holes in my translucent files.

If I change the stripLength parameter to anything less than or equal to 6,
I get 6 vertices. If I change it to something greater than 6, it rounds
it up to the next even number and gives me that many vertices.

If I try setting stripLength to something less than 3, even with a very
small file, and PFSHAREDSIZE="a real big number", I always blow shared
memory. Setting the other two to small numbers often gives segfaults, so
I don't do that anymore.

So what gives? How can I use the pfdBuilder and pfdBreakup to give me
transparency without holes in the objects?

Or, is there a way to not use the pfdBuilder and create the geoSets by
hand, pass them to pfdBreakup as a geode, and have it arrange them in an
octree but not mess with the geosets?

Thanks again,

-John


Date view Thread view Subject view Author view

This archive was generated by hypermail 2b29 : Fri Jan 09 2004 - 14:50:46 PST