Castor3D 0.15.0
Multiplatform 3D engine
Fonctions membres publiques | Liste de tous les membres
Référence de la classe castor3d::SubmeshComponentabstract

#include <SubmeshComponent.hpp>

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

Fonctions membres publiques

C3D_API SubmeshComponent (Submesh &submesh, castor::String const &type, uint32_t id)
 Constructeur.
 
virtual C3D_API ~SubmeshComponent () noexcept=default
 Destructeur.
 
C3D_API bool initialise (RenderDevice const &device)
 Initialise le sous-maillage.
 
C3D_API void cleanup (RenderDevice const &device)
 Nettoie le sous-maillage.
 
C3D_API void upload ()
 Met les données en VRAM.
 
virtual C3D_API void gather (PipelineFlags const &flags, MaterialObs material, ashes::BufferCRefArray &buffers, std::vector< uint64_t > &offsets, ashes::PipelineVertexInputStateCreateInfoCRefArray &layouts, uint32_t &currentBinding, uint32_t &currentLocation)=0
 Récupère les tampons qui doivent aller dans un vertex layout.
 
virtual C3D_API ProgramFlags getProgramFlags (Material const &material) const
 
virtual C3D_API SubmeshFlags getSubmeshFlags (Pass const *pass) const
 
virtual C3D_API VkBufferUsageFlags getUsageFlags () const
 
virtual C3D_API SubmeshComponentUPtr clone (Submesh &submesh) const =0
 
castor::String const & getType () const
 
void needsUpdate ()
 Dit que le composant doit être mis à jour.
 
uint32_t getID ()
 

Documentation des constructeurs et destructeur

◆ SubmeshComponent()

C3D_API castor3d::SubmeshComponent::SubmeshComponent ( Submesh submesh,
castor::String const &  type,
uint32_t  id 
)

Constructeur.

Paramètres
[in]submeshLe sous-maillage parent.
[in]typeLe type de composant.
[in]idL'ID composant.

◆ ~SubmeshComponent()

virtual C3D_API castor3d::SubmeshComponent::~SubmeshComponent ( )
virtualdefaultnoexcept

Destructeur.

Documentation des fonctions membres

◆ cleanup()

C3D_API void castor3d::SubmeshComponent::cleanup ( RenderDevice const &  device)

Nettoie le sous-maillage.

◆ clone()

virtual C3D_API SubmeshComponentUPtr castor3d::SubmeshComponent::clone ( Submesh submesh) const
pure virtual

◆ gather()

virtual C3D_API void castor3d::SubmeshComponent::gather ( PipelineFlags const &  flags,
MaterialObs  material,
ashes::BufferCRefArray &  buffers,
std::vector< uint64_t > &  offsets,
ashes::PipelineVertexInputStateCreateInfoCRefArray &  layouts,
uint32_t &  currentBinding,
uint32_t &  currentLocation 
)
pure virtual

Récupère les tampons qui doivent aller dans un vertex layout.

Paramètres
[in]flagsLes flags de pipeline.
[in]materialLes matériau.
[in,out]buffersReçoit les buffers.
[in,out]offsetsReçoit les offsets dans les buffers.
[in,out]layoutsReçoit les vertex layouts.
[in,out]currentBindingL'index de binging actuel des buffers.
[in,out]currentLocationLa position actuelle des attributs.

Implémenté dans castor3d::BaseDataComponentT< SubmeshFlagT >, castor3d::IndexMapping, castor3d::InstantiationComponent, castor3d::MeshletComponent, castor3d::MorphComponent, castor3d::PassMasksComponent, et castor3d::SkinComponent.

◆ getID()

uint32_t castor3d::SubmeshComponent::getID ( )
inline
Renvoie
L'ID de binding du composant.

◆ getProgramFlags()

virtual C3D_API ProgramFlags castor3d::SubmeshComponent::getProgramFlags ( Material const &  material) const
inlinevirtual
Renvoie
Les indicateurs de programme.
Paramètres
[in]materialLes matériau.

Réimplémentée dans castor3d::InstantiationComponent, et castor3d::MeshletComponent.

◆ getSubmeshFlags()

virtual C3D_API SubmeshFlags castor3d::SubmeshComponent::getSubmeshFlags ( Pass const *  pass) const
inlinevirtual

◆ getType()

castor::String const & castor3d::SubmeshComponent::getType ( ) const
inline
Renvoie
Le nom du type de composant.

◆ getUsageFlags()

virtual C3D_API VkBufferUsageFlags castor3d::SubmeshComponent::getUsageFlags ( ) const
inlinevirtual
Renvoie
Les flags d'utilisation du buffer.

Réimplémentée dans castor3d::IndexMapping.

◆ initialise()

C3D_API bool castor3d::SubmeshComponent::initialise ( RenderDevice const &  device)

Initialise le sous-maillage.

◆ needsUpdate()

void castor3d::SubmeshComponent::needsUpdate ( )
inline

Dit que le composant doit être mis à jour.

Référencé par castor3d::InstantiationComponent::find(), castor3d::MeshletComponent::getCullData(), et castor3d::MeshletComponent::getMeshletsData().

Voici le graphe des appelants de cette fonction :

◆ upload()

C3D_API void castor3d::SubmeshComponent::upload ( )

Met les données en VRAM.

Remarques
Pour les buffers host visible.

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