DATE August 27, 1992 TITLE Frequently Asked Questions On IRIS Inventor KEYWORDS 3-D, 3-D graphics, C++, GL, computer graphics, file format, interaction, objects, picking, object-oriented QUESTIONS TABLE OF CONTENTS Q1 What is IRIS Inventor? Q2 Is IRIS Inventor replacing GL? Q3 Is there a performance cost using a software layer on top of GL? Q4 Is IRIS Inventor a user interface toolkit? Q5 How is IRIS Inventor related to IRIS Explorer? Q6 Does Inventor have a Fortran or Ada api? Q7 Does Inventor require C++? Q8 What operating systems does Inventor require? Q9 How can I order Inventor documentation? Q10 How can I learn IRIS Inventor Programming? Q11 Will Inventor use OpenGL? QUESTIONS AND ANSWERS -------------------------------- Q1 What is IRIS Inventor? IRIS Inventor is an object-oriented 3-D toolkit offering a comprehensive solution to interactive graphics programming problems. It presents a programming model based on a 3-D scene database that dramatically simplifies graphics programming. It includes a rich set of objects such as cubes, polygons, text, materials, cameras, lights, trackballs, handle boxes, 3-D viewers, and editors that speed up your programming time and extend your 3-D programming capabilities. IRIS Inventor: . introduces a simple event model for 3-D interaction . defines a standard file format for 3-D data interchange . provides high performance object picking and rendering . is window system and platform independent . supports PostScript printing . encourages programmers to create new customized objects . is fun to use Q2 Is IRIS Inventor replacing IRIS GL? No. GL will always have its place as a lean and mean rendering library that provides low-level, immediate-mode access to the frame buffer. Some applications will prefer the GL frame buffer model to work. However, if you are writing 3-D applications that require intensive user interactivity, a 3-D database, 3-D data exchange, picking, 3-D object printing, or a common "look-and-feel", IRIS Inventor can save an enormous amount of time. Q3 Is there a performance cost using a software layer on top of GL? Sometimes. Note that few GL programs achieve peak graphics performance. This is because most applications have natural application overhead, and also because many programmers lack a thorough understanding of the details and eccentricities of GL. If you are writing a simple display-only, immediate-mode GL program, then it will run faster using straight GL, but not much. However, if your program has scene traversal, interactivity, picking, bounding box calculations, and other object space tasks, then Inventor will perform better for you. This is because Inventor is specially tuned to make optimal use of GL on each SGI machine. Furthermore, Inventor supports render caching which results in peak GL performance in most cases. We have found that in many cases, Inventor programs run FASTER than the original GL program, and that the programmer productivity increases easily outweigh the overhead of the toolkit. Q4 Is IRIS Inventor a user interface toolkit? Yes and no. IRIS Inventor contains mostly 3-D objects. There is little in the way of conventional user interface objects such as buttons, dialogs, and menus. However, Inventor includes a full-fledged event model, a framework designed for 2-D or 3-D user interaction, and some manip- ulator objects for 3-D user interface building. Note that the IRIS Inventor Xt Component and Utility Library includes some traditional 2-D user interface widgets. Q5 How is IRIS Inventor related to IRIS Explorer? IRIS Explorer is an application creation system and user environment that provides visualization and analysis functionality for scientists and engineers. IRIS Inventor is an object-oriented toolkit for 3-D application programmers. Explorer's 3-D geometry file format is Inventor's 3-D file format. Explorer's Render Module was written using IRIS Inventor, and custom Explorer rendering modules can be written using Inventor. Q6 Does Inventor have a Fortran or Ada api? No. Q7 Does Inventor require C++? No. You can use the C api and never see or use C++. Q8 What operating systems does Inventor require? IRIS Inventor 1.0 and 1.0.1 requires Irix 4.0.1 or greater. Q9 How can I order Inventor software and/or documentation? Call your local SGI sales representative or 1-800-800-4SGI to order products: SC-Inventor-1.0.1 (Software on a CD, Prog. Guides) ST-Inventor-1.0.1 (Software-only on 1/4" mag tape) M4-Inventor-1.0.1 (Programming Guide Vols. 1 and 2) Q10 How can I learn IRIS Inventor Programming? SGI Technical Education offers a week-long course in IRIS Inventor Programming. Through extensive hands-on exercises, students learn to write graphics applications using a library of objects that can be reused, customized, and extended to meet new needs. Call 1-800-800-4SGI to sign up. Topics Covered: C++ Introduction Object Oriented Programming Inventor Database Library Scene Graphs Shapes Texture Mapping Text - 2D and 3D Actions applied to Scene Graphs Printing from Inventor Interaction Library in Inventor Interaction model Manipulators Components Library for reusable modules Node Kits to build custom groups of objects Prerequisties: C Programming Experience Basic Unix and editor experience with vi or emacs Q11 Will Inventor use OpenGL? IRIS Inventor 2.0 (due out Q3-Q4 CY`93) will use OpenGL. -- Gavin Bell