The QLayer class provides a way of filtering which entities will be rendered. 更多...
头: | #include <QLayer> |
CMake: |
find_package(Qt6 COMPONENTS 3drender REQUIRED)
target_link_libraries(mytarget PRIVATE Qt6::3drender) |
qmake: | QT += 3drender |
Since: | Qt 5.5 |
实例化: | 层 |
继承: | Qt3DCore::QComponent |
QLayer (Qt3DCore::QNode * parent = nullptr) | |
bool | recursive () const |
void | setRecursive (bool recursive ) |
void | recursiveChanged () |
Qt3DRender::QLayer works in conjunction with the Qt3DRender::QLayerFilter in the FrameGraph.
A QLayer can be applied to a subtree of entities by setting the recursive property to true.
#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 .
Specifies if the layer is also applied to the entity subtree.
访问函数:
bool | recursive () const |
void | setRecursive (bool recursive ) |
通知程序信号:
void | recursiveChanged () |
Constructs a new QLayer with the specified parent .