Spec-Zone.ru › Qt 6.1

Класс QWaitFence

класс Qt3DRender::QWaitFence

Узел графа кадров используется для ожидания сигнала барьера в потоке команд графического процессора. Подробнее...

Заголовок: #include <QWaitFence>
CMake: find_package(Qt6 COMPONENTS 3drender REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::3drender)
qmake: QT += 3drender
С момента: Qt 5.13
Наследует: Qt3DRender::QFrameGraphNode
  • Список всех членов, включая унаследованные

Свойства

  • handle : QVariant
  • handleType : HandleType
  • timeout : quint64
  • waitOnCPU : bool

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

QVariant handle() const
Qt3DRender::QWaitFence::HandleType handleType() const
void setHandle(QVariant handle)
void setHandleType(Qt3DRender::QWaitFence::HandleType type)
void setTimeout(quint64 timeout)
void setWaitOnCPU(bool waitOnCPU)
quint64 timeout() const
bool waitOnCPU() const

Сигналы

void handleChanged(QVariant handle)
void handleTypeChanged(Qt3DRender::QWaitFence::HandleType handleType)
void timeoutChanged(quint64 timeoutChanged)
void waitOnCPUChanged(bool waitOnCPU)

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

Барьер позволяет синхронизировать рабочие нагрузки графического процессора и центрального процессора. Команды графического процессора, как правило, неблокирующие. При вызове команды добавляются в буферы команд, которые будут считываться графическим процессором в более позднее время. В некоторых случаях необходимо продолжить обработку или выполнить определенную команду только тогда, когда вы уверены, что команда была выполнена аппаратным обеспечением. Барьеры — это способ сделать это. Это особенно важно при использовании сторонних движков с Qt3D, Qt3D должен обращаться к общим ресурсам только тогда, когда мы знаем, что другие команды движка закончили модификацию ресурса.

QWaitFence — это узел графа кадров, который будет заставлять ожидать, пока он не станет сигнализированным, прежде чем последующие команды будут добавлены в поток команд. Затем его можно использовать совместно с QSetFence и содержит свойства для настройки того, как долго нужно ждать и нужно ли блокировать сторону центрального процессора.

Примечание: Qt 3D загружает ресурсы графического процессора (текстуры, шейдеры, буферы) перед вызовом команд отрисовки.

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

handle : QVariant

Содержит базовый дескриптор барьера, заключенный в QVariant.

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

QVariant handle() const
void setHandle(QVariant handle)

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

void handleChanged(QVariant handle)

handleType : HandleType

Указывает тип используемого дескриптора. В настоящее время поддерживаются только идентификаторы барьеров OpenGL.

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

Qt3DRender::QWaitFence::HandleType handleType() const
void setHandleType(Qt3DRender::QWaitFence::HandleType type)

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

void handleTypeChanged(Qt3DRender::QWaitFence::HandleType handleType)

timeout : quint64

Указывает максимальное время в наносекундах ожидания сигнализации барьера.

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

quint64 timeout() const
void setTimeout(quint64 timeout)

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

void timeoutChanged(quint64 timeoutChanged)

waitOnCPU : bool

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

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

bool waitOnCPU() const
void setWaitOnCPU(bool waitOnCPU)

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

void waitOnCPUChanged(bool waitOnCPU)

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

Spec-Zone.ru

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