class QWaitFence#

FrameGraphNode 用来在图形命令流中等待栅栏信号。《更多》…

Inheritance diagram of PySide6.Qt3DRender.Qt3DRender.QWaitFence

概要#

属性#

方法#

信号#

注意

本文档可能包含从C++自动翻译到Python的片段。我们始终欢迎对片段翻译的贡献。如果您在翻译中发现问题,也可以在https:/bugreports.qt.io/projects/PYSIDE上创建工单来告诉我们

详细说明#

围栏允许同步CPU和GPU工作负载。GPU命令通常是异步的。当命令被发布时,它们会被插入到命令缓冲区中,稍后由GPU读取。在某些情况下,您希望在确认命令已由硬件执行后才继续处理或发布特定命令。围栏就是这样做的。当使用与Qt3D配合的第三方引擎时,这一点尤为重要,Qt3D应该在我们知道其他引擎的命令已经修改了资源后,才访问共享资源。

QWaitFence 是一个FrameGraph节点,它会在后续命令插入命令流之前强制等待其变为触发信号的状态。它可以使用与 QSetFence 的组合,并包含配置其应该等待多长时间以及是否应在CPU端阻塞的属性。

注意

Qt 3D在发布绘制调用之前上传GPU资源(纹理、着色器、缓冲区)。

class HandleType#

注意

属性可以直接使用,当使用了 from __feature__ import true_property 时,或者通过访问器函数在其他情况下使用。

property handleᅟ: object#

持有用QVariant包装的底层围栏句柄。

访问函数
property handleTypeᅟ: Qt3DRender.QWaitFence.HandleType#

指定正在使用的句柄类型。当前仅支持OpenGL围栏ID。

访问函数
property timeoutᅟ: int#

指定等待围栏成为触发信号的最大时间(以纳秒为单位)。

访问函数
property waitOnCPUᅟ: bool#

指定CPU在等待围栏变为触发信号时是否应该阻塞。默认情况下为false。

访问函数
__init__([parent=None])#
参数:

parentQNode

handle()#
返回类型:

对象

另请参阅

setHandle()

属性 handle 的获取器。

handleChanged(handle)#
参数:

handle – 对象

属性 handle 的通知信号。

handleType()#
返回类型:

HandleType

另请参阅

setHandleType()

属性 handleType 的获取器。

handleTypeChanged(handleType)#
参数:

handleTypeHandleType

属性 handleType 的通知信号。

setHandle(handle)#
参数:

handle – 对象

另请参阅

handle()

属性 handle 的设置器。

setHandleType(type)#
参数:

typeHandleType

另请参阅

handleType()

属性 handleType 的设置器。

setTimeout(timeout)#
参数:

timeout – int

另请参阅

timeout()

属性 timeout 的设置器。

setWaitOnCPU(waitOnCPU)#
参数:

waitOnCPU – bool

另请参阅

waitOnCPU()

属性 waitOnCPU 的设置器。

timeout()#
返回类型:

int

另请参阅

setTimeout()

属性 timeoutᅟ 的获取器。

timeoutChanged(timeoutChanged)#
参数:

timeoutChanged – int

属性 timeoutᅟ 的通知信号。

waitOnCPU()#
返回类型:

bool

另请参阅

setWaitOnCPU()

属性 waitOnCPUᅟ 的获取器。

waitOnCPUChanged(waitOnCPU)#
参数:

waitOnCPU – bool

属性 waitOnCPUᅟ 的通知信号。