OpenGL

SIGGRAPH 98:

Advanced Graphics Programming Techniques Using OpenGL

Summary

This advanced course demonstrates sophisticated and novel computer graphics programming techniques, implemented in C using the widely available OpenGL library

This course describes and demonstrates advanced rendering techniques using OpenGL. The course focuses on a number of application areas: visual simulation, CAD, games, medical imaging, scientific visualizaton, etc.

We use these applications to motivate our discussion of various rendering concepts and algorithms, then we demonstrate how to implement them using OpenGL as our rendering platform.

Syllabus.

Full day format.

8:30 A.  Introduction (McReynolds)
 8:35 B.  Visual Simulation (McReynolds)
          1. Tiling large Textures
          2. Anisotropic Texturing
          3. Developing LOD Models for Geometry
          4. Billboarding
          5. Light Points
 9:20 C.  Adding Realism (Blythe and McReynolds)
 9:20     Object Realism (Blythe)
          1. Phong Shading
          2. Bump Mapping with Textures
          3. Complex BDRFs using multiple Phong lights
10:00 Break
10:15     Interobject Realism (McReynolds)
          4. Shadows
          5. Reflections and Refractions
          6. Transparency
11:00 D.  Image Processing (Grantham)
          1. OpenGL Image Processing
          2. Image Warping with Textures
          3. Accum Buffer Convolution
          4. Antialiasing with Accumulation Buffer
          5. Texture Synthesis & Procedural Texturing
12:00 Lunch 
 1:30 E.  CAD (Nelson)
          1. Constructive Solid Geometry
          2. Meshing and Tessellation
          3. Numerical Tnstabilities and Their Cure
          4. Antialiasing Geometry
2:15 F    Scientific Visualization (Blythe)
          1. Volume Rendering
          2. Textures as Multidimensional Functions
          3. Visualizing Flow Fields 
	     (line integral convolution)
3:00 Break
3:15 G.   Graphics Special Effects (Grantham)
          1. Stencil Dissolves
          2. Color Space Operations
          3. Photographic Techniques 
	     (depth of field, motion blur)
          4. Compositing
4:00 H.   Simulating Natural Phenomena (McReynolds)
          1. Smoke
          2. Fire
          3. Clouds
          4. Water
          5. Fog 
5:00 I.  Summary, Question & Answers (variable) All
Summary statement:

This course demonstrates sophisticated and novel computer graphics programming techniques. The techniques are implemented in C using the widely available OpenGL library, making it easy for the audience to duplicate the techniques presented.

Expanded Statement:

This course focuses on practical solutions to domain-specific graphics application problems. Emphasis will be on techniques for interactive graphics running on mainstream graphics hardware.

Graphics topics are drawn from the major graphics application areas, including CAD, visual simulation/gaming, image processing, scientific visualization, and special effects.

By attending this course, attendees will strengthen their understanding of both the theory of core computer graphics concepts, by seeing them applied, and the practice of graphics programming techniques, through examples that increase image realism, create special effects, and solve domain specific rendering problems.

They will strengthen analytical skills; learning how to identify and evaluate multiple approaches to solving rendering problems, and to analyze code examples that generate high quality graphics images.

Attendees will gain greater insight into the capabilities of OpenGL itself, and learn how to use OpenGL as a tool to solve challenging rendering problems.

Course prerequisites:

Attendees should have a good working knowledge of computer graphics concepts, particularly lighting and texture mapping, and OpenGL programming experience. A background writing graphics applications using advanced rendering techniques, image processing, or volume rendering is especially desirable.

Topics Beyond the Prerequisites:

This course describes computer graphics rendering techniques using OpenGL. Attendees will learn how apply their theoretical knowledge of computer graphics and their programming skills to solve domain-specific computer graphics problems.

The course will not only help attendees expand their graphics "bag of tricks", but also illustrate new paradigms and techniques for developing computer graphics applications for CAD, games, medical imaging, scientific visualization, visual simulation, and image processing.

Course notes description.

     Reprints of Relevant Papers
     Description of OpenGL 1.2 Functionality
     Bibliography

All the above will be included on the SIGGRAPH courses CD-ROM with the addition of OpenGL sample code discussed in the course.

Estimated page count: 350 pages