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::RenderLoopabstract

Classe de base d'une boucle de rendu. Plus de détails...

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

Fonctions membres publiques

C3D_API RenderLoop (Engine &p_engine, RenderSystem *p_renderSystem, uint32_t p_wantedFPS)
 Constructeur. Plus de détails...
 
virtual C3D_API ~RenderLoop ()
 Destructeur. Plus de détails...
 
C3D_API void Cleanup ()
 Nettoie la boucle de rendu. Plus de détails...
 
C3D_API void StartRendering ()
 Commence le rendu. Plus de détails...
 
C3D_API void RenderSyncFrame ()
 Dessine une image. Plus de détails...
 
C3D_API void Pause ()
 Met la boucle de rendu en pause. Plus de détails...
 
C3D_API void Resume ()
 Relance la boucle de rendu. Plus de détails...
 
C3D_API void EndRendering ()
 Termine le rendu. Plus de détails...
 
C3D_API uint32_t GetFrameTime ()
 Récupère le temps voulu pour une frame. Plus de détails...
 
C3D_API uint32_t GetWantedFps ()
 
C3D_API void CreateContext (RenderWindow &p_window)
 Crée un contexte de rendu. Plus de détails...
 
C3D_API void ShowDebugOverlays (bool p_show)
 Affiche ou cache les incrustations de débogage. Plus de détails...
 
virtual C3D_API void UpdateVSync (bool p_enable)
 Met à jour le statut de synchronisation verticale. Plus de détails...
 

Fonctions membres protégées

C3D_API ContextSPtr DoCreateContext (RenderWindow &p_window)
 Demande la création du contexte de rendu. Plus de détails...
 
C3D_API void DoRenderFrame ()
 Commence le rendu threadé. Plus de détails...
 
virtual C3D_API void DoStartRendering ()=0
 Commence le rendu threadé. Plus de détails...
 
virtual C3D_API void DoRenderSyncFrame ()=0
 Rend une image, uniquement hors de la boucle de rendu. Plus de détails...
 
virtual C3D_API void DoPause ()=0
 Met la boucle de rendu en pause. Plus de détails...
 
virtual C3D_API void DoResume ()=0
 Redémarre la boucle de rendu. Plus de détails...
 
virtual C3D_API void DoEndRendering ()=0
 Termine le rendu, nettoie le moteur. Plus de détails...
 
virtual C3D_API ContextSPtr DoCreateMainContext (RenderWindow &p_window)=0
 Demande la création du contexte de rendu principal. Plus de détails...
 

Attributs protégés

RenderSystemm_renderSystem
 Le RenderSystem courant. Plus de détails...
 
uint32_t m_wantedFPS
 Le nombre de FPS souhaité, utilisé en rendu threadé. Plus de détails...
 
uint32_t m_frameTime
 Le temps voulu pour une frame. Plus de détails...
 
std::unique_ptr< DebugOverlaysm_debugOverlays
 Les incrustations de débogage. Plus de détails...
 

Description détaillée

Classe de base d'une boucle de rendu.

Auteur
Sylvain DOREMUS
Date
14/10/2015
Version
0.8.0

Documentation des constructeurs et destructeur

C3D_API Castor3D::RenderLoop::RenderLoop ( Engine p_engine,
RenderSystem p_renderSystem,
uint32_t  p_wantedFPS 
)

Constructeur.

Paramètres
[in]p_engineLe moteur.
[in]p_renderSystemLe système de rendu.
[in]p_wantedFPSLe nombre voulu du FPS.
virtual C3D_API Castor3D::RenderLoop::~RenderLoop ( )
virtual

Destructeur.

Documentation des fonctions membres

C3D_API void Castor3D::RenderLoop::Cleanup ( )

Nettoie la boucle de rendu.

C3D_API void Castor3D::RenderLoop::CreateContext ( RenderWindow p_window)

Crée un contexte de rendu.

Remarques
Si le contexte principal n'a pas encore été créé, le premier contexte créé deviendra le contexte principal. Pour la boucles de rendu asynchrone, cela signifie que le thread appelant cette fonction sera sans contexte associé, prévenant l'appel de RenderSyncFrame.
Paramètres
[in]p_windowLa fenêtre de rendu utilisée pour initialiser le contexte de rendu, recevra le contexte.
C3D_API ContextSPtr Castor3D::RenderLoop::DoCreateContext ( RenderWindow p_window)
protected

Demande la création du contexte de rendu.

Paramètres
[in]p_windowLa fenêtre de rendu utilisée pour initialiser le contexte de rendu, recevra le contexte.
Renvoie
Le contexte créé, ou l'existant.
virtual C3D_API ContextSPtr Castor3D::RenderLoop::DoCreateMainContext ( RenderWindow p_window)
protectedpure virtual

Demande la création du contexte de rendu principal.

Paramètres
[in]p_windowLa fenêtre de rendu utilisée pour initialiser le contexte de rendu, recevra le contexte.
virtual C3D_API void Castor3D::RenderLoop::DoEndRendering ( )
protectedpure virtual

Termine le rendu, nettoie le moteur.

Remarques
Arrête la boucle de rendu threadé, si elle existe.
virtual C3D_API void Castor3D::RenderLoop::DoPause ( )
protectedpure virtual

Met la boucle de rendu en pause.

C3D_API void Castor3D::RenderLoop::DoRenderFrame ( )
protected

Commence le rendu threadé.

virtual C3D_API void Castor3D::RenderLoop::DoRenderSyncFrame ( )
protectedpure virtual

Rend une image, uniquement hors de la boucle de rendu.

virtual C3D_API void Castor3D::RenderLoop::DoResume ( )
protectedpure virtual

Redémarre la boucle de rendu.

virtual C3D_API void Castor3D::RenderLoop::DoStartRendering ( )
protectedpure virtual

Commence le rendu threadé.

C3D_API void Castor3D::RenderLoop::EndRendering ( )

Termine le rendu.

Remarques
A utiliser uniquement avec une boucle de rendu asynchrone.
C3D_API uint32_t Castor3D::RenderLoop::GetFrameTime ( )

Récupère le temps voulu pour une frame.

Renvoie
Le temps, en millisecondes.
C3D_API uint32_t Castor3D::RenderLoop::GetWantedFps ( )
Renvoie
La vitesse de rafraichissement.
C3D_API void Castor3D::RenderLoop::Pause ( )

Met la boucle de rendu en pause.

Remarques
A utiliser uniquement avec une boucle de rendu synchrone.
C3D_API void Castor3D::RenderLoop::RenderSyncFrame ( )

Dessine une image.

Remarques
A utiliser uniquement avec une boucle de rendu synchrone, ou quand la boucle de rendu est en pause.
C3D_API void Castor3D::RenderLoop::Resume ( )

Relance la boucle de rendu.

Remarques
A utiliser uniquement avec une boucle de rendu synchrone.
C3D_API void Castor3D::RenderLoop::ShowDebugOverlays ( bool  p_show)

Affiche ou cache les incrustations de débogage.

Paramètres
[in]p_showLe statut.
C3D_API void Castor3D::RenderLoop::StartRendering ( )

Commence le rendu.

Remarques
A utiliser uniquement avec une boucle de rendu asynchrone.
virtual C3D_API void Castor3D::RenderLoop::UpdateVSync ( bool  p_enable)
virtual

Met à jour le statut de synchronisation verticale.

Paramètres
[in]p_enableLe statut.

Réimplémentée dans Castor3D::RenderLoopAsync.

Documentation des données membres

std::unique_ptr< DebugOverlays > Castor3D::RenderLoop::m_debugOverlays
protected

Les incrustations de débogage.

uint32_t Castor3D::RenderLoop::m_frameTime
protected

Le temps voulu pour une frame.

RenderSystem* Castor3D::RenderLoop::m_renderSystem
protected

Le RenderSystem courant.

uint32_t Castor3D::RenderLoop::m_wantedFPS
protected

Le nombre de FPS souhaité, utilisé en rendu threadé.


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