diff options
Diffstat (limited to 'src/vk/renderer.cpp')
-rw-r--r-- | src/vk/renderer.cpp | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/src/vk/renderer.cpp b/src/vk/renderer.cpp index 766690f..d4e25ba 100644 --- a/src/vk/renderer.cpp +++ b/src/vk/renderer.cpp @@ -146,6 +146,7 @@ Renderer::Renderer(std::vector<std::shared_ptr<View2D>> views_2d, std::vector<std::shared_ptr<View3D>> views_3d): skeletal_models_to_draw{cg_core.vk_swapchain->images_count}, static_models_to_draw{cg_core.vk_swapchain->images_count}, + sprites_3d_to_draw{cg_core.vk_swapchain->images_count}, views_2d{views_2d}, views_3d{views_3d} { @@ -239,14 +240,19 @@ Renderer::draw() vkCmdBeginRenderPass( draw_command_buffer, &render_pass_begin, VK_SUBPASS_CONTENTS_INLINE); + } - for(auto &view: this->views_3d) - cg_core.vk_graphics_pipeline_3d->draw( - view, draw_command_buffer, cg_core.vk_swapchain->current_frame, - image_index); + for(auto &view: this->views_3d) + cg_core.vk_graphics_pipeline_3d->draw( + view, draw_command_buffer, cg_core.vk_swapchain->current_frame, + image_index); - vkCmdEndRenderPass(draw_command_buffer); - } + for(auto &view: this->views_3d) + cg_core.vk_graphics_pipeline_sprite_3d->draw( + view, draw_command_buffer, cg_core.vk_swapchain->current_frame, + image_index); + + vkCmdEndRenderPass(draw_command_buffer); { // 2D render pass VkRenderPassBeginInfo render_pass_begin{}; @@ -345,6 +351,7 @@ Renderer::draw() { this->skeletal_models_to_draw[next_frame].clear(); this->static_models_to_draw[next_frame].clear(); + this->sprites_3d_to_draw[next_frame].clear(); cg_core.vk_swapchain->current_frame = next_frame; } } @@ -353,6 +360,7 @@ Renderer::draw() // Clear images for the current frame because we are skipping this frame. this->skeletal_models_to_draw[cg_core.vk_swapchain->current_frame].clear(); this->static_models_to_draw[cg_core.vk_swapchain->current_frame].clear(); + this->sprites_3d_to_draw[cg_core.vk_swapchain->current_frame].clear(); for(auto &view: this->views_2d) view->sprites_to_draw[cg_core.vk_swapchain->current_frame].clear(); for(auto &view: this->views_3d) |