|
|
Construction / Destruction.
|
| PassComponentRegister (PassComponentRegister const &)=delete |
|
| PassComponentRegister (PassComponentRegister &&) noexcept=delete |
|
PassComponentRegister & | operator= (PassComponentRegister const &)=delete |
|
PassComponentRegister & | operator= (PassComponentRegister &&) noexcept=delete |
|
C3D_API | PassComponentRegister (Engine &engine) |
|
C3D_API | ~PassComponentRegister () noexcept |
|
|
|
C3D_API PassComponentCombine | registerPassComponentCombine (Pass const &pass) |
|
C3D_API PassComponentCombineID | registerPassComponentCombine (PassComponentCombine &combine) |
|
C3D_API PassComponentCombineID | getPassComponentCombineID (PassComponentCombine const &combine) const |
|
C3D_API TextureCombineID | getTextureCombineID (TextureCombine const &combine) const |
|
C3D_API PassComponentCombine | getPassComponentCombine (Pass const &pass) const |
|
C3D_API PassComponentCombine | getPassComponentCombine (PassComponentCombineID id) const |
|
C3D_API TextureCombine | getTextureCombine (Pass const &pass) const |
|
C3D_API TextureCombine | getTextureCombine (TextureCombineID id) const |
|
|
Shader material components handling.
|
C3D_API void | fillBuffer (Pass const &pass, PassBuffer &buffer) const |
| Fills the pass buffer with initialisation values.
|
|
C3D_API shader::PassMaterialShader * | getMaterialShader (castor::String const &componentType) const |
|
C3D_API void | fillMaterial (sdw::type::BaseStruct &material, sdw::expr::ExprList &inits, uint32_t padIndex) const |
|
auto const & | getMaterialShaders () const |
|
VkDeviceSize | getPassBufferStride () const |
|
|
Shader output components handling.
|
C3D_API castor::Vector< shader::PassComponentsShaderPtr > | getComponentsShaders (TextureCombine const &texturesFlags, ComponentModeFlags filter, castor::Vector< UpdateComponent > &updateComponents, castor::Vector< FinishComponent > &finishComponents) const |
|
C3D_API castor::Vector< shader::PassComponentsShaderPtr > | getComponentsShaders (PipelineFlags const &flags, ComponentModeFlags filter, castor::Vector< UpdateComponent > &updateComponents, castor::Vector< FinishComponent > &finishComponents) const |
|
|
Shader output components handling.
|
C3D_API shader::PassReflRefrShaderPtr | getReflRefrShader (PassComponentCombine const &combine) const |
|
|
Base components handling.
|
C3D_API PassComponentCombine | filterComponentFlags (ComponentModeFlags filter, PassComponentCombine const &combine) const |
|
C3D_API bool | hasOpacity (PipelineFlags const &flags) const |
|
C3D_API bool | needsEnvironmentMapping (PassComponentCombineID combineID) const |
|
C3D_API bool | hasDeferredLighting (PassComponentFlagsSet const &combineID) const |
|
PassComponentFlag | getAlphaBlendingFlag () const |
|
PassComponentFlag | getAlphaTestFlag () const |
|
PassComponentFlag | getTransmissionFlag () const |
|
PassComponentFlag | getParallaxOcclusionMappingOneFlag () const |
|
PassComponentFlag | getParallaxOcclusionMappingRepeatFlag () const |
|
|
Texture components handling.
|
C3D_API void | updateMapComponents (castor::Vector< TextureFlagConfiguration > const &texConfigs, Pass &result) |
| Adds or removes texture components, whether they are needed or not, from given pass.
|
|
C3D_API bool | writeTextureConfig (TextureConfiguration const &configuration, castor::String const &tabs, castor::StringStream &file) const |
| Writes the texture configuration for this component in a scene file.
|
|
C3D_API void | fillChannels (PassComponentTextureFlag const &flags, TextureContext &parsingContext) const |
|
C3D_API TextureCombine | filterTextureFlags (ComponentModeFlags filter, TextureCombine const &combine) const |
|
C3D_API PassComponentTextureFlag | getColourMapFlags () const |
|
C3D_API PassComponentTextureFlag | getOpacityMapFlags () const |
|
C3D_API PassComponentTextureFlag | getNormalMapFlags () const |
|
C3D_API PassComponentTextureFlag | getHeightMapFlags () const |
|
C3D_API PassComponentTextureFlag | getOcclusionMapFlags () const |
|
C3D_API void | fillTextureConfiguration (PassComponentTextureFlag const &flags, TextureConfiguration &result) const |
|
C3D_API bool | hasTexcoordModif (PassComponentTextureFlag const &flag, PipelineFlags const *flags) 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 |
|
castor::UInt32StrMap const & | getTextureChannels () const |
|
|
|
C3D_API PassComponentID | registerComponent (castor::String const &componentType, PassComponentPluginUPtr componentPlugin) |
|
C3D_API void | unregisterComponent (castor::String const &componentType) noexcept |
|
C3D_API PassComponentID | getNameId (castor::String const &componentType) const |
|
C3D_API PassComponentPlugin const & | getPlugin (PassComponentID componentId) const |
|
PassComponentPlugin const & | getPlugin (castor::String const &componentType) const |
|
template<typename ComponentT > |
PassComponentPlugin const & | getPlugin () const |
|
template<typename ComponentT > |
PassComponentID | registerComponent (CreatePassComponentPlugin const &createPlugin=&ComponentT::createPlugin) |
|
auto | begin () const noexcept |
|
auto | end () const noexcept |
|
Engine * | getOwner () const |
|