Chapter 1. Product Overview

IRIS Performer provides a powerful and extensible programming interface (with ANSI C and C++ bindings) for creating real-time visual simulation applications, virtual sets, performance animations, virtual reality systems, engineering visualizations, and other interactive graphics applications. IRIS Performer is the flexible, intuitive, toolkit-based solution for developers who want to optimize graphics performance on their OpenGL-capable systems.

IRIS Performer 2.3 for Linux combines SGI's commitment to high-performance, scalable, interactive rendering with the reduced cost and cross-platform availability of the Linux operating system. This release is fully API-compatible with existing IRIX-based IRIS Performer applications and is a full distribution, including the core run-time libraries and file loaders, development header files, sample source code, and manual pages.

IRIS Performer Components

IRIS Performer consists of two main libraries, libpf and libpr, and four associated libraries:

  • libpf and libpr

  • libpfdu

  • libpfdb

  • libpfui

  • libpfutil

For aid in application development, IRIS Performer also includes sample application source code ranging from simple programs to illustrate particular features to the comprehensive, GUI-driven file viewer perfly.

libpf and libpr

The basis of IRIS Performer is the performance rendering library libpr, a low-level library providing high-speed rendering functions based on pfGeoSet, efficient graphics state control using pfGeoState, and other application-neutral functions.

 Layered above libpr is libpf, a real-time visual simulation environment providing a high-performance database rendering system that takes best advantage of your hardware and OpenGL.

libpfdu

The database utility library libpfdu provides powerful functions for defining both geometric and appearance attributes of three dimensional objects, encourages sharing of state and materials, and generates efficient triangle strips from independent polygonal input.

libpfdb

The database library libpfdb uses the facilities of libpfdu, libpf, and libpr to import database files in more than fifty industry-standard database formats. These loaders also serve as a guide to developers creating new database importers.

libpfui

The libpfui library contains user-interface building blocks for creating manipulators and user-interface components common to many interactive applications. This library has both a C and C++ API.

libpfutil

Completing the suite of libraries is libpfutil, the IRIS Performer utility library. It provides a collection of convenience routines implementing tasks such as smoke effects, multichannel option support, graphical user-interface tools, X-event collection and management, and traversal functions.

Further References

General information about IRIS Performer, including a product overview, technical data, news, white papers, training offerings, support information, and links to partner products can be found on the IRIS Performer web site:

 http://www.sgi.com/software/performer

Substantial documentation of the features and API of IRIS Performer 2.3 for Linux is available online:

 http://www.sgi.com/software/performer/linux-developer.html

You can meet the IRIS Performer developers and learn a lot from fellow IRIS Performer users on the info-performer mailing list. To join, refer to the following Web page:

 http://www.sgi.com/software/performer/mailinglist.html