|
Foundation
|
Classes | |
| struct | PushConstant |
Public Member Functions | |
| TexturePoolApp () | |
| void | OnDeviceSetup () override |
| Actions to take after device specific resources has been set up. | |
| void | OnRendererSetup () override |
| Set up the renderer by creating passes, resources, and other configurations. | |
Public Member Functions inherited from Foundation::Rendering::RenderApplication | |
| template<typename Backend , typename... Args> | |
| void | Initialize (ApplicationInitDesc const &desc={}, Args &&... args) |
| Initialize the application with the specified RHI backend. | |
| RHIExtent2D | GetFramebufferSize () const |
| Retrieve the framebuffer size of the current window. | |
| FrameTiming | GetTiming () const |
| Retrieve the timing information of the last frame. | |
| Renderer * | GetRenderer () const |
| Retrieve the underlying Renderer instance. | |
| RHISwapchain * | GetSwapchain () const |
| Retrieve the current RHISwapchain instance. | |
| Native::NativeWindow * | GetNativeWindow () |
| Retrieve the current NativeWindow instance. | |
| Allocator * | GetAllocator () |
| Retrieve the allocator used for general application allocations. | |
| Allocator * | GetRendererAllocator () |
| Retrieve the allocator used for renderer allocations. | |
| void | RunForever () |
| Start the Render thread and run the application loop indefinitely, until the window is closed or the application is exited. | |
| void | WaitForFrame () |
| Wait for the render thread to start, or the next frame to be rendered. | |
| void | ResetRendererOnNextFrame () |
| Reset the renderer on the next frame, calling OnRendererSetup internally. | |
| void | Shutdown () |
| Flag the application to exit. | |
Public Member Functions inherited from Foundation::Native::NativeApplication | |
| template<typename T = float> | |
| T | GetApplicationTime () const |
| Returns a high-resolution time in seconds since the application started. | |
| size_t | GetApplicationCounter () const |
| Returns a high-resolution time in nanoseconds since the application started. | |
| NativeApplication () | |
| virtual | ~NativeApplication () |
Private Attributes | |
| UniquePtr< TexturePool > | mTexturePool |
| Vector< TexturePoolHandle > | mHandles |
|
inline |
|
inlineoverridevirtual |
Actions to take after device specific resources has been set up.
This is run on the main thread, i.e. the calling thread of Initialize(), after the device and swapchain is created, but before the Renderer is created.
Implementation may leave this empty if no action is needed.
Reimplemented from Foundation::Rendering::RenderApplication.
|
inlineoverridevirtual |
Set up the renderer by creating passes, resources, and other configurations.
Implements Foundation::Rendering::RenderApplication.
|
private |
|
private |