Castor3D  ..
Classes | Fonctions membres publiques | Fonctions membres protégées | Attributs protégés | Liste de tous les membres
Référence de la classe Castor3D::OverlayRenderer

Le renderer d'incrustation. Plus de détails...

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

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 RenderNodeDoGetPanelProgram (Pass &p_pass)
 Récupère un programme de panneau compilé en utilisant la passe donnée. Plus de détails...
 
C3D_API RenderNodeDoGetTextProgram (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< OverlayGeometryBuffersm_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 *, RenderNodem_mapPanelPrograms
 Les programmes de shader utilisés pour rendre un panneau (utilisé pour les bords aussi) Plus de détails...
 
std::map< Pass *, RenderNodem_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...
 

Description détaillée

Le renderer d'incrustation.

Auteur
Sylvain DOREMUS
Date
09/02/2010

Documentation des constructeurs et destructeur

C3D_API Castor3D::OverlayRenderer::OverlayRenderer ( RenderSystem p_renderSystem)

Constructeur.

C3D_API Castor3D::OverlayRenderer::~OverlayRenderer ( )

Destructeur.

Documentation des fonctions membres

C3D_API void Castor3D::OverlayRenderer::BeginRender ( Castor::Size const &  p_size)

Commence le rendu des incrustations.

Paramètres
[in]p_sizeLa taille de la fenêtre de rendu
C3D_API void Castor3D::OverlayRenderer::Cleanup ( )

Nettoie le renderer.

C3D_API ShaderProgramSPtr Castor3D::OverlayRenderer::DoCreateOverlayProgram ( uint32_t  p_flags)
protected

Crée un programme shader pour les rendu d'incrustations.

Renvoie
Le programme créé.
C3D_API OverlayGeometryBuffers Castor3D::OverlayRenderer::DoCreateTextGeometryBuffers ( )
protected

Crée un GeometryBuffers pouvant contenir 1000 caractères.

Remarques
Ajoute de GeometryBuffers au tableau de GeometryBuffers de texte.
Renvoie
Le GeometryBuffers créé.
C3D_API void Castor3D::OverlayRenderer::DoDrawItem ( Material p_material,
OverlayGeometryBuffers const &  p_geometryBuffers,
uint32_t  p_count 
)
protected

Fonction de dessin d'une incrustation.

Paramètres
[in]p_materialLe matériau.
[in]p_geometryBuffersLes buffer de la géométrie de l'incrustation.
[in]p_countLe nombre de sommets.
C3D_API void Castor3D::OverlayRenderer::DoDrawItem ( Pass p_pass,
GeometryBuffers const &  p_geometryBuffers,
uint32_t  p_count 
)
protected

Fonction de dessin d'une incrustation.

Paramètres
[in]p_passLa passe.
[in]p_geometryBuffersLes buffer de la géométrie de l'incrustation.
[in]p_countLe nombre de sommets.
C3D_API void Castor3D::OverlayRenderer::DoDrawItem ( Pass p_pass,
GeometryBuffers const &  p_geometryBuffers,
Texture const &  p_texture,
Sampler const &  p_sampler,
uint32_t  p_count 
)
protected

Fonction de dessin d'une incrustation texte.

Paramètres
[in]p_passLa passe.
[in]p_geometryBuffersLes buffer de la géométrie de l'incrustation.
[in]p_textureLa texture de polices.
[in]p_samplerL'échantillonneur de la texture.
[in]p_countLe nombre de sommets.
C3D_API OverlayGeometryBuffers Castor3D::OverlayRenderer::DoFillTextPart ( int32_t  p_count,
TextOverlay::VertexArray::const_iterator &  p_it,
uint32_t &  p_index 
)
protected

Remplit un GeometryBuffers d'une partie d'un tableau de sommets pour texte.

Paramètres
[in]p_countLe nombre de sommets à copier dans le GeometryBuffers
[in]p_itLe début du tableau de sommets
[in]p_indexL'indice courant dans le tableau de GeometryBuffers de texte
Renvoie
Le GeometryBuffers utilisé.
C3D_API RenderNode& Castor3D::OverlayRenderer::DoGetPanelProgram ( Pass p_pass)
protected

Récupère un programme de panneau compilé en utilisant la passe donnée.

Paramètres
[in]p_passLa passe.
Renvoie
Le programme.
C3D_API ShaderProgramSPtr Castor3D::OverlayRenderer::DoGetPanelProgram ( uint32_t  p_flags)
protected

Récupère un programme de panneau compilé en utilisant les indicateurs de texture donnés.

Paramètres
[in]p_flagsCombinaison de eTEXTURE_CHANNEL.
Renvoie
Le programme.
C3D_API ShaderProgramSPtr Castor3D::OverlayRenderer::DoGetProgram ( uint32_t  p_flags)
protected

Récupère un programme compilé en utilisant les indicateurs donnés.

Paramètres
[in]p_flagsCombinaison de eTEXTURE_CHANNEL.
Renvoie
Le programme
C3D_API RenderNode& Castor3D::OverlayRenderer::DoGetTextProgram ( Pass p_pass)
protected

Récupère un programme de texte compilé en utilisant la passe donnée.

Paramètres
[in]p_passCombinaison de eTEXTURE_CHANNEL.
Renvoie
Le programme.
C3D_API ShaderProgramSPtr Castor3D::OverlayRenderer::DoGetTextProgram ( uint32_t  p_flags)
protected

Récupère un programme de texte compilé en utilisant les indicateurs de texture donnés.

Paramètres
[in]p_flagsCombinaison de eTEXTURE_CHANNEL.
Renvoie
Le programme.
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.

Castor::Size const& Castor3D::OverlayRenderer::GetSize ( ) const
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.

bool Castor3D::OverlayRenderer::IsSizeChanged ( ) const
inline
Renvoie
true si la taille de rendu a changé.

Références m_sizeChanged.

Documentation des données membres

OverlayGeometryBuffers Castor3D::OverlayRenderer::m_borderGeometryBuffers
protected

Tampons de géometrie pour les bordures.

std::array< Castor3D::BufferElementGroupSPtr, 8 * 6 > Castor3D::OverlayRenderer::m_borderVertex
protected

Tableau de vertex (définition du quad) pour les incrustations bordure.

VertexBufferUPtr Castor3D::OverlayRenderer::m_borderVertexBuffer
protected

Tampons de sommets pour les bordures.

BufferDeclaration Castor3D::OverlayRenderer::m_declaration
protected

La déclaration des éléments du tampon.

std::map< Pass *, RenderNode > Castor3D::OverlayRenderer::m_mapPanelPrograms
protected

Les programmes de shader utilisés pour rendre un panneau (utilisé pour les bords aussi)

OneIntFrameVariableSPtr Castor3D::OverlayRenderer::m_mapText
protected

Echantillonneur de la texture de texte.

std::map< Pass *, RenderNode > Castor3D::OverlayRenderer::m_mapTextPrograms
protected

Les programmes de shader utilisés pour rendre les textes.

OverlayGeometryBuffers Castor3D::OverlayRenderer::m_panelGeometryBuffers
protected

Tampons de géometrie pour les panneaux.

std::array< Castor3D::BufferElementGroupSPtr, 6 > Castor3D::OverlayRenderer::m_panelVertex
protected

Tableau de vertex (définition du quad) pour les incrustations panneau.

VertexBufferUPtr Castor3D::OverlayRenderer::m_panelVertexBuffer
protected

Tampons de sommets pour les panneaux.

int Castor3D::OverlayRenderer::m_previousBorderZIndex
protected

Le z-index du précedent BorderPanelOverlay rendu.

Castor::String Castor3D::OverlayRenderer::m_previousCaption
protected

Le texte rendu précédemment.

int Castor3D::OverlayRenderer::m_previousPanelZIndex
protected

Le z-index du précedent PanelOverlay rendu.

int Castor3D::OverlayRenderer::m_previousTextZIndex
protected

Le z-index du précedent TextOverlay rendu.

std::map< uint32_t, ShaderProgramSPtr > Castor3D::OverlayRenderer::m_programs
protected

Les programmes de shader.

Castor::Size Castor3D::OverlayRenderer::m_size
protected

Les dimensions de la cible du rendu courant.

Référencé par GetSize().

bool Castor3D::OverlayRenderer::m_sizeChanged
protected

Dit si les dimension du rendu ont changé.

Référencé par IsSizeChanged().

BufferDeclaration Castor3D::OverlayRenderer::m_textDeclaration
protected

La déclaration des éléments du tampon, pour les textes.

std::vector< OverlayGeometryBuffers > Castor3D::OverlayRenderer::m_textsGeometryBuffers
protected

Les GeometryBuffers utilisé pour rendre les textes.

std::vector< VertexBufferUPtr > Castor3D::OverlayRenderer::m_textsVertexBuffers
protected

Les tampons de sommets utilisés pour rendre les textes.

BlendStateWPtr Castor3D::OverlayRenderer::m_wpBlendState
protected

L'état de mélange pour les incrustations.

DepthStencilStateWPtr Castor3D::OverlayRenderer::m_wpDepthStencilState
protected

L'état de profoundeur et stencil pour les incrustations.

RasteriserStateWPtr Castor3D::OverlayRenderer::m_wpRasteriserState
protected

L'état de rastérisation pour les incrustations.


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