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

Classe contenant le contexte de rendu. Plus de détails...

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

Fonctions membres publiques

C3D_API Context (RenderSystem &p_renderSystem, bool p_invertFinal)
 Constructeur. Plus de détails...
 
virtual C3D_API ~Context ()
 Destructeur. Plus de détails...
 
C3D_API bool Initialise (RenderWindow *p_window)
 Initialise le contexte. Plus de détails...
 
C3D_API void Cleanup ()
 Nettoie le contexte. Plus de détails...
 
C3D_API void SetCurrent ()
 Définit le contexte pour être celui de rendu actuel. Plus de détails...
 
C3D_API void EndCurrent ()
 Définit ce contexte pour ne pas être l'actuel. Plus de détails...
 
C3D_API void SwapBuffers ()
 Echange les buffers de rendu. Plus de détails...
 
C3D_API void RenderTexture (Castor::Size const &p_size, Texture const &p_texture)
 Rend la texture donnée dans le tampon d'image actuellement activé en dessin. Plus de détails...
 
C3D_API void RenderTexture (Castor::Size const &p_size, Texture const &p_texture, ShaderProgramSPtr p_program)
 Dessine la texture donnée. Plus de détails...
 
virtual C3D_API void UpdateFullScreen (bool val)=0
 Change le statut de plein écran. Plus de détails...
 
bool IsInitialised () const
 Dit si le contexte est initialisé Plus de détails...
 
bool IsMultiSampling () const
 Dit si le contexte utilise le multisampling. Plus de détails...
 
void SetMultiSampling (bool p_value)
 Définit le statut du multisampling. Plus de détails...
 
DepthStencilStateSPtr GetNoDepthState () const
 Récupère le DepthStencilState sans test de profondeur ni écriture dans le tampon de profondeur. Plus de détails...
 
DepthStencilStateSPtr GetNoDepthWriteState () const
 Récupère le DepthStencilState sans écriture dans le tampon de profondeur. Plus de détails...
 
RenderWindow const & GetWindow () const
 
RenderWindowGetWindow ()
 

Fonctions membres protégées

virtual C3D_API bool DoInitialise ()=0
 Initialise le contexte. Plus de détails...
 
virtual C3D_API void DoCleanup ()=0
 Nettoie le contexte. Plus de détails...
 
virtual C3D_API void DoDestroy ()=0
 Détruit le contexte sur le GPU. Plus de détails...
 
virtual C3D_API void DoSetCurrent ()=0
 Définit le contexte pour être celui de rendu actuel. Plus de détails...
 
virtual C3D_API void DoEndCurrent ()=0
 Définit ce contexte pour ne pas être l'actuel. Plus de détails...
 
virtual C3D_API void DoSwapBuffers ()=0
 Echange les buffers de rendu. Plus de détails...
 
C3D_API void DoRenderTexture (Castor::Size const &p_size, Texture const &p_texture, GeometryBuffersSPtr p_geometryBuffers, ShaderProgramSPtr p_program)
 Dessine la texture donnée. Plus de détails...
 

Attributs protégés

RenderWindowm_window
 RenderWindow associée à ce contexte. Plus de détails...
 
bool m_initialised
 Dit si le contexte est initialisé Plus de détails...
 
bool m_bMultiSampling
 Dit si le contexte est actuellement configuré pour utiliser le multisampling. Plus de détails...
 
ShaderProgramWPtr m_renderTextureProgram
 Le ShaderProgram utilisé lors du rendu d'un tampon vers un autre. Plus de détails...
 
OneIntFrameVariableSPtr m_mapDiffuse
 La frame variable de l'image diffuse, dans le shader buffer-to-buffer. Plus de détails...
 
GeometryBuffersSPtr m_geometryBuffers
 Le GeometryBuffers utilisé lors du dessin d'une texture dans le tampon d'image courant. Plus de détails...
 
Viewport m_viewport
 Le Viewport utilisé lors du dessin d'une texture dans un tampon d'image. Plus de détails...
 
Castor3D::BufferDeclaration m_declaration
 Déclaration des éléments d'un vertex. Plus de détails...
 
std::array< Castor3D::BufferElementGroupSPtr, 6 > m_arrayVertex
 Tableau de vertex (définition du quad) Plus de détails...
 
Castor::real m_pBuffer [24]
 6 * [2(vertex position) 2(texture coordinates)] Plus de détails...
 
DepthStencilStateSPtr m_pDsStateNoDepth
 Le DepthStencilState sans test ni écriture de profondeur. Plus de détails...
 
DepthStencilStateSPtr m_pDsStateNoDepthWrite
 Le DepthStencilState sans écriture de profondeur. Plus de détails...
 
VertexBufferUPtr m_vertexBuffer
 Le tampon de sommets. Plus de détails...
 
std::array< GpuQuerySPtr, 2 > m_timerQuery
 Les requêtes GPU de temps écoulé. Plus de détails...
 
uint32_t m_queryIndex = 0
 L'index de la requête active. Plus de détails...
 

Description détaillée

Classe contenant le contexte de rendu.

Auteur
Sylvain DOREMUS
Date
03/01/2011
Version
0.6.1.1

Documentation des constructeurs et destructeur

C3D_API Castor3D::Context::Context ( RenderSystem p_renderSystem,
bool  p_invertFinal 
)

Constructeur.

Paramètres
[in]p_renderSystemLe RenderSystem.
[in]p_invertFinalDit si on inverse l'image du rendu final.
virtual C3D_API Castor3D::Context::~Context ( )
virtual

Destructeur.

Documentation des fonctions membres

C3D_API void Castor3D::Context::Cleanup ( )

Nettoie le contexte.

virtual C3D_API void Castor3D::Context::DoCleanup ( )
protectedpure virtual

Nettoie le contexte.

Référencé par GetWindow().

+ Voici le graphe des appelants de cette fonction :

virtual C3D_API void Castor3D::Context::DoDestroy ( )
protectedpure virtual

Détruit le contexte sur le GPU.

Référencé par GetWindow().

+ Voici le graphe des appelants de cette fonction :

virtual C3D_API void Castor3D::Context::DoEndCurrent ( )
protectedpure virtual

Définit ce contexte pour ne pas être l'actuel.

Référencé par GetWindow().

+ Voici le graphe des appelants de cette fonction :

virtual C3D_API bool Castor3D::Context::DoInitialise ( )
protectedpure virtual

Initialise le contexte.

Renvoie
true si initialisé correctement

Référencé par GetWindow().

+ Voici le graphe des appelants de cette fonction :

C3D_API void Castor3D::Context::DoRenderTexture ( Castor::Size const &  p_size,
Texture const &  p_texture,
GeometryBuffersSPtr  p_geometryBuffers,
ShaderProgramSPtr  p_program 
)
protected

Dessine la texture donnée.

Paramètres
[in]p_sizeLa taille du viewport de rendu.
[in]p_textureLa texture.
[in]p_geometryBuffersLes tampons de géométrie utilisés pour dessiner la texture.
[in]p_programLe programme utilisé pour dessiner la texture.

Référencé par GetWindow().

+ Voici le graphe des appelants de cette fonction :

virtual C3D_API void Castor3D::Context::DoSetCurrent ( )
protectedpure virtual

Définit le contexte pour être celui de rendu actuel.

Référencé par GetWindow().

+ Voici le graphe des appelants de cette fonction :

virtual C3D_API void Castor3D::Context::DoSwapBuffers ( )
protectedpure virtual

Echange les buffers de rendu.

Référencé par GetWindow().

+ Voici le graphe des appelants de cette fonction :

C3D_API void Castor3D::Context::EndCurrent ( )

Définit ce contexte pour ne pas être l'actuel.

DepthStencilStateSPtr Castor3D::Context::GetNoDepthState ( ) const
inline

Récupère le DepthStencilState sans test de profondeur ni écriture dans le tampon de profondeur.

Références m_pDsStateNoDepth.

DepthStencilStateSPtr Castor3D::Context::GetNoDepthWriteState ( ) const
inline

Récupère le DepthStencilState sans écriture dans le tampon de profondeur.

Références m_pDsStateNoDepthWrite.

RenderWindow const& Castor3D::Context::GetWindow ( ) const
inline
Renvoie
La fenêtre de rendu.

Références m_window.

RenderWindow& Castor3D::Context::GetWindow ( )
inline
Renvoie
La fenêtre de rendu.

Références DoCleanup(), DoDestroy(), DoEndCurrent(), DoInitialise(), DoRenderTexture(), DoSetCurrent(), DoSwapBuffers(), et m_window.

+ Voici le graphe d'appel pour cette fonction :

C3D_API bool Castor3D::Context::Initialise ( RenderWindow p_window)

Initialise le contexte.

Paramètres
[in]p_windowLa RenderWindow
Renvoie
true si initialisé correctement
bool Castor3D::Context::IsInitialised ( ) const
inline

Dit si le contexte est initialisé

Références m_initialised.

bool Castor3D::Context::IsMultiSampling ( ) const
inline

Dit si le contexte utilise le multisampling.

Références m_bMultiSampling.

C3D_API void Castor3D::Context::RenderTexture ( Castor::Size const &  p_size,
Texture const &  p_texture 
)

Rend la texture donnée dans le tampon d'image actuellement activé en dessin.

Paramètres
[in]p_sizeLa taille du viewport de rendu.
[in]p_textureLa texture.
C3D_API void Castor3D::Context::RenderTexture ( Castor::Size const &  p_size,
Texture const &  p_texture,
ShaderProgramSPtr  p_program 
)

Dessine la texture donnée.

Paramètres
[in]p_sizeLa taille du viewport de rendu.
[in]p_textureLa texture.
[in]p_programLe programme utilisé pour dessiner la texture.
C3D_API void Castor3D::Context::SetCurrent ( )

Définit le contexte pour être celui de rendu actuel.

void Castor3D::Context::SetMultiSampling ( bool  p_value)
inline

Définit le statut du multisampling.

Paramètres
[in]p_valueLe statut

Références m_bMultiSampling.

C3D_API void Castor3D::Context::SwapBuffers ( )

Echange les buffers de rendu.

virtual C3D_API void Castor3D::Context::UpdateFullScreen ( bool  val)
pure virtual

Change le statut de plein écran.

Paramètres
[in]valLe nouveau statut de plein écran

Documentation des données membres

std::array< Castor3D::BufferElementGroupSPtr, 6 > Castor3D::Context::m_arrayVertex
protected

Tableau de vertex (définition du quad)

bool Castor3D::Context::m_bMultiSampling
protected

Dit si le contexte est actuellement configuré pour utiliser le multisampling.

Référencé par IsMultiSampling(), et SetMultiSampling().

Castor3D::BufferDeclaration Castor3D::Context::m_declaration
protected

Déclaration des éléments d'un vertex.

GeometryBuffersSPtr Castor3D::Context::m_geometryBuffers
protected

Le GeometryBuffers utilisé lors du dessin d'une texture dans le tampon d'image courant.

bool Castor3D::Context::m_initialised
protected

Dit si le contexte est initialisé

Référencé par IsInitialised().

OneIntFrameVariableSPtr Castor3D::Context::m_mapDiffuse
protected

La frame variable de l'image diffuse, dans le shader buffer-to-buffer.

Castor::real Castor3D::Context::m_pBuffer[24]
protected

6 * [2(vertex position) 2(texture coordinates)]

DepthStencilStateSPtr Castor3D::Context::m_pDsStateNoDepth
protected

Le DepthStencilState sans test ni écriture de profondeur.

Référencé par GetNoDepthState().

DepthStencilStateSPtr Castor3D::Context::m_pDsStateNoDepthWrite
protected

Le DepthStencilState sans écriture de profondeur.

Référencé par GetNoDepthWriteState().

uint32_t Castor3D::Context::m_queryIndex = 0
protected

L'index de la requête active.

ShaderProgramWPtr Castor3D::Context::m_renderTextureProgram
protected

Le ShaderProgram utilisé lors du rendu d'un tampon vers un autre.

std::array< GpuQuerySPtr, 2 > Castor3D::Context::m_timerQuery
protected

Les requêtes GPU de temps écoulé.

VertexBufferUPtr Castor3D::Context::m_vertexBuffer
protected

Le tampon de sommets.

Viewport Castor3D::Context::m_viewport
protected

Le Viewport utilisé lors du dessin d'une texture dans un tampon d'image.

RenderWindow* Castor3D::Context::m_window
protected

RenderWindow associée à ce contexte.

Référencé par GetWindow().


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