The outer layer of IRIS Performer implements the specific needs of visual simulation applications. It performs culling, assuring that only potentially viewable geometry is sent to the graphics hardware; it controls multiple display channels; it provides fast intersection tests with simulation databases; and most importantly, it orchestrates all of this in parallel with rendering on multi-processor IRIS system configurations.
The inner core of IRIS Performer is a rendering executive designed for maximum performance. Data structures efficiently utilize the CPU, cache, and memory system architecture; tuned rendering loops convert the system CPU into an optimized data management engine; and state management control minimizes overhead and retains flexibility.
IRIS Performer offers a high-performance portability path across the Silicon Graphics product line. Since the low-level library is implemented as a hardware-specific shared library, applications based on IRIS Performer can achieve optimal graphics rates on the full range of IRIS products without changes or recompilation.
IRIS Performer is an economical and productive starting point for graphics application developers. It provides comprehensive support for advanced visual image generation tasks layered above a flexible and portable rendering library. This combination does more than speed the development of sophisticated graphics applications, it also assures that the result will execute at optimal performance on any Silicon Graphics system.
Data Flow of IRIS Performer Application
The IRIS Performer library - libpf, provides software support targeted directly at real-time visual simulation. It addresses the needs of both conventional image generation and emerging applications such as virtual reality. Major libpf facilities support hierarchial scene construction, multiple channels, culling to each channel's field of view, rapid intersection tests (eg. collision detection), frame-rate control and multi-processing support.
A unique feature of libpf is its 'data fusion architecture'. Rather than converting databases into a common format, libpf provides the ability to define database specific filters that can seamlessly upload a wide variety of independent database formats.
The core of IRIS Performer is libpr, the performance rendering library. It is an application-neutral layer that supports the graphic, system, and hardware control needs of visual applications. The core of libpr is an efficient state tracking and control system that eliminates redundant mode changes, and a collection of highly tuned rendering loops that convert the system CPU into an optimized data movement engine. In addition, libpr includes portable functions to access hardware-specific features, such as high-resolution timers.
Each GeoSet references a 'GeoState', which defines the context for drawing. All IRIS Graphics Library (GL) state components such as texture, lighting, material, and transparency are defined within the GeoState. The implementation of GeoStates minimizes mode changes and eliminates redundant state specifications.
Applications may render GeoSets directly to the IRIS GeometryPipeline, or to optimized libpr display lists, which support sorting and multiprocess rendering. The IRIS Performer libpr library provides the comprehensive suite of functions necessary to build structured rendering systems, such as the IRIS Performer application library - libpf.
Included with IRIS Performer is 'Perfly', an example visual simulation application. It provides a model for building real-time simulation applications with IRIS Performer. Perfly demonstrates terrain-following, eyepoint calculation, control input, performance monitoring, and a flexible graphical user interface. Several databases and source code for the database loaders are also included.
U.S. 1(800) 800-7441
Europe (41) 22-798.75.25
North Pacific (81) 3-5420.71.10
South Pacific (61) 2-879.95.00
Latin America 1(415) 390.58.28
Canada 1(416) 674.5300
2011 N. Shoreline Boulevard
Mountain View, CA 94043
Copyright 1993 Silicon Graphics. Inc. All rights reserved Specifications are subject to change without notice. Silicon Graphics, the Silicon Graphics logo, and IRIS are registered trademarks of Silicon Graphics, Inc. IRIS Performer, Indigo Elan, RealityEngine, GeometryPipeline and Graphics Library GL are trademarks of Silicon Graphics, Inc. MultiGen is a registered trademark of Software Systems.