OpenGL Essentials LiveLessons (Video Training)

Video Description

Graphics programming is prevalent in many aspects of modern software development; and the need for graphics programmers is perhaps most felt with the explosion of game and graphics-oriented apps. OpenGL is at the center of this new wave of graphics-oriented programming as the chief rendering library for cross-platform development. Quality educational material is a necessity for newcomers to the field.

OpenGL Essentials LiveLessons  introduces viewers to graphics programming through a moderately deep-dive into shader programming and the OpenGL API. Dr. Paul Varcholik guides viewers with a practical, hands-on approach to modern OpenGL application development. While these videos are geared towards programmers, no prior knowledge of graphics programming or 3D math is required. The lessons begin with “Hello, World!” style rendering (drawing a single point and triangle) and extend into introductory lighting models including ambient and diffuse lighting, specular highlights, point lights, and spot lights. The videos also cover texture mapping, environment mapping, normal mapping, and color blending and introduce viewers to 3D math in a straight-forward, stress-free fashion.

Dr. Paul Varcholik is a twenty year veteran of the software development industry and has spent the past ten years writing video games. He was a lead software engineer at Electronic Arts working on titles including John Madden NFL Football and Superman Returns. He is currently a programming instructor at the Florida Interactive Entertainment Academy (FIEA) – a graduate degree program in game development at the University of Central Florida. Paul is also the author of Real-Time 3D Rendering with DirectX and HLSL: A Practical Guide to Graphics Programming.

Skill Level

  • All Levels

What You Will Learn

  • OpenGL 4.4 API essentials
  • How to write shaders using OpenGL Shading Language (GLSL)
  • The 3D mathematics behind 3D graphics
  • How to load and render 3D models
  • Mapping textures to 3D objects
  • Ambient and diffuse lighting, specular highlights, point lights, and spotlights
  • Environment mapping, fog, normal mapping, and color blending
  • Survey additional topics in modern rendering, including post processing, shadow mapping, skeletal animation, geometry and tessellation shaders, deferred rendering, global illumination, and compute shaders.

Who Should Take This Course

  • Developers looking for a practical introduction to 3D rendering and modern OpenGL

Course Requirements

  • Familiarity with the C++ programming language

Lesson 1: Introducing OpenGL

This lesson walks viewers through creating their first OpenGL application. It begins with a discussion of project setup, library dependencies, and a C++ rendering framework to support application development. In this lesson, viewers will write their first GLSL shaders and render simple geometry to the screen. The lesson concludes with a survey of the OpenGL graphics pipeline.

Lesson 2: Understanding 3D Math

This lesson introduces viewers to the mathematics behind 3D graphics. The material is presented in a straight-forward, practical manner intended to reduce math anxiety. The lesson covers vectors, matrices, transformations, and the various coordinate systems encountered in 3D graphics.

Lesson 3: Providing Shader Input

Lesson 3 extends the work from Lesson 1 and applies the mathematics learned in Lesson 2 through a number of hands-on demonstrations. In particular, viewers will learn about OpenGL buffers, providing input to GLSL shaders, and passing data between shader stages. Additionally, the lesson will cover loading and rendering 3D models.

Lesson 4: Mapping Textures to 3D Objects

Lesson 4 covers loading textures and sampling them within GLSL shaders. The lesson also discusses texture wrapping modes useful, for example, for tiling a texture across large geometry. The lesson ends with a discussion of texture filtering modes used to improve the visual quality of textured objects.

Lesson 5: Lighting 3D Objects

Lesson 5 introduces viewers to a number of lighting models including ambient and diffuse lighting, specular highlights, point lights, and spot lights. Throughout the lesson, viewers will extend their knowledge of GLSL and the OpenGL API.

Lesson 6: Discovering Additional Rendering Techniques

In this final lesson, viewers will implement more advanced rendering techniques, including environment mapping, fog, normal mapping, and color blending. The lesson concludes with a survey of post processing, shadow mapping, skeletal animation, geometry and tessellation shaders, deferred rendering, global illumination, and compute shaders.

LiveLessons Video Training series publishes hundreds of hands-on, expert-led video tutorials covering a wide selection of technology topics designed to teach you the skills you need to succeed. This professional and personal technology video series features world-leading author instructors published by your trusted technology brands: Addison-Wesley, Cisco Press, IBM Press, Pearson IT Certification, Prentice Hall, Sams, and Que. Topics include: IT Certification, Programming, Web Development, Mobile Development, Home and Office Technologies, Business and Management, and more. View all LiveLessons on InformIT at http://www.informit.com/imprint/series_detail.aspx?ser=2185116

Table of Contents

  1. Introduction
    1. Introduction to OpenGL Essentials LiveLessons 00:04:49
  2. Lesson 1: Introducing OpenGL
    1. Learning objectives 00:00:31
    2. 1.1 Create your first OpenGL application 00:17:45
    3. 1.2 Examine a C++ application framework 00:15:05
    4. 1.3 Write your first GLSL vertex and fragment shaders 00:13:22
    5. 1.4 Explore the OpenGL graphics pipeline 00:08:22
  3. Lesson 2: Understanding 3D Math
    1. Learning objectives 00:00:26
    2. 2.1 Understand vectors 00:06:21
    3. 2.2 Understand matrices 00:05:27
    4. 2.3 Investigate transformations 00:07:45
  4. Lesson 3: Providing Shader Input
    1. Learning objectives 00:00:29
    2. 3.1 Use OpenGL buffers 00:17:43
    3. 3.2 Pass uniform data to shaders 00:34:00
    4. 3.3 Render 3D models 00:17:20
  5. Lesson 4: Mapping Textures to 3D Objects
    1. Learning objectives 00:00:25
    2. 4.1 Use textures in shaders 00:10:29
    3. 4.2 Explore texture wrapping 00:11:01
    4. 4.3 Understand texture filtering 00:09:09
  6. Lesson 5: Lighting 3D Objects
    1. Learning objectives 00:00:26
    2. 5.1 Explore ambient lighting 00:08:52
    3. 5.2 Understand diffuse shading and directional lighting 00:18:20
    4. 5.3 Discover specular highlighting 00:17:44
    5. 5.4 Implement point lighting 00:07:54
    6. 5.5 Implement spot lighting 00:11:44
  7. Lesson 6: Discovering Additional Rendering Techniques
    1. Learning objectives 00:00:34
    2. 6.1 Explore texture cubes 00:19:57
    3. 6.2 Implement fog 00:04:05
    4. 6.3 Understand color blending 00:10:46
    5. 6.4 Implement normal mapping 00:08:33
    6. 6.5 Survey other rendering techniques 00:17:50
  8. Summary
    1. Summary of OpenGL Essentials LiveLessons 00:01:30

Product Information

  • Title: OpenGL Essentials LiveLessons (Video Training)
  • Author(s): Paul Varcholik
  • Release date: February 2014
  • Publisher(s): Addison-Wesley Professional
  • ISBN: 9780133824360