![]() |
Castor3D 0.17.0
Multiplatform 3D engine
|
#include <RenderLoopAsync.hpp>


Public Member Functions | |
| C3D_API | RenderLoopAsync (Engine &engine, uint32_t wantedFPS) |
| Constructor. | |
| C3D_API | ~RenderLoopAsync () noexcept override |
| Destructor. | |
| C3D_API bool | isRendering () const |
| Retrieves the render start status. | |
| C3D_API bool | isPaused () const |
| Retrieves the render paused status. | |
| C3D_API bool | isInterrupted () const |
| Thread-safe. | |
| C3D_API bool | isEnded () const |
| Retrieves the render loop end status. | |
| C3D_API void | enableVSync (bool enable) override |
| Updates the V-Sync status. | |
| C3D_API void | beginRendering () override |
| Starts threaded render loop. | |
| C3D_API void | renderSyncFrame (castor::Milliseconds tslf) override |
| Renders one frame, only if not in render loop. | |
| C3D_API void | pause () override |
| Pauses the render loop. | |
| C3D_API void | resume () override |
| Resumes the render loop. | |
| C3D_API void | endRendering () override |
| Ends the render, cleans upĀ engine. | |
Public Member Functions inherited from castor3d::RenderLoop | |
| C3D_API | RenderLoop (Engine &engine, uint32_t wantedFPS) |
| Constructor. | |
| virtual C3D_API | ~RenderLoop () noexcept |
| Destructor. | |
| C3D_API void | initialise () |
| Initialises the render loop. | |
| C3D_API void | cleanup () |
| Cleans up the render loop. | |
| C3D_API void | showDebugOverlays (bool show) |
| Show or hide debug overlays. | |
| C3D_API void | flushEvents () const |
| Flushs all events of all frame listeners. | |
| C3D_API void | registerTimer (castor::String const &category, FramePassTimer &timer) |
| Registers a render pass timer. | |
| C3D_API void | unregisterTimer (castor::String const &category, FramePassTimer &timer) |
| Unregisters a render pass timer. | |
| C3D_API void | registerBuffer (ShaderBuffer const &buffer) |
| Registers a ShaderBuffer. | |
| C3D_API void | unregisterBuffer (ShaderBuffer const &buffer) |
| Unregisters a ShaderBuffer. | |
| C3D_API bool | hasDebugOverlays () const |
| C3D_API void | dumpFrameTimes (Parameters ¶ms) const |
| The average frame time, in nanoseconds. | |
| C3D_API castor::Nanoseconds | getAvgFrameTime () const |
| castor::Milliseconds | getFrameTime () const noexcept |
| uint32_t | getWantedFps () const noexcept |
| castor::Microseconds | getLastFrameTime () const noexcept |
| UploadData & | getUploadData () const noexcept |
Public Member Functions inherited from castor::OwnedBy< Engine > | |
| Engine * | getOwner () const noexcept |
| void | setOwner (Engine &owner) noexcept |
Additional Inherited Members | |
Static Public Attributes inherited from castor3d::RenderLoop | |
| static constexpr uint32_t | UnlimitedFPS = 0xFFFFFFFFu |
Protected Member Functions inherited from castor3d::RenderLoop | |
| C3D_API void | doRenderFrame (castor::Milliseconds tslf=0_ms) |
| Starts threaded render loop. | |
Protected Member Functions inherited from castor::OwnedBy< Engine > | |
| OwnedBy (Engine &owner) noexcept | |
| Constructor. | |
Protected Attributes inherited from castor3d::RenderLoop | |
| RenderSystem & | m_renderSystem |
| uint32_t | m_wantedFPS |
| castor::Milliseconds | m_frameTime |
| std::atomic< castor::Microseconds > | m_lastFrameTime |
| castor::RawUniquePtr< DebugOverlays > | m_debugOverlays |
| castor::Mutex | m_debugOverlaysMtx |
Constructor.
| [in] | engine | The engine. |
| [in] | wantedFPS | The wanted FPS count. |
|
overridenoexcept |
Destructor.
|
overridevirtual |
Starts threaded render loop.
Implements castor3d::RenderLoop.
|
overridevirtual |
Updates the V-Sync status.
| [in] | enable | The status. |
Reimplemented from castor3d::RenderLoop.
|
overridevirtual |
Ends the render, cleans upĀ engine.
Implements castor3d::RenderLoop.
| C3D_API bool castor3d::RenderLoopAsync::isEnded | ( | ) | const |
Retrieves the render loop end status.
true if created. | C3D_API bool castor3d::RenderLoopAsync::isInterrupted | ( | ) | const |
Thread-safe.
true if the render loop is interrupted. | C3D_API bool castor3d::RenderLoopAsync::isPaused | ( | ) | const |
Retrieves the render paused status.
true if paused. | C3D_API bool castor3d::RenderLoopAsync::isRendering | ( | ) | const |
Retrieves the render start status.
true if started.
|
overridevirtual |
Pauses the render loop.
Implements castor3d::RenderLoop.
|
overridevirtual |
Renders one frame, only if not in render loop.
| [in] | tslf | The time elapsed since last frame. |
Implements castor3d::RenderLoop.
|
overridevirtual |
Resumes the render loop.
Implements castor3d::RenderLoop.