1.3 The shrike Testbed

The shrike application, available as a free download from the Sh website, is shown in Figure 1.1. The shrike application is a testbed environment for developing and tuning shaders.

It provides a class framework for shaders, a browser interface to compare multiple shaders, and a generic interface for loading models and texture maps. A simple user interface is available for rotating models and moving them relative to light sources, and storing definition-time constants and reinitializing metaprogrammed shaders as needed. It uses introspection to determine the parameters used for each shader and uses the metadata for each parameter to build a suitable user interface for those parameters. Support for visual debugging of shaders, including computation and visualization of intermediate values in shaders and a visual programming and visualization interface, are also under development and will eventually be included in the shrike application. As shrike is still under active development, we plan to write online documentation for it, so please refer to the website.


[Picture]


Figure 1.1: Ashikhmin shader demonstrated inside shrike. This application can automatically determine the parameters of a given shader and build a user interface to manipulate those parameters. See Plate ?? on page ??.



Note: This manual is available as a bound book from AK Peters, including better formatting, in-depth examples, and about 200 pages not available on-line.