Castor3D  ..
Fonctions membres publiques | Liste de tous les membres
Référence de la classe Castor3D::ShaderProgramCache

Cache utilisé pour garder les programmes de shaders. Il les garde et permet leur destruction au cours d'une boucle de rendu. Plus de détails...

+ Graphe d'héritage de Castor3D::ShaderProgramCache:
+ Graphe de collaboration de Castor3D::ShaderProgramCache:

Fonctions membres publiques

C3D_API ShaderProgramCache (Engine &p_engine)
 Constructeur. Plus de détails...
 
C3D_API ~ShaderProgramCache ()
 Destructeur. Plus de détails...
 
C3D_API void Clear ()
 Détruit tous les shaders du tableau de shaders à détruire. Plus de détails...
 
C3D_API void Cleanup ()
 Nettoie tous les shaders. Plus de détails...
 
C3D_API ShaderProgramSPtr GetNewProgram (bool p_initialise)
 Crée un nouveau programme. Plus de détails...
 
C3D_API ShaderProgramSPtr GetAutomaticProgram (RenderPass const &p_renderPass, TextureChannels const &p_textureFlags, ProgramFlags const &p_programFlags, SceneFlags const &p_sceneFlags, bool p_invertNormals)
 Cherche un programme automatiquement généré correspondant aux flags donnés. Plus de détails...
 
C3D_API void CreateTextureVariables (ShaderProgram &p_program, TextureChannels const &p_textureFlags, ProgramFlags const &p_programFlags) const
 Crée les frame variables relatives aux textures. Plus de détails...
 
void lock () const
 Locke le mutex de la collection. Plus de détails...
 
void unlock () const
 Délocke le mutex de la collection. Plus de détails...
 
ShaderProgramPtrArray::iterator begin ()
 Récupère un itérateur sur le début de la liste de shaders. Plus de détails...
 
ShaderProgramPtrArray::const_iterator begin () const
 Récupère un itérateur sur le début de la liste de shaders. Plus de détails...
 
ShaderProgramPtrArray::iterator end ()
 Récupère un itérateur sur la fin de la liste de shaders. Plus de détails...
 
ShaderProgramPtrArray::const_iterator end () const
 Récupère un itérateur sur la fin de la liste de shaders. Plus de détails...
 

Description détaillée

Cache utilisé pour garder les programmes de shaders. Il les garde et permet leur destruction au cours d'une boucle de rendu.

Auteur
Sylvain DOREMUS
Date
14/02/2010

Documentation des constructeurs et destructeur

◆ ShaderProgramCache()

C3D_API Castor3D::ShaderProgramCache::ShaderProgramCache ( Engine p_engine)
explicit

Constructeur.

Paramètres
[in]p_engineLe moteur

◆ ~ShaderProgramCache()

C3D_API Castor3D::ShaderProgramCache::~ShaderProgramCache ( )

Destructeur.

Documentation des fonctions membres

◆ begin() [1/2]

ShaderProgramPtrArray::iterator Castor3D::ShaderProgramCache::begin ( )
inline

Récupère un itérateur sur le début de la liste de shaders.

Renvoie
L4itérateur

◆ begin() [2/2]

ShaderProgramPtrArray::const_iterator Castor3D::ShaderProgramCache::begin ( ) const
inline

Récupère un itérateur sur le début de la liste de shaders.

Renvoie
L4itérateur

◆ Cleanup()

C3D_API void Castor3D::ShaderProgramCache::Cleanup ( )

Nettoie tous les shaders.

◆ Clear()

C3D_API void Castor3D::ShaderProgramCache::Clear ( )

Détruit tous les shaders du tableau de shaders à détruire.

◆ CreateTextureVariables()

C3D_API void Castor3D::ShaderProgramCache::CreateTextureVariables ( ShaderProgram p_program,
TextureChannels const &  p_textureFlags,
ProgramFlags const &  p_programFlags 
) const

Crée les frame variables relatives aux textures.

Paramètres
[in]p_programLe programme auquel le buffer est lié.
[in]p_textureFlagsUne combinaison de TextureChannel.
[in]p_programFlagsUne combinaison de ProgramFlag.

◆ end() [1/2]

ShaderProgramPtrArray::iterator Castor3D::ShaderProgramCache::end ( )
inline

Récupère un itérateur sur la fin de la liste de shaders.

Renvoie
L4itérateur

◆ end() [2/2]

ShaderProgramPtrArray::const_iterator Castor3D::ShaderProgramCache::end ( ) const
inline

Récupère un itérateur sur la fin de la liste de shaders.

Renvoie
L4itérateur

Références C3D_API.

◆ GetAutomaticProgram()

C3D_API ShaderProgramSPtr Castor3D::ShaderProgramCache::GetAutomaticProgram ( RenderPass const &  p_renderPass,
TextureChannels const &  p_textureFlags,
ProgramFlags const &  p_programFlags,
SceneFlags const &  p_sceneFlags,
bool  p_invertNormals 
)

Cherche un programme automatiquement généré correspondant aux flags donnés.

Paramètres
[in]p_renderPassLa passe a partir de laquelle est récupéré le code du programme.
[in]p_textureFlagsUne combinaison de TextureChannel.
[in]p_programFlagsUne combinaison de ProgramFlag.
[in]p_sceneFlagsLes indicateurs relatifs à la scène.
[in]p_invertNormalsDit si les normales doivent être inversées, dans le programme.
Renvoie
Le programme trouvé ou créé.

◆ GetNewProgram()

C3D_API ShaderProgramSPtr Castor3D::ShaderProgramCache::GetNewProgram ( bool  p_initialise)

Crée un nouveau programme.

Paramètres
[in]p_initialiseDit si on veut que le programme soit initialisé.
Renvoie
Le programme créé.

◆ lock()

void Castor3D::ShaderProgramCache::lock ( ) const
inline

Locke le mutex de la collection.

◆ unlock()

void Castor3D::ShaderProgramCache::unlock ( ) const
inline

Délocke le mutex de la collection.


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