Castor3D
0.11.0
Multiplatform 3D engine
|
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, RenderDevice const &device, 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 VkDescriptorSetLayoutBinding | createLayoutBinding () const |
Crée une attache de layout de set de descripteurs. Plus de détails... | |
C3D_API ashes::WriteDescriptorSet | getBinding () 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... | |
virtual C3D_API void | visit (PhongPass 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... | |
uint8_t * | getPtr () |
Le pointeur sur le tampon. Plus de détails... | |
VkDescriptorType | getType () const |
Le type de descripteur du tampon. Plus de détails... | |
Attributs publics statiques | |
static constexpr uint32_t | ExtendedDataSize = sizeof( RgbaColour ) * 11 |
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< OnPassChangedConnection > | m_connections |
uint32_t | m_passCount |
uint32_t | m_passID { 1u } |
C3D_API castor3d::PassBuffer::PassBuffer | ( | Engine & | engine, |
RenderDevice const & | device, | ||
uint32_t | count, | ||
uint32_t | size | ||
) |
Constructeur.
[in] | engine | Le moteur. |
[in] | device | Le device GPU. |
[in] | count | Le nombre maximal de passes. |
[in] | size | La taille d'une passe. |
Ajoute une passe au tampon.
[in] | pass | La passe. |
C3D_API void castor3d::PassBuffer::createBinding | ( | ashes::DescriptorSet & | descriptorSet, |
VkDescriptorSetLayoutBinding const & | binding | ||
) | const |
Crée une attache de set de descripteurs au point donné.
[in] | descriptorSet | Le set de descripteurs recevant l'attache. |
[in] | binding | L'attache de layout de set de descripteurs. |
C3D_API VkDescriptorSetLayoutBinding castor3d::PassBuffer::createLayoutBinding | ( | ) | const |
Crée une attache de layout de set de descripteurs.
|
protected |
|
protected |
C3D_API ashes::WriteDescriptorSet castor3d::PassBuffer::getBinding | ( | ) | const |
Crée le descriptor write pour ce tampon.
|
inline |
Le pointeur sur le tampon.
Références castor3d::ShaderBuffer::getPtr(), et m_buffer.
|
inline |
Le type de descripteur du tampon.
Références castor3d::ShaderBuffer::getType(), et m_buffer.
Supprime une pass du tampon.
[in] | pass | La passe. |
C3D_API void castor3d::PassBuffer::update | ( | ) |
Met à jour le tampon de passes.
Met les données de la passe dans le tampon.
[in] | pass | La passe. |
Réimplémentée dans castor3d::PhongPassBuffer, castor3d::SpecularGlossinessPassBuffer, et castor3d::MetallicRoughnessPassBuffer.
|
virtual |
Met les données de la passe dans le tampon.
[in] | pass | La passe. |
Réimplémentée dans castor3d::MetallicRoughnessPassBuffer.
|
virtual |
Met les données de la passe dans le tampon.
[in] | pass | La passe. |
Réimplémentée dans castor3d::SpecularGlossinessPassBuffer.
|
static |
|
protected |
|
protected |
Les connexions aux signaux de changement des passes actuelles.
|
protected |
Les passes actuelles.
|
protected |
Le nombre maximal de passes.
|
protected |
Les passes actuelles.
|
protected |
L'ID de la passe suivante.