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

#include <AmbientComponent.hpp>

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

Fonctions membres publiques

 ComponentsShader (PassComponentPlugin const &plugin)
 
C3D_API void fillComponents (sdw::type::BaseStruct &components, shader::Materials const &materials, sdw::StructInstance const *surface) const override
 Remplit la structure shader de composants avec les membres fournis par ce composant.
 
C3D_API void fillComponentsInits (sdw::type::BaseStruct const &components, shader::Materials const &materials, shader::Material const *material, sdw::StructInstance const *surface, sdw::Vec4 const *clrCot, sdw::expr::ExprList &inits) const override
 Remplit les initialiseurs de la structure shader de composants avec les ceux fournis par ce composant.
 
C3D_API void blendComponents (shader::Materials const &materials, sdw::Float const &passMultiplier, shader::BlendComponents &res, shader::BlendComponents const &src) const override
 Utilisé pour mixer les composant quand plusieurs passes sont fusionnées ensemble.
 
- Fonctions membres publiques hérités de castor3d::shader::PassComponentsShader
 PassComponentsShader (PassComponentPlugin const &plugin)
 
virtual C3D_API void fillComponents (sdw::type::BaseStruct &components, Materials const &materials, sdw::StructInstance const *surface) const
 Remplit la structure shader de composants avec les membres fournis par ce composant.
 
virtual C3D_API void fillComponentsInits (sdw::type::BaseStruct const &components, Materials const &materials, Material const *material, sdw::StructInstance const *surface, sdw::Vec4 const *clrCot, sdw::expr::ExprList &inits) const
 Remplit les initialiseurs de la structure shader de composants avec les ceux fournis par ce composant.
 
virtual C3D_API void computeTexcoord (PipelineFlags const &flags, TextureConfigData const &config, sdw::U32Vec3 const &imgCompConfig, sdw::CombinedImage2DRgba32 const &map, sdw::Vec3 &texCoords, sdw::Vec2 &texCoord, BlendComponents &components) const
 Utilise ce composant pour altérer les coordonnées de texture.
 
virtual C3D_API void computeTexcoord (PipelineFlags const &flags, TextureConfigData const &config, sdw::U32Vec3 const &imgCompConfig, sdw::CombinedImage2DRgba32 const &map, DerivTex &texCoords, DerivTex &texCoord, BlendComponents &components) const
 Utilise ce composant pour altérer les coordonnées de texture.
 
virtual C3D_API void applyComponents (TextureCombine const &combine, PipelineFlags const *flags, shader::TextureConfigData const &config, sdw::U32Vec3 const &imgCompConfig, sdw::Vec4 const &sampled, BlendComponents &components) const
 Remplit les valeurs de ce composant avec des données récupérées depuis une texture.
 
virtual C3D_API void blendComponents (shader::Materials const &materials, sdw::Float const &passMultiplier, BlendComponents &res, BlendComponents const &src) const
 Utilisé pour mixer les composant quand plusieurs passes sont fusionnées ensemble.
 
virtual C3D_API void updateComponent (TextureCombine const &combine, shader::BlendComponents &components) const
 
virtual C3D_API sdw::Vec4 sampleMap (sdw::CombinedImage2DRgba32 const &map, sdw::Vec3 const &texCoords, shader::BlendComponents const &components) const
 
virtual C3D_API sdw::Vec4 sampleMap (sdw::CombinedImage2DRgba32 const &map, shader::DerivTex const &texCoords, shader::BlendComponents const &components) const
 
virtual C3D_API bool isMapSampling (PipelineFlags const &flags) const
 
C3D_API PassComponentID getId () const
 
PassComponentPlugin const & getPlugin () const
 
- Fonctions membres publiques hérités de castor3d::shader::PassShader
 PassShader ()=default
 
 PassShader (PassShader const &)=delete
 
PassShaderoperator= (PassShader const &)=delete
 
C3D_API PassShader (PassShader &&)=default
 
C3D_API PassShaderoperator= (PassShader &&)=default
 
virtual C3D_API ~PassShader ()=default
 
virtual C3D_API void updateOutputs (sdw::StructInstance const &components, sdw::StructInstance const &surface, sdw::Vec4 &spcRgh, sdw::Vec4 &colMtl, sdw::Vec4 &sheen) const
 Met à jour les valeurs nécessaires à l'éclairage (specular, metalness, roughness et colour).
 

Membres hérités additionnels

- Fonctions membres protégées hérités de castor3d::shader::PassComponentsShader
C3D_API void applyFloatComponent (std::string const &name, PassComponentTextureFlag flag, shader::TextureConfigData const &config, sdw::U32Vec3 const &imgCompConfig, sdw::Vec4 const &sampled, shader::BlendComponents &components) const
 
C3D_API void applyVec3Component (std::string const &name, PassComponentTextureFlag flag, shader::TextureConfigData const &config, sdw::U32Vec3 const &imgCompConfig, sdw::Vec4 const &sampled, shader::BlendComponents &components) const
 

Documentation des constructeurs et destructeur

◆ ComponentsShader()

castor3d::AmbientComponent::ComponentsShader::ComponentsShader ( PassComponentPlugin const &  plugin)
inlineexplicit

Documentation des fonctions membres

◆ blendComponents()

C3D_API void castor3d::AmbientComponent::ComponentsShader::blendComponents ( shader::Materials const &  materials,
sdw::Float const &  passMultiplier,
shader::BlendComponents res,
shader::BlendComponents const &  src 
) const
overridevirtual

Utilisé pour mixer les composant quand plusieurs passes sont fusionnées ensemble.

Paramètres
[in]materialsUtilisé pour vérifier si la passe de rendu courante a besoin de ce composant.
[in]passMultiplierLe facteur de la passe courant.
[in,out]resReçoit le résultat du blending.
[in]srcLes données de la passe courante.

Réimplémentée à partir de castor3d::shader::PassComponentsShader.

◆ fillComponents()

C3D_API void castor3d::AmbientComponent::ComponentsShader::fillComponents ( sdw::type::BaseStruct &  components,
shader::Materials const &  materials,
sdw::StructInstance const *  surface 
) const
overridevirtual

Remplit la structure shader de composants avec les membres fournis par ce composant.

Paramètres
[in,out]componentsReçoit les membres de la structure.
[in]materialsUtilisé pour vérifier si la passe de rendu courante a besoin de ce composant.
[in]surfaceUtilisés pour vérifier si la surface supporte les données nécessaires pour ce composant.

Réimplémentée à partir de castor3d::shader::PassComponentsShader.

◆ fillComponentsInits()

C3D_API void castor3d::AmbientComponent::ComponentsShader::fillComponentsInits ( sdw::type::BaseStruct const &  components,
shader::Materials const &  materials,
shader::Material const *  material,
sdw::StructInstance const *  surface,
sdw::Vec4 const *  clrCot,
sdw::expr::ExprList &  inits 
) const
overridevirtual

Remplit les initialiseurs de la structure shader de composants avec les ceux fournis par ce composant.

Remarques
Le nombre et l'ordre des initialiseurs doit correspondre à celui défini par fillComponent.
Paramètres
[in]componentsReçoit les membres de la structure.
[in]materialsUtilisé pour vérifier si la passe de rendu courante a besoin de ce composant.
[in]materialUtilisé pour récupérer les données pour ce composant.
[in]surfaceUtilisé pour récupérer les données pour ce composant.
[in]clrCotUtilisé pour récupérer les données pour ce composant.
[in,out]initsReçoit les initialiseurs

Réimplémentée à partir de castor3d::shader::PassComponentsShader.


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