Castor3D 0.16.0
Multiplatform 3D engine
|
#include <OverlayRenderer.hpp>
Classes | |
struct | ComputePipeline |
struct | FontTextureDescriptorConnection |
struct | OverlaysCommonData |
struct | OverlaysComputeData |
struct | OverlaysDrawData |
struct | TextComputePipeline |
struct | TextComputePipelineDescriptor |
Public Types | |
using | PanelVertexBufferPool = OverlayVertexBufferPoolT< OverlayCategory::Vertex, 6u > |
using | BorderPanelVertexBufferPool = OverlayVertexBufferPoolT< OverlayCategory::Vertex, 8u * 6u > |
using | TextVertexBufferPool = OverlayVertexBufferPoolT< TextOverlay::Vertex, MaxCharsPerOverlay > |
Public Member Functions | |
C3D_API | OverlayRenderer (RenderDevice const &device, Texture const &target, HdrConfigUbo const &hdrConfigUbo, crg::FramePassTimer &timer, VkCommandBufferLevel level=VK_COMMAND_BUFFER_LEVEL_PRIMARY) |
Constructor. | |
C3D_API void | update (GpuUpdater &updater) |
Updates the render pass, GPU wise. | |
C3D_API OverlayPreparer | beginPrepare (RenderDevice const &device, VkRenderPass renderPass, VkFramebuffer framebuffer, crg::Fence &fence) |
Begins the overlays preparation. | |
C3D_API void | upload (UploadData &uploader) |
Uploads all GPU buffers to VRAM. | |
C3D_API void | registerComputeCommands (crg::RecordContext &context, VkCommandBuffer commandBuffer) const |
Records compute commands. | |
ashes::CommandBuffer const & | getCommands () const noexcept |
castor::Size const & | getSize () const noexcept |
bool | isSizeChanged () const noexcept |
Public Member Functions inherited from castor::OwnedBy< RenderSystem > | |
RenderSystem * | getOwner () const |
Friends | |
class | OverlayPreparer |
Additional Inherited Members | |
Protected Member Functions inherited from castor::OwnedBy< RenderSystem > | |
OwnedBy (RenderSystem &owner) | |
Constructor. | |
using castor3d::OverlayRenderer::BorderPanelVertexBufferPool = OverlayVertexBufferPoolT< OverlayCategory::Vertex, 8u * 6u > |
using castor3d::OverlayRenderer::PanelVertexBufferPool = OverlayVertexBufferPoolT< OverlayCategory::Vertex, 6u > |
using castor3d::OverlayRenderer::TextVertexBufferPool = OverlayVertexBufferPoolT< TextOverlay::Vertex, MaxCharsPerOverlay > |
C3D_API castor3d::OverlayRenderer::OverlayRenderer | ( | RenderDevice const & | device, |
Texture const & | target, | ||
HdrConfigUbo const & | hdrConfigUbo, | ||
crg::FramePassTimer & | timer, | ||
VkCommandBufferLevel | level = VK_COMMAND_BUFFER_LEVEL_PRIMARY ) |
Constructor.
[in] | device | The GPU device. |
[in] | target | The target texture. |
[in] | hdrConfigUbo | The HDR configuration used when rendering to an HDR screen. |
[in] | timer | The timer for this pass. |
[in] | level | The command buffer level. |
C3D_API OverlayPreparer castor3d::OverlayRenderer::beginPrepare | ( | RenderDevice const & | device, |
VkRenderPass | renderPass, | ||
VkFramebuffer | framebuffer, | ||
crg::Fence & | fence ) |
Begins the overlays preparation.
[in] | device | The render device. |
[in] | renderPass | The render pass. |
[in] | framebuffer | The framebuffer receiving the result. |
[in] | fence | The fence to wait for before rendering. |
|
inlinenoexcept |
name Getters.
References castor3d::CommandsSemaphore::commandBuffer, castor3d::OverlayRenderer::OverlaysDrawData::commands, and CU_Require.
|
inlinenoexcept |
|
inlinenoexcept |
C3D_API void castor3d::OverlayRenderer::registerComputeCommands | ( | crg::RecordContext & | context, |
VkCommandBuffer | commandBuffer ) const |
Records compute commands.
[in] | context | The recording context. |
[in] | commandBuffer | The command buffer on which commands are recorded. |
C3D_API void castor3d::OverlayRenderer::update | ( | GpuUpdater & | updater | ) |
Updates the render pass, GPU wise.
[in,out] | updater | The update data. |
C3D_API void castor3d::OverlayRenderer::upload | ( | UploadData & | uploader | ) |
Uploads all GPU buffers to VRAM.
[in,out] | uploader | Receives the upload requests. |
|
friend |