Qt3DRender::QNoPicking Class
class Qt3DRender::QNoPicking当 FrameGraph 分支中存在Qt3DRender::QNoPicking 节点时,这将阻止渲染方面对给定分支执行拾取选择。更多
Header: | #include <QNoPicking> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS 3drender) target_link_libraries(mytarget PRIVATE Qt6::3drender) |
qmake: | QT += 3drender |
在 QML 中: | 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::QObjectPicker,Qt3DRender::QRayCaster, 和Qt3DRender::QScreenRayCaster 。
© 2025 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.