Automated Combination of Real-Time Shader Programs
Abstract
This work proposes an approach for automatic and generic runtime-combination of high-level shader programs. Many of recently introduced real-time rendering techniques rely on such programs. The fact that only a single program can be active concurrently becomes a main conceptual problem when embedding these techniques into middleware systems or 3D applications. Their implementations frequently demand for a combined use of individual shader functionality and, therefore, need to combine existing shader programs. Such a task is often timeconsuming, error-prone, requires a skilled software engineer, and needs to be repeated for each further extension. Our extensible approach solves these problems efficiently: It structures a shader program into code fragments, each typed with a predefined semantics. Based on an explicit order of those semantics, the code fragments of different programs can be combined at runtime. This technique facilitates the reuse of shader code as well as the development of extensible rendering frameworks for future hardware generations. We integrated our approach into an object-oriented high-level rendering system.
BibTeX
@inproceedings {10.2312:egs.20071032,
booktitle = {EG Short Papers},
editor = {Paolo Cignoni and Jiri Sochor},
title = {{Automated Combination of Real-Time Shader Programs}},
author = {Trapp, Matthias and Döller, Jürgen},
year = {2007},
publisher = {The Eurographics Association},
DOI = {10.2312/egs.20071032}
}
booktitle = {EG Short Papers},
editor = {Paolo Cignoni and Jiri Sochor},
title = {{Automated Combination of Real-Time Shader Programs}},
author = {Trapp, Matthias and Döller, Jürgen},
year = {2007},
publisher = {The Eurographics Association},
DOI = {10.2312/egs.20071032}
}