Класс QSetFence
класс Qt3DRender::QSetFenceFrameGraphNode, используемый для вставки барьера в поток графических команд. Подробнее...
| Заголовок: | #include <QSetFence> |
| CMake: | find_package(Qt6 COMPONENTS 3drender REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::3drender) |
| qmake: | QT += 3drender |
| С тех пор: | Qt 5.13 |
| Наследует: | Qt3DRender::QFrameGraphNode |
Свойства
- handle : const QVariant
- handleType : const HandleType
Открытые функции
| QVariant | handle() const |
| Qt3DRender::QSetFence::HandleType | handleType() const |
Сигналы
| void | handleChanged(QVariant handle) |
| void | handleTypeChanged(Qt3DRender::QSetFence::HandleType handleType) |
Подробное описание
Барьер позволяет синхронизировать рабочие нагрузки GPU и CPU. Команды GPU, как правило, неблокирующие. При выполнении команды вставляются в буферы команд, которые будут считаны GPU в более позднее время. В некоторых случаях вы хотите продолжить обработку или выполнить конкретную команду только тогда, когда вы уверены, что команда была выполнена аппаратным обеспечением. Барьеры — способ сделать это. Это особенно важно при использовании сторонних движков с Qt3D, Qt3D должен обращаться к общим ресурсам только тогда, когда мы знаем, что другие команды движка закончили изменение ресурса.
QSetFence — это узел FrameGraph, который вставляет барьер в поток команд. Затем его можно использовать в сочетании с QWaitFence или извлекая базовый дескриптор.
Свойство handle будет обновлено, как только рендерер создаст базовый ресурс барьера. Дескриптор handle будет оставаться действительным до тех пор, пока он остается в несигнализированном состоянии. После перехода в сигнализированное состояние он будет уничтожен, и будет создан новый дескриптор. Это означает, что в зависимости от того, сколько времени потребуется для сигнализации барьера, один и тот же дескриптор может использоваться на протяжении нескольких кадров.
Документация по свойствам
[read-only] handle : const QVariant
Содержит базовый дескриптор барьера, заключенный в QVariant.
Функции доступа:
| QVariant | handle() const |
Сигнал уведомления:
| void | handleChanged(QVariant handle) |
[read-only] handleType : const HandleType
Указывает тип используемого дескриптора. В настоящее время поддерживаются только идентификаторы барьеров OpenGL.
Функции доступа:
| Qt3DRender::QSetFence::HandleType | handleType() const |
Сигнал уведомления:
| void | handleTypeChanged(Qt3DRender::QSetFence::HandleType handleType) |
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.1/qt3drender-qsetfence.html