Castor3D
..
|
Classe de base d'une passe d'un matériau. Plus de détails...
Classes | |
class | TextWriter |
Loader de Pass. Plus de détails... | |
Fonctions membres publiques | |
C3D_API void | Initialise () |
Initialise la passe et toutes ses dépendances. Plus de détails... | |
C3D_API void | Cleanup () |
Nettoie la passe et toutes ses dépendances. Plus de détails... | |
C3D_API void | BindTextures () |
Active les textures de la passe. Plus de détails... | |
C3D_API void | UnbindTextures () |
Désactive les textures de la passe. Plus de détails... | |
C3D_API void | AddTextureUnit (TextureUnitSPtr p_unit) |
Ajoute une unité de texture. Plus de détails... | |
C3D_API TextureUnitSPtr | GetTextureUnit (TextureChannel p_channel) const |
Récupère la TextureUnit au canal demandé. Plus de détails... | |
C3D_API void | DestroyTextureUnit (uint32_t p_index) |
Détruit la TextureUnit à l'index donné. Plus de détails... | |
C3D_API TextureUnitSPtr | GetTextureUnit (uint32_t p_index) const |
Récupère la TextureUnit à l'index donné. Plus de détails... | |
C3D_API bool | HasAlphaBlending () const |
Dit si la passe a besoin de mélange d'alpha. Plus de détails... | |
C3D_API void | UpdateRenderNode (PassRenderNodeUniforms &p_node) const |
Remplit les variables de shader du noeud de rendu donné. Plus de détails... | |
C3D_API void | PrepareTextures () |
Réduit les textures. Plus de détails... | |
C3D_API MaterialType | GetType () const |
C3D_API void | SetOpacity (float p_value) |
Définit la valeur alpha globale. Plus de détails... | |
TextureChannels const & | GetTextureFlags () const |
bool | HasAutomaticShader () const |
void | SetTwoSided (bool p_value) |
Définit le statut d'application aux deux faces. Plus de détails... | |
void | SetAlphaBlendMode (BlendMode p_value) |
Définit le mode de mélange alpha. Plus de détails... | |
void | SetColourBlendMode (BlendMode p_value) |
Définit le mode de mélange couleur. Plus de détails... | |
uint32_t | GetTextureUnitsCount () const |
bool | IsTwoSided () const |
float | GetOpacity () const |
BlendMode | GetAlphaBlendMode () const |
BlendMode | GetColourBlendMode () const |
auto | begin () const |
auto | begin () |
auto | end () const |
auto | end () |
Fonctions membres protégées | |
C3D_API | Pass (Material &p_parent) |
Constructeur. Plus de détails... | |
C3D_API | ~Pass () |
Destructeur. Plus de détails... | |
C3D_API bool | DoPrepareTexture (TextureChannel p_channel, uint32_t &p_index, TextureUnitSPtr &p_opacitySource, Castor::PxBufferBaseSPtr &p_opacity) |
Prépare une texture à être intégrée à la passe. Plus de détails... | |
C3D_API Castor::PxBufferBaseSPtr | DoPrepareTexture (TextureChannel p_channel, uint32_t &p_index) |
Prépare une texture à être intégrée à la passe. Plus de détails... | |
C3D_API void | DoPrepareOpacity (TextureUnitSPtr p_opacitySource, Castor::PxBufferBaseSPtr p_opacityImage, uint32_t &p_index) |
Prépare le canal d'opacité. Plus de détails... | |
C3D_API void | DoUpdateFlags () |
Met à jour les indicateurs de texture en fonction des unités de texture. Plus de détails... | |
Classe de base d'une passe d'un matériau.
Constructeur.
[in] | p_parent | Le matériau parent. |
|
protected |
Destructeur.
C3D_API void Castor3D::Pass::AddTextureUnit | ( | TextureUnitSPtr | p_unit | ) |
Ajoute une unité de texture.
[in] | p_unit | L'unité de texture. |
|
inline |
|
inline |
C3D_API void Castor3D::Pass::BindTextures | ( | ) |
Active les textures de la passe.
Référencé par Castor3D::DoBindPass().
C3D_API void Castor3D::Pass::Cleanup | ( | ) |
Nettoie la passe et toutes ses dépendances.
C3D_API void Castor3D::Pass::DestroyTextureUnit | ( | uint32_t | p_index | ) |
Détruit la TextureUnit à l'index donné.
[in] | p_index | L'index de la TextureUnit à détruire. |
|
protected |
Prépare le canal d'opacité.
[in] | p_opacitySource | L'unité de texture depuis laquelle l'opacité provient. |
[in] | p_opacityImage | Le canal alpha de p_opacitySource. |
[in,out] | p_index | L'index de la texture. |
Référencé par end().
|
protected |
Prépare une texture à être intégrée à la passe.
[in] | p_channel | Le canal de texture. |
[in,out] | p_index | L'index de la texture. |
[in,out] | p_opacitySource | Reçoit l'unité de texture si p_opacity est modifié. |
[in,out] | p_opacity | Reçoit le canal alpha de la texture. |
true
Si la texture possédait un canal alpha. Référencé par end().
|
protected |
Prépare une texture à être intégrée à la passe.
[in] | p_channel | Le canal de texture. |
[in,out] | p_index | L'index de la texture. |
|
protected |
Met à jour les indicateurs de texture en fonction des unités de texture.
Référencé par end().
|
inline |
|
inline |
Références C3D_API, DoPrepareOpacity(), DoPrepareTexture(), DoUpdateFlags(), et Castor3D::eNoBlend.
|
inline |
|
inline |
|
inline |
|
inline |
C3D_API TextureUnitSPtr Castor3D::Pass::GetTextureUnit | ( | TextureChannel | p_channel | ) | const |
Récupère la TextureUnit au canal demandé.
[in] | p_channel | Le canal. |
nullptr
si pas de TextureUnit au canal voulu. Référencé par Castor3D::DoBindPassOpacityMap(), et Castor3D::DoUnbindPassOpacityMap().
C3D_API TextureUnitSPtr Castor3D::Pass::GetTextureUnit | ( | uint32_t | p_index | ) | const |
Récupère la TextureUnit à l'index donné.
[in] | p_index | L'index voulu. |
|
inline |
C3D_API MaterialType Castor3D::Pass::GetType | ( | ) | const |
C3D_API bool Castor3D::Pass::HasAlphaBlending | ( | ) | const |
Dit si la passe a besoin de mélange d'alpha.
true
si au moins une unité de texture a un canal alpha.
|
inline |
true
si le shader de la passe est généré automatiquement. C3D_API void Castor3D::Pass::Initialise | ( | ) |
Initialise la passe et toutes ses dépendances.
|
inline |
C3D_API void Castor3D::Pass::PrepareTextures | ( | ) |
Réduit les textures.
|
inline |
Définit le mode de mélange alpha.
[in] | p_value | La nouvelle valeur. |
|
inline |
Définit le mode de mélange couleur.
[in] | p_value | La nouvelle valeur. |
C3D_API void Castor3D::Pass::SetOpacity | ( | float | p_value | ) |
Définit la valeur alpha globale.
[in] | p_value | La nouvelle valeur. |
|
inline |
Définit le statut d'application aux deux faces.
[in] | p_value | La nouvelle valeur. |
C3D_API void Castor3D::Pass::UnbindTextures | ( | ) |
Désactive les textures de la passe.
Référencé par Castor3D::DoUnbindPass().
C3D_API void Castor3D::Pass::UpdateRenderNode | ( | PassRenderNodeUniforms & | p_node | ) | const |
Remplit les variables de shader du noeud de rendu donné.
Référencé par Castor3D::DoBindPass().