Qt3DRender::QEffect Class
class Qt3DRender::QEffectQt 3D シーンにおけるエフェクトの基底クラスです。詳細...
| ヘッダー: | #include <qeffect.h> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS 3drender) target_link_libraries(mytarget PRIVATE Qt6::3drender) |
| qmake: | QT += 3drender |
| QML内: | Effect |
| 継承元: | Qt3DCore::QNode |
| ステータス: | 非推奨 |
このクラスは非推奨です。新しいコードでの使用は強く推奨しません。
パブリック関数
| 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
そのエフェクトで使用されているテクニックのリストを返します。
© 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.