![]() |
NDEVR
API Documentation
|
A GraphicsPipeline that renders a single Viewport for Vulkan. More...
Classes | |
| struct | PipelineSemaphore |
| A semaphore paired with an active flag for pipeline synchronization. More... | |
| struct | PipelineSemaphores |
| Paired acquire and finish semaphores for a single frame in the render pipeline. More... | |
| struct | SwapChainSupportDetails |
| Details about swap chain support on a physical device. More... | |
Public Member Functions | |
| void | cleanResources () override |
| Cleans up stale or unused GPU resources. | |
| void | cleanup () override |
| Releases all GPU resources. | |
| bool | createPipeline (GraphicsUpdateArguments &args) override |
| Creates or recreates the rendering pipeline. | |
| virtual const ConstPointer< GraphicsDevice > & | device () const override |
| Returns the graphics device (const). | |
| const DynamicPointer< GraphicsDevice > & | device () override |
| Returns the graphics device. | |
| virtual void | drawFrame (GraphicsUpdateArguments &args) override |
| Renders a single frame. | |
| void | ensureLastRenderComplete () override |
| Blocks until the last submitted render is complete. | |
| void | init (GraphicsUpdateArguments &args) override |
| Initializes the pipeline with the given arguments. | |
| bool | runCommand (GraphicsUpdateArguments &args) override |
| Executes a queued rendering command. | |
| void | setWindowInstance (WindowInstance *instance) override |
| Associates a window instance with this pipeline. | |
| Public Member Functions inherited from GraphicsPipeline | |
| virtual | ~GraphicsPipeline () |
| Destructor. | |
Protected Member Functions | |
| virtual void | commit (GraphicsUpdateArguments &) override |
| Commits pending changes to the GPU. | |
| virtual bool | hasCommand () const override |
| Checks whether there are pending commands to execute. | |
| virtual void | updateUniformBuffer (GraphicsUpdateArguments &) override |
| Updates the camera uniform buffer on the GPU. | |
Protected Attributes | |
| RGBColor | m_clear_color |
| The clear color for the render pass. | |
| DynamicPointer< VulkanImageData > | m_depth_image |
| Depth buffer image. | |
| DynamicPointer< VulkanImageView > | m_depth_view |
| View for the depth buffer. | |
| DynamicPointer< VulkanDevice > | m_device |
| The Vulkan device for this pipeline. | |
| Vector< 2, uint04 > | m_draw_size |
| The current draw dimensions in pixels. | |
| DynamicPointer< VulkanImageData > | m_frame_grab_image |
| Image used for frame readback. | |
| Buffer< VulkanImageResources > | m_frames |
| Per-frame image resources. | |
| Image * | m_grab_image |
| The CPU-side image for frame readback. | |
| bool | m_is_init |
| Whether the pipeline has been initialized. | |
| uint08 | m_khr_format |
| The KHR swap chain image format as an integer. | |
| VkSwapchainKHR | m_khr_swap_chain |
| The KHR swap chain handle. | |
| uint04 | m_last_image_idx |
| The index of the last acquired swap chain image. | |
| DynamicPointer< VulkanImageData > | m_multisample_image_color |
| Multisample color resolve image. | |
| DynamicPointer< VulkanImageView > | m_multisample_view_color |
| View for the multisample color image. | |
| bool | m_needs_cleanup |
| Whether a cleanup pass is needed. | |
| bool | m_needs_grab_image |
| Whether a grab image readback is pending. | |
| bool | m_needs_pipeline_recreation |
| Whether the pipeline needs to be recreated. | |
| uint04 | m_number_of_grab_images = 0 |
| The number of grab image resources. | |
| uint04 | m_number_of_khr_images = 0 |
| The number of KHR swap chain images. | |
| uint04 | m_pipeline_acquire = 0 |
| The current acquire index for semaphore cycling. | |
| VkQueue_T * | m_present_queue = nullptr |
| The Vulkan queue used for presentation. | |
| DynamicPointer< VulkanRenderDefinition > | m_render_definition |
| The render pass definition. | |
| Buffer< PipelineSemaphores > | m_semaphores |
| Semaphores for each frame in flight. | |
| VulkanSession * | m_session |
| The owning Vulkan session. | |
| DynamicPointer< VulkanImageData > | m_shadow_image |
| Shadow map image. | |
| DynamicPointer< VulkanImageView > | m_shadow_view |
| View for the shadow map. | |
| bool | m_suboptimal_khr |
| Whether the KHR swap chain is suboptimal. | |
| VkSurfaceKHR | m_surface |
| The Vulkan surface for this pipeline. | |
| Time | m_surface_update_time |
| The last time the surface was updated. | |
| ConstPointer< SwapChainSupportDetails > | m_swap_chain_support_details |
| Cached swap chain support details. | |
| WindowInstance * | m_window_instance |
| The window instance this pipeline renders to. | |
A GraphicsPipeline that renders a single Viewport for Vulkan.
Definition at line 57 of file VulkanRenderPipeline.h.
|
inlineoverrideprotectedvirtual |
Commits pending changes to the GPU.
| [in] | args | The update arguments. |
Implements GraphicsPipeline.
Definition at line 132 of file VulkanRenderPipeline.h.
|
overridevirtual |
Creates or recreates the rendering pipeline.
| [in] | args | The update arguments. |
Implements GraphicsPipeline.
|
overridevirtual |
Returns the graphics device (const).
Implements GraphicsPipeline.
Referenced by ensureLastRenderComplete().
|
overridevirtual |
|
overridevirtual |
|
inlineoverrideprotectedvirtual |
Checks whether there are pending commands to execute.
Implements GraphicsPipeline.
Definition at line 134 of file VulkanRenderPipeline.h.
|
overridevirtual |
Initializes the pipeline with the given arguments.
| [in] | args | The update arguments. |
Implements GraphicsPipeline.
|
overridevirtual |
Executes a queued rendering command.
| [in] | args | The update arguments. |
Implements GraphicsPipeline.
|
overridevirtual |
Associates a window instance with this pipeline.
| [in] | instance | The window instance. |
Implements GraphicsPipeline.
|
inlineoverrideprotectedvirtual |
Updates the camera uniform buffer on the GPU.
| [in] | args | The update arguments. |
Implements GraphicsPipeline.
Definition at line 133 of file VulkanRenderPipeline.h.