#include <qssgvertexpipelineimpl_p.h>
|
| enum class | GenerationFlag {
UVCoords = 1
, EnvMapReflection = 1 << 1
, ViewVector = 1 << 2
, WorldNormal = 1 << 3
,
ObjectNormal = 1 << 4
, WorldPosition = 1 << 5
, TangentBinormal = 1 << 6
, UVCoords1 = 1 << 7
,
VertexColor = 1 << 8
, PerspDivDepth = 1 << 9
, PerspDivWorldPos = 1 << 10
} |
| typedef QHash< QByteArray, QByteArray > | TStrTableStrMap |
| typedef TStrTableStrMap::const_iterator | TParamIter |
| typedef QFlags< GenerationFlag > | GenerationFlags |
|
| | QSSGMaterialVertexPipeline (QSSGProgramGenerator &inProgram, const QSSGShaderDefaultMaterialKeyProperties &materialProperties, QSSGShaderMaterialAdapter *materialAdapter) |
| | ~QSSGMaterialVertexPipeline ()=default |
| bool | setCode (GenerationFlag inCode) |
| bool | hasCode (GenerationFlag inCode) |
| QSSGProgramGenerator * | programGenerator () const |
| QSSGStageGeneratorBase & | vertex () |
| QSSGStageGeneratorBase & | fragment () |
| void | generateUVCoords (quint32 inUVSet, const QSSGShaderDefaultMaterialKey &inKey) |
| | Generates UV coordinates in shader code.
|
| void | generateLightmapUVCoords (const QSSGShaderDefaultMaterialKey &inKey) |
| void | generateEnvMapReflection (const QSSGShaderDefaultMaterialKey &inKey) |
| void | generateViewVector (const QSSGShaderDefaultMaterialKey &inKey) |
| void | generateWorldNormal (const QSSGShaderDefaultMaterialKey &inKey) |
| void | generateObjectNormal () |
| void | generateWorldPosition (const QSSGShaderDefaultMaterialKey &inKey) |
| void | generateDepth () |
| void | generateShadowWorldPosition (const QSSGShaderDefaultMaterialKey &inKey) |
| void | generateVarTangentAndBinormal (const QSSGShaderDefaultMaterialKey &inKey, bool &genTangent, bool &genBinormal) |
| void | generateVertexColor (const QSSGShaderDefaultMaterialKey &inKey) |
| void | addIncoming (const QByteArray &name, const QByteArray &type) |
| void | addOutgoing (const QByteArray &name, const QByteArray &type) |
| void | addUniform (const QByteArray &name, const QByteArray &type) |
| void | addUniformArray (const QByteArray &name, const QByteArray &type, quint32 size) |
| void | addInclude (const QByteArray &name) |
| void | addFunction (const QByteArray &functionName) |
| void | addConstantBuffer (const QByteArray &name, const QByteArray &layout) |
| void | addConstantBufferParam (const QByteArray &cbName, const QByteArray ¶mName, const QByteArray &type) |
| void | addDefinition (const QByteArray &name, const QByteArray &value=QByteArray()) |
| QSSGStageGeneratorBase & | operator<< (const QByteArray &data) |
| void | append (const QByteArray &data) |
| QSSGShaderGeneratorStage | stage () const |
| void | beginVertexGeneration (const QSSGShaderDefaultMaterialKey &inKey, const QSSGShaderFeatures &inFeatureSet, QSSGShaderLibraryManager &shaderLibraryManager) |
| void | beginFragmentGeneration (QSSGShaderLibraryManager &shaderLibraryManager, QSSGRenderLayer::OITMethod oitMethod) |
| void | assignOutput (const QByteArray &inVarName, const QByteArray &inVarValueExpr) |
| void | endVertexGeneration () |
| void | endFragmentGeneration () |
| QSSGStageGeneratorBase & | activeStage () |
| void | addInterpolationParameter (const QByteArray &inParamName, const QByteArray &inParamType) |
| void | addFlatParameter (const QByteArray &inParamName, const QByteArray &inParamType) |
| void | doGenerateWorldNormal (const QSSGShaderDefaultMaterialKey &inKey) |
| void | doGenerateVarTangent (const QSSGShaderDefaultMaterialKey &inKey) |
| void | doGenerateVarBinormal (const QSSGShaderDefaultMaterialKey &inKey) |
| bool | hasAttributeInKey (QSSGShaderKeyVertexAttribute::VertexAttributeBits inAttr, const QSSGShaderDefaultMaterialKey &inKey) |
Definition at line 26 of file qssgvertexpipelineimpl_p.h.
◆ GenerationFlags
◆ TParamIter
◆ TStrTableStrMap
◆ GenerationFlag
| Enumerator |
|---|
| UVCoords | |
| EnvMapReflection | |
| ViewVector | |
| WorldNormal | |
| ObjectNormal | |
| WorldPosition | |
| TangentBinormal | |
| UVCoords1 | |
| VertexColor | |
| PerspDivDepth | |
| PerspDivWorldPos | |
Definition at line 28 of file qssgvertexpipelineimpl_p.h.
◆ QSSGMaterialVertexPipeline()
◆ ~QSSGMaterialVertexPipeline()
| QSSGMaterialVertexPipeline::~QSSGMaterialVertexPipeline |
( |
| ) |
|
|
default |
◆ activeStage()
◆ addConstantBuffer()
◆ addConstantBufferParam()
◆ addDefinition()
◆ addFlatParameter()
◆ addFunction()
| void QSSGMaterialVertexPipeline::addFunction |
( |
const QByteArray & | functionName | ) |
|
|
inline |
◆ addInclude()
| void QSSGMaterialVertexPipeline::addInclude |
( |
const QByteArray & | name | ) |
|
|
inline |
◆ addIncoming()
◆ addInterpolationParameter()
| void QSSGMaterialVertexPipeline::addInterpolationParameter |
( |
const QByteArray & | inParamName, |
|
|
const QByteArray & | inParamType ) |
◆ addOutgoing()
◆ addUniform()
◆ addUniformArray()
◆ append()
◆ assignOutput()
◆ beginFragmentGeneration()
◆ beginVertexGeneration()
◆ doGenerateVarBinormal()
◆ doGenerateVarTangent()
◆ doGenerateWorldNormal()
◆ endFragmentGeneration()
| void QSSGMaterialVertexPipeline::endFragmentGeneration |
( |
| ) |
|
◆ endVertexGeneration()
| void QSSGMaterialVertexPipeline::endVertexGeneration |
( |
| ) |
|
◆ fragment()
◆ generateDepth()
| void QSSGMaterialVertexPipeline::generateDepth |
( |
| ) |
|
|
inline |
◆ generateEnvMapReflection()
◆ generateLightmapUVCoords()
◆ generateObjectNormal()
| void QSSGMaterialVertexPipeline::generateObjectNormal |
( |
| ) |
|
|
inline |
◆ generateShadowWorldPosition()
◆ generateUVCoords()
Generates UV coordinates in shader code.
- Parameters
-
| [in] | inUVSet | index of UV data set |
- Returns
- no return
Definition at line 97 of file qssgvertexpipelineimpl_p.h.
◆ generateVarTangentAndBinormal()
◆ generateVertexColor()
◆ generateViewVector()
◆ generateWorldNormal()
◆ generateWorldPosition()
◆ hasAttributeInKey()
◆ hasCode()
◆ operator<<()
◆ programGenerator()
◆ setCode()
◆ stage()
◆ vertex()
◆ defaultMaterialShaderKeyProperties
◆ hasCustomShadedMain
| bool QSSGMaterialVertexPipeline::hasCustomShadedMain |
◆ m_addedFunctions
◆ m_generationFlags
◆ m_hasMorphing
| bool QSSGMaterialVertexPipeline::m_hasMorphing |
◆ m_hasSkinning
| bool QSSGMaterialVertexPipeline::m_hasSkinning |
◆ m_needsSkinning
| bool QSSGMaterialVertexPipeline::m_needsSkinning |
◆ m_programGenerator
◆ m_tempString
| QString QSSGMaterialVertexPipeline::m_tempString |
◆ m_viewCount
| int QSSGMaterialVertexPipeline::m_viewCount = 1 |
◆ materialAdapter
◆ skipCustomFragmentSnippet
| bool QSSGMaterialVertexPipeline::skipCustomFragmentSnippet |
◆ useFloatJointIndices
| bool QSSGMaterialVertexPipeline::useFloatJointIndices |
◆ usesInstancing
| bool QSSGMaterialVertexPipeline::usesInstancing |
The documentation for this struct was generated from the following files: