QEffect Class
class Qt3DRender::QEffectQt 3D シーンにおけるエフェクトの基本クラスです。詳細...
Header: | #include <QEffect> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS 3drender) target_link_libraries(mytarget PRIVATE Qt6::3drender) |
qmake: | QT += 3drender |
In QML: | Effect |
Inherits: | Qt3DCore::QNode |
Status: | Deprecated |
パブリック関数
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 |
詳細説明
QEffect クラスは、一連のテクニックと、それらのテクニックで使用されるパラメータを組み合わせて、マテリアルのレンダリング効果を生成します。
QEffect インスタンスは、可能な限り、複数のQMaterial インスタンス間で共有する必要があります。
注意: QEffect ノードを無効にすることはできません。
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);
QEffect に定義されたQParameter は、QTechnique とQRenderPass で定義されたパラメータ(同名)をオーバーライドしますが、QRenderPassFilter 、QTechniqueFilter 、QMaterial のパラメータによってオーバーライドされます。
QMaterial,QTechnique,QParameterも参照してください 。
メンバ関数ドキュメント
void QEffect::addParameter(Qt3DRender::QParameter *parameter)
parameter をエフェクトに追加する。バックエンドに更新を送信します。parameter は、このエフェクトで使用されるシェーダに対応する均一値を設定するために使用されます。
void QEffect::addTechnique(Qt3DRender::QTechnique *t)
エフェクトに新しいテクニックt を追加します。バックエンドに更新を送信します。
QList<Qt3DRender::QParameter *> QEffect::parameters() const
エフェクトが使用するパラメータのリストを返します。
void QEffect::removeParameter(Qt3DRender::QParameter *parameter)
エフェクトからパラメータparameter を削除します。
void QEffect::removeTechnique(Qt3DRender::QTechnique *t)
エフェクトからテクニックt を削除します。
QList<Qt3DRender::QTechnique *> QEffect::techniques() const
エフェクトが使用するテクニックのリストを返します。
©2024 The Qt Company Ltd. 本書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。