Sur cette page

Technique QML Type

Encapsule une technique. En savoir plus…

Import Statement: import Qt3D.Render 2.12
In C++: QTechnique
Inherits:

Node

Status: Deprecated

Ce type est obsolète. Nous déconseillons fortement de l'utiliser dans du nouveau code.

Propriétés

Description détaillée

Une technique spécifie un ensemble d'objets « RenderPass », d'objets « FilterKey », d'objets « Parameter » et un « GraphicsApiFilter », qui, ensemble, définissent une technique de rendu que l'API graphique donnée est capable de mettre en œuvre. Les clés de filtre sont utilisées par « TechniqueFilter » pour sélectionner des techniques spécifiques à des parties précises du FrameGraph. Un paramètre défini sur une « Technique » remplace le paramètre (du même nom) défini dans « RenderPass », mais est lui-même remplacé par les paramètres définis dans « RenderPassFilter », « TechniqueFilter », « Material » et « Effect ».

Lors de la création d’un effet ciblant plusieurs versions d’une API graphique, il est utile de créer plusieurs nœuds « Technique », chacun avec un « graphicsApiFilter » défini pour correspondre à l’une des versions ciblées. Au moment de l’exécution, le moteur de rendu Qt3D sélectionnera la Technique la plus appropriée en fonction des versions d’API graphiques prises en charge et (si spécifié) des nœuds « FilterKey » qui satisfont à une TechniqueFilter donnée dans le FrameGraph.

Remarque : lorsque OpenGL est utilisé comme API graphique pour le rendu, Qt3D s’appuie sur l’ QSurfaceFormat renvoyée par QSurfaceFormat::defaultFormat() lors de l’exécution pour déterminer quelle est la version GL disponible la plus appropriée. Si vous devez personnaliser l’ QSurfaceFormat, n’oubliez pas de l’appliquer avec QSurfaceFormat::setDefaultFormat(). La configuration de l’ QSurfaceFormat sur la vue n’aura probablement aucun effet sur le rendu lié à Qt3D.

Remarque : le nœud «Technique » ne peut pas être désactivé.

Technique {
    id: gl3Technique
    parameters: [
        Parameter { name: "color"; value: "orange" }
    ]
    filterKeys: [
        FilterKey { name: "renderingStyle"; value: "forward" }
    ]
    graphicsApiFilter: {
        api: GraphicsApiFilter.OpenGL
        profile: GraphicsApiFilter.CoreProfile
        majorVersion: 3
        minorVersion: 1
    }
    renderPasses: [
        RenderPass {
            id: firstPass
            shaderProgram: ShaderProgram {
                // ...
            }
        },
        RenderPass {
            id: secondPass
            shaderProgram: ShaderProgram {
                // ...
            }
        }
    ]
}

Voir également Effect, RenderPass et TechniqueFilter.

Documentation sur les propriétés

filterKeys : list<FilterKey>

Spécifie la liste des clés de filtrage permettant d'utiliser cette technique

graphicsApiFilter : GraphicsApiFilter [read-only]

Spécifie le filtre de l'API graphique utilisé

parameters : list<Parameter>

Spécifie les paramètres utilisés par la technique

renderPasses : list<RenderPass>

Spécifie les passes de rendu utilisées par la technique

© 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.