Toast Engine
Loading...
Searching...
No Matches
ui::UIPass Class Reference
Inheritance diagram for ui::UIPass:
Collaboration diagram for ui::UIPass:

Public Member Functions

 UIPass (const renderer::VulkanCore &core, vk::Format output_color_format, vk::Format output_depth_format, vk::Extent2D extent)
auto stage () const -> RenderStage override
auto name () const -> std::string_view override
void recordPre (vk::CommandBuffer cmd, uint32_t frame_index, uint32_t image_index) override
 Records outside any rendering scope before the main scope opens.
void record (vk::CommandBuffer cmd, uint32_t frame_index, uint32_t image_index) override
Public Member Functions inherited from IRenderPass
virtual void update (uint32_t frame_index, float dt)
void setEnabled (bool enabled) noexcept
auto isEnabled () const noexcept -> bool

Static Public Member Functions

static auto selectStencilFormat (const renderer::VulkanCore &core) -> vk::Format

Static Public Attributes

static constexpr vk::Format k_color_format = vk::Format::eR8G8B8A8Unorm
 UI layers always render in this format regardless of the output target.

Member Function Documentation

◆ name()

auto ui::UIPass::name ( ) const -> std::string_view
inlinenodiscardoverridevirtual

Reimplemented from IRenderPass.

◆ record()

void ui::UIPass::record ( vk::CommandBuffer cmd,
uint32_t frame_index,
uint32_t image_index )
overridevirtual

Implements IRenderPass.

◆ recordPre()

void ui::UIPass::recordPre ( vk::CommandBuffer cmd,
uint32_t frame_index,
uint32_t image_index )
overridevirtual

Records outside any rendering scope before the main scope opens.

Reimplemented from IRenderPass.

Here is the caller graph for this function:

◆ stage()

auto ui::UIPass::stage ( ) const -> RenderStage
inlinenodiscardoverridevirtual

UI is authored in display space - its colours are the exact values that should reach the screen, so it composites after the tonemap rather than being exposed along with the scene

Reimplemented from IRenderPass.


The documentation for this class was generated from the following files:
  • engine/src/toast/ui/render/ui_pass.hpp
  • engine/src/toast/ui/render/ui_pass.cpp