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...
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
◆ ShaderProgramCache()
C3D_API castor3d::ShaderProgramCache::ShaderProgramCache |
( |
Engine & |
engine | ) |
|
|
explicit |
◆ ~ShaderProgramCache()
C3D_API castor3d::ShaderProgramCache::~ShaderProgramCache |
( |
| ) |
|
◆ 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] | program | Le programme auquel le buffer est lié. |
[in] | passFlags | Une combinaison de PassFlag. |
[in] | textureFlags | Une combinaison de TextureChannel. |
[in] | programFlags | Une 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] | renderPass | La passe a partir de laquelle est récupéré le code du programme. |
[in] | passFlags | Une combinaison de PassFlag. |
[in] | textureFlags | Une combinaison de TextureChannel. |
[in] | programFlags | Une combinaison de ProgramFlag. |
[in] | sceneFlags | Les indicateurs relatifs à la scène. |
[in] | alphaFunc | La fonction de test alpha. |
[in] | invertNormals | Dit 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] | initialise | Dit 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 :