QForwardRenderer 类
class Qt3DExtras::QForwardRendererQForwardRenderer 提供了一个前向渲染器的默认 帧图 实现。更多...
| 头文件 | #include <QForwardRenderer> | 
| CMake | find_package(Qt6 REQUIRED COMPONENTS 3dextras) target_link_libraries(mytarget PRIVATE Qt6::3dextras) | 
| qmake | QT += 3dextras | 
| 由以下实例化 | ForwardRenderer | 
| 继承 | Qt3DRender::QTechniqueFilter | 
属性
| 
 | 
 | 
公共函数
| 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 | 
公共槽
| 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) | 
信号
| 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) | 
详细描述
前向渲染是OpenGL传统上使用的渲染方法。它直接在后台缓冲区中逐个渲染对象,并在每个对象上应用着色。
QForwardRenderer是一个单叶FrameGraph树,其中包含一个Qt3DRender::QViewport,一个Qt3DRender::QCameraSelector,以及一个Qt3DRender::QClearBuffers。QForwardRenderer有一个默认的筛选器键,键名为"renderingStyle",值为"forward"。如果您需要筛选方案,请基于此筛选器键进行。
默认情况下,视口占用整个屏幕,清除颜色为白色。还启用了视锥剔除。
属性文档
buffersToClear : Qt3DRender::QClearBuffers::BufferType
保留要清除的当前缓冲区。默认值为ColorDepthBuffer
访问函数
| Qt3DRender::QClearBuffers::BufferType | buffersToClear() const | 
| void | setBuffersToClear(Qt3DRender::QClearBuffers::BufferType) | 
通知器信号
| void | buffersToClearChanged(Qt3DRender::QClearBuffers::BufferType) | 
camera : Qt3DCore::QEntity*
保留用于渲染场景的当前相机实体。
注意:相机是一个具有QCameraLens作为其组件之一的QEntity。
访问函数
| Qt3DCore::QEntity * | camera() const | 
| void | setCamera(Qt3DCore::QEntity *camera) | 
通知器信号
| void | cameraChanged(Qt3DCore::QEntity *camera) | 
clearColor : QColor
保留场景的当前清除颜色。在渲染之前,帧缓冲区被初始化为清除颜色。
访问函数
| QColor | clearColor() const | 
| void | setClearColor(const QColor &clearColor) | 
通知器信号
| void | clearColorChanged(const QColor &clearColor) | 
externalRenderTargetSize : QSize
包含外部渲染目标的尺寸。当渲染不针对窗口表面(如surface中的设置)时,相关外部渲染目标。
访问函数
| QSize | externalRenderTargetSize() const | 
| void | setExternalRenderTargetSize(const QSize &size) | 
通知器信号
| void | externalRenderTargetSizeChanged(const QSize &size) | 
frustumCulling : bool
指示渲染器是否将视锥体裁剪应用于场景。
访问函数
| bool | isFrustumCullingEnabled() const | 
| void | setFrustumCullingEnabled(bool enabled) | 
通知器信号
| void | frustumCullingEnabledChanged(bool enabled) | 
gamma : float
包含将应用于场景的伽玛值。
访问函数
| float | gamma() const | 
| void | setGamma(float gamma) | 
通知器信号
| void | gammaChanged(float gamma) | 
showDebugOverlay : bool
如果为真,将在场景上渲染调试覆盖层。它将显示关于运行时渲染状态的详细信息,让用户开启和关闭日志等。
访问函数
| bool | showDebugOverlay() const | 
| void | setShowDebugOverlay(bool showDebugOverlay) | 
通知器信号
| void | showDebugOverlayChanged(bool showDebugOverlay) | 
surface : QObject*
包含当前渲染表面。
访问函数
| QObject * | surface() const | 
| void | setSurface(QObject *surface) | 
通知器信号
| void | surfaceChanged(QObject *surface) | 
viewportRect : QRectF
包含当前归一化视口矩形。
访问函数
| QRectF | viewportRect() const | 
| void | setViewportRect(const QRectF &viewportRect) | 
通知器信号
| void | viewportRectChanged(const QRectF &viewportRect) | 
© 2024 The Qt Company Ltd. 本文档中包含的贡献的文档版权属于其各自的拥有者。此处提供的文档是根据自由软件基金会发布的GNU自由文档许可第1.3版的条款许可的。Qt及其相关徽标是The Qt Company Ltd在芬兰和/或其他国家的商标。所有其他商标均是各自所有者的财产。