September 11, 2001: update to chapter 13
Procedural shading, long valued for off-line rendering and production animation, is just becoming possible on interactive graphics hardware. A wide spectrum of interactive applications are poised to use it -- scientific visualization, product design, game development, and more. This course (formerly titled "Approaches for Procedural Shading on Graphics Hardware") explains the variety of techniques behind shading on current and future graphics hardware. These range from full procedural shading on advanced specialized hardware to limited, yet still surprisingly flexible, shading on unextended OpenGL, to the latest in PC graphics accelerators. Participants will see several of the systems in action and will learn the basic techniques in a series of technology overviews. The course will conclude with a panel session allowing the speakers and audience to discuss the relative merits and pitfalls of the different methods.
Member of Technical Staff
SGI |
Marc Olano is the technical lead and compiler architect for the OpenGL Shader project at SGI. Olano received his Ph.D. in computer science from the University of North Carolina in Chapel Hill under Anselmo Lastra. His dissertation was on a shading language for the PixelFlow graphics system, the first full procedural shading language to run on graphics hardware. In addition to his work on shading algorithms for current and future graphics hardware, he has also done research on shading models, rendering algorithms, model simplification and scientific visualization.
John C. Hart
Associate Professor
Department of Computer Science University of Illinois, Urbana-Champaign |
John C. Hart has worked with Evans & Sutherland on advanced shading techniques for consumer graphics cards, focusing on real-time procedural solid texturing. He received his MS (1989) and Ph.D. (1991) from the EVL at UIC, where he worked on rendering procedurally-generated fractal models on the AT&T Pixel Machine. He currently serves on the SIGGRAPH 2001 Papers Committee and on the editorial board of ACM Transactions on Graphics. Hart served five years on the SIGGRAPH Executive Committee, and as an Executive Producer for the documentary "The Story of Computer Graphics."
Wolfgang Heidrich
Assistant Professor
Department of Computer Science The University of British Columbia |
Wolfgang Heidrich is an Assistant Professor at the University of British Columbia. Before then he was a Research Associate at the Graphics Group of the Max-Planck-Institute for Computer Science in Saarbrucken, Germany, where he chaired the activities on image-based and hardware-accelerated rendering. He received a PhD in Computer Science from the University of Erlangen this April, a Master of Mathematics from the University of Waterloo in 1996, and a Diploma in Computer Science from the University of Erlangen in 1995. His research interests include hardware-accelerated and image-based rendering, global illumination, and interactive computer graphics.
Erik Lindholm
3D Architect
NVIDIA Corp. |
Erik Lindholm is a member of the architecture group at NVIDIA, specializing in vertex/geometry processing. Prior to this he worked on high end graphics system development at SGI. He received his M.A.Sc. degree in Electrical Engineering from the University of British Columbia, Canada.
Bill Mark
Research Associate
Computer Graphics Laboratory Stanford University |
Bill Mark is a research associate in the computer graphics laboratory at Stanford University. He is co-developing a system for real-time programmable shading, and is the project manager for the Stanford Immersive Television project. He received his Ph.D. from the University of North Carolina in May 1999. At UNC he explored the use of image-based rendering techniques to accelerate conventional rendering ("post-rendering warping"). He has also co-developed a software library for force-feedback devices, and taught a one-semester undergraduate course in computer architecture and implementation.
Michael McCool
Associate Professor University of Waterloo |
Michael McCool is currently an Associate Professor at the Computer Graphics Lab within the Department of Computer Science at the University of Waterloo. Current research interests include high-quality real-time rendering, global and local illumination, hardware shaders and other hardware algorithms, reconfigurable computing, interval and Monte Carlo methods and applications, end-user programming and metaprogramming, and image and signal processing.
Ken Perlin
Associate Professor
Department of Computer Science NYU |
Ken Perlin is an Associate Professor in the Department of Computer Science and the director of the Media Research Laboratory at the Courant Institute of Mathematical Sciences of New York University. He is also the director of the NYU Center of Advanced Technology, sponsored by the New York State Science and Technology Foundation. He received his Ph.D. in Computer Science at the Courant Institute and his B.A. in Theoretical Mathematics at Harvard University. In 1991 he was a recipient of a Presidential Young Investigator Award. In 1997 he received a Technical Achievement Award from the Academy of Motion Picture Arts and Sciences for his noise and turbulence procedural texturing techniques, which are widely used in feature films and television.
Dr. Perlin was Head of Software Development at R/GREENBERG Associates in New York, NY from 1984 through 1987. Prior to that, from 1979 to 1984, he was the System Architect for computer generated animation at Mathematical Applications Group, Inc., Elmsford, NY. He has served on the Board of Directors of the New York chapter of ACM/SIGGRAPH.
Chapter 1: | Introduction | ||
Marc Olano | html | ||
Chapter 2: | In the beginning: The Pixel Stream Editor | ||
Ken Perlin | html | ||
Chapter 3: | PixelFlow Shading | ||
Jon Leech, "OpenGL Extensions and Restrictions
for PixelFlow", Technical Report TR98-019, Department of Computer
Science, University of North Carolina at Chapel Hill, 1997.
©1997 UNC, Chapel Hill. Included here by permission. |
|||
Marc Olano, "PixelFlow Shading Language" | |||
Marc Olano, "Implementing PixelFlow Shading" | html | ||
Chapter 4: | Sampling Procedural Shaders | ||
Wolfgang Heidrich | |||
Chapter 5: | Hardware Shading Effects | ||
Wolfgang Heidrich | |||
Chapter 6: | Shading Through Multi-Pass Rendering | ||
Mark S. Peercy, Marc Olano, John Airey, P. Jeffery
Ungar, "Interactive Multi-Pass Programmable Shading", Proceedings
of SIGGRAPH 2000 (New Orleans, Louisiana, July 23-28, 2000). In
Computer Graphics, Annual Conference Series, ACM SIGGRAPH, 2000.
©1999 ACM, included here by permission. |
|||
Marc Olano, "Interactive Shading Language (ISL)
Language Description", In OpenGL Shader 2.2 distribution, SGI,
2001.
©2000 SGI, included here by permission. |
html | ||
Chapter 7: | Vertex Programs and Texture Shaders | ||
Erik Lindholm | |||
Chapter 8: | Stanford Real-Time Programmable Shading System | ||
Bill Mark, "Stanford Real-time Procedural Shading System" | |||
Bill Mark, "Shading System Immediate-Mode API v2.1" | |||
Kekoa Proudfoot, "Stanford Real-Time Shading Language" | |||
Chapter 9: | Noise Hardware | ||
Ken Perlin | html | ||
Chapter 10: | Procedural Solid Texturing | ||
John C. Hart, Nate Carr, Masaki Kameya, Stephen
A. Tibbitts, Terrance J. Coleman, "Antialiased Parameterized Solid
Texturing Simplified for Consumer-Level Hardware Implementation",
Proceedings of the 1999 Eurographics/SIGGRAPH Workshop on Graphics
Hardware.
©1999 ACM, included here by permission. |
|||
Nathan A. Carr and John C. Hart, "Real-Time Procedural Solid Texturing" | |||
John C. Hart, "Perlin Noise Pixel Shaders" | |||
Chapter 11: | Multi-Pass RenderMan | ||
Marc Olano | html | ||
Chapter 12: | SMASH | ||
Michael McCool, "SMASH: A Next-Generation API for Programmable Graphics Accelerators", Technical Report CS-2000-14, Department of Computer Science, University of Waterloo, April, 2001 | |||
Chapter 13: | ATI shading extensions | ||
Evan Hart and Jason L. Mitchell, "Hardware Shading with EXT_vertex_shader and EXT_fragment_shader" | |||
Chapter 14: | Analysis of Shading Pipelines | ||
John C. Hart and Peter K. Doenges, "A Framework for Analyzing Real-Time Advanced Shading Techniques" | |||
Chapter 15: | Bibliography | ||
A Collection of Useful References |