Teaching a Modern Graphics Pipeline Using a Shader-based Software Renderer

Heinrich Fink, Thomas Weber, Michael Wimmer
Teaching a Modern Graphics Pipeline Using a Shader-based Software Renderer
Computers & Graphics, 37(1--2):12-20, February 2013. [preprint]

Information

  • Publication Type: Journal Paper (without talk)
  • Workgroup(s)/Project(s):
  • Date: February 2013
  • ISSN: 0097-8493
  • Journal: Computers & Graphics
  • Number: 1--2
  • Pages (from): 12
  • Pages (to): 20
  • Volume: 37
  • Keywords: teaching, programmable shading, CG education, course organization, COLLADA

Abstract

This paper presents the syllabus for an introductory computer graphics course that emphasizes the use of programmable shaders while teaching raster-level algorithms at the same time. We describe a Java-based framework that is used for programming assignments in this course. This framework implements a shader-enabled software renderer and an interactive 3D editor. Teaching shader programming in concert with the low-level graphics pipeline makes it easier for our students to learn modern OpenGL with shaders in our follow-up intermediate course. We also show how to create attractive course material by using COLLADA, an open standard for 3D content exchange, and our approach to organizing the practical course.

Additional Files and Images

Additional images and videos

editor: The editor of the course framework. editor: The editor of the course framework.
student_competition: Result from the annual student competition. student_competition: Result from the annual student competition.

Additional files

preprint: Preprint of the journal article. preprint: Preprint of the journal article.

Weblinks

BibTeX

@article{fink-2013-cag,
  title =      "Teaching a Modern Graphics Pipeline Using a Shader-based
               Software Renderer",
  author =     "Heinrich Fink and Thomas Weber and Michael Wimmer",
  year =       "2013",
  abstract =   "This paper presents the syllabus for an introductory
               computer graphics course that emphasizes the use of
               programmable shaders while teaching raster-level algorithms
               at the same time. We describe a Java-based framework that is
               used for programming assignments in this course. This
               framework implements a shader-enabled software renderer and
               an interactive 3D editor. Teaching shader programming in
               concert with the low-level graphics pipeline makes it easier
               for our students to learn modern OpenGL with shaders in our
               follow-up intermediate course. We also show how to create
               attractive course material by using COLLADA, an open
               standard for 3D content exchange, and our approach to
               organizing the practical course.",
  month =      feb,
  issn =       "0097-8493",
  journal =    "Computers & Graphics",
  number =     "1--2",
  volume =     "37",
  pages =      "12--20",
  keywords =   "teaching, programmable shading, CG education, course
               organization, COLLADA",
  URL =        "/research/publications/2013/fink-2013-cag/",
}