Content deleted Content added
Miniapolis (talk | contribs) →Recent history: Ce |
add logo |
||
(2 intermediate revisions by 2 users not shown) | |||
Line 4:
| name = Open Inventor [by SGI]
| title = Open Inventor [by SGI]
| logo =
| logo caption = Logo of Open Inventor
| logo_size =
| logo_alt =
Line 35:
}}
'''Open Inventor''', originally '''IRIS Inventor''', is a [[C++]] [[Object-oriented programming|object-oriented]] [[retained mode]] 3D graphics toolkit designed by [[Silicon Graphics|SGI]] to provide a higher layer of programming for [[OpenGL]]. Its main goals are better programmer convenience and efficiency. Open Inventor exists as both [[proprietary software]] and [[free and open-source software]], subject to the requirements of the [[GNU Lesser General Public License]] (LGPL), version 2.1.
The primary objective was to make 3D programming accessible by introducing an object-oriented API, allowing developers to create complex scenes without the intricacies of low-level OpenGL. The toolkit incorporated features like scene graphs, pre-defined shapes, and automatic occlusion culling to streamline scene management. While Open Inventor focused on ease of use, the OpenGL Performer project, spawned from the same context, emphasized performance optimization. The two projects later converged in an attempt to strike a balance between accessibility and performance, culminating in initiatives like Cosmo 3D and OpenGL++. These projects underwent various stages of development and refinement, contributing to the evolution of 3D graphics programming paradigms.
Line 43:
==Use==
[[OpenGL]] (OGL) is a low level [[application programming interface]] that takes lists of simple polygons and renders them as quickly as possible. To do something more practical like “draw a
Open Inventor (OI) was written to address this issue, and provide a common base layer to start working with. Objects could be subclassed from a number of pre-rolled shapes like cubes and polygons, and then easily modified into new shapes. The “world” to be drawn was placed in a [[scene graph]] run by OI, with the system applying occlusion culling on objects in the graph automatically. OI also included a number of controller objects and systems for applying them to the scene, making common interaction tasks easier. Finally, OI also supplied a common file format for storing “worlds,” and the code to automatically save or load a world from these files. Basic 3D applications could then be written in a few hundred lines under OI, by tying together portions of the toolkit with “glue” code.
|