QSetFence 类

class Qt3DRender::QSetFence

FrameGraphNode 用于在图形命令流中插入栅栏。 更多信息...

头文件 #include <QSetFence>
CMakefind_package(Qt6 REQUIRED COMPONENTS 3drender)
target_link_libraries(mytarget PRIVATE Qt6::3drender)
qmakeQT += 3drender
继承 Qt3DRender::QFrameGraphNode

属性

公共函数

QVarianthandle() const
Qt3DRender::QSetFence::HandleTypehandleType() const

信号

voidhandleChanged(QVariant handle)
voidhandleTypeChanged(Qt3DRender::QSetFence::HandleType handleType)

详细描述

栅栏允许同步 GPU 和 CPU 工作负载。GPU 命令通常是阻塞的。当发布时,命令会被插入到命令缓冲区中,稍后由 GPU 读取。在某些情况下,你希望仅在确信硬件已执行具体命令后才能继续处理或发布特定的命令。栅栏是实现这种功能的方式之一。这在使用 Qt3D 的第三方引擎时尤为重要,Qt3D 应在知道其他引擎命令已修改资源后,才访问共享资源。

QSetFence 是一个 FrameGraph 节点,它将栅栏插入到命令流中。然后可以使用它来配合 QWaitFence 或通过提取底层句柄。

句柄属性将在渲染器创建了底层栅栏资源后更新一次。只要它保持未触发状态,句柄就保持有效。一旦它达到触发状态,它将被销毁,并创建新的句柄。这意味着,根据栅栏被触发所需的时间,相同的句柄可以在多个帧中使用。

属性文档

[只读] handle : const QVariant

包含在 QVariant 中的底层栅栏句柄。

访问函数

QVarianthandle() const

通知信号

voidhandleChanged(QVariant handle)

[只读] handleType : const HandleType

指定使用的句柄类型。目前仅支持 OpenGL 栅栏 id。

访问函数

Qt3DRender::QSetFence::HandleTypehandleType() const

通知信号

voidhandleTypeChanged(Qt3DRender::QSetFence::HandleType handleType)

© 2024 Qt公司。本文件中的文档贡献由各自的版权所有者所拥有。本文件所提供的文档是根据开源软件基金会发布的GNU自由文档许可证的第1.3版本条款许可的。GNU自由文档许可证1.3版本。Qt及其相关标志是芬兰Qt公司的商标,并在世界其他国家和地区的相关商标也可能被注册。所有其他商标均为各自所有者的财产。