Qt3DRender::QEffect Class
class Qt3DRender::QEffectLa classe de base pour les effets dans une scène d'Qt 3D. En savoir plus...
| En-tête : | #include <qeffect.h> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS 3drender) target_link_libraries(mytarget PRIVATE Qt6::3drender) |
| qmake : | QT += 3drender |
| En QML : | Effect |
| Hérite de : | Qt3DCore::QNode |
| Statut : | Obsolète |
Cette classe est obsolète. Nous vous déconseillons fortement de l'utiliser dans du nouveau code.
Fonctions publiques
| void | addParameter(Qt3DRender::QParameter *parameter) |
| void | addTechnique(Qt3DRender::QTechnique *t) |
| QList<Qt3DRender::QParameter *> | parameters() const |
| void | removeParameter(Qt3DRender::QParameter *parameter) |
| void | removeTechnique(Qt3DRender::QTechnique *t) |
| QList<Qt3DRender::QTechnique *> | techniques() const |
Description détaillée
La classe QEffect regroupe un ensemble de techniques et les paramètres utilisés par ces dernières pour produire un effet de rendu pour un matériau.
Une instance de QEffect doit, dans la mesure du possible, être partagée entre plusieurs instances de l'QMaterial.
Remarque : le nœudQEffect ne peut pas être désactivé.
QEffect *effect = new QEffect();
// Create technique, render pass and shader
QTechnique *gl3Technique = new QTechnique();
QRenderPass *gl3Pass = new QRenderPass();
QShaderProgram *glShader = new QShaderProgram();
// Set the shader on the render pass
gl3Pass->setShaderProgram(glShader);
// Add the pass to the technique
gl3Technique->addRenderPass(gl3Pass);
// Set the targeted GL version for the technique
gl3Technique->graphicsApiFilter()->setApi(QGraphicsApiFilter::OpenGL);
gl3Technique->graphicsApiFilter()->setMajorVersion(3);
gl3Technique->graphicsApiFilter()->setMinorVersion(1);
gl3Technique->graphicsApiFilter()->setProfile(QGraphicsApiFilter::CoreProfile);
// Add the technique to the effect
effect->addTechnique(gl3Technique);Un objet ` QParameter ` défini sur un `QEffect` remplace le paramètre (du même nom) défini dans ` QTechnique ` et ` QRenderPass`, mais est lui-même remplacé par le paramètre défini dans ` QRenderPassFilter`, ` QTechniqueFilter ` et ` QMaterial`.
Voir également QMaterial, QTechnique et QParameter.
Documentation sur les fonctions-membres
void QEffect::addParameter(Qt3DRender::QParameter *parameter)
Ajoute l'parameter à l'effet. Cela envoie une mise à jour au backend. L'parameter sera utilisé pour définir une valeur uniforme correspondante dans le shader utilisé par cet effet.
void QEffect::addTechnique(Qt3DRender::QTechnique *t)
Ajoute une nouvelle méthode t à cet effet. Elle envoie une mise à jour au backend.
QList<Qt3DRender::QParameter *> QEffect::parameters() const
Renvoie la liste des paramètres utilisés par l'effet.
void QEffect::removeParameter(Qt3DRender::QParameter *parameter)
Supprime un paramètre parameter de l'effet.
void QEffect::removeTechnique(Qt3DRender::QTechnique *t)
Supprime une technique t de l'effet.
QList<Qt3DRender::QTechnique *> QEffect::techniques() const
Renvoie la liste des techniques utilisées par l'effet.
© 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.