From fa20733a622770eaaa941f64d570d7b63d8f37b6 Mon Sep 17 00:00:00 2001 From: Marek Olšák Date: Sun, 29 Apr 2012 21:33:37 +0200 Subject: st/vega: don't use user_buffer_create --- src/gallium/auxiliary/util/u_draw_quad.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'src/gallium/auxiliary/util/u_draw_quad.c') diff --git a/src/gallium/auxiliary/util/u_draw_quad.c b/src/gallium/auxiliary/util/u_draw_quad.c index 1fbe12171c5..469c874988d 100644 --- a/src/gallium/auxiliary/util/u_draw_quad.c +++ b/src/gallium/auxiliary/util/u_draw_quad.c @@ -69,6 +69,27 @@ util_draw_vertex_buffer(struct pipe_context *pipe, } +/** + * Draw a simple vertex buffer / primitive. + * Limited to float[4] vertex attribs, tightly packed. + */ +void +util_draw_user_vertex_buffer(struct cso_context *cso, void *buffer, + uint prim_type, uint num_verts, uint num_attribs) +{ + struct pipe_vertex_buffer vbuffer = {0}; + + assert(num_attribs <= PIPE_MAX_ATTRIBS); + + vbuffer.user_buffer = buffer; + vbuffer.stride = num_attribs * 4 * sizeof(float); /* vertex size */ + + /* note: vertex elements already set by caller */ + + cso_set_vertex_buffers(cso, 1, &vbuffer); + cso_draw_arrays(cso, prim_type, 0, num_verts); +} + /** * Draw screen-aligned textured quad. -- cgit v1.2.3