En esta página

Qt3DRender::QMemoryBarrier Class

class Qt3DRender::QMemoryBarrier

Clase 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.

ConstanteValor
Qt3DRender::QMemoryBarrier::None0
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::All0xFFFFFFFF

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.