DX users,
Should you need to convert 3D models to OpenDX, a DX writer I've written is
now part of the latest OpenSceneGraph release available here:
http://www.openscenegraph.org/download/snapshots/osg-0.8.44.tar.gz
Example usage:
> osgconv svc_logo.3DS svc_logo.dx
> osgconv iris.flt iris.dx
Natively supported input formats include:
3D Studio (3ds), Designers Workshop (dw), OpenFlight (flt), Lightwave
(lwo), Wavefront (obj), TerraPage (txp), OpenSceneGraph (osg), and
Performer (pfb)
If you compiled in the Performer plugin (IRIX and Linux folks: uncomment
"# DIRS += pfb" in src/osgPlugins/Makefile), add "-e pfb" to the osgconv
command line to expand your input format selection to this larger set:
3ds arcinfo bin bpoly bw byu closest csb ct dem doublerot doublescale
doubletrans dted dwb dxf evt flt gds gfo im irtp iv20 iv lodfix lsa
lsb medit m nff obj pegg pfb pfs phd poly post proc projtex pts rot
scale sgf sgo so spf spherepatch3 spherepatch sphere sponge star stla
stlb substclip sv trans tri unc vct
Note that the converter generates DX files which use some hardware
rendering features only available in recent DX CVS snapshots (texture
functions, filters, and wrap modes; translucent texturing with alpha
blending; cull face; etc.). See: http://www.research.ibm.com/dx/cvs.html
for details on how to grab a CVS snapshot.
To load the converted models, just use DX's Import module. When rendering,
you'll want to use hardware rendering if your model has textures. And for
a list of supported/unsupported scene graph features, see the header of:
src/osgPlugins/dx/DXWriter.cpp
There's also a perfly-like model preview app installed which also supports
these formats:
> sgv svc_logo.3DS
And should you want to develop software based on OpenSceneGraph, the doc
tree is part of the distribution. Online docs are available here:
http://www.openscenegraph.org/download/.
Building OpenSceneGraph is fairly straightforward: "gmake <platform>",
where <platform> is one of: linux, cygwin, mingw, freebsd, irix, irix64,
macosx. Then you can install the bin, include, lib, docs trees off of
/usr/local, or just run it in-place and use "setenv OSG_LD_LIBRARY_PATH
$HOME/software/osg/lib/osgPlugins" to tell OSG where to look for its reader
and writer plugins. Platform-specific CFLAGS/LDFLAGS are in
Make/makedefs.<platform>, for those that want to add RPATHs and other misc
compilation flags (e.g. on IRIX: -rpath $(HOME)/software/osg/lib)
Let me know if you have any problems building or using the converter.
Randy
--
Randall Hopper (mailto:[EMAIL PROTECTED])
Lockheed Martin Operation Support
EPA Scientific Visualization Center
US EPA N127-01; RTP, NC 27711