Qt3DRender::QMemoryBarrier Class
class Qt3DRender::QMemoryBarrierClasse permettant de placer une barrière mémoire. Plus d'informations...
| En-tête : | #include <QMemoryBarrier> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS 3drender)target_link_libraries(mytarget PRIVATE Qt6::3drender) |
| qmake : | QT += 3drender |
| En QML : | MemoryBarrier |
| Hérite : | Qt3DRender::QFrameGraphNode |
| Statut : | Déclassé |
Types publics
| enum | Operation { None, ElementArray, Uniform, TextureFetch, ShaderImageAccess, …, All } |
| flags | Operations |
Description détaillée
Un nœud Qt3DRender::QMemoryBarrier FrameGraph est utilisé pour placer une barrière mémoire spécifique à un moment précis du rendu. Cela est nécessaire pour synchroniser correctement les commandes de dessin et de calcul sur le GPU.
La barrière définit l'ordre des opérations de mémoire émises par une commande antérieure. Cela signifie que si la commande 1 manipule un tampon qui sera utilisé comme tampon d'attribut de sommet dans la commande 2 suivante, la barrière mémoire doit être placée après la commande 1 et doit définir le type de barrière approprié pour le tampon d'attribut de sommet.
Lorsqu'un noeud QMemoryBarrier est trouvé dans une branche FrameGraph, la barrière sera appliquée avant toute commande de dessin ou de calcul, même si celles-ci sont définies plus loin dans la branche.
Pour le rendu OpenGL, cette page donne plus d'informations sur le modèle de mémoire.
Type de membre Documentation
enum QMemoryBarrier::Operation
flags QMemoryBarrier::Operations
Cette énumération décrit les types de tampons à effacer.
| Constante | Valeur |
|---|---|
Qt3DRender::QMemoryBarrier::None | 0 |
Qt3DRender::QMemoryBarrier::ElementArray | (1 << 1) |
Qt3DRender::QMemoryBarrier::Uniform | (1 << 2) |
Qt3DRender::QMemoryBarrier::TextureFetch | (1 << 3) |
Qt3DRender::QMemoryBarrier::ShaderImageAccess | (1 << 4) |
Qt3DRender::QMemoryBarrier::Command | (1 << 5) |
Qt3DRender::QMemoryBarrier::PixelBuffer | (1 << 6) |
Qt3DRender::QMemoryBarrier::TextureUpdate | (1 << 7) |
Qt3DRender::QMemoryBarrier::BufferUpdate | (1 << 8) |
Qt3DRender::QMemoryBarrier::FrameBuffer | (1 << 9) |
Qt3DRender::QMemoryBarrier::TransformFeedback | (1 << 10) |
Qt3DRender::QMemoryBarrier::AtomicCounter | (1 << 11) |
Qt3DRender::QMemoryBarrier::ShaderStorage | (1 << 12) |
Qt3DRender::QMemoryBarrier::QueryBuffer | (1 << 13) |
Qt3DRender::QMemoryBarrier::VertexAttributeArray | (1 << 0) |
Qt3DRender::QMemoryBarrier::All | 0xFFFFFFFF |
Le type Opérations est un typedef pour QFlags<Operation>. Il stocke une combinaison OU de valeurs d'opération.
© 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.