Castor3D 0.16.0
Multiplatform 3D engine
|
#include <SubmeshComponent.hpp>
Public Member Functions | |
C3D_API | SubmeshComponent (Submesh &submesh, castor::String const &type, SubmeshComponentDataUPtr data={}, castor::StringArray deps={}) |
Constructor. | |
virtual C3D_API | ~SubmeshComponent () noexcept=default |
Destructor. | |
virtual 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. | |
virtual C3D_API void | accept (ConfigurationVisitorBase &vis) |
ConfigurationVisitorBase acceptance function. | |
virtual C3D_API SubmeshComponentFlag | getSubmeshFlags () const noexcept |
virtual C3D_API SubmeshComponentUPtr | clone (Submesh &submesh) const =0 |
Clones this component into given submesh. | |
virtual C3D_API ProgramFlags | getProgramFlags (Pass const &pass) const noexcept |
C3D_API void | initialiseRenderData () |
Initialises the render data specific for this component's submesh. | |
Getters. | |
castor::String const & | getType () const noexcept |
castor::StringArray const & | getDependencies () const noexcept |
SubmeshComponentPlugin const & | getPlugin () const noexcept |
SubmeshComponentID | getId () const noexcept |
SubmeshComponentDataRPtr | getBaseData () const noexcept |
SubmeshRenderData * | getRenderData () const noexcept |
template<typename DataT > | |
DataT * | getDataT () const noexcept |
template<typename DataT > | |
DataT * | getRenderDataT () const noexcept |
Public Member Functions inherited from castor::OwnedBy< Submesh > | |
Submesh * | getOwner () const |
Protected Attributes | |
SubmeshComponentDataUPtr | m_data |
SubmeshRenderDataPtr | m_renderData |
Additional Inherited Members | |
Protected Member Functions inherited from castor::OwnedBy< Submesh > | |
OwnedBy (Submesh &owner) | |
Constructor. | |
C3D_API castor3d::SubmeshComponent::SubmeshComponent | ( | Submesh & | submesh, |
castor::String const & | type, | ||
SubmeshComponentDataUPtr | data = {}, | ||
castor::StringArray | deps = {} ) |
Constructor.
[in] | submesh | The parent submesh. |
[in] | type | The component type. |
[in] | data | The component data. |
[in] | deps | The components this one depends on. |
|
virtualdefaultnoexcept |
Destructor.
|
inlinevirtual |
ConfigurationVisitorBase acceptance function.
[in,out] | vis | The ... visitor. |
|
pure virtual |
Clones this component into given submesh.
[in,out] | submesh | Receives the cloned component. |
Implemented in castor3d::BaseDataComponentT< SubmeshDataT, DataT >, castor3d::DefaultRenderComponent, castor3d::InstantiationComponent, castor3d::LinesMapping, castor3d::MeshletComponent, castor3d::MorphComponent, castor3d::PassMasksComponent, castor3d::SkinComponent, and castor3d::TriFaceMapping.
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
Referenced by castor3d::PassMasksComponent::getSubmeshFlags(), and castor3d::SkinComponent::getSubmeshFlags().
|
inlinenoexcept |
|
inlinevirtualnoexcept |
[in] | pass | The material pass. |
Reimplemented in castor3d::InstantiationComponent, and castor3d::MeshletComponent.
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinevirtualnoexcept |
Reimplemented in castor3d::PassMasksComponent, and castor3d::SkinComponent.
References castor3d::makeSubmeshComponentFlag().
|
inlinenoexcept |
C3D_API void castor3d::SubmeshComponent::initialiseRenderData | ( | ) |
Initialises the render data specific for this component's submesh.
|
inlinevirtual |
Writes the component content to text.
[in] | tabs | The current tabulation level. |
[in] | folder | The resources folder. |
[in] | subfolder | The resources subfolder. |
[in,out] | file | The output file. |
|
protected |
|
protected |