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 &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 initialise)
 Crée un nouveau programme. Plus de détails...
 
C3D_API ShaderProgramSPtr getAutomaticProgram (RenderPass const &renderPass, PassFlags const &passFlags, TextureChannels const &textureFlags, ProgramFlags const &programFlags, SceneFlags const &sceneFlags, ComparisonFunc alphaFunc, bool invertNormals)
 Cherche un programme automatiquement généré correspondant aux flags donnés. Plus de détails...
 
C3D_API void createTextureVariables (ShaderProgram &program, PassFlags const &passFlags, TextureChannels const &textureFlags, ProgramFlags const &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 engine)
explicit

Constructeur.

Paramètres
[in]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 program,
PassFlags const &  passFlags,
TextureChannels const &  textureFlags,
ProgramFlags const &  programFlags 
) const

Crée les frame variables relatives aux textures.

Paramètres
[in]programLe programme auquel le buffer est lié.
[in]passFlagsUne combinaison de PassFlag.
[in]textureFlagsUne combinaison de TextureChannel.
[in]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 &  renderPass,
PassFlags const &  passFlags,
TextureChannels const &  textureFlags,
ProgramFlags const &  programFlags,
SceneFlags const &  sceneFlags,
ComparisonFunc  alphaFunc,
bool  invertNormals 
)

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

Paramètres
[in]renderPassLa passe a partir de laquelle est récupéré le code du programme.
[in]passFlagsUne combinaison de PassFlag.
[in]textureFlagsUne combinaison de TextureChannel.
[in]programFlagsUne combinaison de ProgramFlag.
[in]sceneFlagsLes indicateurs relatifs à la scène.
[in]alphaFuncLa fonction de test alpha.
[in]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  initialise)

Crée un nouveau programme.

Paramètres
[in]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 :