Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
QSSGLayerRenderData Class Reference

#include <qssglayerrenderdata_p.h>

Collaboration diagram for QSSGLayerRenderData:

Classes

struct  GlobalRenderProperties

Public Types

enum  Enum { MAX_AA_LEVELS = 8 , MAX_TEMPORAL_AA_LEVELS = 2 }
using InstanceTransforms = QSSGGlobalRenderNodeData::InstanceTransforms
using ModelViewProjections = QSSGRenderModelData::ModelViewProjections
using QSSGModelsView = QSSGDataView<QSSGRenderModel *>
using QSSGParticlesView = QSSGDataView<QSSGRenderParticles *>
using QSSGItem2DsView = QSSGDataView<QSSGRenderItem2D *>
using QSSGCamerasView = QSSGDataView<QSSGRenderCamera *>
using QSSGLightsView = QSSGDataView<QSSGRenderLight *>
using QSSGReflectionProbesView = QSSGDataView<QSSGRenderReflectionProbe *>
using QSSGNonCategorizedView = QSSGDataView<QSSGRenderNode *>
using RenderableFilter = std::function<bool(QSSGModelContext *)>
typedef QVector< QSSGModelContext * > TModelContextPtrList
using RenderableNodeEntries = QVector<QSSGRenderableNodeEntry>
using RenderableItem2DEntries = QVector<QSSGRenderItem2D *>
using LayerNodes = std::vector<QSSGRenderNode *>

Public Member Functions

 QSSGLayerRenderData (QSSGRenderLayer &inLayer, QSSGRenderer &inRenderer)
 ~QSSGLayerRenderData ()
void prepareImageForRender (QSSGRenderImage &inImage, QSSGRenderableImage::Type inMapType, QSSGRenderableImage *&ioFirstImage, QSSGRenderableImage *&ioNextImage, QSSGRenderableObjectFlags &ioFlags, QSSGShaderDefaultMaterialKey &ioGeneratedShaderKey, quint32 inImageIndex, QSSGRenderDefaultMaterial *inMaterial=nullptr)
void setVertexInputPresence (const QSSGRenderableObjectFlags &renderableFlags, QSSGShaderDefaultMaterialKey &key)
bool prepareModelsForRender (QSSGRenderContextInterface &ctx, const RenderableNodeEntries &renderableModels, QSSGLayerRenderPreparationResultFlags &ioFlags, const QSSGRenderCameraList &allCameras, const QSSGRenderCameraDataList &allCameraData, TModelContextPtrList &modelContexts, QSSGRenderableObjectList &opaqueObjects, QSSGRenderableObjectList &transparentObjects, QSSGRenderableObjectList &screenTextureObjects, float lodThreshold=0.0f)
bool prepareParticlesForRender (const RenderableNodeEntries &renderableParticles, const QSSGRenderCameraData &cameraData, QSSGLayerRenderPreparationResultFlags &ioFlags)
void prepareResourceLoaders ()
void prepareForRender ()
void prepareReflectionProbesForRender ()
const QSSGRenderableObjectListgetSortedOpaqueRenderableObjects (const QSSGRenderCamera &camera, size_t index=0)
const QSSGRenderableObjectListgetSortedTransparentRenderableObjects (const QSSGRenderCamera &camera, size_t index=0)
const QSSGRenderableObjectListgetSortedScreenTextureRenderableObjects (const QSSGRenderCamera &camera, size_t index=0)
const QVector< QSSGBakedLightingModel > & getSortedBakedLightingModels ()
const RenderableItem2DEntriesgetRenderableItem2Ds ()
const QSSGRenderableObjectListgetSortedRenderedDepthWriteObjects (const QSSGRenderCamera &camera, size_t index=0)
const QSSGRenderableObjectListgetSortedrenderedOpaqueDepthPrepassObjects (const QSSGRenderCamera &camera, size_t index=0)
void resetForFrame ()
QSSGFrameDatagetFrameData ()
QSSGShaderFeatures getShaderFeatures () const
QSSGRhiGraphicsPipelineState getPipelineState () const
void initializeLightmapBaking (QSSGLightmapBaker::Context &ctx)
void maybeProcessLightmapBaking ()
QSSGRenderGraphObjectgetCamera (QSSGCameraId id) const
QSSGRenderCameraactiveCamera () const
QSSGRenderCameraData getCameraRenderData (const QSSGRenderCamera *camera)
QSSGRenderCameraData getCameraRenderData (const QSSGRenderCamera *camera) const
void setLightmapTexture (const QSSGModelContext &modelContext, QRhiTexture *lightmapTexture)
QRhiTexturegetLightmapTexture (const QSSGModelContext &modelContext) const
void setBonemapTexture (const QSSGModelContext &modelContext, QRhiTexture *bonemapTexture)
QRhiTexturegetBonemapTexture (const QSSGModelContext &modelContext) const
QSSGRenderContextInterfacecontextInterface () const
bool isZPrePassActive () const
void setZPrePassPrepResult (bool res)
const QSSGShaderDefaultMaterialKeyPropertiesgetDefaultMaterialPropertyTable () const
const QSSGRenderShadowMapPtrrequestShadowMapManager ()
const QSSGRenderReflectionMapPtrrequestReflectionMapManager ()
const QSSGRenderShadowMapPtrgetShadowMapManager () const
const QSSGRenderReflectionMapPtrgetReflectionMapManager () const
QSSGOITRenderContextgetOitRenderContext ()
QSSGRhiRenderableTexturegetRenderResult (QSSGFrameData::RenderResult id)
const QSSGRhiRenderableTexturegetRenderResult (QSSGFrameData::RenderResult id) const
void saveRenderState (const QSSGRenderer &renderer)
void restoreRenderState (QSSGRenderer &renderer)
QSSGPrepContextId getOrCreateExtensionContext (const QSSGRenderExtension &ext, QSSGRenderCamera *camera=nullptr, quint32 slot=0)
QSSGRenderablesId createRenderables (QSSGPrepContextId prepId, const QSSGNodeIdList &nodes, QSSGRenderHelpers::CreateFlags createFlags)
void setGlobalTransform (QSSGRenderablesId renderablesId, const QSSGRenderModel &model, const QMatrix4x4 &mvp)
QMatrix4x4 getGlobalTransform (QSSGPrepContextId prepId, const QSSGRenderModel &model)
void setGlobalOpacity (QSSGRenderablesId renderablesId, const QSSGRenderModel &model, float opacity)
float getGlobalOpacity (QSSGPrepContextId prepId, const QSSGRenderModel &model)
QMatrix4x4 getModelMvps (QSSGPrepContextId prepId, const QSSGRenderModel &model) const
void setModelMaterials (QSSGRenderablesId renderablesId, const QSSGRenderModel &model, const QList< QSSGResourceId > &materials)
void setModelMaterials (const QSSGRenderablesId renderablesId, const QList< QSSGResourceId > &materials)
QSSGPrepResultId prepareModelsForRender (QSSGRenderContextInterface &contextInterface, QSSGPrepContextId prepId, QSSGRenderablesId renderablesId, float lodThreshold)
QMatrix4x4 getGlobalTransform (QSSGRenderNodeHandle h, QMatrix4x4 defaultValue) const
QMatrix4x4 getGlobalTransform (QSSGRenderNodeHandle h) const
QMatrix4x4 getGlobalTransform (const QSSGRenderNode &node) const
QMatrix3x3 getNormalMatrix (QSSGRenderModelHandle h) const
QMatrix3x3 getNormalMatrix (const QSSGRenderModel &model) const
ModelViewProjections getModelMvps (QSSGRenderModelHandle h) const
ModelViewProjections getModelMvps (const QSSGRenderModel &model) const
InstanceTransforms getInstanceTransforms (QSSGRenderNodeHandle h) const
InstanceTransforms getInstanceTransforms (const QSSGRenderNode &node) const
float getGlobalOpacity (QSSGRenderNodeHandle h, float defaultValue=1.0f) const
float getGlobalOpacity (const QSSGRenderNode &node) const
QSSGRenderItem2DData::Item2DRenderer getItem2DRenderer (const QSSGRenderItem2D &item) const
const std::unique_ptr< QRhiRenderPassDescriptor > & getItem2DRenderPassDescriptor () const
ModelViewProjections getItem2DMvps (QSSGRenderItem2DHandle h) const
ModelViewProjections getItem2DMvps (const QSSGRenderItem2D &item) const
void prepareRenderables (QSSGRenderContextInterface &ctx, QSSGPrepResultId prepId, QRhiRenderPassDescriptor *renderPassDescriptor, const QSSGRhiGraphicsPipelineState &ps, QSSGRenderablesFilters filter)
void renderRenderables (QSSGRenderContextInterface &ctx, QSSGPrepResultId prepId)
QSSGRenderCameraData getCameraDataImpl (const QSSGRenderCamera *camera) const

Static Public Member Functions

static void prepareModelBoneTextures (const QSSGRenderContextInterface &contextInterface, const RenderableNodeEntries &renderableModels)
static qsizetype frustumCulling (const QSSGClippingFrustum &clipFrustum, const QSSGRenderableObjectList &renderables, QSSGRenderableObjectList &visibleRenderables)
static qsizetype frustumCullingInline (const QSSGClippingFrustum &clipFrustum, QSSGRenderableObjectList &renderables)
static GlobalRenderProperties globalRenderProperties (const QSSGRenderContextInterface &ctx)
static bool prepareInstancing (QSSGRhiContext *rhiCtx, QSSGSubsetRenderable *renderable, const QVector3D &cameraDirection, const QVector3D &cameraPosition, float minThreshold, float maxThreshold)
static const std::unique_ptr< QSSGPerFrameAllocator > & perFrameAllocator (QSSGRenderContextInterface &ctx)
static QSSGLayerRenderDatagetCurrent (const QSSGRenderer &renderer)
static void setTonemapFeatures (QSSGShaderFeatures &features, QSSGRenderLayer::TonemapMode tonemapMode)
static bool calculateGlobalVariables (QSSGRenderNode &node, std::vector< QMatrix4x4 > &globalTransforms, std::vector< float > &globalOpacities)
static QSSGNodeIdList filter (const QSSGGlobalRenderNodeData::LayerNodeView &layerNodes, quint32 layerMask, quint32 typeMask)

Public Attributes

ShadowMapPass shadowMapPass
ReflectionMapPass reflectionMapPass
ZPrePassPass zPrePassPass
SSAOMapPass ssaoMapPass
DepthMapPass depthMapPass
DepthMapPass depthMapPassMS
ScreenMapPass screenMapPass
ScreenReflectionPass reflectionPass
Item2DPass item2DPass
SkyboxPass skyboxPass
SkyboxCubeMapPass skyboxCubeMapPass
UserPass userPasses [USERPASSES]
OpaquePass opaquePass
TransparentPass transparentPass
OITRenderPass oitRenderPass
OITCompositePass oitCompositePass
InfiniteGridPass infiniteGridPass
DebugDrawPass debugDrawPass
NormalPass normalPass
QVarLengthArray< QSSGRenderPass *, 16 > activePasses
QSSGRenderLayerlayer
QSSGRendererrenderer = nullptr
QSSGGlobalRenderNodeData::LayerNodeView layerNodes
LayerNodes layerNodesCategorized
RenderableNodeEntries renderableModels
RenderableNodeEntries renderableParticles
QSSGModelsView modelsView
QSSGParticlesView particlesView
QSSGItem2DsView item2DsView
QSSGCamerasView camerasView
QSSGLightsView lightsView
QSSGReflectionProbesView reflectionProbesView
QSSGNonCategorizedView nonCategorizedView
QSSGRenderCameraList renderedCameras
QSSGShaderLightList globalLights
QVector< QSSGBakedLightingModelbakedLightingModels
QVector< QSSGBakedLightingModelrenderedBakedLightingModels
RenderableItem2DEntries renderedItem2Ds
QSSGLayerRenderPreparationResult layerPrepResult
std::optional< QSSGRenderCameraDataListrenderedCameraData
TModelContextPtrList modelContexts
bool tooManyLightsWarningShown = false
bool tooManyDirectionalLightsWarningShown = false
bool oitWarningUnsupportedShown = false
bool oitWarningInvalidBlendModeShown = false
bool orderIndependentTransparencyEnabled = false
std::unique_ptr< QSSGLightmapBakerlightmapBaker = nullptr

Static Public Attributes

static constexpr size_t USERPASSES = 3

Friends

class QSSGRenderer
class QSSGRendererPrivate
class QSSGFrameData
class QSSGModelHelpers
class QSSGRenderHelpers

Detailed Description

Definition at line 233 of file qssglayerrenderdata_p.h.

Member Typedef Documentation

◆ InstanceTransforms

◆ LayerNodes

Definition at line 342 of file qssglayerrenderdata_p.h.

◆ ModelViewProjections

◆ QSSGCamerasView

◆ QSSGItem2DsView

◆ QSSGLightsView

◆ QSSGModelsView

◆ QSSGNonCategorizedView

◆ QSSGParticlesView

◆ QSSGReflectionProbesView

◆ RenderableFilter

Definition at line 252 of file qssglayerrenderdata_p.h.

◆ RenderableItem2DEntries

◆ RenderableNodeEntries

◆ TModelContextPtrList

Member Enumeration Documentation

◆ Enum

Enumerator
MAX_AA_LEVELS 
MAX_TEMPORAL_AA_LEVELS 

Definition at line 236 of file qssglayerrenderdata_p.h.

Constructor & Destructor Documentation

◆ QSSGLayerRenderData()

QSSGLayerRenderData::QSSGLayerRenderData ( QSSGRenderLayer & inLayer,
QSSGRenderer & inRenderer )

Definition at line 2865 of file qssglayerrenderdata.cpp.

◆ ~QSSGLayerRenderData()

QSSGLayerRenderData::~QSSGLayerRenderData ( )

Definition at line 2883 of file qssglayerrenderdata.cpp.

Member Function Documentation

◆ activeCamera()

QSSGRenderCamera * QSSGLayerRenderData::activeCamera ( ) const
inlinenodiscard

Definition at line 390 of file qssglayerrenderdata_p.h.

◆ calculateGlobalVariables()

bool QSSGLayerRenderData::calculateGlobalVariables ( QSSGRenderNode & node,
std::vector< QMatrix4x4 > & globalTransforms,
std::vector< float > & globalOpacities )
static

◆ contextInterface()

QSSGRenderContextInterface * QSSGLayerRenderData::contextInterface ( ) const
nodiscard

Definition at line 3077 of file qssglayerrenderdata.cpp.

◆ createRenderables()

QSSGRenderablesId QSSGLayerRenderData::createRenderables ( QSSGPrepContextId prepId,
const QSSGNodeIdList & nodes,
QSSGRenderHelpers::CreateFlags createFlags )

Definition at line 538 of file qssglayerrenderdata.cpp.

◆ filter()

QSSGNodeIdList QSSGLayerRenderData::filter ( const QSSGGlobalRenderNodeData::LayerNodeView & layerNodes,
quint32 layerMask,
quint32 typeMask )
static

Definition at line 2142 of file qssglayerrenderdata.cpp.

◆ frustumCulling()

qsizetype QSSGLayerRenderData::frustumCulling ( const QSSGClippingFrustum & clipFrustum,
const QSSGRenderableObjectList & renderables,
QSSGRenderableObjectList & visibleRenderables )
static

Definition at line 142 of file qssglayerrenderdata.cpp.

◆ frustumCullingInline()

qsizetype QSSGLayerRenderData::frustumCullingInline ( const QSSGClippingFrustum & clipFrustum,
QSSGRenderableObjectList & renderables )
staticnodiscard

Definition at line 156 of file qssglayerrenderdata.cpp.

◆ getBonemapTexture()

QRhiTexture * QSSGLayerRenderData::getBonemapTexture ( const QSSGModelContext & modelContext) const
nodiscard

Definition at line 1468 of file qssglayerrenderdata.cpp.

◆ getCamera()

QSSGRenderGraphObject * QSSGLayerRenderData::getCamera ( QSSGCameraId id) const
nodiscard

Definition at line 3050 of file qssglayerrenderdata.cpp.

◆ getCameraDataImpl()

QSSGRenderCameraData QSSGLayerRenderData::getCameraDataImpl ( const QSSGRenderCamera * camera) const

Definition at line 240 of file qssglayerrenderdata.cpp.

◆ getCameraRenderData() [1/2]

QSSGRenderCameraData QSSGLayerRenderData::getCameraRenderData ( const QSSGRenderCamera * camera)
nodiscard

Definition at line 3059 of file qssglayerrenderdata.cpp.

◆ getCameraRenderData() [2/2]

QSSGRenderCameraData QSSGLayerRenderData::getCameraRenderData ( const QSSGRenderCamera * camera) const
nodiscard

Definition at line 3068 of file qssglayerrenderdata.cpp.

◆ getCurrent()

QSSGLayerRenderData * QSSGLayerRenderData::getCurrent ( const QSSGRenderer & renderer)
inlinestaticnodiscard

Definition at line 440 of file qssglayerrenderdata_p.h.

◆ getDefaultMaterialPropertyTable()

const QSSGShaderDefaultMaterialKeyProperties & QSSGLayerRenderData::getDefaultMaterialPropertyTable ( ) const
inlinenodiscard

Definition at line 407 of file qssglayerrenderdata_p.h.

◆ getFrameData()

QSSGFrameData & QSSGLayerRenderData::getFrameData ( )

Definition at line 3029 of file qssglayerrenderdata.cpp.

◆ getGlobalOpacity() [1/3]

float QSSGLayerRenderData::getGlobalOpacity ( const QSSGRenderNode & node) const
nodiscard

Definition at line 801 of file qssglayerrenderdata.cpp.

◆ getGlobalOpacity() [2/3]

float QSSGLayerRenderData::getGlobalOpacity ( QSSGPrepContextId prepId,
const QSSGRenderModel & model )

Definition at line 631 of file qssglayerrenderdata.cpp.

◆ getGlobalOpacity() [3/3]

float QSSGLayerRenderData::getGlobalOpacity ( QSSGRenderNodeHandle h,
float defaultValue = 1.0f ) const
nodiscard

Definition at line 796 of file qssglayerrenderdata.cpp.

◆ getGlobalTransform() [1/4]

QMatrix4x4 QSSGLayerRenderData::getGlobalTransform ( const QSSGRenderNode & node) const
nodiscard

Definition at line 761 of file qssglayerrenderdata.cpp.

◆ getGlobalTransform() [2/4]

QMatrix4x4 QSSGLayerRenderData::getGlobalTransform ( QSSGPrepContextId prepId,
const QSSGRenderModel & model )

Definition at line 601 of file qssglayerrenderdata.cpp.

◆ getGlobalTransform() [3/4]

QMatrix4x4 QSSGLayerRenderData::getGlobalTransform ( QSSGRenderNodeHandle h) const
nodiscard

Definition at line 756 of file qssglayerrenderdata.cpp.

◆ getGlobalTransform() [4/4]

QMatrix4x4 QSSGLayerRenderData::getGlobalTransform ( QSSGRenderNodeHandle h,
QMatrix4x4 defaultValue ) const
nodiscard

Definition at line 751 of file qssglayerrenderdata.cpp.

◆ getInstanceTransforms() [1/2]

QSSGLayerRenderData::InstanceTransforms QSSGLayerRenderData::getInstanceTransforms ( const QSSGRenderNode & node) const
nodiscard

Definition at line 791 of file qssglayerrenderdata.cpp.

◆ getInstanceTransforms() [2/2]

QSSGLayerRenderData::InstanceTransforms QSSGLayerRenderData::getInstanceTransforms ( QSSGRenderNodeHandle h) const
nodiscard

Definition at line 786 of file qssglayerrenderdata.cpp.

◆ getItem2DMvps() [1/2]

ModelViewProjections QSSGLayerRenderData::getItem2DMvps ( const QSSGRenderItem2D & item) const
inlinenodiscard

Definition at line 509 of file qssglayerrenderdata_p.h.

◆ getItem2DMvps() [2/2]

ModelViewProjections QSSGLayerRenderData::getItem2DMvps ( QSSGRenderItem2DHandle h) const
inlinenodiscard

Definition at line 504 of file qssglayerrenderdata_p.h.

◆ getItem2DRenderer()

QSSGRenderItem2DData::Item2DRenderer QSSGLayerRenderData::getItem2DRenderer ( const QSSGRenderItem2D & item) const
inlinenodiscard

Definition at line 494 of file qssglayerrenderdata_p.h.

◆ getItem2DRenderPassDescriptor()

const std::unique_ptr< QRhiRenderPassDescriptor > & QSSGLayerRenderData::getItem2DRenderPassDescriptor ( ) const
inlinenodiscard

Definition at line 499 of file qssglayerrenderdata_p.h.

◆ getLightmapTexture()

QRhiTexture * QSSGLayerRenderData::getLightmapTexture ( const QSSGModelContext & modelContext) const
nodiscard

Definition at line 1452 of file qssglayerrenderdata.cpp.

◆ getModelMvps() [1/3]

QSSGLayerRenderData::ModelViewProjections QSSGLayerRenderData::getModelMvps ( const QSSGRenderModel & model) const
nodiscard

Definition at line 781 of file qssglayerrenderdata.cpp.

◆ getModelMvps() [2/3]

QMatrix4x4 QSSGLayerRenderData::getModelMvps ( QSSGPrepContextId prepId,
const QSSGRenderModel & model ) const
nodiscard

◆ getModelMvps() [3/3]

QSSGLayerRenderData::ModelViewProjections QSSGLayerRenderData::getModelMvps ( QSSGRenderModelHandle h) const
nodiscard

Definition at line 776 of file qssglayerrenderdata.cpp.

◆ getNormalMatrix() [1/2]

QMatrix3x3 QSSGLayerRenderData::getNormalMatrix ( const QSSGRenderModel & model) const
nodiscard

Definition at line 771 of file qssglayerrenderdata.cpp.

◆ getNormalMatrix() [2/2]

QMatrix3x3 QSSGLayerRenderData::getNormalMatrix ( QSSGRenderModelHandle h) const
nodiscard

Definition at line 766 of file qssglayerrenderdata.cpp.

◆ getOitRenderContext()

QSSGOITRenderContext & QSSGLayerRenderData::getOitRenderContext ( )
inline

Definition at line 428 of file qssglayerrenderdata_p.h.

◆ getOrCreateExtensionContext()

QSSGPrepContextId QSSGLayerRenderData::getOrCreateExtensionContext ( const QSSGRenderExtension & ext,
QSSGRenderCamera * camera = nullptr,
quint32 slot = 0 )

Definition at line 483 of file qssglayerrenderdata.cpp.

◆ getPipelineState()

QSSGRhiGraphicsPipelineState QSSGLayerRenderData::getPipelineState ( ) const
inline

Definition at line 384 of file qssglayerrenderdata_p.h.

◆ getReflectionMapManager()

const QSSGRenderReflectionMapPtr & QSSGLayerRenderData::getReflectionMapManager ( ) const
inline

Definition at line 426 of file qssglayerrenderdata_p.h.

◆ getRenderableItem2Ds()

const QSSGLayerRenderData::RenderableItem2DEntries & QSSGLayerRenderData::getRenderableItem2Ds ( )

Definition at line 376 of file qssglayerrenderdata.cpp.

◆ getRenderResult() [1/2]

QSSGRhiRenderableTexture * QSSGLayerRenderData::getRenderResult ( QSSGFrameData::RenderResult id)
inlinenodiscard

Definition at line 437 of file qssglayerrenderdata_p.h.

◆ getRenderResult() [2/2]

const QSSGRhiRenderableTexture * QSSGLayerRenderData::getRenderResult ( QSSGFrameData::RenderResult id) const
inlinenodiscard

Definition at line 438 of file qssglayerrenderdata_p.h.

◆ getShaderFeatures()

QSSGShaderFeatures QSSGLayerRenderData::getShaderFeatures ( ) const
inline

Definition at line 383 of file qssglayerrenderdata_p.h.

◆ getShadowMapManager()

const QSSGRenderShadowMapPtr & QSSGLayerRenderData::getShadowMapManager ( ) const
inline

Definition at line 425 of file qssglayerrenderdata_p.h.

◆ getSortedBakedLightingModels()

const QVector< QSSGBakedLightingModel > & QSSGLayerRenderData::getSortedBakedLightingModels ( )

Definition at line 362 of file qssglayerrenderdata.cpp.

◆ getSortedOpaqueRenderableObjects()

const QVector< QSSGRenderableObjectHandle > & QSSGLayerRenderData::getSortedOpaqueRenderableObjects ( const QSSGRenderCamera & camera,
size_t index = 0 )

Definition at line 296 of file qssglayerrenderdata.cpp.

◆ getSortedRenderedDepthWriteObjects()

const QSSGRenderableObjectList & QSSGLayerRenderData::getSortedRenderedDepthWriteObjects ( const QSSGRenderCamera & camera,
size_t index = 0 )

Definition at line 893 of file qssglayerrenderdata.cpp.

◆ getSortedrenderedOpaqueDepthPrepassObjects()

const QSSGRenderableObjectList & QSSGLayerRenderData::getSortedrenderedOpaqueDepthPrepassObjects ( const QSSGRenderCamera & camera,
size_t index = 0 )

Definition at line 899 of file qssglayerrenderdata.cpp.

◆ getSortedScreenTextureRenderableObjects()

const QVector< QSSGRenderableObjectHandle > & QSSGLayerRenderData::getSortedScreenTextureRenderableObjects ( const QSSGRenderCamera & camera,
size_t index = 0 )

Definition at line 346 of file qssglayerrenderdata.cpp.

◆ getSortedTransparentRenderableObjects()

const QVector< QSSGRenderableObjectHandle > & QSSGLayerRenderData::getSortedTransparentRenderableObjects ( const QSSGRenderCamera & camera,
size_t index = 0 )

Definition at line 319 of file qssglayerrenderdata.cpp.

◆ globalRenderProperties()

QSSGLayerRenderData::GlobalRenderProperties QSSGLayerRenderData::globalRenderProperties ( const QSSGRenderContextInterface & ctx)
staticnodiscard

Definition at line 3082 of file qssglayerrenderdata.cpp.

◆ initializeLightmapBaking()

void QSSGLayerRenderData::initializeLightmapBaking ( QSSGLightmapBaker::Context & ctx)

Definition at line 3034 of file qssglayerrenderdata.cpp.

◆ isZPrePassActive()

bool QSSGLayerRenderData::isZPrePassActive ( ) const
inlinenodiscard

Definition at line 403 of file qssglayerrenderdata_p.h.

◆ maybeProcessLightmapBaking()

void QSSGLayerRenderData::maybeProcessLightmapBaking ( )

Definition at line 3041 of file qssglayerrenderdata.cpp.

◆ perFrameAllocator()

const std::unique_ptr< QSSGPerFrameAllocator > & QSSGLayerRenderData::perFrameAllocator ( QSSGRenderContextInterface & ctx)
inlinestaticnodiscard

Definition at line 457 of file qssglayerrenderdata.cpp.

◆ prepareForRender()

void QSSGLayerRenderData::prepareForRender ( )

Definition at line 2156 of file qssglayerrenderdata.cpp.

◆ prepareImageForRender()

void QSSGLayerRenderData::prepareImageForRender ( QSSGRenderImage & inImage,
QSSGRenderableImage::Type inMapType,
QSSGRenderableImage *& ioFirstImage,
QSSGRenderableImage *& ioNextImage,
QSSGRenderableObjectFlags & ioFlags,
QSSGShaderDefaultMaterialKey & ioGeneratedShaderKey,
quint32 inImageIndex,
QSSGRenderDefaultMaterial * inMaterial = nullptr )

Definition at line 924 of file qssglayerrenderdata.cpp.

◆ prepareInstancing()

bool QSSGLayerRenderData::prepareInstancing ( QSSGRhiContext * rhiCtx,
QSSGSubsetRenderable * renderable,
const QVector3D & cameraDirection,
const QVector3D & cameraPosition,
float minThreshold,
float maxThreshold )
static

Definition at line 2943 of file qssglayerrenderdata.cpp.

◆ prepareModelBoneTextures()

void QSSGLayerRenderData::prepareModelBoneTextures ( const QSSGRenderContextInterface & contextInterface,
const RenderableNodeEntries & renderableModels )
static

◆ prepareModelsForRender() [1/2]

QSSGPrepResultId QSSGLayerRenderData::prepareModelsForRender ( QSSGRenderContextInterface & contextInterface,
QSSGPrepContextId prepId,
QSSGRenderablesId renderablesId,
float lodThreshold )
nodiscard

Definition at line 683 of file qssglayerrenderdata.cpp.

◆ prepareModelsForRender() [2/2]

bool QSSGLayerRenderData::prepareModelsForRender ( QSSGRenderContextInterface & ctx,
const RenderableNodeEntries & renderableModels,
QSSGLayerRenderPreparationResultFlags & ioFlags,
const QSSGRenderCameraList & allCameras,
const QSSGRenderCameraDataList & allCameraData,
TModelContextPtrList & modelContexts,
QSSGRenderableObjectList & opaqueObjects,
QSSGRenderableObjectList & transparentObjects,
QSSGRenderableObjectList & screenTextureObjects,
float lodThreshold = 0.0f )

Definition at line 1501 of file qssglayerrenderdata.cpp.

◆ prepareParticlesForRender()

bool QSSGLayerRenderData::prepareParticlesForRender ( const RenderableNodeEntries & renderableParticles,
const QSSGRenderCameraData & cameraData,
QSSGLayerRenderPreparationResultFlags & ioFlags )

Definition at line 1910 of file qssglayerrenderdata.cpp.

◆ prepareReflectionProbesForRender()

void QSSGLayerRenderData::prepareReflectionProbesForRender ( )

Definition at line 2003 of file qssglayerrenderdata.cpp.

◆ prepareRenderables()

void QSSGLayerRenderData::prepareRenderables ( QSSGRenderContextInterface & ctx,
QSSGPrepResultId prepId,
QRhiRenderPassDescriptor * renderPassDescriptor,
const QSSGRhiGraphicsPipelineState & ps,
QSSGRenderablesFilters filter )

Definition at line 825 of file qssglayerrenderdata.cpp.

◆ prepareResourceLoaders()

void QSSGLayerRenderData::prepareResourceLoaders ( )

Definition at line 1994 of file qssglayerrenderdata.cpp.

◆ renderRenderables()

void QSSGLayerRenderData::renderRenderables ( QSSGRenderContextInterface & ctx,
QSSGPrepResultId prepId )

Definition at line 869 of file qssglayerrenderdata.cpp.

◆ requestReflectionMapManager()

const QSSGRenderReflectionMapPtr & QSSGLayerRenderData::requestReflectionMapManager ( )

Definition at line 3102 of file qssglayerrenderdata.cpp.

◆ requestShadowMapManager()

const QSSGRenderShadowMapPtr & QSSGLayerRenderData::requestShadowMapManager ( )

Definition at line 3095 of file qssglayerrenderdata.cpp.

◆ resetForFrame()

void QSSGLayerRenderData::resetForFrame ( )

Definition at line 2800 of file qssglayerrenderdata.cpp.

◆ restoreRenderState()

void QSSGLayerRenderData::restoreRenderState ( QSSGRenderer & renderer)

Definition at line 468 of file qssglayerrenderdata.cpp.

◆ saveRenderState()

void QSSGLayerRenderData::saveRenderState ( const QSSGRenderer & renderer)

Definition at line 462 of file qssglayerrenderdata.cpp.

◆ setBonemapTexture()

void QSSGLayerRenderData::setBonemapTexture ( const QSSGModelContext & modelContext,
QRhiTexture * bonemapTexture )

Definition at line 1463 of file qssglayerrenderdata.cpp.

◆ setGlobalOpacity()

void QSSGLayerRenderData::setGlobalOpacity ( QSSGRenderablesId renderablesId,
const QSSGRenderModel & model,
float opacity )

Definition at line 616 of file qssglayerrenderdata.cpp.

◆ setGlobalTransform()

void QSSGLayerRenderData::setGlobalTransform ( QSSGRenderablesId renderablesId,
const QSSGRenderModel & model,
const QMatrix4x4 & mvp )

Definition at line 586 of file qssglayerrenderdata.cpp.

◆ setLightmapTexture()

void QSSGLayerRenderData::setLightmapTexture ( const QSSGModelContext & modelContext,
QRhiTexture * lightmapTexture )

Definition at line 1447 of file qssglayerrenderdata.cpp.

◆ setModelMaterials() [1/2]

void QSSGLayerRenderData::setModelMaterials ( const QSSGRenderablesId renderablesId,
const QList< QSSGResourceId > & materials )

Definition at line 666 of file qssglayerrenderdata.cpp.

◆ setModelMaterials() [2/2]

void QSSGLayerRenderData::setModelMaterials ( QSSGRenderablesId renderablesId,
const QSSGRenderModel & model,
const QList< QSSGResourceId > & materials )

Definition at line 646 of file qssglayerrenderdata.cpp.

◆ setTonemapFeatures()

void QSSGLayerRenderData::setTonemapFeatures ( QSSGShaderFeatures & features,
QSSGRenderLayer::TonemapMode tonemapMode )
inlinestatic

Definition at line 444 of file qssglayerrenderdata_p.h.

◆ setVertexInputPresence()

void QSSGLayerRenderData::setVertexInputPresence ( const QSSGRenderableObjectFlags & renderableFlags,
QSSGShaderDefaultMaterialKey & key )

Definition at line 1079 of file qssglayerrenderdata.cpp.

◆ setZPrePassPrepResult()

void QSSGLayerRenderData::setZPrePassPrepResult ( bool res)
inline

Definition at line 404 of file qssglayerrenderdata_p.h.

◆ QSSGFrameData

friend class QSSGFrameData
friend

Definition at line 537 of file qssglayerrenderdata_p.h.

◆ QSSGModelHelpers

friend class QSSGModelHelpers
friend

Definition at line 538 of file qssglayerrenderdata_p.h.

◆ QSSGRenderer

friend class QSSGRenderer
friend

Definition at line 535 of file qssglayerrenderdata_p.h.

◆ QSSGRendererPrivate

friend class QSSGRendererPrivate
friend

Definition at line 536 of file qssglayerrenderdata_p.h.

◆ QSSGRenderHelpers

friend class QSSGRenderHelpers
friend

Definition at line 539 of file qssglayerrenderdata_p.h.

Member Data Documentation

◆ activePasses

QVarLengthArray<QSSGRenderPass *, 16> QSSGLayerRenderData::activePasses

Definition at line 335 of file qssglayerrenderdata_p.h.

◆ bakedLightingModels

QVector<QSSGBakedLightingModel> QSSGLayerRenderData::bakedLightingModels

Definition at line 363 of file qssglayerrenderdata_p.h.

◆ camerasView

QSSGCamerasView QSSGLayerRenderData::camerasView

Definition at line 354 of file qssglayerrenderdata_p.h.

◆ debugDrawPass

DebugDrawPass QSSGLayerRenderData::debugDrawPass

Definition at line 331 of file qssglayerrenderdata_p.h.

◆ depthMapPass

DepthMapPass QSSGLayerRenderData::depthMapPass

Definition at line 317 of file qssglayerrenderdata_p.h.

◆ depthMapPassMS

DepthMapPass QSSGLayerRenderData::depthMapPassMS

Definition at line 318 of file qssglayerrenderdata_p.h.

◆ globalLights

QSSGShaderLightList QSSGLayerRenderData::globalLights

Definition at line 361 of file qssglayerrenderdata_p.h.

◆ infiniteGridPass

InfiniteGridPass QSSGLayerRenderData::infiniteGridPass

Definition at line 330 of file qssglayerrenderdata_p.h.

◆ item2DPass

Item2DPass QSSGLayerRenderData::item2DPass

Definition at line 321 of file qssglayerrenderdata_p.h.

◆ item2DsView

QSSGItem2DsView QSSGLayerRenderData::item2DsView

Definition at line 353 of file qssglayerrenderdata_p.h.

◆ layer

QSSGRenderLayer& QSSGLayerRenderData::layer

Definition at line 337 of file qssglayerrenderdata_p.h.

◆ layerNodes

QSSGGlobalRenderNodeData::LayerNodeView QSSGLayerRenderData::layerNodes

Definition at line 343 of file qssglayerrenderdata_p.h.

◆ layerNodesCategorized

LayerNodes QSSGLayerRenderData::layerNodesCategorized

Definition at line 344 of file qssglayerrenderdata_p.h.

◆ layerPrepResult

QSSGLayerRenderPreparationResult QSSGLayerRenderData::layerPrepResult

Definition at line 369 of file qssglayerrenderdata_p.h.

◆ lightmapBaker

std::unique_ptr<QSSGLightmapBaker> QSSGLayerRenderData::lightmapBaker = nullptr

Definition at line 381 of file qssglayerrenderdata_p.h.

◆ lightsView

QSSGLightsView QSSGLayerRenderData::lightsView

Definition at line 355 of file qssglayerrenderdata_p.h.

◆ modelContexts

TModelContextPtrList QSSGLayerRenderData::modelContexts

Definition at line 372 of file qssglayerrenderdata_p.h.

◆ modelsView

QSSGModelsView QSSGLayerRenderData::modelsView

Definition at line 351 of file qssglayerrenderdata_p.h.

◆ nonCategorizedView

QSSGNonCategorizedView QSSGLayerRenderData::nonCategorizedView

Definition at line 357 of file qssglayerrenderdata_p.h.

◆ normalPass

NormalPass QSSGLayerRenderData::normalPass

Definition at line 332 of file qssglayerrenderdata_p.h.

◆ oitCompositePass

OITCompositePass QSSGLayerRenderData::oitCompositePass

Definition at line 329 of file qssglayerrenderdata_p.h.

◆ oitRenderPass

OITRenderPass QSSGLayerRenderData::oitRenderPass

Definition at line 328 of file qssglayerrenderdata_p.h.

◆ oitWarningInvalidBlendModeShown

bool QSSGLayerRenderData::oitWarningInvalidBlendModeShown = false

Definition at line 378 of file qssglayerrenderdata_p.h.

◆ oitWarningUnsupportedShown

bool QSSGLayerRenderData::oitWarningUnsupportedShown = false

Definition at line 377 of file qssglayerrenderdata_p.h.

◆ opaquePass

OpaquePass QSSGLayerRenderData::opaquePass

Definition at line 326 of file qssglayerrenderdata_p.h.

◆ orderIndependentTransparencyEnabled

bool QSSGLayerRenderData::orderIndependentTransparencyEnabled = false

Definition at line 379 of file qssglayerrenderdata_p.h.

◆ particlesView

QSSGParticlesView QSSGLayerRenderData::particlesView

Definition at line 352 of file qssglayerrenderdata_p.h.

◆ reflectionMapPass

ReflectionMapPass QSSGLayerRenderData::reflectionMapPass

Definition at line 314 of file qssglayerrenderdata_p.h.

◆ reflectionPass

ScreenReflectionPass QSSGLayerRenderData::reflectionPass

Definition at line 320 of file qssglayerrenderdata_p.h.

◆ reflectionProbesView

QSSGReflectionProbesView QSSGLayerRenderData::reflectionProbesView

Definition at line 356 of file qssglayerrenderdata_p.h.

◆ renderableModels

RenderableNodeEntries QSSGLayerRenderData::renderableModels

Definition at line 347 of file qssglayerrenderdata_p.h.

◆ renderableParticles

RenderableNodeEntries QSSGLayerRenderData::renderableParticles

Definition at line 348 of file qssglayerrenderdata_p.h.

◆ renderedBakedLightingModels

QVector<QSSGBakedLightingModel> QSSGLayerRenderData::renderedBakedLightingModels

Definition at line 366 of file qssglayerrenderdata_p.h.

◆ renderedCameraData

std::optional<QSSGRenderCameraDataList> QSSGLayerRenderData::renderedCameraData

Definition at line 370 of file qssglayerrenderdata_p.h.

◆ renderedCameras

QSSGRenderCameraList QSSGLayerRenderData::renderedCameras

Definition at line 360 of file qssglayerrenderdata_p.h.

◆ renderedItem2Ds

RenderableItem2DEntries QSSGLayerRenderData::renderedItem2Ds

Definition at line 367 of file qssglayerrenderdata_p.h.

◆ renderer

QSSGRenderer* QSSGLayerRenderData::renderer = nullptr

Definition at line 338 of file qssglayerrenderdata_p.h.

◆ screenMapPass

ScreenMapPass QSSGLayerRenderData::screenMapPass

Definition at line 319 of file qssglayerrenderdata_p.h.

◆ shadowMapPass

ShadowMapPass QSSGLayerRenderData::shadowMapPass

Definition at line 313 of file qssglayerrenderdata_p.h.

◆ skyboxCubeMapPass

SkyboxCubeMapPass QSSGLayerRenderData::skyboxCubeMapPass

Definition at line 323 of file qssglayerrenderdata_p.h.

◆ skyboxPass

SkyboxPass QSSGLayerRenderData::skyboxPass

Definition at line 322 of file qssglayerrenderdata_p.h.

◆ ssaoMapPass

SSAOMapPass QSSGLayerRenderData::ssaoMapPass

Definition at line 316 of file qssglayerrenderdata_p.h.

◆ tooManyDirectionalLightsWarningShown

bool QSSGLayerRenderData::tooManyDirectionalLightsWarningShown = false

Definition at line 376 of file qssglayerrenderdata_p.h.

◆ tooManyLightsWarningShown

bool QSSGLayerRenderData::tooManyLightsWarningShown = false

Definition at line 375 of file qssglayerrenderdata_p.h.

◆ transparentPass

TransparentPass QSSGLayerRenderData::transparentPass

Definition at line 327 of file qssglayerrenderdata_p.h.

◆ USERPASSES

size_t QSSGLayerRenderData::USERPASSES = 3
staticconstexpr

Definition at line 324 of file qssglayerrenderdata_p.h.

◆ userPasses

UserPass QSSGLayerRenderData::userPasses[USERPASSES]

Definition at line 325 of file qssglayerrenderdata_p.h.

◆ zPrePassPass

ZPrePassPass QSSGLayerRenderData::zPrePassPass

Definition at line 315 of file qssglayerrenderdata_p.h.


The documentation for this class was generated from the following files: