Castor3D 0.16.0
Multiplatform 3D engine
Fonctions membres publiques | Liste de tous les membres
Référence de la structure castor3d::PipelineFlags

Indicateurs de pipeline. Plus de détails...

#include <PipelineFlags.hpp>

Graphe d'héritage de castor3d::PipelineFlags:
Inheritance graph
[légende]
Graphe de collaboration de castor3d::PipelineFlags:
Collaboration graph
[légende]

Fonctions membres publiques

 PipelineFlags (PipelineHiHashDetails hiDetails, PipelineLoHashDetails loDetails=PipelineLoHashDetails{}, SceneFlags sceneFlags=SceneFlag::eNone, BlendMode colourBlendMode=BlendMode::eNoBlend, BlendMode alphaBlendMode=BlendMode::eNoBlend, RenderPassTypeID renderPassType=0u, VkPrimitiveTopology ptopology=VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST, uint32_t ppatchVertices=3u) noexcept
 
 PipelineFlags (PassComponentCombine ppassComponents, SubmeshComponentCombine psubmeshComponents, LightingModelID plightingModelId, BackgroundModelID pbackgroundModelId, BlendMode pcolourBlendMode=BlendMode::eNoBlend, BlendMode palphaBlendMode=BlendMode::eNoBlend, RenderPassTypeID prenderPassType=0u, ProgramFlags pprogramFlags=ProgramFlag::eNone, SceneFlags psceneFlags=SceneFlag::eNone, ShaderFlags pshaderFlags=ShaderFlag::eNone, VkPrimitiveTopology ptopology=VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST, uint32_t ppatchVertices=3u, VkCompareOp palphaFunc=VK_COMPARE_OP_ALWAYS, TextureCombine textures={}, uint32_t ppassLayerIndex={}, VkDeviceSize pmorphTargetsOffset={}, SubmeshRenderData const *psubmeshData={}, bool pisStatic=false) noexcept
 
 PipelineFlags (PassComponentCombine ppassComponents, SubmeshComponentCombine psubmeshComponents, LightingModelID lightingModelId, BackgroundModelID pbackgroundModelId, ProgramFlags programFlags, TextureCombine textures, ShaderFlags shaderFlags, VkCompareOp alphaFunc, uint32_t passLayerIndex=0u)
 
C3D_API bool enableTexcoords () const noexcept
 
C3D_API bool enableVertexInput (SubmeshData data) const noexcept
 
C3D_API bool enableIndices () const noexcept
 
C3D_API bool enablePosition () const noexcept
 
C3D_API bool enableNormal () const noexcept
 
C3D_API bool enableTangentSpace () const noexcept
 
C3D_API bool enableBitangent () const noexcept
 
C3D_API bool enableColours () const noexcept
 
C3D_API bool enablePassMasks () const noexcept
 
C3D_API bool enableTexcoord0 () const noexcept
 
C3D_API bool enableTexcoord1 () const noexcept
 
C3D_API bool enableTexcoord2 () const noexcept
 
C3D_API bool enableTexcoord3 () const noexcept
 
C3D_API bool enableTextures () const noexcept
 
C3D_API bool enableVertexID () const noexcept
 
C3D_API bool enableMeshletID () const noexcept
 
C3D_API bool enableInstantiation () const noexcept
 
C3D_API bool enableParallaxOcclusionMapping (PassComponentRegister const &passComponents) const noexcept
 
C3D_API bool enableParallaxOcclusionMappingOne (PassComponentRegister const &passComponents) const noexcept
 
C3D_API bool enableVelocity () const noexcept
 
C3D_API bool hasFog () const noexcept
 
ShaderFlags
bool usesWorldSpace () const noexcept
 
bool usesViewSpace () const noexcept
 
bool usesGeometry () const noexcept
 
bool usesTessellation () const noexcept
 
bool usesColour () const noexcept
 
bool usesOpacity () const noexcept
 
bool forceTexCoords () const noexcept
 
bool writeEnvironmentMap () const noexcept
 
bool writeShadowMap () const noexcept
 
bool writeShadowVSM () const noexcept
 
bool writeShadowRSM () const noexcept
 
bool writeVelocity () const noexcept
 
bool writeVisibility () const noexcept
 
bool writeDepth () const noexcept
 
bool writePicking () const noexcept
 
SceneFlags
SceneFlags getShadowFlags () const noexcept
 
SceneFlags getGlobalIlluminationFlags () const noexcept
 
bool hasDiffuseGI () const noexcept
 
SubmeshComponents
bool hasWorldPosInputs () const noexcept
 
bool hasSkinData () const noexcept
 
ProgramFlags
bool isBillboard () const noexcept
 
bool isFrontCulled () const noexcept
 
bool usesMesh () const noexcept
 
bool usesTask () const noexcept
 
Components
C3D_API bool hasPassFlag (PassComponentFlag flag) const noexcept
 
C3D_API bool hasSubmeshFlag (SubmeshComponentFlag flag) const noexcept
 
- Fonctions membres publiques hérités de castor3d::PipelineHiHashDetails
 PipelineHiHashDetails (PassComponentCombine ppassComponents, SubmeshComponentCombine psubmeshComponents, LightingModelID plightingModelId, BackgroundModelID pbackgroundModelId, ProgramFlags programFlags=ProgramFlag::eNone, TextureCombine ptextures=TextureCombine{}, ShaderFlags shaderFlags=ShaderFlag::eNone, VkCompareOp palphaFunc=VkCompareOp::VK_COMPARE_OP_ALWAYS, uint32_t ppassLayerIndex=0u, uint32_t psubmeshDataBindings=0u, bool pisStatic=false) noexcept
 
- Fonctions membres publiques hérités de castor3d::PipelineLoHashDetails
 PipelineLoHashDetails (VkDeviceSize pmorphTargetsOffset=0u, SubmeshRenderData const *psubmeshData=nullptr) noexcept
 

Textures

SceneFlags m_sceneFlags
 
BlendMode colourBlendMode
 
BlendMode alphaBlendMode
 
RenderPassTypeID renderPassType
 
VkPrimitiveTopology topology
 
uint32_t patchVertices
 
C3D_API bool hasMap (PassComponentTextureFlag flag) const noexcept
 

Membres hérités additionnels

- Attributs publics hérités de castor3d::PipelineHiHashDetails
PassComponentCombine pass {}
 
SubmeshComponentCombine submesh {}
 
TextureCombine textures {}
 
LightingModelID lightingModelId {}
 
BackgroundModelID backgroundModelId {}
 
VkCompareOp alphaFunc
 
uint32_t submeshDataBindings {}
 
uint32_t passLayerIndex {}
 
bool isStatic {}
 
ProgramFlags m_programFlags {}
 
ShaderFlags m_shaderFlags {}
 
- Attributs publics hérités de castor3d::PipelineLoHashDetails
VkDeviceSize morphTargetsOffset {}
 
SubmeshRenderData const * submeshData {}
 

Description détaillée

Indicateurs de pipeline.

Documentation des constructeurs et destructeur

◆ PipelineFlags() [1/3]

castor3d::PipelineFlags::PipelineFlags ( PipelineHiHashDetails hiDetails,
PipelineLoHashDetails loDetails = PipelineLoHashDetails{},
SceneFlags sceneFlags = SceneFlag::eNone,
BlendMode colourBlendMode = BlendMode::eNoBlend,
BlendMode alphaBlendMode = BlendMode::eNoBlend,
RenderPassTypeID renderPassType = 0u,
VkPrimitiveTopology ptopology = VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST,
uint32_t ppatchVertices = 3u )
inlineexplicitnoexcept

◆ PipelineFlags() [2/3]

castor3d::PipelineFlags::PipelineFlags ( PassComponentCombine ppassComponents,
SubmeshComponentCombine psubmeshComponents,
LightingModelID plightingModelId,
BackgroundModelID pbackgroundModelId,
BlendMode pcolourBlendMode = BlendMode::eNoBlend,
BlendMode palphaBlendMode = BlendMode::eNoBlend,
RenderPassTypeID prenderPassType = 0u,
ProgramFlags pprogramFlags = ProgramFlag::eNone,
SceneFlags psceneFlags = SceneFlag::eNone,
ShaderFlags pshaderFlags = ShaderFlag::eNone,
VkPrimitiveTopology ptopology = VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST,
uint32_t ppatchVertices = 3u,
VkCompareOp palphaFunc = VK_COMPARE_OP_ALWAYS,
TextureCombine textures = {},
uint32_t ppassLayerIndex = {},
VkDeviceSize pmorphTargetsOffset = {},
SubmeshRenderData const * psubmeshData = {},
bool pisStatic = false )
inlineexplicitnoexcept

◆ PipelineFlags() [3/3]

castor3d::PipelineFlags::PipelineFlags ( PassComponentCombine ppassComponents,
SubmeshComponentCombine psubmeshComponents,
LightingModelID lightingModelId,
BackgroundModelID pbackgroundModelId,
ProgramFlags programFlags,
TextureCombine textures,
ShaderFlags shaderFlags,
VkCompareOp alphaFunc,
uint32_t passLayerIndex = 0u )
inline

Documentation des fonctions membres

◆ enableBitangent()

C3D_API bool castor3d::PipelineFlags::enableBitangent ( ) const
noexcept

◆ enableColours()

C3D_API bool castor3d::PipelineFlags::enableColours ( ) const
noexcept

◆ enableIndices()

C3D_API bool castor3d::PipelineFlags::enableIndices ( ) const
noexcept

◆ enableInstantiation()

C3D_API bool castor3d::PipelineFlags::enableInstantiation ( ) const
noexcept

Référencé par castor3d::shader::getNodeId(), castor3d::shader::getNodeId(), et castor3d::shader::getNodeId().

Voici le graphe des appelants de cette fonction :

◆ enableMeshletID()

C3D_API bool castor3d::PipelineFlags::enableMeshletID ( ) const
noexcept

◆ enableNormal()

C3D_API bool castor3d::PipelineFlags::enableNormal ( ) const
noexcept

◆ enableParallaxOcclusionMapping()

C3D_API bool castor3d::PipelineFlags::enableParallaxOcclusionMapping ( PassComponentRegister const & passComponents) const
noexcept

◆ enableParallaxOcclusionMappingOne()

C3D_API bool castor3d::PipelineFlags::enableParallaxOcclusionMappingOne ( PassComponentRegister const & passComponents) const
noexcept

◆ enablePassMasks()

C3D_API bool castor3d::PipelineFlags::enablePassMasks ( ) const
noexcept

◆ enablePosition()

C3D_API bool castor3d::PipelineFlags::enablePosition ( ) const
noexcept

◆ enableTangentSpace()

C3D_API bool castor3d::PipelineFlags::enableTangentSpace ( ) const
noexcept

◆ enableTexcoord0()

C3D_API bool castor3d::PipelineFlags::enableTexcoord0 ( ) const
noexcept

◆ enableTexcoord1()

C3D_API bool castor3d::PipelineFlags::enableTexcoord1 ( ) const
noexcept

◆ enableTexcoord2()

C3D_API bool castor3d::PipelineFlags::enableTexcoord2 ( ) const
noexcept

◆ enableTexcoord3()

C3D_API bool castor3d::PipelineFlags::enableTexcoord3 ( ) const
noexcept

◆ enableTexcoords()

C3D_API bool castor3d::PipelineFlags::enableTexcoords ( ) const
noexcept

◆ enableTextures()

C3D_API bool castor3d::PipelineFlags::enableTextures ( ) const
noexcept

◆ enableVelocity()

C3D_API bool castor3d::PipelineFlags::enableVelocity ( ) const
noexcept

◆ enableVertexID()

C3D_API bool castor3d::PipelineFlags::enableVertexID ( ) const
noexcept

◆ enableVertexInput()

C3D_API bool castor3d::PipelineFlags::enableVertexInput ( SubmeshData data) const
noexcept

◆ forceTexCoords()

bool castor3d::PipelineFlags::forceTexCoords ( ) const
inlinenoexcept

Références castor3d::checkFlag(), castor3d::eForceTexCoords, et castor3d::PipelineHiHashDetails::m_shaderFlags.

Voici le graphe d'appel pour cette fonction :

◆ getGlobalIlluminationFlags()

SceneFlags castor3d::PipelineFlags::getGlobalIlluminationFlags ( ) const
inlinenoexcept

Références castor3d::eGIAny, et m_sceneFlags.

◆ getShadowFlags()

SceneFlags castor3d::PipelineFlags::getShadowFlags ( ) const
inlinenoexcept

◆ hasDiffuseGI()

bool castor3d::PipelineFlags::hasDiffuseGI ( ) const
inlinenoexcept

Références castor3d::eGIAny, castor3d::hasAny(), et m_sceneFlags.

Voici le graphe d'appel pour cette fonction :

◆ hasFog()

C3D_API bool castor3d::PipelineFlags::hasFog ( ) const
noexcept

◆ hasMap()

C3D_API bool castor3d::PipelineFlags::hasMap ( PassComponentTextureFlag flag) const
noexcept

◆ hasPassFlag()

C3D_API bool castor3d::PipelineFlags::hasPassFlag ( PassComponentFlag flag) const
noexcept

◆ hasSkinData()

bool castor3d::PipelineFlags::hasSkinData ( ) const
inlinenoexcept

◆ hasSubmeshFlag()

C3D_API bool castor3d::PipelineFlags::hasSubmeshFlag ( SubmeshComponentFlag flag) const
noexcept

◆ hasWorldPosInputs()

bool castor3d::PipelineFlags::hasWorldPosInputs ( ) const
inlinenoexcept

◆ isBillboard()

bool castor3d::PipelineFlags::isBillboard ( ) const
inlinenoexcept

Références castor3d::checkFlag(), castor3d::eBillboards, et castor3d::PipelineHiHashDetails::m_programFlags.

Voici le graphe d'appel pour cette fonction :

◆ isFrontCulled()

bool castor3d::PipelineFlags::isFrontCulled ( ) const
inlinenoexcept

Références castor3d::checkFlag(), castor3d::eFrontCulled, et castor3d::PipelineHiHashDetails::m_programFlags.

Voici le graphe d'appel pour cette fonction :

◆ usesColour()

bool castor3d::PipelineFlags::usesColour ( ) const
inlinenoexcept

Références castor3d::checkFlag(), castor3d::eColour, et castor3d::PipelineHiHashDetails::m_shaderFlags.

Voici le graphe d'appel pour cette fonction :

◆ usesGeometry()

bool castor3d::PipelineFlags::usesGeometry ( ) const
inlinenoexcept

Références castor3d::checkFlag(), castor3d::eGeometry, et castor3d::PipelineHiHashDetails::m_shaderFlags.

Voici le graphe d'appel pour cette fonction :

◆ usesMesh()

bool castor3d::PipelineFlags::usesMesh ( ) const
inlinenoexcept

Références castor3d::checkFlag(), castor3d::eHasMesh, et castor3d::PipelineHiHashDetails::m_programFlags.

Voici le graphe d'appel pour cette fonction :

◆ usesOpacity()

bool castor3d::PipelineFlags::usesOpacity ( ) const
inlinenoexcept

Références castor3d::checkFlag(), castor3d::eOpacity, et castor3d::PipelineHiHashDetails::m_shaderFlags.

Voici le graphe d'appel pour cette fonction :

◆ usesTask()

bool castor3d::PipelineFlags::usesTask ( ) const
inlinenoexcept

Références castor3d::checkFlag(), castor3d::eHasTask, et castor3d::PipelineHiHashDetails::m_programFlags.

Voici le graphe d'appel pour cette fonction :

◆ usesTessellation()

bool castor3d::PipelineFlags::usesTessellation ( ) const
inlinenoexcept

Références castor3d::checkFlag(), castor3d::eTessellation, et castor3d::PipelineHiHashDetails::m_shaderFlags.

Voici le graphe d'appel pour cette fonction :

◆ usesViewSpace()

bool castor3d::PipelineFlags::usesViewSpace ( ) const
inlinenoexcept

Références castor3d::checkFlag(), castor3d::eViewSpace, et castor3d::PipelineHiHashDetails::m_shaderFlags.

Voici le graphe d'appel pour cette fonction :

◆ usesWorldSpace()

bool castor3d::PipelineFlags::usesWorldSpace ( ) const
inlinenoexcept

Références castor3d::checkFlag(), castor3d::eWorldSpace, et castor3d::PipelineHiHashDetails::m_shaderFlags.

Voici le graphe d'appel pour cette fonction :

◆ writeDepth()

bool castor3d::PipelineFlags::writeDepth ( ) const
inlinenoexcept

Références castor3d::checkFlag(), castor3d::eDepth, et castor3d::PipelineHiHashDetails::m_shaderFlags.

Voici le graphe d'appel pour cette fonction :

◆ writeEnvironmentMap()

bool castor3d::PipelineFlags::writeEnvironmentMap ( ) const
inlinenoexcept

Références castor3d::checkFlag(), castor3d::eEnvironmentMapping, et castor3d::PipelineHiHashDetails::m_shaderFlags.

Voici le graphe d'appel pour cette fonction :

◆ writePicking()

bool castor3d::PipelineFlags::writePicking ( ) const
inlinenoexcept

Références castor3d::checkFlag(), castor3d::ePicking, et castor3d::PipelineHiHashDetails::m_shaderFlags.

Voici le graphe d'appel pour cette fonction :

◆ writeShadowMap()

bool castor3d::PipelineFlags::writeShadowMap ( ) const
inlinenoexcept

◆ writeShadowRSM()

bool castor3d::PipelineFlags::writeShadowRSM ( ) const
inlinenoexcept

Références castor3d::checkFlag(), castor3d::eRsmShadowMap, et castor3d::PipelineHiHashDetails::m_shaderFlags.

Voici le graphe d'appel pour cette fonction :

◆ writeShadowVSM()

bool castor3d::PipelineFlags::writeShadowVSM ( ) const
inlinenoexcept

Références castor3d::checkFlag(), castor3d::eVsmShadowMap, et castor3d::PipelineHiHashDetails::m_shaderFlags.

Voici le graphe d'appel pour cette fonction :

◆ writeVelocity()

bool castor3d::PipelineFlags::writeVelocity ( ) const
inlinenoexcept

Références castor3d::checkFlag(), castor3d::eVelocity, et castor3d::PipelineHiHashDetails::m_shaderFlags.

Voici le graphe d'appel pour cette fonction :

◆ writeVisibility()

bool castor3d::PipelineFlags::writeVisibility ( ) const
inlinenoexcept

Références castor3d::checkFlag(), castor3d::eVisibility, et castor3d::PipelineHiHashDetails::m_shaderFlags.

Voici le graphe d'appel pour cette fonction :

Documentation des données membres

◆ alphaBlendMode

BlendMode castor3d::PipelineFlags::alphaBlendMode

◆ colourBlendMode

BlendMode castor3d::PipelineFlags::colourBlendMode

◆ m_sceneFlags

SceneFlags castor3d::PipelineFlags::m_sceneFlags

◆ patchVertices

uint32_t castor3d::PipelineFlags::patchVertices

◆ renderPassType

RenderPassTypeID castor3d::PipelineFlags::renderPassType

◆ topology

VkPrimitiveTopology castor3d::PipelineFlags::topology

La documentation de cette structure a été générée à partir du fichier suivant :