PySide6.Qt3DRender.Qt3DRender.QWaitFence

class QWaitFence

FrameGraphNode 用于等待图形命令流中的围栏变为信号状态。更多

PySide6.Qt3DRender.Qt3DRender.QWaitFence 的继承图

概要

属性

方法

信号

注意

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

详细描述

Fence 允许同步 GPU 和 CPU 的工作负载。GPU 命令通常是非阻塞的。当命令发出时,它们会被插入到命令缓冲区中,稍后由 GPU 读取。在某些情况下,您希望仅在确定硬件已执行某个命令后继续处理或发出特定命令。Fences 是实现这一点的一种方式。当与 Qt3D 一起使用第三方引擎时,这一点尤为重要,Qt3D 应仅在我们知道其他引擎命令已完成资源修改后访问共享资源。

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

注意

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

class HandleType

注意

当使用from __feature__ import true_property时,属性可以直接使用,否则通过访问器函数使用。

property handleᅟ: object

持有包装在QVariant中的底层fence句柄。

Access functions:
property handleTypeᅟ: Qt3DRender.QWaitFence.HandleType

指定正在使用的句柄类型。目前仅支持OpenGL Fence id。

Access functions:
property timeoutᅟ: int

指定等待围栏变为信号状态的最大时间,单位为纳秒。

Access functions:
property waitOnCPUᅟ: bool

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

Access functions:
__init__([parent=None])
Parameters:

parentQNode

handle()
Return type:

对象

另请参阅

setHandle()

属性 handleᅟ 的获取器。

handleChanged(handle)
Parameters:

handle – 对象

属性 handleᅟ 的通知信号。

handleType()
Return type:

HandleType

另请参阅

setHandleType()

属性 handleTypeᅟ 的获取器。

handleTypeChanged(handleType)
Parameters:

handleTypeHandleType

属性 handleTypeᅟ 的通知信号。

setHandle(handle)
Parameters:

handle – 对象

另请参阅

handle()

属性 handleᅟ 的设置器。

setHandleType(type)
Parameters:

类型HandleType

另请参阅

handleType()

属性 handleTypeᅟ 的设置器。

setTimeout(timeout)
Parameters:

timeout – int

另请参阅

timeout()

属性 timeoutᅟ 的设置器。

setWaitOnCPU(waitOnCPU)
Parameters:

waitOnCPU – 布尔值

另请参阅

waitOnCPU()

属性 waitOnCPUᅟ 的设置器。

timeout()
Return type:

整数

另请参阅

setTimeout()

获取属性 timeoutᅟ 的Getter。

timeoutChanged(timeoutChanged)
Parameters:

timeoutChanged – int

属性 timeoutᅟ 的通知信号。

waitOnCPU()
Return type:

布尔

另请参阅

setWaitOnCPU()

属性 waitOnCPUᅟ 的获取器。

waitOnCPUChanged(waitOnCPU)
Parameters:

waitOnCPU – 布尔值

属性 waitOnCPUᅟ 的通知信号。