Castor3D
..
|
Le composant de sous-maillage pour l'instantiation matérielle. Plus de détails...
Fonctions membres publiques | |
C3D_API | InstantiationComponent (Submesh &submesh, uint32_t threshold=1u) |
Constructeur. Plus de détails... | |
C3D_API | ~InstantiationComponent () |
Destructeur. Plus de détails... | |
C3D_API uint32_t | ref (MaterialSPtr material) |
Incrémente le compte d'instances. Plus de détails... | |
C3D_API uint32_t | unref (MaterialSPtr material) |
Décrémente le compte d'instances. Plus de détails... | |
C3D_API uint32_t | getRefCount (MaterialSPtr material) const |
Récupère le nombre d'instances. Plus de détails... | |
C3D_API uint32_t | getMaxRefCount () const |
C3D_API void | gather (VertexBufferArray &buffers) override |
Récupère les tampons qui doivent aller dans un VAO. Plus de détails... | |
C3D_API void | setMaterial (MaterialSPtr oldMaterial, MaterialSPtr newMaterial, bool update) override |
Définit le materiau. Plus de détails... | |
bool | hasMatrixBuffer () const |
VertexBuffer const & | getMatrixBuffer () const |
VertexBuffer & | getMatrixBuffer () |
ProgramFlags | getProgramFlags () const override |
Fonctions membres publiques hérités de castor3d::SubmeshComponent | |
C3D_API | SubmeshComponent (Submesh &submesh, castor::String const &type) |
Constructeur. Plus de détails... | |
virtual C3D_API | ~SubmeshComponent () noexcept=default |
Destructeur. Plus de détails... | |
C3D_API bool | initialise () |
Initialise le sous-maillage. Plus de détails... | |
C3D_API void | cleanup () |
Nettoie le sous-maillage. Plus de détails... | |
C3D_API void | fill () |
Initialise le sous-maillage. Plus de détails... | |
C3D_API void | upload () |
Met les données en VRAM. Plus de détails... | |
castor::String const & | getType () const |
void | needsUpdate () |
Attributs publics statiques | |
static C3D_API castor::String const | Name |
Le composant de sous-maillage pour l'instantiation matérielle.
|
explicit |
Constructeur.
[in] | submesh | Le sous-maillage parent. |
[in] | threshold | Le seuil à partir duquel un sous-maillage sera instancié. |
C3D_API castor3d::InstantiationComponent::~InstantiationComponent | ( | ) |
Destructeur.
|
overridevirtual |
Récupère les tampons qui doivent aller dans un VAO.
Implémente castor3d::SubmeshComponent.
|
inline |
|
inline |
C3D_API uint32_t castor3d::InstantiationComponent::getMaxRefCount | ( | ) | const |
|
inlineoverridevirtual |
Implémente castor3d::SubmeshComponent.
Références castor3d::eInstantiation, et hasMatrixBuffer().
C3D_API uint32_t castor3d::InstantiationComponent::getRefCount | ( | MaterialSPtr | material | ) | const |
Récupère le nombre d'instances.
[in] | material | Le matériau pour lequel le compte est récupéré |
|
inline |
Référencé par getProgramFlags().
C3D_API uint32_t castor3d::InstantiationComponent::ref | ( | MaterialSPtr | material | ) |
Incrémente le compte d'instances.
[in] | material | Le matériau pour lequel le compte est incrémenté. |
|
overridevirtual |
Définit le materiau.
[in] | oldMaterial | Le matériau précédent. |
[in] | newMaterial | Le nouveau matériau. |
[in] | update | Dit si les tampons doivent être mis à jour. |
Réimplémentée à partir de castor3d::SubmeshComponent.
C3D_API uint32_t castor3d::InstantiationComponent::unref | ( | MaterialSPtr | material | ) |
Décrémente le compte d'instances.
[in] | material | Le matériau pour lequel le compte est décrémenté. |
|
static |