Instance a VkRenderPassBeginInfo.
In the first frame, we use window size rather than viewport size.
This command not allow async.
Instance a VkRenderPassBeginInfo.
In the first frame, we use window size rather than viewport size.
This command not allow async.
926 {
928
932
936 VkRenderPassBeginInfo renderPassInfo{};
937 renderPassInfo.sType = VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO;
940 renderPassInfo.renderArea.offset = { 0, 0 };
941
946 {
947 renderPassInfo.renderArea.extent =
m_Renderer->
m_Device->GetSwapChainSupport().surfaceSize;
948 }
949 else
950 {
952 const VkExtent2D extent = { static_cast<uint32_t>(size.x) , static_cast<uint32_t>(size.y) };
953 renderPassInfo.renderArea.extent = extent;
954 }
955
956 renderPassInfo.clearValueCount =
static_cast<uint32_t
>(
m_Renderer->
m_Pass->GetClearValues().size());
958
961
964
967
969
974
978 vkCmdBeginRenderPass(
m_CommandBuffer, &renderPassInfo, VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS);
979 }
#define SPICES_PROFILE_ZONE
std::shared_ptr< VulkanDeviceGeneratedCommandsNV > m_HandledDGCData
Current subPass DGCData.
uint32_t m_CurrentFrame
Current frame index. Passed while this class instanced.
std::shared_ptr< RendererSubPass > m_HandledSubPass
Handled Sub pass.
uint32_t m_CurrentImage
Current frame index. Passed while this class instanced.
uint32_t m_SubPassIndex
Current subPass Index.
Renderer * m_Renderer
Specific Renderer pointer. Passed while this class instanced.
VkCommandBuffer m_CommandBuffer
Current CommandBuffer.
std::shared_ptr< RendererPass > m_Pass
RendererPass.
std::shared_ptr< VulkanDevice > m_Device
VulkanDevice , Passed by instanced.
VulkanState & m_VulkanState
This variable is passed while renderer instanced.
std::unordered_map< std::string, std::shared_ptr< VulkanDeviceGeneratedCommandsNV > > m_DGCData
Data of dgc DGC Draw.
static std::shared_ptr< SlateRegister > GetRegister()
Get slate register.