Castor3D 0.16.0
Multiplatform 3D engine
|
#include <GlslPassShaders.hpp>
Public Member Functions | |
C3D_API | PassShaders (PassComponentRegister const &compRegister, TextureCombine const &textures, ComponentModeFlags filter, Utils &utils, bool forceLod0=false) |
C3D_API | PassShaders (PassComponentRegister const &compRegister, PipelineFlags const &flags, ComponentModeFlags filter, Utils &utils, bool forceLod0=false) |
C3D_API void | fillMaterial (sdw::type::BaseStruct &material, sdw::expr::ExprList &inits) const |
C3D_API void | fillComponents (sdw::type::BaseStruct &components, Materials const &materials, sdw::expr::ExprList &inits) const |
C3D_API void | fillComponents (sdw::type::BaseStruct &components, Materials const &materials, Material const &material, sdw::StructInstance const &surface, sdw::Vec4 const *clrCot, sdw::expr::ExprList &inits) const |
C3D_API void | fillComponentsInits (sdw::type::BaseStruct const &components, Materials const &materials, sdw::expr::ExprList &inits) const |
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 |
C3D_API void | computeTexcoords (TextureConfigurations const &textureConfigs, TextureConfigData const &config, TextureTransformData const &anim, BlendComponents &components) const |
C3D_API void | applyTextures (TextureConfigurations const &textureConfigs, TextureAnimations const &textureAnims, sdw::Array< sdw::CombinedImage2DRgba32 > const &maps, Material const &material, BlendComponents &components, SampleTexture const &sampleTexture) const |
C3D_API void | applyComponents (TextureCombine const &combine, TextureConfigData const &config, sdw::U32Vec3 const &imgCompConfig, sdw::Vec4 const &sampled, sdw::Vec2 const &uv, BlendComponents &components) const |
C3D_API void | applyComponents (PipelineFlags const &flags, TextureConfigData const &config, sdw::U32Vec3 const &imgCompConfig, sdw::Vec4 const &sampled, sdw::Vec2 const &uv, BlendComponents &components) const |
C3D_API void | blendComponents (Materials const &materials, sdw::Float const &passMultiplier, BlendComponents &res, BlendComponents const &src) const |
C3D_API void | updateComponents (PipelineFlags const &flags, sdw::Array< sdw::CombinedImage2DRgba32 > const &maps, Material const &material, BlendComponents &components) const |
C3D_API void | updateComponents (TextureCombine const &combine, sdw::Array< sdw::CombinedImage2DRgba32 > const &maps, Material const &material, BlendComponents &components, bool isFrontCulled=false) const |
C3D_API void | finishComponents (DerivSurfaceBase const &surface, sdw::Vec3 const worldEye, Utils &utils, BlendComponents &components) const |
C3D_API castor::Map< uint32_t, PassComponentTextureFlag > | getTexcoordModifs (PipelineFlags const &flags) const |
C3D_API castor::Map< uint32_t, PassComponentTextureFlag > | getTexcoordModifs (TextureCombine const &combine) const |
C3D_API bool | enableParallaxOcclusionMapping (PipelineFlags const &flags) const |
C3D_API bool | enableParallaxOcclusionMappingOne (PipelineFlags const &flags) const |
C3D_API sdw::Vec4 | sampleMap (PipelineFlags const &flags, sdw::CombinedImage2DRgba32 const map, sdw::Vec3 const texCoords, shader::BlendComponents const &components) const |
C3D_API sdw::Vec4 | sampleMap (PipelineFlags const &flags, sdw::CombinedImage2DRgba32 const map, DerivTex const texCoords, shader::BlendComponents const &components) const |
C3D_API sdw::Vec4 | sampleMap (TextureCombine const &flags, sdw::CombinedImage2DRgba32 const map, sdw::Vec3 const texCoords, shader::BlendComponents const &components) const |
C3D_API sdw::Vec4 | sampleMap (TextureCombine const &flags, sdw::CombinedImage2DRgba32 const map, sdw::Vec2 const texCoords, shader::BlendComponents const &components) const |
C3D_API sdw::Vec4 | sampleMap (TextureCombine const &flags, sdw::CombinedImage2DRgba32 const map, DerivTex const texCoords, shader::BlendComponents const &components) const |
C3D_API void | computeReflRefr (ReflectionModel &reflections, BlendComponents &components, LightSurface const &lightSurface, sdw::Vec4 const &position, BackgroundModel &background, sdw::CombinedImage2DRgba32 const &mippedScene, CameraData const &camera, DirectLighting &lighting, IndirectLighting &indirect, sdw::Vec2 const &sceneUv, sdw::UInt const &envMapIndex, sdw::Vec3 const &incident, sdw::UInt const &hasReflection, sdw::UInt const &hasRefraction, sdw::Float const &refractionRatio, sdw::Vec3 &reflectedDiffuse, sdw::Vec3 &reflectedSpecular, sdw::Vec3 &refracted, sdw::Vec3 &coatReflected, sdw::Vec3 &sheenReflected, DebugOutput &debugOutput) const |
C3D_API void | computeReflRefr (ReflectionModel &reflections, BlendComponents &components, LightSurface const &lightSurface, BackgroundModel &background, CameraData const &camera, DirectLighting &lighting, IndirectLighting &indirect, sdw::Vec2 const &sceneUv, sdw::UInt const &envMapIndex, sdw::Vec3 const &incident, sdw::UInt const &hasReflection, sdw::UInt const &hasRefraction, sdw::Float const &refractionRatio, sdw::Vec3 &reflectedDiffuse, sdw::Vec3 &reflectedSpecular, sdw::Vec3 &refracted, sdw::Vec3 &coatReflected, sdw::Vec3 &sheenReflected, DebugOutput &debugOutput) const |
auto | getFilter () const |
bool | enableOpacity () const |
bool | isFrontCulled () const |
Utils & | getUtils () const |
PassComponentCombine const & | getPassCombine () const |
TextureCombine const & | getTexturesCombine () const |
C3D_API castor3d::shader::PassShaders::PassShaders | ( | PassComponentRegister const & | compRegister, |
TextureCombine const & | textures, | ||
ComponentModeFlags | filter, | ||
Utils & | utils, | ||
bool | forceLod0 = false ) |
C3D_API castor3d::shader::PassShaders::PassShaders | ( | PassComponentRegister const & | compRegister, |
PipelineFlags const & | flags, | ||
ComponentModeFlags | filter, | ||
Utils & | utils, | ||
bool | forceLod0 = false ) |
C3D_API void castor3d::shader::PassShaders::applyComponents | ( | PipelineFlags const & | flags, |
TextureConfigData const & | config, | ||
sdw::U32Vec3 const & | imgCompConfig, | ||
sdw::Vec4 const & | sampled, | ||
sdw::Vec2 const & | uv, | ||
BlendComponents & | components ) const |
C3D_API void castor3d::shader::PassShaders::applyComponents | ( | TextureCombine const & | combine, |
TextureConfigData const & | config, | ||
sdw::U32Vec3 const & | imgCompConfig, | ||
sdw::Vec4 const & | sampled, | ||
sdw::Vec2 const & | uv, | ||
BlendComponents & | components ) const |
C3D_API void castor3d::shader::PassShaders::applyTextures | ( | TextureConfigurations const & | textureConfigs, |
TextureAnimations const & | textureAnims, | ||
sdw::Array< sdw::CombinedImage2DRgba32 > const & | maps, | ||
Material const & | material, | ||
BlendComponents & | components, | ||
SampleTexture const & | sampleTexture ) const |
C3D_API void castor3d::shader::PassShaders::blendComponents | ( | Materials const & | materials, |
sdw::Float const & | passMultiplier, | ||
BlendComponents & | res, | ||
BlendComponents const & | src ) const |
C3D_API void castor3d::shader::PassShaders::computeReflRefr | ( | ReflectionModel & | reflections, |
BlendComponents & | components, | ||
LightSurface const & | lightSurface, | ||
BackgroundModel & | background, | ||
CameraData const & | camera, | ||
DirectLighting & | lighting, | ||
IndirectLighting & | indirect, | ||
sdw::Vec2 const & | sceneUv, | ||
sdw::UInt const & | envMapIndex, | ||
sdw::Vec3 const & | incident, | ||
sdw::UInt const & | hasReflection, | ||
sdw::UInt const & | hasRefraction, | ||
sdw::Float const & | refractionRatio, | ||
sdw::Vec3 & | reflectedDiffuse, | ||
sdw::Vec3 & | reflectedSpecular, | ||
sdw::Vec3 & | refracted, | ||
sdw::Vec3 & | coatReflected, | ||
sdw::Vec3 & | sheenReflected, | ||
DebugOutput & | debugOutput ) const |
C3D_API void castor3d::shader::PassShaders::computeReflRefr | ( | ReflectionModel & | reflections, |
BlendComponents & | components, | ||
LightSurface const & | lightSurface, | ||
sdw::Vec4 const & | position, | ||
BackgroundModel & | background, | ||
sdw::CombinedImage2DRgba32 const & | mippedScene, | ||
CameraData const & | camera, | ||
DirectLighting & | lighting, | ||
IndirectLighting & | indirect, | ||
sdw::Vec2 const & | sceneUv, | ||
sdw::UInt const & | envMapIndex, | ||
sdw::Vec3 const & | incident, | ||
sdw::UInt const & | hasReflection, | ||
sdw::UInt const & | hasRefraction, | ||
sdw::Float const & | refractionRatio, | ||
sdw::Vec3 & | reflectedDiffuse, | ||
sdw::Vec3 & | reflectedSpecular, | ||
sdw::Vec3 & | refracted, | ||
sdw::Vec3 & | coatReflected, | ||
sdw::Vec3 & | sheenReflected, | ||
DebugOutput & | debugOutput ) const |
C3D_API void castor3d::shader::PassShaders::computeTexcoords | ( | TextureConfigurations const & | textureConfigs, |
TextureConfigData const & | config, | ||
TextureTransformData const & | anim, | ||
BlendComponents & | components ) const |
|
inline |
C3D_API bool castor3d::shader::PassShaders::enableParallaxOcclusionMapping | ( | PipelineFlags const & | flags | ) | const |
C3D_API bool castor3d::shader::PassShaders::enableParallaxOcclusionMappingOne | ( | PipelineFlags const & | flags | ) | const |
C3D_API void castor3d::shader::PassShaders::fillComponents | ( | sdw::type::BaseStruct & | components, |
Materials const & | materials, | ||
Material const & | material, | ||
sdw::StructInstance const & | surface, | ||
sdw::Vec4 const * | clrCot, | ||
sdw::expr::ExprList & | inits ) const |
C3D_API void castor3d::shader::PassShaders::fillComponents | ( | sdw::type::BaseStruct & | components, |
Materials const & | materials, | ||
sdw::expr::ExprList & | inits ) const |
C3D_API void castor3d::shader::PassShaders::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 |
C3D_API void castor3d::shader::PassShaders::fillComponentsInits | ( | sdw::type::BaseStruct const & | components, |
Materials const & | materials, | ||
sdw::expr::ExprList & | inits ) const |
C3D_API void castor3d::shader::PassShaders::fillMaterial | ( | sdw::type::BaseStruct & | material, |
sdw::expr::ExprList & | inits ) const |
C3D_API void castor3d::shader::PassShaders::finishComponents | ( | DerivSurfaceBase const & | surface, |
sdw::Vec3 const | worldEye, | ||
Utils & | utils, | ||
BlendComponents & | components ) const |
|
inline |
|
inline |
C3D_API castor::Map< uint32_t, PassComponentTextureFlag > castor3d::shader::PassShaders::getTexcoordModifs | ( | PipelineFlags const & | flags | ) | const |
C3D_API castor::Map< uint32_t, PassComponentTextureFlag > castor3d::shader::PassShaders::getTexcoordModifs | ( | TextureCombine const & | combine | ) | const |
|
inline |
|
inline |
|
inline |
C3D_API sdw::Vec4 castor3d::shader::PassShaders::sampleMap | ( | PipelineFlags const & | flags, |
sdw::CombinedImage2DRgba32 const | map, | ||
DerivTex const | texCoords, | ||
shader::BlendComponents const & | components ) const |
C3D_API sdw::Vec4 castor3d::shader::PassShaders::sampleMap | ( | PipelineFlags const & | flags, |
sdw::CombinedImage2DRgba32 const | map, | ||
sdw::Vec3 const | texCoords, | ||
shader::BlendComponents const & | components ) const |
C3D_API sdw::Vec4 castor3d::shader::PassShaders::sampleMap | ( | TextureCombine const & | flags, |
sdw::CombinedImage2DRgba32 const | map, | ||
DerivTex const | texCoords, | ||
shader::BlendComponents const & | components ) const |
C3D_API sdw::Vec4 castor3d::shader::PassShaders::sampleMap | ( | TextureCombine const & | flags, |
sdw::CombinedImage2DRgba32 const | map, | ||
sdw::Vec2 const | texCoords, | ||
shader::BlendComponents const & | components ) const |
C3D_API sdw::Vec4 castor3d::shader::PassShaders::sampleMap | ( | TextureCombine const & | flags, |
sdw::CombinedImage2DRgba32 const | map, | ||
sdw::Vec3 const | texCoords, | ||
shader::BlendComponents const & | components ) const |
C3D_API void castor3d::shader::PassShaders::updateComponents | ( | PipelineFlags const & | flags, |
sdw::Array< sdw::CombinedImage2DRgba32 > const & | maps, | ||
Material const & | material, | ||
BlendComponents & | components ) const |
C3D_API void castor3d::shader::PassShaders::updateComponents | ( | TextureCombine const & | combine, |
sdw::Array< sdw::CombinedImage2DRgba32 > const & | maps, | ||
Material const & | material, | ||
BlendComponents & | components, | ||
bool | isFrontCulled = false ) const |