|
Abstract : |
The process of visualizing a scientific data set benefits from an extensive knowledge of the domain in which the data set is created. Because an in-depth knowledge of all scientific domains is not available to the creator of a visualization system, a flexible and extensible system is essential in providing a productive tool to the scientist. One approach to providing this flexibility is through a shading language that enables users to write programmable data shaders that determine how scientific data sets are rendered. This paper describes the implementation of such a shading system. The system consists of two parts, a shader library and a shader compiler. The shader library does not provide a shading model directly, but instead provides a means of loading and binding externally created shaders to a rendering engine which uses the library. The shader compiler is used to compile a shader description, written in the shading language, into a form that the shader library can load. The shader library has been used in both a ray-tracing geometric renderer and a ray-casting volume renderer. 1, |