Re: pfLightSource Frustum Culling Question
John Rohlf (jrohlf++at++tubes)
Tue, 24 Jan 95 10:55:49 PST
>
> The performer manual states that when I use pfLightSources with no bounding
> volume they won't be culled to a viewing frustum in the directed cull pass. I
> interpreted this to mean that even if the pfLightSources were in scene graph
> below nodes with a bound volume they wouldn't be culled if they had no volume
> themselves. Unfortunately even if I explicitly set the bound volume of a light
> source to be empty they still cull if a pfDCS node higher in the tree has a
> dynamically updating bound volume. I've also tried adding an empty pfDCS above
> the pfLight source as an experiment but this didn't help. The directed cull for
> lights still seems to be prunning the tree.
>
> I need my light sources to exist in the same hierarchy as my geometry but
> without culling to my frustums. As an added complication I have a custom cull
> callback which needs to return PFTRAV_PRUNE from some graph nodes and cull
> pfLightSources below. This all works as expected appart from the frustum
> culling of lights.
>
> I'm using Performer 1.2 with IRIX 5.2 on various platforms.
>
> My question is:
>
> Do I have to separate the pfLightSources from my geometry graph to avoid
> frustum pruning of lights (which means pfDCS duplication or matrix
> concatenation overheads) or have I overlooked something?
>
> Thanks in advance,
>
> Angus.
>
Currently a node does not know if it has a pfLightSource
below it so culling will prune before a pfLightSource is reached.
If you want to always reach the lightsource, give it an infinite
bounding voume:
sph.radius = PF_HUGEVAL;
pfNodeBSphere(lsource, &sph, PFN_STATIC_BOUND);
I'll make this clearer in the man page.
This archive was generated by hypermail 2.0b2
on Mon Aug 10 1998 - 17:50:53 PDT