![]() |
Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
|
#include <qssgrenderlayer_p.h>
Classes | |
struct | FogOptions |
struct | LightProbeSettings |
Public Types | |
enum class | AAMode : quint8 { NoAA = 0 , SSAA , MSAA , ProgressiveAA } |
enum class | TAAMode : quint8 { Off , On } |
enum class | AAQuality : quint8 { Normal = 2 , High = 4 , VeryHigh = 8 } |
enum class | HorizontalField : quint8 { LeftWidth = 0 , LeftRight , WidthRight } |
enum class | VerticalField : quint8 { TopHeight = 0 , TopBottom , HeightBottom } |
enum class | UnitType : quint8 { Percent = 0 , Pixels } |
enum class | Background : quint8 { Transparent = 0 , Unspecified , Color , SkyBox , SkyBoxCubeMap } |
enum class | TonemapMode : quint8 { None = 0 , Linear , Aces , HejlDawson , Filmic , Custom } |
enum class | LayerFlag { EnableDepthTest = 0x1 , EnableDepthPrePass = 0x2 , RenderToTarget = 0x3 } |
enum class | MaterialDebugMode : quint8 { None = 0 , BaseColor = 1 , Roughness , Metalness , Diffuse , Specular , ShadowOcclusion , Emission , AmbientOcclusion , Normal , Tangent , Binormal , F0 } |
enum class | OITMethod : quint8 { None = 0 , WeightedBlended } |
enum class | DirtyFlag : quint8 { TreeDirty = 0x1 } |
enum class | RenderExtensionStage { TextureProviders , Underlay , Overlay , Count } |
using | FlagT = std::underlying_type_t<DirtyFlag> |
Public Types inherited from QSSGRenderNode | |
enum class | LocalState : quint8 { Active = 1 << 0 , Pickable = 1 << 1 } |
enum class | GlobalState : quint8 { Active = 1 << 2 , Pickable = 1 << 3 } |
enum class | DirtyFlag : quint32 { TransformDirty = 1 << 4 , OpacityDirty = 1 << 5 , ActiveDirty = 1 << 6 , PickableDirty = 1 << 7 , TagDirty = 1 << 8 , SubNodeDirty = 1 << 9 , GlobalValuesDirty = TransformDirty | OpacityDirty | ActiveDirty | PickableDirty , DirtyMask = GlobalValuesDirty | SubNodeDirty } |
using | FlagT = std::underlying_type_t<DirtyFlag> |
using | ChildList = QSSGInvasiveLinkedList<QSSGRenderNode, &QSSGRenderNode::previousSibling, &QSSGRenderNode::nextSibling> |
Public Types inherited from QSSGRenderGraphObject | |
enum | BaseType : quint32 { Node = 0x1000 , Light = 0x2000 , Camera = 0x4000 , Renderable = 0x8000 , Resource = 0x10000 , Material = 0x20000 , Texture = 0x40000 , Extension = 0x80000 , User = 0x80000000 } |
enum class | Type : quint32 { Unknown = 0 , Node = BaseType::Node , Root , Layer , Joint , Skeleton , ImportScene , ReflectionProbe , DirectionalLight = BaseType::Light | BaseType::Node , PointLight , SpotLight , OrthographicCamera = BaseType::Camera | BaseType::Node , PerspectiveCamera , CustomFrustumCamera , CustomCamera , Model = BaseType::Renderable | BaseType::Node , Item2D , Particles , SceneEnvironment = BaseType::Resource , Effect , Geometry , TextureData , MorphTarget , ModelInstance , ModelBlendParticle , ResourceLoader , DefaultMaterial = BaseType::Material | BaseType::Resource , PrincipledMaterial , CustomMaterial , SpecularGlossyMaterial , Skin , Image2D = BaseType::Texture | BaseType::Resource , ImageCube , RenderExtension = BaseType::Extension , TextureProvider } |
enum class | Flags : quint32 { HasGraphicsResources = 0x1 } |
using | TypeT = std::underlying_type_t<Type> |
using | FlagT = std::underlying_type_t<Flags> |
Static Public Member Functions | |
static constexpr float | ssaaMultiplierForQuality (QSSGRenderLayer::AAQuality quality) |
Static Public Member Functions inherited from QSSGRenderNode | |
static QMatrix4x4 | calculateTransformMatrix (QVector3D position, QVector3D scale, QVector3D pivot, QQuaternion rotation) |
static QVector3D | getGlobalPos (const QMatrix4x4 &globalTransform) |
static QVector3D | getDirection (const QMatrix4x4 &globalTransform) |
static QVector3D | getScalingCorrectDirection (const QMatrix4x4 &globalTransform) |
static void | calculateMVP (const QMatrix4x4 &globalTransform, const QMatrix4x4 &inViewProjection, QMatrix4x4 &outMVP) |
static void | calculateNormalMatrix (const QMatrix4x4 &globalTransform, QMatrix3x3 &outNormalMatrix) |
static void | calculateMVPAndNormalMatrix (const QMatrix4x4 &globalTransfor, const QMatrix4x4 &inViewProjection, QMatrix4x4 &outMVP, QMatrix3x3 &outNormalMatrix) |
static float | signedSquared (float val) |
Static Public Member Functions inherited from QSSGRenderGraphObject | |
static constexpr bool | isNodeType (Type type) noexcept |
static constexpr bool | isLight (Type type) noexcept |
static constexpr bool | isCamera (Type type) noexcept |
static constexpr bool | isMaterial (Type type) noexcept |
static constexpr bool | isTexture (Type type) noexcept |
static constexpr bool | isRenderable (Type type) noexcept |
static constexpr bool | isResource (Type type) noexcept |
static constexpr bool | isExtension (Type type) noexcept |
static constexpr bool | isUserType (Type type) noexcept |
Static Public Attributes | |
static size_t constexpr | TonemapModeCount = 6 |
static constexpr DirtyFlag | DirtyMask { std::numeric_limits<FlagT>::max() } |
Static Public Attributes inherited from QSSGRenderNode | |
static constexpr QVector3D | initScale { 1.0f, 1.0f, 1.0f } |
Additional Inherited Members | |
Protected Member Functions inherited from QSSGRenderGraphObject | |
QSSGRenderGraphObject (QSSGRenderGraphObject::Type inType) | |
QSSGRenderGraphObject (QSSGRenderGraphObject::Type inType, FlagT inFlags) |
Definition at line 42 of file qssgrenderlayer_p.h.
using QSSGRenderLayer::FlagT = std::underlying_type_t<DirtyFlag> |
Definition at line 140 of file qssgrenderlayer_p.h.
|
strong |
Enumerator | |
---|---|
NoAA | |
SSAA | |
MSAA | |
ProgressiveAA |
Definition at line 44 of file qssgrenderlayer_p.h.
|
strong |
Enumerator | |
---|---|
Normal | |
High | |
VeryHigh |
Definition at line 58 of file qssgrenderlayer_p.h.
|
strong |
Enumerator | |
---|---|
Transparent | |
Unspecified | |
Color | |
SkyBox | |
SkyBoxCubeMap |
Definition at line 85 of file qssgrenderlayer_p.h.
|
strong |
Enumerator | |
---|---|
TreeDirty |
Definition at line 136 of file qssgrenderlayer_p.h.
|
strong |
Enumerator | |
---|---|
LeftWidth | |
LeftRight | |
WidthRight |
Definition at line 65 of file qssgrenderlayer_p.h.
|
strong |
Enumerator | |
---|---|
EnableDepthTest | |
EnableDepthPrePass | True when we render a depth pass before. |
RenderToTarget | Does this layer render to the normal render target,. |
Definition at line 105 of file qssgrenderlayer_p.h.
|
strong |
Enumerator | |
---|---|
None | |
BaseColor | |
Roughness | |
Metalness | |
Diffuse | |
Specular | |
ShadowOcclusion | |
Emission | |
AmbientOcclusion | |
Normal | |
Tangent | |
Binormal | |
F0 |
Definition at line 113 of file qssgrenderlayer_p.h.
|
strong |
Enumerator | |
---|---|
None | |
WeightedBlended |
Definition at line 130 of file qssgrenderlayer_p.h.
|
strong |
Enumerator | |
---|---|
TextureProviders | |
Underlay | |
Overlay | |
Count |
Definition at line 165 of file qssgrenderlayer_p.h.
|
strong |
Enumerator | |
---|---|
Off | |
On |
Definition at line 52 of file qssgrenderlayer_p.h.
|
strong |
Enumerator | |
---|---|
None | |
Linear | |
Aces | |
HejlDawson | |
Filmic | |
Custom |
Definition at line 94 of file qssgrenderlayer_p.h.
|
strong |
Enumerator | |
---|---|
Percent | |
Pixels |
Definition at line 79 of file qssgrenderlayer_p.h.
|
strong |
Enumerator | |
---|---|
TopHeight | |
TopBottom | |
HeightBottom |
Definition at line 72 of file qssgrenderlayer_p.h.
QSSGRenderLayer::QSSGRenderLayer | ( | ) |
Definition at line 27 of file qssgrenderlayer.cpp.
QSSGRenderLayer::~QSSGRenderLayer | ( | ) |
Definition at line 43 of file qssgrenderlayer.cpp.
void QSSGRenderLayer::addEffect | ( | QSSGRenderEffect & | inEffect | ) |
Definition at line 63 of file qssgrenderlayer.cpp.
Definition at line 21 of file qssgrenderlayer.cpp.
bool QSSGRenderLayer::hasEffect | ( | QSSGRenderEffect * | inEffect | ) | const |
Definition at line 70 of file qssgrenderlayer.cpp.
Definition at line 144 of file qssgrenderlayer_p.h.
|
inlinenodiscard |
Definition at line 291 of file qssgrenderlayer_p.h.
|
inlinenodiscard |
Definition at line 293 of file qssgrenderlayer_p.h.
|
inlinenodiscard |
Definition at line 292 of file qssgrenderlayer_p.h.
|
inlinenodiscard |
Definition at line 295 of file qssgrenderlayer_p.h.
QT_BEGIN_NAMESPACE void QSSGRenderLayer::markDirty | ( | DirtyFlag | dirtyFlag | ) |
Definition at line 15 of file qssgrenderlayer.cpp.
|
inline |
Definition at line 152 of file qssgrenderlayer_p.h.
void QSSGRenderLayer::removeImportScene | ( | QSSGRenderNode & | rootNode | ) |
Definition at line 98 of file qssgrenderlayer.cpp.
void QSSGRenderLayer::setImportScene | ( | QSSGRenderNode & | rootNode | ) |
Definition at line 79 of file qssgrenderlayer.cpp.
Definition at line 55 of file qssgrenderlayer.cpp.
|
inlinestaticconstexpr |
Definition at line 297 of file qssgrenderlayer_p.h.
|
inlineconstexpr |
Definition at line 186 of file qssgrenderlayer_p.h.
QSSGRenderLayer::AAMode QSSGRenderLayer::antialiasingMode |
Definition at line 168 of file qssgrenderlayer_p.h.
QSSGRenderLayer::AAQuality QSSGRenderLayer::antialiasingQuality |
Definition at line 169 of file qssgrenderlayer_p.h.
float QSSGRenderLayer::aoBias = 0.0f |
Definition at line 181 of file qssgrenderlayer_p.h.
float QSSGRenderLayer::aoDistance = 5.0f |
Definition at line 179 of file qssgrenderlayer_p.h.
bool QSSGRenderLayer::aoDither = false |
Definition at line 183 of file qssgrenderlayer_p.h.
bool QSSGRenderLayer::aoEnabled = false |
Definition at line 184 of file qssgrenderlayer_p.h.
qint32 QSSGRenderLayer::aoSamplerate = 2 |
Definition at line 182 of file qssgrenderlayer_p.h.
float QSSGRenderLayer::aoSoftness = 50.0f |
Definition at line 180 of file qssgrenderlayer_p.h.
float QSSGRenderLayer::aoStrength = 0.0f |
Definition at line 178 of file qssgrenderlayer_p.h.
QSSGRenderLayer::Background QSSGRenderLayer::background |
Definition at line 171 of file qssgrenderlayer_p.h.
QVector3D QSSGRenderLayer::clearColor |
Definition at line 172 of file qssgrenderlayer_p.h.
MaterialDebugMode QSSGRenderLayer::debugMode = MaterialDebugMode::None |
Definition at line 261 of file qssgrenderlayer_p.h.
Definition at line 142 of file qssgrenderlayer_p.h.
bool QSSGRenderLayer::disableShadowCameraUpdate = false |
Definition at line 270 of file qssgrenderlayer_p.h.
bool QSSGRenderLayer::drawCascades = false |
Definition at line 268 of file qssgrenderlayer_p.h.
bool QSSGRenderLayer::drawCulledObjects = false |
Definition at line 271 of file qssgrenderlayer_p.h.
bool QSSGRenderLayer::drawDirectionalLightShadowBoxes = false |
Definition at line 264 of file qssgrenderlayer_p.h.
bool QSSGRenderLayer::drawPointLightShadowBoxes = false |
Definition at line 265 of file qssgrenderlayer_p.h.
bool QSSGRenderLayer::drawSceneCascadeIntersection = false |
Definition at line 269 of file qssgrenderlayer_p.h.
bool QSSGRenderLayer::drawShadowCastingBounds = false |
Definition at line 266 of file qssgrenderlayer_p.h.
bool QSSGRenderLayer::drawShadowReceivingBounds = false |
Definition at line 267 of file qssgrenderlayer_p.h.
QVarLengthArray<QSSGRenderCamera *, 2> QSSGRenderLayer::explicitCameras |
Definition at line 213 of file qssgrenderlayer_p.h.
QSSGRenderEffect* QSSGRenderLayer::firstEffect |
Definition at line 163 of file qssgrenderlayer_p.h.
struct QSSGRenderLayer::FogOptions QSSGRenderLayer::fog |
bool QSSGRenderLayer::gridEnabled = false |
Definition at line 234 of file qssgrenderlayer_p.h.
quint32 QSSGRenderLayer::gridFlags = 0 |
Definition at line 236 of file qssgrenderlayer_p.h.
float QSSGRenderLayer::gridScale = 1.0f |
Definition at line 235 of file qssgrenderlayer_p.h.
QRhiShaderResourceBindings* QSSGRenderLayer::gridSrb = nullptr |
Definition at line 237 of file qssgrenderlayer_p.h.
QSSGRenderNode* QSSGRenderLayer::importSceneNode = nullptr |
Definition at line 285 of file qssgrenderlayer_p.h.
QVarLengthArray<QRhiShaderResourceBindings *, 4> QSSGRenderLayer::item2DSrbs |
Definition at line 227 of file qssgrenderlayer_p.h.
LayerFlags QSSGRenderLayer::layerFlags |
Definition at line 221 of file qssgrenderlayer_p.h.
QSSGRenderLayerHandle QSSGRenderLayer::lh |
Definition at line 160 of file qssgrenderlayer_p.h.
QString QSSGRenderLayer::lightmapSource |
Definition at line 275 of file qssgrenderlayer_p.h.
QSSGRenderImage* QSSGRenderLayer::lightProbe { nullptr } |
Definition at line 189 of file qssgrenderlayer_p.h.
struct QSSGRenderLayer::LightProbeSettings QSSGRenderLayer::lightProbeSettings |
FlagT QSSGRenderLayer::m_layerDirtyFlags = FlagT(DirtyFlag::TreeDirty) |
Definition at line 174 of file qssgrenderlayer_p.h.
OITMethod QSSGRenderLayer::oitMethod |
Definition at line 203 of file qssgrenderlayer_p.h.
bool QSSGRenderLayer::oitMethodDirty |
Definition at line 204 of file qssgrenderlayer_p.h.
uint QSSGRenderLayer::progAAPassIndex |
Definition at line 210 of file qssgrenderlayer_p.h.
bool QSSGRenderLayer::progressiveAAIsActive |
Definition at line 208 of file qssgrenderlayer_p.h.
QSSGLayerRenderData* QSSGRenderLayer::renderData = nullptr |
Definition at line 164 of file qssgrenderlayer_p.h.
QVarLengthArray<QSSGRenderCamera *, 2> QSSGRenderLayer::renderedCameras |
Definition at line 215 of file qssgrenderlayer_p.h.
QMutex QSSGRenderLayer::renderedCamerasMutex |
Definition at line 216 of file qssgrenderlayer_p.h.
QList<QSSGRenderExtension *> QSSGRenderLayer::renderExtensions[size_t(RenderExtensionStage::Count)] |
Definition at line 166 of file qssgrenderlayer_p.h.
QVector<QSSGRenderGraphObject *> QSSGRenderLayer::resourceLoaders |
Definition at line 259 of file qssgrenderlayer_p.h.
QSSGRenderRoot* QSSGRenderLayer::rootNode = nullptr |
Definition at line 158 of file qssgrenderlayer_p.h.
QRect QSSGRenderLayer::scissorRect |
Definition at line 240 of file qssgrenderlayer_p.h.
float QSSGRenderLayer::skyboxBlurAmount = 0.0f |
Definition at line 231 of file qssgrenderlayer_p.h.
QSSGRenderImage* QSSGRenderLayer::skyBoxCubeMap = nullptr |
Definition at line 197 of file qssgrenderlayer_p.h.
bool QSSGRenderLayer::skyBoxIsRgbe8 = false |
Definition at line 228 of file qssgrenderlayer_p.h.
QRhiShaderResourceBindings* QSSGRenderLayer::skyBoxSrb = nullptr |
Definition at line 226 of file qssgrenderlayer_p.h.
bool QSSGRenderLayer::specularAAEnabled |
Definition at line 202 of file qssgrenderlayer_p.h.
float QSSGRenderLayer::ssaaMultiplier |
Definition at line 201 of file qssgrenderlayer_p.h.
uint QSSGRenderLayer::tempAAPassIndex |
Definition at line 209 of file qssgrenderlayer_p.h.
bool QSSGRenderLayer::temporalAAIsActive |
Definition at line 207 of file qssgrenderlayer_p.h.
TAAMode QSSGRenderLayer::temporalAAMode { TAAMode::Off } |
Definition at line 199 of file qssgrenderlayer_p.h.
float QSSGRenderLayer::temporalAAStrength |
Definition at line 200 of file qssgrenderlayer_p.h.
TonemapMode QSSGRenderLayer::tonemapMode |
Definition at line 219 of file qssgrenderlayer_p.h.
|
staticconstexpr |
Definition at line 103 of file qssgrenderlayer_p.h.
quint8 QSSGRenderLayer::viewCount = 1 |
Definition at line 175 of file qssgrenderlayer_p.h.
bool QSSGRenderLayer::wireframeMode = false |
Definition at line 263 of file qssgrenderlayer_p.h.