QBlitFramebuffer Class

class Qt3DRender ::QBlitFramebuffer

FrameGraph node to transfer a rectangle of pixel values from one region of a render target to another. 更多...

頭: #include <QBlitFramebuffer>
qmake: QT += 3drender
Since: Qt 5.10
實例化: BlitFramebuffer
繼承: Qt3DRender::QFrameGraphNode

該類在 Qt 5.10 引入。

公共類型

enum InterpolationMethod { Nearest, Linear }

特性

公共函數

QBlitFramebuffer (Qt3DCore::QNode * parent = nullptr)
virtual ~QBlitFramebuffer ()
Qt3DRender::QRenderTarget * destination () const
Qt3DRender::QRenderTargetOutput::AttachmentPoint destinationAttachmentPoint () const
QRectF destinationRect () const
Qt3DRender::QBlitFramebuffer::InterpolationMethod interpolationMethod () const
void setDestination (Qt3DRender::QRenderTarget * destination )
void setDestinationAttachmentPoint (Qt3DRender::QRenderTargetOutput::AttachmentPoint destinationAttachmentPoint )
void setDestinationRect (const QRectF & outputRect )
void setInterpolationMethod (Qt3DRender::QBlitFramebuffer::InterpolationMethod interpolationMethod )
void setSource (Qt3DRender::QRenderTarget * source )
void setSourceAttachmentPoint (Qt3DRender::QRenderTargetOutput::AttachmentPoint sourceAttachmentPoint )
void setSourceRect (const QRectF & inputRect )
Qt3DRender::QRenderTarget * source () const
Qt3DRender::QRenderTargetOutput::AttachmentPoint sourceAttachmentPoint () const
QRectF sourceRect () const

信號

void destinationAttachmentPointChanged ()
void destinationChanged ()
void destinationRectChanged ()
void interpolationMethodChanged ()
void sourceAttachmentPointChanged ()
void sourceChanged ()
void sourceRectChanged ()

詳細描述

This node inserts a glBlitFrameBuffer or an equivalent into the command stream. This provides a more efficient method for copying rectangles between textures or surface backbuffers wrapped by QRenderTarget than drawing textured quads. It also supports scaling with the specified interpolation method.

注意: In practice the QBlitFramebuffer node will often be used in combination with QNoDraw since a blit should not involve issuing draw calls for any entities.

成員類型文檔編製

enum QBlitFramebuffer:: InterpolationMethod

Specifies the interpolation applied if the image is stretched.

常量 描述
Qt3DRender::QBlitFramebuffer::Nearest 0 Nearest-neighbor interpolation.
Qt3DRender::QBlitFramebuffer::Linear 1 Linear interpolation.

特性文檔編製

destination : Qt3DRender::QRenderTarget *

Specifies the destination render target. When not set, the destination is assumed to be the default framebuffer (i.e. the backbuffer of the current surface), if there is one.

注意: the source and destination must not refer to the same render target.

訪問函數:

Qt3DRender::QRenderTarget * destination () const
void setDestination (Qt3DRender::QRenderTarget * destination )

通知程序信號:

void destinationChanged ()

destinationAttachmentPoint : Qt3DRender::QRenderTargetOutput::AttachmentPoint

Specifies the target attachment point.

訪問函數:

Qt3DRender::QRenderTargetOutput::AttachmentPoint destinationAttachmentPoint () const
void setDestinationAttachmentPoint (Qt3DRender::QRenderTargetOutput::AttachmentPoint destinationAttachmentPoint )

通知程序信號:

void destinationAttachmentPointChanged ()

destinationRect : QRectF

Specifies the destination rectangle. The coordinates are assumed to follow the normal Qt coordinate system, meaning Y runs from top to bottom.

訪問函數:

QRectF destinationRect () const
void setDestinationRect (const QRectF & outputRect )

通知程序信號:

void destinationRectChanged ()

source : Qt3DRender::QRenderTarget *

Specifies the source render target. When not set, the source is assumed to be the default framebuffer (i.e. the backbuffer of the current surface), if there is one.

注意: the source and destination must not refer to the same render target.

訪問函數:

Qt3DRender::QRenderTarget * source () const
void setSource (Qt3DRender::QRenderTarget * source )

通知程序信號:

void sourceChanged ()

sourceAttachmentPoint : Qt3DRender::QRenderTargetOutput::AttachmentPoint

Specifies the source attachment point.

訪問函數:

Qt3DRender::QRenderTargetOutput::AttachmentPoint sourceAttachmentPoint () const
void setSourceAttachmentPoint (Qt3DRender::QRenderTargetOutput::AttachmentPoint sourceAttachmentPoint )

通知程序信號:

void sourceAttachmentPointChanged ()

sourceRect : QRectF

Specifies the source rectangle. The coordinates are assumed to follow the normal Qt coordinate system, meaning Y runs from top to bottom.

訪問函數:

QRectF sourceRect () const
void setSourceRect (const QRectF & inputRect )

通知程序信號:

void sourceRectChanged ()

成員函數文檔編製

QBlitFramebuffer:: QBlitFramebuffer ( Qt3DCore::QNode * parent = nullptr)

Constructs a new QBlitFramebuffer with the given parent .

[虛擬] QBlitFramebuffer:: ~QBlitFramebuffer ()

析構函數。

Qt3DRender::QRenderTarget *QBlitFramebuffer:: destination () const

Returns the destination render target.

注意: Getter function for property destination.

另請參閱 setDestination ().

Qt3DRender::QRenderTargetOutput::AttachmentPoint QBlitFramebuffer:: destinationAttachmentPoint () const

Returns the destination attachment point.

注意: Getter function for property destinationAttachmentPoint.

另請參閱 setDestinationAttachmentPoint ().

QRectF QBlitFramebuffer:: destinationRect () const

Returns the destination rectangle.

注意: Getter function for property destinationRect.

另請參閱 setDestinationRect ().

Qt3DRender::QBlitFramebuffer::InterpolationMethod QBlitFramebuffer:: interpolationMethod () const

Returns the interpolation method.

注意: Getter function for property interpolationMethod.

另請參閱 setInterpolationMethod ().

void QBlitFramebuffer:: setDestination ( Qt3DRender::QRenderTarget * destination )

Sets the destination render target. The default value is nullptr, in which case the destination is assumed to be be the default framebuffer (i.e. the backbuffer of the current surface), if there is one.

注意: the source and destination must not refer to the same render target.

注意: As with other nodes, destination gets automatically parented to the QBlitFramebuffer instance when no parent has been set. The lifetime is also tracked, meaning the destination reverts to nullptr in case the currently set destination 被銷毀。

注意: setter 函數對於特性 destination .

另請參閱 destination ().

void QBlitFramebuffer:: setDestinationAttachmentPoint ( Qt3DRender::QRenderTargetOutput::AttachmentPoint destinationAttachmentPoint )

設置 destinationAttachmentPoint . Defaults to Qt3DRender::QRenderTargetOutput::AttachmentPoint::Color0.

注意: setter 函數對於特性 destinationAttachmentPoint .

另請參閱 destinationAttachmentPoint ().

void QBlitFramebuffer:: setDestinationRect (const QRectF & outputRect )

Sets the destination rectangle to outputRect . The coordinates are assumed to follow the normal Qt coordinate system, meaning Y runs from top to bottom.

注意: setter 函數對於特性 destinationRect .

另請參閱 destinationRect ().

void QBlitFramebuffer:: setInterpolationMethod ( Qt3DRender::QBlitFramebuffer::InterpolationMethod interpolationMethod )

設置 interpolationMethod that is applied if the image is stretched. Defaults to Linear.

注意: setter 函數對於特性 interpolationMethod .

另請參閱 interpolationMethod ().

void QBlitFramebuffer:: setSource ( Qt3DRender::QRenderTarget * source )

Sets the source render target. The default value is nullptr, in which case the source is assumed to be be the default framebuffer (i.e. the backbuffer of the current surface), if there is one.

注意: the source and destination must not refer to the same render target.

注意: As with other nodes, source gets automatically parented to the QBlitFramebuffer instance when no parent has been set. The lifetime is also tracked, meaning the source reverts to nullptr in case the currently set source 被銷毀。

注意: setter 函數對於特性 source .

另請參閱 source ().

void QBlitFramebuffer:: setSourceAttachmentPoint ( Qt3DRender::QRenderTargetOutput::AttachmentPoint sourceAttachmentPoint )

設置 sourceAttachmentPoint . Defaults to Qt3DRender::QRenderTargetOutput::AttachmentPoint::Color0.

注意: setter 函數對於特性 sourceAttachmentPoint .

另請參閱 sourceAttachmentPoint ().

void QBlitFramebuffer:: setSourceRect (const QRectF & inputRect )

Sets the source rectangle to inputRect . The coordinates are assumed to follow the normal Qt coordinate system, meaning Y runs from top to bottom.

注意: setter 函數對於特性 sourceRect .

另請參閱 sourceRect ().

Qt3DRender::QRenderTarget *QBlitFramebuffer:: source () const

Returns the source render target.

注意: getter 函數對於特性 source。

另請參閱 setSource ().

Qt3DRender::QRenderTargetOutput::AttachmentPoint QBlitFramebuffer:: sourceAttachmentPoint () const

Returns the source attachment point.

注意: Getter function for property sourceAttachmentPoint.

另請參閱 setSourceAttachmentPoint ().

QRectF QBlitFramebuffer:: sourceRect () const

Returns the source rectangle.

注意: Getter function for property sourceRect.

另請參閱 setSourceRect ().