NAME
Inventor - a toolkit for writing 3D programs
DESCRIPTION
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.
FILE FORMAT
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.
BENEFITS
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 format.
DOCUMENTATION
A list of online documentation is available
in the General FAQ section of the web site provided at the end of
this man page.
SOURCE CODE
The Inventor Toolkit includes source code to
NUMEROUS programs and examples.
SEE ALSO
drop, gview, SceneViewer, ivcat, ivview, maze,
noodle, qmorf, revo, showcase, textomatic
http://oss.sgi.com/projects/inventor/