Qt OpenGL
Qt tiene dos enfoques principales para el desarrollo de la interfaz de usuario: Qt Quick y Qt Widgets. Existen para soportar diferentes tipos de interfaces de usuario, y se basan en motores gráficos separados que han sido optimizados para cada uno de estos tipos.
Es posible combinar código escrito en la API de gráficos OpenGL con ambos tipos de interfaz de usuario en Qt. Esto puede ser útil cuando la aplicación tiene su propio código dependiente de OpenGL, o cuando se está integrando con un renderizador de terceros basado en OpenGL.
El módulo Qt OpenGL contiene clases de conveniencia para hacer este tipo de integración más fácil y rápida.
Qt OpenGL y Qt Widgets
Qt Widgets normalmente se renderiza mediante un rasterizador de software altamente optimizado y preciso, y el contenido final se reproduce en pantalla utilizando un método apropiado para la plataforma en la que se ejecuta la aplicación.
Pero también es posible combinar Qt Widgets con OpenGL. El principal punto de entrada para ello es la clase QOpenGLWidget. Esta clase puede usarse para habilitar el renderizado OpenGL para una cierta parte del árbol de widgets, y las clases del módulo Qt OpenGL pueden usarse para facilitar cualquier código OpenGL del lado de la aplicación.
Qt OpenGL y Qt Quick
Qt Quick está optimizado para el renderizado acelerado por hardware. Por defecto, se construirá sobre la API gráfica de bajo nivel más apropiada para la plataforma de destino.
Por ejemplo, por defecto será Direct3D en Windows, mientras que en macOS será Metal. Pero también es posible seleccionar manualmente OpenGL como la API gráfica activa en las plataformas que lo soporten.
Para más detalles sobre la activación de OpenGL con Qt Quickconsulte la documentación del renderizador scenegraph.
Uso del módulo
Utilizar la API C++ de un módulo Qt requiere enlazar con la librería del módulo, ya sea directamente o a través de otras dependencias. Varias herramientas de compilación tienen soporte dedicado para esto, incluyendo CMake y qmake.
Compilación con CMake
Utilice el comando find_package() para localizar el componente del módulo necesario en el paquete Qt6:
find_package(Qt6 REQUIRED COMPONENTS OpenGL)
target_link_libraries(mytarget PRIVATE Qt6::OpenGL)Para obtener más información, consulta la descripción general de la compilación con CMake.
Compilación con qmake
Para configurar el módulo para su compilación con qmake, añada el módulo como valor de la variable QT en el archivo .pro del proyecto:
QT += opengl
Ejemplos
Referencia
Evolución del módulo
Cambios en Qt OpenGL enumera los cambios importantes en la API del módulo y la funcionalidad que se hicieron para la serie Qt 6 de Qt.
Licencias y Marcas Registradas
El módulo Qt OpenGL está disponible bajo licencias comerciales de The Qt Company. Además, está disponible bajo licencias de software libre: La Licencia Pública General Reducida de GNU, versión 3, o la Licencia Pública General de GNU, versión 2. Consulte Licencias de Qt para obtener más información.
OpenGL® es una marca comercial de Silicon Graphics, Inc. en Estados Unidos y otros países.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.