Open Image Generation System (OpenIGS)


OpenIGS Objectives
 
The goal of the Open Image Generation System (OpenIGS) has been to create a 3D visualisation package that is open with respect to its architecture, its interfaces, its file format and its use of a rendering engine. It is supposed to be an open framework, were developers may integrate specific 3D visualisation effects without interfering with the rest of the application. The software may interface to any data source producing parameters to be displayed, from complex back-end simulators to simple file readers. Also, it tries to prevent any lock-in to proprietary file formats by defining a generic XML based format. Finally, the framework can be reused if it is ported to another platform and even if another rendering engine (e.g. from OpenGL to Direct3D) is used. This work has been performed in two phases: first the basic software was developed in-house at Estec and based on this software the OpenIGS application was created. This latter work was done by ATOS Origin (NL) in the frame of the GSTP-3 programme.
 
 
   
OpenIGS architecture
 
OpenIGS Basic Software
 
The OpenIGS basic software is supposed to provide a modular framework that allows an extensible module based architecture. The definition of the basic software is very simple and yet very flexible and configurable. Starting with this definition, a reference version of the basic software was implemented in C++ code. It provides standard modules for data file parsing (based on XML), communication (TCP/IP), module properties handling, message and event handling between modules, time synchronisation, and any other basic features. The OpenIGS basic software Intellectual Property Rights (IPR) is owned by ESA and the software and its documentation are freely available to industry and organisations of ESA member states.
 
 
 
OpenIGS Proba-3 demo
 
 
OpenIGS Application
 
Based on the basic software as described above, ATOS Origin (NL) has created an OpenIGS application based on the SGI Performer toolkit. This application runs both on Windows and on Linux. It is configurable using an XML definition file, which defines the software modules that shall be loaded and what module instantiations with what parameters are needed. This application provides an interface to EuroSim as well as that data can be (re-)played from disk files (in XML format). The application provides a set of 3D graphics functions required for typical engineering visualisation use. There are specific space-related modules e.g. to display spacecraft orbits or model camera field-of-view cones. The OpenIGS application IPR is owned by ESA as well, so the same conditions as for the basic software apply.
 
 
Future Work
 
The current phase of the OpenIGS has been completed. The application has undergone extensive testing and has been used already in a number of simulation projects at Estec. However, there are a number of improvements identified, with the intention to implement these in the near future.
  • The Basic Software shall be optimised in terms of processing performance as well as memory usage and allocation.
  • The XML file format structure shall be improved, such that a proper XML schema can be defined. This will have the benefit that standard visual XML editors can be used to edit the 3D scenario files. Object hierarchy shall be supported in the XML format as well.
  • More space related visualisation modules shall be implemented, e.g. detailed models for the Earth and other planets, high-resolution star catalogues, extended camera field-of-view cones and images on the target surface modelling, etc.
  • Support to high-end virtual-reality applications is desired for complex training systems with a man-in-the-loop. Here, various camera effects like lens flare, pixel effects, noise, limitation of frame rates, symbol overlays, etc. may be applied, as well as other high-end features like shadows, pixel shaders to model materials like gold-foil, particle effects to model out-gassing, etc.

 
 
 
Last update: 20 September 2006


Related articles

 •  SIMVIS (http://www.esa.int/TEC/Modelling_and_simulation/SEMAWH8LURE_0.html)
 •  ASVIS (http://www.esa.int/TEC/Modelling_and_simulation/SEMCYH8LURE_0.html)