Castor3D 0.16.0
Multiplatform 3D engine
Fonctions membres publiques | Fonctions membres protégées | Attributs protégés | Liste de tous les membres
Référence de la classe castor3d::RenderTechniquePassabstract

#include <RenderTechniquePass.hpp>

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

Fonctions membres publiques

virtual C3D_API ~RenderTechniquePass () noexcept=default
 
virtual C3D_API void accept (RenderTechniqueVisitor &visitor)
 Fonction d'acceptation de visiteur.
 
virtual C3D_API void update (CpuUpdater &updater)
 Met à jour la passe de rendu, au niveau CPU.
 
virtual C3D_API PipelineFlags createPipelineFlags (PassComponentCombine const &passComponents, SubmeshComponentCombine const &submeshComponents, BlendMode colourBlendMode, BlendMode alphaBlendMode, RenderPassTypeID renderPassTypeId, LightingModelID lightingModelId, BackgroundModelID backgroundModelId, VkCompareOp alphaFunc, VkCompareOp blendAlphaFunc, TextureCombine const &textures, ProgramFlags const &programFlags, SceneFlags const &sceneFlags, VkPrimitiveTopology topology, bool isFrontCulled, uint32_t passLayerIndex, GpuBufferOffsetT< castor::Point4f > const &morphTargets, SubmeshRenderData *submeshData) const =0
 Crée les indicateurs de pipeline pour la configuration donnée.
 
virtual C3D_API bool areValidPassFlags (PassComponentCombine const &passFlags) const noexcept=0
 
virtual C3D_API ShaderFlags getShaderFlags () const noexcept=0
 
virtual C3D_API void countNodes (RenderInfo &info) const noexcept=0
 Enregistre les comptes de noeuds dans le RenderInfo donné.
 
virtual C3D_API bool isPassEnabled () const noexcept=0
 
C3D_API EnginegetEngine () const noexcept
 
C3D_API IndirectLightingData const & getIndirectLighting () const noexcept
 
C3D_API DebugConfiggetDebugConfig () const noexcept
 
C3D_API bool areDebugTargetsEnabled () const noexcept
 
virtual C3D_API ClustersConfig const * getClustersConfig () const noexcept=0
 
virtual C3D_API bool hasSsao () const noexcept=0
 
Scene const & getScene () noexcept
 
Scene const & getScene () const noexcept
 
RenderTechnique const & getTechnique () const noexcept
 

Fonctions membres protégées

C3D_API RenderTechniquePass (RenderTechnique *parent, Scene const &scene, bool outputScattering)
 Constructeur.
 
virtual C3D_API void doAccept (castor3d::RenderTechniqueVisitor &visitor)=0
 Fonction d'acceptation de visiteur.
 

Attributs protégés

RenderTechniquem_parent {}
 
Scene const & m_scene
 
uint32_t m_drawCalls {}
 
bool m_outputScattering {}
 

Documentation des constructeurs et destructeur

◆ RenderTechniquePass()

C3D_API castor3d::RenderTechniquePass::RenderTechniquePass ( RenderTechnique * parent,
Scene const & scene,
bool outputScattering )
protected

Constructeur.

Paramètres
[in]parentLa technique parente.
[in]sceneLa scène.
[in]outputScatteringDéfinit si la passe sort des données de scattering.

◆ ~RenderTechniquePass()

virtual C3D_API castor3d::RenderTechniquePass::~RenderTechniquePass ( )
virtualdefaultnoexcept

Documentation des fonctions membres

◆ accept()

virtual C3D_API void castor3d::RenderTechniquePass::accept ( RenderTechniqueVisitor & visitor)
inlinevirtual

Fonction d'acceptation de visiteur.

Paramètres
visitorLe ... visiteur.

Réimplémentée dans castor3d::VisibilityResolvePass, castor3d::ForwardRenderTechniquePass, castor3d::VisibilityPass, castor3d::RenderTechniqueNodesPass, et castor3d::TransparentPass.

Références doAccept().

Voici le graphe d'appel pour cette fonction :

◆ areDebugTargetsEnabled()

C3D_API bool castor3d::RenderTechniquePass::areDebugTargetsEnabled ( ) const
noexcept

Référencé par castor3d::RenderTechniqueNodesPass::areDebugTargetsEnabled().

Voici le graphe des appelants de cette fonction :

◆ areValidPassFlags()

virtual C3D_API bool castor3d::RenderTechniquePass::areValidPassFlags ( PassComponentCombine const & passFlags) const
pure virtualnoexcept

◆ countNodes()

virtual C3D_API void castor3d::RenderTechniquePass::countNodes ( RenderInfo & info) const
pure virtualnoexcept

Enregistre les comptes de noeuds dans le RenderInfo donné.

Paramètres
[in,out]infoReçoit les comptes.

Implémenté dans castor3d::VisibilityResolvePass, et castor3d::RenderTechniqueNodesPass.

◆ createPipelineFlags()

virtual C3D_API PipelineFlags castor3d::RenderTechniquePass::createPipelineFlags ( PassComponentCombine const & passComponents,
SubmeshComponentCombine const & submeshComponents,
BlendMode colourBlendMode,
BlendMode alphaBlendMode,
RenderPassTypeID renderPassTypeId,
LightingModelID lightingModelId,
BackgroundModelID backgroundModelId,
VkCompareOp alphaFunc,
VkCompareOp blendAlphaFunc,
TextureCombine const & textures,
ProgramFlags const & programFlags,
SceneFlags const & sceneFlags,
VkPrimitiveTopology topology,
bool isFrontCulled,
uint32_t passLayerIndex,
GpuBufferOffsetT< castor::Point4f > const & morphTargets,
SubmeshRenderData * submeshData ) const
pure virtual

Crée les indicateurs de pipeline pour la configuration donnée.

Paramètres
[in]passComponentsLa combinaison de composants de passe.
[in]submeshComponentsLa combinaison de composants de submesh.
[in]colourBlendModeLe mode de mélange de couleurs.
[in]alphaBlendModeLe mode de mélange de l'alpha
[in]renderPassTypeIdL'ID du type de render pass.
[in]lightingModelIdL'ID du modèle d'éclairage.
[in]backgroundModelIdL'ID du modèle de fond.
[in]alphaFuncLa fonction de comparaison de l'alpha (pour les noeuds opaques).
[in]blendAlphaFuncLa fonction de comparaison de l'alpha (pour les noeuds transparents).
[in]texturesLa configuration des textures.
[in]programFlagsUne combinaison de ProgramFlag.
[in]sceneFlagsLes indicateurs relatifs à la scène.
[in]topologyLa topologie de rendu.
[in]isFrontCulledtrue pour front face culling, false pour back face culling.
[in]passLayerIndexL'indice de la couche de la passe de matériau.
[in]morphTargetsLe buffer de morph targets.
[in]submeshDataLes données de rendu du submesh, s'il en a.

Implémenté dans castor3d::VisibilityResolvePass, et castor3d::RenderTechniqueNodesPass.

◆ doAccept()

virtual C3D_API void castor3d::RenderTechniquePass::doAccept ( castor3d::RenderTechniqueVisitor & visitor)
protectedpure virtual

Fonction d'acceptation de visiteur.

Paramètres
visitorLe ... visiteur.

Implémenté dans castor3d::RenderTechniqueNodesPass.

Référencé par accept().

Voici le graphe des appelants de cette fonction :

◆ getClustersConfig()

virtual C3D_API ClustersConfig const * castor3d::RenderTechniquePass::getClustersConfig ( ) const
pure virtualnoexcept

◆ getDebugConfig()

C3D_API DebugConfig & castor3d::RenderTechniquePass::getDebugConfig ( ) const
noexcept

Référencé par castor3d::RenderTechniqueNodesPass::getDebugConfig().

Voici le graphe des appelants de cette fonction :

◆ getEngine()

C3D_API Engine * castor3d::RenderTechniquePass::getEngine ( ) const
noexcept

name Accesseurs.

Référencé par castor3d::RenderTechniqueNodesPass::getEngine().

Voici le graphe des appelants de cette fonction :

◆ getIndirectLighting()

C3D_API IndirectLightingData const & castor3d::RenderTechniquePass::getIndirectLighting ( ) const
noexcept

◆ getScene() [1/2]

Scene const & castor3d::RenderTechniquePass::getScene ( ) const
inlinenoexcept

Références m_scene.

◆ getScene() [2/2]

Scene const & castor3d::RenderTechniquePass::getScene ( )
inlinenoexcept

Références m_scene.

Référencé par castor3d::RenderTechniqueNodesPass::getScene().

Voici le graphe des appelants de cette fonction :

◆ getShaderFlags()

virtual C3D_API ShaderFlags castor3d::RenderTechniquePass::getShaderFlags ( ) const
pure virtualnoexcept

◆ getTechnique()

RenderTechnique const & castor3d::RenderTechniquePass::getTechnique ( ) const
inlinenoexcept

Références m_parent.

Référencé par castor3d::RenderTechniqueNodesPass::getTechnique().

Voici le graphe des appelants de cette fonction :

◆ hasSsao()

virtual C3D_API bool castor3d::RenderTechniquePass::hasSsao ( ) const
pure virtualnoexcept

◆ isPassEnabled()

virtual C3D_API bool castor3d::RenderTechniquePass::isPassEnabled ( ) const
pure virtualnoexcept

◆ update()

virtual C3D_API void castor3d::RenderTechniquePass::update ( CpuUpdater & updater)
inlinevirtual

Met à jour la passe de rendu, au niveau CPU.

Paramètres
[in,out]updaterLes données d'update.

Réimplémentée dans castor3d::VisibilityResolvePass, et castor3d::RenderTechniqueNodesPass.

Documentation des données membres

◆ m_drawCalls

uint32_t castor3d::RenderTechniquePass::m_drawCalls {}
protected

◆ m_outputScattering

bool castor3d::RenderTechniquePass::m_outputScattering {}
protected

◆ m_parent

RenderTechnique* castor3d::RenderTechniquePass::m_parent {}
protected

Référencé par getTechnique().

◆ m_scene

Scene const& castor3d::RenderTechniquePass::m_scene
protected

Référencé par getScene(), et getScene().


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