“Introduction to Modern OpenGL Programming” by Angel and Shreiner

  • ©Edward (Ed) Angel and Dave Shreiner


Entry Number: 03


    Introduction to Modern OpenGL Programming

Course Organizer(s):



    Ability to read simple computer programs written in the C language and basic knowledge of computer graphics concepts (for example, depth buffering and texture mapping). No previous experience writing graphics applications is required.

    Intended Audience
    Computer graphics application programmers who are creating computer games, visualization programs, or other interactive applications that render to an image or computer monitor. Application programmers who have been using the older fixed-function pipeline to write applications with OpenGL.  

    OpenGL is the most widely available library for creating interactive computer graphics applications across all of the major computer operating systems. Its uses range from creating applications for scientific visualizations to computer-aided design, interactive gaming, and entertainment, and with each new version, its capabilities reveal the most up-to-date features of modern graphics hardware. This course is an accelerated introduction to programming OpenGL, emphasizing the most modern methods for using the library. In recent years, OpenGL has evolved and fundamentally changed how programmers interact with the application programming interface (API). The most notable change was the introduction of shader-based rendering, which has expanded to subsume almost all functionality in OpenGL. The course reviews each of the shader stages in OpenGL and how to specify data for rendering with OpenGL. And it summarizes how OpenGL’s wealth of new functionality and features enables creation of ever-richer content.