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
PassRequirmentsState Struct Reference
Collaboration diagram for PassRequirmentsState:

Public Types

enum  PassType {
  None = 0 , Color , Depth , OrthoShadow ,
  PerspectiveShadow , Normal , Debug , User ,
  None = 0 , Color , Depth , OrthoShadow ,
  PerspectiveShadow , Normal , Debug , User
}
enum  PassType {
  None = 0 , Color , Depth , OrthoShadow ,
  PerspectiveShadow , Normal , Debug , User ,
  None = 0 , Color , Depth , OrthoShadow ,
  PerspectiveShadow , Normal , Debug , User
}

Public Member Functions

 PassRequirmentsState (const QSSGShaderDefaultMaterialKey &inKey, const QSSGShaderDefaultMaterialKeyProperties &keyProps, const QSSGShaderFeatures &featureSet, const SamplerState &samplerState)
bool shouldIncludeCustomFragmentMain () const
bool shouldDiscardNonOpaque () const
 PassRequirmentsState (const QSSGShaderDefaultMaterialKey &inKey, const QSSGShaderDefaultMaterialKeyProperties &keyProps, const QSSGShaderFeatures &featureSet, const SamplerState &samplerState)
bool shouldIncludeCustomFragmentMain () const
bool shouldDiscardNonOpaque () const

Public Attributes

PassType passType = None
bool needsBaseColor = false
bool needsRoughness = false
bool needsMetalness = false
bool needsDiffuseLight = false
bool needsSpecularLight = false
bool needsEmission = false
bool needsWorldNormal = false
bool needsWorldTangent = false
bool needsWorldBinormal = false
bool needsF0 = false
bool needsF90 = false
bool needsAmbientOcclusion = false
bool hasVertexColors = false
bool hasLighting = false
bool hasPunctualLights = false
bool hasSpecularLight = false
bool hasIblProbe = false
bool hasReflectionProbe = false
bool hasIblOrientation = false
bool hasShadowMap = false
bool hasSSAOMap = false
bool hasLightMap = false
bool hasBumpNormalMap = false
bool hasParallaxMapping = false
bool hasClearcoat = false
bool hasTransmission = false
bool hasFresnelScaleBias = false
bool hasClearcoatFresnelScaleBias = false
bool hasFog = false
bool isDoubleSided = false
bool isSpecularAAEnabled = false
bool isMetallicRoughnessWorkflow = false
bool isSpecularGlossinessWorkflow = false
bool isPbrMaterial = false
bool isOpaqueDepthPrePass = false
quint32 numMorphTargets = 0
int viewCount = 1
QSSGRenderLayer::OITMethod oitMethod = QSSGRenderLayer::OITMethod::None
QSSGRenderLayer::MaterialDebugMode debugMode = QSSGRenderLayer::MaterialDebugMode::None

Detailed Description

Member Enumeration Documentation

◆ PassType [1/2]

Enumerator
None 
Color 
Depth 
OrthoShadow 
PerspectiveShadow 
Normal 
Debug 
User 
None 
Color 
Depth 
OrthoShadow 
PerspectiveShadow 
Normal 
Debug 
User 

Definition at line 537 of file qssgrenderdefaultmaterialshadergenerator.cpp.

◆ PassType [2/2]

Enumerator
None 
Color 
Depth 
OrthoShadow 
PerspectiveShadow 
Normal 
Debug 
User 
None 
Color 
Depth 
OrthoShadow 
PerspectiveShadow 
Normal 
Debug 
User 

Definition at line 537 of file qssgrenderdefaultmaterialshadergenerator.cpp.

Constructor & Destructor Documentation

◆ PassRequirmentsState() [1/2]

◆ PassRequirmentsState() [2/2]

PassRequirmentsState::PassRequirmentsState ( const QSSGShaderDefaultMaterialKey & inKey,
const QSSGShaderDefaultMaterialKeyProperties & keyProps,
const QSSGShaderFeatures & featureSet,
const SamplerState & samplerState )
inline

Member Function Documentation

◆ shouldDiscardNonOpaque() [1/2]

bool PassRequirmentsState::shouldDiscardNonOpaque ( ) const
inline

Definition at line 757 of file qssgrenderdefaultmaterialshadergenerator.cpp.

References Depth, isOpaqueDepthPrePass, OrthoShadow, passType, and PerspectiveShadow.

Referenced by generateFragmentShader().

Here is the caller graph for this function:

◆ shouldDiscardNonOpaque() [2/2]

bool PassRequirmentsState::shouldDiscardNonOpaque ( ) const
inline

◆ shouldIncludeCustomFragmentMain() [1/2]

bool PassRequirmentsState::shouldIncludeCustomFragmentMain ( ) const
inline

Definition at line 751 of file qssgrenderdefaultmaterialshadergenerator.cpp.

References needsBaseColor, needsDiffuseLight, needsEmission, needsMetalness, needsRoughness, and needsSpecularLight.

Referenced by generateFragmentShader().

Here is the caller graph for this function:

◆ shouldIncludeCustomFragmentMain() [2/2]

bool PassRequirmentsState::shouldIncludeCustomFragmentMain ( ) const
inline

Member Data Documentation

◆ debugMode

◆ hasBumpNormalMap

bool PassRequirmentsState::hasBumpNormalMap = false

◆ hasClearcoat

bool PassRequirmentsState::hasClearcoat = false

◆ hasClearcoatFresnelScaleBias

bool PassRequirmentsState::hasClearcoatFresnelScaleBias = false

◆ hasFog

bool PassRequirmentsState::hasFog = false

◆ hasFresnelScaleBias

bool PassRequirmentsState::hasFresnelScaleBias = false

◆ hasIblOrientation

bool PassRequirmentsState::hasIblOrientation = false

◆ hasIblProbe

bool PassRequirmentsState::hasIblProbe = false

◆ hasLighting

bool PassRequirmentsState::hasLighting = false

◆ hasLightMap

bool PassRequirmentsState::hasLightMap = false

◆ hasParallaxMapping

bool PassRequirmentsState::hasParallaxMapping = false

◆ hasPunctualLights

bool PassRequirmentsState::hasPunctualLights = false

◆ hasReflectionProbe

bool PassRequirmentsState::hasReflectionProbe = false

◆ hasShadowMap

bool PassRequirmentsState::hasShadowMap = false

◆ hasSpecularLight

bool PassRequirmentsState::hasSpecularLight = false

◆ hasSSAOMap

bool PassRequirmentsState::hasSSAOMap = false

◆ hasTransmission

bool PassRequirmentsState::hasTransmission = false

◆ hasVertexColors

bool PassRequirmentsState::hasVertexColors = false

◆ isDoubleSided

bool PassRequirmentsState::isDoubleSided = false

◆ isMetallicRoughnessWorkflow

bool PassRequirmentsState::isMetallicRoughnessWorkflow = false

◆ isOpaqueDepthPrePass

bool PassRequirmentsState::isOpaqueDepthPrePass = false

◆ isPbrMaterial

bool PassRequirmentsState::isPbrMaterial = false

◆ isSpecularAAEnabled

bool PassRequirmentsState::isSpecularAAEnabled = false

◆ isSpecularGlossinessWorkflow

bool PassRequirmentsState::isSpecularGlossinessWorkflow = false

◆ needsAmbientOcclusion

bool PassRequirmentsState::needsAmbientOcclusion = false

◆ needsBaseColor

bool PassRequirmentsState::needsBaseColor = false

◆ needsDiffuseLight

bool PassRequirmentsState::needsDiffuseLight = false

◆ needsEmission

bool PassRequirmentsState::needsEmission = false

◆ needsF0

bool PassRequirmentsState::needsF0 = false

Definition at line 559 of file qssgrenderdefaultmaterialshadergenerator.cpp.

Referenced by PassRequirmentsState().

◆ needsF90

bool PassRequirmentsState::needsF90 = false

Definition at line 560 of file qssgrenderdefaultmaterialshadergenerator.cpp.

Referenced by PassRequirmentsState().

◆ needsMetalness

bool PassRequirmentsState::needsMetalness = false

◆ needsRoughness

bool PassRequirmentsState::needsRoughness = false

◆ needsSpecularLight

bool PassRequirmentsState::needsSpecularLight = false

◆ needsWorldBinormal

bool PassRequirmentsState::needsWorldBinormal = false

◆ needsWorldNormal

bool PassRequirmentsState::needsWorldNormal = false

◆ needsWorldTangent

bool PassRequirmentsState::needsWorldTangent = false

◆ numMorphTargets

quint32 PassRequirmentsState::numMorphTargets = 0

◆ oitMethod

◆ passType

PassType PassRequirmentsState::passType = None

◆ viewCount

int PassRequirmentsState::viewCount = 1

The documentation for this struct was generated from the following file: