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

#include <MeshletComponent.hpp>

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

Fonctions membres publiques

C3D_API MeshletComponent (Submesh &submesh)
 Constructeur. Plus de détails...
 
C3D_API void gather (ShaderFlags const &shaderFlags, ProgramFlags const &programFlags, SubmeshFlags const &submeshFlags, MaterialRPtr material, TextureFlagsArray const &mask, ashes::BufferCRefArray &buffers, std::vector< uint64_t > &offsets, ashes::PipelineVertexInputStateCreateInfoCRefArray &layouts, uint32_t &currentBinding, uint32_t &currentLocation) override
 Récupère les tampons qui doivent aller dans un vertex layout. Plus de détails...
 
C3D_API SubmeshComponentSPtr clone (Submesh &submesh) const override
 
C3D_API ProgramFlags getProgramFlags (Material const &material) const override
 
C3D_API void createDescriptorSet (Geometry const &geometry)
 
C3D_API ashes::DescriptorSet const & getDescriptorSet (Geometry const &geometry) const
 
C3D_API void instantiate (Geometry const &geometry)
 
C3D_API GpuBufferOffsetT< MeshletCullData > const & getFinalCullBuffer (Geometry const &geometry) const
 
GpuBufferOffsetT< Meshlet > const & getMeshletsBuffer () const
 
ashes::DescriptorSetLayout const & getDescriptorLayout () const
 
std::vector< Meshlet > const & getMeshletsData () const
 
std::vector< Meshlet > & getMeshletsData ()
 
std::vector< MeshletCullData > & getCullData ()
 
uint32_t getMeshletsCount () const
 
GpuBufferOffsetT< MeshletCullData > const & getSourceCullBuffer () const
 
- Fonctions membres publiques hérités de castor3d::SubmeshComponent
C3D_API SubmeshComponent (Submesh &submesh, castor::String const &type, uint32_t id)
 Constructeur. Plus de détails...
 
virtual C3D_API ~SubmeshComponent () noexcept=default
 Destructeur. Plus de détails...
 
C3D_API bool initialise (RenderDevice const &device)
 Initialise le sous-maillage. Plus de détails...
 
C3D_API void cleanup (RenderDevice const &device)
 Nettoie le sous-maillage. Plus de détails...
 
C3D_API void upload ()
 Met les données en VRAM. Plus de détails...
 
virtual C3D_API void gather (ShaderFlags const &shaderFlags, ProgramFlags const &programFlags, SubmeshFlags const &submeshFlags, MaterialRPtr material, TextureFlagsArray const &mask, 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. Plus de détails...
 
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 SubmeshComponentSPtr clone (Submesh &submesh) const =0
 
castor::String const & getType () const
 
void needsUpdate ()
 Dit que le composant doit être mis à jour. Plus de détails...
 
uint32_t getID ()
 

Attributs publics statiques

static C3D_API castor::String const Name
 

Documentation des constructeurs et destructeur

◆ MeshletComponent()

C3D_API castor3d::MeshletComponent::MeshletComponent ( Submesh submesh)
explicit

Constructeur.

Paramètres
[in]submeshLe sous-maillage parent.

Documentation des fonctions membres

◆ clone()

C3D_API SubmeshComponentSPtr castor3d::MeshletComponent::clone ( Submesh submesh) const
overridevirtual

Renvoie
Clone ce composant dans le submesh donné.
Paramètres
[in,out]submeshReçoit le composant cloné.

Implémente castor3d::SubmeshComponent.

◆ createDescriptorSet()

C3D_API void castor3d::MeshletComponent::createDescriptorSet ( Geometry const &  geometry)

◆ gather()

C3D_API void castor3d::MeshletComponent::gather ( ShaderFlags const &  shaderFlags,
ProgramFlags const &  programFlags,
SubmeshFlags const &  submeshFlags,
MaterialRPtr  material,
TextureFlagsArray const &  mask,
ashes::BufferCRefArray &  buffers,
std::vector< uint64_t > &  offsets,
ashes::PipelineVertexInputStateCreateInfoCRefArray &  layouts,
uint32_t &  currentBinding,
uint32_t &  currentLocation 
)
inlineoverridevirtual

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

Paramètres
[in]shaderFlagsLes shader flags.
[in]programFlagsLes program flags.
[in]submeshFlagsLes submesh flags.
[in]materialLes matériau.
[in]maskLe masque de textures.
[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émente castor3d::SubmeshComponent.

◆ getCullData()

std::vector< MeshletCullData > & castor3d::MeshletComponent::getCullData ( )
inline

Références castor3d::SubmeshComponent::needsUpdate().

Voici le graphe d'appel pour cette fonction :

◆ getDescriptorLayout()

ashes::DescriptorSetLayout const & castor3d::MeshletComponent::getDescriptorLayout ( ) const
inline

◆ getDescriptorSet()

C3D_API ashes::DescriptorSet const & castor3d::MeshletComponent::getDescriptorSet ( Geometry const &  geometry) const

◆ getFinalCullBuffer()

C3D_API GpuBufferOffsetT< MeshletCullData > const & castor3d::MeshletComponent::getFinalCullBuffer ( Geometry const &  geometry) const

◆ getMeshletsBuffer()

GpuBufferOffsetT< Meshlet > const & castor3d::MeshletComponent::getMeshletsBuffer ( ) const
inline

◆ getMeshletsCount()

uint32_t castor3d::MeshletComponent::getMeshletsCount ( ) const
inline

◆ getMeshletsData() [1/2]

std::vector< Meshlet > & castor3d::MeshletComponent::getMeshletsData ( )
inline

Références castor3d::SubmeshComponent::needsUpdate().

Voici le graphe d'appel pour cette fonction :

◆ getMeshletsData() [2/2]

std::vector< Meshlet > const & castor3d::MeshletComponent::getMeshletsData ( ) const
inline

◆ getProgramFlags()

C3D_API ProgramFlags castor3d::MeshletComponent::getProgramFlags ( Material const &  material) const
overridevirtual

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

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

◆ getSourceCullBuffer()

GpuBufferOffsetT< MeshletCullData > const & castor3d::MeshletComponent::getSourceCullBuffer ( ) const
inline

◆ instantiate()

C3D_API void castor3d::MeshletComponent::instantiate ( Geometry const &  geometry)

Documentation des données membres

◆ Name

C3D_API castor::String const castor3d::MeshletComponent::Name
static

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