Spec-Zone.ru › Qt 6.1

Класс QComputeCommand

класс Qt3DRender::QComputeCommand

QComponent для выполнения работы для шейдера вычислений на GPU. Подробнее...

Заголовок: #include <QComputeCommand>
CMake: find_package(Qt6 COMPONENTS 3drender REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::3drender)
qmake: QT += 3drender
С тех пор: Qt 5.7
Инициализируется: ComputeCommand
Наследуется от: Qt3DCore::QComponent
  • Список всех членов, включая наследуемые

Свойства

  • runType : RunType
  • workGroupX : int
  • workGroupY : int
  • workGroupZ : int

Открытые функции

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

Открытые слоты

void setRunType(Qt3DRender::QComputeCommand::RunType runType)
void setWorkGroupX(int workGroupX)
void setWorkGroupY(int workGroupY)
void setWorkGroupZ(int workGroupZ)
void trigger(int workGroupX, int workGroupY, int workGroupZ, int frameCount = 1)
void trigger(int frameCount = 1)

Сигналы

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

Подробное описание

Класс Qt3DRender::QComputeCommand используется для задания работы для шейдера вычислений. Шейдер вычислений указан в компоненте QMaterial того же сущности, к которой добавлен QComputeCommand. Свойства workGroupX, workGroupY и workGroupZ задают размеры рабочей группы для вызова шейдера вычислений. Узел Qt3DRender::QDispatchCompute должен присутствовать в FrameGraph, чтобы фактически выполнить команды.

Примечание: Если политика рендеринга установлена на Qt3DRender::QRenderSettings::OnDemand и нет изменений в сцене, ComputeCommand не будет вызываться повторно. Политика рендеринга Qt3DRender::QRenderSettings::Always должна быть установлена для ComputeCommand, чтобы он вызывался повторно, если другие изменения в сцене не вызывают рендеринг нового кадра.

Документация по свойствам

runType : RunType

Указывает, должна ли команда вычислений выполняться каждый кадр или вызываться вручную.

Если установлено значение Continuous, команда вычислений выполняется каждый кадр. Это значение по умолчанию.

Если установлено значение Manual, команда вычислений выполняется заданное количество кадров, а затем компонент отключает себя.

Функции доступа:

Qt3DRender::QComputeCommand::RunType runType() const
void setRunType(Qt3DRender::QComputeCommand::RunType runType)

Сигнал уведомления:

void runTypeChanged()

workGroupX : int

Указывает размер рабочей группы по оси X.

Функции доступа:

int workGroupX() const
void setWorkGroupX(int workGroupX)

Сигнал уведомления:

void workGroupXChanged()

workGroupY : int

Указывает размер рабочей группы по оси Y.

Функции доступа:

int workGroupY() const
void setWorkGroupY(int workGroupY)

Сигнал уведомления:

void workGroupYChanged()

workGroupZ : int

Указывает размер рабочей группы по оси Z.

Функции доступа:

int workGroupZ() const
void setWorkGroupZ(int workGroupZ)

Сигнал уведомления:

void workGroupZChanged()

Документация по функциям-членам

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

Конструктор создаёт новый экземпляр Qt3DRender::QComputeCommand с указанным parent.

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

Устанавливает рабочую группу для первого измерения в workGroupX.

Примечание: Функция-сеттер для свойства workGroupX.

См. также workGroupX().

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

Устанавливает рабочую группу для второго измерения в workGroupY.

Примечание: Функция-сеттер для свойства workGroupY.

См. также workGroupY().

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

Устанавливает рабочую группу для третьего измерения в workGroupZ.

Примечание: Функция-сеттер для свойства workGroupZ.

См. также workGroupZ().

[slot] void QComputeCommand::trigger(int workGroupX, int workGroupY, int workGroupZ, int frameCount = 1)

Когда тип выполнения установлен в Ручной, вызов trigger приведет к выполнению вычислительной команды в течение следующих frameCount кадров. По завершении выполнения свойство enabled будет установлено в false. Размер рабочей группы, установленный ранее, будет перезаписан значениями workGroupX, workGroupY, workGroupZ.

[slot] void QComputeCommand::trigger(int frameCount = 1)

Когда тип выполнения установлен в Ручной, вызов trigger приведет к выполнению вычислительной команды в течение следующих frameCount кадров. По завершении выполнения свойство enabled будет установлено в false.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.1/qt3drender-qcomputecommand.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API