Castor3D  ..
Classes | Fonctions membres publiques | Attributs publics statiques | Fonctions membres protégées | Attributs protégés | Liste de tous les membres
Référence de la classe castor3d::PassBuffer

ShaderBuffer contenant les données des Pass. Plus de détails...

+ Graphe d'héritage de castor3d::PassBuffer:
+ Graphe de collaboration de castor3d::PassBuffer:

Classes

struct  ExtendedData
 Données étendues communes aux passes. Plus de détails...
 
struct  RgbaColour
 Couleur à 4 composantes. Plus de détails...
 
struct  RgbColour
 Couleur à 3 composantes. Plus de détails...
 

Fonctions membres publiques

C3D_API PassBuffer (Engine &engine, uint32_t count, uint32_t size)
 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 ()
 Met à jour le tampon de passes. Plus de détails...
 
C3D_API void bind () const
 Active le tampon. Plus de détails...
 
virtual C3D_API void visit (LegacyPass const &pass)
 Met les données de la passe dans le tampon. Plus de détails...
 
virtual C3D_API void visit (MetallicRoughnessPbrPass const &pass)
 Met les données de la passe dans le tampon. Plus de détails...
 
virtual C3D_API void visit (SpecularGlossinessPbrPass const &pass)
 Met les données de la passe dans le tampon. Plus de détails...
 

Attributs publics statiques

static constexpr uint32_t ExtendedDataSize = sizeof( RgbaColour ) * 2
 

Fonctions membres protégées

C3D_API void doVisitExtended (Pass const &pass, ExtendedData &data)
 
C3D_API void doVisit (SubsurfaceScattering const &subsurfaceScattering, uint32_t index, ExtendedData &data)
 

Attributs protégés

ShaderBuffer m_buffer
 
std::vector< Pass *> m_passes
 
std::vector< Pass const *> m_dirty
 
std::vector< OnPassChangedConnectionm_connections
 
uint32_t m_passCount
 
uint32_t m_passID { 1u }
 

Description détaillée

ShaderBuffer contenant les données des Pass.

Auteur
Sylvain DOREMUS
Version
0.10.0
Date
09/02/2010

Documentation des constructeurs et destructeur

◆ PassBuffer()

C3D_API castor3d::PassBuffer::PassBuffer ( Engine engine,
uint32_t  count,
uint32_t  size 
)

Constructeur.

Paramètres
[in]engineLe moteur.
[in]countLe nombre maximal de passes.
[in]sizeLa taille d'une passe.

Documentation des fonctions membres

◆ addPass()

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

Ajoute une passe au tampon.

Paramètres
[in]passLa passe.

◆ bind()

C3D_API void castor3d::PassBuffer::bind ( ) const

Active le tampon.

◆ doVisit()

C3D_API void castor3d::PassBuffer::doVisit ( SubsurfaceScattering const &  subsurfaceScattering,
uint32_t  index,
ExtendedData data 
)
protected

◆ doVisitExtended()

C3D_API void castor3d::PassBuffer::doVisitExtended ( Pass const &  pass,
ExtendedData data 
)
protected

◆ 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 ( )

Met à jour le tampon de passes.

◆ visit() [1/3]

virtual C3D_API void castor3d::PassBuffer::visit ( LegacyPass const &  pass)
virtual

Met les données de la passe dans le tampon.

Paramètres
[in]passLa passe.

Réimplémentée dans castor3d::LegacyPassBuffer, castor3d::MetallicRoughnessPassBuffer, et castor3d::SpecularGlossinessPassBuffer.

◆ visit() [2/3]

virtual C3D_API void castor3d::PassBuffer::visit ( MetallicRoughnessPbrPass const &  pass)
virtual

Met les données de la passe dans le tampon.

Paramètres
[in]passLa passe.

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

◆ visit() [3/3]

virtual C3D_API void castor3d::PassBuffer::visit ( SpecularGlossinessPbrPass const &  pass)
virtual

Met les données de la passe dans le tampon.

Paramètres
[in]passLa passe.

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

Documentation des données membres

◆ ExtendedDataSize

constexpr uint32_t castor3d::PassBuffer::ExtendedDataSize = sizeof( RgbaColour ) * 2
static

La taille des données étendues.

◆ m_buffer

ShaderBuffer castor3d::PassBuffer::m_buffer
protected

Le tampon shader.

◆ m_connections

std::vector< OnPassChangedConnection > castor3d::PassBuffer::m_connections
protected

Les connexions aux signaux de changement des passes actuelles.

◆ m_dirty

std::vector< Pass const * > castor3d::PassBuffer::m_dirty
protected

Les passes actuelles.

◆ m_passCount

uint32_t castor3d::PassBuffer::m_passCount
protected

Le nombre maximal de passes.

◆ m_passes

std::vector< Pass * > castor3d::PassBuffer::m_passes
protected

Les passes actuelles.

◆ m_passID

uint32_t castor3d::PassBuffer::m_passID { 1u }
protected

L'ID de la passe suivante.


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