![]() |
Qt 6.x
The Qt SDK
|
#include <qssgrenderreflectionmap_p.h>
Public Member Functions | |
QSSGReflectionMapEntry () | |
void | renderMips (QSSGRhiContext *context) |
void | destroyRhiResources () |
Static Public Member Functions | |
static QSSGReflectionMapEntry | withRhiTexturedCubeMap (quint32 probeIdx, QRhiTexture *preFiltered) |
static QSSGReflectionMapEntry | withRhiCubeMap (quint32 probeIdx, QRhiTexture *cube, QRhiTexture *prefiltered, QRhiRenderBuffer *depthStencil) |
Definition at line 36 of file qssgrenderreflectionmap_p.h.
QSSGReflectionMapEntry::QSSGReflectionMapEntry | ( | ) |
Definition at line 291 of file qssgrenderreflectionmap.cpp.
void QSSGReflectionMapEntry::destroyRhiResources | ( | ) |
Definition at line 610 of file qssgrenderreflectionmap.cpp.
References QMap< Key, T >::clear(), QVarLengthArray< T, Prealloc >::clear(), e, m_irradianceFragBuffer, m_irradiancePipeline, m_irradianceSrb, m_prefilterFragBuffer, m_prefilterMipLevelSizes, m_prefilterPipeline, m_prefilterSrb, m_prefilterVertBuffer, m_rhiCube, m_rhiDepthStencil, m_rhiPrefilteredCube, m_rhiPrefilterRenderPassDesc, m_rhiPrefilterRenderTargetsMap, m_rhiRenderPassDesc, m_rhiRenderTargets, and qDeleteAll().
Referenced by QSSGRenderReflectionMap::addReflectionMapEntry(), and QSSGRenderReflectionMap::addTexturedReflectionMapEntry().
void QSSGReflectionMapEntry::renderMips | ( | QSSGRhiContext * | context | ) |
Definition at line 448 of file qssgrenderreflectionmap.cpp.
References QSSGRenderReflectionProbe::AllFacesAtOnce, QVarLengthArray< T, Prealloc >::append(), cb, QVarLengthArray< T, Prealloc >::clear(), QRhi::clipSpaceCorrMatrix(), QSSGRhiContext::commonPassFlags(), QVarLengthArray< T, Prealloc >::constData(), QMatrix4x4::constData(), QList< T >::constData(), context, QRhiBuffer::create(), cube, QRhiResource::deleteLater(), draw(), fillPrefilterValues(), QRhiResourceUpdateBatch::generateMips(), QRhiBuffer::Immutable, QSSGRenderReflectionProbe::IndividualFaces, QRhi::isYUpInFramebuffer(), QMatrix4x4::lookAt(), m_irradianceFragBuffer, m_irradiancePipeline, m_irradianceSrb, m_prefilterFragBuffer, m_prefilterMipLevelSizes, m_prefilterPipeline, m_prefilterSrb, m_prefilterVertBuffer, m_rhiCube, m_rhiPrefilterRenderTargetsMap, m_timeSliceFace, m_timeSliceFrame, m_timeSlicing, QRhi::mipLevelsForSize(), QRhi::newBuffer(), QRhi::nextResourceUpdateBatch(), QMatrix4x4::perspective(), QRhiTexture::pixelSize(), prefilterSampleCount, Q_ASSERT, Q_QUICK3D_PROFILE_END_WITH_ID, Q_QUICK3D_PROFILE_END_WITH_STRING, Q_QUICK3D_PROFILE_START, qMin(), QSSG_RENDERPASS_NAME, QSSGRenderTextureCubeFaces, QSSGRHICTX_STAT, QRhi::ubufAligned(), QRhiResourceUpdateBatch::updateDynamicBuffer(), QRhiBuffer::VertexBuffer, and QSize::width().
Referenced by RenderHelpers::rhiRenderReflectionMap().
|
static |
Definition at line 597 of file qssgrenderreflectionmap.cpp.
Referenced by QSSGRenderReflectionMap::addReflectionMapEntry().
|
static |
Definition at line 589 of file qssgrenderreflectionmap.cpp.
References e.
Referenced by QSSGRenderReflectionMap::addTexturedReflectionMapEntry().
QRhiBuffer* QSSGReflectionMapEntry::m_irradianceFragBuffer = nullptr |
Definition at line 65 of file qssgrenderreflectionmap_p.h.
Referenced by QSSGRenderReflectionMap::addReflectionMapEntry(), destroyRhiResources(), and renderMips().
QRhiGraphicsPipeline* QSSGReflectionMapEntry::m_irradiancePipeline = nullptr |
Definition at line 60 of file qssgrenderreflectionmap_p.h.
Referenced by QSSGRenderReflectionMap::addReflectionMapEntry(), destroyRhiResources(), and renderMips().
QRhiShaderResourceBindings* QSSGReflectionMapEntry::m_irradianceSrb = nullptr |
Definition at line 62 of file qssgrenderreflectionmap_p.h.
Referenced by QSSGRenderReflectionMap::addReflectionMapEntry(), destroyRhiResources(), and renderMips().
bool QSSGReflectionMapEntry::m_needsRender = false |
Definition at line 74 of file qssgrenderreflectionmap_p.h.
Referenced by QSSGRenderReflectionMap::addReflectionMapEntry(), and RenderHelpers::rhiRenderReflectionMap().
QRhiBuffer* QSSGReflectionMapEntry::m_prefilterFragBuffer = nullptr |
Definition at line 64 of file qssgrenderreflectionmap_p.h.
Referenced by QSSGRenderReflectionMap::addReflectionMapEntry(), destroyRhiResources(), and renderMips().
Definition at line 68 of file qssgrenderreflectionmap_p.h.
Referenced by QSSGRenderReflectionMap::addReflectionMapEntry(), destroyRhiResources(), and renderMips().
QRhiGraphicsPipeline* QSSGReflectionMapEntry::m_prefilterPipeline = nullptr |
Definition at line 59 of file qssgrenderreflectionmap_p.h.
Referenced by QSSGRenderReflectionMap::addReflectionMapEntry(), destroyRhiResources(), and renderMips().
QRhiShaderResourceBindings* QSSGReflectionMapEntry::m_prefilterSrb = nullptr |
Definition at line 61 of file qssgrenderreflectionmap_p.h.
Referenced by QSSGRenderReflectionMap::addReflectionMapEntry(), destroyRhiResources(), and renderMips().
QRhiBuffer* QSSGReflectionMapEntry::m_prefilterVertBuffer = nullptr |
Definition at line 63 of file qssgrenderreflectionmap_p.h.
Referenced by QSSGRenderReflectionMap::addReflectionMapEntry(), destroyRhiResources(), and renderMips().
quint32 QSSGReflectionMapEntry::m_probeIndex |
Definition at line 50 of file qssgrenderreflectionmap_p.h.
Referenced by QSSGRenderReflectionMap::addReflectionMapEntry(), and QSSGRenderReflectionMap::reflectionMapEntry().
bool QSSGReflectionMapEntry::m_rendered = false |
Definition at line 75 of file qssgrenderreflectionmap_p.h.
Referenced by QSSGRenderReflectionMap::addReflectionMapEntry(), and RenderHelpers::rhiRenderReflectionMap().
QRhiTexture* QSSGReflectionMapEntry::m_rhiCube = nullptr |
Definition at line 53 of file qssgrenderreflectionmap_p.h.
Referenced by QSSGRenderReflectionMap::addReflectionMapEntry(), destroyRhiResources(), renderMips(), and RenderHelpers::rhiRenderReflectionMap().
QRhiRenderBuffer* QSSGReflectionMapEntry::m_rhiDepthStencil = nullptr |
Definition at line 55 of file qssgrenderreflectionmap_p.h.
Referenced by QSSGRenderReflectionMap::addReflectionMapEntry(), QSSGRenderReflectionMap::addTexturedReflectionMapEntry(), destroyRhiResources(), and RenderHelpers::rhiRenderReflectionMap().
QRhiTexture* QSSGReflectionMapEntry::m_rhiPrefilteredCube = nullptr |
Definition at line 54 of file qssgrenderreflectionmap_p.h.
Referenced by QSSGRenderReflectionMap::addReflectionMapEntry(), QSSGRenderReflectionMap::addTexturedReflectionMapEntry(), and destroyRhiResources().
QRhiRenderPassDescriptor* QSSGReflectionMapEntry::m_rhiPrefilterRenderPassDesc = nullptr |
Definition at line 67 of file qssgrenderreflectionmap_p.h.
Referenced by QSSGRenderReflectionMap::addReflectionMapEntry(), and destroyRhiResources().
QMap<int, QVarLengthArray<QRhiTextureRenderTarget *, 6> > QSSGReflectionMapEntry::m_rhiPrefilterRenderTargetsMap |
Definition at line 66 of file qssgrenderreflectionmap_p.h.
Referenced by QSSGRenderReflectionMap::addReflectionMapEntry(), destroyRhiResources(), and renderMips().
QRhiRenderPassDescriptor* QSSGReflectionMapEntry::m_rhiRenderPassDesc = nullptr |
Definition at line 57 of file qssgrenderreflectionmap_p.h.
Referenced by QSSGRenderReflectionMap::addReflectionMapEntry(), destroyRhiResources(), and rhiPrepareResourcesForReflectionMap().
QVarLengthArray<QRhiTextureRenderTarget *, 6> QSSGReflectionMapEntry::m_rhiRenderTargets |
Definition at line 56 of file qssgrenderreflectionmap_p.h.
Referenced by QSSGRenderReflectionMap::addReflectionMapEntry(), destroyRhiResources(), and RenderHelpers::rhiRenderReflectionMap().
QVarLengthArray<QRhiShaderResourceBindings *, 6> QSSGReflectionMapEntry::m_skyBoxSrbs |
Definition at line 70 of file qssgrenderreflectionmap_p.h.
Referenced by QSSGRenderReflectionMap::addReflectionMapEntry(), and RenderHelpers::rhiRenderReflectionMap().
QSSGRenderTextureCubeFace QSSGReflectionMapEntry::m_timeSliceFace = { QSSGRenderTextureCubeFaces[0] } |
Definition at line 79 of file qssgrenderreflectionmap_p.h.
Referenced by renderMips(), and RenderHelpers::rhiRenderReflectionMap().
int QSSGReflectionMapEntry::m_timeSliceFrame = 1 |
Definition at line 78 of file qssgrenderreflectionmap_p.h.
Referenced by renderMips().
QSSGRenderReflectionProbe::ReflectionTimeSlicing QSSGReflectionMapEntry::m_timeSlicing = QSSGRenderReflectionProbe::ReflectionTimeSlicing::None |
Definition at line 77 of file qssgrenderreflectionmap_p.h.
Referenced by QSSGRenderReflectionMap::addReflectionMapEntry(), renderMips(), and RenderHelpers::rhiRenderReflectionMap().
QMatrix4x4 QSSGReflectionMapEntry::m_viewProjection |
Definition at line 72 of file qssgrenderreflectionmap_p.h.
Referenced by rhiPrepareResourcesForReflectionMap(), and RenderHelpers::rhiRenderReflectionMap().