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

#include <PassBuffer.hpp>

Classes

struct  PassDataPtr
 
struct  PassTypeData
 

Fonctions membres publiques

C3D_API PassBuffer (Engine &engine, RenderDevice const &device, uint32_t count)
 Constructeur. Plus de détails...
 
C3D_API uint32_t addPass (Pass &pass)
 Ajoute une passe au tampon. Plus de détails...
 
C3D_API void removePass (Pass &pass)
 Supprime une pass du tampon. Plus de détails...
 
C3D_API void update (SpecificsBuffers const &specifics, ashes::CommandBuffer const &commandBuffer)
 Met à jour le tampon de passes. Plus de détails...
 
C3D_API VkDescriptorSetLayoutBinding createLayoutBinding (uint32_t binding, VkShaderStageFlags stages=(VK_SHADER_STAGE_FRAGMENT_BIT|VK_SHADER_STAGE_GEOMETRY_BIT|VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT|VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT|VK_SHADER_STAGE_VERTEX_BIT)) const
 Crée une attache de layout de set de descripteurs. Plus de détails...
 
C3D_API void createPassBinding (crg::FramePass &pass, uint32_t binding) const
 Crée une attache de frame pass. Plus de détails...
 
C3D_API ashes::WriteDescriptorSet getBinding (uint32_t binding) const
 Crée le descriptor write pour ce tampon. Plus de détails...
 
C3D_API void createBinding (ashes::DescriptorSet &descriptorSet, VkDescriptorSetLayoutBinding const &binding) const
 Crée une attache de set de descripteurs au point donné. Plus de détails...
 
C3D_API PassDataPtr getData (uint32_t passID)
 Le pointeur sur les données pour l'ID de passe donné. Plus de détails...
 
C3D_API uint32_t getMaxPassTypeCount () const
 Le nombre maximum de types de passes (pour l'utilisation de vibility buffer). Plus de détails...
 
C3D_API uint32_t getPassTypeIndex (PassComponentCombineID passType, TextureCombineID textureCombine) const
 L'indice de type de passe (pour l'utilisation de vibility buffer). Plus de détails...
 
C3D_API std::tuple< PassComponentCombineID, TextureCombineIDgetPassTypeDetails (uint32_t passTypeIndex) const
 Les détails du type de passe pour l'index donné (pour l'utilisation de vibility buffer). Plus de détails...
 
uint8_t * getPtr ()
 Le pointeur sur le tampon. Plus de détails...
 
uint32_t getCurrentPassTypeCount () const
 

Documentation des constructeurs et destructeur

◆ PassBuffer()

C3D_API castor3d::PassBuffer::PassBuffer ( Engine engine,
RenderDevice const &  device,
uint32_t  count 
)

Constructeur.

Paramètres
[in]engineLe moteur.
[in]deviceLe device GPU.
[in]countLe nombre maximal de passes.

Documentation des fonctions membres

◆ addPass()

C3D_API uint32_t castor3d::PassBuffer::addPass ( Pass pass)

Ajoute une passe au tampon.

Paramètres
[in]passLa passe.

◆ createBinding()

C3D_API void castor3d::PassBuffer::createBinding ( ashes::DescriptorSet &  descriptorSet,
VkDescriptorSetLayoutBinding const &  binding 
) const

Crée une attache de set de descripteurs au point donné.

Paramètres
[in]descriptorSetLe set de descripteurs recevant l'attache.
[in]bindingL'attache de layout de set de descripteurs.

◆ createLayoutBinding()

C3D_API VkDescriptorSetLayoutBinding castor3d::PassBuffer::createLayoutBinding ( uint32_t  binding,
VkShaderStageFlags  stages = (VK_SHADER_STAGE_FRAGMENT_BIT|VK_SHADER_STAGE_GEOMETRY_BIT|VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT|VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT|VK_SHADER_STAGE_VERTEX_BIT) 
) const

Crée une attache de layout de set de descripteurs.

◆ createPassBinding()

C3D_API void castor3d::PassBuffer::createPassBinding ( crg::FramePass &  pass,
uint32_t  binding 
) const

Crée une attache de frame pass.

◆ getBinding()

C3D_API ashes::WriteDescriptorSet castor3d::PassBuffer::getBinding ( uint32_t  binding) const

Crée le descriptor write pour ce tampon.

◆ getCurrentPassTypeCount()

uint32_t castor3d::PassBuffer::getCurrentPassTypeCount ( ) const
inline

◆ getData()

C3D_API PassDataPtr castor3d::PassBuffer::getData ( uint32_t  passID)

Le pointeur sur les données pour l'ID de passe donné.

◆ getMaxPassTypeCount()

C3D_API uint32_t castor3d::PassBuffer::getMaxPassTypeCount ( ) const

Le nombre maximum de types de passes (pour l'utilisation de vibility buffer).

◆ getPassTypeDetails()

C3D_API std::tuple< PassComponentCombineID, TextureCombineID > castor3d::PassBuffer::getPassTypeDetails ( uint32_t  passTypeIndex) const

Les détails du type de passe pour l'index donné (pour l'utilisation de vibility buffer).

◆ getPassTypeIndex()

C3D_API uint32_t castor3d::PassBuffer::getPassTypeIndex ( PassComponentCombineID  passType,
TextureCombineID  textureCombine 
) const

L'indice de type de passe (pour l'utilisation de vibility buffer).

◆ getPtr()

uint8_t * castor3d::PassBuffer::getPtr ( )
inline

Le pointeur sur le tampon.

Références castor3d::ShaderBuffer::getPtr().

Voici le graphe d'appel pour cette fonction :

◆ removePass()

C3D_API void castor3d::PassBuffer::removePass ( Pass pass)

Supprime une pass du tampon.

Paramètres
[in]passLa passe.

◆ update()

C3D_API void castor3d::PassBuffer::update ( SpecificsBuffers const &  specifics,
ashes::CommandBuffer const &  commandBuffer 
)

Met à jour le tampon de passes.

Paramètres
[in]specificsLe buffers spécifiques aux composants de passe.
[in]commandBufferReçoit les commandes de mise à jour.

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