From: Praveen Bhaniramka (praveenb++at++gauri.engr.sgi.com)
Date: 05/10/2002 09:28:10
Hi Daniel,
> I am trying to visualize some volume via 3d textures in a cave. Using
> Volumizer, Performer and Cavelib.
>
> Are there any documentation and/or examples of how to do this in a very
> basic manner?? A bit more basic than the one in
> Volumizer2/src/apps/Performer/pfVolume ....
>
> Could I use the method from Volumizer2/src/apps/simple/pguide/viewer
> and in some way connect the "shape node" into the performer/CaveLib
> scengraph.
In order to plug the Volumizer shape node in a Performer scene graph, you
will need some kind of a wrapper derived from an existing Performer node.
This needs to be done since Performer does not recognize Volumizer shape
nodes.
The pfVolume class is one such wrapper class derived from pfGeode which
uses the draw callbacks to render the Volumizer shape node contained
inside it. You are right that the pfVolume implementation is not the most
basic one. It is meant to be completely transparent to Performer and the
application which is trying to use it, and hence the complexity.
One easier (and not completely transparent) way to do this would be to
initialize all your volume shapes at startup in the application and render
the shapes after calling pfDraw() (e.g. inside the localPostDraw() in
/usr/share/Performer/src/sample/C++/perfly/perfly.C). Volumes are
semi-transparent so they should be drawn after the rest of the opaque
geometry has been rendered. To render the shape nodes, you will need one
TMRenderAction per pfPipeWindow. This can be done similar to the pfVolume
implementation.
> CaveLib seems to do the redrawing process automatically - how do I
> implement callbacks for redrawing the volume??
>
> Anyone out there who knows??
> //Daniel
>
Good luck,
Praveen
-- ----------------------------------------------------------------- Praveen Bhaniramka Member of Technical Staff (MTS) praveenb++at++sgi.com Advanced Graphics Division (650)933-1785 Silicon Graphics, Inc. -----------------------------------------------------------------
This archive was generated by hypermail 2b29 : Fri May 10 2002 - 09:28:34 PDT