+ if(!pipeline_state)
+ throw invalid_operation("VulkanCommands::draw_instanced");
+
+ if(framebuffer)
+ end_render_pass();
+
+ VulkanCommandRecorder vkCmd(device.get_functions(), primary_buffer);
+
+ pipeline_state->refresh();
+ pipeline_state->synchronize_resources();
+ device.get_synchronizer().barrier(vkCmd);
+ pipeline_state->apply(vkCmd, 0, frame_index, false);
+ vkCmd.Dispatch(count_x, count_y, count_z);
+}
+
+void VulkanCommands::resolve_multisample()
+{
+ if(!framebuffer || !framebuffer->has_resolve_attachments())
+ throw invalid_operation("VulkanCommands::resolve_multisample");
+
+ end_render_pass();