Castor3D 0.16.0
Multiplatform 3D engine
Public Member Functions | List of all members
castor3d::UntileMappingComponent::ComponentsShader Struct Reference

#include <UntileMappingComponent.hpp>

Inheritance diagram for castor3d::UntileMappingComponent::ComponentsShader:
Inheritance graph
[legend]
Collaboration diagram for castor3d::UntileMappingComponent::ComponentsShader:
Collaboration graph
[legend]

Public Member Functions

C3D_API sdw::Vec4 sampleMap (sdw::CombinedImage2DRgba32 const &map, sdw::Vec3 const &texCoords, shader::BlendComponents const &components) const override
 
C3D_API sdw::Vec4 sampleMap (sdw::CombinedImage2DRgba32 const &map, shader::DerivTex const &texCoords, shader::BlendComponents const &components) const override
 
bool isMapSampling (PipelineFlags const &flags) const override
 
- Public Member Functions inherited from castor3d::shader::PassComponentsShader
C3D_API PassComponentsShader (PassComponentPlugin const &plugin)
 
virtual C3D_API void fillComponents (ComponentModeFlags componentsMask, sdw::type::BaseStruct &components, Materials const &materials, sdw::StructInstance const *surface) const
 Fills the components shader struct with the members provided by this component.
 
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
 Fills the components shader struct members initialiser with the ones provided by this component.
 
virtual C3D_API void applyComponents (PipelineFlags const *flags, shader::TextureConfigData const &config, sdw::U32Vec3 const &imgCompConfig, sdw::Vec4 const &sampled, sdw::Vec2 const &uv, BlendComponents &components) const
 Fills this component's values with the data retrieved from a texture.
 
virtual C3D_API void blendComponents (shader::Materials const &materials, sdw::Float const &passMultiplier, BlendComponents &res, BlendComponents const &src) const
 Used to mix components when multiple passes are blended together.
 
virtual C3D_API void updateComponent (sdw::Array< sdw::CombinedImage2DRgba32 > const &maps, shader::Material const &material, shader::BlendComponents &components, bool isFrontCulled) const
 
C3D_API PassComponentID getId () const
 
PassComponentPlugin const & getPlugin () const
 
- Public Member Functions inherited from 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
 

Additional Inherited Members

- Protected Member Functions inherited from castor3d::shader::PassComponentsShader
C3D_API void applyFloatComponent (castor::String const &mapName, castor::String const &valueName, PassShaders const &passShaders, TextureConfigurations const &textureConfigs, TextureAnimations const &textureAnims, Material const &material, BlendComponents &components, SampleTexture const &sampleTexture) const
 
C3D_API void applyVec3Component (castor::String const &mapName, castor::String const &valueName, PassShaders const &passShaders, TextureConfigurations const &textureConfigs, TextureAnimations const &textureAnims, Material const &material, BlendComponents &components, SampleTexture const &sampleTexture) const
 
void applyFloatComponent (castor::String const &valueName, PassShaders const &passShaders, TextureConfigurations const &textureConfigs, TextureAnimations const &textureAnims, Material const &material, BlendComponents &components, SampleTexture const &sampleTexture) const
 
void applyVec3Component (castor::String const &valueName, PassShaders const &passShaders, TextureConfigurations const &textureConfigs, TextureAnimations const &textureAnims, Material const &material, BlendComponents &components, SampleTexture const &sampleTexture) const
 

Member Function Documentation

◆ isMapSampling()

bool castor3d::UntileMappingComponent::ComponentsShader::isMapSampling ( PipelineFlags const & flags) const
inlineoverridevirtual
Returns
true if the component map sampling is usable with given flags.

Reimplemented from castor3d::shader::PassComponentsShader.

References castor3d::UntileMappingComponent::eUntile, castor3d::shader::PassComponentsShader::getId(), castor3d::hasAny(), castor3d::makePassComponentFlag(), and castor3d::PipelineHiHashDetails::pass.

Here is the call graph for this function:

◆ sampleMap() [1/2]

C3D_API sdw::Vec4 castor3d::UntileMappingComponent::ComponentsShader::sampleMap ( sdw::CombinedImage2DRgba32 const & map,
sdw::Vec3 const & texCoords,
shader::BlendComponents const & components ) const
overridevirtual

Lets the component sample the map.

Parameters
[in]mapThe texture.
[in]texCoordsThe texture coordinates.
[in]componentsContains the component members.

Reimplemented from castor3d::shader::PassComponentsShader.

◆ sampleMap() [2/2]

C3D_API sdw::Vec4 castor3d::UntileMappingComponent::ComponentsShader::sampleMap ( sdw::CombinedImage2DRgba32 const & map,
shader::DerivTex const & texCoords,
shader::BlendComponents const & components ) const
overridevirtual

Lets the component sample the map.

Parameters
[in]mapThe texture.
[in]texCoordsThe texture coordinates.
[in]componentsContains the component members.

Reimplemented from castor3d::shader::PassComponentsShader.


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