QRenderSurfaceSelector Class

class Qt3DRender::QRenderSurfaceSelector

Provides a way of specifying the render surface. More...

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

Properties

Public Functions

QRenderSurfaceSelector(Qt3DCore::QNode *parent = nullptr)
QSize externalRenderTargetSize() const
QObject *surface() const
float surfacePixelRatio() const

Public Slots

void setExternalRenderTargetSize(const QSize &size)
void setSurface(QObject *surfaceObject)
void setSurfacePixelRatio(float ratio)

Signals

void externalRenderTargetSizeChanged(const QSize &size)
void surfaceChanged(QObject *surface)
void surfacePixelRatioChanged(float ratio)

Detailed Description

The Qt3DRender::QRenderSurfaceSelector can be used to select the surface, where Qt3D renders the content. The surface can either be window surface or offscreen surface. The externalRenderTargetSize is used to specify the actual size of the surface when offscreen surface is used.

When DPI scaling is used by the system, the logical surface size, which is used by mouse events, and the actual 'physical' size of the surface can differ. The surfacePixelRatio is the factor to convert the logical size to the physical size.

See also QWindow, QOffscreenSurface, and QSurface.

Property Documentation

externalRenderTargetSize : QSize

Holds the size of the external render target.

Access functions:

QSize externalRenderTargetSize() const
void setExternalRenderTargetSize(const QSize &size)

Notifier signal:

void externalRenderTargetSizeChanged(const QSize &size)

surface : QObject*

Holds the surface

Access functions:

QObject *surface() const
void setSurface(QObject *surfaceObject)

Notifier signal:

void surfaceChanged(QObject *surface)

surfacePixelRatio : float

Holds the surfacePixelRatio of the surface.

Access functions:

float surfacePixelRatio() const
void setSurfacePixelRatio(float ratio)

Notifier signal:

void surfacePixelRatioChanged(float ratio)

Member Function Documentation

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

Constructs QRenderSurfaceSelector with given parent.

[slot] void QRenderSurfaceSelector::setExternalRenderTargetSize(const QSize &size)

Sets render target size if different than underlying surface size. Tells picking the correct size.

Note: Setter function for property externalRenderTargetSize.

See also externalRenderTargetSize().

[slot] void QRenderSurfaceSelector::setSurface(QObject *surfaceObject)

Sets surfaceObject.

Note: Setter function for property surface.

See also surface().