QTechniqueFilter Class

class Qt3DRender::QTechniqueFilter

A QFrameGraphNode used to select QTechniques to use. More...

Header: #include <QTechniqueFilter>
qmake: QT += 3drender
Since: Qt 5.7
Instantiated By: TechniqueFilter
Inherits: Qt3DRender::QFrameGraphNode
Inherited By:

Qt3DExtras::QForwardRenderer

This class was introduced in Qt 5.7.

Public Functions

QTechniqueFilter(Qt3DCore::QNode *parent = nullptr)
void addMatch(Qt3DRender::QFilterKey *filterKey)
void addParameter(Qt3DRender::QParameter *parameter)
QVector<Qt3DRender::QFilterKey *> matchAll() const
QVector<Qt3DRender::QParameter *> parameters() const
void removeMatch(Qt3DRender::QFilterKey *filterKey)
void removeParameter(Qt3DRender::QParameter *parameter)

Detailed Description

A Qt3DRender::QTechniqueFilter specifies which techniques are used by the FrameGraph when rendering the entities. QTechniqueFilter specifies a list of Qt3DRender::QFilterKey objects and Qt3DRender::QParameter objects. When QTechniqueFilter is present in the FrameGraph, only the techiques matching the keys in the list are used for rendering. The parameters in the list can be used to set values for shader parameters. The parameters in QTechniqueFilter override parameters in QMaterial, QEffect, QTechnique and QRenderPass, but are overridden by parameters in QRenderPassFilter.

Member Function Documentation

QTechniqueFilter::QTechniqueFilter(Qt3DCore::QNode *parent = nullptr)

The constructor creates an instance with the specified parent.

void QTechniqueFilter::addMatch(Qt3DRender::QFilterKey *filterKey)

Add the filterKey to the match vector.

void QTechniqueFilter::addParameter(Qt3DRender::QParameter *parameter)

Add parameter to the vector of parameters that will be passed to the graphics pipeline.

QVector<Qt3DRender::QFilterKey *> QTechniqueFilter::matchAll() const

Returns a vector of the current keys for the filter.

QVector<Qt3DRender::QParameter *> QTechniqueFilter::parameters() const

Returns the current vector of parameters.

void QTechniqueFilter::removeMatch(Qt3DRender::QFilterKey *filterKey)

Remove the filterKey from the match vector.

void QTechniqueFilter::removeParameter(Qt3DRender::QParameter *parameter)

Remove parameter from the vector of parameters passed to the graphics pipeline.