Castor3D 0.16.0
Multiplatform 3D engine
Classes | Types publics | Fonctions membres publiques | Fonctions membres publiques statiques | Attributs publics statiques | Liste de tous les membres
Référence de la classe castor3d::InstantiationComponent

#include <InstantiationComponent.hpp>

Graphe d'héritage de castor3d::InstantiationComponent:
Inheritance graph
[légende]
Graphe de collaboration de castor3d::InstantiationComponent:
Collaboration graph
[légende]

Classes

struct  ComponentData
 
struct  Data
 
class  Plugin
 

Types publics

using InstanceDataMap = castor::Map< uint32_t, Data >
 

Fonctions membres publiques

C3D_API InstantiationComponent (Submesh &submesh, uint32_t threshold=1u)
 Constructeur.
 
C3D_API SubmeshComponentUPtr clone (Submesh &submesh) const override
 Clone ce composant dans le submesh donné.
 
C3D_API ProgramFlags getProgramFlags (Pass const &pass) const noexcept override
 
C3D_API bool isInstanced (Pass const &pass) const
 
C3D_API bool isInstanced () const
 
ComponentDatagetData () const noexcept
 
- Fonctions membres publiques hérités de castor3d::SubmeshComponent
C3D_API SubmeshComponent (Submesh &submesh, castor::String const &type, SubmeshComponentDataUPtr data={}, castor::StringArray deps={})
 Constructeur.
 
virtual C3D_API ~SubmeshComponent () noexcept=default
 Destructeur.
 
virtual C3D_API bool writeText (castor::String const &tabs, castor::Path const &folder, castor::String const &subfolder, castor::StringStream &file) const
 Ecrit le contenu du composant en texte.
 
virtual C3D_API void accept (ConfigurationVisitorBase &vis)
 Fonction d'acceptation de ConfigurationVisitorBase.
 
virtual C3D_API SubmeshComponentFlag getSubmeshFlags () const noexcept
 
C3D_API void initialiseRenderData ()
 Initialise les données de rendu spécifiques au submesh de ce composant.
 
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
 
SubmeshRenderDatagetRenderData () const noexcept
 
template<typename DataT >
DataT * getDataT () const noexcept
 
template<typename DataT >
DataT * getRenderDataT () const noexcept
 
- Fonctions membres publiques hérités de castor::OwnedBy< Submesh >
Submesh * getOwner () const
 L'objet propriétaire.
 

Fonctions membres publiques statiques

static SubmeshComponentPluginUPtr createPlugin (SubmeshComponentRegister const &submeshComponents)
 

Attributs publics statiques

static C3D_API castor::String const TypeName
 

Membres hérités additionnels

- Fonctions membres protégées hérités de castor::OwnedBy< Submesh >
 OwnedBy (Submesh &owner)
 Constructeur.
 
- Attributs protégés hérités de castor3d::SubmeshComponent
SubmeshComponentDataUPtr m_data
 
SubmeshRenderDataPtr m_renderData
 

Documentation des définitions de type membres

◆ InstanceDataMap

Documentation des constructeurs et destructeur

◆ InstantiationComponent()

C3D_API castor3d::InstantiationComponent::InstantiationComponent ( Submesh & submesh,
uint32_t threshold = 1u )
explicit

Constructeur.

Paramètres
[in]submeshLe sous-maillage parent.
[in]thresholdLe seuil à partir duquel un sous-maillage sera instancié.

Documentation des fonctions membres

◆ clone()

C3D_API SubmeshComponentUPtr castor3d::InstantiationComponent::clone ( Submesh & submesh) const
overridevirtual

Clone ce composant dans le submesh donné.

Paramètres
[in,out]submeshReçoit le composant cloné.

Implémente castor3d::SubmeshComponent.

◆ createPlugin()

static SubmeshComponentPluginUPtr castor3d::InstantiationComponent::createPlugin ( SubmeshComponentRegister const & submeshComponents)
inlinestatic

◆ getData()

ComponentData & castor3d::InstantiationComponent::getData ( ) const
inlinenoexcept

◆ getProgramFlags()

C3D_API ProgramFlags castor3d::InstantiationComponent::getProgramFlags ( Pass const & pass) const
overridevirtualnoexcept

Renvoie
Les indicateurs de programme.
Paramètres
[in]passLa passe de matériau.

Réimplémentée à partir de castor3d::SubmeshComponent.

◆ isInstanced() [1/2]

C3D_API bool castor3d::InstantiationComponent::isInstanced ( ) const
Renvoie
true si le nombre d'instances max est plus grand que le seuil.

◆ isInstanced() [2/2]

C3D_API bool castor3d::InstantiationComponent::isInstanced ( Pass const & pass) const
Paramètres
[in]passLa passe de matériau.
Renvoie
true si le nombre d'instances pour le matériau donné est plus grand que le seuil.

Documentation des données membres

◆ TypeName

C3D_API castor::String const castor3d::InstantiationComponent::TypeName
static

La documentation de cette classe a été générée à partir du fichier suivant :