QLayer 类
class Qt3DRender::QLayerQLayer 类提供了一种过滤哪些实体将被渲染的方法。更多...
头文件 | #include <QLayer> |
CMake | find_package(Qt6 REQUIRED COMPONENTS 3drender) target_link_libraries(mytarget PRIVATE Qt6::3drender) |
qmake | QT += 3drender |
实例化自 | Layer |
继承自 | Qt3DCore::QComponent |
属性
- recursive : bool
公共函数
QLayer(Qt3DCore::QNode *parent = nullptr) | |
bool | recursive() const |
void | setRecursive(bool recursive) |
信号
void | recursiveChanged() |
详细描述
Qt3DRender::QLayer 与 FrameGraph 中的 Qt3DRender::QLayerFilter 一起工作。
通过将 recursive 属性设置为 true,可以将 QLayer 应用到实体的子树上。
#include <Qt3DCore/QEntity> #include <Qt3DRender/QGeometryRenderer> #include <Qt3DRender/QLayer> #include <Qt3DRender/QLayerFilter> #include <Qt3DRender/QViewport> // Scene Qt3DCore::QEntity *rootEntity = new Qt3DCore::Qt3DCore::QEntity; Qt3DCore::QEntity *renderableEntity = new Qt3DCore::Qt3DCore::QEntity(rootEntity); Qt3DRender::QGeometryRenderer *geometryRenderer = new Qt3DCore::QGeometryRenderer(renderableEntity); Qt3DRender::QLayer *layer1 = new Qt3DCore::QLayer(renderableEntity); layer1->setRecursive(true); renderableEntity->addComponent(geometryRenderer); renderableEntity->addComponent(layer1); ... // FrameGraph Qt3DRender::QViewport *viewport = new Qt3DRender::QViewport; Qt3DRender::QLayerFilter *layerFilter = new Qt3DRender::QLayerFilter(viewport); layerFilter->addLayer(layer1); ...
© 2024 Qt 公司 Ltd. 本文档中的文档贡献权归其各自所有者所有。本提供的文档根据自由软件基金会发布并由其版权人发布的 GNU 自由文档许可证版本 1.3 的条款进行许可。Qt 和相应的徽标是芬兰以及/或世界各地的 Qt 公司商标。所有其他商标均为其各自所有者的财产。