It’s 1992, and if you’re doing high-end 3D work, you’re likely using Iris GL on an SGI workstation. But drawing every vertex manually is exhausting. SGI’s new Open Inventor is a revelation. It’s an object-oriented 3D toolkit built on top of Iris GL (and soon, something they're calling "OpenGL") that introduces the concept of a scene graph.
From Triangles to Objects
Instead of writing a loop that calls glVertex3f a thousand times, you build a tree of nodes. You have a Separator node to isolate state, a Transform node to move things, and Material nodes to define color.
// Open Inventor Scene Graph snippet
SoSeparator *root = new SoSeparator;
SoMaterial *myMaterial = new SoMaterial;
myMaterial->diffuseColor.setValue(1, 0, 0); // Red
root->addChild(myMaterial);
root->addChild(new SoCone);
The toolkit handles the traversal and the rendering. It even handles things like "pick" detection-knowing which 3D object the user clicked on-which used to be a nightmare of projection math.
The Power of the File Format
The .iv file format is equally impressive. It’s a human-readable description of the 3D scene. I’m hearing rumors that a simplified version of this might become a standard for the "World Wide Web" (VRML, they're calling it).
A New Abstraction Layer
We’re moving toward a world where the developer doesn't need to be a math PhD just to put a spinning logo in an app. Open Inventor is heavy, and you need a serious Indigo workstation to run it smoothly, but it’s the future of interactive 3D. We’re using it for our new molecular visualization project, and the productivity gain is night and day.