QLayer 类

class Qt3DRender::QLayer

QLayer 类提供了一种过滤哪些实体将被渲染的方法。更多...

头文件 #include <QLayer>
CMakefind_package(Qt6 REQUIRED COMPONENTS 3drender)
target_link_libraries(mytarget PRIVATE Qt6::3drender)
qmakeQT += 3drender
实例化自 Layer
继承自 Qt3DCore::QComponent

属性

公共函数

QLayer(Qt3DCore::QNode *parent = nullptr)
boolrecursive() const
voidsetRecursive(bool recursive)

信号

详细描述

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);

...

另请参阅Qt3DRender::QLayerFilter

属性文档

recursive : bool

指定层是否也应用于实体子树。

访问函数

boolrecursive() const
voidsetRecursive(bool recursive)

通知信号

voidrecursiveChanged()

成员函数文档

[显式] QLayer::QLayer(Qt3DCore::QNode *parent = nullptr)

构造一个新的 QLayer 对象,指定 parent

© 2024 Qt 公司 Ltd. 本文档中的文档贡献权归其各自所有者所有。本提供的文档根据自由软件基金会发布并由其版权人发布的 GNU 自由文档许可证版本 1.3 的条款进行许可。Qt 和相应的徽标是芬兰以及/或世界各地的 Qt 公司商标。所有其他商标均为其各自所有者的财产。