Sur cette page

Qt3DExtras::QForwardRenderer Class

class Qt3DExtras::QForwardRenderer

Le QForwardRenderer fournit une implémentation par défaut de FrameGraph pour un moteur de rendu direct. En savoir plus...

En-tête : #include <qforwardrenderer.h>
CMake : find_package(Qt6 REQUIRED COMPONENTS 3dextras)
target_link_libraries(mytarget PRIVATE Qt6::3dextras)
qmake : QT += 3dextras
En QML : ForwardRenderer
Hérite de : Qt3DRender::QTechniqueFilter
Statut : Obsolète

Cette classe est obsolète. Nous déconseillons fortement de l'utiliser dans du nouveau code.

Propriétés

Fonctions publiques

Qt3DRender::QClearBuffers::BufferType buffersToClear() const
Qt3DCore::QEntity *camera() const
QColor clearColor() const
QSize externalRenderTargetSize() const
float gamma() const
bool isFrustumCullingEnabled() const
bool showDebugOverlay() const
QObject *surface() const
QRectF viewportRect() const

Emplacements publics

void setBuffersToClear(Qt3DRender::QClearBuffers::BufferType)
void setCamera(Qt3DCore::QEntity *camera)
void setClearColor(const QColor &clearColor)
void setExternalRenderTargetSize(const QSize &size)
void setFrustumCullingEnabled(bool enabled)
void setGamma(float gamma)
void setShowDebugOverlay(bool showDebugOverlay)
void setSurface(QObject *surface)
void setViewportRect(const QRectF &viewportRect)

Signaux

void buffersToClearChanged(Qt3DRender::QClearBuffers::BufferType)
void cameraChanged(Qt3DCore::QEntity *camera)
void clearColorChanged(const QColor &clearColor)
void externalRenderTargetSizeChanged(const QSize &size)
void frustumCullingEnabledChanged(bool enabled)
void gammaChanged(float gamma)
void showDebugOverlayChanged(bool showDebugOverlay)
void surfaceChanged(QObject *surface)
void viewportRectChanged(const QRectF &viewportRect)

Description détaillée

Le rendu direct est la méthode traditionnellement utilisée par OpenGL. Il effectue le rendu directement dans le tampon arrière, un objet à la fois, en appliquant le shading à chacun d’entre eux au fur et à mesure.

QForwardRenderer est une arborescence FrameGraph à feuille unique qui contient un Qt3DRender::QViewport, un Qt3DRender::QCameraSelector et un Qt3DRender::QClearBuffers. Le QForwardRenderer dispose d'une clé de filtre par défaut dont le nom est « renderingStyle » et la valeur « forward ». Si vous avez besoin de filtrer vos techniques, vous devez le faire en vous basant sur cette clé de filtre.

Par défaut, la fenêtre d'affichage occupe tout l'écran et la couleur d'effacement est le blanc. Le culling par frustum est également activé.

Documentation des propriétés

buffersToClear : Qt3DRender::QClearBuffers::BufferType

Contient les tampons actuels à effacer. La valeur par défaut est ColorDepthBuffer

Fonctions d'accès :

Qt3DRender::QClearBuffers::BufferType buffersToClear() const
void setBuffersToClear(Qt3DRender::QClearBuffers::BufferType)

Signal de notification :

void buffersToClearChanged(Qt3DRender::QClearBuffers::BufferType)

camera : Qt3DCore::QEntity*

Contient l'entité de caméra actuellement utilisée pour le rendu de la scène.

Remarque : une caméra est une entité de type QEntity dont l'un des composants est un QCameraLens.

Fonctions d'accès :

Qt3DCore::QEntity *camera() const
void setCamera(Qt3DCore::QEntity *camera)

Signal de notification :

void cameraChanged(Qt3DCore::QEntity *camera)

clearColor : QColor

Contient la couleur d'effacement actuelle de la scène. Le tampon d'image est initialisé à cette couleur d'effacement avant le rendu.

Fonctions d'accès :

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

Signal de notification :

void clearColorChanged(const QColor &clearColor)

externalRenderTargetSize : QSize

Contient la taille de la cible de rendu externe. Les cibles de rendu externes sont pertinentes lorsque le rendu ne cible pas la surface d’une fenêtre (comme défini dans surface).

Fonctions d’accès :

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

Signal de notification :

void externalRenderTargetSizeChanged(const QSize &size)

frustumCulling : bool

Indique si le moteur de rendu applique le culling du frustum à la scène.

Fonctions d'accès :

bool isFrustumCullingEnabled() const
void setFrustumCullingEnabled(bool enabled)

Signal de notification :

void frustumCullingEnabledChanged(bool enabled)

gamma : float

Contient la valeur gamma que le moteur de rendu applique à la scène.

Fonctions d'accès :

float gamma() const
void setGamma(float gamma)

Signal de notification :

void gammaChanged(float gamma)

showDebugOverlay : bool

Si cette option est activée, une superposition de débogage s'affichera par-dessus la scène. Elle affichera des informations détaillées sur l'état de rendu en exécution, permettra à l'utilisateur d'activer ou de désactiver la journalisation, etc.

Fonctions d'accès :

bool showDebugOverlay() const
void setShowDebugOverlay(bool showDebugOverlay)

Signal de notification :

void showDebugOverlayChanged(bool showDebugOverlay)

surface : QObject*

Contient la surface de rendu actuelle.

Fonctions d'accès :

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

Signal de notification :

void surfaceChanged(QObject *surface)

viewportRect : QRectF

Contient le rectangle normalisé actuel de la fenêtre d'affichage.

Fonctions d'accès :

QRectF viewportRect() const
void setViewportRect(const QRectF &viewportRect)

Signal de notification :

void viewportRectChanged(const QRectF &viewportRect)

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