Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Learn Modern OpenGL Programming
Highest Rated
Rating: 4.6 out of 5(507 ratings)
4,238 students

Learn Modern OpenGL Programming

Create Your Own 3d Graphics with OpenGL and C++
Last updated 5/2021
English
English [Auto],Spanish [Auto],

What you'll learn

  • Learn a practical level of programming with modern OpenGL
  • You will learn how to set up an OpenGL window using GLFW and the OpenGL API
  • You will learn how to write GLSL shaders that program your PCs video card for hardware accelerated graphics
  • You will learn how to render simple textured rectangles to complex 3D models with realistic lighting
  • You will learn different types of lighting to make the models look more realistic
  • You will learn how to set up and control a virtual camera to move around and view objects in the 3D scene

Course content

1 section13 lectures10h 29m total length
  • Introduction10:40
  • Setting Up Your Environment26:30

    Throughout the course you will be writing the code that demonstrates the current lesson. Each lesson builds upon the last. We will write every single line of code together starting with a blank project. We will start writing the code in the next lesson. The final lesson will incorporate everything we learned up to that point.  We hope you find this course fun and interesting and above all we hope you learn a foundation of how to program using the modern OpenGL API.  Let's get started!

  • Window and Input47:44

    Create a modern OpenGL window with a core profile, initialize glue, handle keyboard input, enable double buffering, and display frames per second in the window title.

  • Your First Triangle1:34:02

    Explore rendering a triangle in modern OpenGL by organizing the project, creating a vertex buffer object and a vertex array object, and writing vertex and fragment shaders.

  • Shaders1:27:12

    Develop a reusable shader class to load, compile, and link vertex and fragment shaders using glsl, explore uniforms, and follow the OpenGL graphics pipeline from vertices to pixels.

  • Texture Mapping1:22:10

    Learn how texture mapping adds detail by wrapping a 2D image onto a quad, load textures with stb image, configure wrapping and filtering, and implement a texture class for multi-texturing.

  • Coordinate Systems13:52

    There are no downloads for this lesson.

  • Virtual Camera I27:46
  • Virtual Camera II45:42
  • Loading OBJ Models45:41

    Parse an ASCII LBJ/OBJ file to load vertices, texture coordinates, and faces, then build vertex buffers and a vertex array object to render multiple models.

  • Basic Lighting I45:04
  • Basic Lighting II1:08:19
  • Basic Lighting III35:03

Requirements

  • Windows PC with Windows 7 or higher operating system.
  • Microsoft Visual Studio 2013 or higher. (Visual Studio can be downloaded for free.)
  • You will need a basic understanding of C++ programming.

Description

This course will introduce you to modern OpenGL programming.  We will teach you a brief history of OpenGL to help you understand why we chose to teach modern OpenGL with its programmable rendering pipeline over the fixed function pipeline. The majority of tutorials and books only teach the outdated versions of OpenGL API with its fixed function pipeline. We will show you how to use the faster, more efficient and more flexible OpenGL API.

We begin with the basics of getting OpenGL running in a window using the GLFW library.  Then we will move on to understanding the basics of rendering polygons to the display by sending buffers of data to the computers graphics card and programming it using shaders with the GLSL shading language.  We learn how to map textures to our objects. We'll set up a virtual camera using keyboard and mouse inputs to enable us to move around in the scene.

After we have the fundamentals working then we can start building more complex things.  We will learn how to load 3D models and add interesting lighting to the scene.  By the end of this course, you will know how to set up and render in 3D with modern OpenGL.  With each lesson we build the framework with reusable C++ and OpenGL code.  That is a great starting place for you to build your own game engine.  We will start with a blank project and write code each step of the way and each lesson builds upon the last.  Even if you have never touched OpenGL you should find the course easy to follow and everything explained along the way. All of the source code, pre-built third party libraries and Visual Studio solutions for each lesson are included.

Who this course is for:

  • People that wish to learn modern OpenGL and its programmable rendering pipeline. Whether you are trying to learn OpenGL for school, in the pursuit of a career or simply looking for a hobby, this course will be perfect for you.