- class QMemoryBarrier#
用于创建内存屏障的类。更多…
摘要#
方法#
def
__init__()
def
waitOperations()
槽#
信号#
注意
此文档可能包含从C++自动转换为Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译存在问题,也可以通过在https:/bugreports.qt.io/projects/PYSIDE创建一个工单来告知我们。
详细描述#
QMemoryBarrier
帧图节点用于在渲染的特定时间创建一个特定的内存屏障。这有助于正确同步GPU上的绘制和计算命令。屏障定义了先前命令发出的内存操作的顺序。这意味着如果命令1正在操作一个将要作为后续命令2中顶点属性缓冲区的缓冲区,那么内存屏障应该放在命令1之后,并设置适当的屏障类型为顶点属性缓冲区。
当在帧图分支中找到
QMemoryBarrier
节点时,即使这些命令在分支中定义得更深,屏障也将强制执行任何绘制或计算命令之前。对于OpenGL渲染,此页面提供了有关内存模型的更多信息。
- class Operation#
(继承自
enum.Flag
) 此枚举类型描述了要清除的缓冲区类型。常量
描述
Qt3DRender.QMemoryBarrier.None
Qt3DRender.QMemoryBarrier.ElementArray
Qt3DRender.QMemoryBarrier.Uniform
Qt3DRender.QMemoryBarrier.TextureFetch
Qt3DRender.QMemoryBarrier.ShaderImageAccess
Qt3DRender.QMemoryBarrier.Command
Qt3DRender.QMemoryBarrier.PixelBuffer
Qt3DRender.QMemoryBarrier.TextureUpdate
Qt3DRender.QMemoryBarrier.BufferUpdate
Qt3DRender.QMemoryBarrier.FrameBuffer
Qt3DRender.QMemoryBarrier.TransformFeedback
Qt3DRender.QMemoryBarrier.AtomicCounter
Qt3DRender.QMemoryBarrier.ShaderStorage
Qt3DRender.QMemoryBarrier.QueryBuffer
Qt3DRender.QMemoryBarrier.VertexAttributeArray
Qt3DRender.QMemoryBarrier.All
- __init__([parent=None])#
- 参数:
parent –
QNode
- setWaitOperations(operations)#
- 参数:
operations –
Operation
的组合
- waitOperations()#
- 返回类型:
Operation
的组合
- waitOperationsChanged(barrierTypes)#
- 参数:
barrierTypes –
Operation
的组合