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 URL: http://dx.doi.org/10.1145/2010324.1965002
BibTeX format:
@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},
}
Search for more articles by Tim Foley.
Search for more articles by Pat Hanrahan.

Return to the search page.


graphbib: Powered by "bibsql" and "SQLite3."