This class defines the render backend behaves of Vulkan. More...
#include <VulkanRenderBackend.h>
Public Member Functions | |
| VulkanRenderBackend () | |
| Constructor Function. | |
| virtual | ~VulkanRenderBackend () |
| Destructor Function. | |
| VulkanRenderBackend (const VulkanRenderBackend &)=delete | |
| Copy Constructor Function. | |
| VulkanRenderBackend & | operator= (const VulkanRenderBackend &)=delete |
| Copy Assignment Operation. | |
| bool | isWindowClosed () |
| Determine whether window is closed. | |
| void | BeginFrame (FrameInfo &frameInfo) |
| Start record a new frame with vulkan render backend. | |
| void | EndFrame (FrameInfo &frameInfo) |
| End record the frame with vulkan render backend. | |
| void | RenderFrame (TimeStep &ts, FrameInfo &frameInfo) |
| Draw World. | |
| void | OnEvent (Event &event) |
| This function is called on global event function is called. | |
Static Public Member Functions | |
| static VulkanState & | GetState () |
| Get VulkanState in use. | |
| static std::shared_ptr< VulkanDescriptorPool > | GetDescriptorPool () |
| Get DescriptorPool in use. | |
| static std::shared_ptr< RendererResourcePool > | GetRendererResourcePool () |
| Get RendererResourcePool in use. | |
Private Member Functions | |
| bool | OnWindowResizeOver (WindowResizeOverEvent &event) |
| This function is called on window is resized over. | |
| bool | OnSlateResize (SlateResizeEvent &event) |
| This function is called on viewport is resized. | |
| bool | OnMeshAddedWorldEvent (WorldEvent &event) |
| This function is called on world mark query tick. | |
| void | RecreateSwapChain () |
| Called OnSlateResize. | |
Private Attributes | |
| std::unique_ptr< VulkanWindows > | m_VulkanWindows |
| VulkanWindows. | |
| std::unique_ptr< VulkanInstance > | m_VulkanInstance |
| VulkanInstance. | |
| std::shared_ptr< VulkanDevice > | m_VulkanDevice |
| VulkanDevice. | |
| std::shared_ptr< VulkanMemoryAllocator > | m_VmaAllocator |
| VulkanMemoryAllocator. | |
| std::unique_ptr< VulkanCommandPool > | m_VulkanCommandPool |
| VulkanCommandPool. | |
| std::unique_ptr< VulkanCommandBuffer > | m_VulkanCommandBuffer |
| VulkanCommandBuffer. | |
| std::unique_ptr< VulkanSwapChain > | m_VulkanSwapChain |
| VulkanSwapChain. | |
Static Private Attributes | |
| static VulkanState | m_VulkanState |
| The VulkanState in use. | |
| static std::shared_ptr< VulkanDescriptorPool > | m_VulkanDescriptorPool |
| The VulkanDescriptorPool in use. | |
| static std::shared_ptr< RendererResourcePool > | m_RendererResourcePool |
| The RendererResourcePool in use. | |
This class defines the render backend behaves of Vulkan.
Definition at line 36 of file VulkanRenderBackend.h.