![]() |
Castor3D 0.17.0
Multiplatform 3D engine
|
#include <SubsurfaceScatteringComponent.hpp>


Classes | |
| struct | ComponentsShader |
| struct | MaterialShader |
| class | Plugin |
Public Member Functions | |
| C3D_API | SubsurfaceScatteringComponent (Pass &pass) |
| C3D_API void | accept (ConfigurationVisitorBase &vis) override |
| ConfigurationVisitorBase acceptance function. | |
| C3D_API void | update () override |
| C3D_API PassComponentFlag | getPassFlags () const override |
| C3D_API void | setSubsurfaceScattering (SubsurfaceScatteringUPtr value) |
| C3D_API void | fillProfileBuffer (SssProfileBuffer &buffer) const |
| Fills the pass buffer with this pass data. | |
| bool | hasSubsurfaceScattering () const noexcept |
| SubsurfaceScattering const & | getSubsurfaceScattering () const noexcept |
| uint32_t | getSssProfileId () const noexcept |
| void | setSssProfileId (uint32_t value) noexcept |
Public Member Functions inherited from castor3d::BaseDataPassComponentT< castor::AtomicGroupChangeTracked< SubsurfaceScatteringUPtr > > | |
| BaseDataPassComponentT (Pass &pass, castor::String type, castor::StringArray deps={}, ParamsT &&... params) | |
| Constructor. | |
| void | setData (DataU const &data) |
| void | setData (ParamsT &&... params) |
| castor::AtomicGroupChangeTracked< SubsurfaceScatteringUPtr > & | getData () |
| castor::AtomicGroupChangeTracked< SubsurfaceScatteringUPtr > const & | getData () const |
Public Member Functions inherited from castor3d::PassComponent | |
| C3D_API | PassComponent (Pass &pass, castor::String type, castor::StringArray deps={}) |
| Constructor. | |
| virtual C3D_API | ~PassComponent () noexcept=default |
| C3D_API PassComponentUPtr | clone (Pass &pass) const |
| virtual C3D_API void | onAddToPass () const |
| Called when the component is added to the pass. | |
| C3D_API bool | writeText (castor::String const &tabs, castor::Path const &folder, castor::String const &subfolder, castor::StringStream &file) const |
| Writes the component content to text. | |
| C3D_API void | fillBuffer (PassBuffer &buffer) const |
| Fills the pass buffer with this pass data. | |
| C3D_API void | fillChannel (TextureConfiguration &configuration, uint32_t mask) const |
| Fills the texture configuration for use with this component. | |
| virtual C3D_API void | fillConfig (TextureConfiguration &config, ConfigurationVisitorBase &vis) const |
| ConfigurationVisitorBase acceptance function, for a specific texture configuration. | |
| virtual C3D_API bool | hasColour () const |
| virtual C3D_API castor::HdrRgbColour const & | getColour () const |
| virtual C3D_API void | setColour (castor::HdrRgbColour v) |
| castor::String const & | getType () const |
| castor::StringArray const & | getDependencies () const |
| PassComponentPlugin const & | getPlugin () const |
| PassComponentID | getId () const |
| void | setColour (castor::RgbColour const &v, float gamma=2.2f) |
| void | setColour (castor::Coords3f const &v) |
| void | setColour (castor::Point3f const &v) |
Public Member Functions inherited from castor::OwnedBy< Pass > | |
| Pass * | getOwner () const noexcept |
| void | setOwner (Pass &owner) noexcept |
Static Public Member Functions | |
| static PassComponentPluginUPtr | createPlugin (PassComponentRegister const &passComponent) |
Public Attributes | |
| OnSssProfileChanged | onProfileChanged |
Static Public Attributes | |
| static constexpr PassFlag | eSubsurfaceScattering = PassFlag( 0x01u ) |
| static constexpr PassFlag | eDistanceBasedTransmittance = PassFlag( 0x02u ) |
| static constexpr PassFlag | eAll = PassFlag( 0x03u ) |
| static C3D_API castor::String const | TypeName |
Additional Inherited Members | |
Protected Member Functions inherited from castor::OwnedBy< Pass > | |
| OwnedBy (Pass &owner) noexcept | |
| Constructor. | |
Protected Attributes inherited from castor3d::BaseDataPassComponentT< castor::AtomicGroupChangeTracked< SubsurfaceScatteringUPtr > > | |
| castor::AtomicGroupChangeTracked< SubsurfaceScatteringUPtr > | m_value |
Protected Attributes inherited from castor3d::PassComponent | |
| castor::String | m_type |
| castor::StringArray | m_dependencies |
| PassComponentID | m_id |
| PassComponentPlugin const & | m_plugin |
| std::atomic_bool & | m_dirty |
| shader::PassMaterialShader * | m_materialShader {} |
|
explicit |
|
overridevirtual |
ConfigurationVisitorBase acceptance function.
| vis | The ... visitor. |
Reimplemented from castor3d::PassComponent.
|
inlinestatic |
| C3D_API void castor3d::SubsurfaceScatteringComponent::fillProfileBuffer | ( | SssProfileBuffer & | buffer | ) | const |
Fills the pass buffer with this pass data.
| [in,out] | buffer | The pass buffer. |
|
inlineoverridevirtual |
Reimplemented from castor3d::PassComponent.
References castor3d::eNone, eSubsurfaceScattering, castor3d::PassComponent::getId(), hasSubsurfaceScattering(), and castor3d::makePassComponentFlag().

|
inlinenoexcept |
|
inlinenoexcept |
References CU_Require, hasSubsurfaceScattering(), and castor3d::BaseDataPassComponentT< castor::AtomicGroupChangeTracked< SubsurfaceScatteringUPtr > >::m_value.

|
inlinenoexcept |
References castor3d::BaseDataPassComponentT< castor::AtomicGroupChangeTracked< SubsurfaceScatteringUPtr > >::m_value.
Referenced by getPassFlags(), and getSubsurfaceScattering().

|
inlinenoexcept |
| C3D_API void castor3d::SubsurfaceScatteringComponent::setSubsurfaceScattering | ( | SubsurfaceScatteringUPtr | value | ) |
|
overridevirtual |
Reimplemented from castor3d::PassComponent.
|
staticconstexpr |
| OnSssProfileChanged castor3d::SubsurfaceScatteringComponent::onProfileChanged |
|
static |