Inventor - a toolkit for writing 3D programs
The Open Inventor 3D Toolkit is an object-oriented toolkit that
simplifies and abstracts the task of writing graphics programming into
a set of easy to use objects. These objects range from low-level data-
centered objects such as Sphere, Camera, Material, Light, and Group, to
high-level application-level objects such as Walk Viewer and Material
Editor. The foundation concept in Inventor is the "scene database"
which defines the objects to be used in an application. When using
Inventor, a programmer creates, edits, and composes these objects into
hierarchical 3D scene graphs (i.e. database). A variety of fundamental
application tasks such as rendering, picking, event handling, and file
reading/writing are built-in operations of all objects in the database
and thus are simple to invoke.
Since Inventor is object-oriented (written in C++), it encourages
programmers to extend the system by writing new objects. Inventor
users have created a variety of new objects that are not included in
the product, such as: Bezier surfaces, CSG objects, animation objects,
special viewers, and many more.
Note that the rendering mechanism inside Inventor objects employs
OpenGL. Thus, during rendering each object automatically makes the
proper, efficient calls to OpenGL. Furthermore, Inventor rendering
supports a caching scheme which automatically generates very fast
renderings of the database without traversal overheads.
Inventor picking is extremely efficient and does not utilize rendering.
Furthermore, picking returns a variety of 3D information and detail
about what objects were picked. A sorted list of picked objects and
corresponding information is returned to the programmer. Picking is so
fast that programs can perform 3D locate highlighting as the mouse
moves across a 3D window.
INTERACTION, EVENTS, AND DEVICES
Inventor defines a event model for writing 3D interaction. This model
is window system independent. It is quite easy to use and makes 3D
direct manipulation programming possible. Inventor includes a variety
of interactive 3D objects and tools for writing interactive objects,
such as: Manipulators, Draggers, and Projectors. The flexible event
model encourages programmers to extend the system to support new
devices and event types.
The Inventor 3D File Format is SGI’s standard for 3D data. The format
supports both an ASCII and private binary format. The binary format is
network-neutral and thus can be exported across machine boundaries.
Programming 3D graphics applications with Inventor results in large-
scale productivity increases. This also increases with time as more
tools utilize the Inventor paradigm, user interfaces, and standard file
A list of online documentation is available in the General FAQ section
of the web site provided at the end of this man page.
The Inventor Toolkit includes source code to NUMEROUS programs and
drop, gview, SceneViewer, ivcat, ivview, maze, noodle, qmorf, revo,