Design and Implementation of a Shader Infrastructure and Abstraction Layer

Michael May
Design and Implementation of a Shader Infrastructure and Abstraction Layer
[Thesis]

Information

Abstract

Programming the GPU is more important than ever, but the organization and development of shader code for the GPU is a difficult task. Can this process be embedded into the high level language C#, gain from the features of its toolchain and enrich shader development?

For this purpose this thesis describes the design and implementation of a framework to abstract and embed shader development into C# with an internal domain-specific language (iDSL for short) as front-end and a plug-in system in the back-end to support expandable optimizations and different shader languages as targets.

The implemented framework fits shader development into the C# toolchain, supporting autocompletion, and type error checking in the editor. The system offers good modularity and encourages developing shaders in reusable parts.

This diploma thesis was developed in cooperation with VRVis Research Center in Vienna, Austria.

Additional Files and Images

Additional images and videos

Additional files

Weblinks

No further information available.

BibTeX

@mastersthesis{May_Michael_2015_DIS,
  title =      "Design and Implementation of a Shader Infrastructure and
               Abstraction Layer",
  author =     "Michael May",
  year =       "2015",
  abstract =   "Programming the GPU is more important than ever, but the
               organization and development of shader code for the GPU is a
               difficult task. Can this process be embedded into the high
               level language C#, gain from the features of its toolchain
               and enrich shader development?  For this purpose this thesis
               describes the design and implementation of a framework to
               abstract and embed shader development into C# with an
               internal domain-specific language (iDSL for short) as
               front-end and a plug-in system in the back-end to support
               expandable optimizations and different shader languages as
               targets.  The implemented framework fits shader development
               into the C# toolchain, supporting autocompletion, and type
               error checking in the editor. The system offers good
               modularity and encourages developing shaders in reusable
               parts.  This diploma thesis was developed in cooperation
               with VRVis Research Center in Vienna, Austria.",
  month =      sep,
  address =    "Favoritenstrasse 9-11/186, A-1040 Vienna, Austria",
  school =     "Institute of Computer Graphics and Algorithms, Vienna
               University of Technology",
  URL =        "https://www.cg.tuwien.ac.at/research/publications/2015/May_Michael_2015_DIS/",
}