Qt OpenGL
bietet Qt zwei Hauptansätze für die UI-Entwicklung: Qt Quick und Qt Widgets. Diese dienen der Unterstützung verschiedener Arten von Benutzeroberflächen und basieren auf separaten Grafik-Engines, die jeweils für diese Arten optimiert wurden.
In Qt ist es möglich, Code, der in der OpenGL-Grafik-API geschrieben wurde, mit beiden dieser Benutzeroberflächentypen zu kombinieren. Dies kann nützlich sein, wenn die Anwendung über eigenen OpenGL-abhängigen Code verfügt oder wenn sie in einen OpenGL-basierten Renderer eines Drittanbieters integriert wird.
Das Modul „ Qt OpenGL “ enthält Hilfsklassen, die diese Art der Integration vereinfachen und beschleunigen.
Qt OpenGL und Qt Widgets
Qt Widgets wird in der Regel von einem hochoptimierten und präzisen Software-Rasterisierer gerendert, und der endgültige Inhalt wird auf dem Bildschirm mithilfe einer Methode wiedergegeben, die für die Plattform geeignet ist, auf der die Anwendung ausgeführt wird.
Es ist jedoch auch möglich, Qt Widgets mit OpenGL zu kombinieren. Der zentrale Einstiegspunkt hierfür ist die Klasse „ QOpenGLWidget “. Mit dieser Klasse lässt sich das OpenGL-Rendering für einen bestimmten Teil des Widget-Baums aktivieren, und die Klassen im Modul „ Qt OpenGL “ können zur Unterstützung von anwendungsseitigem OpenGL-Code genutzt werden.
Qt OpenGL und Qt Quick
Qt Quick ist für hardwarebeschleunigtes Rendering optimiert. Standardmäßig wird es auf der für die Zielplattform am besten geeigneten Low-Level-Grafik-API aufgebaut.
Beispielsweise wird unter Windows standardmäßig „ Direct3D “ verwendet, während unter macOS standardmäßig „ Metal “ zum Einsatz kommt. Es ist jedoch auch möglich, OpenGL auf Plattformen, auf denen dies unterstützt wird, manuell als aktive Grafik-API auszuwählen.
Weitere Informationen zur Aktivierung von OpenGL mit Qt Quick, finden Sie in der Dokumentation zum Scenegraph-Renderer.
Verwendung des Moduls
Die Verwendung der C++-API eines Qt-Moduls erfordert die Verknüpfung mit der Modulbibliothek, entweder direkt oder über andere Abhängigkeiten. Mehrere Build-Tools bieten hierfür spezielle Unterstützung, darunter CMake und qmake.
Erstellen mit CMake
Verwenden Sie den Befehl „ find_package() “, um die benötigte Modulkomponente im Paket „ Qt6 “ zu finden:
find_package(Qt6 REQUIRED COMPONENTS OpenGL)
target_link_libraries(mytarget PRIVATE Qt6::OpenGL)Weitere Details finden Sie in der Übersicht „Erstellen mit CMake “.
Erstellen mit qmake
Um das Modul für die Erstellung mit qmake zu konfigurieren, fügen Sie das Modul als Wert der Variablen „ QT “ in die .pro-Datei des Projekts ein:
QT += openglBeispiele
Referenz
Modul-Entwicklung
Unter„Änderungen an Qt OpenGL “ sind wichtige Änderungen an der Modul-API und der Funktionalität aufgeführt, die für die Qt-6-Serie von Qt vorgenommen wurden.
Lizenzen und Marken
Das Modul „ Qt OpenGL “ ist unter kommerziellen Lizenzen von The Qt Company erhältlich. Darüber hinaus ist es unter freien Softwarelizenzen verfügbar: der GNU Lesser General Public License, Version 3, oder der GNU General Public License, Version 2. Weitere Informationen finden Sie unter „Qt-Lizenzierung “.
OpenGL® ist eine Marke von Silicon Graphics, Inc. in den Vereinigten Staaten und anderen Ländern.
© 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.