+void Renderer::apply_batch(const Batch &batch)
+{
+ batch.refresh(frame_index);
+ PipelineState &ps = get_pipeline_state();
+ ps.set_primitive_type(batch.get_type());
+ if(batch.get_type()==PATCHES)
+ ps.set_patch_size(batch.get_patch_size());
+ commands.use_pipeline(&ps);
+}
+
+void Renderer::dispatch(unsigned count_x, unsigned count_y, unsigned count_z)
+{
+ apply_state();
+ PipelineState &ps = get_pipeline_state();
+ commands.use_pipeline(&ps);
+ commands.dispatch(count_x, count_y, count_z);
+}
+
+void Renderer::resolve_multisample()