#include "rect.h"
#include "renderpass.h"
#include "semaphore.h"
-#include "swapchaintexture.h"
#include "vulkan.h"
using namespace std;
if(!primary_buffer)
begin_buffer(0);
- fb_is_swapchain = false;
- unsigned n_attachments = framebuffer->get_format().size();
- for(unsigned i=0; (!fb_is_swapchain && i<n_attachments); ++i)
- if(dynamic_cast<const SwapChainTexture *>(framebuffer->get_attachment(i)))
- fb_is_swapchain = true;
-
+ fb_is_swapchain = framebuffer->is_presentable();
framebuffer->refresh();
RenderPass render_pass;
void VulkanCommands::resolve_multisample()
{
- throw logic_error("VulkanCommands::resolve_multisample is unimplemented");
+ if(!framebuffer || !framebuffer->has_resolve_attachments())
+ throw invalid_operation("VulkanCommands::resolve_multisample");
+
+ end_render_pass();
}
void VulkanCommands::begin_query(const QueryPool &, unsigned)