}
-static void map_surfaces(struct softpipe_context *sp)
+void
+softpipe_map_surfaces(struct softpipe_context *sp)
{
struct pipe_context *pipe = &sp->pipe;
unsigned i;
}
-static void unmap_surfaces(struct softpipe_context *sp)
+void
+softpipe_unmap_surfaces(struct softpipe_context *sp)
{
struct pipe_context *pipe = &sp->pipe;
unsigned i;
softpipe_update_derived( softpipe );
/* XXX move mapping/unmapping to higher/coarser level? */
- map_surfaces(softpipe);
+ softpipe_map_surfaces(softpipe);
draw_vb( softpipe->draw, VB );
- unmap_surfaces(softpipe);
+ softpipe_unmap_surfaces(softpipe);
}
softpipe_update_derived( softpipe );
/* XXX move mapping/unmapping to higher/coarser level? */
- map_surfaces(softpipe);
+ softpipe_map_surfaces(softpipe);
draw_vertices(softpipe->draw, mode, numVertex, verts, numAttribs, attribs);
- unmap_surfaces(softpipe);
+ softpipe_unmap_surfaces(softpipe);
}
softpipe->pipe.set_stencil_state = softpipe_set_stencil_state;
softpipe->pipe.set_texture_state = softpipe_set_texture_state;
softpipe->pipe.set_viewport_state = softpipe_set_viewport_state;
+ softpipe->pipe.set_vertex_buffer = softpipe_set_vertex_buffer;
+ softpipe->pipe.set_vertex_element = softpipe_set_vertex_element;
+
softpipe->pipe.draw_vb = softpipe_draw_vb;
softpipe->pipe.draw_vertices = softpipe_draw_vertices;
+ softpipe->pipe.draw_arrays = softpipe_draw_arrays;
+
softpipe->pipe.clear = softpipe_clear;
softpipe->pipe.flush = softpipe_flush;
softpipe->pipe.reset_occlusion_counter = softpipe_reset_occlusion_counter;
assert(softpipe->draw);
draw_set_setup_stage(softpipe->draw, sp_draw_render_stage(softpipe));
+ draw_set_vertex_array_info(softpipe->draw,
+ softpipe->vertex_buffer,
+ softpipe->vertex_element);
+
sp_init_region_functions(softpipe);
sp_init_surface_functions(softpipe);