Qt Reference Documentation

# QtOpenGL Module

The QtOpenGL module offers classes that make it easy to use OpenGL in Qt applications. More...

## Namespaces

QGL | Specifies miscellaneous identifiers used in the Qt OpenGL module

## Classes

QGLBuffer | Functions for creating and managing GL buffer objects
QGLColormap | Used for installing custom colormaps into a QGLWidget
QGLContext | Encapsulates an OpenGL rendering context
QGLFormat | Specifies the display format of an OpenGL rendering context
QGLFramebufferObject | Encapsulates an OpenGL framebuffer object
QGLFramebufferObjectFormat | Specifies the format of an OpenGL framebuffer object
QGLFunctions | Cross-platform access to the OpenGL/ES 2.0 API
QGLPixelBuffer | Encapsulates an OpenGL pbuffer
QGLShader | Allows OpenGL shaders to be compiled
QGLShaderProgram | Allows OpenGL shader programs to be linked and used
QGLWidget | Widget for rendering OpenGL graphics
QWSGLWindowSurface | The drawing area for top-level windows with Qt for Embedded Linux on EGL/OpenGL ES. It also provides the drawing area for QGLWidgets whether they are top-level windows or children of another QWidget

## Detailed Description

OpenGL is a standard API for rendering 3D graphics. OpenGL only deals with 3D rendering and provides little or no support for GUI programming issues. The user interface for an OpenGL application must be created with another toolkit, such as Motif on the X platform, Microsoft Foundation Classes (MFC) under Windows, or Qt on both platforms.

Note: OpenGL is a trademark of Silicon Graphics, Inc. in the United States and other countries.

The Qt OpenGL module makes it easy to use OpenGL in Qt applications. It provides an OpenGL widget class that can be used just like any other Qt widget, except that it opens an OpenGL display buffer where you can use the OpenGL API to render the contents.

To include the definitions of the module's classes, use the following directive:

     #include <QtOpenGL>

To link against the module, add this line to your qmake `.pro` file:

     QT += opengl

The Qt OpenGL module is implemented as a platform-independent Qt/C++ wrapper around the platform-dependent GLX (version 1.3 or later), WGL, or AGL C APIs. Although the basic functionality provided is very similar to Mark Kilgard's GLUT library, applications using the Qt OpenGL module can take advantage of the whole Qt API for non-OpenGL-specific GUI functionality.

The QtOpenGL module is available on Windows, X11 and Mac OS X. Qt for Embedded Linux and OpenGL supports OpenGL ES (OpenGL for Embedded Systems). Note: To be able to use the OpenGL API in Qt for Embedded Linux, it must be integrated with the Q Window System (QWS). See the Qt for Embedded Linux and OpenGL documentation for details.