Sur cette page

Qt3DRender::QSetFence Class

class Qt3DRender::QSetFence

FrameGraphNode utilisé pour insérer une clôture dans le flux de commandes graphiques. Plus d'informations...

En-tête : #include <QSetFence>
CMake : find_package(Qt6 REQUIRED COMPONENTS 3drender)
target_link_libraries(mytarget PRIVATE Qt6::3drender)
qmake : QT += 3drender
Hérite : Qt3DRender::QFrameGraphNode
Statut : Déclassé

Propriétés

Fonctions publiques

QVariant handle() const
Qt3DRender::QSetFence::HandleType handleType() const

Signaux

void handleChanged(QVariant handle)
void handleTypeChanged(Qt3DRender::QSetFence::HandleType handleType)

Description détaillée

La clôture permet de synchroniser les charges de travail du GPU et du CPU. Les commandes du GPU sont généralement non bloquantes. Lorsqu'elles sont émises, les commandes sont insérées dans des tampons de commande qui seront lus ultérieurement par le GPU. Dans certains cas, vous souhaitez poursuivre le traitement ou émettre une commande spécifique uniquement lorsque vous êtes sûr qu'elle a été exécutée par le matériel. Les clôtures sont un moyen d'y parvenir. Ceci est particulièrement important lors de l'utilisation de moteurs tiers avec Qt3D, Qt3D ne devrait accéder aux ressources partagées que lorsque nous savons que la commande de l'autre moteur a fini de modifier la ressource.

QSetFence est un noeud FrameGraph qui insère une clôture dans le flux de commandes. Il peut ensuite être utilisé en conjonction avec QWaitFence ou en extrayant la poignée sous-jacente.

La propriété handle sera mise à jour une fois que le moteur de rendu aura créé la ressource fence sous-jacente. La poignée reste valide tant qu'elle n'est pas signalée. Une fois qu'il a atteint l'état signalé, il est détruit et un nouveau handle est créé. Cela signifie qu'en fonction du temps nécessaire pour que la clôture soit signalée, la même poignée peut être utilisée sur plusieurs images.

Documentation sur les propriétés

[read-only] handle : QVariant

Maintient la poignée de la clôture sous-jacente enveloppée dans un QVariant.

Fonctions d'accès :

QVariant handle() const

Signal de notification :

void handleChanged(QVariant handle)

[read-only] handleType : HandleType

Spécifie le type de poignée utilisé. Actuellement, seuls les identifiants de clôture OpenGL sont pris en charge.

Fonctions d'accès :

Qt3DRender::QSetFence::HandleType handleType() const

Signal du notificateur :

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

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.