Texturing in OpenGL

OpenGL allows us to map an image (also referred to as a texture) to a 3D shape or polygon. This process is also called texture mapping. Qt appears to be the best combination with OpenGL in this case because it provides an easy way to load images that belong to one of the common formats (BMP, JPEG, PNG, TARGA, TIFF, and so on) and you don't have to implement it by yourself. We will use the previous example with a spinning cube and try to map it with a texture!

How to do it…

  1. First of all, open up mainwindow.h and add the following header to it:
    #include <QGLWidget>
  2. Next, declare an array that stores the texture IDs created by OpenGL. We will be using it later when it comes to rendering:
    private: QOpenGLContext* context; QOpenGLFunctions* ...

Get Qt5 C++ GUI Programming Cookbook now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.