Castor3D
..
|
Classe de base d'une boucle de rendu. Plus de détails...
Fonctions membres publiques | |
C3D_API | RenderLoop (Engine &p_engine, uint32_t p_wantedFPS, bool p_isAsync) |
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 | 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... | |
virtual C3D_API void | StartRendering ()=0 |
Commence le rendu threadé. Plus de détails... | |
virtual C3D_API void | RenderSyncFrame ()=0 |
Rend une image, uniquement hors de la boucle de rendu. Plus de détails... | |
virtual C3D_API void | Pause ()=0 |
Met la boucle de rendu en pause. Plus de détails... | |
virtual C3D_API void | Resume ()=0 |
Redémarre la boucle de rendu. Plus de détails... | |
virtual C3D_API void | EndRendering ()=0 |
Termine le rendu, nettoie le moteur. Plus de détails... | |
std::chrono::milliseconds | GetFrameTime () |
uint32_t | GetWantedFps () |
bool | HasDebugOverlays () const |
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 ContextSPtr | DoCreateMainContext (RenderWindow &p_window)=0 |
Demande la création du contexte de rendu principal. Plus de détails... | |
Attributs protégés | |
RenderSystem & | m_renderSystem |
uint32_t | m_wantedFPS |
std::chrono::milliseconds | m_frameTime |
std::unique_ptr< DebugOverlays > | m_debugOverlays |
Castor::ThreadPool | m_queueUpdater |
Classe de base d'une boucle de rendu.
C3D_API Castor3D::RenderLoop::RenderLoop | ( | Engine & | p_engine, |
uint32_t | p_wantedFPS, | ||
bool | p_isAsync | ||
) |
Constructeur.
[in] | p_engine | Le moteur. |
[in] | p_wantedFPS | Le nombre voulu du FPS. |
[in] | p_isAsync | Dit si la boucle de rendu est asynchrone. |
|
virtual |
Destructeur.
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.
[in] | p_window | La fenêtre de rendu utilisée pour initialiser le contexte de rendu, recevra le contexte. |
|
protected |
Demande la création du contexte de rendu.
[in] | p_window | La fenêtre de rendu utilisée pour initialiser le contexte de rendu, recevra le contexte. |
Référencé par HasDebugOverlays().
|
protectedpure virtual |
Demande la création du contexte de rendu principal.
[in] | p_window | La fenêtre de rendu utilisée pour initialiser le contexte de rendu, recevra le contexte. |
Référencé par HasDebugOverlays().
|
protected |
Commence le rendu threadé.
Référencé par HasDebugOverlays().
|
pure virtual |
Termine le rendu, nettoie le moteur.
Implémenté dans Castor3D::RenderLoopAsync, et Castor3D::RenderLoopSync.
|
inline |
Références m_frameTime.
|
inline |
Références m_wantedFPS.
|
inline |
Références C3D_API, DoCreateContext(), DoCreateMainContext(), DoRenderFrame(), et m_debugOverlays.
|
pure virtual |
Met la boucle de rendu en pause.
Implémenté dans Castor3D::RenderLoopAsync, et Castor3D::RenderLoopSync.
|
pure virtual |
Rend une image, uniquement hors de la boucle de rendu.
Implémenté dans Castor3D::RenderLoopAsync, et Castor3D::RenderLoopSync.
|
pure virtual |
Redémarre la boucle de rendu.
Implémenté dans Castor3D::RenderLoopAsync, et Castor3D::RenderLoopSync.
C3D_API void Castor3D::RenderLoop::ShowDebugOverlays | ( | bool | p_show | ) |
Affiche ou cache les incrustations de débogage.
[in] | p_show | Le statut. |
|
pure virtual |
Commence le rendu threadé.
Implémenté dans Castor3D::RenderLoopAsync, et Castor3D::RenderLoopSync.
|
virtual |
Met à jour le statut de synchronisation verticale.
[in] | p_enable | Le statut. |
Réimplémentée dans Castor3D::RenderLoopAsync.
|
protected |
Les incrustations de débogage.
Référencé par HasDebugOverlays().
|
protected |
Le temps voulu pour une frame.
Référencé par GetFrameTime().
|
protected |
Le pool de mise à jour des files de rendu.
|
protected |
Le RenderSystem courant.
|
protected |
Le nombre de FPS souhaité, utilisé en rendu threadé.
Référencé par GetWantedFps().