QNoPicking 类

class Qt3DRender::QNoPicking

当 FrameGraph 分支中存在 Qt3DRender::QNoPicking 节点时,这会防止渲染方面为该分支执行拾取选择。 更多信息...

头文件 #include <QNoPicking>
CMakefind_package(Qt6 REQUIRED COMPONENTS 3drender)
target_link_libraries(mytarget PRIVATE Qt6::3drender)
qmakeQT += 3drender
由以下实例化 NoPicking
继承自 Qt3DRender::QFrameGraphNode

详细描述

当禁用时,Qt3DRender::QNoPicking 节点不会阻止执行拾取。因此,切换启用属性是将 Qt3DRender::QNoPicking 激活或停用的方法。

在 FrameGraph 中使用多个子视口时,QNoPicking 可以用来防止重叠视口或非可视视口之间的拾取冲突。它也可以用于优化,以防止对隐藏视口或不需要拾取的场景区域进行不必要的操作。

Qt3DRender::QViewport *viewport = new Qt3DRender::QViewport();
Qt3DRender::QCameraSelector *cameraSelector = new Qt3DRender::QCameraSelector(viewport);
Qt3DRender::QNoPicking *noPicking = new Qt3DRender::QNoPicking(cameraSelector);

Qt3DRender::QClearBuffers *clearBuffers = new Qt3DRender::QClearBuffers(noPicking);
clearBuffers->setBuffers(Qt3DRender::QClearBuffers::ColorDepthBuffer);

Qt3DRender::QRenderPassFilter *mainPass = new Qt3DRender::QRenderPassFilter(cameraSelector);
....
Qt3DRender::QRenderPassFilter *previewPass = new Qt3DRender::QRenderPassFilter(cameraSelector);
....

另请参阅Qt3DRender::QObjectPickerQt3DRender::QRayCasterQt3DRender::QScreenRayCaster

© 2024 The Qt Company Ltd. 本中的文档贡献版权属于各自的拥有者。此处提供的文档是根据自由软件基金会发布的 GNU 自由文档许可证 versión 1.3 许可的。Qt 及其相关的标志是芬兰和/或其他国家/地区的 The Qt Company Ltd. 的商标。所有其他商标均为其各自所有者的财产。