QQuick3D Class
Classe d'aide pour la sélection du format de surface correct. Plus d'informations...
| Header: | #include <QQuick3D> |
Membres publics statiques
| QSurfaceFormat | idealSurfaceFormat(int samples = -1) |
Description détaillée
Lors de l'utilisation de Qt Quick 3D avec OpenGL, il est nécessaire de prendre des mesures supplémentaires pour définir le type de surface format utilisé lors de l'initialisation de Qt Quick. En effet, au moment où Qt Quick sait qu'un contenu 3D est utilisé, le contexte OpenGL et la surface de la fenêtre ont déjà été initialisés. Cette classe d'aide est donc fournie pour demander le format de surface idéal à Qt Quick 3D afin qu'il puisse être défini comme surface par défaut pour Qt Quick avant l'initialisation.
Si cette classe d'aide est exécutée lors de l'utilisation d'un autre système de rendu qu'OpenGL, elle renvoie simplement une copie du site QSurfaceFormat par défaut avec les échantillons demandés.
Si cette aide est exécutée lors de l'utilisation du moteur de rendu OpenGL, elle testera l'existence de versions suffisamment modernes d'OpenGL et le support du multi-échantillonnage s'il est demandé. Normalement, Qt Quick demande un contexte OpenGL 2.0 ou OpenGL ES 2.0, ce qui limite les fonctionnalités disponibles lors de l'utilisation de Qt Quick 3D, une étape supplémentaire est donc nécessaire pour demander un contexte plus performant.
Le modèle d'utilisation correct consiste à appeler QSurfaceFormat::setDefaultFormat pour définir le contexte QSurfaceFormat renvoyé par QQuick3D::idealSurfaceFormat. Il est important que cette méthode soit appelée après la construction de QGuiApplication, mais avant le chargement du contenu de l'application Qt Quick. Cet extrait de code montre le modèle d'utilisation correct :
#include <QGuiApplication> #include <QQmlApplicationEngine> #include <QtGui> #include <QtQuick3D/qquick3d.h> int main(int argc, char *argv[]) { QGuiApplication app(argc, argv); QSurfaceFormat::setDefaultFormat(QQuick3D::idealSurfaceFormat(4)); QQmlApplicationEngine engine; engine.load(QUrl(QStringLiteral("qrc:/main.qml"))); if (engine.rootObjects().isEmpty()) return -1; return app.exec(); }
Voir aussi les spécificités d'OpenGL.
Documentation des fonctions membres
[static] QSurfaceFormat QQuick3D::idealSurfaceFormat(int samples = -1)
Renvoie un format de surface idéal pour la plate-forme. En option, samples peut être spécifié pour sélectionner le nombre d'échantillons multiples pour l'anticrénelage.
© 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.