Castor3D
..
|
Le renderer d'incrustation. Plus de détails...
Classes | |
struct | OverlayGeometryBuffers |
Contient les deux geometry buffers utilisés pour dessiner les overlays. Plus de détails... | |
Fonctions membres publiques | |
C3D_API | OverlayRenderer (RenderSystem &p_renderSystem) |
Constructeur. Plus de détails... | |
C3D_API | ~OverlayRenderer () |
Destructeur. Plus de détails... | |
C3D_API void | Initialise () |
Initialise les tampons. Plus de détails... | |
C3D_API void | Cleanup () |
Nettoie le renderer. Plus de détails... | |
C3D_API void | DrawPanel (PanelOverlay &p_pPanelOverlay) |
Fonction de dessin d'un PanelOverlay. Plus de détails... | |
C3D_API void | DrawBorderPanel (BorderPanelOverlay &p_pBorderPanelOverlay) |
Fonction de dessin d'un BorderPanelOverlay. Plus de détails... | |
C3D_API void | DrawText (TextOverlay &p_pTextPanelOverlay) |
Fonction de dessin d'un TextOverlay. Plus de détails... | |
C3D_API void | BeginRender (Castor::Size const &p_size) |
Commence le rendu des incrustations. Plus de détails... | |
C3D_API void | EndRender () |
Termine le rendu des incrustations. Plus de détails... | |
Castor::Size const & | GetSize () const |
Récupère les dimensions de la cible du rendu courant. Plus de détails... | |
bool | IsSizeChanged () const |
Fonctions membres protégées | |
C3D_API RenderNode & | DoGetPanelProgram (Pass &p_pass) |
Récupère un programme de panneau compilé en utilisant la passe donnée. Plus de détails... | |
C3D_API RenderNode & | DoGetTextProgram (Pass &p_pass) |
Récupère un programme de texte compilé en utilisant la passe donnée. Plus de détails... | |
C3D_API ShaderProgramSPtr | DoGetPanelProgram (uint32_t p_flags) |
Récupère un programme de panneau compilé en utilisant les indicateurs de texture donnés. Plus de détails... | |
C3D_API ShaderProgramSPtr | DoGetTextProgram (uint32_t p_flags) |
Récupère un programme de texte compilé en utilisant les indicateurs de texture donnés. Plus de détails... | |
C3D_API ShaderProgramSPtr | DoGetProgram (uint32_t p_flags) |
Récupère un programme compilé en utilisant les indicateurs donnés. Plus de détails... | |
C3D_API OverlayGeometryBuffers | DoCreateTextGeometryBuffers () |
Crée un GeometryBuffers pouvant contenir 1000 caractères. Plus de détails... | |
C3D_API void | DoDrawItem (Material &p_material, OverlayGeometryBuffers const &p_geometryBuffers, uint32_t p_count) |
Fonction de dessin d'une incrustation. Plus de détails... | |
C3D_API void | DoDrawItem (Pass &p_pass, GeometryBuffers const &p_geometryBuffers, uint32_t p_count) |
Fonction de dessin d'une incrustation. Plus de détails... | |
C3D_API void | DoDrawItem (Pass &p_pass, GeometryBuffers const &p_geometryBuffers, Texture const &p_texture, Sampler const &p_sampler, uint32_t p_count) |
Fonction de dessin d'une incrustation texte. Plus de détails... | |
C3D_API OverlayGeometryBuffers | DoFillTextPart (int32_t p_count, TextOverlay::VertexArray::const_iterator &p_it, uint32_t &p_index) |
Remplit un GeometryBuffers d'une partie d'un tableau de sommets pour texte. Plus de détails... | |
C3D_API ShaderProgramSPtr | DoCreateOverlayProgram (uint32_t p_flags) |
Crée un programme shader pour les rendu d'incrustations. Plus de détails... | |
Attributs protégés | |
VertexBufferUPtr | m_panelVertexBuffer |
Tampons de sommets pour les panneaux. Plus de détails... | |
VertexBufferUPtr | m_borderVertexBuffer |
Tampons de sommets pour les bordures. Plus de détails... | |
std::vector< VertexBufferUPtr > | m_textsVertexBuffers |
Les tampons de sommets utilisés pour rendre les textes. Plus de détails... | |
OverlayGeometryBuffers | m_panelGeometryBuffers |
Tampons de géometrie pour les panneaux. Plus de détails... | |
OverlayGeometryBuffers | m_borderGeometryBuffers |
Tampons de géometrie pour les bordures. Plus de détails... | |
std::vector< OverlayGeometryBuffers > | m_textsGeometryBuffers |
Les GeometryBuffers utilisé pour rendre les textes. Plus de détails... | |
BufferDeclaration | m_declaration |
La déclaration des éléments du tampon. Plus de détails... | |
BufferDeclaration | m_textDeclaration |
La déclaration des éléments du tampon, pour les textes. Plus de détails... | |
Castor::Size | m_size |
Les dimensions de la cible du rendu courant. Plus de détails... | |
std::map< Pass *, RenderNode > | m_mapPanelPrograms |
Les programmes de shader utilisés pour rendre un panneau (utilisé pour les bords aussi) Plus de détails... | |
std::map< Pass *, RenderNode > | m_mapTextPrograms |
Les programmes de shader utilisés pour rendre les textes. Plus de détails... | |
std::map< uint32_t, ShaderProgramSPtr > | m_programs |
Les programmes de shader. Plus de détails... | |
OneIntFrameVariableSPtr | m_mapText |
Echantillonneur de la texture de texte. Plus de détails... | |
int | m_previousBorderZIndex |
Le z-index du précedent BorderPanelOverlay rendu. Plus de détails... | |
int | m_previousPanelZIndex |
Le z-index du précedent PanelOverlay rendu. Plus de détails... | |
int | m_previousTextZIndex |
Le z-index du précedent TextOverlay rendu. Plus de détails... | |
Castor::String | m_previousCaption |
Le texte rendu précédemment. Plus de détails... | |
std::array< Castor3D::BufferElementGroupSPtr, 6 > | m_panelVertex |
Tableau de vertex (définition du quad) pour les incrustations panneau. Plus de détails... | |
std::array< Castor3D::BufferElementGroupSPtr, 8 *6 > | m_borderVertex |
Tableau de vertex (définition du quad) pour les incrustations bordure. Plus de détails... | |
bool | m_sizeChanged |
Dit si les dimension du rendu ont changé. Plus de détails... | |
BlendStateWPtr | m_wpBlendState |
L'état de mélange pour les incrustations. Plus de détails... | |
DepthStencilStateWPtr | m_wpDepthStencilState |
L'état de profoundeur et stencil pour les incrustations. Plus de détails... | |
RasteriserStateWPtr | m_wpRasteriserState |
L'état de rastérisation pour les incrustations. Plus de détails... | |
Le renderer d'incrustation.
C3D_API Castor3D::OverlayRenderer::OverlayRenderer | ( | RenderSystem & | p_renderSystem | ) |
Constructeur.
C3D_API Castor3D::OverlayRenderer::~OverlayRenderer | ( | ) |
Destructeur.
C3D_API void Castor3D::OverlayRenderer::BeginRender | ( | Castor::Size const & | p_size | ) |
Commence le rendu des incrustations.
[in] | p_size | La taille de la fenêtre de rendu |
C3D_API void Castor3D::OverlayRenderer::Cleanup | ( | ) |
Nettoie le renderer.
|
protected |
Crée un programme shader pour les rendu d'incrustations.
|
protected |
Crée un GeometryBuffers pouvant contenir 1000 caractères.
|
protected |
Fonction de dessin d'une incrustation.
[in] | p_material | Le matériau. |
[in] | p_geometryBuffers | Les buffer de la géométrie de l'incrustation. |
[in] | p_count | Le nombre de sommets. |
|
protected |
Fonction de dessin d'une incrustation.
[in] | p_pass | La passe. |
[in] | p_geometryBuffers | Les buffer de la géométrie de l'incrustation. |
[in] | p_count | Le nombre de sommets. |
|
protected |
Fonction de dessin d'une incrustation texte.
[in] | p_pass | La passe. |
[in] | p_geometryBuffers | Les buffer de la géométrie de l'incrustation. |
[in] | p_texture | La texture de polices. |
[in] | p_sampler | L'échantillonneur de la texture. |
[in] | p_count | Le nombre de sommets. |
|
protected |
Remplit un GeometryBuffers d'une partie d'un tableau de sommets pour texte.
[in] | p_count | Le nombre de sommets à copier dans le GeometryBuffers |
[in] | p_it | Le début du tableau de sommets |
[in] | p_index | L'indice courant dans le tableau de GeometryBuffers de texte |
|
protected |
Récupère un programme de panneau compilé en utilisant la passe donnée.
[in] | p_pass | La passe. |
|
protected |
Récupère un programme de panneau compilé en utilisant les indicateurs de texture donnés.
[in] | p_flags | Combinaison de eTEXTURE_CHANNEL. |
|
protected |
Récupère un programme compilé en utilisant les indicateurs donnés.
[in] | p_flags | Combinaison de eTEXTURE_CHANNEL. |
|
protected |
Récupère un programme de texte compilé en utilisant la passe donnée.
[in] | p_pass | Combinaison de eTEXTURE_CHANNEL. |
|
protected |
Récupère un programme de texte compilé en utilisant les indicateurs de texture donnés.
[in] | p_flags | Combinaison de eTEXTURE_CHANNEL. |
C3D_API void Castor3D::OverlayRenderer::DrawBorderPanel | ( | BorderPanelOverlay & | p_pBorderPanelOverlay | ) |
Fonction de dessin d'un BorderPanelOverlay.
C3D_API void Castor3D::OverlayRenderer::DrawPanel | ( | PanelOverlay & | p_pPanelOverlay | ) |
Fonction de dessin d'un PanelOverlay.
C3D_API void Castor3D::OverlayRenderer::DrawText | ( | TextOverlay & | p_pTextPanelOverlay | ) |
Fonction de dessin d'un TextOverlay.
C3D_API void Castor3D::OverlayRenderer::EndRender | ( | ) |
Termine le rendu des incrustations.
|
inline |
Récupère les dimensions de la cible du rendu courant.
Références m_size.
C3D_API void Castor3D::OverlayRenderer::Initialise | ( | ) |
Initialise les tampons.
|
inline |
Références m_sizeChanged.
|
protected |
Tampons de géometrie pour les bordures.
|
protected |
Tableau de vertex (définition du quad) pour les incrustations bordure.
|
protected |
Tampons de sommets pour les bordures.
|
protected |
La déclaration des éléments du tampon.
|
protected |
Les programmes de shader utilisés pour rendre un panneau (utilisé pour les bords aussi)
|
protected |
Echantillonneur de la texture de texte.
|
protected |
Les programmes de shader utilisés pour rendre les textes.
|
protected |
Tampons de géometrie pour les panneaux.
|
protected |
Tableau de vertex (définition du quad) pour les incrustations panneau.
|
protected |
Tampons de sommets pour les panneaux.
|
protected |
Le z-index du précedent BorderPanelOverlay rendu.
|
protected |
Le texte rendu précédemment.
|
protected |
Le z-index du précedent PanelOverlay rendu.
|
protected |
Le z-index du précedent TextOverlay rendu.
|
protected |
Les programmes de shader.
|
protected |
Les dimensions de la cible du rendu courant.
Référencé par GetSize().
|
protected |
Dit si les dimension du rendu ont changé.
Référencé par IsSizeChanged().
|
protected |
La déclaration des éléments du tampon, pour les textes.
|
protected |
Les GeometryBuffers utilisé pour rendre les textes.
|
protected |
Les tampons de sommets utilisés pour rendre les textes.
|
protected |
L'état de mélange pour les incrustations.
|
protected |
L'état de profoundeur et stencil pour les incrustations.
|
protected |
L'état de rastérisation pour les incrustations.