QComputeCommand Class

( Qt3DRender::QComputeCommand )

QComponent to issue work for the compute shader on GPU. 更多...

头: #include <QComputeCommand>
qmake: QT += 3drender
Since: Qt 5.7
实例化: ComputeCommand
继承: Qt3DCore::QComponent

特性

公共函数

QComputeCommand (Qt3DCore::QNode * parent = nullptr)
int workGroupX () const
int workGroupY () const
int workGroupZ () const

公共槽

void setWorkGroupX (int workGroupX )
void setWorkGroupY (int workGroupY )
void setWorkGroupZ (int workGroupZ )

信号

void workGroupXChanged ()
void workGroupYChanged ()
void workGroupZChanged ()

静态公共成员

const QMetaObject staticMetaObject

额外继承成员

详细描述

QComponent to issue work for the compute shader on GPU.

A Qt3DRender::QComputeCommand is used to issue work for the compute shader. The compute shader is specified in the QMaterial component of the same entity the QComputeCommand is added to. The workGroupX , workGroupY and workGroupZ properties specify the work group sizes for the compute shader invocation. Qt3DRender::QDispatchCompute node needs to be present in the FrameGraph to actually issue the commands.

注意: If the rendering policy is set to Qt3DRender::QRenderSettings::OnDemand and there are no changes to the scene, the ComputeCommand will not be invoked repeatedly. The Qt3DRender::QRenderSettings::Always render policy must be set for the ComputeCommand to be repeatedly invoked if there are no other changes to the scene that triggers rendering a new frame.

特性文档编制

workGroupX : int

Specifies X workgroup size.

访问函数:

int workGroupX () const
void setWorkGroupX (int workGroupX )

通知程序信号:

void workGroupXChanged ()

workGroupY : int

Specifies Y workgroup size.

访问函数:

int workGroupY () const
void setWorkGroupY (int workGroupY )

通知程序信号:

void workGroupYChanged ()

workGroupZ : int

Specifies Z workgroup size.

访问函数:

int workGroupZ () const
void setWorkGroupZ (int workGroupZ )

通知程序信号:

void workGroupZChanged ()

成员函数文档编制

QComputeCommand:: QComputeCommand ( Qt3DCore::QNode * parent = nullptr)

The constructor creates a new Qt3DRender::QComputeCommand instance with the specified parent .

[slot] void QComputeCommand:: setWorkGroupX ( int workGroupX )

Sets the workgroup for the first dimension to workGroupX .

注意: setter 函数对于特性 workGroupX .

另请参阅 workGroupX ().

[slot] void QComputeCommand:: setWorkGroupY ( int workGroupY )

Sets the workgroup for the second dimension to workGroupY .

注意: setter 函数对于特性 workGroupY .

另请参阅 workGroupY ().

[slot] void QComputeCommand:: setWorkGroupZ ( int workGroupZ )

Sets the workgroup for the third dimension to workGroupZ .

注意: setter 函数对于特性 workGroupZ .

另请参阅 workGroupZ ().