Marcus Barnes (marcus++at++multigen.com)
Mon, 28 Oct 1996 14:00:48 -0800
You can see for yourself ... the source is in the directory:
/usr/share/Performer/src/pguide/libpf/C/pfconv.c
... that it calls pfdLoadFile() to load a .flt file. This will use the loader
dso found via PFLD_LIBRARY_PATH or LD_LIBRARY_PATH.
> Does it still call the OpenFlight loader (I would assume not), and
Yes is does.
> do we lose the benefit of the sorting, etc. that the MultiGen Loader
provides?
No. Converting from .flt to .pfb is going to be lossy in so far as .pfb can
only save what is present in the scenegraph. This includes pfUserData(
pfMemory ), but not traversal functions or data ... the last time I looked.
An application that relies on loader callback data for bead comments, DOF local
matrices, or whatever will have to save this data as pfUserData that is
allocated via pfMalloc() in order for .pfb to save it. Likewise, reading .pfb
vs. .flt databases requires different application setup since these attributes
are aquired in a different manner.
One way of making these data dependencies more transparent to applications is
to introduce a loader mode that saves all "extra" attributes as typed
pfUserData of the associated pfNode or pfObject. The application depends on
the user data but is independent of where it came from ...
Another potential way is to create a C++ loader that subclasses Performer node
types (pfFltDOF for example) that include the extra attributes and methods to
access/apply them. How well .pfb would handle the persistance of such user
defined Performer subclasses is open to experimentation.
Regards.
--
__ ___ ____ _ _____ Marcus Barnes, marcus++at++multigen.com
/ |/ /_ __/ / /_(_) ___/__ ___ Technical Staff, MultiGen Inc.
/ /|_/ / // / / __/ / (_ / -_) _ \ http://www.multigen.com
/_/ /_/\_,_/_/\__/_/\___/\__/_//_/ PH:1-408-556-2654 FX:1-408-261-4102
=======================================================================
List Archives, FAQ, FTP: http://www.sgi.com/Technology/Performer/
Submissions: info-performer++at++sgi.com
Admin. requests: info-performer-request++at++sgi.com
This archive was generated by hypermail 2.0b2 on Mon Aug 10 1998 - 17:53:49 PDT