Open, Portable 3D Scene Graph Libraries

An informal survey 2001.08 - biased toward the needs of the VTP software. (some updates up to 2002.03)
Problems are marked in red.

   DSM
(closed source)
 PLIB/SSG  OpenRM SGL OSG OpenSG
Language C++ C++ C C++ C++ C++
MSVC projects Y Y no Y Y not functional
Distribution            
    Archive of source n/a Y Y Y Y no, CVS only!
    SDK (libs/includes) n/a no no no Y no
Documentation            
    Class hierarchy partial partial n/a Y Y no
    Methods listed some some "about 75%" no Y no
    Methods explained some some "about 75%" no very few no
Features - basic            
    Sphere Y Y no? Y Y ?
    Plane Y Y no? Y Y ?
    Light ISMLight ssgLight RMlight sglLight osg::Light ?
    Camera ISMCamera sgFrustum RMcamera3D sglCamera osg::Camera ?
    Material ISMAppearance +
 ISMMaterial
ssgSimpleState
(not functional)
yes sglMaterial osg::Material ?
    Indexed primitives Y Y no? Y Y ?
    Multi-primitive objects Y no Y?  Y Y ?
Features - desirable            
    Read image formats BMP, PNG SGI, BMP, PNG  none? SGI SGI,
PNG and others
 via plugins
?
    Read 3D file formats native only AC3D, ASE, OBJ, VRML, native native only OBJ, 3DS soon  FLT, 3DS, PFB, LWO, DW ?
    3DS MAX exporter Y no no no no ?
    Turn nodes on/off Y no? ? ? Y (nodemask) ?
    Set LOD center Y no ? no? Y ?
    Custom OpenGL geom Y Y  Y? "might be
possible"
possible via
override
?
    Picking Y Y Y Y Y ?
    Text (2D/3D) Y/Y Y/N? Y? Y/Y Y?/Y ?
    Works w/wxWindows no Y probably no probably Y Y probably Y
    Requires <windows.h> no Y ? Y no ?
Unusual aspects Every node includes a transform and can have children. Uses its own coordinate system (non-OpenGL)     The headers have no file extension.  

VT library port status: