Qt3DRender::QMemoryBarrier Class
class Qt3DRender::QMemoryBarrierClase para colocar una barrera de memoria. Más...
| Cabecera: | #include <QMemoryBarrier> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS 3drender)target_link_libraries(mytarget PRIVATE Qt6::3drender) |
| qmake: | QT += 3drender |
| En QML: | MemoryBarrier |
| Hereda: | Qt3DRender::QFrameGraphNode |
| Status: | Obsoleto |
Tipos públicos
| enum | Operation { None, ElementArray, Uniform, TextureFetch, ShaderImageAccess, …, All } |
| flags | Operations |
Descripción Detallada
Un nodo Qt3DRender::QMemoryBarrier FrameGraph se utiliza para colocar una barrera de memoria específica en un momento concreto del renderizado. Esto es necesario para sincronizar correctamente los comandos de dibujo y cálculo en la GPU.
La barrera define el orden de las operaciones de memoria emitidas por un comando anterior. Esto significa que si el comando1 manipula un búfer que se utilizará como búfer de atributos de vértices en un comando2 posterior, la barrera de memoria debe colocarse después del comando1 y establecer el tipo de barrera adecuado para el búfer de atributos de vértices.
Cuando se encuentra un nodo QMemoryBarrier en una rama de FrameGraph, la barrera será aplicada antes de cualquier comando draw o compute incluso si estos están definidos más abajo en la rama.
Para el renderizado OpenGL, esta página proporciona más información sobre el Modelo de Memoria
Documentación de Tipos de Miembros
enum QMemoryBarrier::Operation
flags QMemoryBarrier::Operations
Este tipo enum describe los tipos de búfer a borrar.
| Constante | Valor |
|---|---|
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 |
El tipo Operations es un typedef para QFlags<Operation>. Almacena una combinación OR de valores de Operation.
© 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.