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.