![]() |
Qt 6.x
The Qt SDK
|
#include <qquick3dscenerenderer_p.h>
Public Member Functions | |
QQuick3DSceneRenderer (const std::shared_ptr< QSSGRenderContextInterface > &rci) | |
~QQuick3DSceneRenderer () | |
Static Public Member Functions | |
static QSSGRenderLayer::TonemapMode | getTonemapMode (const QQuick3DSceneEnvironment &environment) |
Protected Member Functions | |
QRhiTexture * | renderToRhiTexture (QQuickWindow *qw) |
void | beginFrame () |
void | endFrame () |
void | rhiPrepare (const QRect &viewport, qreal displayPixelRatio) |
void | rhiRender () |
void | synchronize (QQuick3DViewport *view3D, const QSize &size, float dpr) |
void | invalidateFramebufferObject () |
QSize | surfaceSize () const |
void | releaseCachedResources () |
std::optional< QSSGRenderRay > | getRayFromViewportPos (const QPointF &pos) |
QSSGRenderPickResult | syncPick (const QSSGRenderRay &ray) |
QSSGRenderPickResult | syncPickOne (const QSSGRenderRay &ray, QSSGRenderNode *node) |
PickResultList | syncPickAll (const QSSGRenderRay &ray) |
void | setGlobalPickingEnabled (bool isEnabled) |
QQuick3DRenderStats * | renderStats () |
Friends | |
class | SGFramebufferObjectNode |
class | QQuick3DSGRenderNode |
class | QQuick3DSGDirectRenderer |
class | QQuick3DViewport |
struct | ViewportTransformHelper |
Definition at line 40 of file qquick3dscenerenderer_p.h.
|
explicit |
Definition at line 191 of file qquick3dscenerenderer.cpp.
References dumpRenderTimes, and qEnvironmentVariableIntValue().
QQuick3DSceneRenderer::~QQuick3DSceneRenderer | ( | ) |
Definition at line 197 of file qquick3dscenerenderer.cpp.
References QSSGRhiContextStats::cleanupLayerInfo(), and QSSGRhiContext::stats().
|
protected |
Definition at line 498 of file qquick3dscenerenderer.cpp.
Referenced by QQuick3DSGRenderNode::prepare(), and renderToRhiTexture().
|
protected |
Definition at line 503 of file qquick3dscenerenderer.cpp.
Referenced by QQuick3DSGRenderNode::render(), and renderToRhiTexture().
|
protected |
Definition at line 1022 of file qquick3dscenerenderer.cpp.
References QSize::height(), pos, position(), QSSGRenderLayer::renderedCamera, toRectRelative(), QSSGRenderCamera::unproject(), QSize::width(), QVector2D::x(), and QVector2D::y().
Referenced by ViewportTransformHelper::map().
|
inlinestatic |
Definition at line 47 of file qquick3dscenerenderer_p.h.
References QSSGRenderLayer::None, QQuick3DSceneEnvironment::tonemapMode, and QQuick3DSceneEnvironment::useBuiltinTonemapper().
Referenced by QQuick3DRenderLayerHelpers::updateLayerNodeHelper().
|
protected |
Definition at line 1006 of file qquick3dscenerenderer.cpp.
References SGFramebufferObjectNode::invalidatePending.
Referenced by SGFramebufferObjectNode::handleScreenChange().
|
protected |
Definition at line 1012 of file qquick3dscenerenderer.cpp.
References QSSGLayerRenderData::getReflectionMapManager(), QSSGLayerRenderData::getShadowMapManager(), and QSSGRenderLayer::renderData.
|
protected |
Definition at line 1078 of file qquick3dscenerenderer.cpp.
Referenced by SGFramebufferObjectNode::render().
|
protected |
Definition at line 261 of file qquick3dscenerenderer.cpp.
References QSSGRhiShaderResourceBindingList::addTexture(), QSSGRhiShaderResourceBindingList::addUniformBuffer(), QSSGRenderLayer::antialiasingMode, QSSGRenderLayer::antialiasingQuality, beginFrame(), cb, QRhiSampler::ClampToEdge, QSSGRenderCamera::clipFar, QSSGRenderCamera::clipNear, QSSGRenderLayer::Color, QSSGRhiContext::commandBuffer(), QSSGRhiContext::commonPassFlags(), QRhiResourceUpdateBatch::copyTexture(), QRhiBuffer::create(), QRhiSwapChain::currentFrameCommandBuffer(), QSSGLayerRenderData::depthMapPass, dpr(), QSSGRhiContext::drawCallData(), QRhiBuffer::Dynamic, endFrame(), QQuick3DRenderStats::endRenderPrepare(), QSSGRenderLayer::firstEffect, QRhiShaderResourceBinding::FragmentStage, QSGRendererInterface::getResource(), QSize::height(), QSSGRenderLayer::lightProbe, QRhiSampler::Linear, QRhi::newBuffer(), QRhi::nextResourceUpdateBatch(), QRhiSampler::None, QRhiTexture::pixelSize(), QSSGRhiEffectSystem::process(), QSSGRenderLayer::progAAPassIndex, QSSGRenderLayer::progressiveAAIsActive, Q_ASSERT, Q_QUICK3D_PROFILE_END_WITH_ID, Q_QUICK3D_PROFILE_END_WITH_STRING, Q_QUICK3D_PROFILE_START, Q_TRACE, Q_TRACE_SCOPE, QByteArrayLiteral, QSSG_prepareFrame_entry, QSSGRHICTX_STAT, QStringLiteral, qWarning, QSSGRenderLayer::renderedCamera, renderer, QRhiSampler::Repeat, QSSGRhiContext::rhi(), DepthMapPass::rhiDepthTexture, rhiPrepare(), QSGRendererInterface::RhiRedirectCommandBuffer, rhiRender(), s_ProgressiveAABlendFactors, s_TemporalAABlendFactors, QRhiRenderBuffer::sampleCount(), QSSGRhiContext::sampler(), QSSGRhiContext::setCommandBuffer(), QSSGRhiContext::setMainPassSampleCount(), QSSGRhiContext::setMainRenderPassDescriptor(), QSSGRhiContext::setRenderTarget(), QSSGRhiGraphicsPipelineState::shaderPipeline, QSSGRenderLayer::SkyBox, QSSGRenderLayer::SkyBoxCubeMap, QSSGRenderLayer::skyBoxCubeMap, QSSGRhiContext::srb(), QSSGRenderLayer::SSAA, QQuick3DRenderStats::startRenderPrepare(), QSSGRenderLayer::tempAAPassIndex, QSSGRenderLayer::temporalAAIsActive, QSSGRhiRenderableTexture::texture, Qt::transparent, QSSGRhiDrawCallData::ubuf, QRhiBuffer::UniformBuffer, QRhiResourceUpdateBatch::updateDynamicBuffer(), QSSGRhiQuadRenderer::UvCoords, QSSGRhiGraphicsPipelineState::viewport, and QSize::width().
Referenced by SGFramebufferObjectNode::render().
|
protected |
Definition at line 508 of file qquick3dscenerenderer.cpp.
References Qt::black, QSSGLayerRenderData::camera, QSSGRenderLayer::renderData, and viewport().
Referenced by QQuick3DSGRenderNode::prepare(), and renderToRhiTexture().
|
protected |
Definition at line 530 of file qquick3dscenerenderer.cpp.
Referenced by QQuick3DSGRenderNode::render(), and renderToRhiTexture().
|
protected |
Definition at line 1073 of file qquick3dscenerenderer.cpp.
|
inlineprotected |
Definition at line 61 of file qquick3dscenerenderer_p.h.
Referenced by QQuick3DSGRenderNode::prepare(), and SGFramebufferObjectNode::render().
|
protected |
Definition at line 573 of file qquick3dscenerenderer.cpp.
References QColor::alphaF(), QSSGRenderLayer::antialiasingMode, QSSGRenderLayer::antialiasingQuality, QRhi::backend(), QQuick3DSceneEnvironment::backgroundMode, bfs(), QColor::blueF(), QQuick3DLightmapBaker::Cancelled, QSSGLightmapper::Cancelled, QList< T >::cbegin(), QList< T >::cend(), QQuick3DSceneEnvironment::clearColor, QQuick3DViewport::clearExtensionListDirty(), QRhiRenderBuffer::Color, QQuick3DLightmapBaker::Complete, QSSGLightmapper::Complete, QListSpecialMethodsBase< T >::contains(), QRhiTexture::create(), QRhiRenderBuffer::create(), QRhiTextureRenderTarget::create(), QRhiRenderBuffer::DepthStencil, dpr(), dumpRenderTimes, QQuick3DRenderStats::endSync(), QQuick3DViewport::environment, QQuick3DLightmapBaker::Error, QSSGLightmapper::Error, ext, QQuick3DViewport::extensionList(), QQuick3DViewport::extensionListDirty(), QSSGRenderLayer::firstEffect, QRhiTexture::format(), QColor::fromRgbF(), QQuick3DObjectPrivate::get(), QQuick3DSceneManager::getOrSetWindowAttachment(), QColor::greenF(), QSize::height(), QQuick3DViewport::importScene, QSSGLayerRenderData::interactiveLightmapBakingRequested, QQuick3DLightmapBaker::BakingControl::isCancelled(), isEmbedded(), QList< T >::isEmpty(), QSSGRenderGraphObject::isExtension(), QRhi::isFeatureSupported(), QSSGRhiContext::isValid(), QRhi::isYUpInFramebuffer(), it, QList< T >::last(), QSSGLayerRenderData::lightmapBakingOutputCallback, list, QSSGRenderEffect::m_nextEffect, QQuick3DViewport::maybeLightmapBaker(), QRhi::Metal, QSSGRenderLayer::MSAA, QRhi::MultisampleRenderBuffer, QRhiTextureRenderTarget::newCompatibleRenderPassDescriptor(), QRhi::newRenderBuffer(), QRhi::newTexture(), QRhi::newTextureRenderTarget(), QSSGRenderLayer::NoAA, QQuick3DLightmapBaker::None, QSSGLightmapper::None, QQuick3DViewport::Offscreen, QQuick3DViewport::Overlay, QSSGRhiEffectSystem::overriddenOutputFormat(), QObject::parent(), QQuick3DObject::parent, QSSGRenderLayer::progAAPassIndex, QQuick3DLightmapBaker::Progress, QSSGLightmapper::Progress, QSSGRenderLayer::ProgressiveAA, Q_ASSERT, Q_QUICK3D_PROFILE_END_WITH_ID, Q_QUICK3D_PROFILE_START, Q_TRACE_SCOPE, QByteArrayLiteral, qMax(), QSSG_ASSERT, qWarning, QQuick3DWindowAttachment::rci(), QColor::redF(), QSSGRenderLayer::removeImportScene(), QSSGRenderLayer::renderData, QSSGRenderLayer::renderExtensions, QQuick3DViewport::renderFormat, QQuick3DViewport::renderMode, QQuick3DViewport::renderStats, QRhiTexture::RenderTarget, QQuick3DWindowAttachment::requestUpdate(), QRhiTexture::RGBA16F, QRhiTexture::RGBA8, QSSGRhiContext::rhi(), QQuick3DViewport::scene, QQuick3DObjectPrivate::sceneManager, QQuick3DSceneEnvironment::scissorRect, QSSGRenderLayer::scissorRect, QRhiTextureRenderTargetDescription::setColorAttachments(), QRhiTextureRenderTargetDescription::setDepthStencilBuffer(), QRhiTexture::setFormat(), QSSGRenderLayer::setImportScene(), QRhiResource::setName(), QRhiTexture::setPixelSize(), QRhiRenderBuffer::setPixelSize(), QQuick3DWindowAttachment::setRci(), QRhiColorAttachment::setRenderBuffer(), QRhiRenderTarget::setRenderPassDescriptor(), QRhiColorAttachment::setResolveTexture(), QQuick3DRenderStats::setRhiContext(), QSSGRhiEffectSystem::setup(), QRect::size(), QQuick3DObjectPrivate::spatialNode, QSSGRenderLayer::SSAA, QQuick3DRenderStats::startSync(), QRhi::supportedSampleCounts(), QQuick3DWindowAttachment::synchronize(), QSSGRenderLayer::tempAAPassIndex, QSSGRenderLayer::temporalAAEnabled, QQuick3DSceneEnvironment::tonemapMode, tonemapRgb(), QRect::topLeft(), QSSGBufferManager::toRhiFormat(), toRhiTextureFormat(), QQuick3DObjectPrivate::type, QQuick3DViewport::Underlay, QSSGRenderTextureFormat::Unknown, QRhiTexture::UsedAsTransferSource, QSet< T >::values(), QQuick3DLightmapBaker::Warning, QSSGLightmapper::Warning, QQuick3DSceneManager::wattached, QSize::width(), QQuick3DSceneManager::window(), window(), QQuickItem::window(), and QQuick3DWindowAttachment::window().
|
protected |
Definition at line 1042 of file qquick3dscenerenderer.cpp.
|
protected |
Definition at line 1063 of file qquick3dscenerenderer.cpp.
|
protected |
Definition at line 1052 of file qquick3dscenerenderer.cpp.
Referenced by ViewportTransformHelper::map().
|
friend |
Definition at line 123 of file qquick3dscenerenderer_p.h.
|
friend |
Definition at line 122 of file qquick3dscenerenderer_p.h.
|
friend |
Definition at line 124 of file qquick3dscenerenderer_p.h.
|
friend |
Definition at line 121 of file qquick3dscenerenderer_p.h.
|
friend |
Definition at line 125 of file qquick3dscenerenderer_p.h.