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: