Spark: modular, composable shaders for graphics hardware
Tim Foley, Pat Hanrahan
In ACM Transactions on Graphics, 30(4), July 2011.
Abstract: In creating complex real-time shaders, programmers should be able to decompose code into independent, localized modules of their choosing. Current real-time shading languages, however, enforce a fixed decomposition into per-pipeline-stage procedures. Program concerns at other scales -- including those that cross-cut multiple pipeline stages -- cannot be expressed as reusable modules. par We present a shading language, Spark, and its implementation for modern graphics hardware that improves support for separation of concerns into modules. A Spark shader class can encapsulate code that maps to more than one pipeline stage, and can be extended and composed using object-oriented inheritance. In our tests, shaders written in Spark achieve performance within 2% of HLSL.
Keyword(s): graphics hardware, modularity, shading language
@article{Foley:2011:SMC,
author = {Tim Foley and Pat Hanrahan},
title = {Spark: modular, composable shaders for graphics hardware},
journal = {ACM Transactions on Graphics},
volume = {30},
number = {4},
pages = {107:1--107:12},
month = jul,
year = {2011},
}
Return to the search page.
graphbib: Powered by "bibsql" and "SQLite3."