QClearBuffers Class

class Qt3DRender::QClearBuffers

Class to clear buffers. More...

Header: #include <QClearBuffers>
CMake: find_package(Qt6 REQUIRED COMPONENTS 3drender)
target_link_libraries(mytarget PRIVATE Qt6::3drender)
qmake: QT += 3drender
Instantiated By: ClearBuffers
Inherits: Qt3DRender::QFrameGraphNode

Public Types

enum BufferType { None, ColorBuffer, DepthBuffer, StencilBuffer, DepthStencilBuffer, …, AllBuffers }
flags BufferTypeFlags

Properties

Public Functions

QClearBuffers(Qt3DCore::QNode *parent = nullptr)
Qt3DRender::QClearBuffers::BufferType buffers() const
QColor clearColor() const
float clearDepthValue() const
int clearStencilValue() const
Qt3DRender::QRenderTargetOutput *colorBuffer() const

Public Slots

void setBuffers(Qt3DRender::QClearBuffers::BufferType buffers)
void setClearColor(const QColor &color)
void setClearDepthValue(float clearDepthValue)
void setClearStencilValue(int clearStencilValue)
void setColorBuffer(Qt3DRender::QRenderTargetOutput *buffer)

Signals

void buffersChanged(Qt3DRender::QClearBuffers::BufferType buffers)
void clearColorChanged(const QColor &color)
void clearDepthValueChanged(float clearDepthValue)
void clearStencilValueChanged(int clearStencilValue)
void colorBufferChanged(Qt3DRender::QRenderTargetOutput *buffer)

Detailed Description

A Qt3DRender::QClearBuffers FrameGraph node enables clearing of the specific render target buffers with specific values.

Member Type Documentation

enum QClearBuffers::BufferType
flags QClearBuffers::BufferTypeFlags

This enum type describes types of buffer to be cleared.

ConstantValueDescription
Qt3DRender::QClearBuffers::None0No buffers will be cleared
Qt3DRender::QClearBuffers::ColorBuffer(1 << 0)Clear color buffers
Qt3DRender::QClearBuffers::DepthBuffer(1 << 1)Clear depth buffer
Qt3DRender::QClearBuffers::StencilBuffer(1 << 2)Clear stencil buffer
Qt3DRender::QClearBuffers::DepthStencilBufferDepthBuffer | StencilBufferClear depth and stencil buffers
Qt3DRender::QClearBuffers::ColorDepthBufferColorBuffer | DepthBufferClear color and depth buffers
Qt3DRender::QClearBuffers::ColorDepthStencilBufferColorBuffer | DepthStencilBufferClear color, depth and stencil buffers
Qt3DRender::QClearBuffers::AllBuffers0xFFFFFFFFClear all buffers

The BufferTypeFlags type is a typedef for QFlags<BufferType>. It stores an OR combination of BufferType values.

Property Documentation

buffers : BufferType

Specifies the buffer type to be used.

Access functions:

Qt3DRender::QClearBuffers::BufferType buffers() const
void setBuffers(Qt3DRender::QClearBuffers::BufferType buffers)

Notifier signal:

void buffersChanged(Qt3DRender::QClearBuffers::BufferType buffers)

clearColor : QColor

Specifies the clear color to be used.

Access functions:

QColor clearColor() const
void setClearColor(const QColor &color)

Notifier signal:

void clearColorChanged(const QColor &color)

clearDepthValue : float

Specifies the clear depth value to be used.

Access functions:

float clearDepthValue() const
void setClearDepthValue(float clearDepthValue)

Notifier signal:

void clearDepthValueChanged(float clearDepthValue)

clearStencilValue : int

Specifies the stencil value to be used.

Access functions:

int clearStencilValue() const
void setClearStencilValue(int clearStencilValue)

Notifier signal:

void clearStencilValueChanged(int clearStencilValue)

colorBuffer : Qt3DRender::QRenderTargetOutput*

Specifies a specific color buffer to clear. If set to NULL (default), and ColorBuffer flag is set, all color buffers will be cleared.

Access functions:

Qt3DRender::QRenderTargetOutput *colorBuffer() const
void setColorBuffer(Qt3DRender::QRenderTargetOutput *buffer)

Notifier signal:

void colorBufferChanged(Qt3DRender::QRenderTargetOutput *buffer)

Member Function Documentation

[explicit] QClearBuffers::QClearBuffers(Qt3DCore::QNode *parent = nullptr)

The constructor creates an instance with the specified parent.

© 2024 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.