]> git.tdb.fi Git - libs/gl.git/blob - source/backends/vulkan/renderer_backend.cpp
Clear the begin semaphore if Renderer::begin() is called without one
[libs/gl.git] / source / backends / vulkan / renderer_backend.cpp
1 #include "renderer.h"
2 #include "renderer_backend.h"
3
4 namespace Msp {
5 namespace GL {
6
7 void VulkanRenderer::begin()
8 {
9         begin_semaphore = 0;
10 }
11
12 void VulkanRenderer::begin(Semaphore &sem)
13 {
14         static_cast<Renderer *>(this)->begin();
15
16         begin_semaphore = &sem;
17 }
18
19 void VulkanRenderer::end()
20 {
21         static_cast<Renderer *>(this)->commands.use_pipeline(0);
22 }
23
24 void VulkanRenderer::end(Semaphore &sem)
25 {
26         Renderer &self = *static_cast<Renderer *>(this);
27         self.end();
28         self.commands.submit_frame(begin_semaphore, &sem);
29 }
30
31 } // namespace GL
32 } // namespace Msp